一乐电子

 找回密码
 请使用微信账号登录和注册会员

QQ登录

只需一步,快速开始

微信扫码登录

手机号码,快捷登录

手机号码,快捷登录

搜索
查看: 3612|回复: 2

用quartusII编程3-8译码器,时序仿真出错,类似延迟,求指教

[复制链接]
发表于 2014-8-10 21:50 | 显示全部楼层 |阅读模式
代码如下:( x6 Y- X+ S; ~& ~+ O3 g/ M4 d
// decoder 3 to 8 decoder with an enable control;
7 n0 o5 M% e! d1 j: q3 `module decoder ( y , en , a );
' R$ v! D& s6 M: D# Moutput [ 7:0 ] y;   // 八位输出6 r( G6 }- K: X" u& Y, L
input en;    // 使能端
" H0 s0 w9 |6 j. F5 z/ Yinput [ 2:0 ] a;   // 三位地址端
+ }  G3 N. u* _* l$ l$ ~- O( z$ }6 P- y- N) t7 P- k* M* F# {1 h( v
reg [ 7:0 ] y;( h+ @4 H; g' [4 e! @
always @ ( en or a )
/ N* }% h. Z( q        if ( en )
  N  G4 G# J2 \                case ( a )
& t# T3 {( G& a% D! K                        3'b000 : y = 8'b1111_1110;
* u/ `$ O2 @) c+ H4 T: o                        3'b001 : y = 8'b1111_1101;
( E  a  O% v- V# T" S4 G                        3'b010 : y = 8'b1111_1011;
/ ]' o4 j; o0 C. ?* t* y                        3'b011 : y = 8'b1111_0111;
# N' ^, U' ]0 C, K3 E% H                        3'b100 : y = 8'b1110_1111;
# U4 h: W6 @! P1 r; O4 P                        3'b101 : y = 8'b1101_1111;
, ?/ }, P' q+ z3 ^. ^                        3'b110 : y = 8'b1011_1111;: ^) p& r: R9 I9 W9 j' z
                        3'b111 : y = 8'b0111_1111;" j2 d% m, m& ~/ `! k* {
                        default : y = 8'b1111_1111;0 y( i% l  N0 X* A  U
                endcase
4 \& d- ]5 g" J3 o        else
7 A4 y$ f( a0 G7 k- E- Y3 m: i                y = 8'b1111_1111;
# L( ?8 q+ i4 o        ) q. `) J  `) i6 }8 @* A
endmodule // end of decoder;/ w. f: ]5 E/ u5 b
  o. K* U# p) H: R) I) f7 U
产生的波形文件见下图。
! I2 ?- ^3 I7 F5 o8 @5 p1 m0 m本来应该是,en=1,a=000的时候,输出y=1111_1110;结果y=1111_1110却跑到a=001的时候去了。。。。。
# n* D- X9 W* C% a" S8 _3 W本人小白,刚学verilog hdl,写一个3-8译码器就出错了,还望各位大哥大姐多多指教!

结果像产生了延迟了一样。

结果像产生了延迟了一样。
发表于 2014-8-11 12:01 | 显示全部楼层
看了你一下这个写法不怎么好!暂时不说你输出延迟的问题,单单你从输出的部分已有好多的毛刺了。这是不允许的,解决的办法是用寄存器,还有尽量不能用always @ ( en or a ) 这样的写法,你可以用always @(posedge en )7 a3 s& P  e% D6 Z- y6 z
还有a作为输入的判断不怎么好,不建议这样写,还有最好加复位REST。推荐的写法是用状态机,决不会产生你这样的延迟和毛刺。
回复

使用道具 举报

发表于 2014-8-11 12:05 | 显示全部楼层
状态机你从我发的帖子上找,不能全部相信国内书的写法,好多是误导人的,状态机是最适合VERILG上用的。
回复

使用道具 举报

本版积分规则

QQ|一淘宝店|手机版|商店|一乐电子 ( 粤ICP备09076165号 ) 公安备案粤公网安备 44522102000183号

GMT+8, 2025-10-28 00:57 , Processed in 0.032569 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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