第3篇:Linux程序访问控制FPGA端LEDR<一>

**Q:**如何在DE1-SoC-UP Linux系统中访问控制FPGA端外设呢?

**A:**DE1-SoC-UP Linux系统启动的过程中会自动配置Cyclone V SoC FPGA,系统将SoC设备配置到DE1-SoC_Computer系统的电路,其中包含一个双核ARM Cortex-A9处理器,以及与DE1-SoC板上的外设如SW、LED、Button、VGA等IP核。

在DE1-SoC-UP-Linux操作系统里,运行在ARM A9处理器上的程序可以访问FPGA端的硬件外设如LED、HEX和开关等。ARM处理器通过HPS-to-FPGA或Lightweight HPS-to-FPGA桥接器访问FPGA,这些桥被映射到ARM内存空间中的区域。当FPGA端组件(如IP核)连接到桥接器时,ARM处理器在桥接器内存区域内读写组件的内存映射寄存器。

要从Linux程序访问物理内存地址,必须调用Linux内核函数mmap并访问系统内存设备文件/dev/mem。mmap函数代表内存映射,它将文件映射到虚拟内存中。系统内存设备文件/dev/mem代表计算机系统的物理内存,在某个偏移处访问此文件相当于在偏移地址处访问物理内存。通过使用mmap将/dev/mem文件映射到虚拟内存中,可以将物理地址映射到虚拟地址,从而允许程序访问物理地址。

相关推荐
YYRAN_ZZU19 小时前
Lattice 自定义IP业务逻辑核
嵌入式硬件·fpga开发
FPGA小徐1 天前
FPGA FIFO一篇完整解释
fpga开发
I'm a winner1 天前
【IP核】 Xilinx FPGA LVDS 高速接口,含验证工程与板级测试用例
tcp/ip·fpga开发·测试用例
I'm a winner1 天前
基于Xilinx FPGA的LVDS高速串行通信系统 - 完整源码解决方案(一)(文末附源码)
fpga开发
国科安芯1 天前
航天器多路并联大功率电源系统设计与ASP4644均流特性分析
单片机·嵌入式硬件·fpga开发·安全性测试
techdashen3 天前
从网络栈继续往下:micro:bit、2.4GHz、调制方式,以及一个不太靠谱但很有趣的想法
网络·fpga开发
FPGA小徐3 天前
FIR 数字滤波器 --verilog设计实现
fpga开发
zlinear数据采集卡3 天前
从协议解析到波形实时显示:硬核拆解ZLinear采集卡上位机软件的开发架构
arm开发·单片机·嵌入式硬件·fpga开发·架构·开源
pcjiushizhu3 天前
ModelSim 仿真时 Simulate 无反应或只显示 Loading 的解决方法:网卡问题排查
fpga开发
FPGA小迷弟3 天前
vivado中的AXI Interconnect到底应该怎么用,他的底层原理是什么,一篇文档全部理清楚!!!
网络协议·tcp/ip·fpga开发·verilog·fpga