系统时钟与时序-R.ppt

上传人:xt****7 文档编号:22717050 上传时间:2021-05-30 格式:PPT 页数:71 大小:2.07MB
收藏 版权申诉 举报 下载
系统时钟与时序-R.ppt_第1页
第1页 / 共71页
系统时钟与时序-R.ppt_第2页
第2页 / 共71页
系统时钟与时序-R.ppt_第3页
第3页 / 共71页
资源描述:

《系统时钟与时序-R.ppt》由会员分享,可在线阅读,更多相关《系统时钟与时序-R.ppt(71页珍藏版)》请在装配图网上搜索。

1、2006.4 电子科技大学 EDA协会 1 系统设计中时钟、时序相关问题 电子科技大学 EDA协会,通信学院 程传宁 2006.4 2006.4 电子科技大学 EDA协会 2 内容 1,跟时钟相关的参数概念与分析 2,时钟树 3, PLL与 DLL 4,基于 Latch进行设计与 Time Borrow 5, ASIC设计中的时钟使用的基本原则 6,门控时钟设计的相关技术 7,改善系统时钟性能以及提高性能速度 的几种方法 2006.4 电子科技大学 EDA协会 3 Latch的参数 D Clk Q D Q Clk tc-q thold PWm t su td-q T 2006.4 电子科技大学

2、 EDA协会 4 tc-q: 时钟有效到输出有效的时间 thold: 数据输入的引脚的数据在时钟无效后 需要保持稳定的时间 tsu: 时钟无效之前输入必须保持稳定的时间 td-q: 输入到输出有效时间 Tsu 这个要特别注意与寄存器的区别,这个保持时间是时钟无效之前输入必须保 持稳定的时间可以这样考虑,如果这个时间没有达到,锁存器不能锁存输入 足够的时间,也就不能驱动输出与输入相同 锁存器和寄存器还有一点主要的不同就是锁存器多了一个 Td-q的概念 2006.4 电子科技大学 EDA协会 5 Register的参数 D Clk Q D Q Clk tc-q thold T tsu tsu:建立

3、时间,在时钟有效沿到来之前寄存器数据输入应保持稳定的时 间,它间接约束了组合逻辑的最大延时 thold:保持时间,在寄存器数据引脚输入的数据在系统有效时钟 沿到来后需要保持稳定的时间,它间接约束了组合逻辑的最小 延时 tc-q:寄存器从有效时钟沿到来到输出有效的最大时间 2006.4 电子科技大学 EDA协会 6 Clock Skew 在同一个时钟域或者两个时钟域之间时钟信号到 达寄存器的最大时间差别 产生原因主要有:时钟源到达各端点的路径长度 不同,各端点负载不同,时钟网络中插入的缓冲器 不同等 在两个点之间,可以大体认为 Skew是固定的值 注意: Clock Skew影响的是时钟的到达时

4、间不同, 也就是时钟发生相移,并不影响时钟的周期宽度 2006.4 电子科技大学 EDA协会 7 Clock Skew2 后面要讲到时钟对建立时间和保持时间的影响 2006.4 电子科技大学 EDA协会 8 Clock Jitter 在某一给定点上,时钟周期宽度发生变化,不同 的时钟周期其持续时间可能缩短或者变宽 一般用两个相邻时钟周期之间其周期宽度的最大 变化来表示 Clock Jitter 变窄 变宽 可以看出变宽和变窄都有三种情况 2006.4 电子科技大学 EDA协会 9 同步设计的时间约束参数 R1 D Q Combinational Logic In CLK t CLK1 R2 D

5、 Q t CLK2 t c - q t c - q, cd t su, t hold t logic t logic, cd tc-q:寄存器从有效时钟沿到来到输出有效的最大时间 tc-q,cd:时钟沿到来到输出有效的最小时间 tsu:建立时间,在时钟有效沿到来之前寄存器数据输入应保持稳定的 时间,它间接约束了组合逻辑的最大延时 thold:保持时间,在寄存器数据引脚输入的数据在系统有效时钟沿到 来后需要保持稳定的时间,它间接约束了组合逻辑的最小延时 tlogic:组合逻辑最大延时 tlogic,cd:组合逻辑最小延时 2006.4 电子科技大学 EDA协会 10 时钟参数满足的条件 时钟周期

