新名词会用红字标识

全可编程片上系统基础知识

Zynq-7000 Soc功能和结构 Zynq-7000 Soc 在嵌入式系统中的优势 Zynq-7000 Soc的Vivado设计流程

1.1 现场可编程门阵列(Field Programmable Gate Array, FPGA)

  • 专用的中央处理器单元(Central Processing Unit, CPU)
  • 可编程逻辑资源 = 全可编程片上系统(ALL Programmable System-on-chip, ALL Programmable Soc) FPGA进入到嵌入式系统应用领域

1.1.1全可编程片上系统的演进

传统的嵌入式系统需要用到大量的机械连接装置,以及额外的专用集成电路(Application Specific Integrated Circuit, ASIC)器件 (1)增加了系统的功耗,(2)增加了系统的成本,(3)降低系统的可靠性和安全性,(4)系统维护成本较高

可以将构成计算机基本结构的元件集成到单个芯片中 CPU内核,总线结构,功能丰富的外设控制器,数模混合器件

ARM公司提供了以ARM CPU体系结构为基础的嵌入式处理器物理知识产权(Intellectual Property, IP)核

以这个嵌入式处理器结构为核心,可以在单个芯片内搭载功能丰富的外设资源。

这种将计算机系统集成到单芯片中的结构称为片上系统(System On a Chip, Soc)。

在这个结构中, 集成了 ARM CPU 核, 高级微控制器总线结构( Advanced Microcontroller Bus Architecture, AMBA), 以及用于和外部不同外设连接的物理IP核

  1. 改善性能
    1. 构成电脑结构的绝大部分功能部件集成在一个芯片中,显著缩短连线长度,大大减少CPU和外设之间信号的传输延迟。
    2. 在Soc内由于构成计算机功能部件的晶体管具有更低的阻抗,因此也降低了逻辑门的翻转延迟
  2. 降低功耗Soc的供电电压可以减低到2.0V
    1. 在Soc内,由于降低了晶体管的电容值,在相同CPU工作频率下,显著降低了系统的整体功耗。
  3. 减少体积 将整个电脑系统的绝大多数元器件集成在一个芯片内,因此大大降低了整个系统的体积和重量 (4)可靠性提高 将整个电脑系统的绝大多数元器件集成在一个芯片内,减少了使用了外部器件的数量,与外设连接所需要的接口数量也相应减少。因此提高了系统的可靠性。 (5)降低总成本 构成系统所使用印制电路板的面积也相应地缩小,更进一步,缩小整个系统的封装体积。

局限性 (1)灵活性差, 传统电脑允许用户更新某个外部元器件,如DDR,RAM,显卡。但是一旦Soc量产后,更新其内部功能部件的可能性基本没有 (2)专用性强 绝大多数Soc器件都是用于专门用途,很难用作其他用途。 (3)设计复杂 对Soc的系统的设计要求具备软件和硬件相关的系统设计知识,这比传统的基于PCB板的系统设计要求高很多。

于是Xilinx公司提出全可编程(ALL Programmable)Soc结构,Soc充分利用了现场可编程门阵列内部结构的灵活性,克服了传统Soc器件灵活性差,专用性强,设计复杂的特点。

1.1.2 Soc与 MCU与 CPU的比较

Soc: 多个功能强大的处理器内核 + 容量更大的储存器模块 + 不同的IO资源 + 其他外设 + Graphics Processing Unit GPU + Digital Signal Processer DSP + 视频音频解码器 + 运行系统(Linux,Window ,Android)+ 主芯片

CPU:

单个处理器核,需要外部额外的存储器和外设支持

MCU:

一个处理器内核 + 存储器块 + 基本IO + 其他外设

全可编程Soc诞生的背景 8位PicoBlaze和32位MicroBlaze软核处理嵌入式处理器(Xilinx)+ PowerPc(IBM)+ARM(双核cortex-A9)硬核处理器 + FPGA芯片 = ALL Programmable Soc

特点:从传统以硬件描述语言HDL 为中心的硬件逻辑设计,转到以C语言 为代表的软件为中心的功能表述。形成了以C语言描述嵌入式系统结构的功能,用HDL语言描述硬件的具体实现的设计方法。真正的软件和硬件的协同设计。

1.1.4 可编程Soc系统技术特点 1.定制,2延长产品生命周期,3降低元器件成本4硬件加速。 1.1.5全可编程片上系统中的处理器类型 1.硬核处理器2,软核处理器(利用FPGA资源,LUT,BRAM,触发器,互联资源) 1.2 Zynq-7000 Soc功能和结构