夏宇闻
发表于 2011-10-13 20:45:25
夏老师,您的联系方式方不方便与我留一下呢?QQ:757256737,邮箱可发至QQ邮箱。谢谢!
ys_66888 发表于 2011-10-13 11:25 http://www.fpgaw.com/images/common/back.gif
有问题就在论坛上讨论吧!大家看后,也许都有启发。如有不便公开的地方可以通过至芯科技雷经理转达。
yhf561
发表于 2011-10-14 21:45:02
夏老师您好:请教您一个问题,《FPGA入门系列实验教程——实验八按键消抖控制LED亮灭》中按键消斗问题。
modulekey_debounce(rst_n,clk,key,led);
input rst_n;
input clk;
input key;
outputled;
reg cnt;
always@(posedge clk)
if(!rst_n)
cnt<=18'd0;
else
cnt<=cnt+1'b1;
wire sample_pulse=cnt==18'h3ffff;
reg low_sw;
always@(posedge clk )
if(!rst_n)
low_sw<=1'b1;
else if(sample_pulse)
low_sw<=key;
reg low_sw_r;
always@(posedge clk)
low_sw_r<=low_sw;
wire led_ctrl=low_sw_r&(!low_sw);
reg led;
always@(posedge clk or negedge rst_n)
if(!rst_n)
led<=1'b0;
else if(led_ctrl)
led<=~led;
endmodule
请问:wire led_ctrl=low_sw_r&;中“(!low_sw)”为啥有个非呀,去掉之后果然就不行了。
老怪甲
发表于 2011-10-14 22:23:11
夏老师您好:请教您一个问题,《FPGA入门系列实验教程——实验八按键消抖控制LED亮灭》中按键消斗问题。
m ...
yhf561 发表于 2011-10-14 21:45 http://www.fpgaw.com/images/common/back.gif
夏老师正在出差中,回来后回复您!
yhf561
发表于 2011-10-15 15:18:33
回复 93# 老怪甲
噢,谢谢啦!
夏宇闻
发表于 2011-10-16 06:50:07
本帖最后由 夏宇闻 于 2011-10-16 07:16 编辑
夏老师您好:请教您一个问题,《FPGA入门系列实验教程——实验八按键消抖控制LED亮灭》中按键消斗问题。
m ...
yhf561 发表于 2011-10-14 21:45 http://www.fpgaw.com/images/common/back.gif
这个键盘消抖程序有几个问题需要改进:第一,该模块没有测试,也没有标明抖动的延续时间和大致的次数。第二,该程序也不能说明设计能达到防抖的技术指标。致于在Iow_sw前写一个!是表示该信号为非的条件,这个条件与它前面的与项生成的组合逻辑变量led_ctrl可以在一定程度上反映抖动的情况。最后的always块想实现如果不发生抖动LED不变,如果发生抖动LED求反。
yhf561
发表于 2011-10-16 07:53:09
回复 95# 夏宇闻
谢谢夏老师,您辛苦啦!继续学习,我再试试。
ccc
发表于 2011-10-17 10:05:11
ISE 中能设置Retiming吗
夏宇闻
发表于 2011-10-17 21:13:44
ISE 中能设置Retiming吗
ccc 发表于 2011-10-17 10:05 http://www.fpgaw.com/images/common/back.gif
自己查一下ISE的帮助就知道了。我觉得应该有,但决定性因素还是您RTL代码表示的电路结构是否合理。否则综合工具也无从知道如何改进。
ccs
发表于 2011-10-18 18:57:19
请问一下,modelsim仿真当中测试文件如果没有`timescale这个语句,系统会不会默认一个呢?
夏宇闻
发表于 2011-10-18 19:39:21
请问一下,modelsim仿真当中测试文件如果没有`timescale这个语句,系统会不会默认一个呢?
ccs 发表于 2011-10-18 18:57 http://www.fpgaw.com/images/common/back.gif
是的,默认的时间单位是1ns/1ns。