14天学习训练营导师课程:周贺贺《ARMv8/ARMv9架构-快速入门》

努力是为了不平庸~
学习有些时候是枯燥的,但收获的快乐是加倍的,欢迎记录下你的那些努力时刻(学习知识点/题解/项目实操/遇到的bug/等等),在分享的同时加深对于知识点的理解,同时吸收他人的奇思妙想,一起见证技术er的成长~
你可以从以下几个方面着手(不强制),或者根据自己对学习课程主题的理解创作,参考如下:

学习知识点

1:arm架构和core的里程牌节点?

2:需要学习那些软硬件知识?

3:arm架构体系介绍

arm core

GIC

MMU

TZC

4:arm IP product介绍

5:SOC架构的变更

6:软件架构图

题目/项目来源

引入思考:

1:userspace/application/EL0能不能直接控制硬件、读写硬件寄存器?

2:secureboot是谁设计的?arm?android? SOC 工厂?OEM工厂?

3:Kernel mode跑在高地址空间,user mode跑在低地址空间?

4:什么是FIQ? FIQ和IRQ优先级?FIQ的F表示哪个单词(Forward)?

5:为什么学习MESI?

6:系统里有多少哥MMU?物理地址是多少位?虚拟地址是多少位?

7:系统里有多少多少个timer?系统里有那些密码学算法?

8:为什么学习汇编?

9:为什么要学习aarch32? gicv2? armv7? armv6 ? 20年前的东西?

10:big.LITTLE架构,大核簇,小核簇?

学习笔记

1:arm架构和core的里程牌节点?

建议学习直接从armv8开始,目前自己项目上使用的是MTK的8518s,arm架构是基于A53的。

2:需要学习那些软硬件知识?

学习ARM主要学习:

1:ARM CORE(包括ISA 指令集和arm架构)

2:各类IP

3:SOC

4:…….

3:arm架构体系介绍如下图所示:

arm core

GIC

MMU

TZC

4:arm IP product介绍

  • Process(arm core)

  • Security IP

    • TZC380/TZC400/Cryptocell-712/312

  • System IP

    • Corelink interconnect

      • CCN-502 Cache Coherent Network

    • Neoverse Interconnect

    • SYstem Controller

      • MMU

      • GIC

      • PL390

    • Memory COntroller

      • DMC

    • COreSight Debug and Trace

  • Physical IP

  • Graphic adn Multimedia Processors

    • Mail GPUS

  • Subsystem

5:SOC架构的变更

主要是从big.LITTLE -> dynamIQ(DSU) -> dynamIQ(DSU110)

big.LITTLE system VS DynalIQ

区别:DynamlQ架构中,大核和小核都集成在一起,便于对功耗的控制等等。

6:软件架构图(当前主流架构图VS未来主流软件架构图)

两个安全状态,四个安全等级 ——-> 三个安全状态,四个安全等级

安全状态和安全等级的切换

个人学习计划

提示:该笔记是周老师课堂的随堂笔记,用于记录知识点,用于后续自己再次梳理知识点。