RISC設(shè)計(jì)
與PowerPCArchitecture兼容的32位實(shí)現(xiàn)。支持8位,16位,32位整型以及32位和64位的浮點(diǎn)類型
32個(gè)通用的整型寄存器
單獨(dú)的存儲加載指令用于訪問內(nèi)存
32位定長指令格式,大部分指令只需一個(gè)周期
支持多種異常和中斷
支持特權(quán)等級和用戶等級
寄存器
32個(gè)32位通用寄存器r0,r1,……r31,XER(異常);浮點(diǎn)單元:32個(gè)64位浮點(diǎn)寄存器:fp0,fp1,……fp31,F(xiàn)PSCR;32位CR寄存器共分為8段,每段四位(LT,GT),cr0,cr1…..cr7;32為計(jì)數(shù)寄存器CTR作為循環(huán)計(jì)數(shù)器使用;鏈接寄存器LR保存函數(shù)調(diào)用等的返回地址
MSR機(jī)器狀態(tài)字控制異常、中斷、MMU等的使能,大小端模式,中斷前綴;此外還定義了一些特殊功能寄存器用于MMU控制SDR,SRx;用于異常處理的特殊寄存器SRR0/SRR1;用于調(diào)試的硬件斷點(diǎn),時(shí)基寄存器;此外在e300規(guī)范外還定義了HIDx用于cache控制等.
異常和中斷
e300內(nèi)核支持種類型,當(dāng)異常產(chǎn)生時(shí)CPU跳轉(zhuǎn)到相應(yīng)的偏移處執(zhí)行異常服務(wù)程序。E300中每個(gè)異常向量的大小是256字節(jié)(只能用來做現(xiàn)場維護(hù),然后跳轉(zhuǎn)),異常向量表的的高位地址可以是000n_nnnn或者FFFn_nnnn(但一般都是0地址處)
Cache結(jié)構(gòu)片上32KBcache分為4路,每路128個(gè)set結(jié)構(gòu),如下:
MMU
指令集
??