第六十八章 总控制芯片

李逸轩摇头否定道:“存储器芯片美日双方现在正打的厉害,我没兴趣掺和进去,我生产的芯片是给硬盘上用的管理控制芯片,属工控芯片的一个小分支。”

“哦,工控芯片,能具体说说吗?”作为工业司司长,郭英年当然知道工控芯片,没想到李逸轩居然要生产这个,不过他始终不信对方要生产工控芯片,认为李逸轩是在忽悠他。

李逸轩当然是在忽悠他,桌面cpu他肯定会搞,而且是必须搞,可他敢这么说吗,一旦这么说了,改为工业用途的土地还指不指望对方批了,先唬住对方在说。

引导对方来到一处硬盘组装区前,从流水线上拿起一看电路板,“郭司长请看,这块电路板上的芯片用的就是工控芯片,这是美国西部数据公司发布的65c02处理器,我要生产的就是能替代它的cpu。”

“65c02,这跟华科生产的6502cpu有什么关系?”郭英年敏锐的感觉到这两者之间应该有莫大的关系。

“1974年,楚克·佩德尔从摩托罗拉公司带出来的六位工程师,一起创办了mostechnology公司,六位工程师中有一位名叫billmensch(比尔·门斯)的家伙,他野心很大,在mostechnology科技完成了6502处理器的开发之后,迅速看准时机,从mos科技抽身而出,创立westerndesigncenter,即西部设计中心。huye.org 红尘小说网

终于也在1978年,比尔顺利开发出基于cmos工艺的65c02处理器,成功实现对6502处理器的跨代升级。虽然65c02比6502更加得优秀,但在商业上却是个失败的作品,6502只需25美元,而每颗65c02却需要128美元,这么高的价格,性能完全比不上英特尔公司的8086和8087处理器。

因此,比尔·门斯不得不重新修改了设计,成本虽然降下来了,但性能也大打折扣,更重要的是在低端处理器市场,西部设计中心已经失去了先机,他已被mos牢牢占据。

不得已之下,西部设计中心只能往嵌入式处理器发展,为ibm的硬盘和8英寸软驱提供工控解决方案。因祸得福,wdc在该领域市场大获成功。这也是我的硬盘会用65c02做控制芯片的原因。”

郭英年并不知道两家公司还这么一层关系,问道:“那你为什么不继续使用65c02?”

“因为65c02有很大的缺点,它的控制逻辑核心是依靠接口控制卡上所带的rom芯片,对dma通道的占用很大,这使得硬盘电路控制板的设计变得复杂,而且电路板的面积也显得很大。郭司长你看,眼前的这款电路板几乎沾满了整块硬盘的一面,再想把硬盘做小一点根本就不行了。

另外,他还影响了硬盘容量的升级,10mb容量以下还好,容量上了20mb,65c02的性能就无法支撑了。更关键的是,由于65c02自有的控制逻辑,使得硬盘在使用过程中用户必须忍受一大堆跳线和拨动开关的困扰(在早期的电脑上,每件设备所占用的系统资源都是由用户手动更改跳线或拨动开关来进行分配的)这为硬盘的易用性带来了困难。

所以我打算改变它,重新设计一种新型的控制芯片,让硬盘变得方便易用。”

郭英年被李逸轩口里蹦出来的各种专业术语给绕晕了,但他还是明锐的抓住对方的一个关键词,“你会设计芯片?”

“yes。”李逸轩镇定的回答道。

这下郭英年不淡定了,要知道芯片设计可是一项高技术活,香港目前没有一家公司懂得怎么设计芯片,就连华科电子工业公司也不行,它的6502芯片都是从mos引进的呢,对方怎么设计的,自己就怎么生产,即便是小小的修改一下都做不到,而眼前的这个年轻人居然说自己能设计芯片,让他实在是无法相信。

李逸轩知道光凭嘴巴说,对方是不能相信的,于是把自己设计的芯片草图拿了出来,他不怕被泄露,因为这种构架设计他早就申请好了专利,而且一个总体的设计草图也说明不了什么。

把图纸摊开,一副cpu初步设计草图呈现在郭英年眼前。

李逸轩设计的芯片采用的后世常见的arm处理器结构,arm采用的哈佛流水线结构,这是绝大多数risc精简指令集处理器常用的一种结构。

当然了,由于设计重心的不同,哈佛流水线结构演化成很多不同的构架。而arm的核心设计理念是低功耗和低成本,兼具稳定可靠。日后成为了移动电子设备的首选cpu,后来硬盘控制cpu,无论是传统的机械硬盘还是固态硬盘,或者是便携式移动硬盘,上面的控制芯片都是用的arm处理器的变种。

arm是英国acorn电脑公司(arm公司的前身)于1983年开始研发的,主旨是开发一种全新的构架,低功耗和低能耗,还能完全兼容市场上的6502处理器。

