[X]关闭
4

(高级篇)S05-CH02-Macroblaze与FPGA交互EMIF通信

摘要: 上一章我们讲解了如何搭建一个MicroBlaze最小系统,并在SDK中跑了一个Hello World历程。这节课将继续学习Macroblaze与FPGA交互EMIF通信,一般EMIF与FPGA相连,使FPGA平台充当一个协同处理器、高速数据处理器或者高速 ...

软件版本:VIVADO2017.4

操作系统:WIN10

硬件平台: ARTIX-7 系列开发板

米联客(MSXBO)论坛www.osrc.cn答疑解惑专栏开通,欢迎大家给我提供!!!

2.1 概述

      上一章我们讲解了如何搭建一个MicroBlaze最小系统,并在SDK中跑了一个Hello World历程。这节课将继续学习Macroblaze与FPGA交互EMIF通信,一般EMIF与FPGA相连,使FPGA平台充当一个协同处理器、高速数据处理器或者高速数据传输接口。

2.2 硬件工程搭建

      Step1:可以将上一章的block design工程文件导出为了一个tcl文件,那么在本章就将使用到这个tcl脚本。我们将其拷贝到本章工程文件夹下,创建一个名为tcl的文件夹,将其放置在这个文件夹下,然后就可以正式开始硬件工程搭建。

Step2:在tcl控制台中输入下面的指令运行上一节产生的tcl文件。

      上图中,source是运行命令,后面跟的是tcl文件的存放路径,注意要根据自身的情况进行调整,按Enter键之后开始运行。

      Step3:运行完成之后,系统自动创建完成了与上一章相同的硬件。这时候我们只需要根据自身的需求进行增加即可。这里我们添加一个AXI EMC的ip到BD文件中。


Step4:配置AXI EMC 的 IP 核,选择异步 ASYNC 进行通信。


Step5:如下图所示:点击 Run Connection Automation,把 rd_clk 连接到 axi_smc的aclk.

Step6: EMC 的端口比较多,比较经常用到有几个,地址,片选,数据,读使能,写使能.

Step7:在顶层文件中加入观测的ILA核。


2.3 软件设计

Step1:单击File-New-Application Project开始创建一个SDK工程。

Step2:在新弹出来的窗口中,输入工程名字helloworld (注意不能有非法字符)。

Step3:单击Next,然后在左侧选择helloworld(空白工程),最后选择Finish。


Step4:打开open hareware manager并refresh device,打开 ILA观测窗口,点击运行,等待触发。

Step5:选中SDK工程文件,右单击选择Debug as-Debug configuration。

Step6:在弹出来的新窗口中,双击下图圈出部分,然后勾选箭头所示参数

Step7:单击Apply,然后单击Debug(进行这一步之前,先给开发板上电)。

Step8:观测ILA波形窗口,触发完成。

       由于 AXI EMC 的地址和实际地址不是一一对应的,需要进行移位,32 位的需要移动 2 位,具体可以参考技术手册。

       这里面要用到 Xil_Out32 和 Xil_In32 函数,在 xil_io.h 文件中,例程中向地址 0x5555 写入一个 32 数据,从 0xAAAA 地址中读入。


路过

雷人

握手

鲜花

鸡蛋
发表评论

最新评论

引用 hetil 2021-4-15 15:28
挺方便
引用 猪猪 2021-3-11 10:07
还行呢
引用 vegh 2020-8-26 11:28
haohao
引用 veghm 2020-8-25 00:01
nice

查看全部评论(4)

本文作者
2019-11-7 17:34
  • 1
    粉丝
  • 19315
    阅读
  • 4
    回复

关注uisrc网络

扫描关注,了解最新资讯

电话:0519-80699907
EMAIL:270682667@qq.com
地址:常州溧阳市天目云谷3号楼北楼
热门评论
排行榜