java sdk他edk de区别_EDK笔记——自定义IP核

这篇笔记介绍了如何在FPGA中使用MicroBlaze进行嵌入式程序设计,详细阐述了从ISE到XPS再到SDK的流程,以及如何创建和配置自定义IP核,实现流水灯间隔时间和按键检测间隔时间的可变控制。文章强调了在创建自定义IP核时选择AXI4_Lite协议,并通过SDK进行应用程序编写和调试。
摘要由CSDN通过智能技术生成

这篇笔记是我之前在调试MicroBlaze时记录下来的,当时在网上查了一些资料,发现都讲的不是特别清楚,所以自己整理了一个笔记,如有差错,希望大家指正。

在这次示例中,本文完成了一个改变流水灯的间隔时间以及按键检测的间隔时间可变的一个MicroBlaze程序,修改参数后不用再经过布局布线,方便调试。

典型的嵌入式程序设计流程如下:

609af3dfbff62826bc4ac9e6aac5f448.png

如上图所示,在FPGA中开发嵌入式系统主要需要三个工具套件,分别为ISE,XPS和SDK。

ISE篇

先打开ISE,新建一个Project

dfd60a4390174888a1196e83ff195856.png

我用的是黑金的AX309的板子

f5cc44b124aded23992c0ac36c15decf.png

4a9096b4bbd575e99e04f3315eefaf1f.png

然后建一个Embedded Processor

646fef5e7a6858eaf5bd5e7a1b29d883.png

XPS篇

建完后会自动打开XPS软件,点击Yes创建一个新的XPS Project

c2fb508b6462e76679600428a0232f40.png

点击OK,使用AXI总线

a796fe20b91b783e9efabde906c69f06.png

选择Create a System for a Custom Board,Reference Clock Frequecy是板上的时钟频率,也可以是你用PLL生成的时钟然后输到MIcroBlaze系统的时钟频率,Optimization Strategy选择Area和Throughput都可以,在这里我选的是Area。点击Next

f6ea3efa02c3f76fee41c87a905dd704.png

处理器频率选择100Mhz,Local Memory Size选择32KB,用于缓存你写的应用程序,尽量选大一些。不用添加其它外设,点击Finish即可

605d794aadd1d057d15b01b76b2c4fe2.png

完了之后会生成一个基本的MicroBlaze系统,里面包含了MIcroBlaze系统所需的基本模块,如clock generator,axi4liite等等。

48b3d04ec004bf71766d3ab659360109.png

在这里,我们需要自己新建一个IP,在建IP之前,我们要先想好这个IP的功能和端口是什么,包括输入和输出端口,我目前要实现的功能是,通过检测按键KEY1,来开启和关闭流水灯,同时可以通过修改MIcroBlaze中的程序来改变流水灯的间隔时间以及按键检测的间隔时间,所以在这个自定义IP中,端口有两个,一个是控制4个LED灯亮的输出端口LED[3:0],一个是按键的输入端口dip。

首先,点击Hardware>>Create or Import Peripheral

b65504379ca0661a8138704759949d42.png

点击next

99e2dcade62fa9f4477e6997f3946d0f.png

选择Create templates for a new perphera,点击next

df83d78df9090e934d6562be1a4d355e.png

在这里有两个选择,上面那个是将你创建的外设安装到EDK的库中,这样下次再创建工程就可以直接利用你创建的外设,可重复利

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值