MIPS 架构和 ARM 架构有什么异同点,它们的优势和劣势分别是什么

2025-03-10 14:25:26
推荐回答(1个)
回答1:

同:
MIPS和ARM都由Berkeley risc演变而来。

均采用load/store构架,即数据总是从register中load出来运算后再store进register里。不能直接把数据直接从memory中load出来处理,得分两步走。。。好处就是大大降低了decode的complexity。

addressing mode简单

指令数量少
大量的register bank

异:
risc里有些特性被ARM reject掉了。

delay slot,这个在single issue的pipeline结构下是没问题的,通常由compiler来寻找一条independent的指令就好了。但随着pipeline stage变长,super-scalar的应用,需要填充的slot不再只是一个,这就给调度带来了难度,在这种情况下exception也很难处理。所以为了简化复杂度,很多处理器都不再采用了。
register windows,这个主要适用于多线程任务,为了支持context switch。这个需要巨多的register,但从处理单元的角度去看,他每次总是只能看到32个register,即window,为当前线程所访问的register。当线程被切换,它所对应的32个register被置于shadow状态,而另外一组register被activate。很显然这个能明显提高性能,问题是巨多的register意味着large area以及巨多的功耗。ARM是支持多线程的,但不清楚具体采用的哪种implementation。
single cycle execution,ARM的data processing 指令大部分都是一个周期执行,但是load/store指令以及乘除square root之类的指令都需要多个cycle。