发 帖  
原厂入驻New
申请华秋企业认证 多层板首单免费打样!
30s提交资料,10分钟通过审核(免费赔付+顺丰包邮)>>立即报名
[问答] 请问GLCM verilog代码不能正常工作该怎么办?
56 Verilog for循环
分享
嗨..,
我创建了一个程序,用于使用for循环计算GLCM,如果系统verilog中的条件,但它不能正常工作,这里我附上我的代码请参考并给我一个解决方案,有可能合成systemverilog ... ???
GLCM.sv 1 KB
0
2019-11-11 15:28:36   评论 分享淘帖 邀请回答

相关问题

5个回答
嗨,
从您的其他线程中您已经知道,只有最新的VIVADO版本才能合成System Verilog代码。
你的代码是写一些软件实现的算法。
不好的尝试,你现在在做硬件。
您的数据存储在某些RAM中(我从您的其他线程中了解到有关coe文件的使用情况)。
那里的图片只能逐像素地访问,所以没有直接的方法来访问9字节的2D数据阵列。
您需要一些其他模块在九个时钟周期内完成读取以填充数据字段,或者您的GLCM模块需要直接管理对存储在RAM中的像素的访问。
此外,这些嵌套循环将在大量解码和加法器逻辑中展开,因为您希望在一个时钟周期内完成所有这些循环。
这将成为一些缓慢的模块,严重降低系统性能。
我认为您应该阅读有关顺序设计技术,流水线技术,FSM等的一些内容,并尝试了解综合工具如何将硬件描述转换为逻辑。
虽然今天的工具有一些很棒的功能,但它们实际上并没有创造奇迹。
:-)
有一个很好的综合 
Eilert
2019-11-11 15:48:02 评论

举报

除了在输入和输出端口中使用数组之外,这个模块中没有任何东西在Verilog 2001中无法做到。我注意到你的循环包含一些超出范围的数组索引(你在哪里使用[x
+1]和[y + 1])可以解释为什么代码“无法正常工作”。
- Gabor
2019-11-11 15:54:46 评论

举报

有没有其他方法来表示256位8位值形成阵列结构来比较对角线值???
2019-11-11 16:08:18 评论

举报

lalithaparameswari写道:
有没有其他方法来表示256位的8位值来形成阵列结构来比较对角线的值???
我不确定我是否跟你说过。
您的代码似乎只适用于3乘3的数据。
你的256个值来自哪里?
另外我在你的代码中注意到这一行: 
计数
可能想成为: 
count = count + 8'b00000001;
否则你实际上并没有计算匹配,只是在循环中有任何匹配时将count设置为1,因为非阻塞赋值不会在循环内更新计数,只有在整个循环完成之后。
- Gabor
2019-11-11 16:19:53 评论

举报

谢谢你先生,我得到了答案,但这[7:0]数据[0:2] [0:2]不会合成,在这种情况下我能做什么先生,因为我在系统verilog中做了这个程序,这是
没有合成???
2019-11-11 16:39:23 评论

举报

只有小组成员才能发言,加入小组>>

52个成员聚集在这个小组

加入小组

创建小组步骤

关闭

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

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