Searched Projects

Tags: Comparator

project.name
46 Stars     5504 Views
Everything is working great in this build!  So I will be taking about a week break from this.
Well except single pixel drawing on GPU but more on that later.

I included a Hello World program and a screen clear test program running by default.
But I would love to see what programs people can come up with. So definitely fork this and make your own programs for it, and link them in the comments below!

Also I am working on adding more instructions for the cpu and the gpu, let me know what might be useful in the comments and definitely check my in progress updates below!

I am running into an issue with per pixel drawing giving a contention error which doesn't make sense as i have tested the chip. unless the rgb screen col and row pins are also outputs i don't get what is going on.

For now though i'm taking a break from that and working on implementing some more of the OPs.

Here is a list of instructions. I'll add descriptions soon.
Anything with a * before it is not implemented yet.
0 NOP [0]
1 JMP [1]
2 SETA [10]
3 SETB [11]
4 LDA [100]
5 LDB [101]
6 WRA [110]
7 WRB [111]

*8 IA [1000]
*9 IB [1001]
*10 DA [1010]
*11 DB [1011]
*12 SLA [1100]
*13 SLB [1101]
*14 SRA [1110]
*15 SRB [1111]

16 ADD [1 0000]
17 SUB [1 0001]
18 MUL [1 0010]
19 DIV [1 0011]

20 EQL [1 0100]
21 NEQL [1 0101]
22 GRT [1 0110]
23 LSS [1 0111]
24 GRQL [1 1000]
25 LEQL [1 1001]

26 SSP [1 1010]
27 PUSH [1 1011]
28 POP [1 1100]
29 LTS [1 1101]

*30 PROC [1 1110]
*31 EPROC [1 1111]

32 SAS [10 0000]

project.name
0 Stars     72 Views

2 bit magnitude comparater(A>B)

2 bit magnitude comparater(A>B)

This is a 2- magnitude comparator for A>B.



project.name
0 Stars     71 Views

1 Bit Comparator | Dhanesh Vasaikar

1 Bit Comparator | Dhanesh Vasaikar

1 Bit Comparator.


project.name
0 Stars     46 Views
User:

Exp_8

Exp_8

2 bit comparator


project.name
0 Stars     56 Views

Comparator

Comparator

project.name
1 Stars     141 Views

Comparator(1 and 2 bit)

Comparator(1 and 2 bit)

project.name
0 Stars     46 Views
User:

Comparator

Comparator

project.name
0 Stars     109 Views

Digital Combination Lock

Digital Combination Lock

Digital Combination Lock  for CS303 Logic and System Design Project


project.name
0 Stars     50 Views

LAB4CKT

LAB4CKT

Implementation


project.name
0 Stars     87 Views

project.name
0 Stars     34 Views
User:

2 bit comparator

2 bit comparator

project.name
0 Stars     46 Views
User:

Implementation of a 2 bit Comparator using Basic Gates


project.name
0 Stars     58 Views
User:

EXPERIMENT 14 Misc.

EXPERIMENT 14 Misc.

Implementation of a 1 bit Comparator using Basic Gates


project.name
0 Stars     38 Views

2-bit Magnitude Comparator

2-bit Magnitude Comparator

project.name
0 Stars     53 Views

Classification of Combinational circuit


project.name
0 Stars     19 Views
User:

project.name
0 Stars     24 Views
User:

4-Bit Magnitude Comparator

4-Bit Magnitude Comparator

project.name
0 Stars     27 Views
User:

Cascading Dual 4-Bit Magnitude Comparator

Cascading Dual 4-Bit Magnitude Comparator

project.name
0 Stars     70 Views

XOR, Half adder, Full adder, Multi-bit full adder, Comparator, Multi-bit comparator, Shifter, Multiplexer 4-to-1, Demultiplexer 1-to-4, Decoder 2-to4, ALU-Arthmetic Logic Unit


project.name
0 Stars     17 Views

Experiment 3 Magnitude Comparator

Experiment 3 Magnitude Comparator

Magnitude Comparator is used to compare two binary numbers



project.name
0 Stars     12 Views
User:

4bit & 5bit Comparator

4bit & 5bit Comparator

project.name
0 Stars     10 Views
User:

8-Bit ALU

8-Bit ALU

This is the ALU that i'm using on my computer the Femboy 8 Here,
it includes an Adder, Subtractor, Logical operations, Shift, Rotate, and Comparison.


project.name
1 Stars     13 Views
User:

Functional Electronic Machine Binary Operator Yes - 8-bit cpu

This is a work in progress right now.


