outputer 2022-03-29 11:45 采纳率: 90%
浏览 1958
已结题

关于RAM地址位宽和数据位宽的问题

刚开始接触RAM的设计,对输入输出数据、地址及位宽的概念与关系的理解有点混乱
part 1
从书中看到Verilog定义一个存储器的语法格式为 reg [ 47 : 0 ] mem [ 0 : 255 ];
问题1:[ 47 : 0 ] 是不是可以理解为每一个地址可以存储一个位宽为48bits的数据?
问题2:[ 0:255 ] 是不是可以理解为一共有256个地址可以用来存储数据?
问题3:请问图片里的描述正确吗?

img


问题4:地址本身也要用一组二进制数来表示,那表示地址本身的二进制数的位宽该如何表示呢?
问题5:地址位宽和数据位宽之间有关联吗?如果二者有关联的话,在设计电路的时候应该注意些什么?

  • 写回答

2条回答 默认 最新

  • 老皮芽子 2022-03-29 11:59
    关注

    reg [ 47 : 0 ] mem [ 0 : 255 ];
    问题1:[ 47 : 0 ] 是不是可以理解为每一个地址可以存储一个位宽为48bits的数据? 回答正确
    问题2:[ 0:255 ] 是不是可以理解为一共有256个地址可以用来存储数据? 回答正确
    问题3:请问图片里的描述正确吗? 图片描述正确

    问题4:地址本身也要用一组二进制数来表示,那表示地址本身的二进制数的位宽该如何表示呢?
    reg [ 47 : 0 ] mem [ 0 : 255 ]; //比如这个,地址深度是 256,地址位宽可以是 8
    reg [7:0] mem_addr;
    reg [47:0] mem_dat;
    assign mem_dat = mem[mem_addr];

    reg [ 21 : 0 ] mem [ 0 : 99 ]; //比如这个,地址深度是 100,地址位宽可以是 7 ,数据宽度是 22
    reg [6:0] mem_addr;
    reg [21:0] mem_dat;
    assign mem_dat = mem[mem_addr];

    问题5:地址位宽和数据位宽之间有关联吗?如果二者有关联的话,在设计电路的时候应该注意些什么?
    没啥关系。(大多数用 2 的指数次方来描述数据位宽和地址位宽,用别的数也不奇怪)

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 4月6日
  • 已采纳回答 3月29日
  • 创建了问题 3月29日

悬赏问题

  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
  • ¥15 Windows11, backspace, enter, space键失灵