outputer 2022-04-23 15:52 采纳率: 90.9%
浏览 27
已结题

一个关于存储器赋值的小问题

目的:我的目的是想将mem的每一个地址所存的数据全部赋值为“0000_0001”。
出现错误

img


修改方法:把“1'b1”改为“8‘d1”就可以了
问题:请问为什么写成“1'b1”会导致mem中只有第一个地址被赋值,而且是255而不是1呢?即赋值符号左右两侧位数不对,但是赋值的时候不是会将右侧的高位自动补0吗?

  • 写回答

2条回答 默认 最新

  • 老皮芽子 2022-04-24 14:53
    关注

    在 for 中对数组赋值时会有些不一样的变化
    for 按赋值的位宽对步长做调整。这只针对for 中赋值的常数
    给你贴点代码和对应的图,帮助你对这东西的理解

    reg    [3:0]    xx;
    reg    [7:0][7:0]    mem_xxx1;
    reg    [7:0][7:0]    mem_xxx2;
    reg    [7:0][7:0]    mem_xxx3;
    reg    [7:0][7:0]    mem_xxx4;
    initial
    begin
        #1000
        for(xx=0;xx<4;xx=xx+1)
        begin
            mem_xxx1[xx]    <= 1;
            mem_xxx2[xx]    <= 12'b0_1111_1111;
            mem_xxx3[xx]    <= 1'b1;
            mem_xxx4[xx]    <= xx;
        end
    end
    
    

    img

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

报告相同问题?

问题事件

  • 系统已结题 5月8日
  • 已采纳回答 4月30日
  • 创建了问题 4月23日

悬赏问题

  • ¥15 有人会SIRIUS 5.8.0这个软件吗
  • ¥30 comsol仿真等离激元
  • ¥15 静电纺丝煅烧后如何得到柔性纤维
  • ¥15 (标签-react native|关键词-镜像源)
  • ¥100 照片生成3D人脸视频
  • ¥15 伪装视频时长问题修改MP4的时长问题,
  • ¥15 JETSON NANO
  • ¥15 VS开发qt时如何在paintgl函数中用pushbutton控制切换纹理
  • ¥20 关于 openpyxl 处理excel文件地问题
  • ¥15 MS中不知道高分子的构型怎么构建模型