Lecture |
|
#1 |
| The history of
digital design: Boolean algebra, TTL
vs. CMOS, Programmable logic - CPLD vs. FPGA,
Introduction to hardware description language.
|
|
#2 |
| Getting started
- how to get: XiLinx ISE 11.1 WebPACK
and Adapt suite from Digilent.
|
|
#3 |
| First
digital design: Schematic -
Synthesize - Pin assignment - Place&Route -
Download. Presentation of the BASYS / NEXYS2 board - What's
behind: The Schematic and Inside the FPGA
|
|
#4 |
| First VHDL
design: VHDL-Module - Entity and Architecture
- In Out - STD_LOGIC The basic elements in order to describe a simple
digital design.
|
|
Test the kit - Most of the inputs and outputs will be tested -
Schematic and VHDL design
|
#5 |
| First Test
Bench: Component, Unit Under Test - UUT,
wait for ..the ISIM simulator The original purpose of VHDL was simulation, hence
will the concept of testing be important for all
your digital designs
|
|
Test Bench for a Full Adder
Combinatorial Logic - A short presentation of
Combinatorial logic
|
#6 |
| Data types, Operators and Attributes:
STD_LOGIC, STD_LOGIC_VECTOR, INTEGER, AND, OR, NOT, NAND,
NOR, &, EVENT
|
|
#7 |
| Concurrent VHDL Code:
Structural code, Dataflow, WHEN ..ELSE, WITH ..
SELECT .. WHEN.
|
|
BCD to 7 segment decoder
|
#8 |
| Sequential VHDL Code:
PROCESS, Sensitivity list, IF
.. THEN .. ELSIF .. ELSE .. END IF; CASE .. IS
.. WHEN => END CASE;
|
|
SR-Latch,
D-Latch,
D-Flip/Flop,
D-F/F extra,
Debounce circuit
Counter 1 8-bit binary counter Btn0 clocked,
Counter 2 32-bit binary counter (50 MHz
clock) + 4x8 mux.
|
#9 |
| Signals and Variables:
The concept of delta delays. When to use signals or
variables. Pitfalls of variables
|
|
Count ones example from Pedroni,
Shift-register with signals and variables.
Multiplexed display
- Create VHDL components for your own design
|
#10 |
| State Machines:
Mealy and Moore
machines, State Diagram design, VHDL design with 1
-2 or 3 processes,
Abstraction levels - Gate, RTL, FSM, ASM, Ad-hoc
|
|
BCD counter
-Toggle-button State Machine
with 3 outputs (Toggle, Debounce and Pulse)
|
#11 |
| Case study: Stopwatch
|
|
Stopwatch version 1 Ad hoc
Design -
Stopwatch version 2 - State Machine
Design
|
#12 |
| Arithmetic circuits:
Add, Subtract, Multiply, Division, Conversion Binary to BCD |
|
ALU Test
- very simple calculator -
Conversions Bin2Bcd and Bcd2Bin
|
#13 |
| Memories:
Flip/Flop memory, Distributed memory,
Block RAM |
|
Case - FIFO buffer.
|
#14 |
| PWM versus PPM:
Digital to Analogue
Conversions and Analogue to Digital ditto |
|
PWM vs Sigma Delta
|
#15 |
| Case study:
The Hilo Game |
|
The HiLo Game
|
#16 |
| Case study:
Generic code
- Packages - Procedures / Functions |
|
|
#17 |
| Yet to come:
y |
|
|
#18 |
| Yet to come:
y |
|
|
#19 |
| CPU - The Gnome:
y |
|
|
#20 |
| PicoBlaze - The
KCPSM3:
y |
|
|
#21 |
| pBlazIDE -
Integrated Develop Environment |
|
|
#22 |
| Case study -
PicoBlaze: |
|
|