当前位置:   article > 正文

Verilog中多功能数据处理器代码实现

Verilog中多功能数据处理器代码实现

根据指示信号select的不同,对输入信号a,b实现不同的运算。输入信号a,b为8bit有符号数,当select信号为0,输出a;当select信号为1,输出b;当select信号为2,输出a+b;当select信号为3,输出a-b.
接口信号图如下:

代码如下:

(CSDN代码块不支持Verilog,代码复制到notepad++编辑器中,语言选择Verilog,看得更清楚)

  1. `timescale 1ns/1ns
  2. module data_select(
  3. input clk,
  4. input rst_n,
  5. input signed[7:0]a,
  6. input signed[7:0]b,
  7. input [1:0]select,
  8. output reg signed [8:0]c
  9. );
  10. always@(posedge clk or negedge rst_n)begin
  11. if(!rst_n)
  12. c<=9'd0;
  13. else begin
  14. case(select)
  15. 2'd0 : c<=a;
  16. 2'd1 : c<=b;
  17. 2'd2 : c<= a+b;
  18. 3'd3 : c<=a-b;
  19. endcase
  20. end
  21. end
  22. endmodule

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Gausst松鼠会/article/detail/604842
推荐阅读
相关标签
  

闽ICP备14008679号