Building a PIC18C and System-on-a-Chip in an FPGA
Project Description
People
VHDL Model
Test Programs
Implementation
Links
Photo Album
Project Description
The goal of the PIC18C project is to design, develop
a synthesizible VHDL model, verify it using test programs, and implement
a core of the Microchip PIC18C microcontroller. The microcontroller core
is fully compatibile with the PIC18 series allowing program development
using high-level programming languages such as C.
The project phases are described below.
1. Design
The design phase involves the detailed study of the
architecture and instruction set. The key elements of the architecture
are defined: instruction fetcher, decoder, register file, etc. The instruction
set is examined and grouped to facilitate decoding.
2. VHDL Model Development
The key architectural components derived from the design
phase are used to form the VHDL model hierarchy. The hierarchy is shown
below.
PIC
Data Processing Unit (DPU)
Arithmetic-Logic
Unit (ALU)
Multiplier
Rotater
Bit-Operation
Processor (BOP)
Instruction Decoder
Fetcher
Instruction
Register
Program Counter
Hardware Return Stack
Block RAM
Constant Data
Fetcher
Register File
Block RAM
Reset
Watchdog Timer
ROM
Block RAM
3. Verification
The initial PIC operation verification is done by writing
a single assembly language test file for each instruction. The program
was assembled using Microchip’s MPLAB development system. A simple C program
is used to convert the output of the Assembler (HEX format) into a format
suitable for cut-and-paste into the ROM array.
4. Implementation & Demonstation
The PIC is sucessfully synthesized and implemented using
Spartan-II Development Kit with Xilinx Spartan-II XC2S100 FPGA. The PIC
operation is demonstrated by displaying a “Hello world” type string onto
a standard text-based LCD module. This milestone is reached on April 20th.
People
1. David Fatzer, team manager, chief architect, responsible for majority
of VHDL modules and testing. Email:
davidfatzer@netscape.net
2. Lee Pitts, team member, responsible for multiplier and UART VHDL
modules, and testing. Email: flaggle@yahoo.com
3. William Cruger, team member, responsible for implementation. Email:
crugerw@eng.uah.edu
4. Donn Hall, team member, responsible for UART VHDL model, and implementation.
Email: donn@halldoc.com
Advisor: Dr. Aleksandar
Milenkovic
VHDL Model
Coming soon!
Test Programs
Coming soon!
Implementation
Coming soon!
Links
PIC18C Reference Manual
MPLAB IDE
Spartan-II Development Kit
Photo Album
PIC18 on a board
Greetings from PIC
Greetings from PIC (2)