首页 科技 正文

bilibili焊圈:纯手工拼晶体管自制CPU,耗时半年,可跑程序。

金磊 博雯 发自 凹非寺量子位 报道 | 公众号 QbitAI

一小我,到底能肝到甚么程度?

比来B站上大年夜火的一个视频,或许给了这个问题一个完善诠释:

纯!手!工!克己CPU!

这位叫做“奶味的”Up主,耗时整整半年,用他那双勤奋的双手,“逐点”焊接,究竟打造出了一个完全CPU!

手工做一个CPU能用么?

当然可以,他还做了一个demo显现,来看一下后果吧。

纯手工“肝”出一个CPU,还成功运行了流水灯后果,直接激起了一大年夜波网友们的惊呼:

肝帝!焊武帝!人长在肝上了!

(感到感染下这满屏的Respect)

接下来,让我们一同看下“肝帝”克己CPU的完全历程。

纯手工克己CPU

其其实发布这个视频之前,Up主便在贴吧中“开顽笑”的说了句:

CPU太贵了,买了显卡就买不起CPU,手工捏个出来……

切切没想到,真的是说干就干。

据这位Up主介绍,他主要接纳了3个原材料:

二极管、三极管和电阻。

平居来讲,CPU的布局可以大年夜致分为运算逻辑部件、寄放器部件和节制部件等。

而他最早“下手”的,就是CPU的寄放器部分。

Up主设计了一个6位的移位寄放器:

它的感化不但能用来存储,还能在时钟旌旗灯号的节制下,将数据进行进行逐次右移或左移。

简单来讲就像是一个交警叔叔,当数据从一个标的目标进来的时刻,这个移位寄放器可以指示它甚么时刻该往哪里走。

Up主措置的第二个布局,是轨范计数器(PC)。

它感化简单来讲,就是纪录轨范运行的位置。

而这也是全部项面前目今来最耗时、最复杂的部分,花了整整3个月之久。

轨范计数器触及的功能那可就多了。

像最根基的就是挨个字节读完指令后,计数要主动+1;而CPU重启今后,计数便会清零。

而且在分歧的前提之下,还要能实现直接跳转、调用函数、函数返回等功能。

听着就有够复杂的了。

何如,除此之外,还经常陪同着各类各样的“形而上学问题”。

Up主就举了个例子:

花了一个多星期才在最深处找到一只焊反的二极管……

但功夫不负有心人,在履历3个月使人头秃的光阴今后,最复杂的模块照样被他弄定了。

上电测试也没有问题:

然后就是硬盘(ROM)和内存(RAM)。

这是CPU外的较量复杂年夜两个部分要手搓一个不太实际。

是以,Up主用上了较量轻易操作的hm628512来做ROM和RAM:

△左:RAM和指针 右:ROM

再将ROM和RAM组装上去,而今CPU的根本模块已根基完成了。

接下来就是打造指令译码器。

它首假如用于把传到这里的CPU指令,进行解析运行:

再把做加减乘除的运算器(ALU)加上去:

最后还得再焊一个通用缓存上去:

而今,这个所有由三极管、二极管和电阻焊接而成的CPU就完成了!

看到这密密层层的元件,工程量的浩大年夜就不用多说。

也难怪能让一众网友直呼“肝帝”了。

还有纯手写最原始代码

认为纯手工焊接就完了?

不不不,还有更硬核的。

由于这个CPU的指令集和架构都是自立研发的,所以没有适配的编程措辞。

那怎样能让它跑起来呢?

这位Up主的对策是:

纯手写最原始代码——二进制编程!

噫吁嚱!噫吁嚱!

这一手露的,直接激起了网友们的第二波高涨:

手写指令集,牛皮!这才是真·写代码!直接上机械码,太狠了吧!

然后……然后……

Up主居然就开启了上古编程模式——“扣”轨范!

面临此情此景,怎样一句“绝绝子”了得。

……

一切筹办工作伏贴。

接下来,就是见证事业的时刻。

亮灯,跑起!

但最最早,轨范的运行并不是海不扬波。

即使大年夜神重启了几次,赛马灯的后果有时照样呈现问题。

但bug很快被找到了:

有个处所断开了。

与此同时,由于还没有I/O接口,所以测试利用的灯是一时寄放器的灯。

而且左移指令和跳转指令都利用了同一组灯。

是以,流水灯的后果就不长短常明明。

是以,大年夜神从头编程,使CPU跳转到0X0F处运行。

如此一来,在跳转时灯就是灭的,给左移指令让出了一条路。

一切点窜终了,从头“扣”轨范,启动!

这一次,就没有任何的异常了。

走进“肝帝”大年夜神

在看完这波“神级”操作今后,想必大年夜家都想体会这位大年夜神。

量子位帮你实现这个胡想。

大年夜神原名林乃卫,广西北海人。

做这个项目标灵感,

那时刻大年夜神便萌生出了一设法:

CPU是怎样履行这一串0101的?

在连络数电课程的常识今后,大年夜神意料到了大年夜致的道理,是以就想试一试。

最初他想用门级电路来做的,然则感到感染难度不是很高,又想把全部历程从零最早理解透。

是以,便决意从最根本的模拟电路最早。

而全部历程最难的部分,就是“器件每级的毗邻”和“CPU的运行速度”:

在此之前没有看过关于CPU道理方面的书本,是靠本身对门电路的理解而设计的一套电路 ,想设计一套属于本身的架构。从最根本的三极管开关到门级电路,网上找的电路图根蒂没法用,需要本身设计。当然设计好后理论颠末历程了,然则门级之间组合成功能级器件就有新的问题,功能级的电路再多个 组合起来成为功能模块又会产生新的问题,模块与模块之间毗邻更会产生新的问题。这每级的问题都很有可能要点窜根本电路,然后又会从头最早产生新的问题。由于没有专业的设备去调试,我用的是一盏LED和蜂鸣器,想尽举措也将速度提高到100kHz阁下 而已,这是十分慢的,历程也十分艰辛。

至于器件方面,大年夜神均是从网上购得,然后再将它们一点一点地焊接成为模块。

这个CPU大年夜致破费了1000多个三极管、2000多个二极管,电阻数量也到达了2000多,焊点近万。

今朝的费用大年夜概花了1000多元。

而网友在弹幕中奚弄占多数的,还有制程方面的问题。

要长短得给它定个工艺制程,那就是2.54mm,比先辈的3纳米大年夜了将近1百万倍。

最后,Up主还透露显露,将在接下来的工作中,延续完善CPU的功能,让它可以或许运行加倍复杂的轨范。

非特殊说明,本文由骆驼资讯网原创或收集发布。

转载请注明本文地址:http://www.luotuo.cc/kj/2430.html

新疆医药采购管理网 长治城区教育信息网 蔡家坡高级中学 青州教育局 中国音响网 钟山驾校 通辽第五 哈医大新闻网 剧情网 南阳教育信息网 九九影视 北京市第八中学 广州科技职业技术学院 阳光第六小学 连云港交通违章查询网 吉安房产网 九九电影网 路由器之家 乐蛙论坛 乐蛙lewaos 传奇影院 阳泉市招生考试网 六六网 新疆医药采购管理网 长治城区教育信息网 蔡家坡高级中学 青州教育局 中国音响网 钟山驾校 通辽第五 哈医大新闻网 剧情网 南阳教育信息网 九九影视 北京市第八中学 广州科技职业技术学院 阳光第六小学 连云港交通违章查询网 吉安房产网 九九电影网 路由器之家 乐蛙论坛 乐蛙lewaos 传奇影院 阳泉市招生考试网 六六网