Skip to content

ChrisPVille/tt02-FROG4bitCPU

 
 

Repository files navigation

FROG 4-bit CPU

The FROG is a tiny 4-bit processor intended to be incorporated into the TinyTapeout multi-project chip on a multi-project wafer

The FROG is an extremely minimal load-store 4-bit CPU. Specified, designed, and tested in less than a day (given I discovered TinyTapeout with 36 hours remaining), several structures were simplified for speed of design.

ISA

Registers: 4-bit, A and B ALU Width: 4-bit Address Width: 7-bit Instructions: 15+NOP

OPCode Hex Description
NGA 0 2's complement negation of A
AND 1 A = A AND B
OR 2 A = A OR B
XOR 3 A = A XOR B
SLL 4 A = A << B
SRL 5 A = A >> B
SRA 6 A = A >> B (preserve sign)
ADD 7 A = A + B
NOP 8 No Operation
BEQ ofst 9 AddrH AddrL If A == B, PC = PC + offset
BLE ofst A AddrH AddrL If A <= B, PC = PC + offset
JMP addr B AddrH AddrL PC = addr
LDA addr C AddrH AddrL A = [addr]
LDB addr D AddrH AddrL B = [addr]
STA addr E AddrH AddrL [addr] = A
STB addr F AddrH AddrL [addr] = B

The Makefile has been modified to support the same github action as the template repository without actually pulling from Wokwi.

Releases

No releases published

Packages

 
 
 

Languages

  • Verilog 46.2%
  • Python 42.3%
  • Tcl 10.6%
  • Shell 0.9%