ARM技术专栏
文章平均质量分 87
以ARM的关键技术为主线,逐渐分析ARM的架构、指令集、MMU控制器、GIC控制器、AMBA总线等关键技术。
嵌入式er.
不积跬步无以至千里,不积小流无以成江海
展开
-
ARM官方资料学习
ARM是即是一家公司名,也是一种芯片,ARM的文档是比较全的。学习ARM除了其他的资料外,官网公布的资料也是一种较好的选择,具有权威性与准确性,不过缺点是资料是英文的。https://developer.arm.com/architectures#aq=%40navigationhierarchiescategories%3D%3D%22Architecture%20products%22%20AND%20%40navigationhierarchiescontenttype%3D%3D%22Produ原创 2022-06-20 17:51:13 · 2843 阅读 · 0 评论 -
ARM64的MMU内存管理工作原理
之前有介绍过ARM32的MMU介绍,在ARMv8-A引入了64位的架构,从而也引入了64位的MMU的技术,原理是和ARM32类似的,之前分配的粒度有所区别,arm32中有支持2级页表映射,在arm64中,最大支持为4级页表映射。在arm32中,可以映射的地址为2的32次方为4GB的地址空间。在arm64中,可以映射的地址为2的64次方为16EB的地址空间(1EB=1024PB=1024*1024TB),可以看出arm64的地址空间比arm32多了好多,arm官方其实只使用了一部分,如图:将其分为内核原创 2022-06-26 09:12:29 · 1659 阅读 · 0 评论 -
ARM的DMA-330控制器简述
DMA即,direct memory access直接存储器访问,ddr内存与外设相对于cpu的core来说速度是很慢的,在内存复制数据的过程中、或者外设的数据复制等操作中,core无法做其他事情,只能等待数据复制完成才能干起它的。总结来说:1.是外设和内存太慢了(相对core来说),cpu的core在数据复制过程中占据了core的资源,因此设计了一种可以直接进行数据传输的器件,就是DMA,当然DMA的传输也是需要core给指令的。2.cpu的core给DMA发数据传输指令,DMA执行数据传输,此时原创 2022-06-24 23:02:54 · 1846 阅读 · 0 评论 -
ARM的GIC2.0的简述
GIC即Generic Interrupt Controller ,中断控制器,顾名思义,用来管理ARM中断的IP。ARM的gic一共分为4个版本,从gic1.0-gic4.0,本文主要介绍gic2.0。GIC主要分为以下几个部分:Distributor分配器、CPU接口两个部分,虚拟化支持情况下增加了虚拟CPU接口部分;这个分配器集中了所有的中断源,确定每个中断的优先级,并针对每个CPU接口将优先级最高转发给接口,并进行优先级屏蔽和抢占处理;分配器的编程接口:1.全局启用向CPU接口转发中断。2.原创 2022-06-23 22:57:13 · 518 阅读 · 0 评论 -
ARM的AMBA 2.0总线
文章目录1.什么是AMBA1.1AMBA2.0总线的分类1.2几种总线的连接方式2. AMBA2.0的AHB总线2.1AHB的总线拓扑2.2AHB的仲裁器arbiter2.3AHB的译码器decoder3. AMBA2.0的ASB总线4. AMBA2.0的APB总线4.1APB bridge4.2APB slave5.参考资料1.什么是AMBAAMBA即Advanced Microcontroller Bus Architecture ,是ARM公司定义的片内总线标准,广泛使用与ARM芯片。AMBA目原创 2022-06-11 16:55:35 · 1983 阅读 · 0 评论 -
ARM的MMU内存管理工作原理
旨在系统理解mmu,带着问题来理解原理,本文以armv7进行说明。虚拟地址 物理地址 逻辑地址 线性地址 运行地址之间的联系?逻辑地址是由编译器所产生的符号表里面的地址(可以使用binutils工具查看可执行文件的符号表);(逻辑地址通过段映射为线性地址(虚拟地址为中间层),如果未开启二级映射,其实就是物理地址。这个是x86中的说法)因为arm将最开始的地址称为VA即virtual address,即虚拟地址,然后有一个中间层的地址,最后到物理地址。不要被这些地址的名字所蒙蔽,先看原理再回过头看看原创 2022-05-21 11:49:47 · 2055 阅读 · 0 评论 -
ARM的协处理器
协处理器:顾名思义,协助主处理器完成计算处理的工作。arm32一共支持15个协处理器,从cp0-cp15共16个,为何强调arm32,因为在arm64中,弱化了协处理器的概念。CP15协处理器:arm中重要的协处理器,mmu、cache等都是由其所配置。CP14协处理器:.........原创 2022-05-14 10:35:38 · 2517 阅读 · 0 评论 -
ARM内核、指令集等简介
1.ARM架构学习ARM即是公司名,是一家英国的公司,也是芯片名,随便嵌入式设备的发展,ARM也随之急速发展;如何去学习ARM,作为一名合格的嵌入式er,无论是从事:内核工程师;驱动工程师;应用工程师,都很有必要了解ARM的架构原理,掌握了ARM相关的知识再去学习UBOOT、kernel、驱动以及分析应用层的调用栈等问题才会有所突破。1.1.ARM相关背景介绍经常听到某芯片基于ARM核开发出来的芯片,具备什么什么功能;如华为的麒麟980基于ARM-A76内核;1.1ARM指令集介绍1…2A原创 2022-08-12 20:33:09 · 2079 阅读 · 0 评论