欢迎来到天天文库
浏览记录
ID:27502616
大小:607.00 KB
页数:12页
时间:2018-12-04
《Xilinx可编程逻辑器件设计与开发(基础篇)连载49:Spartan.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、Xilinx可编程逻辑器件设计与开发(基础篇)连载49:Spartan 12.3PicoBlaze性能 表12-4列出了PicoBlaze微控制器在不同的FPGA系列和不同的速度等级的器件中能达到的最高频率。通常情况下,如果对性能要求不是太高,最好是让PicoBlaze在低频下工作,因为它所处理的外设一般为低速设备,例如,串行通信,按键等。另外,低频工作也会减少等待周期,降低系统功耗。 12.4PicoBlaze在FPGA设计中的应用 PicoBlaze以三种方式提供给设计者使用,包括VHDL源码、Verilog源码和黑盒子
2、。ISE6.1及以上版本均可以支持。下面主要介绍VHDL源码的设计流程,关于Verilog和黑盒子方式,请参阅Xilinx相关文档。 PicoBlaze的VHDL源文件是KCPSM3.VHD,它支持XST综合和ModelSim仿真,也可以应用其他综合和仿真工具。建议设计者不要以各种方式更改源码。 KCPSM3.VHD模块component声明以及例化如下,KCPSM3包括ALU、寄存器、暂存器等,但是不包括指令存储器。 由于KCPSM3不包括指令存储器,因此需要另外建立指令存储器,并将指令存储器与KCPSM3连接。指令
3、存储器component和例化方式如下所示。 PicoBlaze的汇编源程序的扩展名为psm,其程序存储器的文件名由汇编源文件名决定,如果汇编源文件名为my_rom.psm,经过PicoBlaze编译后产生的程序存储器的VHDL的文件名即为my_rom.vhd,其中的RAM被.psm文件初始化,将这个文件与KCPSM3连接,即可实现完整的PicoBlaze系统。 12.5PicoBlaze开发工具 PicoBlaze开发工具主要有三个:XilinxKCPSM3、MediatronixpBlazIDE和XilinxSys
4、temGenerator,如表12-5所示,本节主要介绍XilinxKCPSM3和MediatronixpBlazIDE。 12.5.1KCPSM3开发工具一、编译器 KCPSM3编译器是一个简单的DOS可执行程序,还有三个临时文件。将KCPSM3.EXE、ROM_form.vhd、ROM_form.v和ROM_form.coe四个文件拷贝到工作目录。源程序可以用任何文本编辑器编辑,其扩展名为.psm。注意:文件名不超过7个字符。DOS命令如下: kcpsm3[.psm]二、编译错误 KCPSM3编译过程中,如果程序有错误,
5、会在DOS窗口显示,然而由于编译比较快,很难看清错误信息,因此KCPSM3提供一个命令,可以将错误信息写入一个文本文件。 kcpsm3[.psm]>screen_dump.txt三、输入输出文件 KCPSM3编译器包括4个输入文件和15个输出文件,如图12-24所示。 12.5.2MediatronixpBlazIDE开发工具 MediatronixpBlazIDE软件界面如图12-25所示,它是一个免费的图形化的集成开发环境,它包括的特性介绍如下。 图12-25MediatronixpBlazIDE软件界面 语法彩
6、色高亮显示。指令集仿真(ISS)。支持断点、寄存器视窗、存储器视窗。源代码格式化。KCPSM3-to-pBlazIDE导入功能/语法转换。支持HTML输出,包括彩色高亮显示。 此工具可以从下载。一、设置pBlazIDE pBlazIDE支持4个PicoBlaze版本,如图12-26所示。对于Spartan-3、Virtex-2、Virtex-2Pro和Virtex-4/5/6选择SetTIngs→Picoblaze3。 图12-26设置pBlazIDE的PicoBlaze版本二、将KCPSM3代码导入pBlazIDE 如图1
7、2-27所示,由于KCPSM3源码与pBlazIDE源码存在差异,所以当用pBlazIDE进行代码调试时,需要应用导入命令File→Import进行转换,如图12-28所示。 图12-27KCPSM3源码与pBlazIDE源码的区别 图12-28将KCPSM3代码导入pBlazIDE KCPSM3源码与pBlazIDE源码的差异如表12-6所示。 三、PicoBlaze代码模拟 在pBlazIDE开发环境中,开发者可以对应用程序代码进行模拟运行,可以设置断点,观察寄存器、存储器、暂存器的内容,也可以监控输入/输出口以及
8、标志位的状态。这一步骤与常用的Keil51等模拟器相似,不再详述。 12.6PicoBlaze设计开发包 一个PicoBlaze设计主要包含两个部分,分别是控制器硬件部分和控制器软件汇编源程序。Xili
此文档下载收益归作者所有