真实世界模拟TIS-100

Mat*_*ury 14 cpu-architecture stream-processing isa tis-100

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

这让我感到非常有趣且可能有用.这种架构是否在现实世界中使用?它有点像时钟处理器和FPGA之间的混合.

Dav*_*ven 11

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

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

请参阅此链接以获取不太正式的写作和评论,包括模拟器(在Haskell中).


Jan*_*cas 10

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

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