The New FPGA Architecture by Applying The CS-Box Structure Zhou Lin, Catherine October 13, 2003
Outline Introduction to the Xilinx FPGA architecture Introduction to the CS-box structure –Preliminaries –The connection way of pad pins and wire segments. –The connection way of logic block pins and wire segments.
Outline Experimental results –Channel width –Routing area Future work
Introduction to The Xilinx FPGA Architecture
Introduction to The CS- Box Structure Based on the Xilinx FPGA architecture. Combines the connection box and the switch box to form the connection-switch box (CS-box). LL LL CS
Introduction to The CS- Box Structure (cont’) Two types of switches in the CS-box –Those connecting one wire segment to another. They are set in the same way as in the switch box in the Xilinx FPGA. –Those connecting one pin to one wire segment or vice versa. The way to set them is the main topic in our research.
Introduction to The CS- Box Structure (cont’) Two types of CS-boxes –Containing the switches that connect pad pins to wire segments or vice versa. –Containing the switches that connect logic block pins to wire segments or vice versa.
Introduction to The CS- Box Structure (cont’) Preliminaries –W: Channel width. The number of wire segments in one channel. –Fc_pad: The number of wire segments each pad pin can be connected to. –Fc_input: The number of wire segments each input logic pin can be connected to. –Fc_output: The number of wire segments each output logic pin can be connected to. –P: The number of non-global pins on each logic block or pad.
The Connection Way of Pad Pins and Wire Segments Fc_pad = W for i:=1 to Fc_pad if i is even Set on the switch connecting the pin to the ith track in the x- directed channel. else Set on the switch connecting the pin to the ith track in the y- directed channel. endfor PadL L 0 1 2
The Connection Way of Logic Block Pins and Wire Segments if W mod P = 0 flag = 0; else m = W / P; flag = 1; for i:=1 to P Connect the pin to the tracks with the number ki, where k=1, 2, …, m; if flag=1 Connect the pin to the track with the number [(m+1)i-W]; endfor L CS i= W = 3 & P = 2 m = 1 & flag = 1 i = 2
Experimental Results Xilinx & CS Routing Area No Buffer Sharing Buffer Sharing Circuit Name Channel Width Total Circuitper CLBTotal Circuitper CLB alu4 11 & e+06 & & e+06 & & apex2 11 & e+06 & & e+06 & & apex4 14 & e+06 & & e+06 & & b9 4 & & & & & bigkey 7 & e+06 & & e+06 & & des 7 & e+06 & & e+06 & & diffeq 8 & e+06 & & e+06 & &
Experimental Results (cont’) dsip 6 & e+06 & & e+06 & & e64 8 & & & & & ex5p 14 & e+06 & & & & misex3 11 & e+06 & & e+06 & & my_adder 4 & & & & & s & & & & & tseng 7 & e+06 & & e+06 & & unreg 4 & & & & & Total 121 & & & & & Incease 13.22%10.91%11.35%11.60%7.79%
Future Do more experiments –Set Fc_pad, Fc_input and Fc_output equal to W / 2. –Apply different switch box structures into the FPGA with CS-boxes.