Title: Lecture 15 PicoBlaze I/O
1Lecture 15PicoBlaze I/O Interrupt Interface
ECE 448 FPGA and ASIC Design with VHDL
2Required reading
- P. Chu, FPGA Prototyping by VHDL Examples
- Chapter 16, PicoBlaze I/O Interface
- Chapter 17, PicoBlaze Interrupt Interface
3Syntax and Terminology
Syntax Example Definition
sX KK PORT(KK) PORT((sX)) RAM(KK)
s7 ab PORT(2) PORT((s1)) RAM(4)
Value at register 7 Value ab (in hex) Input value
from port 2 Input value from the port specified
by register s1 Value from the RAM location 4
4Addressing modes
5Output Decoding of Four Output Registers
6Output Instructions
C Z
OUTPUT sX, KK PORT(KK) lt sX OUTPUT
sX, (sY) PORT((sY)) lt sX
- -
DIR IND
- -
7Timing Diagram of an Output Instruction
8Truth Table of a Decoding Circuit
9Input Instructions
C Z
INPUT sX, KK sX lt PORT(KK) INPUT sX,
(sY) sX lt PORT((sY))
- -
DIR IND
- -
10Block Diagram of Four Continuous-Access Ports
11Timing Diagram of an Input Instruction
12Block Diagram of Four Single-Access Ports
13FIFO Interface
clk
rst
clk
rst
FIFO
dout
din
8
8
empty
full
write
read
14Operation of the Standard FIFO
A
B
C
D
-----
15Operation of the First-Word Fall-Through FIFO
16(No Transcript)
17Timing Diagram of an Input Instruction
18Interrupt Flow
19Timing Diagram of an Interrupt Event
20(No Transcript)
21Interrupt Related Instructions
RETURNI ENABLE PC lt STACKTOS TOS
lt TOS 1 I lt 1 Clt PRESERVED C
Zlt PRESERVED Z RETURNI DISABLE PC
lt STACKTOS TOS lt TOS 1 I lt 0
Clt PRESERVED C Zlt PRESERVED Z ENABLE
INTERRUPT I lt1 DISABLE INTERRUPT
I lt0
22Interrupt Interface with a Single Event
23Interrupt Interface with Two Requests