【verilog语法】关于testbench与被测module的输入输出数据类型定义:reg/wire原因 |
您所在的位置:网站首页 › wire是什么类型 › 【verilog语法】关于testbench与被测module的输入输出数据类型定义:reg/wire原因 |
testbench的输入输出数据类型正好与被测模块相反
1、被测module中,输入为wire,输出为reg 输入信号是由模块外部决定的,输入数据的状态是变化的,与外部模块是通过线连接,所以用wire,不用reg 2、testbench中,输入为reg,输出为wire 所谓寄存器类型就是暂存一个数据,保持数据不变。 在testbenchb里定义的A,B输出给被测模块 因此对于testbench来说,A,B是输出,数据需要存储才能输出给被测module,用reg型 在testbenchb里定义的result用来接收从被测模块中输入的数据 因此对于testbenchb来说,result是输入,用导线与被测模块连接,用wire型 也就是说,tb的输出对应着被测模块的输入;tb的输入对应着被测模块的输出 注意:只要是always块内部的变量输出,都用reg型![]() 文件名称:alu_tb `timescale 1ns/1ns //仿真时间单位/时间精度 `include "alu.v" module ALU_tb; reg [31:0] A; reg [31:0] B; reg [4:0] sl; //左移的位数 reg [2:0] ALUctr; //3位ALU控制信号 wire [31:0] Result; // wire zero; //零标志位 ALU myalu(A,B,sl,ALUctr,Result,zero); always #2 A |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |