ESP32上的微型PDP11

2021-01-17 09:08:45

对于全世界的每个人来说,2020年都是奇怪的一年。在我的特定情况下,这意味着要离开我在上海的家,就像Covid袭击时我们在欧洲一样,而中国直到年底才回国。

没有机会进入我的实验室,只能有限地访问电子设备,尽管并不是完全不可能建造东西,但实际上阻碍了我可以建造的东西。那个项目完成之后,我又陷入了项目真空中:我是一堆ESP32开发套件,并且渴望创造一些东西。

所以我想:为什么不创建另一个模拟器呢?我对此有足够的经验,因此不应该太辛苦,一旦我回到实验室,也许可以将其转换为另一个微型工作计算机模型,类似于我的小型Macintosh Plus所做的那样。这次选择?好吧,我一直对PDP11感兴趣。即使我以前从未使用过这些软件(甚至无法使用它们),它们也一直处于计算机技术的最前沿:ISA影响了随之而来的相当少数的体系结构,而如今我们仍然使用的相当一部分软件具有其根源最初在PDP11上实施的想法。

如果您不知道PDP11是什么:它是由Digital Equipment Corperation(也称为Dec或简称Digital)制造的微型计算机系列,始于1970年代。 PDP系列计算机最初是DEC在60年代进入计算机市场的一种方式。尽管计算机已经存在,但它们大多是IBM之类的大型大型机,用于执行超重要的任务,例如工资,簿记和企业中的其他beancounter任务。由于它们通常运行起来确实很昂贵,因此在类似R& D的环境中没有任何地方可以容纳它们。 DEC看到了使用相对低成本的机器在那里获得市场份额的机会,但是他们出售的东西不应被称为“计算机”。这样一来,立即就能联想到昂贵且无法访问的大型机的图像。因此,DEC发明了名称“可编程数据处理器”或PDP。

PDP系列的寿命很长,并且有一些有趣的家族成员,其中包含很多ISA:从原始的18位PDP1到12位PDP5和36位PDP10。在这些ISA中,PDP11是最成功的一种。 16位ISA具有基于正交寄存器的指令集,从70年代制造的第一台PDP11 / 20到90年代生产的PDP11 / 94,PDP11行跨越了许多机器。 。同样,当您查看功能时,有很多用例:PDP11可以运行类似DOS的实时操作系统(如RT-11)或运行多任务OS(如Unix)。它们可以用作单用户计算机,多用户服务器以及控制机制并为其提供用户界面的嵌入式计算机。 PDP11架构甚至将其引入了街机游戏:称为T11的Atchip街机单芯片PDP11变体,例如Paperboy。

PDP11吸引我的是PDP系列一直都是黑客机器,它的价格便宜到足以让人们在上面玩有趣的东西,例如第一个电脑游戏《太空大战》 ,上面写着。这不是在PDP机器上编写的最后一款游戏,不过,除了上述的街机游戏之外,在俄罗斯一直都是在克隆的PDP11上,俄罗斯软件工程师Alexey Pajitnov写了一个名为“俄罗斯方块”的标题。 #39 ;,后来传遍世界。

如今,通过仿真的奇迹,我们仍然可以享受历史悠久的PDP11软件。首选的PDP11仿真器是SIMH,它似乎可以在大多数POSIX OS上运行。带有ESP-IDF的ESP32具有相当不错的POSIX兼容性,那么为什么不尝试尝试移植仿真器呢?