0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

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

FPGA学习交流 2018-09-28 11:16 次阅读

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。

165154xkxr2cjsmkxrl2fh.png

always@(posedge clk)
if (en)
c <= a & b;
雖然也必須在~en保留原本的值,但由於flip-flop就有記憶的功能,所以不會產生latch。if將產生mux,並將flip-flop的值拉回給mux。

165155oz27lv4y2ql4hz7j.png


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

全文完。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1629

    文章

    21744

    浏览量

    603671
收藏 人收藏

    评论

    相关推荐

    Verilog 与 ASIC 设计的关系 Verilog 代码优化技巧

    Verilog与ASIC设计的关系 Verilog作为一种硬件描述语言(HDL),在ASIC设计中扮演着至关重要的角色。ASIC(Application Specific Integrated
    的头像 发表于 12-17 09:52 130次阅读

    Verilog 测试平台设计方法 Verilog FPGA开发指南

    Verilog测试平台设计方法是Verilog FPGA开发中的重要环节,它用于验证Verilog设计的正确性和性能。以下是一个详细的Verilog测试平台设计方法及
    的头像 发表于 12-17 09:50 225次阅读

    Verilog与VHDL的比较 Verilog HDL编程技巧

    Verilog 与 VHDL 比较 1. 语法和风格 VerilogVerilog 的语法更接近于 C 语言,对于有 C 语言背景的工程师来说,学习曲线较平缓。它支持结构化编程,代码更直观,易于
    的头像 发表于 12-17 09:44 162次阅读

    OPA380的pspice模型只有5个管脚标号,各个管脚代表的含义是什么?

    OPA380的pspice模型只有5个管脚标号,但是未标明各个管脚代表的含义,如哪个输入,哪个输出,电源之类的。这个怎么办呢?
    发表于 09-18 06:19

    Verilog:【8】基于FPGA实现SD NAND FLASH的SPI协议读写

    ; else block_read_valid <= 1\'b0; end always@(posedge sys_clk or posedge rst) begin if(rst == 1
    发表于 06-21 17:58

    关于Verilog的一些基本语法

    endmodule 五、条件判断语句 条件判断语句有if else 和 case endcase这两种,这两种语句的赋值都必须放在always语句中。 ①、if else语句的注意事项 A
    发表于 05-31 18:31

    USB口不同颜色代表的意义是什么

    平时工作生活中我们会看到各种颜色的USB口,但是大多数人都不知道不同颜色的USB口代表什么含义?
    发表于 04-09 09:49 3997次阅读
    USB口不同颜色<b class='flag-5'>所</b><b class='flag-5'>代表</b>的意义是什么

    Verilog实现uart串口设计

    ;// Output parity bit. else tx <= tsr[0];//Shift out data bit. end end always @(posedge mclkx16
    发表于 04-01 14:41

    8b10b编码verilog实现

    8b/10b编码是一种用于减少数据线上的低效能时钟信号传输的技术,通过在数据流中插入特殊的控制字符,来同步数据和时钟。在Verilog中实现8b/10b编码器可以通过以下步骤完成: 定义8b/10b
    发表于 03-26 07:55

    verilog实现卷积运算

    else begin data_a_reg <= data_in_a; data_b_reg <= data_in_b; end end // 执行卷积运算 always
    发表于 03-26 07:51

    Verilog 电子时钟实现

    Verilog中实现一个简单的电子时钟,你可以使用一个计数器来周期性地递增一个计数值,然后根据这个计数值来显示时钟的不同时刻。以下是一个简单的例子: module clock_display
    发表于 03-26 07:48

    verilog语音实现浮点运算

    Verilog可以通过使用IEEE标准的浮点数表示来实现浮点运算。下面是一个基本的Verilog模块示例,展示了如何进行加法、乘法和除法等常见的浮点运算操作: module
    发表于 03-25 21:49

    assign语句和always语句的用法

    Assign语句和Always语句是在硬件描述语言(HDL)中常用的两种语句,用于对数字威廉希尔官方网站 建模和设计。Assign语句用于连续赋值,而Always语句用于时序逻辑建模。本文将详细探讨这两种语句
    的头像 发表于 02-22 16:24 2593次阅读

    verilog中initial和always的区别

    Verilog是一种硬件描述语言(HDL),用于设计和模拟数字威廉希尔官方网站 。在Verilog中,关键字initial和always都是用于描述威廉希尔官方网站 行为的特殊语句。它们被用来生成仿真模型,并控制模拟器的启动
    的头像 发表于 02-22 16:09 2945次阅读

    ZCC4650雙通道 25A 或單通道50A 稳压器替代LT4650

    特 點 ■ 雙通道 25A 或單通道 50A 輸出■ 輸入壓範圍:4.5V 至 15V■ 輸出壓範圍:0.6V 至 1.8V■ 在整個壓、負載和溫度範圍具有 ±1.5% 的最大
    发表于 01-15 17:56