我看到了很多ram和FIFO设计的例子,内存深度总是地址宽度的2倍:
parameter addr_width=4;
parameter ram_depth=1<< addr_width;
为什么?如果地址的宽度等于 4,那么深度应该有 16 种可能性吧?为什么使用2 * 4? 提前谢谢。
我认为您将1<<addr_width
与addr_width<<1
混淆了.结果却大不相同。
1<<addr_width
实际上是 2**addr_width。(或 2^addr_width您喜欢的任何表示法(。