经过我理解的一些基础文档后,基地址寄存器是可以通过PCIe IP访问的地址空间.PCIe IP既可以在基地址寄存器中传输数据,也可以将接收到的数据写入其中.
我对吗?或遗漏任何东西?
它在任何地方都被提到这个作为指导,但经过多次思考后我想知道如果我们在Always Block for Combinatorial中使用Nonblocking语句会造成什么伤害.我不会将两者混合在一起.但我觉得当我们在Always Block中使用Nonblocking for Combinatorial语句时,它更准确地代表了硬件.不是吗?
例如,如果我们采取以下电路:

在此图中,当输入a,b,c被提供时,输出x1和x将不会立即可用.将有门延迟.第一个x1将可用,然后x将可用.如果我们使用阻止语句,它们都可以立即使用 如果我们使用非阻塞,它更准确地类似于硬件.
例如,如果我们根据上图获取以下代码
module block_nonblock(output logic x,x1,y,y1,input logic a,b,c);
always@* begin : BLOCKING
x1 = a & b;
x = x1 & c;
end
always@* begin : NONBLOCKING
y1 <= a & b;
y <= y1 & c;
end
endmodule
Run Code Online (Sandbox Code Playgroud)
这综合为:

两者都被合成为和门,并给出相同的模拟结果,但是当我们检查增量时间输出的变化时,我觉得与阻塞相比,非阻塞更准确地匹配硬件.
我还经历了:IEEE P1364.1/D1.6Verilog®寄存器传输级综合标准草案,它规定了使用非阻塞进行顺序建模,但没有具体使用阻塞来使用Always Block进行组合建模.它说不要在组合语句中混合使用两者(阻塞和非阻塞).
因此,我们不应该在处理纯组合逻辑的总块中使用非阻塞用于组合语句(非顺序/不涉及时钟)
verilog synthesis fpga register-transfer-level system-verilog
在VHDL中我们如何声明输出数组.我知道如何将信号声明为数组,首先声明类型,然后将信号定义为此类型.是否有可能在输出上做同样的事情?