找回密码
 注册
关于网站域名变更的通知
查看: 358|回复: 1
打印 上一主题 下一主题

转——always block內省略else所代表的電路 (SOC) (Verilog)

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-3-19 10:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

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

x
转——always block內省略else所代表的電路 (SOC) (Verilog)
. S* Q  g. Y+ V* I
: r' o. `: J; X
Abstract
( w- ]9 _/ \0 `4 C/ o' U8 c在Verilog中,always block可以用來代表Flip-Flop, Combination Logic與Latch,本文比較在不寫else下,always block所代表的電路。5 N: F+ b! c+ T- X; T/ s
- j, K! L! v8 V
Introduction
' y1 K( h+ ?. J在C語言裡,省略else只是代表不處理而;已但在Verilog裡,省略else所代表的是不同的電路。
! J, K# x2 Q) H0 b3 k: c& k( M% @# s/ s$ k
always@(a or b or en)
& e! \) P5 Q: D6 d9 u3 _/ Y3 g  if (en)
2 Q$ f1 Z6 w$ w6 [3 u    c = a & b;
5 |' _9 Q5 _0 j9 ^/ h5 n在combination logic中省略else,由於必須在~en保留原本的值,所以會產生latch。8 h9 J% \/ d4 t, m+ g

1 Z9 G$ h! B$ X 0 P. |; d0 ^* O% l' W5 K
5 D- q/ D! J" U* w" U
always@(posedge clk)
! \0 E6 G" d! @1 F0 h8 I7 x1 x7 ?  if (en)3 Q/ S% n2 ^3 m
    c <= a & b;
- ^+ g. O0 H$ o+ i* B" u1 R雖然也必須在~en保留原本的值,但由於flip-flop就有記憶的功能,所以不會產生latch。if將產生mux,並將flip-flop的值拉回給mux。% ?8 i8 G6 o: C) V; l! u

: F# N  V2 p2 j3 L5 @ % A" c$ p# I( j- t$ l/ V

/ Z6 M% E/ B0 z5 jConclusion
" k% x+ ?* o! T4 H/ ]" j在Verilog中,雖然只是小小的差異,但結果卻有天大的差異。6 V0 N! }7 _# |, p
1 H% v) g2 p: ]1 r% y' V4 [
全文完。
1 r- E* V( `2 I6 y
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-7-29 04:20 , Processed in 0.109375 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

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