为应用选择最佳可编程SoC时应进行的六个设计考虑.docx
《为应用选择最佳可编程SoC时应进行的六个设计考虑.docx》由会员分享,可在线阅读,更多相关《为应用选择最佳可编程SoC时应进行的六个设计考虑.docx(11页珍藏版)》请在第一文库网上搜索。
1、为应用选择最佳可编程SoC时应进行的六个设计考虑SoCFPGA器件在一个器件中同时集成了处理器和FPGA体系结构。将两种技术合并起来具有很多优点,包括更高的集成度、更低的功耗、更小的电路板面积,以及处理器和FPGA之间带宽更大的通信等等。这一同类最佳的器件发挥了处理器与FPGA系统融合的优势,同时还保留了独立处理器和FPGA方法的优点。目前,市场上主要有三种SOCFPG,它们的处理器都是完全专用的“硬核”处理器子系统,而不是FPGA架构中的软核知识产权(IP)。所有这三种器件都采用了全功能幽1处理器,具有完整的存储器层次结构,以及专用外设,启动、运行和工作都与“普通”的ARM处理器一样。MiC
2、rOSemiSmartFusion2SoCFPGA基于ARMCOrteX-M3嵌入式处理器,主要面向微控制器应用。AIteraSoC和Xi1inXZynq-7000器件使用了双核ARMCOrteX-A9应用处理器。除了处理器,SoCFPGA还有丰富的外设、片内存储器、FPGA类型的逻辑阵列,以及大量的I/O。这几种可编建SOC巨是表面上看来来都一样。它们都在一个器件中集成了ARM处理器、各种外设和FPGA。而实际上,仔细的评估这些器件,更深入的了解数据资料是非常关键的。应针对具体应用来评估底层体系结构及其内涵。SoCFPGA体系结构非常重要。仔细的检查和思考会发现在体系结构上有很多明显的不同。
3、设计人员应如何选择?本文介绍了在为应用选择最佳可编程SoC时应进行的设计考虑,综合考虑后作出工程决定。选择标准主要集中在六个方面:系统性能、系统可靠性和灵活性、系统成本、功耗、未来发展路线图、开发工具。1 .系统性能SoCFPGA体系结构的两方面最终决定在不同的单元之间能否高效的传送数据:互联,以及片内和片外存储器带宽。SoC体系结构要考虑的第一项是1eVe1-3(13)互联。顾名思义,13是1I和12CaChe之下的一级数据传输层。13互联的重要性体现在,它是提高性能的交换中心。不同SoCFPGA供应商在13系统互联上的特性有所不同。A1teraSoCFPGA提供由三种交换架构构成的13系统
4、互联一一13主交换、13主机外设交换、13从机外设交换,使用ARM的AMBANIC-301网络互联基础结构来实现,如图1所示。图1A1teraSoCFPGA互联体系结构A1teraSoC使用精简分层总线,无阻塞交换体系结构减小了延时。互联设计支持来自多个主机的同时多路会话,提供足够的带宽,因此,每一主机能够连续运行(“无阻塞”)。对于仲裁,能够为每一主机分配优先级,指导总线仲裁。使用最近使用(1RU)篁法对优先级相同的主机进行仲裁。其他厂家的SoCFPGA体系结构可能使用多级层次,这需要分布式仲裁,但这会带来延时。分布式仲裁类似于有多个数据流仲裁。这种方法要求使用中心服务质量(QoS)模块以确
5、保主机不会拥塞。分布式仲裁也有调整问题,会与DDR存储器控制器端口仲裁冲突。SoCFPGA体系结构最显著的优势是处理器与FPGA的片内紧密耨金。为实现这种性能优势,处理器至FPGA互联应有足够的带宽(宽度和速度),选择类型合适的互联也非常重要,这不能成为系统数据传输的瓶颈。在结构方面,在其他厂家SOCFPGA器件中,数据通路和控制通路会竞争并占用带宽。处理器需要访问FPGA逻辑中硬件加速器并对其进行设置。如果这些控制会话过程与数据流出现竞争,那将会阻塞大吞吐量数据流,输入数据连续处理的过程会出现中断。相似的,宽带数据流会延时控制信号,增加了控制延时。为防止出现这种情况,A1teraSoCFPG
6、A采用了第二个低延时、无阻塞“轻量”互联桥接。处理器通过这一简单的32位ARMAdvancedextensib1eInterface(AXD接旦来访问FPGA中的控制寄存器,不会阻塞或者影响大吞吐量数据流,如图2中的蓝色部分所示。同时,处理器和FPGA之间的宽带数据连接支持32位、64位以及128位宽度会话,如图2中的红色部分所示。图2.A1teraSoCFPGA含有大吞吐量数据通路和无阻塞低延时控制通路2 .系统可靠性和灵活性高度集成的SOCFPGA还有助于建立更可靠的系统。两个重要的方面体现了SoCFPGA器件的不同之处:系统中有多少存储器保护?SoCFPGA怎样应对软件缺陷?对错误探测、
7、纠正和监视的需求己经成为当今设计的发展趋势。随着存储器容量和密度的不断增长,对错误检查和纠正的需求也在增长,也越来越重要。大部分现代系统包括专用硬件来帮助实现数据完整性。从SOCFPGA角度看,这包括纠错码,即ECC保护一一它不仅仅是存储器控制器保护的一部分,而且还集成在处理器的片内存储器、高速缓存,以及外设缓冲中。ECC电路使系统更可靠,系统不受意外数据错误或者数据损坏的影响。表1总结了A1teraSoC的硬件ECC与其它厂家的对比AI1emSoCFPGA供应商B11高速缓存奇偶枝蛉(CorteX-A9实现的一部分)奇儡校将(CE5-A9实现的一部分)12高速缓存是没有ECC外部DDR存储器
8、控制器(单个错误纠正,两个错误探测)x16x32仅Xie片内RAX是奇偶秘,没有ECCQUadSPI控制器是没有ECCNAND控制器512字节ECC段大位、8位或者16位纠错)1.024字节ECC段大小(24位纠错)1比特触支持,有软件帮助SDMMCSD1o控制器是没有ECCDMA控制器是14上IOIoO1G以太网拴制器是一USB2.0OTGS是是,g-2第&表1SOCFPGA中的ECC值得重点介绍的另一方面是NAND闪存。NAND闪存适用于文件系统存储,但有时候可靠性不如NOR闪存。因此,NAND闪存的ECC被用于消除错误。早期版本的NAND闪存控制器包括单比特ECC保护。这虽然有一些优点,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 应用 选择 最佳 可编程 SoC 进行 六个 设计 考虑