返回

重生香江之传奇人生

首页
关灯
护眼
字体:
第53章 arm与x86指令集
   存书签 书架管理 返回目录
    简而言之,x86实际上是以增加处理器本身复杂度作为代价,去换取更高的性能,而arm则是将复杂度交给了编译器,牺牲了程序大小和指令带宽,换取了简单和低功耗的硬件实现。但如果事情就这样展下去,为了提升性能,x86的处理器将越来越大,而arm需要的内存带宽则会突破天际,这都是受到技术限制的。因此,对于前世已经向要将已经自成体系的arm和x86二合一,那是非常困难的,要不然苹果也只是成天在嘴里嚷嚷而已,而见不到实物。

    但是,这些问题,对于对于arm还没有产生和x86还处于初级阶段的叶开来说,这些都不是问题,他只要按照英特尔在前世95年布的奔腾处理器的架构思 路来设计就可以了。

    前世的英特尔在奔腾处理器,在x86的架构引入了微码概念,与此对应的,处理器内部也增加了所谓的译码器,负责将传统的复杂指令“拆包”为更加短小的微码(uops)。

    一条复杂指令进来以后,会被译码器拆分为数量不等的微码,然后送入处理器的执行管线——这实际上可以理解为精简指令集内核+复杂指令集解码器。而精简指令集也引入了指令集这个就逻辑角度而言非常不精简的东西,来增加运算性能。

    正常而言,一条x86指令会被拆解为2~4个uops,平均来看就是3个,因此同样的指令密度下,x86的实际指令执行能力应该大约是arm的3倍左右。不过不要忘了这是基于“同样指令密度”下的一个假设,实际上x86可以达到的指令密度是十倍甚至百倍于arm的。

    这样的话,在英国的公司设计的指令集,就需

第53章 arm与x86指令集(1/4)
上一章 目录 下一页