芯片设计真的很难?科普芯片基础知识,带你亲手设计一个芯片

关注国产芯片事业的你,一定有很多困惑,能让大国科技举步维艰的技术,到底是有多难?
其实,芯片这个东西,说难是真难,就拿5nm光刻机来说,10多万个零部件组成,一个一个数一遍,可能大部分我们现在都不能生产 。
可是,芯片说简单也简单,从原理上来说,只要你有一定的知识基础,都能搞清楚 。在这一点上还确实是“科技无国界” 。至少到现在,相关的书籍、论文等知识都是能够公开获取到的,差的主要就是产业经验和技术实力 。
今天,我就和大家一起看看芯片到底有多简单,本文的目标是科普一些基本数学知识,然后设计一个最简单的芯片!
芯片的基础芯片,作为最重要的半导体产品,实现了特定功能 。比如电脑CPU实现了计算、显示、读写内存硬盘数据、接受鼠标键盘输入等等丰富的功能 。
那大家有没有想过,芯片的基础是什么?
可能有人马上会想到硅,硅作为半导体材料是芯片的基础 。可是喝水的玻璃杯也有硅呀,它就不值钱,所以硅不是根本基础 。芯片为什么要用硅?是因为要在硅上面制造集成电路!硅的特点是能在很小的面积上集成大量的电路器件 。
这么说芯片的基础是电路?电路有很多种,家里的灯泡和开关也组成一个电路,这和芯片没啥关系 。芯片用到的是逻辑电路 。
再试一次,芯片的基础是逻辑电路?呃,已经很接近了,但是还不是,逻辑电路是做逻辑运算的,逻辑运算也叫布尔代数运算 。
所以,芯片的根本基础是数学!更具体的说是布尔代数!
这个结论一点儿也不奇怪,大家都知道物理学的基础是数学,就连伟大的物理学家牛顿都和阿基米德、高斯一起并称世界三大数学家 。
布尔代数了解最基本的布尔代数,你就会知道机器是怎么运算,也就明白了芯片要怎样设计 。
接下来我就介绍一下二进制和布尔代数,下面的内容争取让小朋友都能明白 。
为什么能让小朋友都明白呢?因为数学家布尔本人,就没上过大学,靠自学成才,并在19岁开办了一所小学,经营了10多年 。他认为自己最主要的职业是教师,他的愿望是帮孩子们找到理解和掌握复杂规律的方法 。
布尔代数的起源,是希望用数学表达人的逻辑思维 。
其中和计算机相关的是几个重要的布尔运算:
1、与 运算
举个例子:我喜欢吃烤羊肉串
我们让A代表烧烤,B代表羊肉串 。
则上面的表达变为了:

芯片设计真的很难?科普芯片基础知识,带你亲手设计一个芯片

文章插图
 
A和B都是真,做运算的结果才是真 。比如,烤牛肉串,就是A=1,B=0,AandB=0 。所以我不喜欢烤牛肉串 。
2、或 运算
举个例子:我喜欢吃烧烤或是火锅 。
我们让A代表烧烤,B代表火锅 。
则上面的表达变成了:
芯片设计真的很难?科普芯片基础知识,带你亲手设计一个芯片

文章插图
 
不管是烧烤还是火锅,只要有一个我就吃,当然两样都来更好!
3、非 运算
举个例子:我不喜欢吃辣 。
我们让A代表辣 。
则上面的表达变成了:
芯片设计真的很难?科普芯片基础知识,带你亲手设计一个芯片

文章插图
 
4、异或 运算
举个例子:我最喜欢吃烧烤和冰激凌,但是一起吃会拉肚子 。
我们让A代表烧烤,B代表冰激凌 。
则上面的表达变成了:
芯片设计真的很难?科普芯片基础知识,带你亲手设计一个芯片

文章插图
 
理解这个运算可能有点儿难,啥意思呢?就是A和B不能一样,没有烧烤没有冰激凌肯定不行,可是一起来也承受不了!
除了上面4种布尔运算,还有与非、或非、异或非运算 。从异或运算可以看出,全部的运算都可以由与、或、非运算结合产生 。
二进制运算咱们接着讲二进制运算 。
二进制就是用0、1表示一切数字,每一位上只能是0和1,到了2就要进位 。
比如,十进制的2,用二进制表示就得进位了,变成两位数10,而十进制3就是11 。
芯片设计真的很难?科普芯片基础知识,带你亲手设计一个芯片

文章插图
 
二进制是德国数学家莱布尼茨在300多年前发明的,那个时候连计算机的影子还没有,到底莱布尼茨为啥要发明一个当时根本没用的二进制,说实话没人能搞清楚 。
说起二进制,不得不说一下我国的八卦,不是到处乱讲的那种娱乐圈八卦,而是真正的八卦 。
八卦讲究的是两仪生四象,四象生八卦:


推荐阅读