• 2/9/25 5:08 pm
- 500 views • 2 today
- save_alt 70 downloads
- Progress
- 100% complete
2
(java only)
this is a CPU that took about 1 and a half months to make, from designing the ISA and the layout of the CPU to designing each component and connecting them to each other. each component in this build is my own design including the ALU, regs and PC.
please note that this map dose not include any pre-written programs or UI and will require some knowledge of minecraft CPUs and redstone to use as it should be used for creating your own projects with this simple easy to understand CPU
instructions:
0: no operation "NOP"
1: set register A to immeadite value "IMMA"
2: set register B to immeadite value "IMMB"
3: set register A to register C "CTA"
4: set register B to register C "CTB"
5: set memory at adress immeadite to register C "CTM"
6: set memory at adress immeadite to register A "ATM"
7: set PC to immeadite "JMP"
8: set PC to immeadite if register C = 0 "JMZ"
9: set register C to register A + register B "ADD"
A: set register C to register A - register B "SUB"
B: set register C to register A ⊕ register B "XOR"
C: pause PC until unhult pin is high "HLT"
D: set register A to input port at adress single bit of immeadite "INP"
E: set output port at adress single bit of immeadite to register C "OUT"
F: output bits of immeadite for device control "DCNT"
instruction layout:
place torches for each bit, each line is an instruction cell, dont use first line as it is to remain a NOP for all programs.
each cell is layed out like this with each X representing a bit: xxxxxxxx xxxx, the first 8 (left is 128, right is 0)
being the immeadite data while the next 4 is for the instruction (same direction as the immeadite)
input method:
in your program, hult the PC first then input whatever you want into whatever port, unhult onto an input instruction
this makes inputing an easy 2 instruction action with HLT followed by INP
this is a CPU that took about 1 and a half months to make, from designing the ISA and the layout of the CPU to designing each component and connecting them to each other. each component in this build is my own design including the ALU, regs and PC.
please note that this map dose not include any pre-written programs or UI and will require some knowledge of minecraft CPUs and redstone to use as it should be used for creating your own projects with this simple easy to understand CPU
instructions:
0: no operation "NOP"
1: set register A to immeadite value "IMMA"
2: set register B to immeadite value "IMMB"
3: set register A to register C "CTA"
4: set register B to register C "CTB"
5: set memory at adress immeadite to register C "CTM"
6: set memory at adress immeadite to register A "ATM"
7: set PC to immeadite "JMP"
8: set PC to immeadite if register C = 0 "JMZ"
9: set register C to register A + register B "ADD"
A: set register C to register A - register B "SUB"
B: set register C to register A ⊕ register B "XOR"
C: pause PC until unhult pin is high "HLT"
D: set register A to input port at adress single bit of immeadite "INP"
E: set output port at adress single bit of immeadite to register C "OUT"
F: output bits of immeadite for device control "DCNT"
instruction layout:
place torches for each bit, each line is an instruction cell, dont use first line as it is to remain a NOP for all programs.
each cell is layed out like this with each X representing a bit: xxxxxxxx xxxx, the first 8 (left is 128, right is 0)
being the immeadite data while the next 4 is for the instruction (same direction as the immeadite)
input method:
in your program, hult the PC first then input whatever you want into whatever port, unhult onto an input instruction
this makes inputing an easy 2 instruction action with HLT followed by INP
More like this
6533696
2


Have something to say?