FPGA概念理解之:ZYNQ、PS、PL、APU、ARM、SOC、URAT、GPIO...

  • ARM

    ARM(Advanced RISC Machine)处理器是英国Acorn有限公司设计的低功耗成本的第一款RISC微处理器。

    ARM处理器本身是32位设计,但也配备16位指令集,一般来讲比等价32位代码节省达35%,却能保留32位系统的所有优势。

  • RISC

    RISC(Reduced Instruction Set Computer,精简指令集计算机)

  • SOC

    SOC(System on Chip)系统级芯片,或称为片上系统,意指它是一个产品,是一个有专用目标的集成电路,其中包含完整系统并有嵌入软件的全部内容。同时它又是一种技术,用以实现从确定系统功能开始,到软/硬件划分,并完成设计的整个过程。

  • FPGA

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

  • ZYNQ

    ZYNQ系列是Xilinx2010.4推出的行业第一个可扩展处理平台。

    赛灵思可扩展处理平台芯片硬件的核心本质就是将通用基础双ARMCortex-A9MPCore处理器系统作为“主系统”,结合低功耗28nm工艺技术,以实现高度的灵活性、强大的配置功能和高性能。由于该新型器件的可编程逻辑部分基于赛灵思28nm7系列FPGA,因此该系列产品的名称中添加了“7000”,以保持与7系列FPGA的一致性,同时也方便日后本系列新产品的命名。

    Zynq-7000为何不是FPGA?

    Zynq-7000可扩展处理平台是采用赛灵思新一代FPGA(Artix-7与Kintex-7FPGA)所采用的同一28nm可编程技术的最新产品系列。可编程逻辑可由用户配置,并通过“互连”模块连接在一起,这样可以提供用户自定义的任意逻辑功能,从而扩展处理系统的性能及功能。不过,与采用嵌入式处理器的FPGA不同,Zynq-7000产品系列的处理系统不仅能在开机时启动,而且还可根据需要配置可编程逻辑。采用这种方法,软件编程模式与全功能的标准ARM处理SoC毫无二致。

    ZYNQ,往大了说,就是两大功能模块:

    1. PS
    2. PL

    直白说,就是ARM的SOC部分;和FPGA部分

  • PS

    PS(Processing System)处理系统,就是与FPGA无关的ARM的SOC的部分

  • PL

    PL(Programmable Logic)可编程逻辑,就是FPGA部分。

    之所以叫PL,而不是直接叫FPGA,主要是考虑到让搞软件的人理解方便。

  • APU

    APU(Application Processor Unit),应用处理器单元。

    位于PS里面的中心位置。其内包含:

    1. 双ARM-CortexA9核
    2. 高速缓冲
    3. DMA
    4. 定时器
    5. 中断控制
    6. 浮点和NEON协处理
    7. 硬件加速器
    8. 一致性控制器ACP

    也就是,处理器核心部分

  • TTC

    TTC(Triple Time Counter),有三个独立通道的计数器,可以独立计数。挂在APB上,为系统或外设提供定时或计数服务。

  • WDT

    看门狗定时器,有两个, 分别监视ARM-Cortex A9用的。 如果软件跑飞,无法清定时器,一段时间后,看门狗就复位。

  • SWDT

    系统级看门狗定时器, 这个看门狗的时钟和复位信号,都可以来自于芯片外部, 这样,即使系统有严重故障,比如时钟频率本身都有问题了,仍然可以通过与系统无关的外部信号计数,计数满就复位。

  • SCU

    SCU(Snoop Control Unit), 用来保持双核之间的数据Cache的一致性。 也就是是说,第一个A9处理器写存储时,只是写在了缓存里,没有进主存, 如果第二个A9读操作,涉及到第一个写脏了的数据段, SCU要保证第二个A9的缓存里是最新的数据。 如果第二个A9写同样数据段的数据,需要在第一个中体现出写的内容。 SCU的存在,才使得两个核成互相联系的“双核”,才能成为MPsoc。

  • References

  1. yf869778412
  2. ZYNQ芯片是什么
  3. 据说不错的教程
  4. Zynq-7000 SoC 产品

你可能感兴趣的:(FPGA)