程序参见黑金时序篇一章实验五LUT查表法实验,不同的是LUT我用了一个ROM来实现,word depth 256,word size 16,数据用matlab生成,发现matlab确实好强大,不用操作文件,直接在查看数组的值即可将一堆所需的数据复制出来。最终将问题解决,不是大问题,但力求每次都能从中学到些什么。

  各模块建立初始出现了以下错误:

  1、Error: Can't synthesize current design,Top partition does not contain any logic

  2、Warning: Synthesized away the following node(s):
        Warning: Synthesized away the following DSP element node(s):

  3、Warning: Using design file convert.v, which is not specified as a design file for the current project, but contains definitions for 1 design units and 1 entities in project

  

  本想将错误调出来贴图上来加深印象,但试了几次都是综合成功的就不费事了。整个过程中我找出自身的错误以及所做修改如下:

  1、实例化ROM,自己用向导生成的ROM生成的数据输出是14位的,顶层需要的是16位的,修改为16位宽。

  2、.v文件名和其内实体名字不一样,修改文件名和实体名字一样。

  3、通过Project->Add/Remove file in Project..将自己编辑的文件加载到工程,用不到的从文件列表中移除。

  都是很简单的错误,但叠加到一起就出现了很诡异的警告。。

最后转载wang668的quartus常见错误分析,原文地址:http://home.eeworld.com.cn/my/space.php?uid=271163&do=blog&id=75012

1、Warning (10227): Verilog HDL Port Declaration warning at PRESS_MODELE.v(29): data type declaration for "iR" declares packed dimensions but the port declaration declaration does not.

解释:

2、Warning: PLL "DE2_TV:inst1|Sdram_Control_4Port:u6|Sdram_PLL:sdram_pll1|altpll:altpll_component|pll" output port clk[0] feeds output pin "DRAM1_CLK" via non-dedicated routing -- jitter performance depends on switching rate of other design elements. Use PLL dedicated clock outputs to ensure jitter performance

解释:PLL的输出用在了非专属的PLL_OUT

措施:设计电路板的时候最好将PLL_OUT用在相关的时钟信号上,如果没有使用,则这个警告不理会也可。

3、Warning: Using design file cpu.v, which is not specified as a design file for the current project, but contains definitions for 25 design units and 25 entities in project

解释:模块不是在本项目生成的,而是直接copy了别的项目的原理图和源程序生成的,不是用QUARTUS将文件添加进本项目

措施:无须理会,不影响使用

4、Warning (10240): Verilog HDL Always Construct warning at I2C_V_Config.v(153): inferring latch(es) for variable "LUT_DATA", which holds its previous value in one or more paths through the always construct

解释:信号被综合成了latch,锁存器的EN和数据输入端口存在一个竞争的问题

措施:将计数器从里面抽出来

5、Warning: 12 hierarchies have connectivity warnings - see the Connectivity Checks report folder

解释:实例化的时候,有一些端口没用,让没用的端口的位置空着,

措施:不用理会

6、Warning: Synthesized away the following node(s)

解释:以下节点被综合优化掉

措施:不用理会

7、Warning:Found xx output pins without output pin load capacitance assignment
解释:没有给输出管教指定负载电容

措施:该功能用于估算TCO和功耗,可以不理会,也可以在Assignment Editor中为相应的输出管脚指定负载电容,以消除警告

8、Warning: The following nodes have both tri-state and non-tri-state drivers

解释:该用三态逻辑驱动的信号,被用非三态逻辑驱动了

措施:在子信息中定位到警告所在,改用三态逻辑驱动

9、Warning: Latch DE2_TV:inst1|I2C_V_Config:I2C_AV_Config|LUT_DATA[8] has unsafe behavior

Warning: Ports D and ENA on the latch are fed by the same signal DE2_TV:inst1|I2C_V_Config:I2C_AV_Config|LUT_INDEX[4]

解释:产生了latch

措施:用时序代替组合电路,或者是用完备的if/else,和case语句

