网易首页 > 网易号 > 正文 申请入驻

手工焊接,二进制写码,B站Up主手搓CPU爆火出圈

0
分享至

机器之心报道

编辑:小舟、张倩

CPU是怎么执行0101的呢?就为了这点好奇心,一位B站Up主自己动手焊了个CPU……

在 B 站当 UP 主,门槛是出了名的高。

有人会用 AI 还原朱元璋,有人能造自动驾驶自行车,还有人会手搓 CPU……


从外形来看,这个 CPU 采用了先进的「3D 堆叠」技术(手动狗头),全部由三极管、二极管和电阻焊接而成。

具体来说,UP 主林乃卫大约用了 1000 多个三极管、2000 多个二极管和 2000 多个电阻,焊点达到上万个,网购材料大约花了 1000 多块钱。

为了打造这款 CPU,UP 主花了大半年的时间逐点焊接,人送外号「焊武帝」。

由于其体型巨大,网友开玩笑说,「这是当年的巨型计算机啊。」连作者本人也调侃说,它的制程是 2.54mm,「比先进的 3 纳米大了将近 1 百万倍。」

不过,比外形更古朴的是 UP 主的编程方式:由于指令集和架构都是自主开发的,还没有适配任何编程语言,因此他选择采用二进制编程,也就是原始的机器语言——0 和 1。

这个「庞然大物」运行起来的效果也很炫酷:


UP 主用自制 CPU 运行流水灯效果,即让小灯挨个亮起来。

有人说,「我看不懂也没怎么震撼,但这就是我小时候想象中的『科学家』,稀奇古怪的仪器和五颜六色的灯泡,拿各种五颜六色的液体互相勾兑,然后产生各类超强的氧化反应。」

我们知道,要自制这么一个 CPU,除了熟练掌握数电、模电、汇编等基础知识,还要具备超强的动手能力和毅力。其过程之艰辛普通人可能难以体会。那么,林同学为什么要费这么大工夫去做呢?

「在写代码时要分析可执行文件中的二进制,那时候在想,CPU 是怎么执行这一串 0101 的呢?结合数电课程,猜测大概是那么回事,就想试一试。当初想用门级电路来做的,但是感觉难度不是很高,想整个从零开始理解透,就从最基础的模拟电路开始搭建了。」林同学告诉机器之心。

当然,当 UP 主只是林同学的爱好之一,他的本职工作是 php/.net / 安卓 APP 程序员。他表示自己喜欢学习各种新科技,对高难度的技术有较强的动力去学习,有许多新奇的创意,却没资金去实现。在这次 B 站大火之后,希望林同学能有更多的资金去实现自己的创意。


哔哩哔哩[爆肝]纯手工自制CPU小程序

一位 B 站 UP 主的手搓 CPU 之路

虽然打造这款 CPU 只用了半年,但林同学透露,它的原理图几年前就画好了,大概是这样:


图源:https://tieba.baidu.com/p/7432882849?see_lz=1

画完图,Up 主首先验证了门电路。这一步属于理论验证,是必要的步骤。


图源:https://tieba.baidu.com/p/7432882849?see_lz=1#140122397516l

做好验证之后,手搓的部分就正式开始了。CPU 通常由通用寄存器组、运算器、控制器和数据通路等部件组成。Up 主首先就从寄存器做起。

他先造了一个移位寄存器——一种在若干相同时间脉冲下工作的以触发器级联为基础的器件,用 Up 主的话说就是数据从一个方向进,一个时钟周期移动一个位置,最后从另一个方向出。最终 Up 主的成品是 6 位的移位寄存器:


有网友提问:「为什么移位寄存器不用现成的芯片?」Up 主表示「为了乐趣」。


图源:https://tieba.baidu.com/p/7432882849?see_lz=1#140122397516l

接着,Up 主手搓的第二个 CPU 部件是程序计数器(PC)。PC 是控制器的一部分,涉及的功能较多,也是手搓阶段最复杂的一个模块。CPU 重启时要将它的计数清零,工作状态下要借助 PC 实现挨个字节读取指令和数据,每操作一次,计数自动加一,同时还要实现直接跳转、调用函数,函数返回的功能,因此 PC 的构建过程比移位寄存器要复杂和困难得多。

