ME_me 发表于 2022-7-15 15:54:00

【智多晶FPGA-050】实验九 使用CPU实现对FPGA侧RAM数据读写

实验简介

实验将通过Verilog语言实现对AHB协议的时序描述,并且对CM3的AHB接口信号进行解析,然后利用MDK软件对AHB接口对应的寄存器地址进行读写操作。将FPGA侧的RAM作为从机挂载到AHB总线上,CM3作为主机对RAM进行读写操作,从而实现FPGA和CM3的数据交互。实验中将写入和读取到的数据通过串口打印出来,从而判断读写是否成功

本案例最大的参考价值在于其实现了FPGA和CPU的数据交互,也就是大家关心的CPU访问FPGA侧寄存器/存储器。基于此架构,大家可以实现更多自定义的FPGA功能并交由CPU控制。同时,文档中详细介绍了AHB总线的接口和时序,方便大家研究以最终实现各自想要的自定义功能的设计。

实验教材


实验例程
AC208-SA5Z:

AC208:



更多智多晶FPGA相关资料,请查看下述汇总贴
【智多晶FPGA-001】小梅哥智多晶FPGA产品使用自助服务手册




神经蛙_rfRV 发表于 2022-8-27 12:53:54

这个必须分两步先写地址再写数据吗?直接写数据,地址就是地址可不可以呢?

Cruise 发表于 2023-5-5 15:28:44

神经蛙_rfRV 发表于 2022-8-27 12:53
这个必须分两步先写地址再写数据吗?直接写数据,地址就是地址可不可以呢? ...

hqFPGA之前版本的RAM IP是不支持的,必须分两步,最近2.14版本中已经将这一块儿改过来了。我们这篇帖子中的教材和例程也更新了

guojing 发表于 2024-3-20 10:09:51

你好,现在新版的hqFPGA 的IP creator生成的CM3代码里没有AHB总线的时钟信号,只有如下信号,请问怎么处理?
output         wire M0HADDR;
output         wire M0HBURST;
output         wire                M0HMASTLOCK;
outputwire         M0HPROT;
input         wire M0HRDATA;
output         wire                M0HREADYMUX;
input         wire                M0HREADYOUT;
input         wire                M0HRESP;
output         wire                M0HSEL;
output         wire         M0HSIZE;
outputwire         M0HTRANS;
outputwire M0HWDATA;
output         wire                M0HWRITE;
页: [1]
查看完整版本: 【智多晶FPGA-050】实验九 使用CPU实现对FPGA侧RAM数据读写