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

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

3天内不再提示

常见的Verilog行为级描述语法

电子工程师 来源:未知 作者:工程师李察 2018-09-15 08:18 次阅读

常见的模块介绍:选择器;译码器;解码器;比较器。这里我们主要从常见的Verilog描述的层面去介绍,而不着重考虑电路。将会提到的Verilog语句有 条件选择语句,case语句,if-else。

选择器:电路示意图如下。根据SEL信号,选择将D0还是D1,或者D3传递给D_O。即根据SEL信号选择,将某一个输入信号传递给D_O。

常见的Verilog行为级描述语法

对于只有两个输入信号的选择器,我们可以用单层条件选择语句描述。例如输入只有D0,D1两个。那么SEL只要为单bit即可实现选择。SEL为0时,选择将D0传递给D_O;SEL为1时,选择将D1传递给D_O;

assign D_O = (SEL) ? D1:D0;

注意:条件选择语句功能: 当 ( ) 里面的expression0的条件为真时,则选择第一个表达式expression1里面的结果,否则选择 :后面expression2的结果。结构如下:

assign out = (expression0) ? expression1 : expression2

有多个输入信号时。例如:有3个输入,D0,D1,D2; 因为2的2次方等于4,故SEL最小的位宽应该为2。若要实现如下选择功能。

对应可以使用 case 语句描述:

reg[7:0] D_O;

always @(*) begin

case(SEL[1:0])

2b00: D_O = D0;

2b01: D_O = D1;

2b10: D_O = D2;

default: D_O = h0;

endcase

end

注意:case语句,如果SEL的所有组合没有列全,最好在最后要加上 default: ... 项,使得信号完整。如此综合出来的电路才不会出现锁存器。

对应的可以用case语句去描述它的功能:

reg[7:0] D_O;

always @(*) begin

case(D_IN[2:0])

3b000: D_O = 8b1111_1110;

3b001: D_O = 8b1111_1101;

3b010: D_O = 8b1111_1011;

3b011: D_O = 8b1111_0111;

3b100: D_O = 8b1110_1111;

3b101: D_O = 8b1101_1111;

3b110: D_O = 8b1011_1111;

3b111: D_O = 8b0111_1111;

endcase

end

同样对于8-3解码器,大家可以自行去练手。

比较器,或者说判断器。比如比较两个数的大小,当a>b是,输出信号en为高,否则为低。

if-else描述:

reg en;

always @( * )

if( a>b )

en = 1;

else

en = 0;

当然也可以用条件选择语句:

wire en;

assign en = (a>b) ?1b1 : 1b0;

本文重在通过逻辑实例帮助大家理解常见的Verilog逻辑描述语言。大家在知道自己要实现的功能的情况下,去选择合适的描述方式。

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

    关注

    28

    文章

    1340

    浏览量

    109904
  • Case
    +关注

    关注

    0

    文章

    27

    浏览量

    13352
  • IF
    IF
    +关注

    关注

    1

    文章

    48

    浏览量

    26848

原文标题:常见的Verilog行为级描述语法

文章出处:【微信号:LF-FPGA,微信公众号:小鱼FPGA】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    硬件描述语言(HDL)编码技术:xilinx verilog语法技巧

    xilinx verilog语法技巧 一 硬件描述语言(HDL)编码技术让您: •描述数字逻辑电路中最常见的功能。 •充分利用Xilinx®
    的头像 发表于 12-13 10:29 3475次阅读

    新手求教、verilog行为描述与结构描述区别?

    想问一下,在verilog中,行为描述和结构描述到底有什么区别,感觉行为描述语句更直观、易读、易
    发表于 10-27 11:17

    Verilog硬件描述语描述.

    本书简要介绍了Verilog硬件描述语言的基础知识,包括语言的基本内容和基本结构 ,以及利用该语言在各种层次上对数字系统的建模方法。书中列举了大量实例,帮助读者掌握语
    发表于 03-27 23:44 101次下载

    verilog硬件描述语言课程讲义

    verilog硬件描述语言课程讲义
    发表于 05-21 15:01 33次下载
    <b class='flag-5'>verilog</b>硬件<b class='flag-5'>描述语</b>言课程讲义

    Verilog硬件描述语言参考手册

    Verilog硬件描述语言参考手册,Verilog语法内容介绍
    发表于 11-12 17:20 0次下载

    Verilog HDL硬件描述语

    Verilog HDL硬件描述语言 有需要的下来看看
    发表于 12-29 15:31 0次下载

    Verilog HDL硬件描述语言_行为建模

    本章描述Verilog HDL中的第三种建模方式,即行为建模方式。为充分使用Verilog HDL,一个模型可以包含所有上述三种建模方式。veril
    发表于 04-25 16:09 14次下载

    Verilog硬件描述语

    VHDL语言编程学习Verilog硬件描述语
    发表于 09-01 15:27 0次下载

    Verilog HDL硬件描述语

    Verilog HDL硬件描述语言,感兴趣的小伙伴们可以瞧一瞧。
    发表于 11-11 11:20 11次下载

    基于Verilog硬件描述语言的IEEE标准硬件描述语言资料合集免费下载

    本文档的主要内容详细介绍的是基于Verilog硬件描述语言的IEEE标准硬件描述语言资料合集免费下载:1995、2001、2005;SystemVerilog标准:2005、2009
    发表于 06-18 08:00 10次下载

    通过实例设计来加深Verilog描述语法理解

    综合,可以用这个语法描述什么逻辑功能电路呢? 其实Xilinx已经贴心地准备好了答案,还给你准备了一堆参考实例。 二. Verilog行为
    的头像 发表于 01-02 09:45 1515次阅读
    通过实例设计来加深<b class='flag-5'>Verilog</b><b class='flag-5'>描述语法</b>理解

    Verilog硬件描述语言的学习课件免费下载

    本文档的主要内容详细介绍的是Verilog硬件描述语言的学习课件免费下载。
    发表于 01-22 12:13 17次下载
    <b class='flag-5'>Verilog</b>硬件<b class='flag-5'>描述语</b>言的学习课件免费下载

    Verilog硬件描述语言参考手册免费下载

    Verilog 硬件描述语言参考手册是根据IEEE 的标准“Verilog 硬件描述语言参考手册1364-1995”编写的。OVI (Open V
    发表于 02-05 16:24 72次下载
    <b class='flag-5'>Verilog</b>硬件<b class='flag-5'>描述语</b>言参考手册免费下载

    使用Verilog/SystemVerilog硬件描述语言练习数字硬件设计

    HDLBits 是一组小型电路设计习题集,使用 Verilog/SystemVerilog 硬件描述语言 (HDL) 练习数字硬件设计~
    的头像 发表于 08-31 09:06 1609次阅读

    常见Verilog行为描述语法

    常见的模块介绍:选择器;译码器;解码器;比较器。这里我们主要从常见Verilog描述的层面去介绍,而不着重考虑电路。
    的头像 发表于 05-30 16:24 1405次阅读
    <b class='flag-5'>常见</b>的<b class='flag-5'>Verilog</b><b class='flag-5'>行为</b><b class='flag-5'>级</b><b class='flag-5'>描述语法</b>