大二学生耗时一年在我的世界造计算机雏形,教程火了

要造出这样一台计算机,数字电路、微机原理、汇编语言、编译原理都不能少。有了专业知识的支持,就能将计算机拆解成基本的部件。计算器→单片机→计算机“我学的不是计算机”级生命科学学院的本科生,没有受过系统地计算机科学专业教育。计算机的开发,作为《网络虚拟环境与计算机应用》这门课的项目来做的。

lizi Xioocha来自Aofei Temple

大二学生耗时一年在我的世界造计算机雏形,教程火了

小型CPU中​​有多少晶体管?其中数十亿。

仅构建CPU甚至完整的计算机需要多长时间?一个大个子以游戏“ Minecraft”中的实际动作回答了这个问题:这可能需要一年多。

一旦重印,就在Zhihu上构建一台计算机的教程就变得很流行。

大二学生耗时一年在我的世界造计算机雏形,教程火了

大二学生耗时一年在我的世界造计算机雏形,教程火了

这不是游戏指南,而是富丹大学的Ji Wenhan撰写的课程论文。当他大二的时候,他有一个大胆的主意。经过一年的仔细构造,他制造了一台名为Alpha21016的原型计算机。

尽管它不能与真实的计算机进行比较,并且只能实现一些简单的功能,但该计算机的尺寸令人惊叹,并且仅查看其复杂的结构,您已经可以感觉到大量的工程。

一些网民对课程后论文感到遗憾,这简直就是可以发表学术论文。

这台计算机能做什么

Ji Wenhan的计算机使用哈佛结构,而不是更常见的von Neumann结构。程序存储和数据存储分别位于位置。程序内存1KB和数据存储器0.5KB。

它可以实施各种功能操作:加法,减法,乘法和除法,三角函数和矩阵操作。它包含一个16位CPU和32位浮点操作单元(FPU)。

大二学生耗时一年在我的世界造计算机雏形,教程火了

从硬件的角度来看,它是一个超大级集成电路,逻辑门的总数从约50,000到100,000不等。单独有8层记忆堆叠。

大二学生耗时一年在我的世界造计算机雏形,教程火了

要构建这样的计算机,必须缺少数字电路,微型计算机原理,组装语言和编译原则。考虑一下您曾经参加的哪些课程,从中学习到熟练使用更加困难。

大二学生耗时一年在我的世界造计算机雏形,教程火了

在专业知识的支持下,计算机可以分解为基本组件。

我们都知道计算机的基础是数字电路,数字电路的基础是“门”。 Ji Wenhan在游戏中使用基本的“红石电路”建造了一个逻辑大门。

从逻辑门开始,组合电路,正时电路和触发器。有了这些,可以形成CPU的一些基本单元,并且最终可以创建整个计算机。

在现实世界中,晶体管是数字电路的基础。在Minecraft中,红石电路是构成复杂电路的基本单元。

大二学生耗时一年在我的世界造计算机雏形,教程火了

红石电路玩家可以用火把和块创建基本的逻辑门:或大门和北约大门。 OR和北约大门的组合可以创建任何逻辑门,例如和门和Xor门。

但是,仅仅知道如何制作逻辑门还不是建造计算机,这可能大致相当于创建汉字和写“红色大厦的梦”之间的距离。

Ji Wenhan首先画了他的CPU架构的素描:

大二学生耗时一年在我的世界造计算机雏形,教程火了

每个盒子代表一个或几个硬件单元,较小的单元具有大约一个或两百个栅极电路,较大的电路具有数千个门电路。这个密集的部分是结构的右半部分:

大二学生耗时一年在我的世界造计算机雏形,教程火了

在了解CPU的基本体系结构之后,根据体系结构图创建了每个部分,例如重要的CPU模块“算术逻辑单元”(ALU)和“指令寄存器”(IR)(IR),该(IR)具有较大的项目量。

算术逻辑单元可以进一步拆卸。它的加法器由几个完整的加法器组成。上面的基本逻辑门可以形成加法器中最基本的完整加法器(下图)。