尤其是 Up 主采用「纯手搓」——焊接的过程也会遇到一些虚焊的麻烦,找出问题并解决花费了 Up 主大量时间和精力。其中有一次一个二极管焊反了,Up 主排查了 3 天。

不过,最后的成品很优秀,上电测试也成功通过:

CPU 中还有两个关键的部分——ROM 和 RAM,不过这两个部分手搓不太现实,Up 主选择用 hm628512 来组装 ROM 和 RAM。

然后 Up 主开始构建指令译码器,用来解析 CPU 指令以运行,它也是控制器的一部分。

最后还有两个要组装的部件:运算器(ALU)和通用缓存。

至此,CPU 中寄存器、控制器、运算器等主要部件已经完备,一个手工焊接的 CPU 就基本做成了!

搓出来了,怎么运行?

由于这个 CPU 是 Up 主自己手搓的,全部是由二极管、三极管和电阻焊接而成,因此没有现成的指令集和编程语言能够使用。那这样的 CPU 怎么跑起来?回归最原始的二进制吧。

二进制在计算机工作机制中属于最底层的基础原理,对于计算机专业的同学来说并不陌生,但用二进制直接编程就不是所有人都能掌握的技能了。UP 主正是借助二进制编程让手搓的 CPU 跑了起来。

有了二进制码,怎么输入机器?Up 主自己上手「扣」代码,真 · 手敲代码。目前有三条指令,包括内存赋值指令、内存地址左移指令和跳转指令。Up 主编写了一个流水灯的程序,用于测试。

这下指令也输入了,CPU 能跑出结果吗?

出现了一些小问题,流水灯有时不能正常亮起。别担心,有 bug 是常有的事,那 debug 一下吧。

Up 主很快就找到了 bug,是「有个地方断开了」。修复之后为了让运行效果更明显,Up 主又重新写了一遍二进制代码,将 CPU 调整为跳转到 0X00FF 处运行。

再手扣一遍程序,结果是运行成功,流水灯正常亮起,完全没有问题。

组件完整,能运行程序,这个「爆肝」的手搓项目终于大功告成。

网友留言道:「冯诺依曼大呼内行」。

在完成这个 CPU 的基础原型之后,林同学下一步打算继续完善它的功能,让它可以运行更加复杂的程序。

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
如果周三股市是黑色的,“银行版块”会不会是最抗跌的

如果周三股市是黑色的,“银行版块”会不会是最抗跌的

要闻每日关注
2021-09-21 17:02:02
普天同庆!中国打破保持26年的世界记录,美国彻底挡不住中国了

普天同庆!中国打破保持26年的世界记录,美国彻底挡不住中国了

要闻每日关注
2021-09-21 10:57:52
国乒“陪练团”登上最高领奖台!陈梦仔细端详银牌,赛后身体不适

国乒“陪练团”登上最高领奖台!陈梦仔细端详银牌,赛后身体不适

黑色柳丁
2021-09-21 19:00:48
柬埔寨金边数十名中国人去KTV被抓,亲历者:花了$3000才被赎出来

柬埔寨金边数十名中国人去KTV被抓,亲历者:花了$3000才被赎出来

柬埔寨头条app
2021-09-21 16:37:10
想在中国赚3倍钱的潘多拉,还有姑娘爱买吗?

想在中国赚3倍钱的潘多拉,还有姑娘爱买吗?

新周刊
2021-09-20 23:06:50
强奸之后,又自愿发生6次性关系,那第一次能定强奸吗

强奸之后,又自愿发生6次性关系,那第一次能定强奸吗

法律案例库
2021-09-18 20:41:05
江西地产巨头遭“中秋劫”:股价暴跌90%,还被传总部拟全员降薪

江西地产巨头遭“中秋劫”:股价暴跌90%,还被传总部拟全员降薪

AI财经社
2021-09-20 21:07:20
中方抛423亿美债!美方巨额债务难还,耶伦:将面临历史性金融危机