6、应大于寄存器延时、组合逻辑延时、和 目标寄存器建立时间的和 本寄存器有效输出通过组合逻辑的延时应该大于 目的寄存器保持时间要求 (否则目标寄存器保持时间不能满足) 2006.4 电子科技大学 EDA协会 11 上一级的时钟有效到输出最小时间加上组合逻辑 的最小延时,对于下一级寄存器就相当与其时钟 有效沿后输入改变的时间,也就是保持时间 2006.4 电子科技大学 EDA协会 12 正负 Clock Skew R 1 In (a) Positive skew Combinational Logic D Q t CLK1 CLK delay t CLK2 R 2 D Q Combinational

7、 Logic t CLK3 R 3 ? ? ?D Q delay R 1 In (b) Negative skew Combinational Logic D Q t CLK1 delay t CLK2 R 2 D Q Combinational Logic t CLK3 R 3 ? ? ?D Q delay CLK 正偏斜也就是下一级时钟比上一级时钟慢 ,负偏斜与之相反 2006.4 电子科技大学 EDA协会 13 正 Clock Skew对电路性能的影响 正的 Skew减少了时钟周 期宽度,可以提高系统 的时钟频率 CLK1相对于 CLK2提前,由 于第二级寄存器对保持时间 的要求,很容易

8、发生使建立 时间得不到满足 2006.4 电子科技大学 EDA协会 14 负 Clock Skew对电路性能的影响 负的 Skew要求正常工作 时的时钟周期变宽 负的 Skew时,第二级寄存器 的保持时间肯定能够得到满 足 (如果没有时钟偏移保持时间能够达到的条件下) 为负 2006.4 电子科技大学 EDA协会 15 利用 Skew提高电路性能 延时 8 延时 12 关键路径为组合逻辑 2,影响了系统速度 调整: 提前 C2时钟到达时间(人为增加 Clock Skew) ,使 其比 C1, C3提前 2个时间单位(相当于有 2个时间单位的 Clock Skew)到达,如此就给出组合逻辑 2更

9、多的计算时 间,使关键路径延时为 10,提高系统能够工作频率 这需要在后端物理设计的时候进行调整 2006.4 电子科技大学 EDA协会 16 Clock Jitter对电路性能的影响 tjitter是两个相邻时 钟周期宽度之差 由此可见, Clock Jitter要求正常工作的系统时钟 宽度增加,从而也就降低了系统工作频率 2006.4 电子科技大学 EDA协会 17 Clock Skew和 Jitter对电路性能的影响 为负 由此可见, Skew和 Jitter要求系统时钟宽度增加,从而系 统频率降低,性能变差 2006.4 电子科技大学 EDA协会 18 Clock Skew和 Jitt

10、er的来源 2 4 3 Power Supply Interconnect 5 Temperature 6 Capacitive Load 7 Coupling to Adjacent Lines 1 Clock Generation Devices 2006.4 电子科技大学 EDA协会 19 Time Slack From synopsys slack = 期望数据到达时间 数据实际到达时间 Slack为正,表示数据提前到达,此时组合逻辑 延迟满足条件, Register有足够的建立时间; Slack为负,表示数据比预期的时间晚到达,此 时显然不满足 Register的建立时间,不满足约束

11、 2006.4 电子科技大学 EDA协会 20 本张 slide和下一张 slide来自 Altera公司 培训资料,版权归原 作者所有 Simple Register to Register Analysis in out clk reg1 reg2 clk clk clk slack = p2p required p2p delay p2p p2p required = setup relationship + clock skew t CO - t SU setup relationship = latch edge launch edge clock skew = clk clk la

