Lattice Diamond 学习总结---“疑难杂症”杂篇

本文总结了在使用LatticeDiamond软件时遇到的常见错误和警告,包括未使用定义、代码不规范导致的错误以及时序问题。作者通过修正代码结构和理解时序概念解决了这些问题。尽管能在Modelsim下仿真成功,但在LatticeDiamond中编译时仍需要注意代码的完整性和时序约束。提出了在代码层面延迟赋值以规避时序问题的临时方案,并邀请高手提供更优解。
摘要由CSDN通过智能技术生成

Lattice Diamond 学习总结—“疑难杂症”杂篇

Lattice Diamond这款软件我经历许多奇怪的问题,因为这里没有人搞这方面的东西,都是自己摸索前进,遇到问题基本都是靠百度,但是由于这款软件很好人用,比较小众,所以我总结了一下自己的问题,然后写出来,希望能帮助到大家。

问题总结
1、提示错误是:在这里插入图片描述
出现这错误原因有两种:

第一种情况是你真的只是定义但是没有去使用。

第二种情况是因为你的代码不够完善,我的代码是能通过Modelsim仿真得出结果,但是就是编译就会出现这个错误,此时你需要把那些多处赋值和if-else语句那些写规范一点,最好是看一下书,重点看那些讲解时序混款的那部分,我就是简单修改一下就行了。

2、提示错误是:
在这里插入图片描述
这种warning是因为这fre_ok和send_31这两个寄存器在if-else语句被定义“1”后没有其他的赋值就会出现这种情况,所以if-else语句要写好。

3、提示错误是:

在这里插入图片描述

这种warning是因为我代码里是通过count去计数从而控制j的赋值,出现这种问题是因为我设计数后赋值j有问题,比如我设定一个专门的计数器要从0计数到31,但是我设定计数到31后就立马转到0,然后在0的时刻是赋值j 某个数,但是它根本不行,一直卡在0,虽然我在modelsim仿真是可以的,后面研究了许久,在在0时刻后我延长了一个周期赋了一个值j一个值,让它缓解一下,然后再从0开始。我知道这是时序的问题,但是我还是不得搞lattice Diamond的时序约束问题,所以就只能在代码这边延迟一下。如果有高人能提出另一种解决方案,请留言给我。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值