Verilog
文章平均质量分 93
小何的芯像石头
什么都不懂,小白一个
展开
-
芯片验证学习随记1-随机约束,线程与UVM组件
分享常见写法,以便工作查询使用。原创 2023-03-27 01:13:24 · 773 阅读 · 0 评论 -
多 bit 数据流传输&FIFO-跨时钟域处理(2)
FIFO 的下游节点是 FIFO 的数据输出端,当读信号有效时,FIFO 中的数据将被读出,由 FIFO 内部的读指针控制,并且在 FIFO 内部读指针递增一个单元,同时 FIFO 空信号(FIFO empty Signal))将控制下游节点是否读出数据。此时,读地址已经读过的地址空间,再一次被写地址写入。当读写地址相等时,说明已经写入的数据,已经全部被读走,此时,FIFO 还尚未有新的数据写入,说明 FIFO 为空,这种情况发生在复位操作时,或者当读地址读出 FIFO 中最后一个字后,追赶上了写地址。原创 2022-10-20 19:48:00 · 996 阅读 · 0 评论 -
同步电路与亚稳态-跨时钟域处理(1)
电平同步器,输入信号必须保持两个接受时钟周期宽度,每一次同步之后,输入信号必须恢复到无效状态。边沿检测同步器,适用于低频时钟域向高频时钟域传输,输入信号必须保持两个接受时钟周期宽度。脉冲检测同步器,适用于高频时钟域向低频时钟域传输,输入的脉冲时间的距离必须保持两个接收时钟周期以上。结绳就是将单脉冲延长,以方便采集到数据。利用脉冲的边沿做时钟;利用脉冲的电平(部分场合要求最小脉冲宽度)做选择器或者异步复位,置位。另外的关键点就是什么时候结绳结束(采集到了数据就要让对方回到初始状态)原创 2022-10-19 21:24:06 · 486 阅读 · 0 评论 -
RTL设计指导原则-面积与速度互换
来完成的,也就是说通过占用更多的芯片面积来实现高速处理。设计示意图如所示。原创 2022-10-08 18:47:31 · 737 阅读 · 1 评论 -
在RTL书写中如何考虑延迟,面积等
其功能是根据门级网表的描述实现各个单元的连接布局(placement)是芯片设计中。原创 2022-10-08 18:46:18 · 642 阅读 · 0 评论 -
如何书写高质量Verilog代码
来自中国大学MOOC上西南交通大学的慕课《芯动力-硬件加速设计方法》,这里放的是笔者的一些学习笔记,示例代码修正等,以下是他们的课程大纲,有兴趣的朋友也可以看看。latch由电平触发,非同步控制.在使能信号有效时,latch相当于通路,在使能信号无效时latch保持输出状态。笔者会集中在第二到第五章,也就是具体的设计部分,后续也会陆续更新别的关于IC设计相关的东西。综合器很难解释latch,因此,除非特殊用途,一般避免引入latch.如图,假设A来得比较晚,就可以将其尽可能放在后面,隐藏踏得延迟。原创 2022-10-08 18:43:48 · 732 阅读 · 1 评论 -
图像流AXI-Stream生成BMP文件
- 将图像AXI-Stream流转换成BMP文件格式流输出- 此模块为可综合设计!后续或许可以通过这种方式走pcie把图像回传或存在SD卡中。- 此模块处理为固定图像大小,想根据AXIS流调整大小的可以自行改改原创 2022-04-25 18:40:32 · 789 阅读 · 1 评论 -
Verilog读取BMP图片并接入AXI-Stream仿真附DocNav的拙劣使用指南
在本文中,你将能看见:BMP文件解析后,粗糙的Verilog仿真搭建AXI-Stream验证IP拙劣的DocNav使用指南原创 2022-04-21 13:30:55 · 5529 阅读 · 6 评论 -
BMP文件格式解析(带颜色表)及Verilog的AXI-Stream接入仿真(一)
在本文中你将可能看到1. :带颜色表(掩码)的BMP文件解析 2.Verilog读取BMP文件并输出rgb888格式到文件(非AXIS)其中,rgb1,rgb4,rgb8,rgb888经验证,rgb2, rgb565,rgb555,rgb32(argb), rgb16(bit fields)写了代码没验证。原创 2022-03-23 23:04:15 · 4032 阅读 · 1 评论 -
AXI协议(六) Axi-Stream接入实例及小总结
AXI协议(六) Axi-Stream接入实例及小总结在这节中,你将可能看到:一个普通的摄像头接口介绍摄像头数据转AXI-Stream的接入实例关于AXI4协议暂时性的总结文章目录AXI协议(六) Axi-Stream接入实例及小总结文前声明普通摄像头的硬件模块基本思路和问题实现思路问题解决思路代码解析像素格式对齐将同步位和像素数据转成axis的"初步格式"加入异步fifo加点魔法AXI4简要总结小结文前声明本文所举例来自黑金的ov5640摄像头驱动代码,开发板是zynq系列的,本文仅原创 2021-08-28 14:42:31 · 6234 阅读 · 3 评论 -
AXI协议(五)-AXI-STREAM及接入思路解析
AXI协议(五)-AXI-STREAM及接入思路解析在本文中,你将可能学会:AXI-STREAM协议的梗概(下简称axis)尝试编写出普通摄像头接入AXIS的思路本来想讲完怎么接入的,由于篇幅的原因,代码只能留在下一节中讲了,那我们下一节也顺便为这个系列做个简单的收尾吧。文章目录AXI协议(五)-AXI-STREAM及接入思路解析AXIS概述与异同处AXIS数据流的去向问题(省)AXIS数据字节类型及流格式字节流(Byte stream)连续对齐流(Continuous aligned str原创 2021-07-08 20:04:57 · 10733 阅读 · 4 评论 -
AXI协议(四)-AXI-FULL从机xilinx示例代码解析
AXI协议(四)-AXI-FULL从机xilinx示例代码解析在本文中,你将可能学会:一个简单的AXI协议接口怎么写AXI-Full一次传输业务的代码过程本文的重点应该在地址的计算和RAM的生成和读写过程。本文大图较多,微信太糊的话建议看博客。文章目录AXI协议(四)-AXI-FULL从机xilinx示例代码解析代码获取设计任务省略部分端口说明地址计算WRAP地址计算AW通道写通道写响应通道AR通道读通道RAM的生成和读写过程RAM地址管理RAM生成和控制为什么会这样选择?小结参考资料代原创 2021-06-10 21:24:35 · 2943 阅读 · 4 评论 -
AXI协议(三)-AXI-FULL概述及传输事务
AXI协议(三)-AXI-FULL概述及传输事务在本文中,你将可能学会:AXI-FULL协议的梗概AXI-Full一次传输业务的过程由于AXI协议的复杂,下面的内容可能在后面才会介绍到:乱序和穿插机制(包括ID)锁定(lock)和独占(exclusive)机制缓存(cache和buffer)机制QOS和REGION机制本文会专注于传输,上面的会专开别的文章介绍,下称AXI-Full为AXI由于篇幅关系,代码会放在下一篇文章目录AXI协议(三)-AXI-FULL概述及传输事务A原创 2021-06-05 14:52:59 · 3106 阅读 · 2 评论 -
AXI协议(二)-AXI-Lite主机解析及仿真
AXI协议(二)-AXI-Lite主端解析及仿真文章目录AXI协议(二)-AXI-Lite主端解析及仿真生成Master Axi-Lite示例IPMaster IP代码解析状态机控制解析初始状态init_txn_pulse写状态writes_done读状态reads_done比较状态compare_done状态机小结AXI-Lite Master协议解析写地址通道写通道写响应通道AXI协议实现总结仿真完整工程建立仿真流程小结在这一篇中,你将可能学会:AXI-Lite主端的示例代码理解如何自定义自己原创 2021-04-20 19:24:55 · 2859 阅读 · 6 评论 -
AXI 总线入门(一)通道握手-AXI-Lite
AXI 总线(一)通道握手-AXI-Lite文章目录AXI 总线(一)通道握手-AXI-Lite关于本系列教程什么是AXI协议AXI读写通道AXI读过程AXI写过程单一通道的握手VALID 信号先到READY信号先到READY和VALID同时到达原则性问题AXI-Lite总线实现解析生成一个AXI(-Lite)外设整体端口信号解析A(ddr)W(rite)通道握手S_AXI_AWREADY,S_AXI_AWVALID地址锁存 AW_addrS_AXI_AWPROTW(rite)写通道S_AXI_WVALI原创 2021-04-13 01:14:36 · 3699 阅读 · 2 评论 -
Verilog 2.0 完成你的第一款数字芯片设计?
Verilog 2.0 完成你的第一款数字芯片?文章目录Verilog 2.0 完成你的第一款数字芯片?前期准备CD4000功能描述代码和RTL验证Step 1 语法CD4002功能描述代码与RTL验证Step 2 语法CD4025功能描述代码与RTL验证Step 3 语法CD4085功能描述代码与RTL验证Step 4 语法CD40147代码及RTL验证?Step 5 语法小结及“作业?”在本节中,你将 有可能学/做到:通过教程实现在数电课程中所用到的CD4000芯片学会组合逻辑电路的(部分)硬原创 2021-03-30 19:55:31 · 697 阅读 · 1 评论 -
Verilog 1.0常用CD4000系列标准数字电路及其框图
Verilog 1.0常用CD4000系列标准数字电路及其框图在这篇中,你将可能学/看到:常用的CD4000系列标准数字芯片及其框图这是一篇收集类文章,看懂里面的电路,可以验证一下大家的数电基础这篇文章是后面教FPGA所用到的例程,如果有看不懂的要自己学学辣!也欢迎大家提前先用Verilog去自己“做”一些芯片_CD4000 双3输入端或非门+单非门CD4001 四2输入端或非门CD4002 双4输入端或非门CD4006 18位串入/串出移位寄存器C原创 2021-03-23 21:47:41 · 5937 阅读 · 0 评论 -
Verilog0.2:跑通第一个Vivado工程
Verilog0.2:跑通第一个Vivado工程在本文中,你将能学会:学会基本使用Vivado学会一些FPGA开发中的基本概念用VScode代替Vivado写代码接触到管脚约束及其细节文章目录Verilog0.2:跑通第一个Vivado工程基本概念新建工程Vivado开始开发使用Vscode作为Vivado文本编辑器Vivado使用流程综合&实现引入管脚约束,看RTL图和生成Bitstream结语基本概念这里会以验证环境为由,顺便讲讲在FPGA开发中的几个基本概念:这里以PC原创 2021-03-14 22:17:57 · 1915 阅读 · 0 评论 -
Verilog0.1 搭通Vivado2018.3和Modelsim10.4开发环境
Verilog0.1 搭通Xilinx2018.3和Modelsim10.4开发环境文章目录Verilog0.1 搭通Xilinx2018.3和Modelsim10.4开发环境下载所需安装包安装Vivado2018.3安装modelsim10.4结语下列内容建议有空在电脑端操作时阅读,如果环境已经搭建好了,可以直接跳到下一篇。下载所需安装包这里仅给出版本号,如真找不到,可在私信我:Vivado2018.3开发Xilinx家FPGA,Zynq/pl端的软件Modelsim10.4仿真原创 2021-03-14 21:55:10 · 1075 阅读 · 0 评论