Zynq 的本质特征,是它组合了一个双核ARM Cortex-A9 处理器和一个传统的现场可编程门阵列(Field Programmable Gate Array,FPGA)逻辑部件。尽管之前也有过捆绑了FPGA 的专用处理器,但是还没有出现过完全相同的方案。在Zynq上,ARM Cortex-A9 是一个应用级的处理器,能运行完整的像Linux 这样的操作系统,而可编程逻辑是基于Xilinx 7 系列的FPGA 架构。这个架构实现了工业标准的AXI 接口,在芯片的两个部分之间实现了高带宽、低延迟的连接。这意味着处理器和逻辑部分各自都可以发挥最佳的用途,而不会有在两个分立的芯片之间的那种接口开销。同时又能获得系统被简化为单一芯片所带来的好处,包括物理尺寸和整体成本的降低。
Zynq 的片上系统
既然我们已经把Zynq 描述为一个片上系统(SoC),那么显而易见,第一个问题就会是“ 什么是SoC? ”
你也许知道,这个概念出现已经有一段时间了,潜在的意思是说单个硅芯片就可以用来实现整个系统的功能,而不是需要用几个不同的物理芯片来实现。在过去,SoC 这个术语常用于指专用集成电路(Application Specific IntegratedCircuit,ASIC),它上面可以有数字的、模拟的和射频的元件,和混合信号模块组合起来来实现模拟- 数字转换和数字- 模拟转换(ADC 和DAC)。单就数字部分而言,一块SoC 可以组合上数字系统所有的功能:处理、高速逻辑、接口、存储器等等。所有这些功能也可以用物理上分立的器件来实现,然后在印刷电路板(PCB)的层面上组合起来。SoC 的解决方案成本更低,能在不同的系统单元之间实现更快更安全的数据传输,具有更高的整体系统速度、更低的功耗、更小的物理尺寸和更好的可靠性。事实上有一大堆无可辩驳的理由来说明SoC 比等价的分立元件系统要强!可以看一下图1.1,这是关于板上系统和片上系统的简单图形化比较。
基于ASIC 的SoC 的主要缺点有(一)开发时间和成本,以及(二)缺乏灵活性。开发ASIC 时不可重用的工程投入(及成本)是巨大的,使得这种SoC 类型只适合于大批量而且将来不需要升级的市场领域。基于ASIC 的SoC 的代表性例子包括在PC、平板和智能手机上用的集成处理器。这些处理器典型地是由至少两个处理器核、存储器、图形处理器、接口和其他功能模块组合起来的,而且大批量生产出来用于寿命有限的产品中。
ASIC SoC 的局限性导致它们不适用于很多应用,特别是当快速投入市场能力、灵活性和升级能力已经成为重要的关键因素。对于小批量或中批量的产品,ASICSoC 也不是好的解决方案。显然对于更灵活的解决方案是有需求的,这就是产生这种可编程芯片上的系统(System-on-Progammable-Chip)—— 一种在可编程、可重新配置的芯片上实现的特有的SoC—— 的动力所在。一直以来,FPGA 是自然的选择。FPGA 天生就是可以被配置来实现任何系统的灵活芯片,如果需要也可以来实现嵌入式处理器。FPGA 还可以随心所欲地重新配置,和用ASIC 来实现SoC 相比,FPGA能构成更为基础灵活的平台。在一个需要系统升级的应用中部署FPGA 几乎就是没有风险的。
现在,Zynq 提供了更理想的用于实现灵活的SoC 的平台:Xilinx 将其包装成“ 全可编程SoC (All-Programmable SoC,APSoC)”,这个词完美地阐述了它的能力。第二章会仔细阐述Zynq 的架构,在此之前有必要先从图1.2 看一下架构的高层模型。 从中可以注意到Zynq 是由两个主要部分组成的:一个由双核ARM Cortex-A9 构成的处理系统(PS),和一个等价于一片FPGA 的可编程逻辑(PL)部分。它还具有集成的存储器、各种外设和高速通信接口。
PL 部分用来实现高速逻辑、算术和数据流子系统是很理想的,而PS 支持软件程序和/ 或操作系统,这就意味着任何被设计的系统的整个功能可以恰当地在硬件和软件之间做出划分。PL 和PS 之间的链接采用了工业标准的高级可扩展接口
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !