verilog
文章平均质量分 94
superyan0
目前就职于某芯片公司,擅长IC前端(FPGA)设计验证等,个人积累了大量ip,商业合作可联系我的qq:549335336。
展开
-
system verilog 标准阅读笔记-IEEE Standard for SystemVerilog
SystemVerilog是建立在IEEE Std 1364之上的。SystemVerilog提高了基于Verilog的代码的生产率、可读性和可重用性。SystemVerilog中的语言增强提供了更简洁的硬件描述,同时还提供了使用现有工具进入当前硬件实现流的简单路径。这些增强还为定向和约束随机测试台开发、覆盖驱动验证和基于断言的验证提供了广泛的支持。本标准中使用的惯例这个标准被组织成条款,每个条款侧重于语言的特定领域。每个子条款中都有子条款来讨论各个构造和概念。讨论从介绍和可选的构造或概念的基本原理原创 2020-05-26 09:22:26 · 2485 阅读 · 0 评论 -
仿真脚本打印log信息
在用modelsim或者vcs仿真的时候,可以将特别关注的数据打印出来,便于debug,省去了看波形的时间,对于大位宽大数据流数据观测非常方便。1、$fopen("<文件名>");//打开文件名文件或者如果没有回自动新建文件名文件,同时会将文件内容清空。2、设置写入条件使用$fdisplay(文件名,"写入内容");//将数据写入上一步打开的文件中。...原创 2020-02-28 17:14:58 · 1204 阅读 · 1 评论 -
verilog generate的使用
之前一直在排斥对generate的使用,认为这种类似于c语言中for的循环语法并不适用于FPGA设计,因为FPGA实际上还是硬件,循环N次,就会映射N个同样的模块到FPGA,也就是多消耗的N倍的资源,为了节约资源多都会选择复用的方式来处理类循环数据。但是殊不知在处理循环数据的时候还是会消耗一定的资源以及逻辑调试的时间成本(同时也可能买下bug),最终可能也节约不了多少资源,而且相比于处理逻辑,...原创 2019-01-24 09:54:01 · 8167 阅读 · 0 评论 -
verilog 连续赋值驱动能力配置
在调试iic(mdio)接口的时候发现时钟和数据管脚默认都是输出低电平,但是实际上我在逻辑中都是分别赋值为高阻态,为什么选通输出后就变低了呢?解释一下公司的测试接口是iic和mdio,由于都是2wire,所以需求是根据协议可以自由切换接口,也就是说同一对接口要兼容两种不同的协议,同时数据线又是inout型,所以选通赋值有些复杂,但是也不难。平台使用的是cyclone IV 器件,所以用sign...原创 2019-03-05 15:55:34 · 1510 阅读 · 0 评论 -
Ultrascale+ GTY transceivers Quad pll
每个Quad 包含两个基于LC的PLL,称为Quad PLL(qpl0和qpl1)。任何一个QPLL都可以由同一个四路中的串行收发器信道共享,但不能由其他四路中的信道共享。当以高于CPLL工作范围的线路速率操作信道时,需要使用QPLL0/1。gtye3/4_common原语封装了gty qpll0/1,并且在使用qpll时必须实例化。当信道运行速度超过16.375 GB/s时,QPLL0必须使...原创 2019-03-27 15:50:32 · 2621 阅读 · 3 评论 -
notepad++ verilog 主题备份
在公司逻辑电脑上配置了一个比较舒服的notepad++主题和样式,以及常用的扩展名,但是到其他电脑是就要重新设置,比较烦,然后寻求配置备份方法。在 %AppData%\Roaming\Notepad++\themes路径下,保存了所有的主题,找到我自己配置的主题Chcoc,打开一看,确实是我配置的参数,拷贝出来,移植到其他电脑的对应路径下。完美移植!最后附上我自己的主题配置,赋值一下文件...原创 2019-05-10 10:56:04 · 1102 阅读 · 0 评论 -
Quartus关联Notepad++
本文其实不仅限于Quartus关联Nopepad++,其他编译器UltraEdit等,也都可以安装如下方式配置。Quartus下点击菜单Tools -> Options。2、在Preferred Text Editor -> Text Editor选项框里选择Notepad++。如图3、在Notepad++的图标右键属性->快捷方式4、复制目标中的路...原创 2019-05-29 13:53:28 · 5435 阅读 · 0 评论