真实世界模拟TIS-100

时间:2015-06-09 16:23:30

标签: cpu-architecture isa stream-processing tis-100

最近的游戏TIS-100以一个相当有趣的机器架构为中心,其中CPU由"节点"它可以与邻近的邻居沟通。遗憾的是,我找不到参考手册的官方链接供公众讨论,但总的来说,每个节点都支持一个非常简单的ISA,但并行运行在同一个时钟上。每个节点有两个寄存器,一个ACC寄存器和一个BCK辅助寄存器。参考手册说CPU是为流处理而设计的。

这让我觉得这是一个相当有趣且可能有用的设计。这种架构是否在现实世界中使用?它有点像时钟处理器和FPGA之间的混合。

2 个答案:

答案 0 :(得分:11)

您可能需要查看GreenArrays' GA144处理器。它是144个非常小的矩形网格处理器,节点之间有高速数据链接,就像TIS-100一样。每个节点都是一个F18A处理器,具有64个18位字的RAM(以及64个ROM)​​,它本身或多或少地运行。所有I / O都附加到边缘的节点,因此要完成工作,您必须在网络中推送数据。

它是由Chuck Moore设计的,他使用他在Forth设计和编写的开发系统,使用他在Forth设计和编写的开发系统发明了Forth,他在他设计的操作系统上运行在福斯写下自己......

请参阅this link进行不太正式的撰写和审核,包括模拟器(在Haskell中)。

答案 1 :(得分:10)

这似乎是来自不同世纪的不同真实架构的简化组合。每个节点的指令集类似于20世纪80年代的简化8051。 TIS-100节点具有ACC和BCK寄存器,8051使用A和A。 D注册。 A寄存器位于大多数指令中,D寄存器与BCK寄存器一样,只能在极少数情况下使用。

将许多相当简单的节点放置在2D网格中,并将通信端口放置到其邻居也是已经完成的事情。这通常称为Manycore CPU。一个例子是Tilera。但是,在这么多内核中使用的CPU内核比当前的高性能CPU简单,但并不像TIS-100节点那么简单。 (或8051)另一个例子是Adapteva Epiphany IV