嵌入式系统基本概念(硬件篇)

嵌入式系统组成: 硬件子系统、软件子系统。
嵌入式系统分类:

  • 通用计算机型:通用计算机或嵌入式单板机(如PC104模块)嵌入到应用系统内部。
  • 专用计算机型:面向具体应用系统量身定制,体积小功耗低。

硬件子系统包括:嵌入式处理器、存储器、I/O系统、附属电路

一、嵌入式处理器:

即嵌入式系统上的处理单元:如嵌入式微处理器、嵌入式微控制器、数字信号处理器(DSP)、可编程器件(FPGA或CPLD)及其组合。
不同处理器的主要区别:
指令多少、指令形式(RISC和CISC)、处理器的结构设计、工艺和应用指标。
嵌入式处理器相对通用处理器,一般集成了较多的I/O接口电路或做了针对应用场景的优化,但本质区别不大,可以用通用处理器代替嵌入式处理器。
1、嵌入式微控制器:
典型的嵌入式微控制器包括在同一个IC(集成电路Integrated Circuit) 的:
CPU 内核、中断控制器、定时器/计数器、存储器(RAM、ROM)以及其他外部接口电路。
集成的外部接口较多,处理能力相对较弱,扩展需求低,适用于简单的控制系统。
2、嵌入式微处理器:
相较于微控制器,外部接口集成较少,处理能力强,一般需要大量的外围电路包括存储器和I/O接口电路。
实际上微控制器与微处理器处理内核上并没有太多区别,更多为一种定性上区分。
3、DSP:
专为信号处理设计,相较一般的数字数据处理,数据处理量大,实时性较高,包括定点DSP浮点DSP
密集的数学计算要求其具备一些特点:

  • 快速计算总和的乘加 (MAC,multiply-and-accumulate 模块。
  • 移位操作对位处理(移位器)。
  • 独立地址生成单元加速对存储器访问。
  • 专门硬件实现循环。

4、可编程器件:
利用可编程器件实现嵌入式系统的处理器子系统可以提高系统的集成度,复杂的外部电路课集成到可编程器件上,甚至包括CPU,称为 SoC
可以利用可编程器件实现(减少)以下逻辑电路,实现较高集成度:

  • 常用的组合逻辑和时序逻辑电路。
  • 复杂通用电路如通信控制器。
  • 市场没有的专用电路。

软件的硬件化:利用FPGA实现的滤波器速度远快于软件实现的滤波器。

二、嵌入式存储子系统:

内部存储器和外部存储器。
嵌入式系统的存储器用于存放应用程序和数据,大多嵌入式系统软件以固件形式存放,一般对于微控制器不用外部存储器,使用其他处理单元则需要使用外部存储器。

1、存储器的分类:

制作工艺上:目前嵌入式系统大多数是半导体存储器。大部分使用的MOS工艺(低功耗,高集成,便宜,相对慢),部分使用双极性工艺(快速,但功耗高),还有HMOS的

  • 使用功能特性上:RAM和ROM。

1.1 RAM随机存储器:

  • 动态RAM (DRAM): 数据必须动态刷新(电容充放电),需要配合DRAM控制器进行周期性的刷新或者再生数据。处理器通过DRAM控制器访问数据,并且通过其刷新数据保持数据的有效性。
  • 静态RAM (SRAM): 保持通电数据便不会丢失,但是断电数据会消失。
  • 双端口RAM:常用于两个嵌入式处理器共享内存的应用系统,具有较高的通信效率。
    嵌入式系统基本概念(硬件篇)_第1张图片
    补充:为提高DRAM访问速度,使用页模式、EDO、同步DRAM等措施。

1.2 ROM只读存储器:

  • EPROM:可通过紫外光照射进行数据的擦除然后再编程(离线,大概几千次),一般封装好可以保存数据十几年不变。
  • EEPROM:任何字节可以擦除写入(早期离线,上万次编写,现在已经可以在线编程了),一旦写入永久保存,但是写入周期明显长于RAM,不可用于替代RAM作为系统内存。
  • FLASH快闪存储器:可以在线擦写(按扇区擦除),高密度,价格低,快速读取,可部分擦写(保护块)。
    主要有NOR FLASHNAND FLASH两种,第一种每个N-MOS单元独立(OR的意思?),可以随机读取任意单元内容,适用于程序代码并行读写存储。对于第二种,多个N-MOS单元连接在一起(AND),可按顺序读取存储单元内容,适用于数据或文件的串行读写存储。

1.3 混合类型存储器:
典型的如NVRAM,实际上通常是RAM加后备电池集成,一般用于存储仅几百字节的系统关键信息,价格昂贵。
补充:对于系统配置数据存储器(类似于BIOS)要求:非易失性和访问便捷性。
常使用:NVRAM技术(价格贵)、RAM加电池(面积大)、串行EEPROM(速度慢)、FLASH存储器(部分低端芯片不具备接口)。具体综合考虑速度价格和应用条件。

三、附属电路I/O子系统:

对于不同的领域嵌入式系统很大一部分的区别在于这一部分,结合不同的应用场景与功能需求需要选区不同的外部I/O接口电路(各种外设)。
1、嵌入式处理器工作必须的附属电路:
时钟电路、复位电路、调试电路、监视定时器、译码器电路等,不包含数据的输入输出,但是对处理器工作必不可少,通常与处理器设计在一起构成处理器子系统。
2、I/O子系统:
用于处理器与外部设备之间的数据通信和交互。

典型的附属电路和I/O电路:

1、复位电路: 完成硬件的初始化
阻容复位电路手动复位电路看门狗复位电路(程序必须定时清除看门狗计数防止溢出,否则触发复位)、专用复位电路(输出复位信号,集成如复位电路、看门狗定时器、点源电压监视电路等)、内部复位电路(看门狗电路与处理器集成在一起)、软件复位(需要相应指令和硬件支持)。

2、系统时钟: 产生处理器工作的时钟信号
通用计算机可以使用分离的时钟电路,对于嵌入书系统,常将时钟电路集成在处理器上,只需外接晶体即可。

  • RC时钟: 成本、功耗低,适合时钟稳定性要求不高场景。可以动态调整。
  • 石英晶体: 处理器引出两个引脚外接晶体,内部集成振荡电路。
  • 石英振荡器: 将石英晶体和振荡电路集成一体。
  • 锁相倍频时钟与多时钟源: 高性能处理器工作在高频情况下,为避免高频时钟线暴露于电路板上产生电磁干扰,一般采用锁相倍频电路对低频时钟源倍频,经不同的分频器输送给处理器内核和各个I/O接口电路。

3、I/O模块:
3.1 基本结构概述:
I/O接口电路通过内部总线与处理器内核交换信息。
嵌入式系统基本概念(硬件篇)_第2张图片
总线按照传输的数据类型分为:
数据总线DB、地址总线AB、控制总线CB。
对于I/O模块的操作一般集中于对寄存器操作,从编程结果上可分为:

  • 数据输入寄存器: 外设 - > 内核,只读
  • 数据输出寄存器: 内核 - > 外设,只写
  • 控制寄存器: 控制模块工作,只写
  • 状态寄存器: 读取工作状态,只读
  • 模式寄存器: 设置工作方式,只写

处理器内核通过访问I/O接口模块的寄存器来操作模块,而寄存器地址编码一般有以下两种:

  • 与存储器统一编址:
    I/O地址与存储器地址空间重叠,访问指令相同,寻址方法不同。
    I/O空间与存储器空间统一编址,地址不重叠,寻址方式相同(如ARM)。
  • 单独编址: 两者完全独立,访问采用不同指令进行。

对于存储器和I/O接口电路的地址空间的分配需要使用译码器:

  • 普通集成电路译码器:灵活性较差。
  • 可编程器件译码器:灵活,可满足定制需求。
  • 嵌入式处理器集成译码器:可编程,不需要安装译码器电路。

3.2 定时器/计数器:
定时器与计数器实际上基本结构相同,定时器使用内部系统时钟作为计数脉冲,计数器通常使用来自处理引脚信号对外部事件计数。

3.3 SPI接口:
SPI(串行外部设备接口Serial Peripheral Interface),利用3条线(数据收发与时钟线)完成两个芯片间的双工高速通信
SPI系统主要用于同标准外设芯片通信,如移位寄存器、ADC、LCD控制器等;也可用于小型系统中交换数据代替UART。
工作时类似于分布式16位移位寄存器,一半在微控制器(SPI主设备)内,一般在外设(SPI从设备)里,通过循环移位完成主从设备数据交换。
嵌入式系统基本概念(硬件篇)_第3张图片
一般来说,SPI系统使用4根I/O引脚实现数据传输:串行时钟SPSCK/PD3、主入从出MISO/PD1、从入主出MOSI/PD2、低有效从机片选SS*、PD0。

3.3 UART:
异步通信收发器,有的处理器称为SCI。
通信双方不使用同步时钟而是使用相同的波特率,数据的发送接收单位是帧,发送接受可以同时进行,属于全双工通信。
嵌入式系统基本概念(硬件篇)_第4张图片
3.4 通用并行接口:
嵌入式处理器的通用并行接口提供:输入输出、双向功能。大多数的嵌入式处理器通用I/O口与其他的端口复用引脚以节省引脚降低成本。

3.5 I2C接口:
由Philips公司开发的双向两线同步串行总线,用于连接微控制器及其外围设备,最初是为音频和视频设备设计开发,现应用较为广泛。
由数据总线SDA和时钟总线SCL构成串行总线,在处理器与被控IC、IC与IC之间进行双向传送,最高100Kbps。各种被控IC均并联在该总线上,具有唯一的地址。
总线必须由主器件(一般是微控制器)控制,主器件产生串行时钟(SCL)控制总线的传输方向,并且产生起始和停止条件。
嵌入式系统基本概念(硬件篇)_第5张图片

3.6 I2S接口与音频输入输出:
3.7 LCD 显示屏接口:
LCD显示系统包括LCD控制器、LCD驱动器、LCD显示屏和背光电路:

  • LCD控制器是可编程电路,可以控制LCD显示参数和显存的访问。
  • LCD驱动器为LCD显示屏提供所需的工作电压和信号。
  • LCD显示屏和背光电路用于显示文字和图像。

嵌入式处理器支持LCD显示是指嵌入式处理器上集成了LCD控制器。
3.8 A/D接口:
一般大多嵌入式处理器带有相关接口,适用于一般性应用,对于高速、高精度要求时可以外接A/D、D/A转换芯片。
嵌入式系统基本概念(硬件篇)_第6张图片
3.9 实时时钟模块:
系统电源关闭后,RTC可以通过备用电源维持工作,使用外部晶振工作,同时可以完成闹钟功能。

总结:

不同的嵌入式处理器区别在于性能功能

  • 性能指的是嵌入式处理器处理数据的能力(处理速度)。
  • 功能取决于处理器上集成的I/O模块 的种类和数量。

你可能感兴趣的:(嵌入式开发学习笔记)