我总是被封锁。 在always块中,有一个块分配,其中要分配的值由函数获取。
变量定义为reg [7:0] num
。
我知道该代码无法合成,并且认为它确实需要寄存器。所以也许我的问题是寄存器是如何合成的?
always @(posedge Clock) begin
//other code that I believe doesn't matter
if(enable)
num = get_number(type, arg1);
end
function [7:0] get_number;
input [1:0] type;
input [7:0] arg;
begin
case (arg_type)
REG: get_number = Reg[arg[5:0]];// contents of register b
IND: get_number = Reg[ Reg[arg[5:0]][5:0] ];//contents of register c, c= contents of register b.
default: get_number = arg;//if arg type is just num.
endcase
end
endfunction