12、unch latch 2006.4 电子科技大学 EDA协会 21 Simple Register to Register Analysis with Numbers in out clk reg1 reg2 clk slack = p2p required p2p delay p2p p2p required = setup relationship + clock skew tCO t SU setup relationship = latch edge launch edge = 5.0 0.0 = 5.0 clock skew = clk clk 2.266 0.11 0.082 tc

13、o tsu = 2.521 - 2.993 = 5.0 + (-0.472) 0.11 0.082 = 4.336 2.266 = -0.472 = 4.336 t = 2.07 2.993 2.521 2006.4 电子科技大学 EDA协会 22 内容 1,跟时钟相关的参数概念与分析 2,时钟树 3, PLL与 DLL 4,基于 Latch进行设计与 Time Borrow 5, ASIC设计中的时钟使用的基本原则 6,门控时钟设计的相关技术 7,改善系统时钟性能以及提高性能速度 的几种方法 2006.4 电子科技大学 EDA协会 23 时钟树分布简介 CLK H-树 最基本的时钟 树结构,

14、比较 适合于规则阵 列网络 2006.4 电子科技大学 EDA协会 24 时钟树分布简介 2 Routed RC Tree 考虑布局 后的个单 元长度, 根据时钟 的负载来 优化网络 2006.4 电子科技大学 EDA协会 25 内容 1,跟时钟相关的参数概念与分析 2,时钟树 3, PLL与 DLL 4,基于 Latch进行设计与 Time Borrow 5, ASIC设计中的时钟使用的基本原则 6,门控时钟设计的相关技术 7,改善系统时钟性能以及提高性能速度 的几种方法 2006.4 电子科技大学 EDA协会 26 PLL(Phase Locked Loop) 压控振荡器 两个同频时钟信号

15、,就可以通过相 位差来描述他们的关系,或者由一 个时钟得到另外一个时钟 2006.4 电子科技大学 EDA协会 27 PLL2 Altera中的 PLL 2006.4 电子科技大学 EDA协会 28 PLL3 某 CycloneII芯 片上面的 PLL 资源 Altera中的 PLL 2006.4 电子科技大学 EDA协会 29 PLL4 Altera中的 PLL 2006.4 电子科技大学 EDA协会 30 DLL(Delay Locked Loop) Phase Detector Charge pump VCDL 原始时钟输入 时钟输出 VCDL: Voltage-controlled d

16、elay line 基本思想是通过控制线延时来调整时钟相位,使其相位对齐 2006.4 电子科技大学 EDA协会 31 DLL2 DLL的一个典型应用时是用在时钟分布时 2006.4 电子科技大学 EDA协会 32 DLL4 Xilinx中的 DLL 的一个应用 Xilinx中的 DLL 2006.4 电子科技大学 EDA协会 33 DLL3 Xilinx中 DCM的结构图 Xilinx中的 DLL 2006.4 电子科技大学 EDA协会 34 DLL7 Xilinx中的 DLL Xilinx中 DLL的简单功能框图 CLK0通过时钟网络驱动寄存器,然 后通过反馈线至 CLKFB,进行相位 检

17、测,调整相位 2006.4 电子科技大学 EDA协会 35 DLL6 可以选择不同 的时钟反馈来 进行相位对齐 2006.4 电子科技大学 EDA协会 36 ASIC中的 PLL和 DLL 在 ASIC中, PLL是非常重要的一个部件,常使用 PLL在片 内产生高的系统时钟、减少 Clock skew、减少 Clock jitter等, 但是由于 PLL的模拟特性,不论是对数字工程师还是模拟工 程师来说都是一个挑战 PLL可以自己进行设计也可以购买 IP核,它是一个模数混 合设计,其 loop filter和 VCO部分是模拟,其分频部分是数 字,至少都是针对具体的工艺和生产线,也就是说是硬核

18、或 者每次都要进行自己设计 当前也有公司开发出来全数字可以在 CMOS上面实现的 IP核, http:/www.CologneC(一家德国公司) DLL和 PLL在 ASIC设计中有着相似的问题 2006.4 电子科技大学 EDA协会 37 内容 1,跟时钟相关的参数概念与分析 2,时钟树 3, PLL与 DLL 4,基于 Latch进行设计与 Time Borrow 5, ASIC设计中的时钟使用的基本原则 6,门控时钟设计的相关技术 7,改善系统时钟性能以及提高性能速度 的几种方法 2006.4 电子科技大学 EDA协会 38 基于 Latch进行设计 基于时钟沿触发的寄存器进行设计是当前

