instruction_register.v
来自「Vlerilog HDL高级数字设计源码」· Verilog 代码 · 共 21 行
V
21 行
module Instruction_Register (data_out, data_in, scan_out, scan_in, shiftIR, clockIR, updateIR, reset_bar);
parameter IR_size = 3;
output [IR_size -1: 0] data_out;
output scan_out;
input [IR_size -1: 0] data_in;
input scan_in;
input shiftIR, clockIR, updateIR, reset_bar;
reg [IR_size -1: 0] IR_Scan_Register, IR_Output_Register;
assign data_out = IR_Output_Register;
assign scan_out = IR_Scan_Register [0];
always @ (posedge clockIR) IR_Scan_Register <= shiftIR ? {scan_in, IR_Scan_Register [IR_size - 1: 1]} : data_in;
always @ ( posedge updateIR or negedge reset_bar) // asynchronous required by 1140.1a.
if (reset_bar == 0) IR_Output_Register <= ~(0); // Fills IR with 1s for BYPASS instruction
else IR_Output_Register <= IR_Scan_Register;
endmodule
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?