Random Number Generator Dmitriy Solmonov W1-1 David Levitt W1-2 Jesse Guss W1-3 Sirisha Pillalamarri W1-4 Matt Russo W1-5 Design Manager – Thiago Hersan March 1, 2006 Component Layout and Floorplan Project Objective: Create a Cryptologically Secure Pseudo-Random Number Generator Layout Count: 14,300
Agenda Status Design Decisions Verification & Simulation Review DFM & Layout Rules Critical Layouts Floorplan & Design Specs
Status Former C implementation Architecture Behavioral Design and Simulation Gate-Level Design and Simulation Preliminary Floorplan Schematic Design and Simulation Currently Layout (14,300 of 34,710) Awaiting Extraction, LVS, post-layout simulation
Design Decisions Registers Re-designed –All registers based on n-pass DFF –Reduce size, power, complexity Reduction in instances of t-gates & inverters
DFF w/ Synchronous Load & CLR
Register Comparisons TypeTransistorsPower DFF1810µW HLFF2660µW
Verification Tested structural verilog against C code for correct result. Tested verilog schematic against structural verilog for matching signals Performed spectre analysis of key modules
DFM & ME The Rules –Everything is on a grid –Everything is mono-directional –All metal widths are the same –Contacts same width as metals
Pros Regular Layout Enforced Standardization More Accurate Resolution Contacts match metal widths
Example: Group Propagate
CONS Harder to “cut-corners” More time-involving Increased Area Decreased Speed More Metal Layers Learning Curve
Minimize Inverter Use DFM rules make inverters the more wasteful than any other gate No good way to make them, either waste area or avoid inverters
MUX’s Inefficient No routing through it BIG
3 Bit Adder Block Completed Layouts:
3 Bit Adder Block
SRAM Single Bus Cell Double Bus Cell
SRAM (R)
SRAM (M)
Updated Floorplan
Putting it All Together (Updated power calculations) ComponentTransistor CountAreaProp Delay Power Adders (4x)5856 (1464 each) 2700um 2 (675um 2 ea.) 1.44ns575uW FSM194100um 2 826ps46uW SRAM17736 (M=10458 R=7278) 8000um 2 735psW: 510uW R: 190uW Datapath w/o Adders um mW Total um MHz ~6.5mW
Thanks! Any Questions? (Beware the Cadence Ninja)