19、主流且 稳健的设计方法,但两个寄存器之间的 Worst Case Logic Path会限制系统的最高运行频率;在 本 Worst Case Logic Path限制系统频率的同时, 而在其他寄存器之间的路径却可能处于空闲状态 基于 Latch的设计方法拥有更为灵活的时序特性, 它允许在数据的一个锁存阶段 (stage)将多余的时间 借给下一个阶段或者从下一个阶段借用时间 Time borrow 2006.4 电子科技大学 EDA协会 39 基于 Latch进行设计 2 CLB_A + CLB_B CLB_C LATCH工作过 程 LATCH等效的寄存器 工作时序 CLk1 CLk1 2006

20、.4 电子科技大学 EDA协会 40 基于 Latch进行设计 3 由上页 Slide可以看出基于 Latch设计和基于寄存 器设计,其在数据输入与数据输出接口上可以获得 相同的效果 但是, 在基于 Latch的设计中,组合逻辑被电平 敏感的 Latch分离 ,它可以使一个组合逻辑使用前 一个组合逻辑剩余的时间,也就是 Time Borrow或 者 Slack borrowing Time Borrow可以使电路时钟边界处的逻辑使用 超过一个时钟周期宽度的时间 ,从而可以使电路运 行速率高于关键路径的所约束的时钟频率! 2006.4 电子科技大学 EDA协会 41 Time Borrow示例

21、寄存器设计逻辑可以利用的时间 Time Borrow时逻辑 可以利用的时间 借得的时间 由图中可以看出,通 过 Latch对关键路径 进行 Time Borrow设 计,可以使逻辑在超 过一个时钟周期的范 围内运行,从而降低 或者消除其对时钟频 率的限制 2006.4 电子科技大学 EDA协会 42 内容 1,跟时钟相关的参数概念与分析 2,时钟树 3, PLL与 DLL 4,基于 Latch进行设计与 Time Borrow 5, ASIC设计中的时钟使用的基本原则 6,门控时钟设计的相关技术 7,改善系统时钟性能以及提高性能速度 的几种方法 2006.4 电子科技大学 EDA协会 43 A

22、SIC设计中的时钟原则 Guideline2:当在片上使用 PLL产生时钟时,设置使此 PLL无效或者 将其旁路的机制,这将便于芯片测试和调试 Rule1:在设计流程中尽早确定设计的时钟分布架构。要预期时钟结构 可能会产生的影响。 对于大型高速芯片,诸如 balanced clock tree这样的分布策略可能就会 需要特别大且高性能的时钟 buffer,这些 buffer可能会消耗掉芯片功耗的 一半以及大量的芯片面积,所以在设计之初就需要规划时钟 Rule2:将时钟产生和控制逻辑从所有的功能模块中分离,放入一个独立 模块中 Guideline1:使用尽量少的时钟来完成设计。 将不同时钟域信号

23、同步模块 孤立出来成为一个尽量小和简单的模块,这将便于 ASIC综合等设置约束和 进行分析 2006.4 电子科技大学 EDA协会 44 ASIC设计中的时钟原则 2 Guideline5: Clock Buffers通常是在物理设计时进行考虑的。在综合 时,时钟被当作是没有延迟的理想网络,所以在进行 RTL设计的时候需 要进行考虑,也不要去例化 Clock Buffer Guideline6: 避免片内产生时钟。片内产生的时钟将会产生测试问题, 因为受到内部产生时钟驱动的逻辑不能被作为扫描链的一部分。添加专 门的测试用电路来旁路内部产生的时钟,使整个扫描链由同一时钟控制 Guideline3

