【课程】8小时学透ARM体系架构

来源:面包芯语时间:2023-06-20 08:33:05

作为软件工程师,有没有下面的困惑:

软件跑死了,定位到是cpu相关的问题,不知如何入手;

内存访问出错,不知道如何查询页表属性;


(资料图)

配置GIC时,group0/1, secure/non-secure,fiq/irq傻傻分不清;

公司有昂贵的arm调试器,不知道能用来做什么。

几千页的arm架构手册和arm cpu手册如同天书;……

遇到上面问题千万别灰心,无数人都倒在了这里,不好走的这条路,我们陪你一起走。

如左耳朵耗子在《程序员练级攻略(2018)》所说,作为一个专业的程序员需要的学习的系统知识包括:体系结构,操作系统,网络协议。

目前主流体系结构有x86,arm,risc-v等,x86有太多的历史包袱,过于复杂;而risc-v虽然快速发展,但是目前仅仅在MCU领域有实际应用,全面与arm竞争尚需时日。根据arm公司提供的数据,arm cpu在整个基础设施领域已经占到将近30%的份额(如下图)。

《8小时学透ARM体系架构》这门课程从arm cpu架构入手,从arm指令集到内存管理到arm cpu,从单核到多核;紧贴ARM CPU手册(TRM)和系统架构手册(ARM ARM/ARMv8),由浅入深讲解32位和64位ARM CPU。

本课程既可以顺序学习整体提升你对arm cpu的理解,也可以针对具体问题学习具体章节。每章都有大小作业,可以在课程微信群讨论,多位arm专家长期驻群答疑。学习本ARM架构课程,近可以解决自己工作中遇到的ARM CPU具体问题,远可以触类旁通学习其它体系结构,为自己软件技术栈打下坚实的基础。

不需要任何ARM开发板,只需要一个可以运行Linux或docker的电脑,即可完成本课程所有实验和作业。

课程整体大纲

整体目标:突出arm架构内容,Linux本身的内容能不讲就不讲。思路:从arm cpu架构入手,从arm指令集到内存管理到arm cpu,从单核到多核。

ARM architecture以Linux为例覆盖如下内容,目标是arm的问题知道去哪里查,PCB,SOC,ARM CPU还是ARM ARM:

Instruction set: 内核基本只用整数,浮点稍微提一下lazy restore;

Exeption model:重点是内核和用户空间,EL2和EL3不提;

memory;32和64的差异。

mmu

cache: PoU, PoC

Timer

GIC

Power on and reset: arm and SOC view.

coresight

debug

trace

mcu可以从与A系列差异入手,这部分需要加硬件调试器吧,顺别把arm coresight简单说下。

标签:

责任编辑:FD31
上一篇:全球即时看!天下长河有几个电视台播放 皇上为什么踩高士奇的手?
下一篇:最后一页

精彩图集(热图)

热点图集

最近更新

信用中国

  • 信用信息
  • 行政许可和行政处罚
  • 网站文章