220 likes | 435 Views
Extending Atmel FPGA Flow. Nikos Andrikos TEC-EDM, ESTEC, ESA, Netherlands DAUIN, Politecnico di Torino, Italy NPI Final Presentation 25 January 2013 - ESTEC. Making Atmel FPGA Flow Work. Nikos Andrikos TEC-EDM, ESTEC, ESA, Netherlands DAUIN, Politecnico di Torino, Italy
E N D
Extending Atmel FPGA Flow Nikos Andrikos TEC-EDM, ESTEC, ESA, NetherlandsDAUIN, Politecnico di Torino, Italy NPI Final Presentation 25 January 2013 - ESTEC
Making Atmel FPGA Flow Work Nikos Andrikos TEC-EDM, ESTEC, ESA, NetherlandsDAUIN, Politecnico di Torino, Italy NPI Final Presentation 25 January 2013 - ESTEC
Outline • Introduction • FPGAs in Space • Atmel FPGAs • Atmel IDS • Methodology • Results • Conclusion
Field Programmable Gate Arrays • General purpose configurable circuits • Compared to Application-Specific Integrated Circuits (ASICs) • Pros • Rapid prototyping • Fixed cost per unit • Reprogrammability • Cons • Lower performance • Higher power consumption
FPGAs in Space • Aforementioned advantages • Increased momentun in their usage in space • Electronic circuits subject to radiation • Need for radiation hardening • ITAR regulations • Increased bureaucracy • Preventing export to embargoed countries (e.g. China)
Atmel FPGAs • The only FPGA option that is • RAD-hard • ITAR-free • Suitable for ESA applications • Many technologies available • 180nm AT58KRHA 180nm CMOS • ATF280 Family (used in this project) • AT40KEL040 350nm CMOS • ATFS450 150nm SOI • Available in the future
Atmel IDS • Atmel Integrated Development Systems (IDS) • Default software to program Atmel FPGAs • Provided by Atmel • But, • Has not been significantly updated recently • Usability issues • Obsolete algorithms • Leaves much to be desired
Outline • Introduction • Methodology • Scope of the work • Default flow • Proposed flow • VPLACE • Experimental Setup • Results • Conclusion
Scope of Work • Improve IDS flow • Usability issues • Explore various implementation options • Try alternative algorithms • VPLACE for placement • Quantative evaluation • Use of various designs • Comparison between default IDS and VPLACE algorithms
Default Flow HDL • Hardware specification • Hardware Description Language (HDL) • Mentor Precision • Logic Synthesis • Atmel IDS • Technology mapping • Placement • Routing • Bitstream Generation Mentor Precision Logic Synthesis Netlist Atmel IDS Tech Mapping Placement Routing Bitstream
Proposed Flow HDL • Automate the flow • Makefile usage • Constraint generation • Tool invocation • Optimize IDS options • Replace IDS placement • Parse project DB • VPLACE placement • Update project DB Mentor Precision Logic Synthesis Netlist Atmel IDS VPLACE Tech Mapping DB Parse Project DB Placement Placement Routing DB Update Bitstream
VPLACE • Academic algorithm for FPGA placement • Previously developed in Politecnico di Torino, Italy • Already used for Xilinx FPGAs • Algorithm still not optimized for Atmel • Not timing-driven • Not tuned for Atmel architectures • But, already promising results • Project database (DB) interface • Specifically developed during this project • Reverse-engineering of Atmel DB format (.fgd) • Around 3K C++ lines of code
Experimental Setup • Compare the two flows • Implementation targeting ATF280 FPGA family • IDS vs VPLACE placement • Compare performance (circuit period) • Use of designs of interest • ITC ‘99 benchmarks (initial verification) • HurriCANe 5.2.4 (CAN bus) • Crf 0.90 (by Astrium Crisa)
Outline • Introduction • Methodology • Results • ITC/HurriCANe • CRF • Conclusion
Results 1/2 Critical Period (ns) Critical Period (ns)
Results 2/2 • Compare critical period of two runs • Different placement algorithms • VPLACE vs default IDS • IDS pushed to maximum effort • Enabled timing-driven optimizations • VPLACE still not optimized • Much way to go • Route congestion • Suboptimal results • But, already some improvement • Up to 5% for some ITC benchmarks • 2.2% better for HurriCANe
CRF Results • Design by Astrium Crisa • Contact made during latest SEFUW (Nov 2012) • Provided only synthesized netlist • Flow does not necessarily need RTL anyway • Targeting AT40KEL040 family • Desired frequency of 10 MHz • Crisa’s implementation had reached 4 MHz • Our flow reached 9.6 MHz (2.4x speedup)! • Just by using our default IDS flow • VPLACE does not support inout ports
Conclusions • Fully automated Atmel FPGA flow • More user friendly • Only few lines of configuration needed for each project • Unattended runs • Fast constraints exploration • Fine tuning of IDS options • Better results even than industrial attempts • VPLACE algorithm • Alternative to default IDS placement • Still not optimized for Atmel • Not timing-driven • Not tuned for Atmel architecture • But, some promising results already
Future Work • Wait for newer version of VPLACE • Try additional designs • SpaceWire • Other you suggest? • Further exploration of IDS configuration options
Thanks! Questions? nikos.andrikos@esa.int www.esa.int/TEC/Microelectronics/