Verilog 如何计算位/字节大小?

Verilog 如何计算位/字节大小?,verilog,Verilog,我被位/字节弄糊涂了。我知道8比特等于1字节 然后,在Verilog中,如果输入定义为 输入[31:0]开始 输入[31:0]结束 它们的位大小和字节大小是什么 [31:0]可以代表2^32个案例 显然,我认为每个输入有32位,等于32/8=4字节 然而,ppt说 “开始/结束与8字节对齐(即,[2:0]为零)” 为什么是8字节?为什么这意味着[2:0]是零 谢谢。ppt可能讨论字节寻址。第一个字节的地址是0,第二个字节的地址是1,以此类推 当ppt说 “开始/结束与8字节对齐(即,[2:0]为

我被位/字节弄糊涂了。我知道8比特等于1字节

然后,在Verilog中,如果输入定义为

输入[31:0]开始

输入[31:0]结束

它们的位大小和字节大小是什么

[31:0]可以代表2^32个案例

显然,我认为每个输入有32位,等于32/8=4字节

然而,ppt说

“开始/结束与8字节对齐(即,[2:0]为零)”

为什么是8字节?为什么这意味着[2:0]是零


谢谢。

ppt可能讨论字节寻址。第一个字节的地址是0,第二个字节的地址是1,以此类推

当ppt说

“开始/结束与8字节对齐(即,[2:0]为零)”

这意味着地址是8的倍数,即
start
end
可以是0、8、16、…,但不能是3

如果将8的倍数表示为二进制数,则最低有效3位始终为0,如下所示:

0  == 'b00000
8  == 'b01000
16 == 'b10000
24 == 'b11000
...
这就解释了

[2:0]是零


背景非常重要,所以什么是“ppt”。我怀疑ppt讨论的是寻址一个地址必须位于8字节边界上的内存。在这种情况下,LS 3地址位[2:0]必须为零。(例如,进行64位(8字节)宽传输时使用AXI)