CPU为什么不做成圆的而是方的?设计一个CPU有多么困难?
假设有一家芯片设计公司,正如主题所说,它将CPU不设计成方形而是圆形,结果如何?这就等于在晶圆这个大圆里刻下(芯片是光刻成的)许多小圆,效果如下图(为节约时间,我只画出了一部分)。可以看到,CPU与CPU(即小圆和小圆)之间有相当大的差距,浪费了很多硅片。粗略估计10%左右。
由于CPU它是圆的,电子线是直的。至于为什么要走直线,因为两点之间的直线最短,两个元件之间的直线连接不仅可以减少电流消耗(线路更短,电阻更小),还可以节省放置其他电子元件的空间。CPU它是由硅晶圆切割的。目前,硅晶圆是圆的。如果你去上面切圆CPU会有很多浪费,所以方形可以节省材料,达到最高的材料利用率。
CPU它由晶体管组成,晶体管的开关构成0和1的操作CPU计算能力,晶体管的排列也是线性的。同时,我们发现电路的布线是线性的,这意味着它是方形的CPU,在电路设计、加工制造方面,会更加方便。考虑到应用场景,我们来看看目前的主板和轴承。CPU智能设备基本上是方形的,如手机、电脑主机、笔记本电脑等。因为方形更容易放置,可以节省空间CPU做了配合这些主板,做方形会更方便。
芯片的基本材料是单晶硅。首先将单晶硅制成晶圆,然后用光刻、蚀刻等技术精密加工晶圆,然后切割成几百块芯片。切割晶圆时,圆芯片对边角料的浪费很大,做成矩形(矩形包括正方形),可以减少边角料的浪费。芯片是一种精度非常高的产品。在晶圆切割过程中,直线切割是最方便的。弧形切割对切割工具有很高的要求。此外,单晶硅晶体核本身具有方向性,弧形切割容易损坏芯片边缘。
帮助学生理解CPU基本原理,MIPS程序在单总线运行。
1、单总线CPU设计目的是帮助学生理解单总线结构CPU基本原理。
2、意义在于能设计基于微程序控制器的单总线CPU,使得MIPS程序能在单总线结构上运行。
CPU又称中央处理器,作为计算机系统的运算和控制核心,是半导体产业技术最密集、最具战略价值的产品,是一个国家技术势力的象征。
目前CPU的市场基本被美国的两大公司垄断,分别是大哥Intel和小弟AMD,两家几乎占领了99%的市场份额。
目前Intel和AMD以X86指令集和微软共同建立了庞大的生态系统并且不对外开放,这样一来,中国队想要自己做CPU的空间不多了。
01 CPU定义
CPU在半导体行业中是人们常接触到的一种芯片,最常见的应用就是在电脑中,其中有名的有Intel的 i9-11980HK 和AMD的 R7-5800X 。
按照CPU种类来分类,可以分为服务器CPU、家用电脑CPU、嵌入式设备CPU和手机CPU,服务器CPU需要更出色的性能、稳定性和安全性,要求服务器365天开机运行,连续工作,一个服务器可以安装多个CPU;而家用电脑CPU性能要求相对较低,容量较小,不要求连续工作,一个电脑只能安装一个CPU;嵌入式设备和手机对CPU的性能要求相对更低。
按照CPU指令集架构来分类,CPU可以分为RISC和CISC。
CISC 即复杂指令系统计算机,物如其名,CISC是比较复杂的,指令系统比较丰富,有特定的指令来完成对应的功能,可以处理特殊任务。
RISC及精简指令集计算机,把精力集中在经常使用的指令上,对不常用的功能,通过组合指令来完成,实现简单高效的特点,一次RISC不能处理特殊任务。通俗来说就是经常用的功能简单化,不经常用的功能复杂化。
这其中CISC代表的指令集有X86,RISC代表的指令集有ARM、MIPS、RISC-V、Alpha、SPARS,除了这两种之外,还有我国自主研发的指令集DEC和LoongArch。
02 六大国产CPU
首先我们来了解一下什么是CPU的生态环境, CPU的生态环境就是一块CPU推出后,系统和软件对它的支持和优化有多少, 比如国产CPU龙芯就没有一个好的生态,不论是采用MIPS还是自主研发的LoongArch都不能支持Windows系统。
自主建立生态环境又难于上青天,而生态如果没有建立,软件商店就不会有软件(比如QQ在Linux中停更),这也是国产CPU发展最大的瓶颈之一。
目前国内有六大CPU设计厂商,他们是华为、飞腾、兆芯、申威、龙芯、海光(均未上市),他们分别以不同的方式参与CPU的设计。
CPU国产替代的故事得从Intel开始。
Intel趁着PC的东风迅速发展,建立了X86架构,标识了一套通用计算机指令集合,并且与微软一起在X86指令集上建立了庞大的生态。
目前的X86指令集不对外授权,只被英特尔和AMD所掌握,而X86又是PC、服务器领域做得最好的,别的指令集的生态环境远远抵不过X86,留给中国队的发展空间实属有限。
中国队CPU分为3个路线。
其一是由 龙芯 和 申威 代表的:自研指令集
龙芯最初采用的是MIPS精简指令集,制作通用CPU,主要产品是自主可控消费类例如服务器、台式机、嵌入式、航天器等领域。
申威最初采用的是Alpha精简指令集,主要应用在超级计算机和军事领域。
龙芯和申威都因为生态的原因,很难发展起来,尤其是龙芯,想要打入服务器和台式机市场必须有很好的生态。
龙芯因为MIPS的分崩离析,开始发展自己的指令集—— LoongArch ,它是完全有龙芯自主研发,可以兼容MIPS生态, 并且开始尝试用二进制翻译兼容ARM、X86处理器,龙芯的目标是在2025年消除指令集之间的壁垒,彻底搞定兼容问题。
申威也因为Alpha被收购,开始发展自主研发的指令集—— SW64 ,它是由Alpha改进而来,申威制作的神威·太湖之光超级计算机便采用SW64指令集,被称为“国之重器”,在国际上都有一定的地位,多项指标全球第一。
第二路线是由 华为 和 飞腾 代表的:ARM指令集授权
华为芯片“四大天王”麒麟、鲲鹏、巴龙、升腾中,除了巴龙以外,均采用ARM指令集授权来开发。这其中最著名的就是“麒麟”了,在手机领域一度领先,直至海外因畏惧华为的崛起,开始了制裁华为事件,就此“麒麟”短暂隐身。
飞腾也是国内目前使用ARM架构制作CPU的厂商之一,其技术不弱于高通,目前公司也被美国列入黑名单,其芯片制造环节同样被卡脖子,可能成为第二个华为。
除了华为和飞腾以外,国内以ARM架构制作芯片的厂商还有很多,例如贵州华芯通、展讯通信等。
第三路线是由 兆芯 和 海光 代表的:合资获取X86授权
兆芯的X86架构授权是源自于VIA公司将部分X86处理器相关技术、资料等IP产权以1.18亿美元价格卖给兆芯。兆芯基于X86的生态和技术,性能方面普遍高于龙芯,但还是不能和英特尔比肩。
海光的X86架构授权是通过和AMD合资公司来拥有AMD授权IP,但并不是完整的技术转让,而是阉割后的残缺版,所以性能上面和AMD锐龙、高通骁龙差一个档次。
03 RISC-V
RISC-V近些年流行的新型指令集,它是一种开源式指令集,对使用者免费开放,也是这种特性使它被众多专家认为是中国处理器产业的一次机会,而且可能是最后一次机会。
目前全球CPU的市场格局是以X86架构垄断PC、服务器行业;ARM架构垄断移动设备行业,这两家几乎涵盖了所有CPU市场需求。
X86架构归“Wintel”(英特尔+微软)所属,是一种封闭指令集,不对外授权, 简单说就是谁也别想用,就我自己能用 ;ARM架构属于可授权指令集+可授权设计, 简单说就是你用需要经过我同意并且收费,你想再它基础上设计还得再经过我同意并且再收费。
正因为如此,RISC-V作为开放式指令集,被中国队大力支持,看作救命稻草。
那RISC-V究竟有没有那么好呢?我们主要得看两方面: 一个是它的生态好不好,生态是决定指令集发展空间的最大因素;另一个就是它到底是不是彻头彻尾的免费,日后会不会再被卡脖子。
第一,RISC-V的生态怎么样。
RISC-V具有性能高、功率低、面积小、易于扩展等技术特点,最重要的是它的开源、免费的独特属性,为其带来众多合作商,影响力逐步扩大。
从2015年组织RISC-V基金会成立是的25个成员,到现在已经有超过300多个单位的加入,其中包括阿里、谷歌、华为、英伟达、高通、中科院、麻省理工等等。
日前,有知情人士表明,英特尔将以20亿美元收购RISC-V领域的重量级公司SiFive,这也表明了英特尔的态度。
虽然英特尔靠X86架构在PC、服务器领域无人能敌,但是移动设备一直是他的心病,ARM在移动设备领域是他无法抗衡的,而RISC-V的出现,给了机会。
但是看好归看好,ARM的垄断地位依旧很难撼动,RISC-V后续可能与X86联手对抗ARM,但更大的可能是打入嵌入式设备市场中,做物联网领域的“一哥”。
总体来说,不论是PC、服务器,还是移动设备,都很难被RISC-V介入,相反一些嵌入式设备比如空调、冰箱、扫地机器人、电动车等等发展环境更好。
第二,RISC-V是否永远免费。
RISC-V源于2010年,加州大学伯克利分校的一个研究团队研发,当时他们因为市场已存在的指令集相当复杂,且成本和门槛太高,所以建立了新的指令集。
“开源架构RISC-V将永久免费,成为人类共有财产。相较于X86和ARM架构的高门槛,开源架构RISC-V将带来芯片设计的革命”——RISC-V架构开发者之一Krste Asanovic博士。
这是RISC-V架构开发者的原话,表明该指令集是完全开源免费的,到目前为止他们也很好的履行了,甚至把基金会总部搬离美国,迁移至瑞士(永久中立国)以防止美国地方政策的限制。
尽管RISC-V从表现来看做得很优秀,但抽丝剥茧,终究还是有隐患在的。
实现RISC-V指令级架构的处理器内核有很多个不同的微架构实现,而微架构实际的模式是分不同类型的,其中有开放的、需授权的以及封闭的。
虽然基于RISC-V开发CPU不需要支付授权费用,但如果直接用RISC-V内核设计,也是需要支付授权费的。通俗来说就是你用我不需要收费,但是想在它的基础上设计得经过我同意,甚至收费(我们目前是全免费,但我有权利在以后收些钱)。
总结来说,目前全球的指令集呈现以X86、ARM、RISC-V三足鼎立的局势,RISC-V作为新时代的弄潮儿得到了各大厂商的认可,有发展的空间,但它不足以撼动其他两个指令集的地位,不过可以预料到的是,等RISC-V成长起来,仍然有可能对我国CPU发展卡脖子,我们需要保持隐患意识,在跟随洋人步伐的同时,发展自身CPU业务。
纵观国内厂商在电脑CPU领域,龙芯以自研为主,开发属于中国的指令集,目前已经可以满足一些党政领域以及机密工作的需求,但打入家用电脑领域仍需要提升CPU的生态和性能;服务器CPU中,申威在超算上小有成绩;华为近期也有消息称完成40nm去美化工作线投产,在明年更将攻破20nm的工作线,麒麟可能会重新归来;一些未上市公司如芯来 科技 、平头哥等也有在尝试RISC-V领域。
种种迹象都在证明,虽然我们起步慢了30年之久,但国产CPU一直在突破,路途艰辛却一路披荆斩,长夜漫漫,但黎明终将到来。
全文由各种资料查证,如有专业领域上的错误,希望可以抛砖引玉,有所探讨。
芯片全产业链图(绿底已经写完)
今天在后台回复『硬核干货』,主编送你一个 财经 知识锦囊。
(特别说明:文章中的数据和资料来自于公司财报、券商研报、行业报告、企业官网、百度百科等公开资料,本报告力求内容、观点客观公正,但不保证其准确性、完整性、及时性等。文章中的信息或观点不构成任何投资建议,投资人须对任何自主决定的投资行为负责,本人不对因使用本文内容所引发的直接或间接损失负任何责任。)
1.芯片规格指标制定,划分功能模块
2.分模块用硬件描述语言verilog/vhdl,进行硬件描述。或者采购已有的IP,加快设计进度
3.验证人员对各个模块功能进行仿真验证,反馈结果给设计人员,反复修改bug直到模块能按照设计指标工作
4.所有模块设计ok之后,各模块集成到一起,进行各个模块的连线集成,进行全芯片功能仿真,然后继续反复改bug。
5.然后设计综合,生成电路,后端仿真,功耗分析等各类分析,反复修bug,修timing,
6.一切都没问题就freeze设计代码,不能再修改设计了,使用目标工艺库进行版图绘制,这步就是你说的晶体管来源了,都是软件自动调用工艺库提供的底层标准单元集成的,就好比是盖房子,调用10000个地板砖铺地,10000块石头做地基,10000个砖头做承重墙和外墙,10000个瓦片做房顶等等,10000根钢筋做房梁,等等,直到把房子搭好
7.版图也就是芯片的物理实现做好之后,做版图drc设计规则检查,版图仿真,寄生参数提取等等。不符合目标的就继续修改版图布局,直到符合设计目标
8.没问题了之后软件生成gdsii工艺加工文件给到工厂,就可以用来制作mask掩膜板,生产芯片了。。
9.数晶体管的话,看软件报告吧,都有详细信息,用了多少晶体管,占用面积多大,用了多少层金属等等
10.到了后面就是晶圆生产,晶圆测试,封装,成品测试,功能测试,性能测试,可靠性测试,一致性测试,老化测试等一系列工作,如果芯片还是有bug,以上流程就要重新来过,复杂的芯片需要大量的人力,时间,还有金钱。。。所以没有钱,没有人,耐不住性子,做不好芯片。。。
数字电路都是Verilog语言编程写出来的,综合器对代码进行编译和综合生成电路,并且自动布线。现代数字电路设计都是编程实现,画出来?你活在古代吗????
复制粘贴
现在的CPU设计不用纸和笔画,而是用设计软件设计,布线和光刻板也是由软件设计完成。设计部门完成设计仿真后交掩膜板制造商制作光刻板……
使用软件进行编程,编程语言编写程序代码,由单片机运行程序,进行仿真设计出来的。另外有校验的程序。
CPU的电路都是按单元模块拼装的,不需要画出电路图。就好比医生给病人看病,不可能也没有必要理清病人的每一个细胞结构吧[爱慕][爱慕][爱慕]
数字电路的基本单元电路是相同的,固定的。所谓芯片设计就是拿这些基本电路按动作要求进行组合,这些工作都在电脑上完成。还可利用通用可编程芯片,采用EDA技术按不同功能要求编程实现不同的连接。
先功能划分,再模块设计,模块设计基本是verilog,模块再组合成完整的cpu电路,这是电路设计。物理设计则是将电路代码转化成用于制造芯片的图案的过程。对于数字电路,需要先设计标准单元库,一套库大约有1000种不同功能的基本单元,此外还有sram单元以及一些其他专有功能的单元例如生成时钟的pll,以及各种接口单元如usb等等。这些单元好比是盖房子用的各种砖头。物理设计时,先由综合工具将verilog代码转化为由这些单元组成的电路,再由布局布线工具创建布局以及信号连线,最后通过各种检查验收就可用于制造生产用的光罩了。所谓几百亿晶体管,不过是这几千种不同功能单元的不断重复调用
罗马不是一天建成的
计算机程序编程构图
1、 硅提纯
生产CPU等芯片的材料是半导体,主要的材料为硅Si,在硅提纯的过程中,原材料硅将被熔化,并放进一个巨大的石英熔炉。这时向熔炉里放入一颗晶种,以便硅晶体围着这颗晶种生长,直到形成一个几近完美的单晶硅。
2、切割晶圆
硅锭造出来了,并被整型成一个完美的圆柱体,接下来将被切割成片状,称为晶圆。晶圆才被真正用于CPU的制造。
切割晶圆用机器从单晶硅棒上切割下一片事先确定规格的硅晶片,并将其划分成多个细小的区域,每个区域都将成为一个CPU的内核(Die)。一般来说,晶圆切得越薄,相同量的硅材料能够制造的CPU成品就越多。
3、影印(Photolithography)
在经过热处理得到的硅氧化物层上面涂敷一种光阻(Photoresist)物质,紫外线通过印制着CPU复杂电路结构图样的模板照射硅基片,被紫外线照射的地方光阻物质溶解。
而为了避免让不需要被曝光的区域也受到光的干扰,必须制作遮罩来遮蔽这些区域。这是个相当复杂的过程,每一个遮罩的复杂程度得用10GB数据来描述。
4、蚀刻(Etching)
蚀刻使用的波长很短的紫外光并配合很大的镜头。短波长的光将透过这些石英遮罩的孔照在光敏抗蚀膜上,使之曝光。接下来停止光照并移除遮罩,使用特定的化学溶液清洗掉被曝光的光敏抗蚀膜,以及在下面紧贴着抗蚀膜的一层硅。
然后,曝光的硅将被原子轰击,使得暴露的硅基片局部掺杂,从而改变这些区域的导电状态,以制造出N井或P井,结合上面制造的基片,CPU的门电路就完成了。
5、重复、分层
为加工新的一层电路,再次生长硅氧化物,然后沉积一层多晶硅,涂敷光阻物质,重复影印、蚀刻过程,得到含多晶硅和硅氧化物的沟槽结构。重复多遍,形成一个3D的结构,这才是最终的CPU的核心。每几层中间都要填上金属作为导体。
Intel的Pentium 4处理器有7层,而AMD的Athlon 64则达到了9层。层数决定于设计时CPU的布局,以及通过的电流大小。
6、封装
这时的CPU为一块块晶圆,它还不能直接被用户使用,必须将它封入一个陶瓷的或塑料的封壳中,这样它就可以很容易地装在一块电路板上了。封装结构各有不同,但越高级的CPU封装也越复杂,新的封装往往能带来芯片电气性能和稳定性的提升,并能间接地为主频的提升提供坚实可靠的基础。
7、多次测试
测试为一个CPU制造的重要环节,也是一块CPU出厂前必要的考验。这一步将测试晶圆的电气性能,以检查是否出了什么差错,以及这些差错出现在哪个步骤(如果可能的话)。接下来,晶圆上的每个CPU核心都将被分开测试。
由于SRAM(静态随机存储器,CPU中缓存的基本组成)结构复杂、密度高,所以缓存是CPU中容易出问题的部分,对缓存的测试也是CPU测试中的重要部分。
每块CPU将被进行完全测试,以检验其全部功能。某些CPU能够在较高的频率下运行,所以被标上了较高的频率;而有些CPU因为种种原因运行频率较低,所以被标上了较低的频率。
最后,个别CPU可能存在某些功能上的缺陷,如果问题出在缓存上,制造商仍然可以屏蔽掉它的部分缓存,这意味着这块CPU依然能够出售,只是它可能是Celeron等低端产品。
当CPU被放进包装盒之前,一般还要进行最后一次测试,以确保之前的工作准确无误。根据前面确定的最高运行频率和缓存的不同,它们被放进不同的包装,销往世界各地。
扩展资料
CPU控制技术的主要形式
1、选择控制。集中处理模式的操作,是建立在具体程序指令的基础上实施,以此满足计算机使用者的需求,CPU 在操作过程中可以根据实际情况进行选择,满足用户的数据流程需求。 指令控制技术发挥的重要作用。根据用户的需求来拟定运算方式,使数据指令动作的有序制定得到良好维持。
CPU在执行当中,程序各指令的实施是按照顺利完成,只有使其遵循一定顺序,才能保证计算机使用效果。CPU 主要是展开数据集自动化处理,其 是实现集中控制的关键,其核心就是指令控制操作。
2、插入控制。CPU 对于操作控制信号的产生,主要是通过指令的功能来实现的,通过将指令发给相应部件,达到控制这些部件的目的。实现一条指令功能,主要是通过计算机中的部件执行一序列的操作来完成。较多的小控制元件是构建集中处理模式的关键,目的是为了更好的完成CPU数据处理操作。
3、时间控制。将时间定时应用于各种操作中,就是所谓的时间控制。在执行某一指令时,应当在规定的时间内完成,CPU的指令是从高速缓冲存储器或存储器中取出,之后再进行指令译码操作,主要是在指令寄存器中实施,在这个过程中,需要注意严格控制程序时间。
参考资料来源:百度百科-中央处理器
参考资料来源:百度百科-CPU制造工艺
CPU设计是有软件辅助的,而且现在的CPU集成大容量缓存,存储器这部分晶体管都是一样的,不用一个一个设计,实际需要设计的部分没有十几亿个。出错是肯定会有的,设计的时候可以通过软件检测,模拟运行,也有带着BUG上市的CPU,不过现在计算机运行的时候也是容错的,允许出现错误,要求100%正确的还可以通过编程解决。还有CPU也是分批生产的,叫“步进”,发现的BUG会在后期产品中得到修复。