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
x16
x17
x18
x19
x20
x21
x22
x23
x24
x25
x26
x27
x28
x29
x30
x31

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