一:错误原因,顶层信号声明类别错误 错误前 更改后 二:综合时警告 更改前: 错误原因:调用子模块时 输出端口只能用wire类型变量进行映射 这是verilog语法规定的 tx_done在uart_tx模块中初始化时的赋值是0,send_en需要在初始化后置为1.而我这样写,初始化后send_en仍然是0,逻辑出现问题.需要将tx_done取反后再赋值.这样逻辑就正确了.再次综合后就没有这个警告了  三:this signal is connected to multiple drivers错误…
前言 Verilog是一种硬件描述语言(HDL),该语言在Windows上有集成开发环境可以使用,如ModelSim,但ModelSim的编辑器不太好用因此笔者萌生了用Sublime Text3来编写Verilog的想法.下面我们将围绕着Sublime Text3搭建起一个简易的IDE, 我将尽量把步骤写的细致一点,这将会使整个过程看起来很繁琐,但这是值得的. 原材料 Sublime Text 3(访问密码:a7c6) icarus-verilog-on-windows (访问密码:7528)…
实现的功能: 首先第一步 在官方下载layer的文件.layUI官网:http://layer.layui.com/     http://layer.layui.com/ layer文件的下载步骤如下: 然后将完整的layer文件复制在你当前的项目.如下: 引入jquery.js和layer.js,注意:jQuery.js必须在layer.js前面而且jquery.js必须是1.8版本或者以上的 <script type="text/javascript" src="…
在myeclipse配置flex插件后,可能会产生快捷键的冲突,或者快捷键设置被修改的情况,本文探索其解决办法 在卸载flex插件后,myeclipse的快捷键设置并不会自动还原,这需要我们手动设置. 1.卸载flex插件 打开myeclipse安装目录,找到包含flex插件卸载文件的文件夹,卸载之. 2.点击打开window --> Preferences --> Keys , 找到Content Assist ,设置快捷键为 "Alt + /" ;找到 Word Com…
•    信号可以分为端口信号和内部信号.出现在端口列表中的信号是端口信号,其它的信号为内部信号. •    对于端口信号,输入端口只能是net类型.输出端口可以是net类型,也可以是register类型.若输出端口在过程块中赋值则为register类型:若在过程块外赋值(包括实例化语句),则为net类型. •    内部信号类型与输出端口相同,可以是net或register类型.判断方法也与输出端口相同.若在过程块中赋值,则为register类型:若在过程块外赋值,则为net类型. •   …
代码和硬件之间的映射关系是一个很奇妙的过程,也展现出人类的智慧.单片机内部的硬件结构都是固定的,无法改变,我们通过代码操作着寄存器的读写,来执行各种复杂的任务.FPGA的硬件结构并不像单片机一样是固定好的,而是由更加原始的基本逻辑单元构成,我们需要用HDL语言来描述我们要实现的功能,而并不需要关心硬件的结构是如何构建的,我们通过使用FPGA厂商的综合器来将HDL所描述的功能代码映射到我们的FPGA基本逻辑单元上,而这个映射的过程是综合器帮我们自动完成的,我们并没有直接用语言去操作这些基本逻辑单元…
问题: 在Vim使用了syntastic后,编写代码时,可以对代码错误和警告进行相对实时的了解,对编写代码有很大的帮助.同时这个插件和python-mode一起工作时,可以对python代码的编写提供指导的作用(其中有不少对代码规范的提示),不过有的时候一些多余的警告总是让人无所适从,如 ~/test.py |7 col 1 error| W0401 'from parameters import *' used; unable to detect undefined names [pyflak…
js作为客户端语言(当然它也可以作服务端语言),非常强悍,一般情况下,我们都是在开发阶段不停的改,然后上线之后就作为稳定运行的代码. 然而有时候可能因为js写得有问题,导致上线后,某些功能无法使用,这就悲催了,而且一般的公司上线应该都不会很容易. 那么对于这种js一类的修改,如果能在本地临时生效,做一些紧急问题的修复,就很重要了.(我也是遇到这个坑,只要把这次临时问题修复,等下一个功能代码要上线时,再修复也是可以的) 那么,怎样做到本地修改js文件,从而达到代码运行ok的效果呢? 本文将会给出多…
现象一: module.js:557     throw err;     ^ Error: Cannot find module 'puppeteer'  at Function.Module._resolveFilename (module.js:555:15) at Function.Module._load (module.js:482:25) at Module.require (module.js:604:17) at require (internal/module.js:11:1…
Verilog代码规范I "规范"这问题 "规范"这个富含专业气息的词汇(个人感觉),其实规范这种东西,就是大家都约定熟成的东西,一旦你不遵守这个东西,专业人士就会觉得你不够专业,特别是程序开发方面的问题. 为什么要规范呢?一方面能体现你足够专业,另一方面也是最重要的一方面,代码的规范性有利于开发交流,让代码的可读性大大增强,也有利于降低代码的出错率. 网上关于EDA设计方面的代码规范问题的资料,以前开发的时候都没有养成一个很好的代码规范,在大的项目工程中,这方面的…