24、:避免使用上升沿和下降沿同时触发的逻辑。 Rule3:如果同时使用上升沿和下降沿有效的触发器,那么在综合和作 时序分析时,必须建模 worst-case duty cycle(最坏的时钟占空比);并且 将此 duty cycle的要求记录,形成对系统时钟的要求 Guideline4:考虑将上升沿触发和下降沿触发的 flip-flop放在分离的模块 中 2006.4 电子科技大学 EDA协会 45 内容 1,跟时钟相关的参数概念与分析 2,时钟树 3, PLL与 DLL 4,基于 Latch进行设计与 Time Borrow 5, ASIC设计中的时钟使用的基本原则 6,门控时钟设计的相关技术

25、7,改善系统时钟性能以及提高性能速度 的几种方法 2006.4 电子科技大学 EDA协会 46 门控时钟 Guideline7:避免在进行 RTL设计的时候对时钟进行门控 Guideline8:如果要手动在 RTL设计的时候对时钟进行门控,那么将 此分离到一个在顶层的独立模块中,且手动插入门控一般只能在此顶层 模块中出现 Guideline9:划分设计,保证每个模块有单一的时钟,且在本模块中 不对时钟进行门控 2006.4 电子科技大学 EDA协会 47 门控时钟 2 Guideline10: RTL设计时,当使用门控时钟降低功耗的时候,不要 直接对时钟进行门控,而是使用同步装入寄存器的描述风

26、格 Synopsys Power compiler EDA工具可以根据代码自动插入门控时钟降低功耗 2006.4 电子科技大学 EDA协会 48 门控时钟 3 设计系统级门控时钟降低功耗 结构 1: s o u r c e _ c l k c l k _ e n g a t e d _ c l o c k 下 降 沿 到 来 过 早 , 时 钟 不 完 整 时 钟 为 高 时 间 变 短 ,时 钟 不 完 整 这是门控时钟最基本的实现方式,最为简单,但是显然会出现时钟不完 成的现象,并可能在时钟输出上存在毛刺(门控信号不稳定造成 ) 2006.4 电子科技大学 EDA协会 49 门控时钟 4

27、设计系统级门控时钟降低功耗 结构 2: E N D L a t c h s o u r c e _ c l k c l k _ e n g a t e d _ c l k q o u t s o u r c e _ c l k c l k _ e n qout g a t e d _ c l k 可以看到,使用 Latch很好的解决了时钟残缺的问题,也可以去除由 于 clk_en产生的毛刺,但也存在问题 如果时钟使能信号距离 Latch的锁 存沿太近,那么锁存输出就可能 出现亚稳态,造成后端门控得到 的时钟不稳定 2006.4 电子科技大学 EDA协会 50 门控时钟 5 设计系统级门控时钟降

28、低功耗 结构 3: 可以看到,使用 Register进行处理很好的解决了时钟残缺问题,也完 全可以解决时钟的亚稳态问题 只可能在源时钟的下降沿出现亚 稳态,但是随后它与源时钟低相 位相与,不会产生影响 D s o u r c e _ c l k c l k _ e n g a t e d _ c l k q o u t s o u r c e _ c l k c l k _ e n qout g a t e d _ c l k 2006.4 电子科技大学 EDA协会 51 门控时钟 6 设计系统级门控时钟降低功耗 结构 4: 为了便于测试,设计可以控制门控时钟的机制;当位于测 试状态时,一直使

29、时钟处于打开状态 D s o u r c e _ c l k c l k _ e n g a t e d _ c l k q o u t t e s t _ m o d e 2006.4 电子科技大学 EDA协会 52 门控时钟 7 设计系统级门控时钟降低功耗 结构 5: 在 ASIC进行后端测试的时候,有时候可能会将不同时钟域 的逻辑和寄存器连起来进行扫描链插入,此时可能某个模 块的时钟来源可能不是通过它原来的时钟路径,而是整个 芯片统一的测试时钟,就此时需要对时钟进行选择 o u t _ c l k s o u r c e _ c l k t e s t _ c l k t e s t _

