- 博客(38)
- 资源 (2)
- 收藏
- 关注
原创 Vivado编译报错黑盒子问题
“Black Box Instances: Cell '****' of type '**' has undefined contents and is considered a back box. The contents of this cell must be defined for opt_design to complete successfully.”
2024-09-08 13:49:48 749
原创 激光雷达定位算法在FPGA中的实现——section2 全局坐标和角度计算
在section1中已经就激光雷达的全局坐标公式进行了推导,得到其中,这里需要计算出矩阵X里面的x,y,cosα,sinα。关于这个计算公式的求解,方阵的逆矩阵计算成为关键步骤。
2024-08-31 18:40:20 547
原创 解锁新技能---手码一台性价比生产力主机
CPU、显卡、主板、内存、散热、风扇、电源、机箱、显示器全套京东配齐,中间出了点小插曲,想要的内存一时半会到不了货,忍痛换了一套。人生处处是体验,最近也是体验了一把自主配机、装机、开机,过程就别提了,配机操心、装机费腰,但是开机一把过简直不要太爽。13/14代缩缸,不敢冲,选了个12代大核多点的;内存上一套32G,19版的Vivado够用了。好了,网盘down个Vivado19.2,再搞个Modelsim10.6d se,齐活;好在所有配机及时到期,组装过程有些艰辛,花了大半天的休息时间终于搞齐。
2024-08-13 22:23:52 257
原创 Xilinx管脚验证流程及常见问题
I/O Planning Project中可以不需要RTL的top层.v代码,仅图形化界面即可配置管脚约束XDC文件的生成: Create I/O Ports: 导出XDC文件和自动生成的top_interface.v文件: 新建测试工程,使用I/O Planning Project导出的xdc和top_interface.v,快速完成测试工程的搭建: I/O planning工程生成的xdc,导入到测试工程中 I/O planning工
2024-08-03 22:24:37 484
原创 高速数据采集与传输(一):ADC08D500调研
(1)常用的PCIe上下行通信(user/dma/irq);(2)DDR AXI4驱动、DDR数据打包缓存、DDR数据上行传输;(3)LVDS channel内部/channel之间数据对齐,其中channel内部对齐采用RTL方式,channel之间数据对齐采用软核方式;(4)PC与MicroBlaze软核交互控制流程;(5)MicroBlaze软核用于: a、axi-spi驱动封装与控制;axi-spi主要用于在线升级,完成Flash
2024-05-19 22:13:30 973
原创 激光雷达定位算法在FPGA中的实现——section1 原理推导
关于算法在FPGA中的实现,本次利用业余的时间推出一个系列章节,专门记录从算法的推导、Matlab的实现、Matlab定点化仿真、FPGA的移植开发与仿真,做一次完整的FPGA算法开发,在此做一下相关的记录和总结,做到温故知新。这里以Detector在Global Coordinate System(原点为O)中运动为背景,Detector本身有运动的正方向,因此可以以Detector Od为原点组成Local Coordianate System;
2023-08-06 23:21:32 879
原创 Modelsim打开后报unable to checkout a viewer license
在win64文件夹中找到modelsim.exe,双击打开后报错解决,可正常启动modelsim。
2023-08-06 11:14:42 2735
原创 Linux启动vivado、tcl shell、vitis、xsdb、xsct的方法
在3.2启动tcl shell之后,输入以下指令。在2的source之后,输入以下指令。等待tcl shell启动即可。等待Vivado启动即可。直接输入vivado。等待xsdb启动即可。
2023-08-02 10:34:49 2808
原创 Xilinx A7开发板LVDS IO无输出问题解决方法
定位到开发板的bank16作为HR BANK,供电使用的是3.3V供电,不满足LVDS输出的要求;使用A7-35T FGG484的FPGA开发板bank16上的IO作为差分LVDS的输入输出,搭建输入输出测试工程发现LVDS可以输入、无法输出。(2)HR bank上的lvds io,作为输出使用时,bank电压必须为2.5V;作为输入使用时,必须使用内部差分端接,可通过打开原语中的属性DIFF_TERM = TRUE。(1)HP bank上的lvds io,作为输出使用时,bank电压必须为1.8V;
2023-08-02 07:19:23 1829 2
原创 Matlab解析txt数据包后写Excel的数据格式调整
这里记录下使用Matlab解析txt格式的数据包后,将数据写入Excel时,十六进制的数据有一部分会自动转成科学计数法,这个是我不想看到的,我想在Excel中看到数据包的关键原始数据。关闭Excel文件后,重新运行Matlab,待Matlab程序运行完成后,重新打开Excel,发现Excel中存储的就是数据包中的原始数据。最近在做的逻辑控制模块,需要使用数据包进行相关控制,由于不知道数据包的正确性,所以使用Matlab进行数据包的正确性验证工作。在已有的Excel文件中,将所有sheet进行格式设置;
2023-06-28 17:01:44 597
原创 Linux安装Xilinx USB Blaster设备的方法
最近需要调研2023.1版本的vivado的使用,版本太高消耗太大,在windows电脑上实在扛不住,选择在linux服务器上进行处理。等待安装成功,查询设备挂载情况ls -al/etc/udev/rules.d/然后插上USB Blaster即可成功在vivado 中open target。输入sudo ./install_drivers。然后open in terminal。
2023-06-20 14:41:43 474
原创 Modelsim仿真Xilinx工程时IP核不生效
言归正传,经过实践,通过在Vivado中的sources页面中,找到IP sources页面,然后找到对应IP核点击它的下拉框中的“Simulation”,可以发现这个IP核的仿真文件。在做Xilinx的仿真时一直被IP核无法在Modelsim中生效的问题所困扰,即使在modelsim的do脚本中vlog了IP核的*_netlist.v仍然无效,导致很长一段时间做Xilinx的仿真一直使用Vivado自带的simulation工具。基于以上的优点,这次做新模块的功能开发,重新捡起Modelsim做仿真。
2023-06-17 15:17:17 1419
原创 Xilinx FPGA JTAG to AXI Master tcl指令超次数后无法显示问题记录
此时vivado tcl栏中不会再显示读写的值具体是多少,对于调试来说很不方便。
2023-05-24 11:19:29 493
原创 Aurora 8b/10b AXI4-ST回环测试
Aurora 8b/10b,官方提供了demo工程,但是数据生成模块、Aurora IP核、数据校验模块之间并不是直接使用AXI4-ST总线通信,本文会将demo工程进行相关优化修改,并将优化修改后的demo工程进行仿真、分析、说明
2022-12-12 18:08:10 3408 15
原创 Xilinx Transceiver与ibert
Xilinx Transceiver资源结构、硬件配置(lane/时钟)、ibert光口回环与自环等
2022-12-12 17:09:25 2658
原创 Modelsim SE仿真之器件库的编译与使用
最近常用Vivado自带的仿真工具,以至于Modelsim SE的使用变得非常陌生,这里针对Modelsim SE自动化仿真使用过程进行一个学习总结,温故而知新。
2022-11-16 10:21:23 1713
原创 Xilinx Vivado bit文件和Microblaze elf文件合并的两种方法
Xilinx使用Microblaze软核进行功能开发时,需要将Vivado生成的硬件bit文件和Vitis生成的软件elf文件进行合并,生成软硬结合的bit文件,然后可以选择将该bit文件烧进FPGA、或者将该bit文件转换成mcs文件/bin文件然后烧录仅Flash中。此时由于在第1步中,已经完成工程的编译,所以此步并不会导致重新编译工程,只需要等待新的bit文件生成即可。目前使用到了两种合并Vivado bit文件和Vitis elf文件的方法,(2)导入vitis工程编译完成后生成的elf文件。
2022-11-07 11:24:05 6088 8
原创 verilog 相对路径与绝对路径
在编写FPGA工程的时候,往往会用到相对路径和绝对路径,例如工程中调用常用来包含宏定义和parameter的.vh文件、仿真工程中调用.txt文件、do脚本中vlog相关.v文件等,均需要用到路径包含内容
2022-10-20 19:18:40 3845
原创 Xilinx远程更新之Multiboot
Multiboot是Xilinx远程更新的重要组成部分,现已经初步开发完成从PCIe —> FPGA端的程序升级工作,现将Multiboot做一个总结记录。
2022-08-03 15:41:11 5103 18
原创 DDR3 AXI4接口读写回环测试
DDR3官方还提供了AXI4接口,这个需要在MIG中勾选上AXI4选项,下面针对AXI4接口读写DDR3进行相关记录。
2021-12-30 11:14:28 5256 8
原创 DDR3 ui接口读写回环测试
由于工作需要,需要使用DDR4,资源有限,选择在开发板上进行DDR3的入门学习,套路大同小异,现将调试过程进行相关记录。 开发板上只有一颗DDR3颗粒,型号为MT41K128M16,大小256MB,数据位宽16bit,这里可以计算一下按照16bit位宽读写DDR,地址最大值:256*1024*1024*8/16 = 'd134217728 = 'h800_0000。...
2021-12-21 16:34:33 1804
原创 FPGA开发过程知识点记录
新开一篇,专门用于记录工作中遇到的各类问题(1)位运算符和等式运算符之间的优先级没有搞清楚,导致逻辑出错未加括号仿真出错加括号 仿真正确总结: 强相关的逻辑,养成加括号的习惯,避免因为各类运算符的运算级别不清楚导致出错。...
2021-12-01 17:01:10 148
原创 AXI基础知识学习
1、AXI通道 主从之间5个通信通道: 写操作使用如下通道:(1)主——>从,主使用AW通道发送写地址,主使用W通道发送数据;(2)从——>主,写操作完成之后,从使用B通道发送写响应信号。 读操作使用如下通道:(1)主——>从,主使用AR通道发送读地址;(2)从——>主,从使用R通道发送对应请求地址的读数据。2、AXI通道握手Source——>Destination,发送Va...
2021-10-15 14:57:40 1849
原创 LVDS通道自动校准调研
最近的工作围绕着LVDS接口展开,涉及到相关芯片内部集成的16通道LVDS接口的ADC芯片,需要解决板内LVDS通道对齐和板件LVDS通道对齐的关键问题。 通过调研相关论文和专利,方法大同小异,技术点还是围绕着selectio展开,包括iodelay的taps调节和bitslip移位功能。 1、通道内位对齐 用于找到各个通道的数据最稳定的状态,不考虑FCLK采集到的数据一定为test pattern(ADC内部寄存器设定的测试模式)设定的......
2021-09-22 14:53:00 3945 14
原创 AXI仿真之AXI Chip2Chip
最近工作涉及到FPGA片间通信功能,针对低带宽、低速访问的配置和状态寄存器,选择LVDS接口进行通信。 Xilinx官方提供的AXI Chip2Chip满足要求,片间通信可选择Selectio或者Aurora接口,片内通信安排上AXI4或者AXI4-Lite总线,可快速搭建两片FPGA之间的通信demo工程。 由于本次开发主要设计片间低速通信,选择Selectio接口和AXI4-Lite总线。 测试工程按照如下框图进行搭建,AXI ......
2021-09-09 14:45:24 4283 14
原创 STM32CubeIDE的MCU开发
以前做stm32嵌入式开发均使用的是破解版的keil软件,现在工作需要无法按照此步骤进行,最近针对ST官方免费软件STM32CubeIDE进行了相关调研工作。1 STM32CubeIDE简介目前主流的STM32开发环境是ARM公司的KEIL软件, 由于KEIL对于STM32大部分型号是收费的, 使用需要破解, 存在版权问题。 并且使用KEIL编译大型工程, 编译太慢了, 编译耗时长。STM32CubeIDE是ST公司推出的免费多功能STM32开发工具,采用了行业标准的开放式许可条...
2021-08-31 19:37:44 4409 6
原创 Ultrascale selectio 仿真之 ISERDESE3和OSERDESE3
1 ISERDESE3ISERDESE3端口如下: Port I/O Type Description CLK Input Clock High-speed clock input. Clock Serial input data stream. CLK_B Input ......
2021-08-21 13:31:34 6489 11
原创 Ultrascale selectio 仿真之 ODELAYE3和IDELAYCTRL
TIME模式时,使用ODELAYE3必须配合IDELAYCTRL使用1 ODELAYE3ODELAYE3有512个tap,工作模式有两种:ODELAYE3 block图TIME模式下(1)DELAY_TYPE为FIXED时,数据延时取决于DELAY_VALUE的值,且延迟固定,不可更改。该模式下DELAY_VALUE取0时,经过ODELAY的数据延时为144ps。......
2021-08-21 13:16:22 3038 5
原创 Ultrascale selectio 仿真之 IDELAYE3和IDELAYCTRL
TIME模式时,使用IDELAYE3必须配合IDELAYCTRL使用1 IDELAYCTRLIf the IDELAYE3 (or ODELAYE3) primitives are instantiated, the IDELAYCTRL module must be instantiated, except when the DELAY_FORMAT is set to COUNT or when mixing component and native mode in native......
2021-08-21 11:53:45 8427 10
原创 Ultrascale selectio 仿真之 IDDRE1和ODDRE1
由于项目需要使用LVDS通信接口,从xilinx官方selectio资源入手,选择关键原语进行学习和功能仿真验证1 IDDRE1功能仿真调用Xilinx代码模板进行简单的功能仿真:OPPOSITE_EDGEDDR采样,i_clk上升沿采样和下降沿采样,上升沿采样的数据在o_data_q1立即输出;下降沿采样的数据在o_data_q2立即输出。输入数据单位长度为半个时钟周期,输出数据单位长度为1个时钟周期。SAME_EDGE......
2021-08-21 11:13:02 5607 7
原创 ISSP与signaltap联调使用
初次尝试使用ISSP source信号作为模块的激励,用signaltap去抓取probe探针的波形 在程序中添加ISSP IP核 激励source选择8bits,探针probe选择32bits,Gernerate HDL...在quartus中添加相关的.v和.qsys在代码中例化ISSP 生成signatap ii的stp,添加需要观察的寄存器信号,设置触发信号为状态机处于S...
2021-07-28 17:30:31 879
原创 modelsim se使用.tcl脚本仿真rom读数据
最近安装了quartus19.2 pro版本,使用modelsim se进行单端rom仿真时读取的数据一直处于高阻态;怀疑是quartus版本导致,使用原先的quartus16.1 prime生成的单端rom仿真却正常。(1)怀疑是19.2的仿真库没安装好 在19.2中使用Tools —> Lauch Simulation Library Compiler,Tool name : 选中Modelsim;Executable location :...
2021-07-28 11:12:52 534
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人