On the Introduction of Reconfigurable
Hardware into Computer Architecture
Education
Ross Brennan
rbrennan@iee.org
Introduction
We will talk about the current microprocessor
design project, which has been undertaken by
students at Trinity College for the past 20 years
Discuss the motivation behind creating an updated
version of this design project
Discuss the prototyped microprocessor project
board
Finally, we will discuss future work leading on
from the development of this prototype
Background and Related Work
Using custom hardware and reconfigurable logic
devices to aid in the teaching of computer
architecture is not a new concept
Previous efforts have concentrated on:
Designing and implementing custom hardware and simulation
tools
Designing and implementing custom HDL processor models for
teaching purposes
Developing project boards based around dedicated soft-CPU
architectures
Without major updates to the processor models,
these implementations cannot grow in complexity
The Current Design Project
Designed around the Motorolla MC68008 CISC
microprocessor
8 MHz system clock
8-bit data bus
Uses GALs to implement “glue-logic”
Two serial ports implemented using ACIAs and
MAX232s
Connections are wire-wrapped together by students
Monitor program implemented in assembler by
students
Teaching Objectives
To adopt a “hands-on” approach towards teaching
computer architecture concepts to students
To show students the differences between various
processor architectures (RISC vs CISC, etc)
To allow students to design and implement
Instruction Set Architectures (ISAs)
To enable students to observe real time behaviour
of systems using logic state analysers
Prototyping the New Design [1]
Requirements:
Backwardly compatible with the current design project
Highly reconfigurable
Students to implement required system “glue-logic”
Students should be able to develop a basic operating system
A standardized bus interface was developed based
around the MC68008 protocol
Can use multiple synthesisable HDL processor models for use as
long as they implement the standardized bus interface
One such model already available is the LEON
P-1754 processor
Prototyping the New Design [2]
Diagram of the layout
for a single PROM
system
Control logic is
implemented in a
CPLD or FPGA using a
HDL
Connections are made
by wire-wrapping
components together
About LEON P-1754
Initially developed by the ESA
Aimed for use in satellite control systems
Synthesisable VHDL model of a 32-bit processor
Highly configurable
Can remove unwanted internal peripherals
Released open source under the GNU LGPL
Now maintained by Jiri Gaisler
Main Processor Features
RISC architecture
SPARC V8 compliant
integer unit
5-stage instruction pipeline
On-chip AMBA AHB/APB
32-bit, 33 MHz
Master/Target PCI Interface
Parallel I/O Port
2 Internal UARTs
Internal Debug Support Unit
Diagram of the LEON core from Gaisler Research
LEON [1]
Reduce complexity where possible
Use 8-bit data bus option (for wire-wrapping)
Ability to disable non-essential components using a
graphical configuration tool
Removable PCI interface
Removable FPU
Removable SDRAM controller
Software tools available from Gaisler Research
LECCS compiler
TSIM processor simulator
(free for student use)
(free for student use)
LEON [2]
Reduced clock speed
Operates at 6.25 MHz
Advantageous for wire-wrapping
Removable internal caches
Simplifies processor operation
Only method of observation via the bus
Modified bus transaction protocol
Similar to MC68008 bus transaction protocol
Students required to add external bus signaling
Removable internal memory map
Students are required to implement external logic instead
The Final Prototype
Picture of the final prototyped design on the VirtexII prototyping board.
Future Work
Finalize the prototyped design
Design and build a prototype board capable of
supporting multiple user configuration PROMs
Take advantage of the different LEON processor
configuration options for tailoring the complexity
of the system
Design and build a daughter board for use with the
main project board (PCI/FPU/Ethernet/32-bit
bus/etc)
Evaluate different HDL processor models for use
with the project board
Conclusions
The prototyped design successfully proved
that the LEON model was suitable for use in
place of the MC68008
The groundwork for designing a fully
operational hardware system was put in place
Reconfigurable underlying hardware
Scope for further development