16
Team W1 Team W1 Design Manager: Rebecca Miller Design Manager: Rebecca Miller 1. Bobby Colyer (W11) 1. Bobby Colyer (W11) 2. Jeffrey Kuo (W12) 2. Jeffrey Kuo (W12) 3. Myron Kwai (W13) 3. Myron Kwai (W13) 4. Shirlene Lim (W14) 4. Shirlene Lim (W14) Stage VIII Stage VIII : : March 24 March 24 th th 2004 2004 CHIP LEVEL LAYOUT CHIP LEVEL LAYOUT Presentation #8: Rijndael Presentation #8: Rijndael Encryption Encryption Overall Project Objective: Implement the new AES Rijndael algorithm on chip 18-525 Integrated Circuit Design Project

Stage VIII : March 24 th 2004 CHIP LEVEL LAYOUT

  • Upload
    livi

  • View
    45

  • Download
    2

Embed Size (px)

DESCRIPTION

Presentation #8: Rijndael Encryption. Team W1 Design Manager: Rebecca Miller 1. Bobby Colyer (W11) 2. Jeffrey Kuo (W12) 3. Myron Kwai (W13) 4. Shirlene Lim (W14). Stage VIII : March 24 th 2004 CHIP LEVEL LAYOUT. Overall Project Objective: Implement the new AES Rijndael algorithm on chip. - PowerPoint PPT Presentation

Citation preview

Page 1: Stage VIII :  March 24 th  2004 CHIP LEVEL LAYOUT

Team W1Team W1Design Manager: Rebecca MillerDesign Manager: Rebecca Miller

1. Bobby Colyer (W11)1. Bobby Colyer (W11)2. Jeffrey Kuo (W12)2. Jeffrey Kuo (W12)3. Myron Kwai (W13)3. Myron Kwai (W13)4. Shirlene Lim (W14)4. Shirlene Lim (W14)

Stage VIIIStage VIII: : March 24March 24thth 2004 2004

CHIP LEVEL LAYOUTCHIP LEVEL LAYOUT

Presentation #8: Rijndael Presentation #8: Rijndael EncryptionEncryption

Overall Project Objective:Implement the new AES Rijndael algorithm on

chip

18-525 Integrated Circuit Design Project

Page 2: Stage VIII :  March 24 th  2004 CHIP LEVEL LAYOUT

StatusStatus

Design Proposal (Done) Architecture Proposal (Done) Size Estimates/Floorplan (Done) Gate Level Design (Done)

Schematic Design (Fixed) Input/Output Logic to SBOX Changed and Tested Top Level Schematic Verified – Pipeline Works!

Layout Component Layout (Done—Continually Changing) Component Simulations Chip Level Layout – Global Routing (80% Done)

To be Done SPICE simulation of chip Optimizations Everything else…

18-525 Integrated Circuit Design Project

Page 3: Stage VIII :  March 24 th  2004 CHIP LEVEL LAYOUT

StatusStatus

What needs to be done? Global Routing

Everything is wired internally, needs to be globally connected

Slow and Fast Clock Routing Select Line Routing Vdd and Gnd Routing

18-525 Integrated Circuit Design Project

Page 4: Stage VIII :  March 24 th  2004 CHIP LEVEL LAYOUT

Top Level Schematic

DFFs for Valid OutAdd Round Key

Clock Divider

Round Permutations and Pipeline DFFs

Key Expands and Pipeline DFFs

Mux

Tree

In

Mux

Tree

Out

Mux Tree

In

Mux Tree

Out

Final Text Out Final Text DFFs

Input DFFs

Select Logic

Select Logic

Page 5: Stage VIII :  March 24 th  2004 CHIP LEVEL LAYOUT

Verilog Re-VerificationVerilog Re-Verification

18-525 Integrated Circuit Design Project

reg [4:0] counterx; always #5 clk = ~clk;initialbegin counterx = 0;end always@(posedge clk) begin counterx = counterx + 1; if (counterx == 21) begin counterx = 0; end end initialbegin clk = 1'b1; rst = 1'b1; #10 rst = 1'b0; #10 rst =1;

