Upload
theodora-harvey
View
212
Download
0
Tags:
Embed Size (px)
Citation preview
FPGA Switch Block Design
Dr. Philip BriskDepartment of Computer Science and Engineering
University of California, Riverside
CS 223
FPGA Architecture (Recap)
Routing Instance and an S Block
Flexibility of Interconnection Structures for Field-
Programmable Gate Arrays
J. Rose and S. Brown,IEEE Journal of Solid-State Circuits 25(3): 277-282,
Mar. 1991
Key Questions
• What is the effect of C Block flexibility on routing completion rate?
• What is the effect of S Block flexibility on routing completion rate?
• How do S and C Block flexibilities interact?
• What is the effect of S and C Block flexibilities on the number of tracks per channel to achieve 100% routability?
Switch Block Flexibility• Total number of possible connections offered
to each incoming wire
Switch Block Routability
• Cannot route from A to B
• Can route from A to B– Assymmetric about
horizontal and vertical axes
Fs = 2Fs = 2
Example Connection Block
Routability Study (One Benchmark)
W = 14
• Increasing FS improves routability, but FC must be high to achieve 100% routability
• Routing completion rate approaches 100% when FC > ½W
• Routing completion rate is low for low values of FC
Routability Study (One Benchmark)
W = 14
• If FC is high enough, then low values of FS can achieve 100% routability
• The number of different paths between the initial physical pin and the terminating C Block of a two-pin wire is given by:
where N is the number of S Blocks on the global path
• For lower values of FC, increasing FS improves routability up to a point
S Block vs. C Block FlexibilityAv
g. F
C/W
for 1
00%
routi
ng c
ompl
etion • A more flexible
S Block can compensate for a less flexible C Block
Track Count Requirement for BNREto Achieve 100% Routability
Conclusion
• C Blocks should have high flexibility to achieve high-percentage routing completion
• S Blocks require limited flexibility
• With low flexibility, only a few extra tracks more than the minimum can achieve 100% routability
Universal Switch Modules for FPGA Design
Y-W. Chang et al.,ACM Transactions on Design Automation for Electronic Systems 1(1): 80-101, Jan. 1996
Overview
• A Switch Block with larger routing capacity has better area-performance in FPGA routing– Increased connectivity of routing components– Equivalence of LUT/CLB inputs permits pin
permutations, which yields highly optimal routing– Most nets are short
• 60% of nets route through at most 2 Switch Blocks• 90% of nets route through at most 5 Switch Blocks
• Tradeoff between routing capacity and area
Universal Switch Module DefinitionRouting Resource Vector (RRV):N = (n1, n2, n3, n4, n5, n6), 0 < ni < W
Example: N = (1, 0, 1, 1, 0, 0) is routable on the following:
n1
n4 n3
• A Switch Block of size W is universal if the following inequalities are sufficient to determine of an RRV is routable:
Examples
Universal Sub-modules
• A sub-module of a Universal switch is also universal (but for a smaller W)
Theoretical Results
• A universal S Block can be constructed with at least 6W switches
• Any S Block constructed with less than 6W switches cannot be universal
Non-universal S Blocks
Disjoint Switch Block (Xilinx XC4000 series)
Antisymmetric Switch Block (Rose and Brown, 1991)
Channel Width Required for 100% Routing Capacity (One Benchmark)
Conclusion
• Universal S Blocks offer better routability than disjoint and antisymmetric S Blocks
• Algorithm presented to generate S Blocks that are universal (not discussed)
Architectures and Algorithms for Field-Programmable Gate Arrays
with Embedded Memory
S. Wilton,Ph.D. Thesis, University of Toronto, 1997
(Section 6.1.2)
S Blocks
Disjoint Universal Wilton
Start with Universal S Block, and rotate the diagonal connections by one track
FPGA Routing Structures: A Novel Switch Block and Depopulated
Interconnect Matrix Architectures
M. I. Masud,M.S. Thesis, University of British Columbia, 1998
Routing with a Disjoint S Block
• Routing fabric partitioned into domains• Cannot cross domains (using routing only)
Routing with a Wilton S Block
• Eliminates domain choice problem• Many more routing choices are available
Implementation Details
WiltonDisjoint
WiltonDisjoint
Area Overhead
Imran S Block
• Routability of Wilton S Block• Implementation efficiency of Disjoint S Block
Imran S Block(1) Tracks that terminate at the S Block
• Wilton topology
(2) Tracks that pass through the S Block• Disjoint topology
Area Results
Delay Results
Channel Width Results
Conclusion
• Imran Switch Block– Routability of Wilton Switch Block– Area-efficiency of Disjoint Switch Block