大二学生耗时一年在我的世界造计算机雏形,教程火了

完整的加法器也是计算机的核心组成部分。

同时,“ Minecraft”还提供了基于活塞机械的断路器,并使用信号来控制开机和关闭电路,即继电器。可以使用继电器和逻辑门的组合创建内存。

大二学生耗时一年在我的世界造计算机雏形,教程火了

计算器→单芯片计算机→计算机

也许是因为它太复杂了,Ji Wenhan不想在一开始就设置一台计算机。

最初,他的目标是构建一个简单的16位计算器。

但是他觉得可以实现更复杂的东西,因此他想将其更改为微控制器:这是一台具有“图灵完整性”的简单计算机,可以执行所有计算机程序。

他已经计划了指令集体系结构,存储架构和说明传输方法等。

后来,Ji Wenhan成功设计了重要的电路,例如触发器,读写存储,缓冲区队列等。

大二学生耗时一年在我的世界造计算机雏形,教程火了

有了这些,男孩制定了一个更加雄伟的计划:制作16位CPU。

在CPU旁边,还有一个包含超越函数的单精度32位浮点处理器(FPU)。

在这里,计算器作为片外系统尚未被放弃。 Ji Wenhan将16位计算器更改为具有完整计时逻辑电路控制和溢出判断的计算器 – 这在Minecraft Redstone Circuit Players中是前所未有的。

它借用了CPU的ALU部分进行计算,并通过总线传输数据。

CPU和计算器的大多数硬件都在此表中:

大二学生耗时一年在我的世界造计算机雏形,教程火了

表格上的40个硬件,除指令解码器,指令发射器以及异常中断响应尚未完成,所有其他响应都已完成。还有一些未列出的小型硬件单元。

目前,CPU的欧盟部分(例如ALU,主内存和寄存器)已经完成,内部环总线已经完成,并且CU部分(即最繁琐的部分)尚未完成。

大二学生耗时一年在我的世界造计算机雏形,教程火了

可见的力量

Ji Wenhan说,尽管尚未完全完成,但CPU可以执行许多类型的机器指令(主要是MOV):常规寄存器分配,Word/byte + Angion/direct/Direct Grounding。

其中,用肉眼感觉到功率的最简单方法是借用CPU的ALU完成操作的计算器。

在视频中,他显示了加法,减法,乘法和分裂,余弦和方形根的计算。

大二学生耗时一年在我的世界造计算机雏形,教程火了

从饲养猪的楼梯上沿楼梯,计算器在哪里。如上图所示,有两排按钮和一个显示屏幕。

大二学生耗时一年在我的世界造计算机雏形,教程火了

在屏幕后面,您可以看到运行电路。

首先增加,减法,乘法和除法。例如,加法:

相同的减法也适用。但是,减去符号和减号在这里分为两个按钮。

乘法和除法的计算体积相对较大:大约需要20秒才能乘以三位数的数字;部门较慢,计算机会卡住。

下图是分区方法。由于调用了反向分区符号(),因此股息在右边。左下是商,右下是其余部分。

大二学生耗时一年在我的世界造计算机雏形,教程火了

空间限制计算能力,因此计算器必须做出溢出判断。如果范围超过±32627,将报告错误并显示“ E”。

无论是输入号还是计算结果,都将报告错误以外的范围:

大二学生耗时一年在我的世界造计算机雏形,教程火了

(需要删除本段,请忽略它)Hei Ge使用了一些计划管理软件,但是他从未养成使用它的习惯。原因是对于大多数计划管理软件,创建时间表需要多个步骤。对于刚刚起步的初学者来说,学习和习惯的成本很高,很难坚持下去。

除以“ 0”也将报告错误。

请注意,计算机使用二进制来计算,经过计算后,必须将其从二进制转换为十进制,这是最终答案。在这里,我们使用BCD/bin转换算法,该算法将二进制箱代码转换为十进制BCD代码。

这四个操作已经完成,并且使用脐带旋转迭代算法也有余弦:

大二学生耗时一年在我的世界造计算机雏形,教程火了