INSTRUCTION SET:
00: NOP - Nothing
01: HLT - Halt program
02: OUT [r] - Output a register
03: LDA [d8] - Loads 8 bit data into the accumulator
04: MOV [r], A - Move register to accumulator
05: MOV A, [r] - Move accumulator to register
06: INC [r] - Increment a register
07: DEC [r] - Decrememt a register
08: ADD [r], A - Add the accumulator from a register
09: SUB [r], A - Subtract the accumulator from a register
0A: AND [r], A - And the register and accumulator
0B: IOR [r], A - OR the register and accumulator
0C: XOR [r], A - XOR the register and accumulator
0D: NOT [r] - NOT a register
0E: SRR [r] - Shift register right
0F: SRL [r] - Shift register Left


REGISTERS:
00: 
REGISTER 1
01: REGISTER 2
02: REGISTER 3
04: REGISTER 4


Update Notes:
The instruction set now has 16 instructions with logic operations, loading, shift, and nop. 


To-Do:
Add WIP instructions
Add the accumulator to a register address
Increase amount of registers to 8
Add Ram manipulation instructions
Add Input to CPU
Add more operations to the ALU
Add ASCII i/o
Make a simple command line
Make an assember
Make a simple operating system for the cpu
Add rgb output


project.name
1 Stars     52 Views
User:

FEMBOY-8

Functional Electronic Machine Binary Operator Yes

8-bit CPU

Working on a NEW CPU: Femboy-16!


ASSEMBLER:

https://output.jsbin.com/wutikij

GPU:

https://circuitverse.org/users/214464/projects/cb-ppu


INSTRUCTION SET:
00: NOP - Nothing
01: HLT - Halt program
02: OUT [id] - Output the accumulator out of an output
03: LDI A, [d8] - Loads immediate 8 bit word into the accumulator
04: MOV [r], A - Move register to accumulator
05: MOV A, [r] - Move accumulator to register
06: INC [r] - Increment a register
07: DEC [r] - Decrememt a register
08: ADD [r], A - Add the accumulator from a register
09: SUB [r], A - Subtract the accumulator from a register
0A: AND [r], A - And the register and accumulator
0B: IOR [r], A - OR the register and accumulator
0C: XOR [r], A - XOR the register and accumulator
0D: NOT [r] - NOT a register
0E: SRR [r] - Barrel shift accumulator right
0F: SRL [r] - Barrel shift accumulator left
10: JUP [d8] - Jump to a location
11: JPP [r] - Jump to a register value
12: JPL A, [d8] - Jump if accumulator is less than 0
13: JZO A, [d8] - Jump if accumulator is 0
14: JPG A, [d8] - Jump if accumulator is greater than 0
15: JLE A, [d8] - Jump if accumulator is less than or equal to 0
16: JGE A, [d8] Jump if accumulator is greater than or equal to 0
17: JNZ A, [d8] Jump if accumulator is not 0
18: CLR [r] - Clear a register
19: INP [id] - Store INPUT id in accumulator
1A: MOV pA, [r] - Move the value at address A register r
1B:  MOV [r], pA - Move register r into address A
1C: MOV [p], A - Move a value in a pointer to the accumulator
1D: MOV A, [p] - Move the accumulator to a location
1E: MLT [r], A - Multiply register r by the accumulator
1F: DIV [r], A - Divide register r by accumulator


REGISTERS:
00: REGISTER 1
01: REGISTER 2
02: REGISTER 3
04: REGISTER 4
05: ZERO FLAG (R)
06:
PC (R)
07: ALU Result (R)


Update Notes:

V4:
So this is the 4th iteration of my CPU lol... I added a few programs for you all to try out and you can even use an assembler now!

V5:
Long time since I updated this... But I've added a GPU! It's called "Color burst" and you can go try out some premade programs I have added on it! There's an assembler guide with GPU dev guide and I encourage you all to go try and make some graphical programs! Also more docs can be found on it's project page.


To-Do:
Increase amount of registers to 8
Make a simple command line
Make a simple operating system for the CPU


project.name
0 Stars     5 Views
User:

Untitled

Untitled

Just a thing I'm planning on using for conditional jumps


project.name
0 Stars     5 Views
User:

NandGame CPU

NandGame CPU

A port of the NandGame CPU into CircuitVerse


project.name
0 Stars     9 Views
User:

8-Bit Magnitude Comparator

8-Bit Magnitude Comparator

I thought this would be useful in my CPU but nah...


project.name
0 Stars     10 Views
User:

Functional Electronic Machine Binary Operator Yes - 8-bit cpu

This is a work in progress right now.


