- 嵌入式系统基础教程
- 嵌入式系统 - 首页
- 嵌入式系统 - 概述
- 嵌入式系统 - 处理器
- 嵌入式系统 - 架构
- 嵌入式系统 - 工具和外设
- 嵌入式系统 - 8051 微控制器
- 嵌入式系统 - I/O 编程
- 嵌入式系统 - 术语
- 嵌入式系统 - 汇编语言
- 嵌入式系统 - 寄存器
- 嵌入式系统 - 寄存器组/堆栈
- 嵌入式系统 - 指令
- 嵌入式系统 - 编址模式
- 嵌入式系统 - 特殊功能寄存器
- 嵌入式系统 - 定时器/计数器
- 嵌入式系统 - 中断
- 嵌入式系统资源
- 嵌入式系统 - 快速指南
- 嵌入式系统 - 有用资源
- 嵌入式系统 - 讨论
嵌入式系统 - 架构类型
8051 微控制器使用 8 位数据总线。因此,它们最多可以支持 64K 的外部数据存储器和 64K 的外部程序存储器。总的来说,8051 微控制器可以寻址 128K 的外部存储器。
当数据和代码位于不同的内存块中时,该架构称为哈佛架构。如果数据和代码位于同一内存块中,则该架构称为冯·诺伊曼架构。
冯·诺伊曼架构
冯·诺伊曼架构是由计算机科学家约翰·冯·诺伊曼首次提出的。在这种架构中,指令和数据共用一个数据路径或总线。结果,CPU 每次只执行一个操作。它要么从内存中取指令,要么对数据执行读/写操作。因此,指令取数和数据操作不能同时发生,它们共享一个公共总线。
冯·诺伊曼架构支持简单的硬件。它允许使用单个顺序存储器。如今的处理速度远远超过内存访问时间,我们采用少量非常快速的本地处理器内存(缓存)。
哈佛架构
哈佛架构为指令和数据提供单独的存储和信号总线。这种架构的数据存储完全包含在 CPU 内,并且无法将指令存储区作为数据访问。计算机使用内部数据总线为程序指令和数据提供单独的内存区域,允许同时访问指令和数据。
程序需要由操作员加载;处理器无法自行启动。在哈佛架构中,无需使两个存储器共享属性。
冯·诺伊曼架构与哈佛架构的比较
以下几点将冯·诺伊曼架构与哈佛架构区分开来。
冯·诺伊曼架构 | 哈佛架构 |
---|---|
代码和数据共享单个内存。 | 代码和数据使用单独的内存。 |
处理器需要在一个单独的时钟周期内取代码,在另一个时钟周期内取数据。因此它需要两个时钟周期。 | 由于使用单独的总线访问代码和数据,因此只需要一个时钟周期。 |
速度更快,因此耗时更少。 | 速度较慢,因此耗时更多。 |
设计简单。 | 设计复杂。 |
CISC 和 RISC
CISC 是复杂指令集计算机。它是一种可以处理大量指令的计算机。
在 20 世纪 80 年代初,计算机设计师建议计算机应该使用更少的指令和简单的结构,以便它们可以在 CPU 内更快地执行,而无需使用内存。此类计算机分类为精简指令集计算机或 RISC。
CISC 与 RISC 的比较
以下几点区分了 CISC 和 RISC:
CISC | RISC |
---|---|
更大的指令集。易于编程 | 更小的指令集。难以编程。 |
考虑到更大的指令集,编译器的设计更简单。 | 编译器的设计复杂。 |
许多寻址模式导致复杂的指令格式。 | 少数寻址模式,固定的指令格式。 |
指令长度可变。 | 指令长度可变。 |
每秒更高的时钟周期数。 | 每秒较低的时钟周期数。 |
强调硬件。 | 强调软件。 |
控制单元使用微程序单元实现大型指令集。 | 每个指令都由硬件执行。 |
执行速度较慢,因为指令需要从内存中读取并由解码单元解码。 | 执行速度更快,因为每个指令都由硬件执行。 |
流水线是不可能的。 | 考虑到单个时钟周期,指令流水线是可能的。 |
广告