一、占空比50%的奇数分频 1、实现思路 实现奇数(N)分频,分别用上升沿计数到(N-1)/2,再计数到N-1;用下降沿计数到(N-1)/2,再计数到N-1,得到两个波形,然后把它们相或即可得到N分频。 2、代码 3、仿真波形 ...
分类:
其他好文 时间:
2018-12-02 12:15:48
阅读次数:
363
reference:https://www.cnblogs.com/bettty/p/5285785.html Abstract 本文介绍UVM框架,并以crc7为例进行UVM的验证,最后指出常见的UVM验证开发有哪些坑,以及怎么避免。 Introduction 本例使用环境:ModelSim 10 ...
分类:
其他好文 时间:
2018-12-02 10:27:14
阅读次数:
233
https://mp.weixin.qq.com/s/rXYqiZKuBpAYL8R94zxgRA Chisel允许用户根据需要,把基本数据类型组合成为复合数据类型使用。如C语言里面的结构体,这样可以极大的简化Verilog中输入输出接口的声明和使用。 复合数据类型相关的类如下: ?? 其中: 1. ...
分类:
其他好文 时间:
2018-11-30 21:48:07
阅读次数:
553
Verilog 常见错误汇总 1.Found clock-sensitive change during active clock edge at time <time> on register "<name>" 原因:vector source file中时钟敏感信号(如:数据,允许端,清零,同步 ...
分类:
其他好文 时间:
2018-11-30 11:22:57
阅读次数:
182
https://mp.weixin.qq.com/s/bSrM-wLRn7O_75xYKeoaEQ Chisel中的基本数据类型,不是Verilog中的Wire和Reg。Wire和Register只是数据的容器,而非数据本身。所以Chisel中的数据类型抽象层次更高一些,更关注数据的行为和组织形式的 ...
分类:
其他好文 时间:
2018-11-30 00:38:31
阅读次数:
369
当对目标模块进行RTL描述后,习惯先会用Modelsim做一下功能仿真。当我们写好Tensbench文件,直接在Modelsim SE中对源文件(design和Testbench)进行编译时,如果源文件中存在相应的语法错误或者逻辑错误,一般都会提示错误大概存在于哪一行,我们找到对应的行修改代码就行了 ...
分类:
其他好文 时间:
2018-11-27 14:38:37
阅读次数:
260
从下到上的方式 1.首先先创建子图,完成子图的设计 2。右键,选择图纸操作,选择图纸或HDL文件生成图表符 3.对顶层图的端口进行调整,进行总线等,进行构建连接关系 4.编译检查 生成PDF 1.文件菜单,选择智能PDF按教程使用 2.生成的PDF文件支持每个原器件和引脚网络标号的查询 生成PCB ...
分类:
其他好文 时间:
2018-11-25 17:44:35
阅读次数:
213
经验: 1.连线和修改ip很麻烦。最好把所有verilog放到一个工程里,先不生成ip,先用add module放到画板上会快很多,还不容易混ip(因为名字真的很难起) 遇到的问题: 1.导入SDK出现找不到文件头:这是因为sdk的库不在安装目录,而在工程目录,所以板子有些接口不开通的话是不会包含这 ...
分类:
其他好文 时间:
2018-11-24 14:29:22
阅读次数:
197
这里记录一下曾经用到的简单的测试模板,如下所示: 整个测试模块(结构)很简单,并没有结果捕捉模块,因此如果有错的话,并不会打印出来,需要在波形中查看,仅限于简单模块使用。 另外一个简单的verilog测试模板结构如下所示: 这些结构都没有给出具体的内容。有空补上一个简单的例子。 ...
分类:
其他好文 时间:
2018-11-22 02:43:28
阅读次数:
106
1 关于参数定义 Parameter:parameter只能定义在端口生命的前面,如 Input[whith:0] a; Parameter whith=4; 这样的参数定义出现在声明的后面会报错 2 关于always块 always块不仅可以描述时序逻辑,也可以描述组合逻辑 如wire a,b; ...
分类:
其他好文 时间:
2018-11-20 21:45:18
阅读次数:
186