PicoBlaze学习笔记(1)<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
Xilinx嵌入式IP核貌似用的不多,远远没NIOSII那么风行,网上的资料不多,给学习带来了很大的不便,我也是摸着石头过河,在黑暗中摸索。此学习笔记是对PicoBlaze学习的点滴记录。
(一) Xilinx的嵌入式核
Xilinx公司的嵌入式解决方案以3类RISC结构的微处理器为核心,涵盖了系统硬件设计和软件调试的各个方面。3类嵌入式内核分别为:PicoBlaze、MicroBlaze和PowerPC,其中PicoBlaze和MicroBlaze是可裁剪的软核处理器,PowerPC为硬核处理器。
PicoBlaze是由VHDL语言在早期开发的小型8位软处理器内核包,其汇编器是简单的DOS可执行文件KCPSM2.exe,用汇编语言编写的程序经过编译后放入FPGA的块RAM存储区,汇编器可在3s内编译完存储在块RAM中的程序。
MicroBlaze采用功能强大的32位流水线RISC结构,包含32个32位通用寄存器和一个可选的32位移位寄存器,时钟可达150MHz,在Virtex 2 Pro以及更高系列的平台上,运行速度可达120DMIPs(DhrystoneMIPS),占用资源不到1000个Slice。
PowerPC是32位PowerPC嵌入式环境架构,确定了若干系统参数,用以保证在应用程序级实现兼容,增加了其设备扩展的灵活性。Xilinx将PowerPC 405处理器内核整合到Virtex 2 Pro系列以及更高等级系列的芯片中,允许该硬IP核能够深入到FPGA架构的任何部位,提供高端嵌入式应用的FPGA解决方案。Virtex 4以及Virtex 5系列部分芯片中集成了2~4个PowerPC405处理器核。
目前使用较多的嵌入式内核是MicroBlaze和PowerPC,工作频率可达到数百兆赫兹,还添加了新的浮点单元选项,使嵌入式开发人员可将系统性能提升至软件仿真速度的百倍以上,非常适合针对网络、电信、数据通信、嵌入式和消费等市场的产品。
PicoBlaze——8位软核
http://china.xilinx.com/products/ipcenter/picoblaze-S3-V2-Pro.htm
MicroBlaze——32位软核
http://china.xilinx.com/products/design_resources/proc_central/microblaze.htm
PowerPC——32位硬核
http://china.xilinx.com/products/design_resources/proc_central/index.htm
(二) PicoBlaze处理器的IP Core应用架构
<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />
中文翻译:
kcpsm3.v文件(PicoBlaze处理器模块)
output [9:0] address ; //10位地址线
input [17:0] instruction ; //18位指令输入
output [7:0] port_id ; //I/O地址控制
output write_strobe, read_strobe, interrupt_ack ; //写控制、读控制、中断
output [7:0] out_port ; //8位输出接口
input [7:0] in_port ; //8位输入接口
input interrupt, reset, clk ; //中断输入、复位、时钟输入
FPGA 块存储器(Block Memory)模块
input [9:0] address; //10位地址线
input clk; //时钟输入
output [17:0] instruction; //18位指令输出
参考资料:
1) 可配置嵌入式系统(EDK)介绍
http://bbs.eccn.com/ecbbs/dispbbs.asp?boardid=2&id=94793&star=1&page=1
2)XAPP213:用于 Virtex?-E 和 Spartan?-II/IIE 器件的 PicoBlaze 8 位微控制器
http://china.xilinx.com/ipcenter/processor_central/picoblaze/picoblaze_user_resources.htm
2) KCPSM3_Manual
文章评论(0条评论)
登录后参与讨论