首页
|
新闻
|
新品
|
文库
|
方案
|
视频
|
下载
|
商城
|
开发板
|
数据中心
|
座谈新版
|
培训
|
工具
|
博客
|
论坛
|
百科
|
GEC
|
活动
|
主题月
|
电子展
注册
登录
论坛
博客
搜索
帮助
导航
默认风格
uchome
discuz6
GreenM
»
FPGA/CPLD可编程逻辑
» 《Xilinx可编程逻辑器件设计与开发(基础篇)》连载49:Spartan-6的PicoBlaze性能
返回列表
回复
发帖
发新话题
发布投票
发布悬赏
发布辩论
发布活动
发布视频
发布商品
《Xilinx可编程逻辑器件设计与开发(基础篇)》连载49:Spartan-6的PicoBlaze性能
发短消息
加为好友
pengpengpang
(pengpengpang)
当前离线
UID
1023229
帖子
6106
精华
0
积分
3055
阅读权限
90
来自
中国
在线时间
156 小时
注册时间
2013-12-20
最后登录
2016-7-3
论坛元老
UID
1023229
来自
中国
1
#
打印
字体大小:
t
T
pengpengpang
发表于 2014-10-23 20:33
|
只看该作者
《Xilinx可编程逻辑器件设计与开发(基础篇)》连载49:Spartan-6的PicoBlaze性能
开发
,
连载
12.3 PicoBlaze性能
表12-4列出了PicoBlaze微控制器在不同的FPGA系列和不同的速度等级的器件中能达到的最高频率。通常情况下,如果对性能要求不是太高,最好是让PicoBlaze在低频下工作,因为它所处理的外设一般为低速设备,例如,串行通信,按键等。另外,低频工作也会减少等待周期,降低系统功耗。
12.4 PicoBlaze在FPGA设计中的应用
PicoBlaze以三种方式提供给设计者使用,包括VHDL源码、Verilog源码和黑盒子。ISE6.1及以上版本均可以支持。下面主要介绍VHDL源码的设计流程,关于Verilog和黑盒子方式,请参阅Xilinx相关文档。
PicoBlaze的VHDL源文件是KCPSM3.VHD,它支持XST综合和ModelSim仿真,也可以应用其他综合和仿真工具。建议设计者不要以各种方式更改源码。
KCPSM3.VHD模块component声明以及例化如下,KCPSM3包括ALU、寄存器、暂存器等,但是不包括指令存储器。
由于KCPSM3不包括指令存储器,因此需要另外建立指令存储器,并将指令存储器与KCPSM3连接。指令存储器component和例化方式如下所示。
PicoBlaze的汇编源程序的扩展名为psm,其程序存储器的文件名由汇编源文件名决定,如果汇编源文件名为my_rom.psm,经过PicoBlaze编译后产生的程序存储器的VHDL的文件名即为my_rom.vhd,其中的RAM被.psm文件初始化,将这个文件与KCPSM3连接,即可实现完整的PicoBlaze系统。
12.5 PicoBlaze开发工具
PicoBlaze开发工具主要有三个:Xilinx KCPSM3、Mediatronix pBlazIDE和Xilinx System Generator,如表12-5所示,本节主要介绍Xilinx KCPSM3 和Mediatronix pBlazIDE。
12.5.1 KCPSM3开发工具
一、 编译器
KCPSM3编译器是一个简单的DOS可执行程序,还有三个临时文件。将KCPSM3.EXE、ROM_form.vhd、ROM_form.v和ROM_form.coe四个文件拷贝到工作目录。源程序可以用任何文本编辑器编辑,其扩展名为.psm。注意:文件名不超过7个字符。DOS命令如下:
kcpsm3 [.psm]
二、 编译错误
KCPSM3编译过程中,如果程序有错误,会在DOS窗口显示,然而由于编译比较快,很难看清错误信息,因此KCPSM3提供一个命令,可以将错误信息写入一个文本文件。
kcpsm3 [.psm] > screen_dump.txt
三、 输入输出文件
KCPSM3编译器包括4个输入文件和15个输出文件,如图12-24所示。
12.5.2 Mediatronix pBlazIDE 开发工具
Mediatronix pBlazIDE 软件界面如图12-25 所示,它是一个免费的图形化的集成开发环境,它包括的特性介绍如下。
图12-25 Mediatronix pBlazIDE 软件界面
语法彩色高亮显示。
指令集仿真(ISS)。支持断点、寄存器视窗、存储器视窗。
源代码格式化。
KCPSM3-to-pBlazIDE 导入功能/语法转换。
支持HTML 输出,包括彩色高亮显示。
此工具可以从
http://www.mediatronix.com/pBlazeIDE.htm
下载。
一、 设置pBlazIDE
pBlazIDE 支持4 个PicoBlaze 版本,如图12-26 所示。对于Spartan-3、Virtex-2、Virtex-2 Pro 和Virtex-4/5/6 选择Settings→Picoblaze 3。
图12-26 设置pBlazIDE 的PicoBlaze 版本
二、 将KCPSM3 代码导入pBlazIDE
如图12-27 所示,由于KCPSM3 源码与pBlazIDE 源码存在差异,所以当用pBlazIDE进行代码调试时,需要应用导入命令File→Import 进行转换,如图12-28 所示。
图12-27 KCPSM3 源码与pBlazIDE 源码的区别
图12-28 将KCPSM3 代码导入pBlazIDE
KCPSM3 源码与pBlazIDE 源码的差异如表12-6 所示。
三、 PicoBlaze代码模拟
在pBlazIDE开发环境中,开发者可以对应用程序代码进行模拟运行,可以设置断点,观察寄存器、存储器、暂存器的内容,也可以监控输入/输出口以及标志位的状态。这一步骤与常用的Keil51等模拟器相似,不再详述。
12.6 PicoBlaze设计开发包
一个PicoBlaze设计主要包含两个部分,分别是控制器硬件部分和控制器软件汇编源程序。Xilinx的KCPSM3开发包中主要包括如图12-29所示内容,下面分别就每个部分进行简单介绍。
Assembler文件夹包括KCPSM3编译器、HDL格式的Picoblaze程序存储器文件ROM_form.v/ROM_form.vhd、BRAM数据文件ROM_form.coe,另外还有一个清除中间文件的批处理文件cleanup.bat。
DATA2MEM_assistance文件夹中的文件用来更新FPGA的BIT配置文件。在进行基于PicoBlaze的FPGA开发时,PicoBlaze的硬件一般不需要频繁改动,而其psm软件则需要进行多次修改调试,如果psm软件每改一次,就对整个设计进行一次布局布线,就需要花费较多的调试时间,特别是当使用较大规模的FPGA 时,布局布线时间特别长。为了解决这个问题,Xilinx开发了DATA2MEM工具,使用它可以在不进行布局布线操作的情况下,更新bit文件,这极大地节省了调试时间。详细的使用方法请参考其中的TXT 说明文档。
图12-29 KCPSM3 开发包
JTAG_loader 文件夹中的文件讲述了如何用JTAG 下载电缆更改PicoBlaze 的程序存储器的内容,而不需要重新运行布局布线。详细使用方法请参考其中的JTAG_loader_quick_guide.pdf 文件。
VHDL 文件夹包含了KCPSM3.vhd 的微控制器硬件描述文件以及一个串口相关文件。
Verilog 文件夹包含了KCPSM3.V 的微控制器硬件描述文件以及一个串口相关文件。
KCPSM3 开发包中的KCPSM3_Manual.pdf 文件为Picoblaze 的应用手册,UART_Manual.pdf 文件为用Picoblaze 实现串口通信的应用手册,UART_real_time_clock.pdf 文件为一个用PicoBlaze 实现的时钟描述文件,kcpsm3.ngc 为PicoBlaze 的网表文件。另外,读者还可以从Xilinx 的官方网站下载更多的Xilinx 验证过的参考设计和应用文档,包括xapp213、xapp387、xapp374、xapp627、ug129 等。
收藏
分享
评分
记录学习中的点点滴滴,让每一天过的更加有意义!
回复
引用
订阅
TOP
返回列表
测试测量
电商论坛
Pine A64
资料下载
方案分享
FAQ
行业应用
消费电子
便携式设备
医疗电子
汽车电子
工业控制
热门技术
智能可穿戴
3D打印
智能家居
综合设计
示波器技术
存储器
电子制造
计算机和外设
软件开发
分立器件
传感器技术
无源元件
资料共享
PCB综合技术
综合技术交流
EDA
MCU 单片机技术
ST MCU
Freescale MCU
NXP MCU
新唐 MCU
MIPS
X86
ARM
PowerPC
DSP技术
嵌入式技术
FPGA/CPLD可编程逻辑
模拟电路
数字电路
富士通半导体FRAM 铁电存储器“免费样片”使用心得
电源与功率管理
LED技术
测试测量
通信技术
3G
无线技术
微波在线
综合交流区
职场驿站
活动专区
在线座谈交流区
紧缺人才培训课程交流区
意见和建议