浅析fpga中的同步设计技术

上传人:第*** 文档编号:30646456 上传时间:2018-01-31 格式:DOC 页数:6 大小:77.50KB
返回 下载 相关 举报
浅析fpga中的同步设计技术_第1页
第1页 / 共6页
浅析fpga中的同步设计技术_第2页
第2页 / 共6页
浅析fpga中的同步设计技术_第3页
第3页 / 共6页
浅析fpga中的同步设计技术_第4页
第4页 / 共6页
浅析fpga中的同步设计技术_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《浅析fpga中的同步设计技术》由会员分享,可在线阅读,更多相关《浅析fpga中的同步设计技术(6页珍藏版)》请在金锄头文库上搜索。

1、浅析 FPGA 中的同步设计技术摘 要:基于 FPGA 的数字系统应用日益广泛,其设计方法也越来越受到关注,不合理的设计方法会严重影响系统的稳定性,产生干扰脉冲。同步设计技术是解决这些问题的一种有效方法,以数字系统设计中的清零和分频设计为例,分析了影响系统稳定性和产生干扰脉冲的原因,提出了基于同步设计技术的解决方法。实验表明:同步设计能有效地抑制干扰脉冲的影响,提高系统稳定性。关键词:现场可编程门阵列;同步设计;建立时间;保持时间;竞争冒险;毛刺The Analysis Of FPGA Synchronized DesignAbstract The digital system based o

2、n FPGA is widely applied day by day, its design method is paid attention more and more. Unreasonable method will reduce the stability of the system and produce some redundant signal, for example burr. In order to solve these problems and realize the design smoothly, presently proposes and analyzes o

3、ne kind of design technique, the synchronization design technique, which enhances the system stability obviously and has avoided the redundant signal production effectively.Key words FPGA; Synchronized design; Setup Time; Hold Time; Competition risk; Burr0 引言基于 FPGA 的系统设计主要有两种设计技术,一种是异步设计技术,即系统内的各个模

4、块并不以同一时钟作为基准,这种设计技术具有芯片资源利用率高,能够灵活解决问题等特点。但是,异步设计技术往往不能满足建立保持时间的要求,令触发器不能正确地锁存数据,而导致系统进入一种亚稳定状态,这种状态对系统的可靠性影响很大。所以我们在 FPGA 系统设计中往往采用第二种设计技术,同步设计技术 1。同步设计可以有效地避免异步设计中产生的亚稳态问题,从而提高系统的可靠性,而且在做时序分析时,同步设计也要比异步设计方便。1 几个基本概念为了便于介绍,我们先引入几个基本概念。1.1 建立和保持时间建立时间:是指输入信号应先于时钟信号到达的时间,记作 tset2。保持时间:是指时钟信号到来后输入信号需要

5、保持时间,记作 th 2,如图 1 所示。图 1 建立时间、保持时间建立和保持时间关系到一个数据是否能正确地存储到寄存器中,而寄存器中数据的正确与否直接关系到系统的可靠性。1.2 竞争冒险在数字电路中,只要组合逻辑电路的输入信号不同时发生变化,其输出端就有可能产生干扰脉冲 3。在FPGA器件内部也会产生同样的现象:一方面,信号通过连线和逻辑单元时,都有一定的延时,延时的大小不仅与连线的长短和逻辑单元的数目有关,同时还受器件的制造工艺、工作电压、温度等条件的影响;另一方面,信号的高低电平转换也需要一定的过渡时间。由于存在上述两方面原因,多路信号电平发生变化时,在信号变化的瞬间,组合逻辑的输入有先

6、后顺序,并不是同时变化的,由此产生的组合逻辑输出会出现一些不需要的、时间极短的干扰脉冲,这个过程就是竞争冒险现象。1.3 毛刺由于竞争冒险而产生的、时间极短的干扰脉冲就是毛刺。现在的系统响应速度越来越快,即使是时间极短的毛刺也可能被系统误当作是一个触发信号处理,这样就会影响系统的稳定性。2 同步设计技术在设计基于 FPGA 的系统时,如果采用不规范的设计,数据相对于时钟可能会不好控制,无法满足建立时间和保持时间的要求,而使系统进入亚稳态,或者产生毛刺。为了解决这些问题,一种设计技术同步设计技术应运而生。对于同步设计,应当满足以下两个条件 4:(1)所有存储元件(包括计数器)都是边缘敏感的,在系

