答疑解惑 | DE25-Nano开发板Uboot阶段与FPGA外设交互失败

近日测试友晶官网提供的de25_nano_revA_sdcard_console_v1.1.zip镜像(下载地址:https://www.terasic.com.cn/cgi-bin/page/archive.pl?Language=China&CategoryNo=69&No=1392&PartNo=4#contents),想在该镜像的 U-Boot 阶段通过内存映射的方式来读写 FPGA 外设(如 LED、开关、按键)对应的寄存器,从而实现在操作系统启动前快速验证FPGA逻辑是否正确。

下面选择测试FPGA端外设LED。首先,查阅资料https://www.intel.com/content/www/us/en/programmable/hps/agilex5/hps.html 可知Agilex 5的 lwHPS-to-FPGA基地址是0x2000000:

另外,友晶科技提供的 GHRD工程 (即de25_nano_revA_sdcard_console_v1.1.zip镜像对应的底层硬件设计工程)的 LED 组件偏移地址是0x00010080:

所以使用uboot命令mw写外设LED对应的寄存器时,其命令格式是:

复制代码
mw.l 0x20010080 0x00

0x00是写入寄存器的值,查看DE25-Nano的schematic file(或者直接查看manual说明)可以知道其LED是低电平点亮,高电平熄灭:

在DE25-Nano开发板上启动de25_nano_revA_sdcard_console_v1.1.zip镜像,在Uboot阶段按键盘任意键进入Uboot命令行输入环境,当使用mw.l 0x20010080 0x00命令写寄存时遇到这些提示:

友晶官方发布的de25_nano_revA_sdcard_console_v1.1.zip 制作步骤https://github.com/johnnyfan1979/public_doc/blob/main/documentation/DE25_Nano/DE25%20Nano%20Build%20Linux%20image%20from%20scratch.md中,Uboot脚本有如下这些内容:

但是在uboot命令行阶段这个脚本还没有被执行,所以要想在uboot阶段能够访问FPGA 端的外设,就需要手动执行bridge enable, 具体操作如下截图:

从上面截图可以看到, 手动执行了bridge enable以后mw命令就可以成功执行了,这时候可以看到DE25-Nano上的LED灯先灭(0xff),然后再亮(0x00)。

相关推荐
坏孩子的诺亚方舟3 天前
FPGA系统架构设计实践15_高云Arora V系列时钟体系
fpga开发·系统架构
FPGA小徐4 天前
入门 CNN 结构全解析|从流程图理论到 FPGA Verilog 硬件实现(含习题带讲解)
fpga开发
FPGA小徐4 天前
FPGA 数字信号处理:并行 FIR 与串行滤波器设计原理、对比与完整 Verilog 实现
fpga开发
Saniffer_SH4 天前
【高清视频】Gen6 服务器还没到,Gen6 SSD 怎么测?Emily 现场演示三种测试环境
人工智能·驱动开发·测试工具·缓存·fpga开发·计算机外设·压力测试
模型时代5 天前
爱克股份22 亿收购东莞硅翔:一家 LED 公司如何入局液冷赛道?
led·爱克股份·东莞硅翔
zlinear数据采集卡5 天前
双核架构深度解析:ARM+FPGA如何让数据采集卡实现500Ksps高性能?
arm开发·fpga开发·架构
9527华安5 天前
FPGA实现GTH Transceivers Wizard传输2路视频,基于aurora 8b10b编解码架构,提供4套工程源码和技术支持
fpga开发·gth·aurora 8b10b·transceivers
FPGA小徐6 天前
FPGA 数字信号处理(二):并行 FIR 滤波器的 Verilog 全流程设计与实现
fpga开发
国科安芯6 天前
基于AS32S601ZIT2型抗辐照MCU的商业航天卫星姿态确定与控制系统研究
单片机·嵌入式硬件·安全·fpga开发·架构·risc-v
ALINX技术博客6 天前
【黑金云课堂】FPGA技术教程FPGA基础:I2C 总线通信技术
fpga开发·i2c