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也可以综合,但我看网上有人说这种方法综合出来效率很低,谁能给小弟指点一二啊
实在不想用第二种方法,也敲太多代码,太麻烦了
...全文
6118 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
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
  • 打赏
  • 举报
回复
你这是要仿真还是要干什么?

6,163

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 硬件设计
社区管理员
  • 硬件设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