eetop.cn_一个异步信号用于复位的问题

eetop.cn_一个异步信号用于复位的问题

ID:13752048

大小:67.50 KB

页数:4页

时间:2018-07-24

eetop.cn_一个异步信号用于复位的问题_第1页
eetop.cn_一个异步信号用于复位的问题_第2页
eetop.cn_一个异步信号用于复位的问题_第3页
eetop.cn_一个异步信号用于复位的问题_第4页
资源描述:

《eetop.cn_一个异步信号用于复位的问题》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、一个关于异步信号作同步复位的问题关键字:亚稳态异步复位同步复位Serinf.vhd模块中有一段代码经过synplify综合以及QuartusII布局布线后,下载到FPGA执行的过程中出现了一段不符合逻辑的波形。代码如下:process(rst,clk_lc32_i)beginifrst='0'thencnt<=(others=>'0');elsifrising_edge(clk_lc32_i)thenifcs='1'thencnt<=(others=>'0');elsif(svcksft(2downto1)="01")t

2、henifcnt=18thencnt<=(others=>'0');--自动清零elsecnt<=cnt+1;endif;endif;endif;endprocess;其中cs是来自cpu的片选信号,svcksft是保存cpu时钟沿的移位寄存器综合后,通过QuartusII自带工具RTLviewer看到的结果如下图所示:其中红线为代码中的cs信号,经过cyclone_LCELL(1555)这个组合逻辑单元,作为寄存器cyclone_lcell(5A5A)的sclr(同步清零)端。波形如图:波形图1波形图2这两幅图都是采c

3、s的下降沿得到的,多数情况下抓到的都是波形图2的波形,当cs=1时对cnt清零,cs=0时,cnt不变。但是有的时候抓到的波形如波形图1,当cs=1时对cnt清零,cs=0时,cnt被置位。这种情况不符合逻辑。将代码改为process(rst,clk_lc32_i)beginifrst='0'orcs=’1’thencnt<=(others=>'0');elsifrising_edge(clk_lc32_i)then--ifcs='1'then--cnt<=(others=>'0');if(svcksft(2downto

4、1)="01")thenifcnt=18thencnt<=(others=>'0');--自动清零elsecnt<=cnt+1;endif;endif;endif;endprocess;综合后的电路如图所示。从综合结果可以看出,经过这样的修改,cs信号和rst信号先经过一个组合逻辑单元,然后给cnt寄存器提供aclr(异步清零),代码经过这样处理后,cs依然实现了清零的功能,而且不会出现上述波形图1的情况。将代码改为process(rst,clk_lc32_i)beginifrst=’0’thencs_d<=‘0’;cs

5、_dd<=‘0’;elsifrising_edge(clk_lc32_i)thencs_d<=cs;cs_dd<=cs_d;endifendprocess;process(rst,clk_lc32_i)beginifrst='0'thencnt<=(others=>'0');elsifrising_edge(clk_lc32_i)thenifcs_dd='1'thencnt<=(others=>'0');elsif(svcksft(2downto1)="01")thenifcnt=18thencnt<=(others=>

6、'0');--自动清零elsecnt<=cnt+1;endif;endif;endif;endprocess;即对cs信号加入两级触发器,综合后的结果如下图,其中cs先经过寄存器cyclone_lcell(0704),然后作为cyclone_lcell(5A5A)的sclr(同步清零)端,综合的结果就不会出现问题。结论:不能用异步信号直接进行同步复位操作。修改方案:1.用该异步信号作为异步复位端。2.对异步复位信号做两级同步后,再来驱动同步复位端。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。