零壹与或非分享 http://blog.sciencenet.cn/u/dthome9180 站得更高,才能望得更;远看得更细,才能找到好草

博文

处理器指令系统漫谈(4):开放

已有 2420 次阅读 2019-8-4 20:33 |个人分类:观点评述|系统分类:科普集锦| 处理器, 指令

之前我们介绍了CISC的经典指令系统大型机的360/370和小型机的VAX,总结了代码尺寸是一个比较重要的评价指标。1970年代还有两个指令系统Intel 8086和Motorola 68000。这两个指令系统都是微处理器的早期代表。关于它们我们可以从IEEE MICRO 1981年的比较论文看到。【1】具体的如下表:其中z80和x86兼容的,后两个处理器是国家半导体的NS16000系列,对现在的影响力不太大。

image.png

关于x86和68000的具体指令系统不用太关心,关键是这两个指令系统中为什么最终胜利的是x86指令系统?“技术”往往不是最决定的因素。我们来看看他们的设计目标。

8086指令系统的设计目标很简单,显得市场野心并不那么强烈【2】。

1) 兼容8080(第一个商业微处理器,8位),提高性能

2)更多的指令,16位算术运算和可中断字节串处理

3)支持可重入代码、位置无关代码和动态重定位程序

4)支持大于64KB(2MB)地址空间和支持多处理器

image.png

image.png


反观68000,从文章中看出公司的设计目标比较高大上,但也比较虚幻【3】:

1)处理器系列的体系结构级兼容性

2)易用性和可用性

3)市场性

4)可扩充性

5)支持高级语言

image.png

image.png

还是“市场”决定了最终选择的是x86,而不是68000。虽然68000被选为流行的Apple的Macintosh机,但Macintosh从来没有像PC一样普及(部分原因是Apple不允许使用克隆),68000并没有获得与8086相同的软件普及率。 摩托罗拉68000在技术上可能比8086更显耀,但IBM和IBM开放架构战略的选择相对于68000的技术优势在市场上起到了主导作用。

其实在当时IBM对68000也很感兴趣,但是68000的目标较高,研发时间过长。而Intel当时也想设计32位的指令系统,但是市场不等,所以Intel团队仅用了10个人周大概3个星期就扩展了8080的8位指令系统到8086的16位指令系统。最终Intel按计划(52周)完成了芯片的开发,并提供给IBM,但是公司并没有大张旗鼓的宣传(估计在技术上没啥可宣传的)。

从这个故事看出来,影响指令系统是否成功和是否长寿的一个原因是是否“开放”,在商业模式上允许尽可能多的公司来通过这个指令系统或者处理器来赚钱。Apple和Motorola选择了相对封闭的模式,所以在“市场”上输给了更开放的IBM PC和x86指令系统的Intel处理器。在之后ARM的处理器IP核,Google搜索,智能手机iOS和Andriod等能够成功大多数也都是相对“开放”的商业模式,用的人多了,软件就多了,可以通过附加的其他方式赚钱吗,而不仅仅是从计算机软硬件系统本身上。

“开放”是久经考验的商业模式,最近的RISC-V指令系统也一样采用了这种模式,吸引了众多的开发者,势头强劲。如果今后面向新时代设计的指令系统也应该尊崇“开放”的原则。当然,“开放”、“免费”、“开源”并不是一个概念,需要进一步好好学习。

还有从x86和68000的设计目标来看,都支持可扩展,在指令编码上支持为未来的指令扩展提供支持,可以扩展新功能指令,也可以支持对32位、64位或者更强其他指标的扩展。

到目前为止(1970年代),我们已经总结了4个指令系统设计的原则了:兼容、代码尺寸、开放、可扩展,这四点RISC-V都做到了。进入1980年代后,微处理器指令系统进入RISC的时代,持续了30年,我们在之后讨论RISC给我们带来的启示。


【1】Toong, H. D. and A. Gupta. 1981. "An Architectural Comparison of Contemporary 16-Bit Microprocessors." Micro, IEEE 1(2): 26-37.

【2】Morse, S. P., et al. 1978. "The Intel 8086 Microprocessor: a 16-bit Evolution of the 8080." Computer 11(6): 18-27.

【3】Stritter and Gunter. 1979 "A Microprocessor Architecture for a Changing World: The Motorola 68000." Computer 12(2): 43-52.



https://blog.sciencenet.cn/blog-102148-1192410.html

上一篇:处理器指令系统漫谈(3):CISC
下一篇:处理器指令系统漫谈(5):RISC
收藏 IP: 222.29.114.*| 热度|

0

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-4-25 07:00

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部