Professional Documents
Culture Documents
Vlsi
Vlsi
MC LC.................................................................................................................... 1
PHN CNG CNG VIC.........................................................................................3
NI DUNG TI.....................................................................................................4
1.
2.
3.
S khi ca cc module............................................................................9
3.1 Module digital_clock_top............................................................................9
3.2 Module counter............................................................................................11
3.3Module extract_bits........................................................................................13
3.4 Module LED_7_segs...................................................................................15
4.
RTL Coding..................................................................................................16
4.1 Module Top_DongHoSo..............................................................................16
4.2 Module Counter............................................................................................17
4.3 Module ExtractBits.......................................................................................18
4.4 Module Led7seg............................................................................................19
5.
6.
H tn
V Ngc Din
Nguyn Vn Hip
ng nh Lm
L Vn Sn
Nguyn Trung Thnh
MSSV
20111327
20111591
20111735
20112066
20112190
Cng vic
Thit k Synopsys
V s khi trn Visio v vit bo co
Thit k trn Synopsys
Code verilog
Code verilog v m phng
NI DUNG TI
1. Quy trnh thit k ASIC s dng b phn mm ca Synopsys
1.1 Tng quan v cng ngh ASIC
ASIC - Application Specific Integrated Circuit: mch thch hp ng dng chuyn bit.
ASIC c xy dng bng vic kt ni cc mch c sn d c xy dgj theo cc
phng php mi v vy ASIC thun tin v d dng hn. Asic l mt mch thch hp
c sn xut cho mt ng dng c trng v thng c kch thc tng nh.
Cng ngh ASIC c s dng rng khp trong cc thit b iu khin t ng
iu khin cc chc nng ca cc phng tin truyn thng, xe c, cc h thng x l,
dy chuyn cng nghip
1.1.1 S lc qu trnh pht trin ca mch thch hp IC
SSI : Small Scale Intergation Mch tch hp c nh ( <10 transistor)
MSI: Medium Scale Integration Mch tch hp c trung bnh (10100
transistors)
LSI: Large Scale Integration Mch tch hp c ln (1001000 transistors)
VLSI: Very Large Scale Integration Mc tch hp c rt ln (103 106
transistors)
1.1.2 Phn loi ASIC
S thit k ASIC
Design specification
Design specification l mt phn quan trng ca lung thit k ASIC.
Trong bc ny,cc c tnh v chc nng ca chip ASIC c nh ngha. K
hoch thit k cng ca ra nh thi gian hon thnh d n, chi ph, din tch
chip .
Da vo yu cu chc nng v yu cu phi chc nng kin trc v vi kin trc
cho tng module ca ASIC c xc nh. Trong qu trnh m phng kin trc, kin
trc ASIC c th thay i nu kt qu m phng cho thy n khng p ng nhng
yu cu v c t.
RTL coding
RTL coding l bc m t thit k di dng m RTL bng mt ngn ng m t
phn cng nh VHDL hoc verilog. M RTL phi m bo c th tng hp c
thnh mch vt l, do vic m ha RTL phi tun theo mt b cc quy tc ph
thuc vo vo kh nng h tr ca nh sn xut phn cng
6
Logic synthesis
Logic synthesis l bc tng hp mch t code RTL thnh cng logic. Da vo
nhng cell c sn trong tp tin th vin cng ngh, mch cng logic c tng hp
thc hin nhng chc nng nh code RTL m t. Kt qu ca bc Synthesis ny l
cc "net-list" cu trc theo mt tiu chun no .
Logic verification and testing
Logic verification and testing l bc kim tra chc nng ca mch t hp c
t bc trc, so vi yu cu chc nng trong specs. Ngoi ra, bc ny c th bao
gm c vic kim tra timing.
Physical layout
Phn ny thng c m nhim bi chuyn gia trong cc hng sn xut bn
dn. H s dng cc cng c chuyn net-list sang kiu d liu cho layout. Netlist
s tr thnh bn v cch b tr cc transistor, capacitor, resistor,... y phi tun th
nghim ngt mt th gi l Design Rule. Cc lut ny c a ra da vo cc gii
hn ca vic ch to, m bo bn Physical layout c th ch to c.
Layout verification and implementation
Layout verification and implementation l bc kim tra sau layout kim tra
chc nng ca mch so vi mch netlist to ra t cc phn trc. Ngoi ra bc
ny, cc lut ca nh sn xut a ra cng c kim tra.
Fabrication
Fabrication l bc cui cng, l ch tao chip da vo mch layout.
1.3 B phn mn Synopsys
1.3.1 Trnh t cc bc thit k mt ASIC (design flow) trong Synopsys.
Design entry
S dng schematic hoc dng ngn ng m t phn cng nh VHDL,
Verilog, System Verilog.
Logic synthesis
Dng HDL v cng c tng hp logic xy dng netlist l s m t
ca components v kt ni (interconnect) gia chng
System partitioning
Chia h thng ln thnh cc khi thch hp.
Simulation
Kim tra chc nng ca h thng.
Kim tra timing ca h thng m bo p ng c cc yu cu v
thi gian.
Floorplanning
Sp xp cc block trn chip.
Placement
Phn chia v tr ca cc cells trong 1 khi.
7
Routing
To nn cc kt ni gia cc cells v cc blocks.
Circuit extraction
Tnh ton tr khng v dung khng ca cc interconnect
Post layout simulation
Kim tra kh nng lm vic n nh ca ton b thit k trong trng
hp c thm ti t lp interconnect.
Cc bc thit k 1 - 5: logic.
Cc bc thit k 5 9 : vt l.
1.3.2 Cc phn mm trong b phn mm ca Synopsys.
Synopsys cung cp cc phn mm phc v hu ht cc cng on trong quy
trnh thit k ASIC, tp hp thnh b Synopsys Tools. Cc phn mm trong b
phn mm thit k ASIC ca Synopsys:
Leda
Leda l mt cng c kim tra i km vi mt s lut nh trc kim tra
m Verilog hoc VHDL. Leda kim th c code RTL v netlist, Leda c th
kim tra thit k t u n cui tm nhng li c th dn ti vn trong
cc qu trnh m phng, tng hp mch.
VCS
VCS l chng trnh m phng m phn cng. VCS cho php ngi thit k
phn tch, dch v m phng cc miu t phn cng bng Verilog... u
vo VCS l cc tp HDL (.v, .sv, .vhd . . .), th vin ca nh sn xut IC, tp
cha cc thng s tr (.sdf). u ra VCS l kt qu m phng (file u
ra .txt, .doc; waveform ...).
Design Compiler
Design compiler (DC) l cng c quan trng nht trong b sn phm
tng hp ca Synopsys. Phn mm DC s ti u thit k a ra mt m
hnh logic nh nht v nhanh nht thc hin chc nng a ra.
Yu cu u vo tng hp mch bao gm 3 thnh phn:
RTL Source: Code VHDL hoc Verilog
Contraints: cc thit lp ban u cho u vo
Technology Libraries: Cc th vin cng ngh ca cc nh sn xut
u ra sau khi thc hin phn mm Design Compier:
Gate-level Netlist *.v: file m t mch bng cc phn t logic c bn, u vo
cho VCS.
File *.svf: file thng tin ci t Formality cho vic so snh s ging nhau
u ra
trong Formality
File *.ddc: lu thit k unmapped
File *.sdc: ghi ra script trong Synopsys Design Contraints nh dng .sdc
8
S khi ca IC ng h s
3.1.1.1 Chc nng.
Module digital_clock_top ng vai tr l top module trong khi thit k. Trong
module khi to mu cc module lin quan, thc hin kt ni tn hiu gia cc mu
ny.
3.1.1.2 u vo v u ra.
Tn chn
I/ S Reg
Nhim v
O bit
clk
en
rst
tens_hour_o
units_hour_o
tens_min_o
units_min_o
tens_sec_o
units_sec_o
thanh.
3.1.1.3 S ni dy bn trong.
I/O
clk
S
bit
1
rst
Re
g
set_number I
counter_o
O
6
6
flag_o
Nhim v
Sn ln ca tn hiu l iu kin thc hin lnh
trong khi counter.
Tn hiu thit lp li cc gi tr gi, pht, giy ban
u ca ng h.
Gi tr gii hn cho b m
Gi tr m c a ra ngoi, bng gi tr
counter_r khi en = 1b1, unknown khi en = 1b0.
C bo lm tn hiu iu khin thay tn hiu clk
cho cc module counter khc.
3.3Module extract_bits.
3.3.1 S khi.
I/O
I
O
O
S bit
6
4
4
Nhim v
Gi tr a vo cn chuyn i
Gi tr hng chc ca s a vo
Gi tr hng n v ca s a vo.
13
I/O
S
Reg Nhim v
bit
en
I
1
Cho php tn hiu u ra hin th kt qu trn LED.
input_i
I
4
Gi tr cn hin th
output_o O
7
R
Biu din ca u vo trn LED 7 thanh
3.4.4 Bng gi tr u vo u ra.
15
En
1b0
1b1
1b1
1b1
1b1
1b1
1b1
1b1
1b1
1b1
1b1
u vo
4bxxxx
4b0000
4b0001
4b0010
4b0011
4b0100
4b0101
4b0110
4b0111
4b1000
4b1001
u ra
7b0000000
7b1111110
7b1111110
7b1101101
7b1111001
7b0110011
7b1011011
7b1011111
7b1110000
7b1111111
7b1111011
Hin th
0
1
2
3
4
5
6
7
8
9
4. RTL Coding
4.1 Module Top_DongHoSo
module DongHoSo(tens_hour_o, units_hour_o, tens_min_o, units_min_o,
tens_sec_o, units_sec_o, clk, en, rst );
input clk, en, rst;
output [6:0] tens_hour_o, units_hour_o, tens_min_o, units_min_o,
tens_sec_o, units_sec_o;
16
17
begin
counter_o <= 6'd0;
flag_o <= 1'b1;
end
else
begin
counter_o <= counter_o + 1;
flag_o <= 1'b0;
end
endmodule
reg[3:0]
always @(number_i)
begin
d1={1'b0,number_i[5:3]};
if(d1>4'd4) c1 = d1 + 2'd3;
else c1 = d1;
d2={c1[2:0],number_i[2]};
if(d2>4'd4) c2 = d2 + 2'd3;
else c2 = d2;
d3={c2[2:0],number_i[1]};
18
if(d3>4'd4) c3 = d3 + 2'd3;
else c3 = d3;
if(number_i== 6'b111111)
begin
tens_o = 4'b1111;
units_o = 4'b1111;
end
else
begin
tens_o = {1'b0, c1[3], c2[3], c3[3]};
units_o = {c3[2:0], number_i[0]};
end
end
endmodule
19
output_o = 7'b1111001;
else if(input_i == 4)
output_o = 7'b0110011;
else if(input_i == 5)
output_o = 7'b1011011;
else if(input_i == 6)
output_o = 7'b1011111;
else if(input_i == 7)
output_o = 7'b1110000;
else if(input_i == 8)
output_o = 7'b1111111;
else if(input_i == 9)
output_o = 7'b1111011;
else output_o = 7'b1111110;end
else output_o = 7'b0000000;
end
endmodule
rst;
reg
clk;
reg
en;
wire
[6:0] hour_led_tens;
wire
[6:0] hour_led_unit;
wire
[6:0] min_led_tens;
wire
[6:0] min_led_unit;
20
wire
[6:0] sec_led_tens;
wire
[6:0] sec_led_unit;
DongHoSo test(
.rst(rst),
.en(en),
.clk(clk),
.tens_hour_o(hour_led_tens),
.units_hour_o(hour_led_unit),
.tens_min_o(min_led_tens),
.units_min_o(min_led_unit),
.tens_sec_o(sec_led_tens),
.units_sec_o(sec_led_unit)
);
initial begin
#1
rst = 0; en = 0;
#1
rst = 1; en = 1;
//#1000000000
$finish;
end
initial begin
clk=1;
forever #5 clk = ~clk;
end
endmodule
21
Sau khi ca s mi hin ra, trong mc Verision chn 2001 (verilog 2001):
22
23
Hnh 7 Check li
-
Sau khi sa code chy li kim tra mt ln na cho n khi no trn ca s khng
xut hin mu na.
25
26
Sau khi ca s hin ra chn file testbench click chut phi vo chn Add
to Wave ri chn New Wave view. Ca s mi hin ra bm F5 hoc
chn run (mi tn c chiu hng xung di) s xut hin ra timing cn
kim tra.
Kt qu:
Hnh 10 Kt qu m phng
-
27
Hnh 11 Khi ng DC
Bc 1: Ci t th vin
File Setup
Hnh 13 Ci t th vin
-
/opt/synopsys/dc/libraries/syn/dw_foundation.sldb
Vo terminal g lnh
set_svf top.svf
Bc 3: c file *.v
File Read
c tt c cc file verilog trong th mc rtl tr cc file testbench.
Bc 4 : Analyze
File Analyze
30
Hnh 15 Analyze
Bc 5: Elaborate
File Elaborate
Trong mc Design chn file top module
Hnh 16 Elaborate
32
Sau khi chn tn hiu clk vo Atributes trn thanh Menu chn Specify
Clock
Ta c cc thit lp sau:
create_clock -name "clk" -period 1000000000 -waveform { 0 500000000 } { clk }
Chn Fix hold : khc phc cc li hold time sau khi tng hp.
34
35
Design constraints
Trn thanh Menu vo Atributes chn Operating Environment Design constraints
36
C th thit lp thm cc rng buc v cng sut ng, cng sut dng r, Max
fanout, maxtransition.
Bc 9 : Compile Design
- Trn thanh Menu vo Design Compile Design OK
Ngoi ra bn c thm cc la chn sao cho sau qu trnh tng hp thit k ca
mnh ti u nht.
Hnh 24 Compile
37
C th thy rng sau khi compile ultra th mch hon ton l cc standard cell
ni vi nhau => c th xut ra file netlist.
Bc 11 : To file .ddc
- File .ddc c s dng cho phn mm ICC layout v kim tra chc nng
trong Primetime
File Save as
Bc 12 : To file Netlist
- File Netlist l file m t mc cng ca thit k bao gm cc cell c bn (AND,
OR, MUX, FF) c ni dy vi nhau.
File Save as
Bc 13 : To file .sdf
-
Bc 14 : To file .sdc
-
Bc 15 : Xut bo co
-
42
Min time
Bc 16 : Tt file theo di
-
Vo terminal g cu lnh:
set_svf off
43
44
{units_min_o[5]}
{units_hour_o[4]}
{tens_min_o[4]}
{units_sec_o[0]}
{units_sec_o[4]}
{tens_hour_o[0]}
{tens_sec_o[3]}
{units_min_o[2]}
{units_hour_o[1]}
{tens_min_o[1]}
{tens_hour_o[4]}
{units_min_o[6]}
{units_hour_o[5]}
{tens_min_o[5]}
{units_sec_o[1]}
{tens_sec_o[0]}
{units_sec_o[5]}
{tens_hour_o[1]}
{tens_sec_o[4]}
{units_min_o[3]}
{units_hour_o[2]}
{tens_min_o[2]}
{tens_hour_o[5]}
{units_hour_o[6]}
{tens_min_o[6]} {units_sec_o[2]} {tens_sec_o[1]} {units_min_o[0]}"
set_output_delay -clock clk -add_delay -min -rise 100000000 "{tens_min_o[6]}
{tens_min_o[5]} {tens_min_o[4]} {tens_min_o[3]} {tens_min_o[2]} {tens_min_o[1]}
{tens_min_o[0]} {tens_sec_o[6]} {tens_sec_o[5]} {tens_sec_o[4]} {tens_sec_o[3]}
{tens_sec_o[2]} {tens_sec_o[1]} {tens_sec_o[0]} {units_min_o[6]} {units_min_o[5]}
{units_min_o[4]}
{units_min_o[3]}
{units_min_o[2]}
{units_min_o[1]}
{units_min_o[0]}
{tens_hour_o[6]}
{tens_hour_o[5]}
{tens_hour_o[4]}
{tens_hour_o[3]}
{tens_hour_o[2]}
{tens_hour_o[1]}
{tens_hour_o[0]}
{units_sec_o[6]}
{units_sec_o[5]}
{units_sec_o[4]}
{units_sec_o[3]}
{units_sec_o[2]}
{units_sec_o[1]}
{units_sec_o[0]}
{units_hour_o[6]}
{units_hour_o[5]}
{units_hour_o[4]}
{units_hour_o[3]}
{units_hour_o[2]}
{units_hour_o[1]}
{units_hour_o[0]}
{units_sec_o[6]}
{tens_hour_o[2]}
{tens_sec_o[5]}
{units_min_o[4]}
{units_hour_o[3]}
{tens_min_o[3]}
{tens_hour_o[6]}
{units_sec_o[3]}
{tens_sec_o[2]}
{units_min_o[1]}
{units_hour_o[0]}
{tens_min_o[0]}
{tens_hour_o[3]}
{tens_sec_o[6]}
{units_min_o[5]}
{units_hour_o[4]}
{tens_min_o[4]}
{units_sec_o[0]}
{units_sec_o[4]}
{tens_hour_o[0]}
{tens_sec_o[3]}
{units_min_o[2]}
{units_hour_o[1]}
{tens_min_o[1]}
{tens_hour_o[4]}
{units_min_o[6]}
{units_hour_o[5]}
{tens_min_o[5]}
{units_sec_o[1]}
{tens_sec_o[0]}
{units_sec_o[5]}
{tens_hour_o[1]}
{tens_sec_o[4]}
{units_min_o[3]}
{units_hour_o[2]}
{tens_min_o[2]}
{tens_hour_o[5]}
{units_hour_o[6]}
{tens_min_o[6]} {units_sec_o[2]} {tens_sec_o[1]} {units_min_o[0]}"
set_output_delay -clock clk -add_delay
-min -fall 100000000 "{tens_min_o[6]}
{tens_min_o[5]} {tens_min_o[4]} {tens_min_o[3]} {tens_min_o[2]} {tens_min_o[1]}
{tens_min_o[0]} {tens_sec_o[6]} {tens_sec_o[5]} {tens_sec_o[4]} {tens_sec_o[3]}
{tens_sec_o[2]} {tens_sec_o[1]} {tens_sec_o[0]} {units_min_o[6]} {units_min_o[5]}
{units_min_o[4]}
{units_min_o[3]}
{units_min_o[2]}
{units_min_o[1]}
{units_min_o[0]}
{tens_hour_o[6]}
{tens_hour_o[5]}
{tens_hour_o[4]}
{tens_hour_o[3]}
{tens_hour_o[2]}
{tens_hour_o[1]}
{tens_hour_o[0]}
{units_sec_o[6]}
{units_sec_o[5]}
{units_sec_o[4]}
{units_sec_o[3]}
{units_sec_o[2]}
{units_sec_o[1]}
{units_sec_o[0]}
{units_hour_o[6]}
{units_hour_o[5]}
{units_hour_o[4]}
{units_hour_o[3]}
{units_hour_o[2]}
{units_hour_o[1]}
{units_hour_o[0]}
{units_sec_o[6]}
{tens_hour_o[2]}
{tens_sec_o[5]}
{units_min_o[4]}
{units_hour_o[3]}
{tens_min_o[3]}
{tens_hour_o[6]}
{units_sec_o[3]}
{tens_sec_o[2]}
{units_min_o[1]}
{units_hour_o[0]}
{tens_min_o[0]}
{tens_hour_o[3]}
{tens_sec_o[6]}
{units_min_o[5]}
{units_hour_o[4]}
{tens_min_o[4]}
{units_sec_o[0]}
{units_sec_o[4]}
{tens_hour_o[0]}
{tens_sec_o[3]}
{units_min_o[2]}
{units_hour_o[1]}
{tens_min_o[1]}
{tens_hour_o[4]}
{units_min_o[6]}
{units_hour_o[5]}
{tens_min_o[5]}
{units_sec_o[1]}
{tens_sec_o[0]}
{units_sec_o[5]}
{tens_hour_o[1]}
{tens_sec_o[4]}
{units_min_o[3]}
{units_hour_o[2]}
{tens_min_o[2]}
{tens_hour_o[5]}
{units_hour_o[6]}
{tens_min_o[6]} {units_sec_o[2]} {tens_sec_o[1]} {units_min_o[0]}"
set_operating_conditions -library tcbn45gsbwpbc BCCOM
change_selection
set_wire_load_model -name TSMC512K_Lowk_Aggresive -library tcbn45gsbwpbc
set all_in_ex_clk [remove_from_collection [all_inputs] [get_ports clk]]
set_driving_cell -no_design_rule -lib_cell INVD0BWP $all_in_ex_clk
set MAX_INPUT_LOAD [expr [load_of tcbn45gsbwpbc/AN2D0BWP/A1] * 10]
set_max_capacitance $MAX_INPUT_LOAD $all_in_ex_clk
set_load [expr $MAX_INPUT_LOAD * 3] [all_outputs]
45
set_max_area 1000
compile -exact_map -ungroup_all
compile_ultra
uplevel #0 { report_timing -path full -delay max -nworst 1 -max_paths 1
-significant_digits 2 -sort_by group }
uplevel #0 { report_timing -path full -delay min -nworst 1 -max_paths 1
-significant_digits 2 -sort_by group }
uplevel #0 { report_constraint -significant_digits 2 }
uplevel #0 { report_power -analysis_effort low }
uplevel #0 { report_resources }
write -hierarchy -format verilog -output /home/lab/VLSI10/dc/top_netlist.v
write -hierarchy -format ddc -output /home/lab/VLSI10/dc/top.ddc
write_sdf top.sdf
write_sdc top.sdc
set_svf -off
46
6.5 Formality
To th mc fm trong project. thc hin phn mm cn co cac file sau:
File theo doi top.svf
Cc file code RTL *.v
File Netlist top.v
Bc 1: M terminal g lnh hin th giao din ngi dng
fm_shell gui
47
Bc 4 : Chn Implementation
49
Bc 5: Match
-
Bc 6 : Verify
-
Trong mc Debug s hin ra cac im so sanh gia 2 file code RTL va file
netlist.
Hnh 44 Verify
6.6 Primetime trc khi layout
M phng mch tng hp logic bng vcs ch cho ta bit thit k sau khi tng hp
logic c tha mn cc yu cu chc nng hay khng, m khng m bo thit k
khng vi phm cc tiu chun v thi gian. m bo iu ny, thit k ca chng ta
phi c kim tra bng phn mm prime time trong b phn mm synopsys, prime
time s kim tra li thi gian tt cc cc path c th ca thit k.
Bc 1 : Ci t th vin
To th mc pt trong project
Vo th mc pt m ca s lnh g lnh:
pt_shell
Ci t Search Path:
set lib_path "/home/lab/Desktop/milkyway/tcbn45gsbwp_120a/frame_only_HVH_0d5_0/tcbn45gsbwp/LM";
set ADDITIONAL_SEARCH_PATH "$lib_path";
set TARGET_LIBRARY_FILES "tcbn45gsbwpbc.db";
set_app_var search_path "$search_path $ADDITIONAL_SEARCH_PATH";
set_app_var target_library $TARGET_LIBRARY_FILES;
set_app_var link_library "* $target_library";
Bc 2 : c file .ddc
c file .ddc s dng cu lnh sau:
read_ddc ../dc/top.ddc
52
53
Report : analysis_coverage
-check_type {setup hold recovery removal min_period min_pulse_width
clock_separation max_skew clock_gating_setup clock_gating_hold out_setup out_hold
nochange}
Design : DongHoSo
Version: D-2010.06-SP3-4
Date : Wed Jun 3 18:25:36 2015
****************************************
Type of Check
Total
Met
Violated
Untested
-------------------------------------------------------------------------------setup
20
7 ( 35%)
0 ( 0%)
13 ( 65%)
hold
20
7 ( 35%)
0 ( 0%)
13 ( 65%)
recovery
20
7 ( 35%)
0 ( 0%)
13 ( 65%)
removal
20
7 ( 35%)
0 ( 0%)
13 ( 65%)
min_pulse_width
160
28 ( 18%)
0 ( 0%)
132 ( 83%)
out_setup
42
42 (100%)
0 ( 0%)
0 ( 0%)
out_hold
42
42 (100%)
0 ( 0%)
0 ( 0%)
-------------------------------------------------------------------------------All Checks
324
140 ( 43%)
0 ( 0%)
184 ( 57%)
54
{ clk
55
800000000.000
-200000000.325
--------------------------------------------------------------slack (MET)
600000000.000
Xut bo co tr ti thiu:
Report Timing Edit Trong th mc Data type chn min Lu tn file
l mindelay.txt
56
0.011
-0.075
----------------------------------------------------------------------------slack (MET)
0.065
6.7 IC Compiler
Phn IC Complier l phn mm c chc nng layout to ra IC da vo file nestlist
(.ddc), (.sdc) v cc th vin vt l (milkyway techfile). Quy trnh thit k ca IC
Complier c biu din nh sau :
57
Bc 1: Ci t d liu
- M ca s giao din ngi dung bng cch g lnh sau:
icc_shell gui
Ci t th vin
File Setup Application Setup
Thc hin tng t nh bc ci t th vin trong Design Compiler
Hn 50 Ci t th vin
-
To th vin milkyway
File Creat Library
59
Hnh 51 To th vin
-
C cc thit lp sau:
New library path: Chn ng dn n th mc minh cn cha th vin
New library name : t tn th vin
V d :my_lib
Technology Files: Chn ng dn n file th vin cong ngh trong
Milkyway
/
home/lab/Desktop/milkyway/tcbn45gsbwp_120a/techfiles/HVH_0d5_0/tsmcn
45_10lm7X2ZRDL.tf
Trong mc input reference libraries Chn Add chn n th vin
tcnbn45gspwb
60
/
home/lab/Desktop/milkyway/tcbn45gsbwp_120a/frame_only_HVH_0d5_0/tc
bn45gsbwp
Chn Open library.
Chn OK.
-
c File top.ddc
File Import Read DDC
c file top.sdc
File SDC l file rng buc thit k. No c a vao rang buc thit k sao cho
thit k ca mnh ti u nht.
File Import Read SDC
61
Sau khi c file top.sdc, chn Window New layout window , s xut hin
ca s giao din hin th cc cell c xp chng ln nhau.
62
To TLU+
File Set TLU+
check_library
check_tlu_plus_files
list_libs
-
Bc 2: Floor Planning
-
64
Hnh 56 Khi to nn
Sau khi khi to nn s c hnh nh sau:
65
66
67
Sau khi to c cc vng dy VDD v VSS trn hnh s xut hin nh sau:
VDD:
69
To vng m:
Preroute Creat Pad ring
Hnh 63 To vng m
-
Hnh 64 Sp xp cell
Sau khi sp xp cc cell xong ta c:
-grc_based
-by_layer
-routing_stage
71
Bc 4: To clock tree
Clock Tree Synthesis l cng c dng ti u ng tn hiu clock phn phi
cho cc mch dy trong thit k. Khi khng c Clock Tree Synthesis th trong thit
k s xut hin nh sau:
Khi thc hin xong Clock Tree Synthesis, phn b tn hiu clock s nh sau:
72
thc hin Clock Tree Synthesis, chn Clock Core CTS and Optimization
Lu li bc to clock tree
save_mw_cel -as ctsed
Bc 5: Thc hin i dy
Route Core Routing and Optimization
Hnh 67 Routing
Lu li kt qu sau khi i dy t ng
save_mw_cel -as routed
Route Extract RC
74
Hnh 68 Extract RC
Kt qu sau ICC:
-hierarchy
-modified
-output
write_verilog icc.v
75
76
77
Report : analysis_coverage
-check_type {setup hold recovery removal min_period
min_pulse_width clock_separation max_skew clock_gating_setup
clock_gating_hold out_setup out_hold nochange}
Design : DongHoSo
Version: D-2010.06-SP3-4
Date
: Wed Jun 3 22:28:49 2015
****************************************
Type of Check
Total
Met
Violated
Untested
------------------------------------------------------------------------------setup
20
7 ( 35%)
0 ( 0%)
13
( 65%)
hold
20
7 ( 35%)
0 ( 0%)
13
( 65%)
recovery
20
7 ( 35%)
0 ( 0%)
13
( 65%)
removal
20
7 ( 35%)
0 ( 0%)
13
( 65%)
min_pulse_width
160
28 ( 18%)
0 ( 0%)
132
( 83%)
out_setup
42
42 (100%)
0 ( 0%)
0 (
0%)
out_hold
42
42 (100%)
0 ( 0%)
0 (
0%)
------------------------------------------------------------------------------All Checks
324
140 ( 43%)
0 ( 0%)
184
( 57%)
79
TNG KT
Trong qu trnh thc hin phn bi tp ln trn nhm :
-
Chng em xin cm n!
80