1更
看了下评论,发现大家吵的点无非就是两个:
1、架构
2、电路设计
这两个东西怎么说呢?
但凡大学的时候学过一点点计算机,多少也应该捋得清楚,但我看很多小可爱们不但不清楚,还在评论区里和别人吵,讲真,没必要。
虽然说百度坑人,但一些基础的东西,多少可以从百度上了解一下的。
CPU的架构到底是什么呢?
可不是各位小可爱理解的那个“架构”哦。
小可爱们以为的架构可能是这样的:
但这个是CPU里的电路设计图的渲染版本(主要是用来做PPT的),上古靠手画,后来靠图形工具画,现在靠代码画,而且这只是一块CPU中很小很小一部分的图。
实际上的架构,在芯片行业,有另一个学计算机都熟的名字,叫“指令集”,它其实是这个样子的:
当然,这个只是设计指令集时用的,因为它要让人看得懂而不是电路看得懂。
这东西有啥用呢?
它是指导CPU根据不同输入数据进行运算并输出相应结果的“根本指导手册”,没有指令集,CPU设计人员是没有办法将由晶体管、电容、电阻这些部件组合成一个个功能不同的门电路组合成能处理一定条件数据的电路的。
再简单来说,如果把CPU当成一个软件程序,那么晶体管、电容、电阻就是字母;门电路就是由字母组合而成的单词;而指令集中的每一个“指令”,则是“封装”好的、利用代码单词拼凑出来的、能实现一定业务逻辑的“组件”。
CPU设计,实际上就是根据芯片具体要实现的功能,将这些“组件”,按照特定规律的电路组合起来,同时利用“控制器”来根据芯片接收到的运算指令,灵活且有规律的根据业务去调用不同的组件“组”来达到数据运算这个根本目的的。
怎么说呢?
还是用编程来类比,“CPU架构”,类似于编程中大家自己封装或者上网下的第三方“组件”,而CPU设计,就类似于开发工作,每一个功能组件,一般都会安排一个人进行开发,CPU设计也是这个逻辑。
所以说,“基于对象的开发”,其实并不是起源于软件行业,而是起源于硬件设计行业。
然后再说说CPU的电路设计。
CPU的电路设计根本目的是在于确定CPU中各个部件(电路、电容、电阻、晶体管)在芯片中的空间坐标。
所以,无论它是用绘图软件绘制的图形(从前),还是现在使用代码编写的代码库,实际上它们的底层逻辑都是一样的:确定空间坐标和电路走向。
所以小可爱们,你们应该可以发现,代码编写的所谓CPU设计,并不是啪啪啪打好就行,实际上它也需要在图形界面中进行检查(如果有人说打好不检查,那么说明他的工作还远远达不到芯片设计这个程度,你们只是负责实现其中极其微小部分的“操作”罢了。):
这是整个大芯片的布线设计,Verilog,你的代码电路是如何连接的,连接了哪些运算组件,信号方向是什么,都需要在可视界面中去查看
而这个图里面的小蓝点……它们是功能单元,这些单元也是需要设计的,只不过能做这个的人,很少很少,绝大多数人接触不到这么底层的东西。
例如(标准门电路Standard Cell设计):
先做电路图(这个是单个门电路)。
首先,设计电路结构,一般都是用模拟电路图做出来,不过大牛可以不用模拟电路图,直接做数字电路也行。
模拟电路图长这样:
小可爱们说的“用代码做”的,是数字电路图(这个得对门电路熟到一定程度以后才能脱离模拟图直接这样子搞):
然后将很多各种门电路根据业务需求进行Synthesis ,以后长这样:
把一堆描述性质的语言转换成真正的Standard Cell (标准门电路)后,你就可以看到它长什么样了(注意这是纳米级的结构):
CPU架构呢,实际上就包含了很多这样的基础门电路(当然基础门电路种类有很多),但CPU设计商会根据自己的需求,在CPU架构上增加很多自己的指令集,例如苹果、高通、天玑等芯片,都是基于ARM架构的,但它们的整体架构却又不同……
所以……
设计CPU……
真没那么简单啊小可爱们……
看我评论区里有些持反对意见的小可爱们说的话,我真怕你们拿到架构也不知道怎么用啊……
时间有限,说得可能有不对的地方,欢迎指正交流。
但那些说不出有用内容的小可爱们还是别说了吧……
下面原回答:
<hr/>这是CPU放大的样子:
这是红框处再放大的样子:
这是红框处再放大的样子:
这样的结构,一块CPU上有数以百亿计。
CPU里数以百亿计、好几层的电路,连接着数百亿的晶体管……
但看图就能把你看到脑袋炸裂。
而且这些晶体管是根据不同功能区域按照特定规律排列组合起来的,不能说一丝不差,那是得一纳米都不差。
这种东西,你来改?
你能改?
半导体芯片发明至今至少也50多年了吧?
芯片设计要是几个“极客”就能搞定的话,为什么直到现在市面上都没有“开源”的芯片设计方案?
为什么芯片制程都已经快踢到上帝的蛋蛋了,芯片设计和制造工艺都还只能被全世界极少数的公司所垄断?
别开玩笑了,一粒一粒的数100多亿颗沙子都能把人给数嘎嘣了,让一个人去看这么复杂而且还是多层的精密结构?——算了,我觉得还是让一个人动手组装出一架波音747来得简单。
但凡多嗑两颗花生米也不至于醉到这个地步。 |