澜山境 > 网游竞技 > 让你做飞行仿真,你做成跳伞吃鸡 > 第二百三十九章 六十人垒故宫,三十七人造 CPU

第二百三十九章 六十人垒故宫,三十七人造 CPU

    第236章 六十人垒故宫,三十七人造 CPU

    进度极慢。

    慢到令人发指。

    光是午门的台基,十二个人就磨了整整四天。不是因为技术难度,而是鲁班七号这个完美主义的疯子,要求每一层汉白玉栏杆的望柱间距,必须严格按照《营造法式》里的记载换算。

    差一个方块都不行。

    ““X1247那根望柱歪了,往东挪一格。”

    ““哥,那是一个方块的事儿,肉眼根本看不出来。“”

    ““我看得出来。挪。“”

    没人跟他争。建筑系的人都有这毛病。

    周三凌晨两点,午门的地基终于铺完了。从服务器的高空俯瞰,一个巨大的“凹“字形轮廓,端端正正地卡在中轴在线。

    鲁班七号截了张图,发到群里。没说话,就一张图。

    群里安静了几秒,然后有人回了句:“操,象那么回事了。”

    这是他们收到的最高评价。

    每天都有新的截图流出来。午门的城墙开始往上长了,用深红色混凝土一层一层垒上去,顶上铺着黄色陶瓦。远看糊成一片马赛克,但轮廓和比例,已经有了那个味道。

    负责斗拱的哥们儿最惨。故宫的斗拱结构是中国古建筑里最变态的部分,层层叠叠,榫卵咬合。在MC里没有斜面方块,只能用楼梯、半砖和栅栏硬凑。

    他在语音频道里骂了三天娘,拆了建,建了拆,最后用橡木楼梯和云杉半砖的组合,勉强拼出了一个七铺作的斗拱截面。

    从正面看,居然有七八分神似。

    ““行了,就这样吧。““鲁班七号看了半天,说。

    那哥们儿如释重负,直接趴桌上睡着了。

    消息开始往外漏。

    不是官方宣传,就是有人在NGA随手发了个帖。标题很随意:“有群疯子在MO

    里盖紫禁城,目前完成了午门的地基。”

    配了三张截图。半成品,糙得很,到处都是脚手架一样的临时方块没拆干净。

    帖子沉得很快,没几个人看。

    评论区零零散散几条回复。

    ““这工程量————怕不是要肝到明年吧。”

    ““午门地基就这么大?后面太和殿怎么办?

    最底下有个人说:““等他们盖完,我第一个去参观。“”

    没人当回事。

    鲁班七号也没在意这些。他现在满脑子都是太和殿的屋顶怎么收。重檐庑殿顶,上下两层飞檐,四角翘起,脊上还得蹲一排脊兽。

    用方块怎么做弧线?

    他盯着故宫博物院官网上太和殿的侧面照片,在草稿纸上画了一晚上,铅笔芯断了两根。

    最后的方案是:用不同朝向的楼梯方块逐级递进,每隔三格抬高一格,形成视觉上的曲线错觉。远看是弧,近看是锯齿。

    但在MC里,远看就够了。

    ““就这么干。““他在群里说。

    没人反对。

    太和殿的柱子开始立了。三十六根金柱,用去皮的云杉原木一根根竖起来,间距严格按图纸。有人在语音里书着数,““三十四、三十五、三十六,齐了。”

    站在殿内往上看,密密麻麻的原木柱子撑起一片空旷的穹顶空间。虽然全是方块,但那种庄严肃穆的空间感,已经隐隐约约地透了出来。

    鲁班七号站在中轴在线,前后左右看了一圈,没说话。

    旁边有人问:““怎么样?”

    ““柱子没问题。“他顿了一下,“但地砖的颜色不对,太亮了。换成深色花岗岩试试。“”

    又是三天的返工。

    没人抱怨。这帮人已经疯了。

    与此同时,服务器的另一个角落里,有个测绘专业的哥们儿,正拿着坐标在空地上跑来跑去。他在标定金水河的走向。

    故宫的金水河是弯的。

    方块世界里没有曲线。

    他蹲在计算机前,对着AutoCAD里的河道矢量图,一个方块一个方块地在地图上点。每点一个,就在坐标本子上划一笔。

    点了六个小时,河道拐了第一个弯。

    他站起来活动了一下脖子,看着屏幕上那条由蓝色方块组成的锯齿状河流,自言自语:““凑合吧。”

    这条暗线,暂时就这么不声不响地往前推着。没有热搜,没有流量,只有六十多个人在一个没几个人知道的服务器里,一块一块地垒。

    大洋彼岸。

    波士顿,麻省理工学院,计算机科学与人工智能实验室。

    凌晨一点,32号楼三层的灯还亮着。

    一个留着络腮胡、穿着洗到发白的MIT连帽衫的博士生,盯着屏幕上MC红石系统的技术文档,已经保持这个姿势超过四十分钟了。

    。计算机体系结构方向,博三,导师是搞RISC—V的。

    屏幕上是他自己搭的一个红石测试存盘。地面上铺满了密密麻麻的红石粉、

    中继器和比较器,象一块被拆开的印刷电路板。

    他刚刚用红石火把和中继器的延迟特性,成功搭出了一个RS锁存器。

    这不难。任何学过数电的本科生都能做到。

    但他在意的不是这个。

    他在意的是,当他把两个RS锁存器串联起来,加之时钟信号之后,它的行为和一个标准的D触发器完全一致。

    输入,时钟沿,输出。严丝合缝。

    伊桑靠回椅背,盯着天花板看了一会儿。

    然后他站起来,走到实验室角落那块满是公式残骸的白板前,拿起马克笔,在空白处写下一行字。

    ““Project: Redstone CPU.“”

    他在下面又加了一行小字,潦草得只有自己能看懂。

    ““If it“s Turing colete, I can build a processor.“”

    笔帽没盖,他就这么拿着笔站在白板前,盯着那行字,眼睛越来越亮。

    伊桑没睡。

    白板上那行字写完之后,他直接回到工位,打开了一个空白存盘,开始系统性地测试红石组件的每一种组合。

    红石火把的特性他已经摸清了:它本质上是一个非门。给它供电,它灭:断电,它亮。反直觉,但逻辑自洽。

    两个非门串一个,与门。并一个,或门。交叉反馈,锁存器。

    他花了三天时间,把七种基本逻辑门全搭了一遍,每一种都反复验证了真值表。没有一个例外。

    第四天,他搭出了一个全加器。两个输入位,一个进位,输出一个和与一个进位。

    占地大概是游戏里六乘八的面积,用了四十多个红石组件。丑得要命,但跑起来严丝合缝。

    他盯着那个全加器看了很久。

    然后打开Reddit,在MC板块发了个帖。

    标题很直接:““l“going to build a 16—bit couter inside

    Minecraft. Who“sin?“”

    他在正文里没写太多废话。贴了全加器的截图,附了一张手绘的16位CPU架构草图,列了需要的模块清单:ALU、寄存器组、程序计数器、指令译码器、RAM。

    最后一行:““This is not a joke. I need people who know digital

    logic.“”

    帖子发出去四十分钟,三百条评论。

    一个小时,冲上了Reddit全站热榜。

    评论区的画风跟游戏论坛完全不一样。没有卧槽牛逼“,全是极其冷静的技术讨论。

    ““你的ALU打算支持哪些运算?加减和位移够了,乘除用软件实现吧,不然面积爆炸。“”

    ““寄存器用RS锁存器还是D触发器?D触发器稳定但体积大一倍。”

    “RAM怎么做?我之前试过用活塞数组做可寻址存储,八位地址线,理论上能寻址256字节。够不够?”

    伊桑一条一条回,回到凌晨四点。

    第二天,他建了个Discord服务器,取名““RedstoneCoutingProject““。

    人数在四十八小时内涨到了三十七人。

    MIT的有六个,斯坦福三个,卡内基梅隆两个,剩下的散布在伯克利、佐治亚理工、普渡,还有几个已经在英特尔和AMD上班的工程师,用的匿名号。

    分工是伊桑定的。他在Discord里发了一张表格,简洁到近乎粗暴。

    ALU组:八人。负责搭建16位算术逻辑单元,支持加法、减法、与、或、异或、移位六种运算。

    寄存器组:五人。四个通用寄存器,每个16位宽,用D触发器数组实现。

    RAM组:六人。256字节可寻址内存,基于活塞状态存储。

    控制单元组:七人。指令译码器、程序计数器、时钟信号发生器。

    总线组:四人。负责把所有模块用红石数据总线连起来。

    测试组:七人。写测试用例,跑验证,排错。

    没有人讨价还价。领了任务就开干。

    操。

    这阵仗,比他们实验室里流片前的RTL验证还正经。

    专用服务器开在AWS上,伊桑自己掏的钱。地图是一片被指令刷平的超平坦世界,白茫茫一片,象一块无限大的面包板。

    ALU组最先动工。

    组长是斯坦福的一个博二,网名“Silicon““,研究方向是高性能计算。他把16位全加器的设计拆成了四个4位模块,每个模块由四个全加器级联,进位链串行传递。

    听起来简单。

    搭起来要命。

    一个全加器占六乘八的面积。四个级联,加之进位线的走线空间,一个4位模块就是一片小广场。四个模块再串起来,整个16位加法器铺开之后,从头走到尾要跑将近两分钟。

    ““这特么也太大了。““Silicon在语音里说。

    ““红石的传输延迟是个问题,““伊桑回,““每十五格信号衰减一次,必须插中继器。中继器本身有一到四刻的延迟。加法器越长,延迟越高,时钟频率就越低。“”

    ““那能跑多快?“”

    伊桑算了一下。““乐观估计,一个时钟周期大概————四到五秒。”

    语音里安静了两秒。

    ““五秒一个周期。““Silicon重复了一遍。

    ““对。“”

    ““我导师的实验室里那台测试芯片跑三个G赫兹。”

    ““我知道。“”

    ““行吧。““Silicon说,““五秒就五秒。又不是不能用。“”

    他开始搭了。

    寄存器组那边更安静。五个人几乎不说话,各自认领了一个寄存器,埋头用D

    触发器数组一位一位地垒。十六位宽的寄存器,十六个触发器,每个触发器由两个RS锁存器加时钟门控组成。

    一个寄存器搭完,占地面积相当于游戏里一栋两层小楼。

    四个寄存器并排放好,中间留出走线信道,看起来象一排整齐的服务器机柜O

    只不过是用泥巴和红石粉搭的。