vivado bram 中的 width 与 depth 设置注意事项

1、widthdepth 的设置起始范围

width : 1~4608(固定不变)

depth : 2~1048576(随着width设置的值会改变)

2、当不勾选 byte write enable

write width 可在1~4608内随意设置。

write depth 的值也可以随意在2~1048576中进行设置。

a) write width 是 2 整数倍或 write depth 2 的整数倍时,

read width 需要为 write width 的倍数,且也不能超过4608。比 write width 小的最多为5个,大的最多为5个。例:

当write width = 16时,read width 可在[1,2,4,8,16,32,64,128,256,512]进行选择。此时比16小的有4个数,比16大的有5个数。
当write width = 64时,read width 可在[2,4,8,16,32,64,128,256,512,1024,2048]进行选择。此时比64小的有5个数,比64大的有5个数。

b)当 write width write depth 都不是2的整数倍时,

read width只能是其自身

read depth 的值不能自己进行设置,其关系式为 write width * write depth = read width * read depth 。

c)当 write width 数值变化时,write depth 的范围也在随之变化

def check_w_depth_available(write_width,write_depth):
    n = [0,0]
    n[0] = math.ceil(math.log2(write_width))
    print("n[0] = ",n[0])
    if (write_width <= 128):
        n[1] = 0
    elif(2048 < write_width <= 4608):
        n[1] = 5
    else:
        n[1] = n[0] - 7
    write_depth_max = int(1048576 / (2 **n[1]))

3、当勾选 byte write enable 时,byte size可为 8 9 .

write width 可在1~4608内随意设置,但必须为 byte size的整数倍。

write depth 可以不是 byte size 的整数倍。

a)当write depth 不是 byte size 的整数倍时

read width只能是其自身

b)当write depth2 的整数倍时

write width 小的最多为2个,大的最多为2个

 

 

  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值