FPGA实现高带宽NVMeSSD读写——纯逻辑实现项目背景方案介绍测试平台测试方案测试硬盘:测试结果:IP连续数据读写测试结果:IP实现及测试中的问题Xilinx官方IP:AXIInterconnect硬盘厂商的调教:队列深度结语项目背景在两年之前的帖子《FPGA实现高带宽NVMeSSD读写》中,我们实现了一个基于PS和PL端的高速NVMeSSDIP。这个IP在我们自己的系统中使用正常,但是由于该IP使用了PS端资源,在与其他应用系统集成时遇到了麻烦。为了保护自有的设计,需要独占PS端的一个ARM处理器,这使得该IP在与其他项目集成时,使用很不方便。除此以外,原方案IP写SSD硬盘的最大速度约
第一在modelsim安装目录下新建一个文件夹Anlogic用来存放TD库文件:打开modelsim仿真软件,feil→changeDirectory,选择刚才新建文件目录,在新建一个Library库如图所示:TD库文件al与common是必须要添加的两个库,我的芯片是ph1系列所以添加ph1在去到这个路径会发现多了三个文件夹,在TD安装路径下把这些库文件拷到这些文件夹下 选择compile,把这三个库全部例化,其实也可以先把库添加到安装目录下,但是我的一直有问题,就先新建库然后再把库文件考进去 编译成功后是这样 重点来啦,然后在modelsim根目录下ini文件夹,添加这三个库路径,
市面上很多开发板都使用RTL8211PHY芯片,使用简单,你甚至不用配置就可以直接使用。官方默认配置是:开启自协商,速率1000M。 https://numato.com/product/rtl8211e-gigabit-ethernet-expansion-module/芯片地址:RTL8211FD器件地址由5位构成,高两位固定为2’b00,第三位后这三个引脚的上下拉电平决定
XilinxFPGA开发环境vivado使用流程文章目录XilinxFPGA开发环境vivado使用流程1.启动vivado2.选择CreateNewProject3.指定工程名字和工程存放目录4.选择RTLProject5.选择FPGA设备6.工程创建完成后7.开始编写verilog代码8.添加XDC管脚约束文件9.编译10.下载和调试1.启动vivado2.选择CreateNewProject3.指定工程名字和工程存放目录4.选择RTLProject5.选择FPGA设备6.工程创建完成后7.开始编写verilog代码第一步:点击AddSources按钮第二步:选择addorcreatede
项目场景:FPGA代码编译时报错问题描述编译报错内容[Common17-55]‘set_property’expectsatleastoneobject.原因分析:当一个引脚存在于xdc文件中,但是工程的顶层模块的引脚里没有这个引脚时,就会报出这个错误解决方案:查找报错的这个引脚是否存在于工程的顶层模块的引脚列表中,最大的可能是xdc中的引脚名与工程中的引脚名不一致,一般是拼写错误,或者误删了;如果不小心将工程的顶层文件设置错误那么就会爆出很多个[Common17-55]‘set_property’expectsatleastoneobject.错误;
系列文章目录:FPGA原理与结构(0)——目录与传送门一、MUX概述 数据选择器MUX是一种非常经典的组合逻辑电路,它是一个多输入,单输出的器件,功能是可以根据选择信号,选择出需要的输入信号作为输出。 二、FPGA中的MUX MUX在FPGA中的CLB中,我们打开device视图放大观察可以看到 图片中红色部分标注的就是MUX,可见MUX是作为一种基本元件存在于FPGA中的。但是我们同样知道,MUX作为一种组合逻辑元件,理论上完全可以通过LUT(关于LUT的部分:FPGA原理与结构——查找表LUT(Look_Up_Table))就实现其功能,为什么在FPGA中还要“多此一举”
FIFO(FirstInFirstOut)是一种先进先出的存储结构,经常被用来在FPGA设计中进行数据缓存或者匹配传输速率。FIFO的一个关键参数是其深度,也就是FIFO能够存储的数据条数,深度设计的合理,可以防止数据溢出,也可以节省FPGA资源的消耗。一、FIFO深度计算影响因素影响FIFO深度计算的主要因素包括:FIFO的位宽:决定了每个FIFO存储单元的大小FIFO的数据字长:决定每个数据词包含多少比特有效数据FIFO的总存储容量:决定最大可以存储的数据条数以32位位宽,8位字长的FIFO为例,每个FIFO存储单元需要32/8=4个字节。如果FIFO总容量为128字节,那么可以存储128
刚用QuartusII没多久,每次打开工程,QuartusII都是打开QuartusII默认打开工程文件路径,不是自已存放工程的文件路径,网上搜设置方法,教程很少,现在把我找到的方法分享给大家。1:打开软件,在软件菜单栏选择“Tools”,如下图所示:2:展开“Tools”菜单栏,选择“options”,如下图所示:3:点击“options”打开对话框,如下图所示: 4:选择在上图标1处的项,在标2处选择自已的工程文件夹,在标3处选择编程语言,这里不选也 行。教程到此完,请点赞评论!!
没有硬件,过几天上板测试。 moduledht11(inputwiresys_clk,inputwiresys_rst_n,inputwirekey,inoutwiredht11,outputwireds,outputwireoe,outputwireshcp,outputwirestcp);//例化连线wirekey_out_w;wire[19:00]data_w;wiresign_w;wire[5:0]point_w;wireen_w;key_filterkey_filter_insert(.sys_clk(sys_clk),.sys_rst_n(sys_rst_n),.key_in(