10、Warning: TRI or OPNDRN buffers permanently enabled

解释:输出要加三态控制

11、Warning: Output pins are stuck at VCC or GND

解释:这几个输出管脚直接接地了

措施:如果这符合你的设计要求这种警告可以不管

12、Warning (15400): WYSIWYG primitive "DE2_TV:inst1|Sdram_Control_4Port:u6|Sdram_WR_FIFO:write_fifo2|dcfifo:dcfifo_component|dcfifo_21m1:auto_generated|altsyncram_1l81:fifo_ram|altsyncram_drg1:altsyncram5|ram_block6a15" has a port clk1 that is stuck at GND

解释:这里是采用的SDRAM的读写方式为1入2出的模式,将fifo2的输入信号给接GND了

措施:不用理会。

另外:如果出现跟RAM相关的WYSIWYG primitive错误或者是警告,则是RAM的输入端信号不通导致。

13、Warning: Design contains 2 input pin(s) that do not drive logic

解释:有2个输入没有驱动任何逻辑,也就是说,只定义了2个输入管脚,但在逻辑中并没有使用这2个输入信号

措施:将这2个输入管脚的定义去掉即可

14、Warning: At least one of the filters had some problems and could not be matched.

解释:

措施:

15、Warning: Node: XXX was determined to be a clock but was found without an associated clock assignment.

解释及措施:

(1). 这个信号是不是你期望的时钟信号?还是被综合器误将普通信号综合成了时钟信号?有没有在代码中用过这个信号的上升沿/下降沿?
(2). 如果是期望的时钟信号,那么是否有可能调整管脚位置约束到专用时钟管脚?如果不行的话,这条时钟线上的延时会比较大。但是整个布局布线还是可以进行下去的。

16、Warning: PLL "DE2_TV:inst1|Sdram_Control_4Port:u6|Sdram_PLL:sdram_pll1|altpll:altpll_component|pll" is in normal or source synchronous mode with output clock "compensate_clock" set to clk[0] that is not fully compensated because it feeds an output pin -- only PLLs in zero delay buffer mode can fully compensate output pins

解释:

措施:

17、Warning: PLL "DE2_TV:inst1|Sdram_Control_4Port:u6|Sdram_PLL:sdram_pll1|altpll:altpll_component|pll" output port clk[0] feeds output pin "DRAM1_CLK" via non-dedicated routing -- jitter performance depends on switching rate of other design elements. Use PLL dedicated clock outputs to ensure jitter performance

解释:这是说没有使用FPGA专用的PLL输出引脚

措施:同2

18、Warning: Ignored locations or region assignments to the following nodes

Warning: Node "FIELD" is assigned to location or region, but does not exist in design

解释:有些引脚做了分配,但是在设计中没有使用

措施:可以不用理会

19:Warning: Following 1 pins have no output enable or a GND or VCC output enable - later changes to this

connectivity maychange fitting results

解释:下面有1个管脚没有输出使能,或者仅仅是GND,VCC使能

措施:给其配置一个使能即可

20、Warning: Following 4 pins have nothing, GND, or VCC driving datain port -- changes to this connectivity may

change fitting results

解释:同11

措施:同11

21、Warning: The Reserve All Unused Pins setting has not been specified, and will default to 'As output driving

ground'.

解释:所有没有用到的管脚都直接接GND

措施:可以不用理会,也可以在 Assignments 里做修改

转载于:https://www.cnblogs.com/fkl523/p/3407847.html

