Uploaded by ramya.sastija

VLSI Design Automation of a Montgomery Multiplier using Astro by ...

advertisement
VLSI Design Automation of a
Montgomery Multiplier using
Astro by Synopsys
Steven Hubbard
Overview
Montgomery Multiplier for RSA Encryption
Physical Design – ASIC and SoCs
ASIC Advantages
Astro Place and Route by Synopsys
Montgomery Multiplier Circuit Synthesis
Results
RSA Public-Key Cryptosystem
Developed by Rivest, Shamir, and
Adleman in 1978
Private Key contains two large prime
numbers, p and q, as well as a secret
exponent d
Public Key consists of n = p * q, with
exponent e
Requires Modular Exponentiation
Decryption involves larger exponentiation
Montgomery Multiplication
Efficient technique for computing modular
exponentiations
Does not require division in taking
modulus
Replaces with bit shifting, which is fast and
easy in hardware
Simple conversion to Montgomery Domain
done before and after Multiplication
Very Large Scale Integration (VLSI)
Computer Aided Design of Complex
Circuits
„
Tools for VLSI Produced by Synopsys
Used for Application Specific Integrated
Circuits (ASIC) and Systems On Chips
(SoCs)
Application Specific Integrated
Circuits (ASIC)
Advantages
„
„
„
Speed
Area
Power Consumption
Disadvantages
„
„
Manufacturing Time (FPGA time about half)
Cost
Astro – Place and Route Tool
Creates Physical Design Layout
Uses 3 Primary Inputs
„
„
Gate Level Netlist from Verilog
Standard Cell Library of Target Technology
Also contains timing information for the cells
„
Design Constraints (SDC File)
Clock Speeds
Input / Output Delays
Astro Tutorial
Provided by Synopsys
Primary Resource for Project
„
„
„
Tutorial Version: 3.6
Designed for Astro Version: 2003.09-SP1
Astro Version in Lab: 2004.06-SP1
Used same steps for Montgomery
Multiplier Circuit Synthesis
Astro Tutorial
Consists of 12 section which step through
place-and-route and other tools.
Not all sections used, not needed for
circuit.
Will be a primary resource for ECE 681 –
VLSI Design Automation class.
Montgomery Multiplier Circuit
Synthesis
VHDL Code
„
„
Provided by Hoang Le
Montgomery Multiplier Used in Elliptic Curve
Method Circuit
Use Design Analyzer in on Unix Server to
convert to Verilog and create SDC Timing
File
Montgomery Multiplier Circuit Synthesis –
Library and Cell Creation
First steps in Astro
Create Library
„
Expand Netlist from Verilog Code
Link Technology files and Reference
Library
„
„
Technology File - designs.tlu.18.tf
Reference Library - tcbn90g
90 nm circuit
Load Timing Constraints from SDC File
Montgomery Multiplier Circuit Synthesis –
Library and Cell Creation
Create Cell
„
„
„
Power / Ground Ring
P/G Strap
Standard Cells
Montgomery Multiplier Circuit Synthesis –
Optimizations and Placement
Pre and Post Placement Optimization
„
Frequent Optimizations run throughout
process to lower delay and verify design
Place Blocks
„
Arrange Standard Cells
Create Clock Tree Synthesis
„
Drive all clocked components without
connecting them to a single port.
Multiplier Cell after Placement
Montgomery Multiplier Circuit Synthesis –
Routing
Routing the Design
„
Connect Cells with Metal
More Optimization
Design Checks
„
Cross Talk
Check that signals will not affect adjacent wires
Multiplier Cell after Routing
Additional Astro Tools
ECO
„
Update circuit without recreating entire layout
Netlist Verification using Formality
„
Verify that the input and output Netlist are the same
Astro Rail
„
Create Voltage Drop Map and Electromigration Map
Static Timing Analysis using Primetime
„
Signoff quality static timing analysis and delay
calculation
Multiplier Clock Tree
Multiplier Voltage Drop Map
Montgomery Multiplier Circuit Synthesis –
Timing Reports
Based on SDC file
Generated Throughout Process
„
Usually Changes with optimization and
analysis
Show delay, report in terms of “Slack”
„
Difference between required delay and actual
delay
Steps through Critical Path
Montgomery Multiplier Timing
Results
Three Synthesis Cases
„
„
„
10 ns delay
5 ns delay
2.5 ns delay
Same circuit run on FPGA at 200 MHz or
5ns delay
Montgomery Multiplier Timing
Results
Slack
Total Delay
10 ns Delay
3.7089
6.2911
5 ns Delay
0.1477
4.8523
-2.1415
4.6415
2.5 ns Delay
Conclusions
Powerful Tool to create Physical Layouts
Need to Analyze Critical Path to see if
speed can be increased
Does not look like good Circuit Structure
for ASIC
Questions ?
Download