PicoBlaze 学习笔记2:PicoBlaze结构<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
PicoBlaze结构框架图
<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />
KCPSM3
output[9:0] address; //10位地址线
input [17:0] instruction; // 18位指令输入
output [7:0] port_id; //I/O地址控制
output write_strobe,read_strobe,interrupt_ack; //写控制、读控制和中断应答
input [7:0] out_port; //8位输出接口
input [7:0] in_port; //8位输入接口
input interrupt,reset.clk; //中断输入、复位输入和时钟输入
KCPSM3 核心结构图
程序存储器和指令
PicoBlaze的存储空间为1024x18bit,也就是能够存放1024条位长为18的指令。而PicoBlaze支持的指令集也很精简,只有57条,包含了程序控制类(跳转,调用,返回),算数类(加,减,比较),逻辑类(与,或,异或),中断类(中断开启/关闭),移位/旋转类(左移/右移,左旋/右旋),输入/输出类(输入,输出)。
通用寄存器
KCPSM3中一共有16个长度为8位的通用寄存器,每个寄存器都可以在汇编代码中分别命名。
中断
KCPSM3只支持1个中断信号,但实际上可以将多个中断信号用逻辑组合的方式变成一个来用(当然这样的话会降低单中断通道的性能)。
Scratch Pad Memory暂时存储器便笺式存储器(高速暂存存储器)
它的大小为64 Bytes,作用相当于一块临时存储区,比如在中断例程ISR中可以将其作为临时变量适用。
参考资料:
PicoBlaze 介绍(二)-simux的博客-与非网
http://www.eefocus.com/myspace/blog/show.php?id=143892
设计PicoBlaze处理器
http://www.dzsc.com/data/html/2008-9-19/69649.html
文章评论(0条评论)
登录后参与讨论