集成电路技术分享

 找回密码
 我要注册

QQ登录

只需一步,快速开始

搜索
查看: 6874|回复: 15

verilog语法错误,请大侠指点

[复制链接]
CHANG 发表于 2010-6-26 01:14:26 | 显示全部楼层 |阅读模式
本帖最后由 fpgaw 于 2010-7-18 09:55 编辑

reg [63:0] memA [0:63];
initial
begin
$readmemh ("irom.txt",memA);     
end
integer i;
initial
begin
    for(i=0;i<64;i=i+1)
    begin
        force A.B.C.D.memB[0]=memA[0];
    end
   
end
memB也是 和 memA一样的REG。
但是编译出现错误:illegal use of a bit-select or part-select
不知道怎么写?我是给MEM初始化。
CCIE 发表于 2010-6-26 02:43:04 | 显示全部楼层
我学的是HDL语言
ngtim 发表于 2010-6-26 03:01:37 | 显示全部楼层
reg [63:0] memA [0:63];是存储器,不支持位选择
longtime 发表于 2010-6-26 03:38:59 | 显示全部楼层
好像是楼上说的那样!
usb 发表于 2010-6-26 05:25:59 | 显示全部楼层
initial<br>
试试:<br>
begin<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;for(i=0;i&lt;64;i=i+1)<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;begin<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;A.B.C.D.memB=memA;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;end<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<br>
end<br>
<br>
注意一下B的定义:<br>
应该也是:<br>
reg [63:0] memB [0:xyz];
usd 发表于 2010-6-26 06:15:58 | 显示全部楼层
reg [63:0] memA [0:63] 这个写法是没问题的,这种写法也绝对支持位选择,这在testbench中是经常用到的。至于force的用法,呵呵,还没接触过,等着楼下讲解:)
CTT 发表于 2010-6-26 06:39:25 | 显示全部楼层
force语句不能综合吧。
CCIE 发表于 2010-6-26 08:07:19 | 显示全部楼层
直接<br>
force MemB[0] = MemA[0];<br>
就可以了&nbsp;&nbsp;不能按位也不用安位赋值
interi 发表于 2010-6-26 09:59:28 | 显示全部楼层
学习中,zhang'jian'shi
ATA 发表于 2010-6-26 11:11:53 | 显示全部楼层
A.B.C.D.memB=memA;<br>
请问这是什么意思啊?
您需要登录后才可以回帖 登录 | 我要注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

QQ|小黑屋|手机版|Archiver|fpga论坛|fpga设计论坛 ( 京ICP备20003123号-1 )

GMT+8, 2025-5-7 04:25 , Processed in 0.079713 second(s), 19 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表