FPGA研发之道(9)架构设计漫谈(四)并行与复用_第1页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、fpga研发之道(9)架构设计漫谈(四)并行与复用 其在众多器件中能够被工程师青睐的一个很重要的缘由就是其强悍的处理能力。那如何能够做到高速的数据处理,数据的并行处理则是其中一个很重要的方式。 数据的并行处理,从结构上十分容易,但是设计上却是相当复杂,对于现有的fpga来说,虽然各种fpga的容量都在增强,但是在有限的规律中达到更高的处理能力则是fpga工程师濒临的挑战。常用并行计算结构如下图所示:上图中:前端处理单元负责将进入数据信息,分配到多个计算单元中,图中为3个计算单元(几个按照所需的性能计算得出)。然后计算单元计算完毕后,交付后端处理单元整合为统一数据流传入下一级。假如单个计算单元的

2、处理能力为n ,则通过并行的方式,按照并行度m,其计算能力为n*m;在此结构中,涉及到几个问题:一, 前端处理单元如何将数据分配到多个计算单元,其中一种算法为round-robin,轮番写入下一级计算单元,这种方式普通用法用计算单元计算数据块的时光等同。更常用的一种方式,可以按照计算单元的标示,即忙闲状态,假如哪个计算单元标示为闲状态,则分配其数据块。二, 计算单元和前后端处理之间如何举行数据交互。普通来说,计算单元处理频率较低,为关键路径所在。前后端处理流量较大,时钟频率较高,因此通过异步fifo衔接,或者双端口ram都是合适的方式。假如数据可分块计算,且块的大小不定,建议用法fifo作为隔

3、离手段,同时用法可编程满信号,作为前端处理识别计算模块的忙闲标示。三, 假如数据有先后的标示,即先计算的数据需要先被送出,则后端处理模块需要额外的信号,确定读取各个计算模块的挨次。这是由于:假如数据等长,则计算时光等长,则先计算的数据会先被送出。但是假如数据块不等长,后送入的小的数据块肯能先被计算完毕,后端处理单元假如不识别先后计算的数据块,就会造成数据的乱序。这可以通过前端计算单元通过小的fifo通知后端计算单元获知首先读取那个计算单元输出的数据,即使其他计算单元输出已预备好,也要等待根据挨次来读取。数据的并行处理是fpga常用的提升处理性能的办法,其优点是结构容易,通过计算单元模块的复用达

4、到高性能的处理。缺点,自不待言就是达到m倍的性能就要要耗费m倍规律。与之相反削减规律的另一种方式,则是复用,即一个处理能力较强的模块,可以被n的单元复用,通过复用,而不用每个单元例化模块,可以达到削减规律的效果,但控制复杂度就会升高。其结构图如下所示:上图复用的结构图中,分离介绍了流过模式复用和调用模式复用。流过模式下,计算单元处理多路数据块,然后将数据块分配到多路上,这种状况下,通过round-robin可以保证各个通路公正机会获得计算单元。其处理思路与上图描述并行处理类似。调用模式下,计算单元被多个主设备复用,这种架构可以通过及仲裁的方式来使各个主设备能够猎取计算单元的处理(有无数成熟的例子可供用法,如ahb等)。假如多个主设备和多个计算单元的状况,则可以不通过总线而通过交换矩阵,来削减总线处理带来的总线瓶颈。实际应用场合,设计的架构都应容易有用为好,交互矩阵虽然有用灵便,但其规律量,边界测实验证的难度都较大,在需要灵便支持多端口互联互通的状况下用法,可谓物尽其用。但假如仅仅用于普通计算单元能力复用的场景,就属于过度设计,其可以通过化简成上述两种容易模式,达到高速的数据处理的效果。并行和复用,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论