Lx5280模拟器移植设计及实施

2011-08-22 02:22:14夏兴昇
科技视界 2011年5期
关键词:指令

夏兴昇

(江苏经贸职业技术学院 江苏 南京 211168)

在分析模拟器基本原理,剖析GNU模拟器源程序,及分析了Lx5280新增部分的基础上,开始对模拟器进行移植,下面是移植设计及实施。

1 移植设计

1.1 Lx5280增加的结构和指令总结

经过第三章Lx5280结构分析,总结出Lx5280在结构上增加有:

(1)采取超标量流水线结构

(2)增加 Circular Buffers

(3)增加 Zero Overhead Loop 功能

(4)增加了一个用于乘除的DMAC单元

(5)增加了8个高优先级中断

增加的指令有六大类:

(1)双字读写指令

LT、ST

从存储器读写双字(64位)到一对偶数开始的通用寄存器中。

(2)Circular Buffers 存取操作指令(指令含”P”)

LBP[.Cn]、 LBPU[.Cn]、LHP[.Cn]、 LHPU[.Cn]、 LWP[.Cn]、LTP[.Cn]、 SBP[.Cn]、SHP[.Cn]、 SWP[.Cn]、STP[.Cn]

(3)对新增寄存器操作指令

MFRU、 MTRU 读 写 cbe[0-2]、cbs[0-2]、lpc0、lps0、lpe0、mmd

MFRK、MTRK 读写Lexra-Cop0kernal寄存器(目前保留)

MFLXC0 、MTLXC0 读 写 ESTATUS、ECAUSE、INTVEC

(4)DMAC 操作指令

CMULTA

DIVA(U)

MULTA(U)、MULTA2、MADDA(U)、MADDA2[.S]

MSUBA(U)、MSUBA2[.S]、MULNA2 、

SUBMA[.s]、ADDMA[.s]

MTA2[.G]、MFA、MFA2

RNDA2

(5)算数操作指令、

ADDR、SUBR、SLTR、SLLV、SRLV、SRAV、MIN、MAX、ABSR、MUX、CLS、BITREV

(6)条件转移指令

CMVEQZ[.H][.L]、CMVNEZ[.H][.L]

1.2 移植设计分析

下面按照配置文件修改,对新增结构支持,对新增指令支持的顺序进行分析。

1.2.1 要求产生的模拟器为支持Lx5280的模拟器,将配置时的target定为lx5280。这就需要对configure文件进行修改,以支持target=lx5280。对于mips和lx5280在基本配置上都一样,只是他们的指令集不同(mips用MIPS1指令集,lx5280用lx5280指令集),所以在非指令集配置中含有mips选项的就增加lx5280选项,而对于指令集配置要对lx5280单独配置。

1.2.2 对于新增超标量流水线结构,如前面所述,它不影响程序的执行,而且模拟它并不能提高模拟器的速度,所以不移植。

1.2.3 对于 Circular Buffers。 它包含 cbs[0-2]、cbe[0-2]六个32位寄存器,增加到原来的寄存器组registers中即可,相关指令会根据其内容进行操作。

1.2.4 对于 Zero Overhead Loop 功能。 它包含 lps0、lpe0、lpc0三个32位寄存器。同样增加到原来的寄存器组registers中。可但它的行为并不是靠指令驱动的,而是在每条指令执行期间都会发生,并且是靠硬件完成的,判断PC值是否和它的寄存器值相匹配。……

登录APP查看全文

猜你喜欢
指令
听我指令:大催眠术
ARINC661显控指令快速验证方法
测控技术(2018年5期)2018-12-09 09:04:26
LED照明产品欧盟ErP指令要求解读
电子测试(2018年18期)2018-11-14 02:30:34
杀毒软件中指令虚拟机的脆弱性分析
电信科学(2016年10期)2016-11-23 05:11:56
巧用G10指令实现椭圆轮廓零件倒圆角
时代农机(2015年3期)2015-11-14 01:14:29
中断与跳转操作对指令串的影响
科技传播(2015年20期)2015-03-25 08:20:30
基于汇编指令分布的恶意代码检测算法研究
一种基于滑窗的余度指令判别算法
欧盟修订电气及电子设备等产品安全规定
家电科技(2014年5期)2014-04-16 03:11:28
MAC指令推动制冷剂行业发展
汽车零部件(2014年2期)2014-03-11 17:46:27