7、统中没有电平敏感存储元件(即系统不包括像锁存器这种元件) 。输入信号tset th时钟信号(2)每个边缘敏感部件的时钟输入是基准时钟的一次函数。我们对 FPGA 的同步设计理解为:所有的状态改变都由一个主时钟触发(基准时钟) ,对于具体的电路形式表现为:所有触发器的时钟端都接在同一个主时钟上。这意味着一个系统的功能模块在内部可以是局部异步的,但是在模块间必须是全局同步的 5。3 同步设计实例众所周知,在大型系统设计过程中要查找造成系统不稳定的原因是很复杂的 6,而同步设计则可以最大程度的避免这种问题的产生。下面我们就以实际项目中经常会遇到的一些设计问题为例来说明同步设计的优势。3.1 同步清零

8、在 FPGA 的设计中,除了从外部管脚引入的全局清零信号外,内部逻辑处理也经常需要产生一些局部的清零信号 7。由于这些信号对毛刺是非常敏感的,所以清零信号的设计需要像对待时钟那样小心考虑。在同步电路设计中,有一种行之有效的设计方法,即用同步清零的办法来替代局部清零。如用硬件描述语言进行设计,可描述如下:局部清零的描述方法:process(rst,clk) -当 rst 信号为 1 时计数器清零begin if rst=1 then count0); elsif clkevent and clk=1 then count0);else count0); else cnt=cnt+1; end i

9、f;end process; process(cnt) -把 cnt(2)作为时钟,如果它的上升沿到来,则把 data 的数据赋begin -给 shift_regif cnt(2)event and cnt(2)=1 then shift_reg=data; end if;end process;在上述的第一个 process 电路描述中,首先,计数器的输出结果 cnt(2)相对于全局时钟clk 已经产生了一定的延时(延时的大小取决于计数器的位数和所选择使用的器件工艺) ;而在第二个 process 中使用计数器的 cnt(2)作为时钟,那么 shift_reg 相对于全局 clk 的延时将

10、变得难以控制,可能无法满足信号建立时间和保持时间的要求而产生亚稳态输出。仿真结果如图 2 所示,红框中为亚稳态输出。放大后的情况如图 3 红框中所示,希望 shift_reg的输出值为 46,但是却含有 4、12、44 三个无规律值。图 2 不规范的分频设计图 3 放大后的亚稳态输出正确的做法应该将第二个 process 分为两个 process: process(cnt) -如果 cnt 为 100,则 en 赋值为 1,否则为 0。begin if cnt=100 then en=1;else en=0;end if;end process; process(clk) -在时钟上升沿到来时

11、,如果 en 为 1,则把 data 的值赋给 shift_regbeginif clkevent and clk=1 thenIf en=1 thenshift_reg=data;end if;end if;end process;这样做是相当于产生了一个 8 分频的使能信号,在使能信号有效的时候将 data 数据采样到 shift_reg 寄存器中。相对于前一种设计方法而言,通过对第二设计方法的仿真结果(图 4)进行分析,可以清楚地看到:采用同步设计方法,不仅得到的 shift_reg 的延时是相对于全局时钟 clk 的,令 data 的建立时间和保持时间容易控制,可以满足时序要求,而且消

12、除了不规范分频所产生的亚稳态输出。 图 4 同步的分频设计4 结语综上所述,通过对基于 FPGA 的数字系统不同设计方法的对比分析,我们得出了这样的结论:不合理的设计方法会严重影响系统的稳定性,而且还可能产生诸如毛刺这样的干扰脉冲。实验表明同步设计技术是解决这些问题的一种有效方法,采用这种设计方法能够明显提高系统稳定性,并有效地抑制毛刺带来的影响。参考文献1谢正光.数字系统设计中 VHDL 语言设计问题探讨J.微型机与应用,2006,23(7):17-182John F.Wakerly. Digital Design Principles and PracticesM.机械工业出版社,20073清华大学电子学教研组,余孟尝. 数字电子技术基础简明教程M.高等教育出版社,19854 FPGA 同步设计技术EB/OL.http:/ 5James R.Armstrong 等 VHDL 设计,表示和综合M.机械工业出版社,20046刘韬,楼兴华.FPGA 数字电子系统设计与开发实例导航M.人民邮电出版社,20057符兴昌.EDA 技术在数字系统设计分析中的应用J.微计算机信息,2006,22(14):267-2698陈帅,钟先信,邵小良.复杂可编程逻辑器件设计中延时影响的仿真分析J.华南理工大学学报(自然科学版),2005,33(6):28-31

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 工程造价

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号