Verilog至Minecraft Redstone合成器

2020-11-24 16:15:39

Minecraft HDL是Minecraft红石电路的数字综合流程。这是尝试使用行业标准的设计工具和方法来生成带有红石的数字电路。

这个文件多路复用器4_1.v是一个6输入-1输出电路,它根据最后2个输入(x,y)的值选择前4个输入(a,b,c,d)之一作为输出

模块多路复用器4_1(a,b,c,d,x,y,dout);输出损耗;输入a,b,c,d,x,y;分配dout =(a&(〜x)&(〜y))| (b&(〜x)&(y))| (c&x&(〜y))| (d&x&y);终端模块

MinecraftHDL是麦吉尔大学电气,计算机与软件工程系的三名学生完成的最后的本科设计项目。

这绝不是没有错误,甚至是完整的。它客观地产生了劣于“手工”红石设计的电路,并且不打算用于改装生存。它几乎可以生成任何Verilog电路,但是实际上只有简单的设计才能在游戏中进行测试,因为任何中等复杂的设计最终都会比Minecraft中加载的最大块数更长。

此外,我们目前无法合成时序电路,也无法合成具有环回或反馈功能的任何电路。这意味着没有存储器,没有计数器或任何可以保持状态的电路。

MinecraftHDL是一种教育工具,可以从宏观角度说明如何设计和生产微电子数字电路。这是一种向年轻的读者介绍数字设计世界的好方法,也可以用于向参加第一门RTL课程的本科工程师说明软件和硬件设计之间的差异。

主管:Brett H.Meyer-网站学生:Francis O'Brien-网站Omar Ba Mashmos网址Andrew Penhale

运行中的2位7段显示解码器(显示本身不是由MinecraftHDL生成的)为了展示使用MinecraftHDL制作电路有多么容易,这是我创建电路,合成并在Minecraft中生成它的一个gif效果。不到一分钟!

我上面生成的电路是一个2位加法器。它需要两个两位的数字并将其相加。在gif的末尾,我将两个输入数字都设置为“ 11”,这是数字3的二进制表示。然后移至输出,我们看到O3 = 1,O2 = 1和O1 = 0,这给出了二进制数字“ 110”,实际上是6。