30、 m o d e c l k _ e n 选择工作时钟和测试时钟的结构 2006.4 电子科技大学 EDA协会 53 内容 1,跟时钟相关的参数概念与分析 2,时钟树 3, PLL与 DLL 4,基于 Latch进行设计与 Time Borrow 5, ASIC设计中的时钟使用的基本原则 6,门控时钟设计的相关技术 7,改善系统时钟性能以及提高性能速度 的几种方法 2006.4 电子科技大学 EDA协会 54 Register Duplication Altera QuartusII 通过复制寄存器来提高驱动能力,减少单个寄存器的 fanout 2006.4 电子科技大学 EDA协会 55 R

31、egister Retiming Register retiming是一种时序逻辑优化技术,它通过在组 合逻辑门中移动寄存器来对时序和面积进行优化 2006.4 电子科技大学 EDA协会 56 Register Retiming2 From QuartusII Handbook Register Retiming可以通过综合 工具进行调整 2006.4 电子科技大学 EDA协会 57 Pipeline 将一条关键路径使用寄存器打断,从而使寄存器之间的组合逻辑 延时变小,从而可以提高系统工作频率 Pipeline会提高系统的吞吐量,但是它会引入额外的延时,并且需 要使用更多的寄存器 ,这也带来资

32、源的消耗 Comb_logic 数据输入 数据输入 数据输出 数据输出 2006.4 电子科技大学 EDA协会 58 Pipeline2 对组合逻辑的重新划分必须保证数据通路上数据的一致 性 (coherency),也就是说从数据通路的原始输入到数据 通路的原始输出必须通过相同数目的流水寄存器;换句 话说,流水寄存器的插入必须位于数据流图的前向通路 的 割集 上 部分可以 放置的流 水寄存器 位置 2006.4 电子科技大学 EDA协会 59 Pipeline3 计算组合逻辑需要插入的流水寄存器的数量 Comb_logic 一些参数定义 N:流水级数( pipeline stages)。它 比

33、从原始输入到原始输出路径上面的寄 存器数量多 1 Tc:设计在流水后所要达到的时钟周 期宽度 Ts:用于流水的典型寄存器建立时间 Tq,典型寄存器从时钟沿有效到数据 输出有效的时间延迟 Td:组合逻辑从输入到输出的最大延 迟;包括输入延时(在设计内部典型的 为 Tq)和输出延时 为了确定需要流水的级数,可以 先对设计进行简单综合,确定需 要调整的组合逻辑延迟时间长度, 然后确定需要添加的流水寄存器 数量,优化设计 在 DC中即可以使用 Compile命令 得到延迟时间,在代码中添加流 水寄存器 2006.4 电子科技大学 EDA协会 60 Pipeline4 计算组合逻辑需要插入的流水寄存器的

34、数量 Comb_logic Pipeline stages 2006.4 电子科技大学 EDA协会 61 Pipeline5 对于流水设计,可以通过在设计的时候通过仔细设计来分离组合逻辑, 提高性能 但更 推荐 的做法是通过 EDA综合工具的 Retiming功能自动进行流水并 优化(但是此时设计人员需要给出流水寄存器的数量) 利用 EDA工具完成流水 在进行 RTL代码设计的时候, 将流水寄存器 (pipeline registers)放置 在数据通路 RTL代码的输入或者输出处,并且使用 Retiming功能将它 们移动到最理想位置 (在 DC中此命令是: optimize_registe

35、rs) Place the pipeline registers at the inputs of the datapath if the registers have reset/preset and the reset/preset state needs to be preserved during retiming (vastly improves CPU time). Otherwise, pipeline registers can be placed on either inputs or outputs for the same retiming functionality a

36、nd QoR. 2006.4 电子科技大学 EDA协会 62 Pipeline6 Verilog code Sample script module mac_pipe (clk, a, b, c, z); input clk; input 7:0 a, b; input 15:0 c; output 15:0 z; reg 7:0 a_reg, a_pipe, a_int; reg 7:0 b_reg, b_pipe, b_int; reg 15:0 c_reg, c_pipe, c_int; wire 15:0 z_int; reg 15:0 z_reg; / datapath assign

