fpga-based system design: chapter 7 copyright 2004 prentice hall ptr topics n bus interfaces. n...
TRANSCRIPT
![Page 1: FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR Topics n Bus interfaces. n Platform FPGAs](https://reader030.vdocuments.us/reader030/viewer/2022033103/56649ca45503460f949653cb/html5/thumbnails/1.jpg)
FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR
Topics
Bus interfaces. Platform FPGAs.
![Page 2: FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR Topics n Bus interfaces. n Platform FPGAs](https://reader030.vdocuments.us/reader030/viewer/2022033103/56649ca45503460f949653cb/html5/thumbnails/2.jpg)
FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR
Bus interfaces
Requirements:– High performance.– Variable signal environment.
Techniques:– Asynchronous logic.– Handshaking-oriented protocols.
![Page 3: FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR Topics n Bus interfaces. n Platform FPGAs](https://reader030.vdocuments.us/reader030/viewer/2022033103/56649ca45503460f949653cb/html5/thumbnails/3.jpg)
FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR
Timing diagrams
a
b
c
stable
0 1
changing
Timing constraint
![Page 4: FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR Topics n Bus interfaces. n Platform FPGAs](https://reader030.vdocuments.us/reader030/viewer/2022033103/56649ca45503460f949653cb/html5/thumbnails/4.jpg)
FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR
Asynchronous logic
Distribute timing information with values.– No global clock.
Clock signal paths must have the same delay as data values.
![Page 5: FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR Topics n Bus interfaces. n Platform FPGAs](https://reader030.vdocuments.us/reader030/viewer/2022033103/56649ca45503460f949653cb/html5/thumbnails/5.jpg)
FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR
Latching an asynchronous signal
D Qadrs
adrs_ready
adrs
![Page 6: FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR Topics n Bus interfaces. n Platform FPGAs](https://reader030.vdocuments.us/reader030/viewer/2022033103/56649ca45503460f949653cb/html5/thumbnails/6.jpg)
FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR
Asynchronous timing constraints
Must satisfy setup, hold times.
adrs
Setup timeHold time
![Page 7: FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR Topics n Bus interfaces. n Platform FPGAs](https://reader030.vdocuments.us/reader030/viewer/2022033103/56649ca45503460f949653cb/html5/thumbnails/7.jpg)
FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR
Bus system design
Requirements:– Imposed by the other side of the system.
Constraints:– Imposed by this side of the system.
a b
requirements
constraints
![Page 8: FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR Topics n Bus interfaces. n Platform FPGAs](https://reader030.vdocuments.us/reader030/viewer/2022033103/56649ca45503460f949653cb/html5/thumbnails/8.jpg)
FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR
ba
Views of the bus
Hardware:
D Q D Q
Combinationallogic
![Page 9: FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR Topics n Bus interfaces. n Platform FPGAs](https://reader030.vdocuments.us/reader030/viewer/2022033103/56649ca45503460f949653cb/html5/thumbnails/9.jpg)
FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR
Views of bus system, cont’d.
Timing diagram:
ba
D Q D Q
Combinationallogic
x
y
x y
![Page 10: FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR Topics n Bus interfaces. n Platform FPGAs](https://reader030.vdocuments.us/reader030/viewer/2022033103/56649ca45503460f949653cb/html5/thumbnails/10.jpg)
FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR
Bus protocols
Basic transaction:– four-cycle handshake.
a
b
![Page 11: FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR Topics n Bus interfaces. n Platform FPGAs](https://reader030.vdocuments.us/reader030/viewer/2022033103/56649ca45503460f949653cb/html5/thumbnails/11.jpg)
FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR
Handshake machine
Each side is an FSM (possibly asynchronous):
a b0 1
Go
ackack
enq
0 1
enq
ack
![Page 12: FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR Topics n Bus interfaces. n Platform FPGAs](https://reader030.vdocuments.us/reader030/viewer/2022033103/56649ca45503460f949653cb/html5/thumbnails/12.jpg)
FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR
Basic protocols
Handshake transmits data:
![Page 13: FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR Topics n Bus interfaces. n Platform FPGAs](https://reader030.vdocuments.us/reader030/viewer/2022033103/56649ca45503460f949653cb/html5/thumbnails/13.jpg)
FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR
Box 1 logic
![Page 14: FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR Topics n Bus interfaces. n Platform FPGAs](https://reader030.vdocuments.us/reader030/viewer/2022033103/56649ca45503460f949653cb/html5/thumbnails/14.jpg)
FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR
Box 2 logic
![Page 15: FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR Topics n Bus interfaces. n Platform FPGAs](https://reader030.vdocuments.us/reader030/viewer/2022033103/56649ca45503460f949653cb/html5/thumbnails/15.jpg)
FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR
Bus timing
td1 = d stable
td2 = d not stable
tc1 = c rises
tc2 = c falls
tack1 = ack rises
t1 = tc1 - td1 >= tr
t2 = tack1 - tc1 >= th
t3 = tc2 - tack1 >= th
![Page 16: FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR Topics n Bus interfaces. n Platform FPGAs](https://reader030.vdocuments.us/reader030/viewer/2022033103/56649ca45503460f949653cb/html5/thumbnails/16.jpg)
FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR
Busses and systems
Microprocessor systems often have several busses running at different rates:
CPU
bridge
mem
I/O
High-speed
Low-speed
![Page 17: FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR Topics n Bus interfaces. n Platform FPGAs](https://reader030.vdocuments.us/reader030/viewer/2022033103/56649ca45503460f949653cb/html5/thumbnails/17.jpg)
FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR
Basic signals in a bus
![Page 18: FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR Topics n Bus interfaces. n Platform FPGAs](https://reader030.vdocuments.us/reader030/viewer/2022033103/56649ca45503460f949653cb/html5/thumbnails/18.jpg)
FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR
Bus characteristics
Physical– Connector size, etc.
Electrical– Voltages, currents, timing.
Protocol– Sequence of events.
![Page 19: FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR Topics n Bus interfaces. n Platform FPGAs](https://reader030.vdocuments.us/reader030/viewer/2022033103/56649ca45503460f949653cb/html5/thumbnails/19.jpg)
FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR
Advanced transactions
Multi-cycle transfers:– Several values on one handshake.– May use implicit addressing.
![Page 20: FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR Topics n Bus interfaces. n Platform FPGAs](https://reader030.vdocuments.us/reader030/viewer/2022033103/56649ca45503460f949653cb/html5/thumbnails/20.jpg)
FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR
PCI bus
Used for box-level system interconnect. Two versions:
– 33 MHz.– 66 MHz.
Supports advanced transactions.
![Page 21: FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR Topics n Bus interfaces. n Platform FPGAs](https://reader030.vdocuments.us/reader030/viewer/2022033103/56649ca45503460f949653cb/html5/thumbnails/21.jpg)
FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR
PCI bus read
![Page 22: FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR Topics n Bus interfaces. n Platform FPGAs](https://reader030.vdocuments.us/reader030/viewer/2022033103/56649ca45503460f949653cb/html5/thumbnails/22.jpg)
FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR
Multi-rate systems
Logic blocks running at different clock rates may communicate:– Multi-chip.– Single-chip.
» Slow bus connects to fast logic.
Logic 1 Logic 2
100 MHz 33 MHz
![Page 23: FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR Topics n Bus interfaces. n Platform FPGAs](https://reader030.vdocuments.us/reader030/viewer/2022033103/56649ca45503460f949653cb/html5/thumbnails/23.jpg)
FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR
Metastability
Registers capturing transitioning signals may take an arbitrarily long time to settle.
![Page 24: FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR Topics n Bus interfaces. n Platform FPGAs](https://reader030.vdocuments.us/reader030/viewer/2022033103/56649ca45503460f949653cb/html5/thumbnails/24.jpg)
FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR
Resynchronization
Use cascaded registers to minimize the chance of using a metastable value.
D Q D Qd dout
![Page 25: FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR Topics n Bus interfaces. n Platform FPGAs](https://reader030.vdocuments.us/reader030/viewer/2022033103/56649ca45503460f949653cb/html5/thumbnails/25.jpg)
FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR
Platform FPGAs
Put all the logic for a system on one FPGA. Requires large FPGAs plus:
– Specialized logic:» I/O support;
» memory interface.
– CPUs.
![Page 26: FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR Topics n Bus interfaces. n Platform FPGAs](https://reader030.vdocuments.us/reader030/viewer/2022033103/56649ca45503460f949653cb/html5/thumbnails/26.jpg)
FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR
Example: Virtex II Pro
Major features:– Large FPGA fabric.– High-speed I/O.– PowerPC.
![Page 27: FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR Topics n Bus interfaces. n Platform FPGAs](https://reader030.vdocuments.us/reader030/viewer/2022033103/56649ca45503460f949653cb/html5/thumbnails/27.jpg)
FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR
Virtex II Pro High-speed I/O
Rocket I/O:– parallel/serial or serial/parallel transceiver.
Clock recovery circuitry. Transceivers for multiple standards: Gigabit
Ethernet, Fibre Channel, etc. Programmable decoding features. Interface to FPGA fabric.
![Page 28: FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR Topics n Bus interfaces. n Platform FPGAs](https://reader030.vdocuments.us/reader030/viewer/2022033103/56649ca45503460f949653cb/html5/thumbnails/28.jpg)
FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR
Virtex II Pro CPUs
Up to 4 PowerPC 405s per chip:– 5 stage pipe, static branch prediction, etc.
Separate instruction, data caches. MMU. Timers. Scan-based debug support.
![Page 29: FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR Topics n Bus interfaces. n Platform FPGAs](https://reader030.vdocuments.us/reader030/viewer/2022033103/56649ca45503460f949653cb/html5/thumbnails/29.jpg)
FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR
PowerPC CoreConnect
![Page 30: FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR Topics n Bus interfaces. n Platform FPGAs](https://reader030.vdocuments.us/reader030/viewer/2022033103/56649ca45503460f949653cb/html5/thumbnails/30.jpg)
FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR
Altera Stratix
Combines FPGA fabric, memory blocks, multipliers.
![Page 31: FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR Topics n Bus interfaces. n Platform FPGAs](https://reader030.vdocuments.us/reader030/viewer/2022033103/56649ca45503460f949653cb/html5/thumbnails/31.jpg)
FPGA-Based System Design: Chapter 7 Copyright 2004 Prentice Hall PTR
Stratix DSP block