FPGA上的嵌入式系统设计实例 作者 赵峰_ 第7章.ppt
《FPGA上的嵌入式系统设计实例 作者 赵峰_ 第7章.ppt》由会员分享,可在线阅读,更多相关《FPGA上的嵌入式系统设计实例 作者 赵峰_ 第7章.ppt(175页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第7章嵌入式Mini VOS服务器FPGA上的嵌入式系统设计实例 作者 赵峰_ 第7章 Still waters run deep.流静水深流静水深,人静心深人静心深 Where there is life,there is hope。有生命必有希望。有生命必有希望第7章嵌入式Mini VOS服务器在线教务辅导网:在线教务辅导网:http:/教材其余课件及动画素材请查阅在线教务辅导网教材其余课件及动画素材请查阅在线教务辅导网QQ:349134187 或者直接输入下面地址:或者直接输入下面地址:http:/第7章嵌入式Mini VOS服务器7.1 案案 例例 简简 介介本案例实现了远程主机通过W
2、eb网络对终端开发板进行操作和控制,以及类似于可控智能家庭网络的应用,例如可以通过终端玩音乐游戏、播放MP3等。第7章嵌入式Mini VOS服务器1.功能描述功能描述该设计模拟目前流行的VOS音乐游戏,称之为MINI VOS。其功能是当音符不断下落时,用户需在它们落地前将其打掉。该游戏分三个难度等级,音符的下落速度不断增加,对反应速度的要求也越来越高。此外,用户可以自己编曲,还可以选择播放自己喜欢的歌曲,共有3首歌曲供选择。本设计具有实时性、高效性、信息传递稳定精确、误操作少和系统功耗低等性能特点,并具有友好的用户界面。第7章嵌入式Mini VOS服务器2.开发环境开发环境(1)硬件环境与工具
3、包含如下:FPGA开发板及其相关附件(XILINX Spartan3E Starter Kit)。硬件连线:RS232串口线,RJ45网线。网络设备:以太网集线器(HUB)。第7章嵌入式Mini VOS服务器(2)软件环境与工具包含如下:EDK 8.2i(不可选用其他版本或其升级版本,如8.2.03i)。Fedora Core 4(或RedHat9 Linux)操作系统。虚拟机VMware 5.0.0 build13124。第7章嵌入式Mini VOS服务器3.案例源码案例源码本案例所使用的源码请参考本书配套光盘/Chapter7/,目录结构如下:/Doc:本案例的操作指导文档。/Src:源代
4、码与Web网页所需资源,以及LED驱动源文件。/Tools:本案例中使用的工具,包含uClinux配置文件uclinux_v1_00_d文件夹、交叉工具链microblazeelftools20060213.tar.gz、uClinux源码包uClinuxdist20060803.tar.bz2。第7章嵌入式Mini VOS服务器7.2 搭建搭建MicroBlaze硬件平台硬件平台MicroBlaze硬件平台的搭建参照以下步骤进行:(1)启动XPS 8.2i,软件系统弹出如图7.2.1所示的对话框,其中共三个选项。由于我们此次是新建一个MicroBlaze硬件平台,因此选中“Base Syst
5、em Builder wizard(recommended)”,点击“OK”按钮,进入硬件平台搭建向导。第7章嵌入式Mini VOS服务器图7.2.1 配置向导第7章嵌入式Mini VOS服务器(2)在弹出的对话框中,点击“Browse”按钮,选择一个目标磁盘并建立一个自己的工程文件夹;双击进入自己的工程文件夹后,点击保存,系统会自动为此项目命名为system.xmp;点击“OK”按钮,进入BSB欢迎对话框。(3)在欢迎对话框内,选择“I would like to create a new design”,点击“Next”按钮。第7章嵌入式Mini VOS服务器(4)进入开发板选择对话框(见
6、图7.2.2)后,进行如下的系统配置:Board vendor:XilinxBoard name:spartan3E Starter BoardBoard revision:C设置完成后点击“Next”按钮。第7章嵌入式Mini VOS服务器(5)进入处理器选择对话框(见图7.2.3),因为Spartan3E只支持软核MicroBlaze,所以保留默认设置即可。在对话框中还可以看到MicroBlaze系统的一些参数,比如封装类型、速度等。完成后点击“Next”按钮。第7章嵌入式Mini VOS服务器图7.2.2 开发板选择窗口第7章嵌入式Mini VOS服务器图7.2.3 处理器选择窗口第7章
7、嵌入式Mini VOS服务器(6)进入MicroBlaze配置对话框(见图7.2.4),参考时钟频率选择默认值50MHz即可,MicroBlaze处理器的总线时钟频率选择为“66.67”MHz。其中参考时钟由开发板上的时钟源提供,用来产生总线和处理器的频率,并且根据开发板的不同而不同。“Debug I/F”选择“Onchip H/W debug module”,“Local memory”选择默认“8KB”即可。“Cache setup”选择“Enable cache link”。设置完成后点击“Next”按钮。第7章嵌入式Mini VOS服务器图7.2.4 处理器配置窗口第7章嵌入式Mini
8、 VOS服务器(7)进入I/O端口配置对话框(见图7.2.5)。I/O设备选择“RS232_DCE”,不选“RS232_DTE”。波特率选择“115200”,并且打开中断,其他选项默认即可。点击对话框右侧的“Data Sheet”按钮,可以看到关于每个外设的详细资料。选择完毕后点击“Next”按钮。第7章嵌入式Mini VOS服务器图7.2.5 I/O端口配置(一)第7章嵌入式Mini VOS服务器(8)继续配置I/O端口。由于在远程控制中需要通过LED来测试远程控制成功与否,所以选择“LEDs_8bit”,并且打开中断;其他外设除FLASH外,暂不需要,均不勾选,之后点击“Next”按钮,如
9、图7.2.6所示。(9)进入外部存储器与网络接口对话框(见图7.2.7)。Spartan3E开发板使用32MB的外部存储器,由此选择“DDR_SDRAM_16M16”。因为在远程控制中需要通过网络接口来发送数据包,所以“Ethernet_MAC”选项也是必不可少的,同时需要把中断打开,之后点击“Next”按钮。第7章嵌入式Mini VOS服务器图7.2.6 I/O端口配置(二)第7章嵌入式Mini VOS服务器图7.2.7 I/O端口配置(三)第7章嵌入式Mini VOS服务器(10)由于此次远程控制中使用了操作系统,因此需要添加定时器,在图7.2.8所示的对话框中点击“Add Periphe
10、rals”按钮,在弹出的对话框中选择“OPB TIMER”,然后点击“OK”按钮。第7章嵌入式Mini VOS服务器图7.2.8 添加OPB TIMER第7章嵌入式Mini VOS服务器(11)接下来图7.2.9所示的对话框显示了Timer的配置参数,这里,我们只需要一个Timer,并把中断打开,然后点击“Next”按钮。第7章嵌入式Mini VOS服务器图7.2.9 OPB TIMER配置第7章嵌入式Mini VOS服务器(12)进入Cache配置对话框(见图7.2.10)。因为在系统构建之初,我们已经选择了对外部存储器进行Cache缓存,所以在这里需要对其大小进行设置,数据Cache与指令
11、Cache分别为默认“8KB”与“2KB”即可,并且勾选“ICache”与“DCache”,之后点击“Next”按钮。第7章嵌入式Mini VOS服务器图7.2.10 配置Cache第7章嵌入式Mini VOS服务器(13)在图7.2.11所示的软件配置对话框中,标准输入/输出选项选择默认的“RS232_DCE”即可。另外,在搭建MicroBalze硬件平台后,系统会自动生成两个测试程序,分别对外设与外部存储器进行测试,这里默认设置即可,完成后点击“Next”按钮。第7章嵌入式Mini VOS服务器图7.2.11 测试程序选择第7章嵌入式Mini VOS服务器(14)进入测试程序配置对话框(见
12、图7.2.12),主要任务是对存储器测试程序存放的位置进行设置,我们选择使用默认的片内存储器就可以了。当我们下载Bitstream至开发板后,测试程序会自动运行。完成后点击“Next”按钮。第7章嵌入式Mini VOS服务器图7.2.12 Memory测试程序配置第7章嵌入式Mini VOS服务器(15)与上一步的原理相同,这里需要指定外设测试程序的位置,见图7.2.13,选择默认放在外部存储器即可,点击“Next”按钮。第7章嵌入式Mini VOS服务器图7.2.13 Peripheral测试程序配置第7章嵌入式Mini VOS服务器(16)至此,一个MicroBlaze硬件平台已经搭建完毕
13、,点击“Generate”按钮,如图7.2.14所示。第7章嵌入式Mini VOS服务器图7.2.14 硬件系统基本信息表第7章嵌入式Mini VOS服务器(17)点击“Finish”,系统会弹出如图7.2.15所示的窗口,选择“Start using Platform Studio”。图7.2.15 系统配置结束第7章嵌入式Mini VOS服务器(18)此时系统会出现图7.2.16所示的界面,即“Xilinx Platform Studio”的操作界面。(19)在Hardware菜单中点击Generate Netlist,系统会自动综合MicroBlaze的网表文件,值得提醒的是这一步骤所花
14、的时间比较长。第7章嵌入式Mini VOS服务器图7.2.16 XPS操作界面第7章嵌入式Mini VOS服务器(20)选择“Applications”选项,右击工程“TestApp_Memory”,确定“Mark to Initialize BRAMs”被选中,如图7.2.17所示。这样,在将Bitstream下载到开发板的过程中,会自动执行外部存储器的测试程序。第7章嵌入式Mini VOS服务器图7.2.17 配置Memory测试程序第7章嵌入式Mini VOS服务器(21)点击菜单Device ConfigurationUpdate Bitstream,生成Bit文件。(22)由于此次远
15、程控制中我们选择串口进行调试,因此需要新建超级终端,如图7.2.18所示。第7章嵌入式Mini VOS服务器图7.2.18 启动超级终端第7章嵌入式Mini VOS服务器(23)输入超级终端的名字,然后点击确定。(24)打开“连接后使用”下拉菜单,选择开发板所使用的串口号。(25)对串口进行配置,如图7.2.19所示。配置完成之后,点击“确定”按钮。第7章嵌入式Mini VOS服务器图7.2.19 配置超级终端第7章嵌入式Mini VOS服务器(26)将操作环境切换到EDK,选择Device ConfigurationDownload Bitstream,将之前生成的Bitstream与可执行
16、文件一起下载到开发板中。观察超级终端,查看外部存储器中的测试信息。(27)在下载Bitstream的过程中,系统会自动把外部存储器的测试程序下载到片内存储器中并执行。观察超级终端的测试结果,如果测试通过,超级终端会输出图7.2.20所示的信息。第7章嵌入式Mini VOS服务器图7.2.20 Memory测试成功第7章嵌入式Mini VOS服务器7.3 在在EDK中配置项目软件环境中配置项目软件环境在EDK中配置项目软件环境的步骤如下:(1)由于此次设计需要在MicroBlaze处理器上运行uClinux,因此首先应将uClinux的配置文件uclinux_v1_00_d文件夹拷贝到EDKsw
17、lib/bsp文件夹下,否则后续的配置工作将会遇到很多问题。第7章嵌入式Mini VOS服务器(2)启动EDK,打开刚才搭建的MicroBlaze硬件系统工作目录文件夹下的system.xmp文件。(3)在打开MicroBlaze系统文件后,可以在EDK开发环境中看到相关系统信息,如图7.3.1所示。切换到“Bus Interface”,可以看到MicroBlaze系统中各个模块与总线的连接情况。第7章嵌入式Mini VOS服务器图7.3.1 模块与总线连接情况第7章嵌入式Mini VOS服务器(4)这里,我们需要对此系统做出如下修改:将窗口切换到“Ports”,打开“debug_module
18、”,点击“Interrupt”中的“Net”选项,选择“debug_module_Interrupt”,如图7.3.2所示。第7章嵌入式Mini VOS服务器图7.3.2 中断配置(一)第7章嵌入式Mini VOS服务器(5)打开“Ports”选项中的“opb_inct_0”,然后双击“L to H”,如图7.3.3所示。图7.3.3 中断配置(二)第7章嵌入式Mini VOS服务器(6)此时,系统会弹出图7.3.4所示的对话框。图7.3.4 中断添加第7章嵌入式Mini VOS服务器(7)我们需要把“debug_module_Interrupt”加入到“Connected Interrupt
19、s”栏中,具体方法是选中“Potential Interrupt Connections”栏中的“debug_module_Interrupt”,点击加号,即可被加入到“Connected Interrupts”栏中,如图7.3.5所示。第7章嵌入式Mini VOS服务器图7.3.5 中断添加完成第7章嵌入式Mini VOS服务器(8)进行软件平台配置时,点击“Software”菜单,启动“Software Platform Setting”,如图7.3.6所示。图7.3.6 启动软件平台配置第7章嵌入式Mini VOS服务器(9)系统会弹出软件平台的配置窗口,如图7.3.7所示,可以看到共有
20、四个可配置项:“Software Platform”、“OS and Libraries”、“Drivers”、“Interrupt Handle”。右方的窗口为可配置选项的参数。第7章嵌入式Mini VOS服务器图7.3.7 软件平台配置窗口第7章嵌入式Mini VOS服务器(10)这里我们需要逐项进行相关配置(见图7.3.8)。对“Software Platform”进行配置时,点击“Software Platform”,窗口右侧为可配置参数,包括两个子窗口。“Processor Parameters”子窗口中包括处理器主频信息、交叉编译器等选项。其中,“extra_compiler_fl
21、ags”指定了在生成BSP与库的过程中,交叉编译器所使用的编译标志;“archiver”和“compiler”分别指定了生成BSP与库所使用的工具链。第7章嵌入式Mini VOS服务器我们只需修改处理器的主频信息即可,由于在进行系统搭建时选择使用了系统默认的50MHz,因此“CORE_CLOCK_FREQ_Hz”项的“Current Value”改为50MHz,其他选项保持默认。在“OS&Library Settings”子窗口中,打开“OS”的下拉菜单,因为我们选择使用的操作系统为uClinux,所以这里选择“uclinux”。特别值得注意的是,如果步骤(1)没有完成,那么在点开“OS”的下
22、拉菜单后,将没有“uclinux”选项。第7章嵌入式Mini VOS服务器图7.3.8 操作系统选择 第7章嵌入式Mini VOS服务器(11)完成如上配置后,选中“OS and Library”可配置选项(见图7.3.9),以实现开发板对uClinux的BSP进行配置,包括FLASH与MEMORY以及输入/输出调试端口的配置,我们主要对以下参数进行修改:flash_memory_bank:0flash_memory:FLASH_16M8main_memory_bank:0main_memory:DDR_SDRAM_16M16Stdin:RS232_DCEstdout:RS232_DCE第7章
23、嵌入式Mini VOS服务器(12)Drivers及Interrupt Handle两项不需要进行配置,点击“OK”按钮,退出界面。至此,基于uClinux的MicroBlaze软件平台配置完成,下一步是根据软件平台的配置生成针对MicroBlaze处理器的BSP与库,使uClinux与开发板的信息交互成为可能。(13)进入EDK的Software菜单,点击Generate BSP and Libraries,系统会自动生成板级支持包与库,并且可以在MicroBlaze硬件系统工作目录文件夹下的/microblaze_0/libsrc/uclinux_v1_00_d文件夹内找到已生成的auto
24、 config.in文件。第7章嵌入式Mini VOS服务器图7.3.9 操作系统与库配置第7章嵌入式Mini VOS服务器7.4 uClinux交叉编译环境的搭建交叉编译环境的搭建首先在Linux下建立uClinux交叉编译环境,这需要将交叉编译器microblazeelftools和内核源码包uClinuxdist解压缩到指定的目录下。说明:以下均假定Windows主机的D盘下有个文件夹share,该文件夹下包括所需的交叉工具链和uClinux的压缩包。第7章嵌入式Mini VOS服务器7.4.1 建立共享文件夹建立共享文件夹在本小节中,我们需要建立一个可以在Windows与Linux之间
25、共享的文件夹,通过虚拟机VMware来建立。从VMware 5开始,VMware支持直接将Windows下的文件夹映射到Linux的/mnt/hgfs/目录下,从而完成Windows与Linux间的共享。运行虚拟机VMware软件,然后点击“VM”菜单中的“Settings”选项,见图7.4.1。第7章嵌入式Mini VOS服务器(2)在出现的设置页面(见图7.4.2)中选择“Shared Folders”,并确认以下内容:虚拟机中设置的Windows主机共享文件夹名称为“share”,指向包含交叉工具链和uClinux压缩包的文件夹“d:share”。系统启动后,虚拟机中会将此共享文件夹挂接
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- FPGA上的嵌入式系统设计实例 作者 赵峰_ 第7章 FPGA 嵌入式 系统 设计 实例 赵峰
限制150内