嵌入式设备硬件组成

CPU+Memory+I/O interface

Posted by orgaworl on October 28, 2024

1. CPU

与通用计算机相比,嵌入式处理器通常具有较小的体积、低功耗、高可靠性等特点。

常见的嵌入式处理器包括ARM、MIPS、PowerPC、Intel x86等架构。ARM架构由于其低功耗、高性能、广泛的应用和生态系统,已经成为了嵌入式系统中最流行的处理器架构之一。

CPU位数

  • 8位单片机
  • 32位/64位嵌入式CPU (目前主流)

2. Computer Memory

嵌入式系统的存储器通常包括 Flash、SRAM、ROM

存储器分类

通过断电后数据是否易去分类, 包含:

  • 易失性存储
  • 非易失性存储

详细分类:

各类存储用途

类型 用途
NOR Flash 主板BIOS存储
NAND Flash 固态硬盘/U-Disk/TF card(micro SD)/SD card/MMC/eMMC/UFS
DDR SDRAM 内存/
GDDR SDRAM 显存
SRAM 高速缓存/寄存器
NVRAM 缓存/固件存储/OS启动存储

RAM (Random Access Memory)

DRAM (Dynamic Random Access Memory)

  • 原理: 使用电容和电流来存储数据,并且需要刷新操作以保持数据的稳定性。
  • DRAM容量较大,成本相对较低,常广泛用于主内存(RAM)。

    SRAM (Static Random Access Memory)

  • SRAM是另一种常见的RAM类型,相对于DRAM来说,更快、更稳定。
  • 它使用存储触发器(通常是互补金属氧化物半导体CMOS电路)来存储数据。
  • SRAM速度快,但比DRAM成本更高,一般用于高性能缓存和高速缓冲存储器。

ROM (Read Only Memory)

  1. 永久性:ROM中的数据在断电时不会丢失,因此被称为非易失性存储器。
  2. 只读性:ROM的内容只能被读取,无法直接修改。它通常在制造过程中被预先写入或烧录,供计算机系统在启动时使用。

MASK ROM

厂商制造过程中使用一组特定的数据或指令进行编程,通过光刻工艺屏蔽存储器阵列的某些区域,将数据硬连接到ROM,从而创建永久的、不可更改的“1”和“0”图案。这意味着一旦芯片生产出来,就无法修改、擦除或重写数据;

PROM:

可编程只读存储器只允许写入一次,所以也被称为“一次可编程只读存储器”(One Time Progarmming ROM,OTP-ROM)。PROM在出厂时,存储的内容全为1,用户可以根据需要将其中的某些单元写入数据0(部分的PROM相反),以实现对其“编程”的目的。

EPROM:

可电编程, 可强紫外线擦除。

EEPROM

可电擦除、可编程的ROM,按字节进行删除和重写,写入时间很长很慢,现在多用作非易失的数据存储器。特点是可以随机访问与修改,可以往每个bit中写入0或者1。这是最传统的一种EEPROM,掉电后数据不丢失,可以保存100年,可以擦写100w次。具有较高的可靠性,但是电路复杂成本也高。因此目前的EEPROM都是几十KByte到几百KByte的,很少有超过512KByte。

Flash

ROM 必须完全擦除才能重写, 速度慢且浪费寿命, 而闪存可以做到按块/页进行快速擦除.

  • 有非易失性和高密度的特点。
  • Flash存储器可以通过块擦除方式进行修改

Nor Flash

  • NOR 闪存单元体积比较大,容量小,按字节擦写速度慢,但读取速度快。
  • 可以按字节为单位提供真正的随机访问能力,所以能够就地执行代码,可靠性较高,擦写寿命比较短。

Nand Flash

  • NAND 闪存单元体积比较小,所以密度更高,按块擦写, 擦鞋读取速度均很快, 擦写寿命也比较长;
  • 没有真正的随机访问能力,可靠性相对较低。

NOR Flash 与 Nand Flash 对比

NAND和NOR芯片的共性首先表现在向芯片中写数据必须先将芯片中对应的内容清空,然后再写入,也就是通常说的“先擦后写”。只不过NOR芯片只用擦写一个字,而NAND需要擦写整个块

其次,闪存擦写的次数都是有限的.当闪存的使用接近使用寿命的时候,经常会出现写操作失败;到达使用寿命时,闪存内部存放的数据虽然可以读,但是不能再进行写操作了所以为了防止上面问题的发生,不能对某个特定的区域反复进行写操作

通常NAND的可擦写次数高于NOR芯片,但是由于NAND通常是整块擦写,块内的页面中如果有一位失效整个块就会失效,而且由于擦写过程复杂,失败的概率相对较高,所以从整体上来说NOR的寿命较长。

NVRAM (Non-Volatile Random Access Memory)

是非易失性随机访问存储器,指断电后仍能保持数据的一种RAM。

3. I/O interface

嵌入式系统需要与外部设备进行交互, 所以需要提供各种I/O接口进行数据传输。

分类方式有:

  • 传输方式: *串行和并行
    • 串行通信接口允许数据在两个设备之间以串行方式传输,即一次传输一位。这种通信方式在嵌入式系统中非常常见,因为它可以减少所需的物理线路数量,从而节省成本和空间。串行通信接口可以是同步的,也可以是异步的,其中异步串行通信(如UART)是最常见的类型。
    • 并行通信接口允许数据在多个并行线路上同时传输,这与串行通信形成对比。并行通信通常在短距离内使用,因为它需要更多的物理线路,这在长距离通信中可能不切实际。并行通信接口可以提供更高的数据传输速率,但成本和复杂性也相应增加。
  • 通信模式: **单工、半双工、全双工
  • 信息格式: 同步通信和异步通信

常见接口

常见接口:

物理接口 传输方式 作用
UART 全双工异步串行 短距离通信
USB-* 串行 高速数据传输与供电
COM 串行  
RJ45 串行 有线网络连接
SPI 全双工同步串行 高速数据传输,通常用于短距离通信
I2C 两线式串行 单主多从, 连接低速设备,连接微控制器和外设
PCIE 点对点串行 连接计算机的主板和外设
GPIO 并行  

常见的输入/输出接口包括GPIO、UART、SPI、I2C、USB等。

  • GPIO: 通用输入/输出接口,它可以通过编程控制来实现各种输入/输出操作。

  • UART: 俗称串口, 是一种串行通信接口,通常用于连接串口设备。

  • USB: 通用串行总线接口,用于连接各种USB设备。

  • COM

  • SPI和I2C: 两种串行总线接口,通常用于连接各种外设,如传感器、存储器等。

专用接口:

  • CAN总线
  • 以太网接口
  • 无线网络接口

.Reference

  1. 一文了解嵌入式系统中常用外围接口 - 知乎
  2. 嵌入式硬件接口技术教程_硬件接口编程-CSDN博客
  3. 6 嵌入式系统外部设备接口 - IT教程网
  4. 详解嵌入式系统知识和接口技术总结-电子工程专辑
  5. 数字存储完全指南 03 :固态硬盘的历史、结构与原理 - 少数派
  6. 存储器的种类:ROM、RAM、FLASH - 知乎
  7. eMMC(一)——基本架构-CSDN博客