14
EFFICIENT ANALYSIS OF LARGE SCALE DIGITAL CIRCUITS AND PARASITIC INFORMATIONS Dimitris Akridas, Electronics Lab, University of Thessaly

Efficient analysis of large scale digital circuits and parasitic informations

Embed Size (px)

Citation preview

Page 1: Efficient analysis of large scale digital circuits and parasitic informations

EFFICIENT ANALYSIS OF LARGE SCALE DIGITAL CIRCUITS AND PARASITIC INFORMATIONS

Dimitris Akridas, Electronics Lab, University of Thessaly

Page 2: Efficient analysis of large scale digital circuits and parasitic informations

Key points of the analysis

● Parsing with Flex and Bison utilities.○ Very fast parsing, a necessary feature for large scale

designs.○ Lexical and syntax analysis of the Verilog and SPEF

language.● Graphical representation of the circuit.● Graphical representation of parasitics for each net in the circuit.● Exporting graphs to dot files.

○ The graphs can be visualised using a graph viewer like xdot.● Support of hierarchical designs in both verilog and spef

languages.

Page 3: Efficient analysis of large scale digital circuits and parasitic informations

Parsing flow analysis

Page 4: Efficient analysis of large scale digital circuits and parasitic informations

A hierarchical design

Page 5: Efficient analysis of large scale digital circuits and parasitic informations

Exported graph from verilog files (visualised with xdot)

Page 6: Efficient analysis of large scale digital circuits and parasitic informations

Look closer to a net

Page 7: Efficient analysis of large scale digital circuits and parasitic informations

Interconnect modeling - RC parasitics

Page 8: Efficient analysis of large scale digital circuits and parasitic informations

Exported net graph from spef file (visualised with xdot)

Page 9: Efficient analysis of large scale digital circuits and parasitic informations

Performance on a real processor● Leon processor

○ Verilog file■ 164 MB■ 3,234,764 lines of verilog code■ 1,616,368 cells

○ Spef file■ 1,4 GB (spef files are much bigger than verilog)■ 48,807,933 lines of spef code

● Performance on i5-4590 CPU @ 3.30GHz○ Parsing verilog file

■ Process time 58.8203 seconds■ Memory usage 4.5386e+06 bytes

○ Parsing spef file■ Process time 210.058 seconds■ Memory usage 5.51672e+06 bytes

Page 10: Efficient analysis of large scale digital circuits and parasitic informations

Developing Challenges - Memory Management

Old version of code with leon as input…

And killed!

Page 11: Efficient analysis of large scale digital circuits and parasitic informations

35% of transition diagram for verilog lexical analyzer!

Page 12: Efficient analysis of large scale digital circuits and parasitic informations

SPECIAL THANKS TOElectronics Lab - PHD candidates● Dimitris Garyfallou● Panagiotis Giannakou

Master student● Nikos Sketopoulos

Undergraduate Students● Giorgos Gkountouras● Dimitris Paraschas● Giorgos Varvarelis● Dimitris Evangelopoulos

Professors● Christos Sotiriou● Giorgos Dimitriou● Giorgos Stamoulis

Page 13: Efficient analysis of large scale digital circuits and parasitic informations

Source code on github

github.com/dakridas/VerilogAPIgithub.com/dakridas/SpefAPI

Page 14: Efficient analysis of large scale digital circuits and parasitic informations

THANKS!Any questions?

github.com/[email protected]