当前常用的嵌入式处理器种类多,根据其不同的应用领域、处理能力及架构大体可以分为嵌入式微处理器、嵌入式微控制器及数字信号处理器(DSP) , FPGA 和 SOC 。
(1)微处理器
微处理器根据其CPU架构的不同,可以分为 ARM 架构、PowerPC 架构、MIPS 架构和 X86 架构等。
(2)微控制器
微控制器又称单片机,就是将整个计算机系统集成到一块芯片中,性能一般但是功能较为齐全。
(3)数字信号处理器
数字信号处理器对嵌入式系统结构和指令做了特殊的设计,使其适合于执行 DSP 算法,编译效率较高,指令执行速度也较快。在数字滤波、FET和谐分析等方面,DSP算法正在大量进入嵌入式领域。
(4)FPGA
现场可编程门阵列 FPGA 集成度高、体积小、灵活可重配置、实验风险小等优点,在复杂数字系统中得到了越来越广泛的应用。
(5)SOC
芯片级系统,也有称片上系统,指它是一个产品,是一个有专用目标的集成电路,其中包含完整系统并有嵌入软件的全部内容。
SOC部分(不做要求,看故事一样可以过)
一、SOC简介
1.1定义
在单个硅芯片上来实现整个系统的功能,而不是需要用几个不同的物理芯片来实现。
1.2 Zynq7000 为例学习
1.2.1基本信息
dual-core ARM® CortexTM-A9
流水线化和/或并行化
芯片上实现多核,以允许设计人员分解复杂的算法
Xilinx
programmable
logic
1.2.2作用
(1)示波器
以 Zynq7000 为例设计示波器。Zynq7000 中高速 ADC 芯片,LVDS 差分,速率 1Gbps。 Zynq-7000芯片,LVDS 最高速率可达 1.25 Gbps,可靠地接收 ADC 采样到的数据。
基于 Zynq-7000 可编程逻辑资源: 集成高灵敏度、低抖动、零温漂的数字触发系统,使得其触发更为准确;各种智能触发功能如斜率、脉宽、超时、欠幅、码型等,能帮助用户更精确地隔离出感兴趣的波形;总线协议触发甚至能直接用符合条件的总线事件,极大地方便调试。
Zynq-7000 支持 DDR2、DDR3 等低成本存储器,最高速率可达 1066MT/s,因此,使用单片DDR3 即可满足实时存储要求。
PS 和 PL 之间采用高速 AXI 总线,可以大大提高数据吞吐率,降低示波器的死区时间。
(2)自动驾驶
(3)小型电脑
MCU(单片机)部分
一、单片机架构
1.1 CISC 结构的单片机
数据线和指令线分时复用,称为冯·诺伊曼结构。
它的优点是指令丰富,功能较强,但缺点取指令和取数据不能同时进行,速度受限,价格亦高;属于 CISC 结构的单片机有 Intel8051 系列、Atmel 的 AT89系列、台湾 Winbond(华邦)W78 系列;
适用于控制关系较复杂的场合,如通讯产品、工业控制系统应采用 CISC 单片机。
1.2 RISC 结构的单片机
采用精简指令集 RISC(Reduced Instruction Set Computer) 的单片机数据线和指令线分离,具有所谓哈佛(Harvard)结构。
RISC 结构的单片机:速度快,程序存储器利用率高,易集成(集成度高)。但指令较为简单,适用于控制较简单的场所。
二、常见处理器选型MCU-STM32系列
2.1分类
STM32系列从内核上分,可分为: Cortex-M0/-M0+、Cortex-M3、Cortex-M4 ,以及 Cortex-M7。
STM32系列从应用上分,大体分为:超低功耗型、主流型、高性能型。
2.2单片机选型的原则
2.3 STM32系列都支持的通用资源
- 通信外设:USART、SPI、I2C
- 定时器:Multiple general-purpose timers
- 直接内存存取:Multiple DMA
- 看门狗和实时时钟:2xwatchdogs、RTC(独立的定时器,重要)
- PLL和时钟电路:Integrated regulator PLL and clock circuit
- 数模转换:Up to 3x 12-bit DAC
- 模数转换:Up to 4x 12-bit ADC(Up to 5 MSPS)
- 内部振荡器:Low-speed and High-speed internal RC oscillator
- 工作温度:-40 to +85°C and up to 125°C operating temperature range
- 内部温度传感器:Temperature sensor
2.4双核MCU
STM32MP151D
- 双核Cortex-A7,主频800MHZ
- 单核Cortex-M4,主频209Mhz
- 3D 图形处理单元
- 存储器
16位DDR3存储器,1GB
8bit EMMC Flash
Quad-SPI NOR Flash
支持Mciro SD
-
音频
3.5mm立体声耳机接口
支持麦克风输入
-
显示
并行RGB LCD显示接口,分辨率支持最高可达VGA (1366x768)
HDMI接口,带音频输出功能
-
USB
-
2个高速 USB 2.0 OTG,支持从机或主机,摄像头
-
8Bit 并行摄像头接口(DVP)
2.5单核MCU-STM32系列
2.5.1 MCU-STM32MP157A
2.5.2 MCU-STM32F103
(1)整体框图
(2)USB
如果 JP14 的 2 脚悬空,则 T1 导通,T2 截止。DP 自由状态。
如果 JP14 的 2 脚接地,则 T1 截止,T2 导通,DP 被 R69 拉向 3.3V 高电平。
至于为什么 T1 导通,T2 截止; T1 截止,T2 导通,见下图。 T1 截止, T2 2端电压为分压电压后的 4V ; T1 导通, T2 2端电压被拉至 3V3 。这中间的差值就可以利用来控制 T2 的导通和截止。
USB 接口的 DP+ 被 R69 拉向高电平的具体用途,由 USB 芯片定义。
一般来说,DP 拉高意味着高速设备,DM拉高表示低速设备;或者DP拉高,表示USB没连接;没拉高,USB正常使用。
FPGA部分
一、选型要点
选择FPGA具体型号的需要考虑以下内容,包括:
- 主流厂商比较:
目前,主要的 FPGA 供应商有 Xlinx公司、Altera公司、Lattic和Actel。其中Xlinx 公司和 Altera公司的规模最大 ,能提供器件的种类非常丰富。
Xilinx的短线资源非常丰富,这样在实现的时候,布线的成功率很高,Altera的FPGA的短线资源经常不够用,经常要占用LE来充当布线资源,Xilinx的双口RAM是真的,Altera的没有双口RAM,如果你要实现真正的双口RAM,只能用两块RAM来背靠背地实现,这样你的RAM资源就少了一半,xiinx工具对第三方仿真、综合工具结合的很好,有超强劲的仿真功能,而Altera的工具在这方面很显不足 。 - 器件特色
第一个关注的应该是 FPGA 器件的专用资源。例如是否需要高速接口,如果需要的话,需要多少个通道,各个通道需要的最高收发速度是多少。同样,如果需要实现运算量较大的算法模块时,则要求 FPG A器件需要有大量的 DSP 模块,并拥有足够多的 RAM 块来配合这些 DSP模块。 - 规模大小
在选型时,因为 FPGA 设计还未开始,很难确定 FPGA 器件的规模。通常的做法是,针对本次设计中想要用的 FPGA 器件系列,重新编译之前的某些功能模块,以便获得一个大致正确的规模估计。如果设计中使用了 IP ,这些 IP 核也需要编译后,加入到总面积估算中。再将需要加入的新功能进行设计估算。两方面加起来后,在此基础上预估再增加 20%-30% ,基本上可以满足之后的设计需求。甚至有时,现有的嵌入式逻辑分析仪也需要耗费内部存储模块,调试过程的资源消耗可能也需要考虑在内。 - FPGA留有余量
避免时序收敛对设计的影响,减少开发周期,快速进入板上调试阶段;则对设计后期修改或产品版本更新所增加的逻辑单元,就能比较容易的被接纳;设计在FPGA上正常运行后,如果FPGA上有大量未使用的资源,此时可以考虑换一个比较小的器件以降低成本,这时候要注意的就是引脚在移植代码时的修改问题。 - 速度需求
首先需要分析功能需求,然后在平衡资源与速度后,估计速度需求。同样也可以根据之前的设计来确定,根据FPGA供应商提供的datasheet,在最大速度的基础上,留出足够的安全余量,确定选型。当然,也可以直接选择同类型的速度等级最高的器件,尽早的进入设计调试阶段。等功能完善之后,再选用一个较慢的FPGA器件来做降成本的设计。 - 引脚
设计需要I/0接口类型,直接影响到FPGA器件所需要的引脚数目和封装类型。在此必须知道I/0标准和驱动强度,以及外部的接口电气标准。同时需要关注设计中的信号完整性问题,这些都需要与硬件工程师讨论后,进行确定。 - IP的可用性
芯片厂家的IP核的丰富性,如果提供足够多的IP核,覆盖我们的设计,当然是最好:,芯片厂家是否愿意以可接受的价格(更多可能是免费)的方式将这些IP核提供给我们因为IP核的使用可以大大减少开发周期,缩短工时,降低开发成本,因此选型时也需要考虑这部分 - 器件的可用性
一些老旧器件可能会面临停产的风险,如果开发周期超过两年以上,建议选择最新或者次新的器件,因为几年后,目前最新或者次新的FPGA器件在经济上是比较划算的 - 功耗
根据设计的功能需求,确定FPGA需要使用的电源。例如对IP核、I/0、transceiver等模块提供各自独立的电源层,FPGA需要的电源个数越多,电路板上的元器件成本就越高。所以需要根据之前的设计、FPGA供应商提供的功耗评估软件等估算将要消耗的功耗,从而确定所需的器件。 - 其他
器件的工具软件易用性,对于一些国产的FPGA器件,其开发软件稳定性较低,可能会额外增加开发成本,提高风险,因此在选型时,需要注意;
器件在高低温、强辐射等极端环境下的性能表现;
产品的继承性,一些常用功能模块的可移植性,考虑选型时,可能需要多考虑可以继承上一代产品的可用器件。
总之,在选型的时候,为自己和同事省事,为公司省成本。
二、选型
处理器部分电路的设计是整个电路设计中最复杂也是最核心的,选型的心路历程如下:
- 根据需求分析,选定设计所采用的硬件架构,
- 资料的搜集:以7 Series FPGA为例,资料如下器件手册,应用手册,应用笔记等
- DEMO板及评估资料,DEMO板原理图和PCB等
- 原理图开发指南
- PCB Layout指南。
- 搭建的开发平台
- 开发规范、测试规范等
- 原理图,PCB封装库文件等
FPGA资料图示1
FPGA资料图示2
三、FPGA中的电容知识点
0402电容应尽可能靠近FPGA放置,过孔两个英寸以内(图A不合格)。电容安装(焊盘、走线和过孔)应针对低电感系数进行优化。
过孔应直接对接焊盘。过孔可以位于端部(见图B),但更优化地位于垫的侧面(图C)。
焊盘侧面的过孔布局降低了寄生电感。双过孔可以放置在焊盘的两侧(见图D),以实现更低的寄生效应电感。