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

Abstract
在Verilog中,always block可以用來代表Flip-Flop, Combination Logic與Latch,本文比較在不寫else下,always block所代表的電路。

Introduction
在C語言裡,省略else只是代表不處理而;已但在Verilog裡,省略else所代表的是不同的電路。

always@(a or b or en)
if (en)
c = a & b;

在combination logic中省略else,由於必須在~en保留原本的值,所以會產生latch。

or00

always@(posedge clk)
if (en)
c <= a & b;

雖然也必須在~en保留原本的值,但由於flip-flop就有記憶的功能,所以不會產生latch。if將產生mux,並將flip-flop的值拉回給mux。

or01

Conclusion
在Verilog中,雖然只是小小的差異,但結果卻有天大的差異。

全文完。

posted on   真 OO无双  阅读(14773)  评论(11编辑  收藏  举报

编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
历史上的今天:
2011-01-29 (原創) 如何實現簡易的數位濾波器? (SOC) (Verilog)
2008-01-29 (原創) 如何使用C++的標準函式庫進行排序? (C/C++) (STL)
2008-01-29 (原創) 如何在DE2將CCD影像顯示在彩色LCD上? (Nios II軟體篇 + onchip memory) (IC Design) (DE2) (Nios II) (SOPC Builder) (TRDB-LCM)

导航

统计

点击右上角即可分享
微信分享提示