verilog中寄存器数组赋值问题

绿茶盖儿 2012-10-03 12:43:14
寄存器数组reg[127:0]arry[0:150], 计数变量reg[6:0]cnt;
要给arry赋值有两种方法
1. arry[cnt] = xxx;
2. case(cnt)
0: arry[0] = xxx;
1: arry[1] = xxx;
2: arry[2] = xxx;
...
endcase

显然第一种方法更方便,ISE12.4也可以综合,但我看网上有人说这种方法综合出来效率很低,谁能给小弟指点一二啊
实在不想用第二种方法,也敲太多代码,太麻烦了
...全文
4945 6 打赏 收藏 举报
写回复
6 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
Quant_1989 2013-07-17
  • 打赏
  • 举报
回复
根本就不用自己敲用c语言生成即可 #include<stdio.h> #include<stdlib.h> int main() { FILE *fd; int k; fd=fopen("map.txt","w+"); if(!fd){ printf("打不开文件!\n"); return EXIT_FAILURE; } for(k=0;k<cnt;k++) { fprntf(fd,"\t%d:\tarray[%d]=****",k); } return EXIT_SUCCESS; }
Binzo 2012-10-18
  • 打赏
  • 举报
回复 1
时钟触发

循环151次{ arry[cnt] <= xxx;}

这样是并行幅值的,必然快啊。
durant 2012-10-11
  • 打赏
  • 举报
回复
设计还是用ram比较好的吧
没有这么用过
绿茶盖儿 2012-10-10
  • 打赏
  • 举报
回复
不是仿真,是设计,如果是仿真我就不纠结了[Quote=引用 1 楼 的回复:]

你这是要仿真还是要干什么?
[/Quote]
durant 2012-10-09
  • 打赏
  • 举报
回复
你这是要仿真还是要干什么?
相关推荐
发帖
硬件设计

6011

社区成员

硬件/嵌入开发 硬件设计
社区管理员
  • 硬件设计社区
加入社区
帖子事件
创建了帖子
2012-10-03 12:43
社区公告
暂无公告