mostechnology公司在1975年发布了6502处理器,acorn公司基于该处理器研制一款acorn教育计算机,该计算机后来被英国政府的教育机构指定为专门计算机,这使得acorn公司在英国的七十年代中后期红极一时。

可随着时间的推移,当时代表高性能低价格的6502cpu,已经渐渐落后于时代,acorn公司需要推出一款全新的电脑,也就是16位计算机。

可是,acorn公司悲哀的发现,mostechnology并没有推出新一代16位处理器的想法,他们只是在原有的8位处理器6502的基础上改来改去,从6502到6504,到6507,再到6600,依然只是6502的改进版,这根本就不是acorn公司想要的处理器。

1980年两家公司经过交涉,mostechnology同意为acorn开发一款16位处理器7520,这也是mostechnology公司研发的最后一款处理器。

让acorn感到悲剧的是,7520根本无法兼容6502,这使得acorn围绕6502开发各种应用无法在新电脑上继续使用,而英国教育机构更不愿意以前的应用就这么作废了,这让学生怎么办?几年含辛茹苦的学习,最后却告诉这些学生,你们这些年辛苦学的东西全都是没有用的东西。

这不是误人子弟嘛,英国教育机构岂能答应。

最后没有办法,acorn只能花取300万美金从mostechnology公司买来全套的6502技术授权,自己来设计能够完全兼容6502处理器的全新16位处理器。

而这个时候,全世界首款真正意义上的risc处理器mips诞生,mips诞生震撼了整个半导体业界,很多业界专家认为risc将会是下一代的处理器,会最终取代cisc复杂指令集处理器。其实我们都知道cisc没有被risc取代,而且还活得很滋润。

于是,acorn公司开始转变设计思路,设计一款能够完全兼容6502的精简指令集cpu,即acornriscmachine处理器,这是arm处理器的前身。

其实从这里就能看得出arm跟mips有很大的不同,它不是一款纯粹的risc,它带有很多cisc才有的功能拓展性特质,而且功能拓展能力还很强,这也是为什么后来的arm公司能够基于arm构架设计这么多种不同使用功能的arm系列处理器,更不要说各种变种版的arm处理器更是多的数不清。

这些处理器发展史上的秘闻李逸轩是不会对郭英年说的,而且现在都还没有发生呢,有了李逸轩这个闯入者,这件事还会不会发生他都无法确定,现在他只要把郭英年说服就行了。

arm处理器起步是32位,我们最熟知的是64位结构的arm,现在才79年,是不能直接照抄的。

李逸轩对它进行了改变,16位arm处理器,由指令寄存器模块、算术运算单元、微处理器的控制器模块、程序计数器、子程序计数器模块、数据存储器模块、数据总线处理器模块组成该处理器的核心。

在图纸的右下角还对这些器件分别做了说明。

1:指令寄存器模块主要完成从只读存储器(rom)中接受指令字,同时将指令字分送到控制部件和内部数据总线或者地址总线上。由于目前设计的是16位处理器,所以他接收16位的指令字后,通过微处理器控制器发出的控制信号把高8位操作码送给控制模块用于指令的译码,而低8位的数据和地址送到地址总线或数据总线。

2:程序计数器模块设计一位16位的程序计数器同时还必须能直接接受跳转地址。

3:子程序计数器模块本身也相当于一个程序计数器,它是通过处理器里的控制器产生的控制信号来置数,一经置数,即是子程序的开始地址。另外子程序计数器还是可屏蔽中断和不可屏蔽中断程序执行过程的程序计数器,减少程序计数器设计的复杂。

4:算术逻辑单元模块是处理器运行算术和逻辑运算的不见,同时还有与这个模块相关联的寄存器模块,寄存器的大量使用是risc架构的一大鲜明特点,他主要是用来存放算术逻辑运算的两个操作数的模块,也是算术逻辑单元运算结果的存储部件。

5:数据存储器模块是为了能从数据存储器中读取数据和写入数据,就要有存储地址寄存器和存储数据寄存器对于要存储的地址和数据进行暂存。

6:微处理器控制模块通过对指令的译码给出不同工作状态各个模块的操作脉冲信号,是整个微处理器的大脑,由译码器、环形计数器和控制矩阵组成。其中环形计数器产生控制矩阵所需要的控制状态,指令译码和控制矩阵由控制模块来实现。

7:数据总线处理器模块主要解决内部数据总线冲突问题,对不同的模块的总线请求给予回应。

这就基本完成了处理器的大致框架的构造和各功能模块功用的定义。李逸轩不需要过高的技术领先,所以决定不采用多址指令格式,对于用在硬盘上的总控制芯片,多址指令完全没用,还会增加指令的寻址时间。