37、 z_int = a_int * b_int + c_int; assign z = z_reg; always (posedge clk) begin a_reg = a; / input register b_reg = b; c_reg = c; a_pipe = a_reg; / pipeline register 1 b_pipe = b_reg; c_pipe = c_reg; a_int = a_pipe; / pipeline register 2 b_int = b_pipe; c_int = c_pipe; z_reg = z_int; / output register

38、end endmodule set period 1.0 set num_stages 3 analyze -f verilog mac_pipe.v elaborate mac_pipe # adjust clock period for pipelined parts # (multiply target period by number of stages # before retiming,在重定时之前使用使用流 # 水级数乘以目标时钟周期 ) create_clock clk -period expr $period * $num_stages set_max_area 0 comp

39、ile # exclude input/output registers from retiming set_dont_touch *_reg_reg* true # retime create_clock clk -period $period optimize_registers -period $period # find more information for retiming in the # Design Compiler Reference Manual: Register Retiming 一个乘加单元 的例子,采用 三级流水 Design Compiler 2006.4 电

40、子科技大学 EDA协会 63 Pipeline7 上页幻灯片描述方式前后结果 HDL描述的结构 a_reg a_pipe a_int z_reg a_reg a_pipe a_int z_reg 工具自动优化之后的结构 2006.4 电子科技大学 EDA协会 64 Parallel和 Repliation(面积换速度) 通过引入多个、完全相同的并行处理单元来提高系统的性能,典型的应 用如乒乓操作等 例 1:在 RTL设计的一个例子 中间组合逻辑的运算需要的时 间超过一个系统周期,且逻辑 不易分割,可以对其本部分逻 辑进行复制,根据需要可以复 制一个或者多个 使能寄存 选择输出 注意: 在运算周

41、期超过 1的时候, 这里有 Multicycle path 2006.4 电子科技大学 EDA协会 65 Parallel和 Repliation2 例 2: 3阶 FIR滤波器 D D X X X + a b c Y ( n ) X ( n ) 可以将 FIR滤波器的表达式转 换成下列形式 2006.4 电子科技大学 EDA协会 66 Parallel和 Repliation3 例 2: 3阶 FIR滤波器 由此图可以看到可以将串 行数据流转换成 3个数据 并行的格式,进行运算, 这样就可以使用三个时钟 周期去进行完成运算,本 结构在输出有效结果时一 次输出三个有效结果,将 结果转换成串行输

42、出,如 此输入和输出接口处数据 都是连续, 可以看到这里采用的并行 处理的方式减少了大运算 逻辑对系统速率的影响 2006.4 电子科技大学 EDA协会 67 Time Borrow 使用 Time Borrow也可以对系统的关键路径进行处理,这在前面已经 讨论 使用 Time Borrow技术,能够借得的最大时间为 0.5个 CLK 2006.4 电子科技大学 EDA协会 68 快速算法和实现结构 系统的速度受影响最大的还是设计的结构和所采用算法的实 现方式,如果设计怎么也不满足要求,那么要做的就是重新考 虑设计的结构、进行算法变化、寻找快速算法和实现结构 本部分将在今后探讨 2006.4

43、电子科技大学 EDA协会 69 主要参考资料来源 Jan M. Rabaey, Anantha Chandrakasan, Borivoje Nikolic, Digital Intergrated Circuit 清华大学出版社 Michaei D. Clietti Advanced Digital Design With the Verilog HDL 电子工业出版社 Michael Keating, Pierre Bricaud, Reuse Methodology Manual For System-On-a- Chip Designs(Third Edition) Kluwer Academic Publication Keshab K.Parhi VLSI Digital Signal Processing Systems Design and Implementation 机械工业出版社 www.snug-universal.org 2006.4 电子科技大学 EDA协会 70 Q&A 交流时间 2006.4 电子科技大学 EDA协会 71 说明: 本 ppt为个人在内部交流中所做,里面部分 内容是个人理解,不正确之处望指正。 作者邮箱: EDA协会邮箱: uestc_

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!