Zork CPU Implemented in Hardware

1 Like

Had no idea these games were written for a non-existant CPU, and then interpreters were written to port the virtual code to a real CPU. Cool project to implement the virtual machine into an FPGA.

1 Like

Sort of like the Pascal MicroEngine was the UCSD p-System in hardware.

1 Like

these games were written for a non-existent CPU,

Yep, basically to an extent Infocom invented the concept of a software based Virtual Machine. That python, java, and vmware/inferno would run with later.

Java

This site is designated for a processor design to implement the Java Virtual Machine in hardware. It is part of a PhD thesis at the Vienna University of Technology, Austria. The goal of this development is a simple and small Java processor optimized to execute Java bytecode.

Java, a popular programming language on desktop system, is seldom used in embedded systems. Some features of Java, like thread support in the language, can greatly simplify development of embedded systems, but the common implementations of the JVM (Java Virtual Machine), as interpreter or just-in-time compiler, are not practical.

This site describes an alternative approach: JOP (a Java Optimized Processor) is a hardware implementation of the JVM with predictable execution time for embedded real-time systems.

Due to the small size of the processor, it can be implemented in a low cost FPGA. For low volume systems, the flexibility of an FPGA can be of more importance then the slightly higher cost compared to conventional processors.

JOP is one way to use a configurable Java processor in small embedded real-time systems. It shall help to increase the acceptance of Java for these systems.

Complete VHDL source and tools in Java are available for download.

https://www.jopdesign.com/


.NET/CLR

Microsoft’s .NET platform is a promising technology to achieve interoperability between programming languages, and true portability over different hardware and operating system platforms. Field Programmable Gate Arrays (FPGAs), which are reconfigurable, provide a faster execution environment in addition to low initial cost and minimal usage of silicon space. In this paper, we propose a design of a .NET embedded processor on FPGAs that improves the performance of the .NET Common Language Runtime (CLR).


Other CPUs

Can’t forget that ARM is an open standard.

Heck one can quite literally download a cpu, ethernet, and gpu:

https://opencores.org/projects/amber
http://miaowgpu.org/

From the dustbin of history, there is this:

and

Though they don’t say it, modern Intel processors do this too.

2 Likes