![Page 2: April 15, 20031 Synthesis of Signal Processing on FPGA Hongtao Du @AICIP.ECE.UTK](https://reader037.vdocuments.us/reader037/viewer/2022110402/56649e2a5503460f94b17af2/html5/thumbnails/2.jpg)
April 15, 2003 2
Getting startedWhat is VLSI?ASIC family members
Carrying onVHDL Synthesis structure
Do it yourselfParallel ICARe-configurable components
![Page 3: April 15, 20031 Synthesis of Signal Processing on FPGA Hongtao Du @AICIP.ECE.UTK](https://reader037.vdocuments.us/reader037/viewer/2022110402/56649e2a5503460f94b17af2/html5/thumbnails/3.jpg)
April 15, 2003 3
Development of VLSIIntegrated Circuit (IC):
A microelectronic semiconductor device consisting of many interconnected transistors and other components.
ICs are fabricated (constructed) on a die (a small rectangle) cut from a silicon wafer.
Containing logic gates: inverters, AND, OR, NAND, NOR, etc.
![Page 4: April 15, 20031 Synthesis of Signal Processing on FPGA Hongtao Du @AICIP.ECE.UTK](https://reader037.vdocuments.us/reader037/viewer/2022110402/56649e2a5503460f94b17af2/html5/thumbnails/4.jpg)
April 15, 2003 4
(continue)
Small Scale Integration (SSI) -- tens transistors Medium Scale Integration (MSI) -- hundreds transistorsLarge Scale Integration (LSI) – thousands transistorsVery Large-Scale Integrated Circuit (VLSI) has hundreds of thousands.One megabyte RAM contains more than one million transistors, developed in 1986 Wafer-scale integration
The most extreme technique.Using whole uncut wafers as components.
![Page 5: April 15, 20031 Synthesis of Signal Processing on FPGA Hongtao Du @AICIP.ECE.UTK](https://reader037.vdocuments.us/reader037/viewer/2022110402/56649e2a5503460f94b17af2/html5/thumbnails/5.jpg)
April 15, 2003 5
ASIC Family
ASIC
PLD
FPGA
MGA
Standard Library Cells
Analog / Digital Mixed Technologies
Full-Custom
Semi-Custom
Programmable
Non-programmable
PLD: programmable logic deviceMGA: mask gate array
![Page 6: April 15, 20031 Synthesis of Signal Processing on FPGA Hongtao Du @AICIP.ECE.UTK](https://reader037.vdocuments.us/reader037/viewer/2022110402/56649e2a5503460f94b17af2/html5/thumbnails/6.jpg)
April 15, 2003 6
FPGA v.s. PLDFPGA
Best for low quantity applicationsVendor prefabricates rows of gates and programmable connectionsUser specifies connections to implement logic functionsReplaces 2,000 to 2,000,000 gates Implementation time: within hoursDevelopment system cost: $5,000 – 10,000 (PC-based)
PLDBest for simple design
Vendor prefabricates multiple sets of gates with programmable connections
User specifies connections to implement logic functions
Replaces 300 to 8,000 gates
Implementation time: within minutes
Development system cost: $3,000 – 5,000 (PC-based)
![Page 7: April 15, 20031 Synthesis of Signal Processing on FPGA Hongtao Du @AICIP.ECE.UTK](https://reader037.vdocuments.us/reader037/viewer/2022110402/56649e2a5503460f94b17af2/html5/thumbnails/7.jpg)
April 15, 2003 7
MGA and Standard Library Cells
MGABest for moderate-sized designsVendor prefabricates rows of gates and wafersUser specifies two layers to implement logic functionsReplaces 10,000 to 10,000,000 gatesAfter place & route, masks are made for two layersDevelopment system cost: $ 50K (Workstation-based)Turnaround time for prototypes: 3 -- 5 weeks
Standard Library CellsBest for high quantity applications with multiple functions, such as CPU and RAM.User selects cells and specifies two layers of interconnections.Replaces 100,000 to 10,000,000 gatesAfter place & route, masks are made for all layersDevelopment system cost: $100K (Workstation-based)Turnaround time for prototypes: 8 weeks
![Page 8: April 15, 20031 Synthesis of Signal Processing on FPGA Hongtao Du @AICIP.ECE.UTK](https://reader037.vdocuments.us/reader037/viewer/2022110402/56649e2a5503460f94b17af2/html5/thumbnails/8.jpg)
April 15, 2003 8
FPGA FeaturesAdvantages
Rapid prototyping
Low risk
Low testing costs
Standard product advantages
Life cycle, reusable
Disadvantages Chip capacity and cost
Speed of circuit
![Page 9: April 15, 20031 Synthesis of Signal Processing on FPGA Hongtao Du @AICIP.ECE.UTK](https://reader037.vdocuments.us/reader037/viewer/2022110402/56649e2a5503460f94b17af2/html5/thumbnails/9.jpg)
April 15, 2003 9
Getting startedWhat is VLSI?ASIC family members
Carrying onVHDL Synthesis structure
Do it yourselfParallel ICARe-configurable components
![Page 10: April 15, 20031 Synthesis of Signal Processing on FPGA Hongtao Du @AICIP.ECE.UTK](https://reader037.vdocuments.us/reader037/viewer/2022110402/56649e2a5503460f94b17af2/html5/thumbnails/10.jpg)
April 15, 2003 10
VHDLHardware Description Language (HDL).
VHDL: VHSIC (Very High Speed Integrated Circuit) Hardware Description Language.Developed to standardize documentation for maintenance and possible redesign, by DOD.IEEE VHDL standard approved in 1987.
Verilog:Developed for verification of logic, by Gateway Automation.
![Page 11: April 15, 20031 Synthesis of Signal Processing on FPGA Hongtao Du @AICIP.ECE.UTK](https://reader037.vdocuments.us/reader037/viewer/2022110402/56649e2a5503460f94b17af2/html5/thumbnails/11.jpg)
April 15, 2003 11
sorting:PROCESS(clock)
BEGIN
if clock'event and clock='1' then
if all_ic_input_ok='1' and all_ic_output_ok='0' then
……if sort_weight(loop_count+1) >=
sort_weight(loop_count) then
temp1 <=
sort_weight(loop_count);
sort_weight(loop_count) <=
sort_weight(loop_count+1);
sort_weight(loop_count+1) <=
temp1;
temp2 <=
sort_band(loop_count);
sort_band(loop_count) <= sort_band(loop_count+1); sort_band(loop_count+1) <= temp2; change <= '1'; change_count <= loop_count+1; end if; loop_count <= loop_count + 1; end if; if loop_count = band-2 then loop_count <= 0; sort_count <= sort_count + 1; end if; if sort_count=band-1 then all_ic_output_ok <= '1'; end if;
……END PROCESS sorting;
Example: Comparing
![Page 12: April 15, 20031 Synthesis of Signal Processing on FPGA Hongtao Du @AICIP.ECE.UTK](https://reader037.vdocuments.us/reader037/viewer/2022110402/56649e2a5503460f94b17af2/html5/thumbnails/12.jpg)
April 15, 2003 12
Synthesis structure
![Page 13: April 15, 20031 Synthesis of Signal Processing on FPGA Hongtao Du @AICIP.ECE.UTK](https://reader037.vdocuments.us/reader037/viewer/2022110402/56649e2a5503460f94b17af2/html5/thumbnails/13.jpg)
April 15, 2003 13
Getting startedWhat is VLSI?ASIC family members
Carrying onVHDL Synthesis structure
Do it yourselfParallel ICARe-configurable components
![Page 14: April 15, 20031 Synthesis of Signal Processing on FPGA Hongtao Du @AICIP.ECE.UTK](https://reader037.vdocuments.us/reader037/viewer/2022110402/56649e2a5503460f94b17af2/html5/thumbnails/14.jpg)
April 15, 2003 14
Parallel ICA Diagram
![Page 15: April 15, 20031 Synthesis of Signal Processing on FPGA Hongtao Du @AICIP.ECE.UTK](https://reader037.vdocuments.us/reader037/viewer/2022110402/56649e2a5503460f94b17af2/html5/thumbnails/15.jpg)
April 15, 2003 15
Synthesis Structure
![Page 16: April 15, 20031 Synthesis of Signal Processing on FPGA Hongtao Du @AICIP.ECE.UTK](https://reader037.vdocuments.us/reader037/viewer/2022110402/56649e2a5503460f94b17af2/html5/thumbnails/16.jpg)
April 15, 2003 16
Structure of Component OneUnit
Loop until
Converge
Normalize
wxwgExwxgEw TT )}({)}({ '
3)( xxg
InitializeWeight Vector
Update
Compute 23)(' xxg
www /
![Page 17: April 15, 20031 Synthesis of Signal Processing on FPGA Hongtao Du @AICIP.ECE.UTK](https://reader037.vdocuments.us/reader037/viewer/2022110402/56649e2a5503460f94b17af2/html5/thumbnails/17.jpg)
April 15, 2003 17
Structure of Component Decorrelation
p
jjj
Tp www
11
1111 / pTppp wwww Loop until
Converge
Normalize
Independent Component Input
Update
Decorrelate
p
jjj
Tp www
11
![Page 18: April 15, 20031 Synthesis of Signal Processing on FPGA Hongtao Du @AICIP.ECE.UTK](https://reader037.vdocuments.us/reader037/viewer/2022110402/56649e2a5503460f94b17af2/html5/thumbnails/18.jpg)
April 15, 2003 18
Structure of Component Comparing
![Page 19: April 15, 20031 Synthesis of Signal Processing on FPGA Hongtao Du @AICIP.ECE.UTK](https://reader037.vdocuments.us/reader037/viewer/2022110402/56649e2a5503460f94b17af2/html5/thumbnails/19.jpg)
April 15, 2003 19
Coverage of Re-configurable Components
![Page 20: April 15, 20031 Synthesis of Signal Processing on FPGA Hongtao Du @AICIP.ECE.UTK](https://reader037.vdocuments.us/reader037/viewer/2022110402/56649e2a5503460f94b17af2/html5/thumbnails/20.jpg)
April 15, 2003 20
Pre-layout SimulationsComponents:
One-unitDecorrelationComparing
Top level
![Page 21: April 15, 20031 Synthesis of Signal Processing on FPGA Hongtao Du @AICIP.ECE.UTK](https://reader037.vdocuments.us/reader037/viewer/2022110402/56649e2a5503460f94b17af2/html5/thumbnails/21.jpg)
April 15, 2003 21
![Page 22: April 15, 20031 Synthesis of Signal Processing on FPGA Hongtao Du @AICIP.ECE.UTK](https://reader037.vdocuments.us/reader037/viewer/2022110402/56649e2a5503460f94b17af2/html5/thumbnails/22.jpg)
April 15, 2003 22
![Page 23: April 15, 20031 Synthesis of Signal Processing on FPGA Hongtao Du @AICIP.ECE.UTK](https://reader037.vdocuments.us/reader037/viewer/2022110402/56649e2a5503460f94b17af2/html5/thumbnails/23.jpg)
April 15, 2003 23
![Page 24: April 15, 20031 Synthesis of Signal Processing on FPGA Hongtao Du @AICIP.ECE.UTK](https://reader037.vdocuments.us/reader037/viewer/2022110402/56649e2a5503460f94b17af2/html5/thumbnails/24.jpg)
April 15, 2003 24
![Page 25: April 15, 20031 Synthesis of Signal Processing on FPGA Hongtao Du @AICIP.ECE.UTK](https://reader037.vdocuments.us/reader037/viewer/2022110402/56649e2a5503460f94b17af2/html5/thumbnails/25.jpg)
April 15, 2003 25
Layout Simulation
Xilinx Virtex 1000EHQ240Estimating 4 Independent Components 92% utilization
![Page 26: April 15, 20031 Synthesis of Signal Processing on FPGA Hongtao Du @AICIP.ECE.UTK](https://reader037.vdocuments.us/reader037/viewer/2022110402/56649e2a5503460f94b17af2/html5/thumbnails/26.jpg)
April 15, 2003 26
![Page 27: April 15, 20031 Synthesis of Signal Processing on FPGA Hongtao Du @AICIP.ECE.UTK](https://reader037.vdocuments.us/reader037/viewer/2022110402/56649e2a5503460f94b17af2/html5/thumbnails/27.jpg)
April 15, 2003 27
Post-layout Simulation
![Page 28: April 15, 20031 Synthesis of Signal Processing on FPGA Hongtao Du @AICIP.ECE.UTK](https://reader037.vdocuments.us/reader037/viewer/2022110402/56649e2a5503460f94b17af2/html5/thumbnails/28.jpg)
April 15, 2003 28
Design and FPGA Capacity
![Page 29: April 15, 20031 Synthesis of Signal Processing on FPGA Hongtao Du @AICIP.ECE.UTK](https://reader037.vdocuments.us/reader037/viewer/2022110402/56649e2a5503460f94b17af2/html5/thumbnails/29.jpg)
April 15, 2003 29
![Page 30: April 15, 20031 Synthesis of Signal Processing on FPGA Hongtao Du @AICIP.ECE.UTK](https://reader037.vdocuments.us/reader037/viewer/2022110402/56649e2a5503460f94b17af2/html5/thumbnails/30.jpg)
April 15, 2003 30
Conclusion
FPGA is an efficient solution for signal processing.
![Page 31: April 15, 20031 Synthesis of Signal Processing on FPGA Hongtao Du @AICIP.ECE.UTK](https://reader037.vdocuments.us/reader037/viewer/2022110402/56649e2a5503460f94b17af2/html5/thumbnails/31.jpg)
April 15, 2003 31
ReferenceDeniel D. Gajdki and Loganath Ramachandran. Introduction to high-level synthesis. IEEE Design and Test of Computers, pages 44–54, 1994.
Don Bouldin. ECE 551: Designing application-specific integrated circuits, Fall 2001.
Don Bouldin. Design of Systems on a Chip, chapter Synthesis of FPGAs and Testable ASICs. Kluwer Academic Press, 2003.
Habib Youssef Sadiq M. Sait. VLSI Physical Design Automation, Theory and Practice. World Scientific Publishing Company, June 1999.