Skip to content

Daynlight/CPU

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

CPU ASEMBLER AND DIAGRAM IN LOGISIM

This is my cpu diagram and assembler created for learning purposes.

Screenshots




Base Information about CPU Diagram

RISC Architecture
32 bit Data Line
3 bit Operation Step
4 Registers (0-4)
2 DISCKS and 1 BIOS

Usage

I. Download Repository From Release Branch.
II. Download Java Java
III. Go to APP Folder
IV. Run logisim-win-2.7.1.exe
V. Open File and load CPU.circ
VI. Load Images from OS Folder to Bios and Disk

Asembler Operations codes

Code What do Structure !
mmu Set MMU locations on disk to jump there for example when you use loop. mmu (Place on Disk in Hex) Register 1 = MMU ID
Register 2 = Disk Location
!Location need by increment by one!
gto Fill Spaces betwaen MMU aplications gto "Place on Disck in Hex"
jmp Jump to MMU location. jmp Register 3 = Disk
Register 1 = MMU ID
!Compare need be set on true condition!
var Set Data on Register. var (Register) "Data"
pri Print text in terminal. pri "Text"
nel Go to next line. nel
prr Copy Data from one Register and paste data in another. prr (Register) (Register)
out Display Data from Register. out (Register)
get Get Data From Input and save in register. get (Register)
sme Save data from Register in RAM. sme (Register) RAM Location = Register 4
gme Get Data From RAM and save in Register. gme (Register) RAM Location = Register 4
com Compare two datas. com A = Register 1
B = Register 2
OP = Register 3
Avaible Operations:
0 -> >
1 -> =
2 -> <
3 -> <=
4 -> !=
5 -> >=
6 -> True
7 -> False
alu Make ALU operations. alu OP = Register 0
A = Register 1
B = Register 2
Result = Register 3
wai Wait for input. wai
dsc Go to Disk from Register. dsc (Register) You need set Jump before you go to Disck
sav Save data on disck. sav Disck = Register 3
Data = Register 2
Location = Register 1
end End Program end

ALU Operations

0. A
1. not A
2. AND
3. OR
4. XOR
5. NAND
6. NOR
7. ff
8. 00
9. ADD
10. Sub
11. Mult
12. Devider
13. Random
14.
15.

OP Table

DESCRIPTION OP R R More Info
NULL 0 Do nothing
R -> M 1 R Save in RAM
R4=location
M -> R 2 R Get from RAM
R4=location
JMP 3 R R3=Disck to jmp
R1 mmu loation
Need compart 1
ALU 4 OP = Register 0
A = Register 1
B = Register 2
Result = Register 3
GET 5 R get data to register
OUT 6 R out data from register and display on tty
R -> R 7 R(from) R(to) copy from register to register
R -> Rom 8 Save data on disck
R3=Disck
R2=Data
R1=location
NULL 9
WAIT A Wait for input
COMPARE B Compart
A = Register 1
B = Register 2
OP = Register 3
Operations:
0 - >
1 -> =
2 -> <
3 -> <=
4 -> !=
5 -> >=
6 -> True
7 -> False
MMU C R1=location
R2=content
Need by set before jmp
location +1
Change Disk D R go to dick from register
need set location to jmp before
D - > R E R D Set register
STOP F end program

Tools

About

A Cpu Diagram creted in logisim with simple asembler

Topics

Resources

License

Stars

Watchers

Forks

Languages