查看: 323|回复: 3
打印 上一主题 下一主题

【设计求助】如何实现这样一个简单的逻辑

[复制链接] qrcode

1

主题

1

帖子

5

积分

新手上路

Rank: 1

积分
5
楼主
跳转到指定楼层
发表于 2015-5-6 02:23 AM | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

如图所示,当输入信号在第一个上升沿的时候如何使输出为高信号,且一直保持
谢谢!
希望高手能给出VHDL 程序

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

0

主题

19

帖子

42

积分

新手上路

Rank: 1

积分
42
沙发
发表于 2015-5-11 08:25 AM | 只看该作者
不能直接用这么:

.....

process(clk)

begin

if clk'event and clk='1' then y<='1';

end if ;

end process;

end....



我倒是有另外一个问题:

如果在N个时钟以后比如说N=5,输出来低电平,5以前输出高电平呢?

大家讨论一下呀。。
回复 支持 反对

使用道具 举报

2

主题

17

帖子

40

积分

新手上路

Rank: 1

积分
40
板凳
发表于 2015-12-25 12:47 PM | 只看该作者
只需要一个D触发器就可以了

process(clk,clr)

begin

if clr='1' then

y<='0';

else if clk'event and clk='1' then

y<='1' --省略else引入锁存器

end if;

end process;
回复 支持 反对

使用道具 举报

0

主题

19

帖子

42

积分

新手上路

Rank: 1

积分
42
地板
发表于 2015-12-25 02:04 PM | 只看该作者
用一个计数器来实现

alwsys @ (posedge in)

begin

cnt<=cnt+1;

if(cnt>4)//5个脉冲以后位低

out<=0;

else//5个以前为高

out<=1;

end
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表