RISC设计
扫描二维码
随时随地手机看文章
RISC设计
与PowerPCArchitecture兼容的32位实现。支持8位,16位,32位整型以及32位和64位的浮点类型
32个通用的整型寄存器
单独的存储加载指令用于访问内存
32位定长指令格式,大部分指令只需一个周期
支持多种异常和中断
支持特权等级和用户等级
寄存器
32个32位通用寄存器r0,r1,……r31,XER(异常);浮点单元:32个64位浮点寄存器:fp0,fp1,……fp31,FPSCR;32位CR寄存器共分为8段,每段四位(LT,GT),cr0,cr1…..cr7;32为计数寄存器CTR作为循环计数器使用;链接寄存器LR保存函数调用等的返回地址
MSR机器状态字控制异常、中断、MMU等的使能,大小端模式,中断前缀;此外还定义了一些特殊功能寄存器用于MMU控制SDR,SRx;用于异常处理的特殊寄存器SRR0/SRR1;用于调试的硬件断点,时基寄存器;此外在e300规范外还定义了HIDx用于cache控制等.
异常和中断
e300内核支持种类型,当异常产生时CPU跳转到相应的偏移处执行异常服务程序。E300中每个异常向量的大小是256字节(只能用来做现场维护,然后跳转),异常向量表的的高位地址可以是000n_nnnn或者FFFn_nnnn(但一般都是0地址处)
Cache结构片上32KBcache分为4路,每路128个set结构,如下:
MMU
指令集