ARM
文章平均质量分 73
bobuddy
这个作者很懒,什么都没留下…
展开
-
AXI总线简介
AXI转载 2022-10-12 17:29:17 · 2061 阅读 · 0 评论 -
SOC 内部ROM -RAM 简介
soc boot原创 2022-10-10 10:47:38 · 853 阅读 · 0 评论 -
ARM GIC介绍之四
GIC是ARM体系中重要的组件,在认识到GIC的组成和功能之后,了解到IRQ的大致流程,从硬件IRQ到来,到IRQ结束。我们实际在KERNEL里面,或者在设备驱动里面处理的IRQ其实是软件意义上的,那么硬件的中断和软件的中断如何联系起来的呢,大概的处理流程是如何呢?这章我们介绍这部分内容。GIC 中断处理流程我们希望理解概念和流程,总结认识和思路,所以代码细节上的解释需要忽略掉。可以看代码细节,但是总结时候要去掉。毕竟,即使是自己看过了,过了一段时间再重新读代码,也是有些陌生的。我们还是以图开始。转载 2021-03-31 14:29:31 · 339 阅读 · 0 评论 -
ARM GIC介绍之三
GIC_V3 初始化设置在GIC 介绍之一和二中,可以看到GIC的逻辑结构和硬件框架。那么在初始化时候,需要将各个组件配置起来,Interrupt Controller中的Distributor,Redistributor,CPU Interface需要按照不同顺序配置。既然Distributor是所有CPU都可以对应的,那么这个只要在第一个CPU启动时配置就可以了,对于Redistributor和CPU Interface是PER-CPU对应的,所以,在SECONDARY CPU启动时候需要配置各自的转载 2021-03-31 11:59:49 · 554 阅读 · 0 评论 -
ARM GIC介绍之二
连接"arm GIC介绍之一",我们补充对应的GIC寄存器描述,和主要的用法说明,仅供参考。3 . GIC_V3寄存器介绍我们把完整的图放在这里:从这里看到,GIC分为3个主要的部分,要完成其作用,而且给用户进行预先配置的方法,GIC就提供了一组寄存器,这些寄存器的设计就是围绕着这些主要的功能来实现的。3.1 Distributor Registers在前面介绍过,Distributor主要完成对应的IRQ状态的记录,对应的IRQ分发,那么围绕这样的功能,对应的寄存器主要...转载 2021-03-31 11:42:19 · 905 阅读 · 0 评论 -
ARM GIC介绍之一
GIC是ARM架构中及其重要的部分,本文只在公开ARM对应资料基础上,以MTK开发板为基础整理。个人理解之后记录,巩固和加深认识,仅此而已,如果有错误,欢迎指出。1. GIC的概述看过SOC架构的同学知道,CPU接受外部的中断处理请求,并进行处理,其实是一个被动接受的过程,这样好处是既能保证主任务的执行效率,又能及时获知外部的请求,从而处理重要的设备请求操作。如图:GIC的全称为general interrupt controller,主要作用可以归结为:接受硬件...转载 2021-03-31 11:15:01 · 1335 阅读 · 0 评论 -
ARM 工作模式
ARM处理器七种工作模式Sys模式和usr模式相比,所用的寄存器组,都是一样的,但是增加了一些访问一些在usr模式下不能访问的资源。而svc模式本身就属于特权模式,本身就可以访问那些受控资源,而且,比sys模式还多了些自己模式下的影子寄存器,所以,相对sys模式来说,可以访问资源的能力相同,但是拥有更多的硬件资源。所以,从理论上来说,虽然可以设置为sys和svc模式的任一种,但是从uboot方面考虑,其要做的事情是初始化系统相关硬件资源,需要获取尽量多的权限,以方便操作硬件,初始化硬件。转载 2021-03-18 09:37:35 · 194 阅读 · 0 评论 -
boot loader 功能
boot loader主要功能1. 安装与初始化物理内存boot loader需要初始化物理内存,内核将使用这些内存来存储volatile类型的数据。这个是与机器有关的,可能使用了内部算法自动的定位并取得物理内存的大小,或者可能是机器有关内存方面的特性,也可能是boot loader设计者知道的获取内存某种方法。2. 安装设备树dtb(device tree blob)必须位于8-BYTE对齐的位置并且不能超过2MB的大小。因为dtb会被映射到最大2MB的缓存块上,它不能放在任何映射了特原创 2021-03-17 11:57:14 · 1992 阅读 · 0 评论