@(posedge valid_in); text_in1[31:0] = 32'h00000000; // Expected: 1B3E9EDF key1[31:0] = 32'hFB473859; vin = 1; @(posedge valid_in); key1[31:0] = 32'b00000000000000000000000000000000; text_in1[31:0] = 32'h08f273e6; // Expected: 2DF5C18E vin = 1; @(posedge valid_in); key1[31:0] = 32'h00000000; text_in1[31:0] = 32'h10174E72; // Expected: 87FE42E7 vin = 1; @(posedge valid_in); key1[31:0] = 32'h00000000; text_in1[31:0] = 32'h30C42168; // Expected: 0BD9AFAC vin = 1; @(posedge valid_in); key1[31:0] = 32'h2F764A41; text_in1[31:0] = 32'h00000000; // Expected: 43B28B72 vin = 1;

@(posedge valid_in); key1[31:0] = 32'h00000000; text_in1[31:0] = 32'h91f0aca1; // Expected: c913f5ed vin = 1; @(posedge valid_in); key1[31:0] = 32'h851b64d9; text_in1[31:0] = 32'h00000000; // Expected: 30d0299b vin = 1;

@(posedge valid_in); key1[31:0] = 32'hc0000000; text_in1[31:0] = 32'h00000000; // Expected: ec4b0b60 vin = 1; @(posedge valid_in); key1[31:0] = 32'hfff80000; text_in1[31:0] = 32'h00000000; // Expected: b3adb97e vin = 1; @(posedge valid_in); key1[31:0] = 32'h00000000; text_in1[31:0] = 32'h9b0cb284; // Expected: 69551ee1 vin = 1; #10000 $finish; end

The Result of the Non-Resetting DFFs (Used to be junk values)

Page 6: Stage VIII :  March 24 th  2004 CHIP LEVEL LAYOUT

Updated Floorplan350 um x 335 um

Metal 3

Metal 2

Metal 1

Metal 4

SBOX and Control Logic

Text DFFs and Add RoundKey

5th Round Key Expand

Input to SBOX Logic & SelectOutput and Input Logic

4 Rounds of Key Expand

4 Rounds of Round Permutation

Input/Output Logic

CLKDivider

Select & Input Logic

SBOX and Control LogicFinal Text Out

Key DFFs and Input Logic

Page 7: Stage VIII :  March 24 th  2004 CHIP LEVEL LAYOUT

POLY AND ACTIVE

Page 8: Stage VIII :  March 24 th  2004 CHIP LEVEL LAYOUT

METAL 1

Page 9: Stage VIII :  March 24 th  2004 CHIP LEVEL LAYOUT

METAL 2

Page 10: Stage VIII :  March 24 th  2004 CHIP LEVEL LAYOUT

METAL 3

Page 11: Stage VIII :  March 24 th  2004 CHIP LEVEL LAYOUT

METAL 4

Page 12: Stage VIII :  March 24 th  2004 CHIP LEVEL LAYOUT

LVSed – Outer Area – ROM and Input Logic and Output DFFs

11,992 Transistors

Page 13: Stage VIII :  March 24 th  2004 CHIP LEVEL LAYOUT

LVSed – Inner Area – AES Key Expand

12,296 Transistors

Page 14: Stage VIII :  March 24 th  2004 CHIP LEVEL LAYOUT

Full Layout

Page 15: Stage VIII :  March 24 th  2004 CHIP LEVEL LAYOUT

Final DimensionsFinal Dimensions

• Total Area: 350 um x 335 um = 117250 sq. um

• Transistor Count: 25,296 transistors

• Transistor Density: 0.216

• Aspect Ratio: 1.045

• Estimated Clock Speed: 400MHz

Page 16: Stage VIII :  March 24 th  2004 CHIP LEVEL LAYOUT

Questions?Questions?

18-525 Integrated Circuit Design Project