中方抛423亿美债!美方巨额债务难还,耶伦:将面临历史性金融危机

环球看资讯
2021-09-21 14:03:23
离谱!巴黎暗示齐达内即将出任主帅!科曼即将下课皮尔洛接手巴萨

离谱!巴黎暗示齐达内即将出任主帅!科曼即将下课皮尔洛接手巴萨

北望足球
2021-09-21 14:09:44
《长津湖》第一批观众奔走相告:燃到爆炸!哭到崩溃!看就完了

《长津湖》第一批观众奔走相告:燃到爆炸!哭到崩溃!看就完了

口袋电影口袋君
2021-09-21 09:45:35
全运会激烈争夺!胡麟鹏无缘领奖台!陆佳雯女子跳高破纪录登顶

全运会激烈争夺!胡麟鹏无缘领奖台!陆佳雯女子跳高破纪录登顶

要闻每日关注
2021-09-21 13:34:13
“王的女人”田朴珺做月饼!素颜皮肤白嫩无瑕疵,满手面粉接地气

“王的女人”田朴珺做月饼!素颜皮肤白嫩无瑕疵,满手面粉接地气

会火
2021-09-21 16:31:46
志愿军不喝咖啡,从美军缴获咖啡却有大用处,首长:你们太奢侈了

志愿军不喝咖啡,从美军缴获咖啡却有大用处,首长:你们太奢侈了

要闻每日关注
2021-09-21 06:36:02
女子邻居封了自己家的门,去讨个说法,邻居嚣张:敢动就拆你的家

女子邻居封了自己家的门,去讨个说法,邻居嚣张:敢动就拆你的家

要闻每日关注
2021-09-21 16:43:30
恒大危机只是刚刚开始,房产过剩房价太高没人买,炒房客纷纷退房

恒大危机只是刚刚开始,房产过剩房价太高没人买,炒房客纷纷退房

青丝萦指不远
2021-09-21 11:51:40
“请用一张图证明自己家里有矿!贫穷限制了我的想象力”

“请用一张图证明自己家里有矿!贫穷限制了我的想象力”

资讯沸点
2021-09-21 03:08:03
3-2绝杀王楚钦,3-2淘汰许昕,全运会第1黑马,证明马龙依然无敌

3-2绝杀王楚钦,3-2淘汰许昕,全运会第1黑马,证明马龙依然无敌

毛罗大神
2021-09-21 13:18:37
第二轮双一流名单流出,这几所大学成功入选,江苏3所确定落选

第二轮双一流名单流出,这几所大学成功入选,江苏3所确定落选

资讯沸点
2021-09-21 18:34:03
党魁未选出 国民党高管先辞职 李乾龙:与张亚中“三张本票”风波无关

党魁未选出 国民党高管先辞职 李乾龙:与张亚中“三张本票”风波无关

海峡导报社
2021-09-21 16:57:12
CCTV直播,男子百米大战,苏炳添发出夺冠宣言!看看谢震业怎么说

CCTV直播,男子百米大战,苏炳添发出夺冠宣言!看看谢震业怎么说

体育的点点滴滴
2021-09-21 10:46:01
2021-09-21 20:38:44
机器之心Pro
机器之心Pro
专业的人工智能媒体
6361文章数 129395关注度
往期回顾 全部

科技要闻

iOS 15上手体验!大变样

头条要闻

男子与舍友吃饭后经常"断片"身体不适 报警牵出涉外案

头条要闻

男子与舍友吃饭后经常"断片"身体不适 报警牵出涉外案

体育要闻

辽篮大胜夺开门红 周琦站帽对手太恐怖

娱乐要闻

碾压罗志祥,周扬青的手段有多狠?

财经要闻

汽车要闻

预售32-42万 广汽丰田赛那或于10月27日上市

态度原创

亲子
本地
游戏
艺术
公开课

亲子要闻

郭刚堂:走出“失孤”的日子

本地新闻

你有多久没有闲情赏月了?

《NBA 2K22》IGN评分:7分 氪金依旧

艺术要闻

国画里的中秋,写满我们的祝福

公开课

贵州翻船事故自救女孩:半小时游200米上岸