草庐IT

FPGA学习-vivado软件的使用

FPGA学习-vivado软件的使用1.杂谈2.vivado新建工程1.杂谈又被封了7天。正好封控前领导让我改下fpga代码,趁这个机会好好学习下,虽然在这块一片空白,但是毕竟这块是我的短板,一个不会写代码的硬件工程师是一个不完整的硬件工程师。我很喜欢体验新鲜事物,我发现体验的多了,就会发现一切都没那么难,恐惧是因为你不了解它。所以即使不会,那又怎样,去做,时间久了你就会。要是不做,你每次碰到类似问题就会觉得,好高深莫测,其实,去了解会发现,不过如此。2.vivado新建工程vivado是xlinx的集成开发环境,用来进行xlinx的fpga开发。1.创建工程进行工程命名,next选择RTL(

FPGA VIVADO 实现FLASH固化操作步骤

1.将所需要固化的程序综合,布线,生成比特流2.生成MCS文件2.1 按顺序选择Tools>>GenerateMemoryConfigurationFile  2.2生成MCS 2.3对选择的spi总线进行约束默认是spix1,如果在上一步选择了其他的模式,可以直接在xdc文件中直接添加约束语句(举例spix4如下:选择了其他spi总线只需更改第五句代码中的总线数。#flashset_propertyCFGBVSVCCO[current_design]set_propertyCONFIG_VOLTAGE3.3[current_design]set_propertyBITSTREAM.GENER

Vivado MIPS寄存器堆(含测试代码)

本篇文章使用Verilog语言编写实现带有优先级的83译码器,含有设计代码和测试代码。一、寄存器堆regfile模块实现了32个32位通用寄存器。可以同时进行两个寄存器的读操作和一个寄存器的写操作。写操作是同步写,写使能信号(we)为1时有效,为0时无效;读操作可以在任意时刻进行读操作。(1)当复位信号有效(rst为1)时,读数据(rdata1和rdata2)为0(2)否则当复位信号无效(rst为0)时,当读地址为0,读数据为0(3)否则当读写地址相等,且读写使能都有效的时候,读数据为写数据(4)否则当读使能有效时,读数据为寄存器堆中存储数据(5)其余情况,读数据为0接口描述表如下:接口名宽度

vivado读写文件

       在平时对代码进行仿真的过程中经常会需要对数据进行处理,特别是对信号处理方面的内容来说很多数据在FPGA中并不能够直接的观察到需要导出后另外处理观察。所以在仿真中添加对文件的读写有利于解决问题。1:读文件reg [4:0] din;parameter data_length=199;//读取长度integeri;//数组坐标reg[4:0]rd_dat[data_length:0];initialbegin$readmemh("C:/FPGA/csdn/gongcheng/vivado/pro_18_3_wr_file/wr_file/data0_rd.txt",rd_dat);

vivado2021.2版本中工程另存为后的问题HDL Wrapper 不自动更新

项目场景:vivado2021.2版本问题描述用vivado将原来的工程另存为后,在blockdesign中添加ip核并导出新的端口,generateoutputproducts后在新生成的顶层verilog文件中找不到新的端口,也就是HDLWrapper不自动更新。但新建工程,将全部过程在新的工程中完成后,顶层文件可以正常更新,但过于繁琐。下图中第一张图为实际情况,第二张图为应该出现的情况。 解决方案:笔者尝试在网上进行搜索,在xilinx官网社区中得到的解决方案如下经过尝试后发现可行的方案为 右击bd文件,选择CreateHDLWrapper,在新弹出的窗口中保持默认选项第二项即可 然后再

vivado 错误总结1——WARING:[Labtools 27-3361] the debug hub core was not detected make sure the clock

我在programdevice后无法打开debug的调试界面,出现了如下错误:WARING:[Labtools27-3361]thedebughubcorewasnotdetectedmakesuretheclockconnectedtothedebughubcoreisafreerunningclockandisactivemakesuretheBSCAN_SWITCE_USER_MASKdevicepropertyinvivadohardwaremanagerreflectstheuserscanchainsettinginthedesignandrefreshthedevice.解决办法

vivado下ila使用手记

ila的全称是IntegratedLogicAnalyzer,是xilinxFPGA用于片内信号debug开发的ip当前我们用前端流程调用ila当启动IPCatalog后,输入ilaila配置说明NumberofProbes这里选取需要抓取的信号数量,不宜过多。sampleDataDepth,信号存储的深度,曾经试过选取的深度非常大,导致数据出错。总的来说,够用就好。trigeroutport,trigerinport,额外的triger方法,项目中没有使用,有兴趣的可以尝试一下。inputpiplinestages,如果没有面积压力的话,建议点选这个选项,可以有效缓解布线压力。capture

Xilinx FPGA未使用管脚上下拉状态配置(ISE和Vivado环境)

文章目录ISE开发环境Vivado开发环境方式1:XDC文件约束方式2:生成选项配置ISE开发环境ISE开发环境,可在如下Bit流文件生成选项中配置。右键点击GenerateProgrammingFile,选择ProcessProperties,在弹出的窗口选择ConfigurationOptions->UnusedPin,选择PullDown、PullUp或者Float。可以看到,除了未使用管脚,一些系统管脚,比如JTAG,Program、Done管脚等等都可以配置上下拉模式。配置完成之后,重新生成Bit流文件即可。Vivado开发环境对于Vivado开发环境,共有两种方式可以设置未使用管脚

【0基础学会Verilog】004. 学会使用Vivado自带仿真器

编写好实现指定功能的Verilog模块后,需要对其进行仿真来验证模块的正确性,这需要用到EDA开发工具的仿真器,我们选择Xilinx公司的Vivado自带的仿真工具进行仿真。1.编写仿真模块在前面的章节已经学习了为Verilog模块编写基本的测试模块,即testbench的基本步骤和方法。本文不再赘述,直接罗列代码如下。组合逻辑版calc()模块//用组合逻辑实现与calc_v2()函数相同的功能modulecalc_wire(inputwire[31:0]a,inputwire[31:0]b,inputwire[31:0]c,outputwire[31:0]sum);wire[31:0]tm

vivado 仿真报错:ERROR: [VRFC 10-2987] ‘xxxxx‘ is not compiled in library ‘xil_defaultlib‘

在DesignSources窗口下,选中报错的IP,比如除法器,右键: 选择第一个AutumaticUpdateandCompileOrder即可。