它需要多次迭代,因此计算很慢,大约需要两分钟。

相比之下,使用快速平方根算法的根号要快得多:

大二学生耗时一年在我的世界造计算机雏形,教程火了

(需要删除本段,请忽略它)Hei Ge使用了一些计划管理软件,但是他从未养成使用它的习惯。原因是对于大多数计划管理软件,创建时间表需要多个步骤。对于刚刚起步的初学者来说,学习和习惯的成本很高,很难坚持下去。

它将在20秒内开放。

计算能力在此处显示。

而且您可能已经感觉到监视器对计算机的重要性。所以:

如何制作监视器?

游戏空间太窄,因此构建图形卡是不现实的:2×2红石灯是游戏可以控制的最小像素。

因此,Ji Wenhan制作了角色监视器。

首先,使用七部分显示来表示数字。

大二学生耗时一年在我的世界造计算机雏形,教程火了

“ Day”一词由7个小棍子组成

例如,“ 4”总共有四个小棍子,包括左上,右上,中间和右下。

每个小棍子由三个正方形组成。拉回这些块的活塞,并显示一个沉没的“ 4”。

每个小数号可以对应于四位数的二进制数字,例如3为0011和9为1001。输入二进制号,屏幕可以以十进制显示。

数字已经完成,还有其他字符。 Ji Wenhan使用了他设计的ASCII代码的简化版本,少于64个字符:

大二学生耗时一年在我的世界造计算机雏形,教程火了

每个字符的数字:0、1、2,…,63。每个数字可以转换为二进制号00000-1111111。

然后,看起来像这样:

大二学生耗时一年在我的世界造计算机雏形,教程火了

打开夜视,就像萤火虫一样,它是如此美丽。

实际上,这些词在显示器的键盘上“打印”,白天看起来像这样:

大二学生耗时一年在我的世界造计算机雏形,教程火了

换句话说,有一台计算机,一个监视器和一个键盘。

这样的杰作实际上来自“业余球员”。

“我不学习计算机”

现在回顾一下,从逻辑门到计算机必须经历的事情:

或门,非门

→Addian,Xor

→全加法器,信号长度转换器,多态性选择器,内存单元,解码器单元,补体单元,变速单元

→读写内存,解码器,加法器,变速杆,时钟生成器

→加法和减法,乘数,分隔线,读写记忆阵列,注册,程序计数器

→巴士,阿鲁,铜

→计算机

令人惊讶的是,创建这个复杂项目的吉·温汉(Ji Wenhan)是福丹大学(Fudan University)2011年生命科学学院的本科生,尚未接受系统的计算机科学教育。他说,他对看外国球员的作品非常感兴趣,并且只能独自学习一些专业课程。

大二学生耗时一年在我的世界造计算机雏形,教程火了

在大二的一年中,他开始开发Alpha21016计算机,该计算机是在课程“网络虚拟环境和计算机应用程序”课程中完成的。

大二学生耗时一年在我的世界造计算机雏形,教程火了

从他对技术细节的解释来看,Ji Wenhan当时已经在硬件和软件方面做好了充分的准备。

对于普通人来说,他们可能会了解逻辑电路的基础知识。对于普通的红石玩家,他们可以使用逻辑电路的基本知识来构建简单或复杂的红石电路。

高级Redstone玩家还在Ji Wenhan的项目开始之前还创建了计算器。

但是没有多少人敢考虑建造计算机。吉·温汉(Ji Wenhan)不仅认为他花了整整一年的时间才能实现这一目标,而且几乎完成了。

毕竟,如果您的大脑具有惊人的能力,则必须使用它。

大二学生耗时一年在我的世界造计算机雏形,教程火了

技术博客原始文本门户:

一个视频门户:

第二阶段视频门户:

大二学生耗时一年在我的世界造计算机雏形,教程火了

单片机

乐博乐博少儿机器人编程培训学校多种课程等你来,速来咨询

2025-5-3 20:01:43

单片机

乐博乐博少儿机器人编程培训学校多种课程等你来,速来咨询

2025-5-3 20:02:20

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索