Memory

Address 0 1 2 3
00000000 00 00 00 00

Bus

addr
data 00 00 00 00
data
irq

Program counter

pc
mepc
pc+4

Instruction reg.

instr
fn
rs1
rs2
rd
imm

ALU

op
a
b
r

Comparator

op
a
b
taken

General-purpose regs

x0
x1
x2
x3
x4
x5
x6
x7
x8
x9
x10
x11
x12
x13
x14
x15

Text I/O

0 1
b0000000 (ctrl, data)
c0000000 (data)

    

General-purpose I/O

0 1 2 3
d0000000 (dir)
d0000004 (ien)
d0000008 (rev)
d000000c (fev)
d0000010 (val)
0
1
2
3

Bitmap output (00000C00–00000FFF)

X
X
X
X