嵌入式系统总结

文章目录

  • 1, 指令集比较
  • 2, 存储器结构比较
  • 3, 处理器分类
  • 4, ARM 处理器
    • 高速缓存cache
    • 流水线
    • 总线BUS
    • ARM 运行模式
    • ARM 存储模式
    • 指令系统

下面的内容都是围绕这2幅图进行的。
嵌入式系统总结_第1张图片
嵌入式系统总结_第2张图片

嵌入式系统总结_第3张图片

1, 指令集比较

嵌入式系统总结_第4张图片

2, 存储器结构比较

  • 哈佛结构将程序指令存储和数据存储分开的存储器结构。中央处理器首先到程序指令存储器中读取程序指令内容,解码后得到数据地址,再到相应的数据存储器中读取数据,并进行下一步的操作(通常是执行)。程序指令存储和数据存储是分开,可以使指令和数据有不同的数据宽度,通常具有较高的执行效率。

  • 冯.诺依曼结构也称普林斯顿结构:将程序指令存储器和数据存储器合并在一起的存储器结构。程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置,因此程序指令和数据的宽度相同。
    取指令和取操作数都在同一总线上,通过分时复用的方式进行;
    缺点:是在高速运行时,不能达到同时取指令和取操作数,从而形成了传输过程的瓶颈。

冯氏结构简单、易实现、成本低,但效率偏低
哈佛结构效率高但复杂,对外围设备的连接与处理要求高,十分不适合外围存储器的扩展

  • 现在的处理器,依托CACHE的存在,已经很好的将二者统一起来了现在的处理器虽然外部总线上看是诺依曼结构的,但是由于内部CACHE的存在,因此实际上内部来看已经类似改进型哈佛结构的了。

3, 处理器分类

根据不同的处理器结构,嵌入式处理器可以分成下面几类:
1.嵌入式微处理器(MicroProcessor Unit,MPU)
ARM处理器、 MIPS处理器、 PowerPC处理器

2.嵌入式微控制器(Microcontroller Unit, MCU)
典型代表是单片机: 8051系列、 68K系列、基于ARM公司Cortex为核心的32位微控制器

3.嵌入式DSP处理器(Embedded Digital Signal Processor, EDSP)

4.嵌入式片上系统(System On Chip)

4, ARM 处理器

ARM公司不生产芯片。,主要设计ARM系列RISC处理器内核,

ARM(Advanced RISC Machine)处理器是一种RISC结构的微处理器,具有功耗低、性价比高、代码密度高等特色。ARM处理器具有极高的性价比和代码密度,出色的实时中断响应和极低的功耗,并且占用硅片的面积极少,从而使它成为嵌入式系统的理想选择。

小桦主要讲解stm32下的M系列芯片。

嵌入式系统总结_第5张图片

高速缓存cache

流水线

cpu的工作过程:取址, 译码,执行。

总线BUS

我们先说一下总线的发展,

1, 公共总线: CPU/RAM/IO都是被一条总线(BUS)连接起来

2, 南桥: 系统总线与I/O总线切分开来,使得高速的CPU/RAM组件摆脱低速I/O设备的束缚。

3, 出现倍频:

CPU 主频 = 外频(系统总线频率System Bus Frequency)* 倍频 (Clock doubler)
嵌入式系统总结_第6张图片

4,北桥:内存与北桥间的总线称为内存总线,把CPU与北桥间连接的这段总线成为前端总线(Front Side Bus,FSB),也就是系统总线(System Bus)。
嵌入式系统总结_第7张图片

5, 现在

AHB (Advanced High-performance Bus)
ASB (Advanced System Bus)
APB (Advanced Peripheral Bus) :适合多种外设,低速低能耗,上升沿触发
嵌入式系统总结_第8张图片

ARM 运行模式

ARM微处理器支持7种运行模式,分别为:
用户模式(usr):ARM处理器正常的程序执行状态。
快速中断模式(fiq):用于高速数据传输或通道处理。
外部中断模式(irq):用于通用的中断处理。
管理模式(svc):操作系统使用的保护模式。
数据访问终止模式(abt):当数据或指令预取终止时进入该模式,可用于虚拟存储及存储保护。
系统模式(sys):运行具有特权的操作系统任务。
未定义指令中止模式(und):当未定义的指令执行时进入该模式,可用于支持硬件协处理器的软件仿真。

ARM 存储模式

Cortex-M内核的存储器系统支持小端格式(Little-endian format)和大端格式(Big-endian format)。

  • 大端模式:字数据的高字节存储在低地址中,而字数据的低字节则存放在高地址中。
  • 小端模式:低地址中存放的是字数据的低字节,高地址存放的是字数据的高字节。

例如: 假设从地址0x4000开始存放,16位宽的数0x1234

嵌入式系统总结_第9张图片

可见:采用大端方式进行数据存放符合人类的正常思维,
而采用小端方式进行数据存放利于计算机处理。

指令系统

32位的ARM指令集 16位的Thumb指令集
支持ARM核所有的特性,具有高效、快速的特点,指令集效率高,但是代码密度低 具有灵活、小巧的特点,有较高的代码密度,却仍然保持ARM的大多数性能上的优势,

Cortex-M3、M4内核不支持ARM指令集,而只支持Thumb-2指令集。Thumb-2指令集是Thumb指令集和ARM指令集的超集,它将16位和32位指令相结合,在代码密度和性能之间达到了最佳平衡,在降低系统功耗的同时又提高了系统性能。

你可能感兴趣的:(操作系统,单片机,嵌入式,单片机)