基于MIPS架构的RISC微处理器RM7000A
ASID——Address Space Identifier,虚拟空间标识符,表示内核态(kernel)、管态(supervisor)、用户态(user)三种虚拟空间。
G——Global,每个TLB入口都有的标识符。
(6)指令格式及寻址方式
需要注意的一点是:尽管RM7000A是64位的微处理器,但它的指令长度都是固定的32位。
RM7000A是一种典型的寄存器型(Register-Register)微处理器,即除了load/store指令外,其它的指令不能直接访问内存。这样的好处显而易见:寄存器的访问速度比存储器快得多,寄存器存储使得编译器的效率提高,于是程序的执行速度加快;另外,表示寄存器的位数比表示内存单元的位数要少,从而可以改善指令密度。
MIPS类的指令可以用三种形式表示。
javascript:window.open(this.src);" style="cursor:pointer;"/>
MIPS构架支持两种寻址方式。
◆ 立即数寻址(immediate)。例如:Add R1,#10,这里#10的代表常数10,指令含义是Regs[R1]←egs[R1]+10。
◆ 位移寻址(displacement)。例如:Add R1,10(R2),指令含义是Regs[R1]←egs[R1]+Mem[10+Regs[2]]。
对操作数稍做改变,可以得到另外两种寻址方式。
◆ Add R1,(R2) Regs[R1]←Regs[R1]+Mem[Regs[R2]]
寄存器R2存放的只是一个地址,这个地址的内容才是要取的数据,这相当于寄存器间接寻址。
◆ Add R1,10 Regs[R1]←Regs[R1]+Mem[10]
此时第二个寄存器必须是r0,借助于r0(如前所述,r0被硬接位0)提供的0,就得到了直接寻址方式。
javascript:window.open(this.src);" style="cursor:pointer;"/>
因此,实际上微处理器有四种寻址方式可用,提高了编程的灵活性。
(7)数据类型
MIPS体系对于对齐(align)有着相当严格的要求,指令必须32位对齐;超过一个字节的数据必须按规则对齐:
◇半字的边界要与偶数对齐;
◇字的边界要与mod 4=0的字节对齐;
◇双字的边界要与mod 8=0的字节对齐。
如图4所示,是数据对齐示意图。采用这种方式对齐可以简化硬件判断、控制部分的设计,节省芯片空间,也有利于加快程序运行速度。
javascript:window.open(this.src);" style="cursor:pointer;"/>
2 应用及实现探讨
以RM7000A为基础,配合不同的外围器件,可以构成多种应用形式。
(1)典型应用
图5所示是一种较为简单的应用方式,特点是器件少、可靠性好、整个系统所占空间很小,适合于空间受到限制的领域。因为需要识别和驱动的设备不多,引导和应用程序都相对简单;通过Dual UART接口可以和主计算机通信,并且在主计算机的超级终端里显示本系统运行的信息,如图6所示。
具体应用:
① 可以作为单独的电脑板,配以适当的外设,构成一个小型的高速计算机系统,用于完成比较简单且单一的任务;
② 可以根据应用的要求,增加总线的控制芯片和接口,作为一个总线上的CPU控制板(比如:PCI总线、CompactPCI总线),配合传感器或其它板卡如AD/DA板、DSP通信板等,进行测试、高速数据采集、大量的图形图像处理等工作;
③ 用于其它网络设备中,如大型的路由器、交换机等。
javascript:window.open(this.src);" style="cursor:pointer;"/>
(2)扩展应用
上述应用中,为减小体积,存储容量受到了限制,也没有提供类似键盘鼠标的对外接口。而人们已经习惯了PC的使用,总是希望能够以比较熟悉的方式来操作其它系统。对上述应用做适当的扩展,就可以达到近似于PC的结构,应用框图如图7所示。
通过增加南桥、超级I/O等芯片,就可以获得类似于PC结构中的各种接口。具体应用如下:
① 作为开发板,测试、移植在MIPS系统上运行的不同操作系统,开发调试基于MIPS的各种应用软件;
② 作为一个完整的系统构成便携式电脑;
③ 利用Dual UART的显示,或者扩展的VGA显示功能,增大的外部存储器容量,作为高速图形工作站进行图形图像的设计、开发工作;
④ 作为网络服务器应用于Internet和企业局域网中提供各种网络服务;
⑤ 作为分布式处理系统的一个节点工作站,比如银行系统中,RM7000A的高速、宽带能对各种交易请求做出快速响应;
javascript:window.open(this.src);" style="cursor:pointer;"/>
⑥ 由于南桥引入了ISA总线,还可以改制成AT96总线方式,作为CPU控制板应用于工控或其它地面设备中;同样也可以扩展出PCI、CompactPCI接口作为控制板用于各种民品军品中。
结 语
基于MIPS的微处理器在国外主要用于高端设备,在国内的开发应用还不是很广。但是,MIPS强大的功能和它先进的技术理念已经逐渐为人们所认识到。研制基于MIPS的高性能计算机系统,进而带动相关操作系统的研究、移植,以及各种应用程序的开发,对于提高计算机应用研究水平,提高产品尤其是军品的性能和竞争力,具有很重要的现实意义。
(本文为缩写版本,详细内容请见www.dpj.com.cn)