LUT查表法乘法器所犯下错误。。。。相关推荐

  1. FPGA之道(63)“万能”的查表法

    文章目录 前言 "万能"的查表法 正弦波发生器示例 前言 又好几天没更新了,这就是又停止了读书的节奏,终于在毕业论文可以稍微舒缓下来的时候更新了博客,完成一个系列,读完一本书等等都 ...

  2. 数组---进制转换(查表法)

    package com.shuzu; public class shuzuJinZhiZhuanHuan { * @param a 所要转换的十进制数,b 不同进制所要与(&)的数不同,wei ...

  3. 查表法实现反正切_关于python实现CRC32的应用和总结

    关于python实现CRC32的应用和总结 目前使用的Crc计算包含Crc32和Crc32mpeg2两种计算方式. 循环冗余检验 CRC 差错检测技术能够证明数据是完整的,是无差错的(只是非常近似的认 ...

  4. 空间换时间,查表法的经典例子

    前言 上一篇分享了:C语言精华知识:表驱动法编程实践 这一篇再分享一个查表法经典的例子. 我们怎么衡量一个函数/代码块/算法的优劣呢?这需要从多个角度看待.本篇笔记我们先不考虑代码可读性.规范性.可移 ...

  5. 常用crc查表法_请教查表法计算CRC的原理

    自己写过的, 希望对你有帮助 Cyclic Redundancy Check(CRC) 原理及实现 /// 1: 需求 在数据传送过程中,为了能够进行错误检测, 往往在数据后追加一些检测码, 当接受方 ...

  6. CRC查表法——表的由来及Java实现CRC8校验算法

    转载请标明出处: http://blog.csdn.net/xx326664162/article/details/51718857 文章出自:薛瑄的博客 你也可以查看我的其他同类文章,也会让你有一定 ...

  7. 步进电机S(SigMoid)曲线加减速【查表法】

    首先感谢以下博客的博主提供的参考公式:https://blog.csdn.net/pengzhihui2012/article/details/52228822?locationNum=6 首先在本设 ...

  8. CRC校验查表法原理及实现(CRC-16)

    绪论 在网上浏览了很多关于CRC校验的文章,基本上都是针对CRC校验原理的阐述以及关于CRC校验查表法的实际应用以及具体软件实现方法. 至于查的表是怎么来的,软件为什么要这样实现很多文章并没有说明.本 ...

  9. CRC查表法运算原理

    CRC校验是依据多项式模2运算进行的,这里有两点: 1. 一个二进制串总可以表示为多项式,例如: 10101 表示为  10111 表示为 ,依次类推更长数据的表示方法. 2. 模2运算的基本规则如下 ...

最新文章

  1. python3里的pillow怎么安装_“python安装pillow教程“python3.4怎么安装pil
  2. Django学习记录-1
  3. 浏览器更改实现webstrom等前端编辑器的同步更新
  4. mysql语句性能开销检测profiling详解
  5. java.equal例子_Java中的== 和equals()方法详解与实例
  6. 12届毕业生回顾我的2012年,给2013届同学一点启迪
  7. 连续数字及数字串识别技术
  8. BZOJ_2243 [SDOI2011]染色 【树链剖分+线段树】
  9. 排序 不用order by_Sort Techniques:介绍九种排序算法
  10. React使用详解(学习笔记)
  11. 突发奇想!自动化测试在测试过程中该怎样提升效率?
  12. 苹果本的vscode菜单栏不见了,怎么回事
  13. 8月英语——知耻而后勇
  14. 让WiFi变“4G”?Hotspot2.0来了
  15. 2021年中级消防设施操作员(操作与维护),模拟真题及答案
  16. 「普通人VS程序员」电脑还可以这样关机,神操作 建议阅读
  17. 基于百度paddlehub多种海洋鱼类的智能分类识别
  18. Kali linux修改源文件
  19. 行业认证标准:如何达到DISA ASD STIG规范进行软件开发
  20. 绘制思维导图的技巧与绘制方法

热门文章

  1. 微型计算机原理DL,微型计算机原理练习附解答.doc
  2. Spring在SSH中的角色和作用
  3. linux 共享内存_linux进程间通信----IPC篇(一)----共享内存初识篇
  4. ArcGIS REST API获取切片进度
  5. Unity中使用Protobuffer探讨
  6. C#将DataTable海量数据导出到Excel
  7. 如何营造游戏的打击感
  8. 开源的魔兽世界参考架构——mangos
  9. std::kill_dependency
  10. 计算机一级ftp协议传输,文件传输协议(FTP)必将消亡