Nexys3学习笔记(一)——最小系统的建立

作者: Pollux
上传时间为: 2012-02-15 10:50 PM

最近拿到一块Digilent公司的Nexys3 Spartan6 FPGA开发板,想学习一下使用EDK如何开发嵌入式系统的设计。Nexys3上的FPGA是Xilinx公司Spartan-6系列的XC6LX16CSG324,其上集成了32位的软核处理器Microblaze,用Xilinx的目标设计平台XPS/EDK可以很方便进行嵌入式系统的软硬件设计。MicroBlaze目前支持两种内部总线PLB和AXI,首先学习下搭建基于PLB总线的系统平台

准备工作:

  • PC机 Windows XP sp3
  • Xilinx ISE Design Suite 13.2
  • Nexys3 开发板
  • 串口监视程序----超级终端(串口设置:波特率9600,8位数据位,1位停止位,无奇偶校验)
  • Nexys3 BSB 支持包Nexys3_BSB_Support_v_2_3.zip

1.BSB向导建立嵌入式系统

打开XPS,选择BSB向导

命名新的project,选择PLB system,在路径框里选择BSB PLB支持包所在目录

按步骤进行,始终选择83.33Mhz

选择系统的构件,第一个系统希望越简单越好,所以只保留按钮,开关,串口监视IP核。其他的全部先remove。

系统的一些基本信息

2.  系统的设置编译

下图可以看到该系统的所用IP,Nexys3有一个定制IP:mem_bus_mux_0,只要用于控制多个存储器的分配,系统会自动加入。

端口的连接

地址的分配

左边Project栏也自动生成了system.mhs文件和system.ucf文件

选择Hardware->Generate Bitstream 这个过程有点慢

3. 软硬件环境的建立

选择Project->Export hardware design to EDK…,弹出窗口启动EDK

建立一个workspace

可以看到硬件设计导入了EDK

首先要建立BSP,是作为嵌入式系统的各种外设的软件驱动。选择File->New->Xilinx Board Support Package

完成后EDK会自动编译,这时可以看到BSP建立了

到此一个简单的嵌入式硬件平台和驱动算是建好了,下面可以在这上面进行软件开发了。

4.软件测试程序

选择File->New->Xilinx C Project,试一试系统自带的demo程序,选择Peripheral test程序

这里可以选择刚刚建立好的BSP

完成后EDK自动编译,可以看到工程中又新添加了测试程序,src下面是测试的源文件,.elf文件也已经产生。

选择Xilinx Tools->Program FPGA,在弹出窗口可以看到.bit文件和.bmm文件,在下方elf文件栏下选择刚刚生成的.elf文件。

在Program之前要把Nexys3连接上电脑,并且上电,之后开始编程FPGA

测试程序开始运行了,串口可以监视到运行结果

8位开关‘0’‘1’状态由16位制的数值表示,4位按钮状态‘按下’‘弹起’也由一个16位制数值表示。Nexys3板上在按钮区中间一个按钮可以复位程序,重新显示采集的开光和按钮的状态值。

小结:

至此一个非常简单的嵌入式系统就建立完成了,测试程序显示工作正常,采用Xilinx的目标设计平台进行嵌入式系统的开发确实非常简单,而且集成了软硬件的综合设计。下次将试试在这个简单的系统上慢慢添加外设。

参考链接:

http://www.xilinx.com/support/documentation/spartan-6.htm

http://www.digilentinc.com/Products/Detail.cfm?NavPath=2,400,897&Prod=NEXYS3

全部评论 ()

创建讨论帖子

登录 后参与评论
系统提示