Virtual CPU Instruction Set
Design goals[editovat]
- Simple to implement in other programming languages
- Efficient to execute by emulator
- Future extensibility (to support 128-bit data/address width or more)
- Single instruction code for any data/address width
- Register based load-store architecture rather than stack based machine or accumulator based machine
Other interesting instruction sets[editovat]
| CPU | Instruction count | Instruction size [bits] | Data size [bits] | Addressable memory [bits] | Registers |
|---|---|---|---|---|---|
| Tiny CPU Instruction Set | |||||
| A Quick Introduction to the ZipCPU Instruction Set | 29 | 32 | 32 | 32 | R0-R13, PC, CC |
| MINI-CPU Instruction Set Specification | 12 | 4-12 | 8 | 8 | PC, ACC, R |
| Simple Virtual Machine | 18 | 8 | 32 | 32 | PC, SP, FP |
| Simple virtual machine which interprets bytecode. | |||||
| VAM Virtual Assembler Machine | |||||
| Simple 8-bit Assembler Simulator | 60 | 8 | 8 | 8 | PC, SP, A, B, C, D |
| The RiSC-16 Instruction-Set Architecture | 8 | 16 | 16 | 16 | PC, R0-R7 |
| TOY Machine | 16 | 16 | 16 | 8 (256 words) | PC, R0-R15 |
| MU0 | 8 | 16 | 16 | 12 | PC, ACC |
| LC-3 | 15 | 16 | 16 | 16 | PC, R0-R7 |
| TOY/2 - a minimalist 16 bit CPU | 15 | 16 | 16 | 16 | PC, A, T |
| MARIE: An Introduction to a Simple Computer | 9 | 16 | 16 | 12 | PC, ACC |
| Building a 4-Bit Computer: The Instruction Set | 16 | 4 | 4 | 12 | R0-R5, S0, S1, PC, SP, IX, IV, TA |
| How to create your own virtual machine | 35 | 8 | 8 | 16 | A, B, X, Y, D |
| Little Man Computer | 10 | 12 | 8 | 8 | A |