第5章 现场可编程逻辑系统的设计技巧优秀PPT.ppt

上传人:石*** 文档编号:78793422 上传时间:2023-03-19 格式:PPT 页数:27 大小:1.75MB
返回 下载 相关 举报
第5章 现场可编程逻辑系统的设计技巧优秀PPT.ppt_第1页
第1页 / 共27页
第5章 现场可编程逻辑系统的设计技巧优秀PPT.ppt_第2页
第2页 / 共27页
点击查看更多>>
资源描述

《第5章 现场可编程逻辑系统的设计技巧优秀PPT.ppt》由会员分享,可在线阅读,更多相关《第5章 现场可编程逻辑系统的设计技巧优秀PPT.ppt(27页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、第第5章章 现场可编程逻现场可编程逻辑系统的设计技巧辑系统的设计技巧现在学习的是第1页,共27页5.1 同步电路设计技巧同步电路设计技巧 FPGA具有丰富的触发器资源,灵活、低延时的多时钟资源和三态的总线结构资源,有利于同步电路的设计实现。同时,FPGA的也存在极大的弱点:由内部逻辑实现中的布局布线的不确定性所带来的系统时延的不确定性。因此,特别是对于时延关系要求苛刻的异步电路,用FPGA实现起来相对较困难。现在学习的是第2页,共27页 5.1.1 同步电路与异步电路的基本概念 数字系统的电路通常由组合逻辑、时序逻辑或者两者混合构成。对于时序逻辑电路,其基本结构如图所示。时序逻辑电路一般由组合

2、逻辑、存储器件和反馈网络3部分组成。X1,Xn为时序逻辑电路的输入或称外部输入;Z1,Zm 为时序电路的输出或称外部输出;y1,yr为时序逻辑电路的状态或称内部输入;Y1,Yr为时序逻辑电路的激励或称内部输出。现在学习的是第3页,共27页 图 5-2 时序电路结构框图(a)同步时序逻辑电路;(b)异步时序逻辑电路时序逻辑电路按其工作方式可分为同步时序逻辑和异步时序逻辑延迟元件触发器现在学习的是第4页,共27页图 5-3 时序逻辑电路的输入信号波形 时序逻辑电路的输入信号有脉冲形式和电平形式两种,如图 5-3所示。按照输入信号形式的不同,时序逻辑电路又可分为脉冲型和电平型。现在学习的是第5页,共

3、27页 5.1.2 FPGA现场集成中常见的问题 在采用FPGA这样已规范的可编程逻辑阵列和可编程连线的有限资源,去实现不同功能的时序逻辑电路系统时,如何把握随机的布局、布线带来的时延对系统逻辑的影响,如何避免局部逻辑资源时延特征和不同的时序电路形式的制约,如何有效利用FPGA的特征逻辑结构去优化电路设计,都是一个设计工程师在设计中必须考虑的问题。在采用FPGA的数字时序逻辑的现场集成,特别是对于同步电路的设计实现中,我们常遇到的主要问题有以下几种。现在学习的是第6页,共27页图 5-4 时钟使能信号电路 1.在同步电路设计中,如何使用时钟(clock)使能信号的问题 同步电路:电路在时钟信号

4、有效时,来捕捉电路的输入信号和输出信号,规范电路的状态变化。同步电路设计中,时钟信号是至关重要的。但是,直接用门控时钟来控制电路的状态变化,由于各种原因造成的时钟信号的毛刺将直接影响电路的正常工作。因此,在电路结构中,增加时钟使能信号,无论对于防止时钟信号随机毛刺的影响,还是严格规范电路逻辑的时序对应,都是非常重要的。现在学习的是第7页,共27页 图 5-5 在电路中加入CE信号的形式(a)增添具有CE脚的触发器;(b)附加逻辑控制端CE 有的电路采用图 5-5(a)所示的对触发器增添CE脚的形式,而有的设计则采用图5-5(b)所示的附加逻辑控制端CE的方式来实现CE的控制功能。不管采用何种形

5、式,如果在电路中不使用CE信号时,则要将CE端接至高电平。现在学习的是第8页,共27页 图 5-6 不好的时钟分配电路 图 5-7 好的时钟分配电路 2.在同步电路设计中,如何合理布置时钟分配的问题 同步电路中的多时钟产生,往往采用时钟分配电路来实现。这时,首先要关注的是如何降低分配时钟之间的时钟偏移问题。对于如图所示的时钟分配电路,为了减少时钟CLK1和CLK2之间的时钟偏移,可采用额外的缓冲器BUFG来降低CLK2的时钟偏移。但是,这样的电路并不能完全抑制时钟波形的变形。若需完全抑制CLK1和CLK2-CE之间的时钟偏移,可尝试如图 5-7所示的电路。该电路中的BUFG为可选缓冲器。当CL

6、K2-CE信号是高扇出时,可省略BUFG缓冲器。现在学习的是第9页,共27页图 5-8 门控时钟的毛刺产生原理 3.在同步电路设计中应严格避免时钟信号(CLK)、置位(Set)/复位(Reset)信号的毛刺 目前的FPGA中的触发器的响应速度越来越快,其可以响应非常窄的时钟脉冲。因此,往往触发器会响应时钟信号中的毛刺,导致逻辑发生误动作。现在学习的是第10页,共27页图 5-9 避免时钟毛刺的电路 为了防止这类情况的发生,建议采用如图 5-9所示的电路,这样便可以实现相同的逻辑功能,却不会导致时钟产生毛刺。也可以有意识地对与门输入端引入一个CLB时延,如图 5-10所示,同样可以将门控时钟毛刺

7、形成的可能性降低。图 5-10 对与门引入CLB的时延 现在学习的是第11页,共27页图 5-11 异步“清除”电路 图 5-12“清除”信号的同步化解决方案 (a)方法A;(b)方法B 现在学习的是第12页,共27页图 5-13 避免Set/Reset信号中毛刺的影响的分析 (a)不好的设计;(b)好的设计现在学习的是第13页,共27页 4.在同步电路设计中,时钟偏移及不确定信号电平的影响 时序电路在FPGA中实现时,由于各部分连线长短不一致,导致其虽然多个触发器共用一个时钟信号,但触发器时钟端的信号延时并不相同,信号会发生不同的畸变,构成时钟信号偏移。如图 5-14所示,图5-14(a)中

8、标出时钟信号的不同时延,对照图5-14(c)的信号波形,可以分析,由于时钟信号到达触发器的端口处的信号发生畸变和不同的时延,该移位寄存器将不能正常工作。现在学习的是第14页,共27页图 5-14 同步电路中时钟偏移的影响 现在学习的是第15页,共27页图 5-15 时钟信号建立与保持时间的影响 在同步电路的设计实现中,我们还应注意信号建立和保持时间的需要,特别是触发器输入信号的变化不能距离时钟信号边缘太近,如图 5-15所示。如果两者太接近的话,触发器输出将会形成如下3种情况:(1)维护输入D的原值;(2)改变成输入D的新值;(3)输出是不确定的。现在学习的是第16页,共27页图 5-16 异

9、步输入信号同步化电路 5.1.3 同步逻辑电路设计中的基本技巧 1.对于输入信号是异步的情况 在同步逻辑电路设计中,对于异步的输入信号,首先要做的工作是同步异步信号。图 5-16所示为异步输入信号同步化的电路举例。现在学习的是第17页,共27页图 5-17 双CLK的电路 2.两个独立时钟的情况 在同步逻辑电路的系统中,如果存在两个时钟信号,且对于包容于CLK1和CLK2之间的信号,需要和CLK2信号同步。对于如图 5-17所示电路,前后两个触发器之间为某一逻辑功能,CLK1和CLK2分别是前后两个触发器的时钟信号。这时需要分两种情况考虑:CLK1慢于CLK2(CLK1的脉宽大于CLK2);C

10、LK1快于CLK2(CLK1的脉宽小于CLK2)。现在学习的是第18页,共27页图 5-18 附加触发器以防止出现不确定态(a)电路图;(b)电路波形示意现在学习的是第19页,共27页图 5-19 电路原理和波形示意现在学习的是第20页,共27页5.2 多级逻辑的设计技巧多级逻辑的设计技巧 FPGA主要由可编程逻辑单元模块(CLB)、可编程输入/输出模块(IOB)和可编程内连线(PI)3 种基本资源构成。因此,在采用FPGA来实现电路逻辑时,其基本的时延来源于这3种基本资源。其中,CLB和IOB内的逻辑资源虽会随不同的逻辑需求而实现不同的重构,但其单元时延的离散性不大。而PI则根据不同的逻辑需

11、求及不同的连线要求,使各处连线的延时差异会非常大。因此,对FPGA实现中的延时分析,需要根据具体情况,具体地由这些基本时延的叠加来加以分析。现在学习的是第21页,共27页图 5-20 多级CLB的时延模型 5.2.1 FPGA实现中的基本时延 在采用FPGA来实现同步逻辑电路时,我们可以利用器件内部资源的某些特征参数来预测电路设计的性能指标或评估电路性能是否优化。例如:可以采用内部单元模块的时延作为评估网络时延的基本依据;也可以反过来,采用预期的时钟频率来决定电路设计中允许使用的CLB的串级数。通过功能需求比较和设计修正,来使设计达到所需求的指标。例如:如果需要在XC4000XL-3的芯片中实

12、现50 MHz时钟频率,由于系统时钟周期为20 ns,如图 5-20所示,1级CLB的延时约8 ns(包括tCO+tNET+tSU),还有时延冗余量12 ns。考虑中间每个附加CLB的组合逻辑延时为6 ns(tPD+tNET),则该系统中可串联两级内嵌附加CLB组合逻辑。现在学习的是第22页,共27页5.2.2 流水线的基本概念 为了提高多级逻辑的系统速度,引入“流水线”的概念。流水线设计:把在一个时钟周期内执行的逻辑操作分成几步较小的操作,并在多个较高速的时钟内完成。图 5-22 的数据通路中的逻辑被分为3小部分。如果它的tPD 为x,则该电路的最高时钟频率为1/x。而在图5-22(b)中,

13、假设在理想情况下每部分的tPD为x/3,则它的时钟频率可提高到原来的3倍。当然,我们在计算中并没有包括电路中寄存器的时钟输出时延和信号建立时间,因此实际的延迟应比x/3稍大。在忽略它们的情况下,我们可以看到,流水线技术可以用来提高系统的数据流量,也就是在单位时间内所处理的数据量。但是,采用这种方法的代价是输出信号将相对于输入滞后3个时钟周期。因此必须根据这种情况对设计进行修改。现在学习的是第23页,共27页图 5-22 流水线技术的概念 现在学习的是第24页,共27页 总之,流水线技术在提高系统处理速度的同时也造成了输出滞后,并且还需要额外的寄存器资源。由于大多数FPGA器件的每个元胞中都有寄

14、存器,因此便于采用流水线设计;相比之下,在CPLD中每个寄存器对应的组合逻辑资源较多,因此其一级逻辑的规模要比FPGA大得多,而这意味着在相同的时钟周期内,相对FPGA的元胞,它可以实现更复杂的逻辑。所以实际上往往没有必要在CPLD中应用流水线技术。现在学习的是第25页,共27页图 5-23 串联两级组合逻辑的原型电路 5.2.3 应用流水线的设计 采用流水线技术,是实现多级逻辑的系统时钟提升的有效途径。其实际的状态是,采用了流水线结构,该逻辑的第1个输出有效将被延时,这样延时的时间取决于流水线的级数。因为流水线的每一级都将附加一个时钟的延时。图 5-23所示是一个原型电路实例,在触发器Source-FFS和Dest-FF之间存在两个组合逻辑级,实际的系统工作频率为30 MHz。现在学习的是第26页,共27页图 5-24 采用流水线技术的改进电路 将图 5-23所示电路改为流水线的结构,如图 5-24 所示,即在两级串行组合逻辑之间嵌入触发器PIPE-FFS。由此,系统的最大工作频率可增至60 MHz。现在学习的是第27页,共27页

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高考资料

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

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