Apr Workshop Report
Apr Workshop Report
Apr Workshop Report
Abstract
This Document contains the ASIC chip design process, From the RTL stage to Timing analysis.
Maheshwaraa B S
MYSORE BATCH-1
maheshwaras05@gmail.com
ASIC BASED - RTL TO GDS 2 WORKSHOP 1`
Table of Contents
I. Tools Summary …………………………………………2
i) Frontend Tools (2)
ii) Backend Tools (2)
II. Verilog ………………………………………………………3
i) Verilog code (3)
ii) Testbench (4)
III. DC Tool ……………………………………………………………6
i) RTL to Gate level conversion (6)
ii) Conversion flow (7)
IV. ICC Tool …………………………………………………………..13
i) Floor plan (14)
ii) Power plan (16)
iii) Placement (21)
iv) CTS (Clock tree synthesis) (23)
v) Routing (24)
V. PT Tool ……………………………………………………………27
i) STA (27)
1
Organized By,
VLSI EXPERT PVT LTD.
ASIC BASED - RTL TO GDS 2 WORKSHOP 2`
Tools Summary
Language details
Use of TCL
I. TCL contains the tool automated commands, this files
minimize the work timing.
II. The best tcl commands produce better results in PD
Use of Verilog
I. Verilog is a Hardware description language, it’s used to
describe the functionality of digital circuit.
II. It’s used to describe digital and mixed signal circuit.
PD Tools details
Frontend tools
Use of VCS
I. Verilog code simulator
Use of Verdi
I. Testbench simulation
II. wave viewer
Backend tools
Use of Design Vision
I. Convert the HDL into a GTECH and Design ware Lib file
II. Time, power, area and data path optimization.
III. Input Lib: Std cell lib, Verilog file and Technology file.
Use of Integrated Circuit compiler
I. Floor plan
II. Power plan
III. Placement
IV. CTS (Clock tree synthesis)
V. Route
Use of Prime Time
I. Static timing analysis (Sign off tool)
2
Organized By,
VLSI EXPERT PVT LTD.
ASIC BASED - RTL TO GDS 2 WORKSHOP 3`
VERILOG CODE
(i) 4 Bit Full adder Verilog code
module full_adder (A, B, C_in, C_out, Clock, SUM);
input [3:0] A, B;
begin
reg1 <= A;
reg2 <= B;
end
begin
end
always @ *
begin
end
endmodule
3
Organized By,
VLSI EXPERT PVT LTD.
ASIC BASED - RTL TO GDS 2 WORKSHOP 4`
`include "full_adder_1.v"
module tb;
reg [3:0] A, B;
wire C_out;
initial begin
// $fsdbDumpvars();
$dumpfile("tb.vcd");
$dumpvars(0,tb);
A <= 0;
B <= 0;
C_in <= 0;
Clock <= 0;
$display("A = %b, B = %b, C_in = %b, SUM = %b, C_out = %b", A, B, C_in, SUM, C_out);
$display("A = %b, B = %b, C_in = %b, SUM = %b, C_out = %b", A, B, C_in, SUM, C_out);
$display("A = %b, B = %b, C_in = %b, SUM = %b, C_out = %b", A, B, C_in, SUM, C_out);
#100 $finish;
End
Endmodule
4
Organized By,
VLSI EXPERT PVT LTD.
ASIC BASED - RTL TO GDS 2 WORKSHOP 5`
Verilog
• Verilog is hardware description language (HDL) that’s used to describe
the functionality in code format.
• Verilog is widely used for design and verify the digital and mixed signal
systems.
• For compile the Verilog code we use VCS and Veridi is used to simulate
the hdl.
✓ RTL Simulation using Verdi tool (Image1 : Schematic & Image2 : Output wave view)
5
Organized By,
VLSI EXPERT PVT LTD.
ASIC BASED - RTL TO GDS 2 WORKSHOP 6`
DC SHELL
(iii) RTL TO GATE LEVEL CONVERSION
Required files for Conversion
➢ Verilog files (HDL file in .v format)
➢ Process development kit
➢ SDC Constraints (Std cell constraints)
6
Organized By,
VLSI EXPERT PVT LTD.
ASIC BASED - RTL TO GDS 2 WORKSHOP 7`
7
Organized By,
VLSI EXPERT PVT LTD.
ASIC BASED - RTL TO GDS 2 WORKSHOP 8`
(5) After execute previous commands, now we are analyze the Verilog
and elaborate the design. In this stage tool generate some file.
(i) Analyze – Generate one intermediate file with extension of
.pvl .
(ii) The .pvl intermediate file read and gtech design is build with
help of Elaborate and we get the register details also
available in this stage.
(iii) Apart from .pvl file we get .mr and .syn files also.
(6) Now the Gtech design was generated. After got the gtech file we
include the time constraint to check the timing.
(7) Followed by the compile_ultra is used to convert the gtech into a
gate level netlist.
(8) The final stage of conversion, we write or save the mapped Verilog
netlist in the format of mapped.v
8
Organized By,
VLSI EXPERT PVT LTD.
ASIC BASED - RTL TO GDS 2 WORKSHOP 9`
9
Organized By,
VLSI EXPERT PVT LTD.
ASIC BASED - RTL TO GDS 2 WORKSHOP 10`
10
Organized By,
VLSI EXPERT PVT LTD.
ASIC BASED - RTL TO GDS 2 WORKSHOP 11`
11
Organized By,
VLSI EXPERT PVT LTD.
ASIC BASED - RTL TO GDS 2 WORKSHOP 12`
✓ Timing report
12
Organized By,
VLSI EXPERT PVT LTD.
ASIC BASED - RTL TO GDS 2 WORKSHOP 13`
13
Organized By,
VLSI EXPERT PVT LTD.
ASIC BASED - RTL TO GDS 2 WORKSHOP 14`
14
Organized By,
VLSI EXPERT PVT LTD.
ASIC BASED - RTL TO GDS 2 WORKSHOP 15`
15
Organized By,
VLSI EXPERT PVT LTD.
ASIC BASED - RTL TO GDS 2 WORKSHOP 16`
✓ Floorplan conversion
✓ Ring Compilation
17
Organized By,
VLSI EXPERT PVT LTD.
ASIC BASED - RTL TO GDS 2 WORKSHOP 18`
18
Organized By,
VLSI EXPERT PVT LTD.
ASIC BASED - RTL TO GDS 2 WORKSHOP 19`
19
Organized By,
VLSI EXPERT PVT LTD.
ASIC BASED - RTL TO GDS 2 WORKSHOP 20`
✓ Powerplan compliation
20
Organized By,
VLSI EXPERT PVT LTD.
ASIC BASED - RTL TO GDS 2 WORKSHOP 21`
✓ Final Powerplan
(vii) Placement
✓ Placement is a process to find the suitable location for the std cells and
macros. And the placement is done by two way.
(1) Coarse placement
(2) Legalization
✓ Goal of the placement
(1) Timing, area and power optimization
(2) Routable design
✓ First stage of placement, determine the operating mode and operating
corners. After completion of the first setup we need to provide the
parasitic files to check the best and worst case operation.
✓ Global or pre-routing is done at this stage.
✓ Below we can see the cell are routing and std cell are placed in tracks.
21
Organized By,
VLSI EXPERT PVT LTD.
ASIC BASED - RTL TO GDS 2 WORKSHOP 22`
22
Organized By,
VLSI EXPERT PVT LTD.
ASIC BASED - RTL TO GDS 2 WORKSHOP 23`
23
Organized By,
VLSI EXPERT PVT LTD.
ASIC BASED - RTL TO GDS 2 WORKSHOP 24`
(ix) Routing
24
Organized By,
VLSI EXPERT PVT LTD.
ASIC BASED - RTL TO GDS 2 WORKSHOP 25`
25
Organized By,
VLSI EXPERT PVT LTD.
ASIC BASED - RTL TO GDS 2 WORKSHOP 26`
• Before getting into the static timing analysis, we need to write the output
files from the routing stage. That’s files are routed Verilog file (routed.v),
SDC (.sdc) and Parasitic(.spef) file.
26
Organized By,
VLSI EXPERT PVT LTD.
ASIC BASED - RTL TO GDS 2 WORKSHOP 27`
Timing analysis
• Timing analysis is process for check the circuit meets the target timing or
not.
• Two type of analysis are available
i) Static timing analysis
ii) Dynamic timing analysis
27
Organized By,
VLSI EXPERT PVT LTD.
ASIC BASED - RTL TO GDS 2 WORKSHOP 28`
28
Organized By,
VLSI EXPERT PVT LTD.