zoukankan      html  css  js  c++  java
  • Verilog之case语句

    verilog设计进阶

    时间:2014年5月6日星期二

    主要收获:

    1.学会使用case语句;

    2.学会使用随机函数$random。

    $random:

    1.函数说明:$random函数调用时返回一个32位的随机数,它是一个带符号的整形数。

    2.产生0~59之间的随机数的样例:

    reg[23:0]rand;

    rand={$random}% 60;

    3.产生一个在min, max之间随机数的样例:

    reg[23:0]rand;

    rand= min+{$random}%(max-min+1);

    (摘自昔如烟的博客)

    Verilog程序:

    modulealu(out, opcode, a, b);

           output[7:0]     out;

           reg[7:0]   out;

           input[2:0]       opcode;

           input[7:0]       a, b;

          

           always@(opcode or a or b) begin

                  case(opcode)

                         `plus:      out = a + b;

                         `minus:   out = a - b;

                         `band:     out = a & b;

                         `bor:       out = a | b;

                         `unegate:out= ~a;

                         default: out = 8'hx;

                  endcase

           end

    endmodule

    測试程序:

    `timescale1ns/1ns

    modulealutest;

           wire[7:0] out;

           reg [7:0] a, b;

           reg [2:0] opcode;

           parameter times = 5;

          

           initial begin

                  a={$random}%256;

                  b={$random}%256;

                  opcode=3'd0;

                  repeat(times) begin

                         #100;

                         a={$random}%256;

                         b={$random}%256;

                         opcode=opcode+1;

                  end

                  #100 $stop;

           end

          

           alu u1(out, opcode, a, b);

    endmodule

    仿真波形:


  • 相关阅读:
    跟我学Makefile(七)
    C++单例模式
    乘法逆元及求法
    推荐几个jetbrains全家桶好用的插件,同时作为备忘
    win32 获取本机网卡信息(MAC地址,IP地址等)
    centos7 安装 mysql-python时 报错 EnvironmentError: mysql_config not found
    VS2013 中使用 CxImage 库时用Unicode编码时出现链接错误
    剑指offer-二叉搜索树的后序遍历序列
    剑指offer-顺时针打印矩阵
    剑指offer-二叉树的镜像
  • 原文地址:https://www.cnblogs.com/blfshiye/p/5112545.html
Copyright © 2011-2022 走看看