- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数字系统高级设计技术
并行和流水线
--并行设计
串行设计是最常见的一种设计
当一个功能模块对输入的处理是分步骤进行的,而且后一步骤依
赖于前一步骤的结果时,功能模块的设计就需要采用串行设计的
思想。
并行处理就是用几个处理流程同时处理到达的负载
并行处理要求这些处理任务之间是不相关的,彼此之间是不互相
依赖的,如果存在相互依赖就很难用并行处理的方法。
并行和流水线
--并行设计(乘法运算)
首先给出该运算的数学表达式
y a b a b a b a b
0 0 1 1 2 2 3 3
module top(
input [7:0] a0,
input [7:0] b0,
input [7:0] a1,
input [7:0] b1,
input [7:0] a2,
input [7:0] b2,
input [7:0] a3,
input [7:0] b3, 对应的并行乘法器结构
output [17:0] y
);
assign y=a0*b0+a1*b1+a2*b2+a3*b3;
endmodule
并行和流水线
--并行设计
下图给出了实现该功能的并行结构。
通过使用多个乘法器,使得四个乘法运算可以同时进行。
但是这种速度的提高是以面积为代价的。
并行乘法的实现结构
并行和流水线
--流水线设计
流水线设计从宏观上来看平均每一个事件的处理时间为一
个单位时间。
流水线的设计要求事件所分成的这n个步骤的处理时间是相同的,
以保证流水线不会因为处理时间的不同而发生阻塞。
并行和流水线
--流水线设计
如果在串行设计中系统处理效能正比于系统运行的频率,那么
对于流水线设计,在不提高系统运行频率的情况下,n级流水线
的处理效能可以用下面公式来描述:
处理效能 系统运行频率×流水线级数
并行和流水线
--流水线设计
采用流水线设计的好处实在不提高系统运行频率的情况下,能
够获得更好的处理效率。
受制造工艺的影响,提高系统频率将会增加后端制造的难度。
同时由于需要使用更先进的制造工艺,以及产品频率的下降,
将会带来产品成本的提高。
并行和流水线
--流水线设计
由此可见,在不提高系统运行频率的情况下,提高流水线
的级数将成倍地提高系统处理的效能。但是流水线的设计
也是有一定的限制的:
只有对那些能分成n个步骤完成,并且对每个步骤都需要固定相
同处理时间的操作来说才能采用流水线设计;
受硬件资源的限制,流水线的级数是有限制的;
对于存在处理分支预测流水线的设计(广泛应用于微处理器的设
计中),流水线的处理效能还要取决于分支预测算法的设计。
并行和流水线
--流水线设计
流水线能动态地提升器件性能
它的基本思想是对经过多级逻辑的长数据通路进行重新构造,把
原来必须在一个时钟周期内完成的操作分成在多个周期内完成。
这种方法允许更高的工作频率,因而提高了数据吞吐量。因为
FPGA的寄存器资源非常丰富,所以对FPGA而言,流
原创力文档


文档评论(0)