锐单电子商城 , 一站式电子元器件采购平台!
  • 电话:400-990-0325

【计算机系统结构】~ ROM/PROM/EPROM/E2PROM/FLASH、SOC 片上系统、总线、CPU 处理器、Cache、DDR、ARM ...

时间:2023-06-01 11:07:00 e2半导体传感器超小型e2s传感器

1. ROM/PROM/EPROM/E2PROM/FLASH

ROM 指的是只读存储器 Read-Only Memory。通过掩模工艺,这是最简单的半导体电路, 一次性制造,代码和数据将永久保存(除非坏了),无法修改。

PROM 指可编程只读存储器 Programmable Red-Only Memory。这种产品只允许写一次,所以也叫一次只读存储器(One Time Progarmming ROM,OTP-ROM)。
PROM 出厂时,存储的内容都是 1.用户可以根据需要将某些单元写入数据中 0(部分的 PROM 在出厂时数据全为 0.用户可以将部分单元写入,以实现编程的目的。

EPROM指的是可擦写可编程只读存储器Erasable Programmable Read-Only Memory。它的特点是具有可擦除功能,擦除后即可进行再编程,但是缺点是擦除需要使用紫外线照射一定的时间。

EEPROM 指电可擦除可编程只读存储器 Electrically Erasable Programmable Read-Only Memory。它最大的优点是可以直接用电信号擦除,也可以用电信号写入。
EEPROM 不能取代 RAM 的原因是其工艺复杂,耗费的门电路过多,且重编程时间比较长,同时其有效重编程次数也比较低。

Flash memory 指的是闪存,所谓的闪存,它也是一种不易失性的内存,属于 EEPROM 改进产品。它最大的特点是必须按块(Block)擦除(各块尺寸不确定,不同厂家的产品规格不同), 而 EEPROM 一个字节可以一次一个字节(Byte)。

2. SOC 片上系统

2.1 概述

System on Chip 缩写称为系统级芯片,也称为片上系统。
狭义上说,它是信息系统的核心芯片集成,是将系统的关键部件集成在一个芯片上;广义上说,SoC 中央处理器是一个小系统(CPU)是大脑,所以 SoC 系统包括大脑、心脏、眼睛和手。
国内外学术界普遍倾向 SoC 将微处理器定义为模拟 IP 核、数字 IP 核和存储器(或片外存储控制接口)集成在单个芯片上,通常由客户定制,或针对特定用途的标准产品。

2.2 SoC 关键技术

包括 总线架构技术,IP 核可复用技术、软硬件协同设计技术SoC 验证技
技术、可测设计技术、低功耗设计技术、超深亚微米电路实现技术。

2.3 SOC 的组成

在这里插入图片描述

  1. 微控制器、微处理器或DSP核。有些包含不止一个处理器核SoC称为multiprocessor system on chip (MPSoC)。
  2. 内存模块,可以 ROM、RAM、EEPROM 和 flash。
  3. 时钟源。
  4. 包括计数器在内的外设。
  5. 例如,外部接口 USB、FireWire、Ethernet、SPI。
  6. 数模转换器和模数转换器。
  7. 电源和电压管理电路。

2.4 SOC 特征

芯片不包括微处理器、存储器和其他外围设备和电路 SoC,就像我们不能在一起一样 51 单片机称为 SoC。SoC 是建立在 IP 核(具有复杂系统功能,可独立销售的超大规模集成电路块)用于 IP 为了达到快速发展的目的,重用核。由于 SoC 芯片集成度高,布线短,功耗相对较低。SoC 在不单独配置更多芯片的情况下,将多芯片集成在一起,可以更有效地降低生产成本 SoC 方案成本较低。

2.5 SOC 的应用

SoC 它被广泛使用,最常见的是我们日常生活中使用的智能手机。比如苹果 A4 基于处理器 ARM 处理器架构 SoC,它集成基于 45 一个纳米工艺 ARM Cortex-A8 处理器内核和一个 PowerVR SGX 535 内核图形处理。但是,在企业级服务器和 HPC 等领域,SoC 不是最好的选择,但是 SoC 传统将被挤压到整个计算设备中 CPU 移动终端(手机、平板电脑、传感器等)、低端服务器、存储等市场设备。

3. 总线

由 ARM 公司推出的 AMBA 影片总线受到了广泛的影响 IP 开发商和 SOC 系统集成商的青睐已成为流行的工业标准。

AMBA 4:可根据不同的应用程序选择 AXI4/AXI4-LITE/AXI4-STREAM。

3.1 AXI 协议

AXI 协议包含 5 阅读操作是一个相对独立的通道 AR 和 R 通道完成,写作操作通过 AW、W 和 B 通道完成。
AXI 所有五个通道都使用相同的通道 VALID/READY 握手机制来传送数据和控制信息,这种机制使 master 和 slave 信息传输的速率可以自由控制。
AXI 协议是基于 burst 数据串数,一个 burst 可能包含多拍数据,每拍数据称为一个transfer 或者 beat。AXI 协议有一个总体限制,即 burst 操作不能越过 4K 保证边界burst 操作访问是相同的 slave。

4. CPU 处理器

4.1 概述

冯诺依曼的系统结构提出了存储程序的想法。存储程序是指将程序存储在计算机中,计算机自动执行。

4.2 主要特点

  1. 用二进制数表示计算机处理的数据和指令。
  2. 顺序执行程序。
  3. 计算机硬件由五部分组成:运算器、控制器、存储器、输入设备和输出设备。
  4. 指令集可分为 CISC 和 RISC 两部分。

5. Cache

5.1 初识Cache

Cache 电脑中的高速缓冲存储器位于 CPU 和主存储器 DRAM(Dynamic Random Access Memory)通常由规模小但速度高的存储器组成 SRAM(Static Random Access Memory 由静态存储器组成。
它是位于 CPU 一种容量小但速度高的存储器与内存之间。CPU 当速度远高于内存时,当CPU 等待一定的时间周期直接从内存中获取数据, Cache 则可以保存 CPU 如果刚刚使用或回收的部分数据, CPU 当需要再次使用这部分数据时,可以再次使用 Cache 直接调用,避免重复访问数据,减少 CPU 等待时间提高了系统的效率。Cache 又分为
L1Cache和 L2Cache(二级缓存),L1Cache 主要是集成 CPU 内部,而 L2Cache在主板上在主板上 CPU 上。

5.2 Cache 原理:局部原理

空间局部性:最近未来使用的信息(指令和数据)很可能与存储空间中使用的信息相邻。

时间局部:最近未来使用的信息很可能是现在使用的信息。

5.3 映射

5.3.1 直接映射

主存中的每个块只能放置在 Cache 唯一的位置。

优点:映射方式简单,可以得到比较快的访问速度。
缺点:效率低。

5.3.2 全相联映射

指主存的任何一块都可以映射到 cache 任何一块。

优点:命中率较高,cache 存储空间利用率高。
缺点:速度低,成本高。

5.3.3 组相联映射

指主存中的每一块都可以放置在 Cache 任何一条路(相当于直接映射)中唯一的一(相当于全相联映射)。

优点:块的冲突率相对较低,块的利用率显著提高,块的缺失率显著降低。
缺点:实现难度和成本高于直接映射。

5.4 Cache 一致性问题

不仅仅是多处理器 cache 共享存储器中的同一数据副本可能不一致,多个处理器的独立异步操作也会使多个处理器 cache 中同一存储块的副本不一致。

5.4.1 监听协议

被处理器独占 Cache 处理器负责监控总线中缓存的内容。如果处理器更改,则需要通过总线广播;相反,如果内容状态被其他处理器更改,则处理器Cache 从总线收到通知后,当地备份状态需要相应改变。

5.4.2 目录协议

需要缓在 Cache 的内存块被统一存储在一个目录中,目录表统一管理所有的数据,协调一致性问题。该目录表类似于一个仲裁者,当处理器需要把一个数据从内存中加载到自己独占的 Cache 中时,需要向目录表提出申请;当一个内存块被某个处理器改变之后,目录表负责改变其状态,更新其他处理器的 Cache 中的备份,或者使其他处理器的 Cache 的备份无效。

5.4.3 MESI 协议

MESI 中每个缓存行都有四个状态,分别是 E(exclusive)、M(modified)、S(shared)、I (invalid)。下面我们介绍一下这四个状态分别代表什么意思。

M:代表该缓存行中的内容被修改了,并且该缓存行只被缓存在该 CPU中。这个状态的缓存行中的数据和内存中的不一样,在未来的某个时刻它会被写入到内存中(当其他 CPU 要读取该缓存行的内容时。或者其他 CPU 要修改该缓存对应的内存中的内容时(个人理解 CPU要修改该内存时先要读取到缓存中再进行修改),这样的话和读取缓存中的内容其实是一个道理)。

E:E 代表该缓存行对应内存中的内容只被该 CPU 缓存,其他 CPU 没有缓存该缓存对应内存行中的内容。这个状态的缓存行中的内容和内存中的内容一致。该缓存可以在任何其他 CPU读取该缓存对应内存中的内容时变成 S 状态。或者本地处理器写该缓存就会变成 M 状态。

S:该状态意味着数据不止存在本地 CPU 缓存中,还存在别的 CPU 的缓存中。这个状态的数据和内存中的数据是一致的。当有一个 CPU 修改该缓存行对应的内存的内容时会使该缓存行变成 I 状态。

I:代表该缓存行中的内容时无效的。

5.5 Cache 性能指标

命中率、失效率、平均访问时间

平均访存时间 = 命中时间+失效率×失效开销

6. DDR

6.1 DDR 层次结构

  1. Channel:也就是通道,简单理解就是 DDRC(DDR 控制器),一个通道对应一个 DDRC。芯片支持多少个 DDRC 就支持多少个通道。
  2. DIMM:双列直插式内存模块。说白了就是内存条/插槽。
  3. RANK:由多个颗粒并联,位宽与通道的数据位宽一样。比如 channel 的数据位宽是 x64,颗粒是 x8 的,那就需要 8 个颗粒组成一个 rank。一个 DIMM 可以多个 rank。
  4. CHIP:就是内存条上贴的存储芯片,也叫作颗粒。根据数据位宽,可分为 x4,x8 和 x16的。
  5. BANK:chip 往下拆分就是 bank。
  6. ROW&COL:BANK 往下拆分就是一个个的存储单元,横向一排称之为 row,纵向一列称之为 column。

6.2 Burst lenth 突发长度:

Burst Lengths,简称 BL,指突发长度,突发是指在同一行中相邻的存储单元连续进行数据传输的方式,连续传输所涉及到存储单元(列)的数量就是突发长度(SDRAM),在 DDR SDRAM中指连续传输的周期数。
只要指定起始列地址与突发长度,内存就会依次自动对后面相应数量的存储单元进行读/写操作而不再需要控制器连续地提供列地址。
在 DDR3 SDRAM 时代,内部配置采用了 8n prefetch(预取)来实现高速读写.这也导致了 DDR3的 Burst Length 一般都是 8。

6.3 Prefetch 预取:

所谓 prefetch,就是预加载,这是 DDR 时代提出的技术。在 SDR 中,并没有这一技术,所以其每一个 cell 的存储容量等于 DQ 的宽度(芯片数据 IO 位宽)。
进入 DDR 时代之后,就有了 prefetch 技术,DDR 是两位预取(2-bit Prefetch),有的公司则贴切的称之为 2-n Prefetch(n 代表芯片位宽)。DDR2 是四位预取(4-bit Prefetch),DDR3和 DDR4 都是八位预取(8-bit Prefetch)。而 8-bit Prefetch 可以使得内核时钟是 DDR 时钟的四分之一,这也是 Prefetch 的根本意义所在。

6.4 DDR 关键参数:

tRCD:行寻址到列寻址的延迟时间。
tCL:内存读写操作前列地址控制的潜伏时间。
tRP:内存行地址控制器预充电时间。

7. ARM 体系结构

7.1 概述

ARM(Advanced RISC Machines)是一个 32 位 RISC(精简指令集)处理器架构,ARM 处理器则是 ARM 架构下的微处理器。ARM 处理器广泛的使用在许多嵌入式系统。ARM 处理器的特点有指令长度固定,执行效率高,低成本等。

7.2 RISC 设计主要特点

  1. 指令集——RISC 减少了指令集的种类,通常一个周期一条指令,采用固定长度的指令格式,编译器或程序员通过几条指令完成一个复杂的操作。而 CISC 指令集的指令长度通常不固定;
  2. 流水线——RISC 采用单周期指令,且指令长度固定,便于流水线操作执行;
  3. 寄存器——RISC 的处理器拥有更多的通用寄存器,寄存器操作较多。例如 ARM 处理器具有 37 个寄存器;
  4. Load/Store 结构——使用加载/存储指令批量从内存中读写数据,提高数据的传输效率;
  5. 寻址方式简化,指令长度固定,指令格式和寻址方式种类减少。

7.3 ARM 的基本数据类型

双字节(DoubleWord):64 位
字(Word):在 ARM 体系结构中,字的长度为 32 位。
半字(Half-Word):在 ARM 体系结构中,半字的长度为 16 位。
字节(Byte):在 ARM 体系结构中,字节的长度为 8 位。

7.4 ARM 处理器存储格式

ARM 体系结构将存储器看作是从 0 地址开始的字节的线性组合。作为 32 位的微处理器,ARM 体系结构所支持的最大寻址空间为 4GB。ARM 体系结构可以用两种方法存储字数据,分别为大端模式和小端模式。

大端模式(高地高低):字的高字节存储在低地址字节单元中,字的低字节存储在高地址字节单元中。

小端模式(高高低低):字的高字节存储在高地址字节单元中,字的低字节存储在低地址字节单元中。

8. 虚拟内存

8.1 什么是虚拟内存?

基于局部性原理,在程序装入时,可以将程序的一部分装入内存,而将其余部分留在外存,就可以启动程序执行。在程序执行过程中,当所访问的信息不在内存时,由操作系统将所需要的部分调入内存,然后继续执行程序。另一方面,操作系统将内存中暂时不使用的内容换出到外存上,从而腾出空间存放将要调入内存的信息。这样,系统好像为用户提供了一个比实际内存大得多的存储器,称为虚拟存储器。

之所以将其称为虚拟存储器,是因为这种存储器实际上并不存在,只是由于系统提供了部分装入、请求调入和置换功能后(对用户完全透明),给用户的感觉是好像存在一个比实际物理内存大得多的存储器。虚拟存储器的大小由计算机的地址结构决定,并非是内存和外存的简单相加。

8.2 虚拟存储器三个主要特征

  1. 多次性,是指无需在作业运行时一次性地全部装入内存,而是允许被分成多次调入内存运行。
  2. 对换性,是指无需在作业运行时一直常驻内存,而是允许在作业的运行过程中,进行换进和换出。
  3. 虚拟性,是指从逻辑上扩充内存的容量,使用户所看到的内存容量,远大于实际的内存容量。

9. 内核 kernel

9.1 概述

内核是操作系统最基本的部分,它是为众多应用程序提供对计算机硬件的安全访问的一部分软件,这种访问是有限的,并且内核决定一个程序在什么时候对某部分硬件操作多长时间。直接对硬件操作是非常复杂的, 所以内核通常提供一种硬件抽象的方法来完成这些操作。硬件抽象隐藏了复杂性,为应用软件和硬件提供了一套简洁,统一的接口(为系统调用开发的接口)。一句话就是对硬件进行管理。

9.2 功能

  1. 为系统调用开发的接口:为了开发人员更高效的操作内核,进而操作系统。
  2. 程序管理:例如多任务环境,一台计算机可能同一时间需要处理多个任务,需要内核分配好,高效运转。
  3. 内存管理:所有需运行的任务,都得放到内存里,内核要处理好。
  4. 文件系统管理:I/O 输入/输出设备,还有不同文件格式的支持。
  5. 设备驱动:通过加载驱动程序,使计算机与相关硬件连接起来。
锐单商城拥有海量元器件数据手册IC替代型号,打造电子元器件IC百科大全!

相关文章