INSTRUCTION SET:
00: NOP - Nothing
01: HLT - Halt program
02: OUT [id] - Output the accumulator out of an output
03: LDI A, [d8] - Loads immediate 8 bit word into the accumulator
04: MOV [r], A - Move register to accumulator
05: MOV A, [r] - Move accumulator to register
06: INC [r] - Increment a register
07: DEC [r] - Decrememt a register
08: ADD [r], A - Add the accumulator from a register
09: SUB [r], A - Subtract the accumulator from a register
0A: AND [r], A - And the register and accumulator
0B: IOR [r], A - OR the register and accumulator
0C: XOR [r], A - XOR the register and accumulator
0D: NOT [r] - NOT a register
0E: SRR [r] - Shift register right
0F: SRL [r] - Shift register Left
10: JUP [d8] - Jump to a location
11: JPP [r] - Jump to a register value
12: JPL A, [d8] - Jump if accumulator is less than 0
13: JZO A, [d8] - Jump if accumulator is 0
14: JPG A, [d8] - Jump if accumulator is greater than 0
15: JLE A, [d8] - Jump if accumulator is less than or equal to 0
16: JGE A, [d8] Jump if accumulator is greater than or equal to 0
17: JNZ A, [d8] Jump if accumulator is not 0
18: CLR [r] - Clear a register
19: INP [id] - Store INPUT id in accumulator
1A: MOV pA, [r] - Move the value at address A register r
1B:  MOV [r], pA - Move register r into address A
1C: MOV [p], A - Move a value in a pointer to the accumulator
1D: MOV A, [p] - Move the accumulator to a location
1E: MLT [r], A - Multiply register r by the accumulator
1F: DIV [r], A - Divide register r by accumulator


REGISTERS:
00: 
REGISTER 1
01: REGISTER 2
02: REGISTER 3
04: REGISTER 4
05: ZERO FLAG (R)
06: 
PC (R)
07: ALU Result (R)


Update Notes:
Welcome to the 3rd iteration of my Femboy-8 CPU! This might be the last version with 32 instructions.


To-Do:
Increase amount of registers to 8
Make a simple command line
Make an assember
Make a simple operating system for the CPU
Add rgb output


project.name
0 Stars     16 Views
User:

Functional Electronic Machine Binary Operator Yes - 8-bit cpu

Working on a new CPU: Femboy-16


ASSEMBLER:

https://output.jsbin.com/wutikij


INSTRUCTION SET:
00: NOP - Nothing
01: HLT - Halt program
02: OUT [id] - Output the accumulator out of an output
03: LDI A, [d8] - Loads immediate 8 bit word into the accumulator
04: MOV [r], A - Move register to accumulator
05: MOV A, [r] - Move accumulator to register
06: INC [r] - Increment a register
07: DEC [r] - Decrememt a register
08: ADD [r], A - Add the accumulator from a register
09: SUB [r], A - Subtract the accumulator from a register
0A: AND [r], A - And the register and accumulator
0B: IOR [r], A - OR the register and accumulator
0C: XOR [r], A - XOR the register and accumulator
0D: NOT [r] - NOT a register
0E: SAR [d8] - Barrel shift accumulator right
0F: SAL [d8] - Barrel shift accumulator left
10: JUP [d8] - Jump to a location
11: JPP [r] - Jump to a register value
12: JPL A, [d8] - Jump if accumulator is less than 0
13: JZO A, [d8] - Jump if accumulator is 0
14: JPG A, [d8] - Jump if accumulator is greater than 0
15: JLE A, [d8] - Jump if accumulator is less than or equal to 0
16: JGE A, [d8] Jump if accumulator is greater than or equal to 0
17: JNZ A, [d8] Jump if accumulator is not 0
18: CLR [r] - Clear a register
19: INP [id] - Store INPUT id in accumulator
1A: MOV pA, [r] - Move the value at address A register r
1B:  MOV [r], pA - Move register r into address A
1C: MOV [p], A - Move a value in a pointer to the accumulator
1D: MOV A, [p] - Move the accumulator to a location
1E: MLT [r], A - Multiply register r by the accumulator
1F: DIV [r], A - Divide register r by accumulator


REGISTERS:
00: REGISTER 1
01: REGISTER 2
02: REGISTER 3
04: REGISTER 4
05: ZERO FLAG (R)
06: PC (R)
07: ALU Result (R)


Update Notes:
So this is the 4th iteration of my CPU lol... I added a few programs for you all to try out and you can even use an assembler now!


To-Do:
Increase amount of registers to 8
Make a simple command line
Make an assember
Make a simple operating system for the CPU
Add rgb output