李逸轩为芯片设计一个二级缓存系统,一级4k,二级8k,这能大大增加硬盘的读写速度。

缓存的设计不能过大,也不能过低,必须根据芯片的实际用途合适才行。大了,没用不说还浪费成本,小了又不够用,总之这款控制芯片只要硬盘容量不超过2gb,就不会被淘汰。

这款控制cpu李逸轩还采用了流水线设计,分为用户模式和专用模式2种工作模式,而寄存器也分为2种,通用寄存器和特殊寄存器,为此而专门设计了16个寄存器,在用户模式下,指令只能访问12个通用寄存器,而专用模式可以多全部的16个寄存器自愿进行访问,从用户模式近入专用模式的钥匙就是中断和例外。

中断对于流水线的数据通道而言,只有两种情况,一类是执行的指令代码不合法,需要转入中断服务程序,另外一类是例外或者中断指令,例如系统启动、硬件中断和中断返回等。

在李逸轩的设计中,指令的执行过程被划分为3个步骤:取指令、译码和执行,为什么这样设计?

首先,让大家看下比如有3条指令输入计算机是123,123,123,那么采用了流水线后,执行的情况首先取值1然后译码到2的位置,这个时候第二条指令正好进入取值环节,当指令1进入到执行阶段的时候,那么第二条指令正好是译码阶段,而第三条指令处于取值阶段,这样处理器内部将全速运行,这个时候处理器的执行效率最高,这也是在不增加计算机频率上就可以增加计算机性能的一项技术。

李逸轩采用的是3级流水线设计,完全能满足现状和未来10年的硬盘容量增长需求了,对于一款面向硬盘总控制的cpu,完全没有必要设计什么4级5级甚至8级9级流水线,君不见未来的4tb容量硬盘,其总控制芯片的流水总线也不过才10级。

相反在总线设计上,李逸轩才是费了不少的脑细胞,不但要满足现在的需求,还要满足未来的需求。

总线是处理器的内部的数据、地址以及控制信号的传输通道,同时也是外部交流的接口,因此,处理器总线的设计对处理器的性能有着非常重要的影响。

这就好比如果一个城市没有宽敞畅通且快速的大马路,和有宽阔大马路甚至高速比较,如果你想从城东到城西办事,你觉的那个更快捷。

李逸轩把片外的总线分为3部分数据总线、地址总线和控制总线,采用3总线并行结构。

数据总线为16位的双向总线,用于外部程序存储器或者数据存储器读取指令或者数据和对外数据存储器进行写操作的通道,对只读存储器和对随机存储器的读和写是分时复用。地址总线也是16位,可以寻址的空间为64k,程序计数器是个16位的地址寄存器,用来存放要访问的程序存储器的地址,子程序计数器也是一个16位的地址寄存器,在子程序调用或者执行中断程序的时候来代替程序寄存器的功能。

外部的控制总线将由访问存储器的读、写和准备等信号组成,主要读写外部存储器和i/o设备。

这是外部总线,接着是内部总线结构。内部总线有两种设计结构,该选哪一种李逸轩当初也是思考了很久。

那两种总线结构?

冯诺依曼体系和哈佛体系,自然哈佛体系对计算机的性能的提升有很大帮助但是也将会造成工艺的复杂对成本控制不利,哈佛结构是一种将程序指令存储和数据存储分开的存储器结构。

中央处理器首先到程序指令存储器中读取程序指令内容,解码后得到数据地址,再到相应的数据存储器中读取数据,并进行下一步的操作(通常是执行)。

程序指令存储和数据存储分开,可以使指令和数据有不同的数据宽度。

而冯·诺伊曼结构也称普林斯顿结构,是一种将程序指令存储器和数据存储器合并在一起的存储器结构。程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置,因此程序指令和数据的宽度相同,而英特尔的8086就是这种结构。

李逸轩后来仔细的想了想,哈佛体系结构的存储器的最大优点是,方便芯片后续设计的连续性,缺点是工艺生产上的复杂,不利于成本控制。

虽然arm处理器内部总线结构采用的是哈佛体系,但眼前这款cpu是作为硬盘总控制芯片用的。对于硬盘来说,是不需要太过于考虑未来内部总线设计的连续性,只要能达到原始设计要求就行了,最终他还是选用了冯·诺伊曼结构。

即便李逸轩讲的深入简出,尽可能的让普通人能听懂,可遗憾的是郭英年还是没有听明白。

没办法,cpu的专业性实在太强了。他只是一名官僚,并非该领域的专家,不过这些对他来说并不重要,重要的是他现在已经知道眼前这么年轻人是真的会设计芯片。

郭英年心中的天平开始倾斜了,不过他还有一个疑问,“我现在相信你会设计芯片了,不过生产线你从哪里弄?”

上一章目录+书架下一章