- 博客(15)
- 收藏
- 关注
原创 Xilinx FPGA基于Aurora_8b10b的loop测试
本文介绍了基于Xilinx Aurora_8b10b IP核在FPGA上实现的loopback自测试方案。使用A7_200T开发板,通过Vivado 2022.2工具搭建测试系统,验证了Aurora协议的收发通道功能。系统采用125MHz GT参考时钟和200MHz系统时钟,实现了内部环回测试模式,并通过仿真和ILA抓取信号验证了链路状态。测试结果表明该方案能有效验证Aurora协议收发功能,为多板互联应用奠定了基础。
2025-08-10 15:03:03
385
原创 基于FPGA的Camera Link相机显示系统设计与实现
本文实现了一个基于FPGA的Camera Link相机图像采集与显示系统,能够处理2448×2050@15fps的高分辨率图像,并将其缩放至1920×1080@60hz显示。系统包含三个核心模块:通过FPGA的SERDES接收LVDS信号进行Camera Link解码;采用DDR缓存3帧图像解决帧率不同步问题;实现任意比例的双线性插值缩放算法。目前系统已成功完成Camera Link相机的图像显示功能,但显示效果仍需进一步优化。实验结果表明系统具备基本功能,但图像质量有待提升。
2025-08-07 00:42:17
258
原创 基于 FPGA 驱动 ST7789 显示屏的 SPI 通信设计与实现
本文介绍了一种基于FPGA驱动ST7789 TFT-LCD显示屏的设计方案。系统采用模块化架构,包含时钟管理、显示控制、数据生成和SPI通信等模块。数据生成模块(data_gen)提供RGB565格式的像素数据,实现每秒切换背景颜色的简单显示效果。SPI驱动模块(spi_drive)负责与ST7789的通信,支持命令和数据写入。设计中通过wr_req信号确保数据传输连续性,并利用wr_last标记帧结束。系统采用Xilinx FPGA实现,通过差分时钟输入产生100MHz系统时钟,SPI时钟频率配置为25M
2025-06-08 23:15:01
679
原创 FPGA 仿真太慢?我发现罪魁祸首竟然是这个低频 IP 时钟
在FPGA开发中,使用IP核生成特定时钟频率(如22.1184 MHz用于UART通信)时,可能会遇到仿真速度异常缓慢的问题。这是由于复杂的小数频率导致仿真器需要进行大量计算,特别是在模拟波形边沿时,事件调度密集,严重拖慢仿真速度。通过将22.1184 MHz时钟临时替换为100 MHz时钟,仿真速度恢复正常。建议在功能仿真中使用行为模型替代IP核,或单独构建串口测试环境,避免系统级仿真。此外,多使用$display/assert方式替代长时间波形观察,简化驱动设计,减少真实时钟控制位移。这一案例提醒我们,
2025-05-22 18:57:08
553
原创 quartus与modelsim联合仿真显示Module ‘xx‘ is not defined问题
常见原因是:模块 ‘xx’ 并未被包含进 Testbench 的仿真文件编译中。这通常是由于:模块文件虽然存在于工程中,但未被正确添加到仿真用的 testbench 文件或仿真脚本中,导致 ModelSim 无法识别该模块。如下图所示,将对应的文件加入到testbench 中。
2025-05-22 12:07:26
493
原创 使用 Verilog 实现支持标准与 QUAD 模式的 SPI 写控制器设计(写部分)
Verilog 实现支持标准 SPI 与 QUAD 模式的 SPI 写控制器设计详解,特别是在驱动QSPI屏幕中
2025-05-16 01:03:23
359
原创 在 Vivado 中配置 VS Code 以避免每次打开新窗口
在 FPGA 开发过程中,使用 Vivado 进行设计和仿真通常需要借助外部编辑器来查看和修改源代码。许多开发者选择使用 VS Code 作为外部编辑器,因为它提供了丰富的功能和插件支持。然而,在某些情况下,每次通过 Vivado 打开文件时,VS Code 会启动一个新的窗口,这可能会影响工作流和效率。本文将向大家展示如何在 Vivado 中配置 VS Code,使其在现有窗口中打开文件,而不是每次都启动一个新的窗口。
2025-01-02 11:06:37
892
1
原创 python:加载DLL时出错
在使用 Python 调用外部 DLL 文件时,可能会遇到加载失败的情况。最常见的错误是 OSError。这一问题通常出现在使用 ctypes.windll.LoadLibrary 加载 DLL 文件时,Python 无法找到 DLL 文件或其依赖项。
2024-11-14 17:53:41
1259
1
原创 以太网中的PAUSE帧
以太网中的PAUSE帧是一种特殊的MAC(Media Access Control)控制帧,可以优化网络性能、提高数据传输的可靠性,并确保网络设备之间的协同工作。
2023-06-24 23:41:53
3636
1
原创 labview与PLC通过OPC通讯
LabVIEW使用OPC与PLC通信是十分便捷的,下面讲一下LabVIEW与PLC之间如何通过OPC通信。1.软件的准备对于初次安装的LabVIEW,需要在NI Pacage Manger中另外下载OPC服务器(图1)和数据记录与监控模块,数据记录与监控模块需要与所在电脑的labVIEW版本一致,我这里使用的是32 位的LabVIEW2020(如图 2)。图1 OPC服务器模块图2 数据记录与监控模块2.在所有软件中找到OPC Serves Configuration(图3),打开后的软件如图4
2021-09-07 21:36:30
24123
10
原创 warning: #1295-D: Deprecated declaration lcd_init - give arg types
将void lcd_init()改为void lcd_init(void)即可
2021-01-24 18:41:35
1159
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