Beruflich Dokumente
Kultur Dokumente
Khurram Kazi Thanks to Automation press THE button outcomes the Chip !!! Reality or Myth
(most of the material in this lecture is taken from Bhatnagers book) Kazi ECE 6811
set_max_capacitance Set_max_transition & set_max_fanout on Inputs and Output ports or current design
set_load on outputs
l
Kazi ECE 681 2
Environmental attributes
Design environment consists of defining the process parameters, I/O port attributes, and statistical wire load models.
Set_min_library <max_library filename> -min_version <min library filename> dc_shell> set_min_library ex25_worst.db \ -min_version ex25_best.db This command allows the users to simultaneously specify the best case and worst case libraries. Can be used to fix set up and hold violation. The user should set both the min and the max values for the operating conditions
Operating conditions
worst typical Delay best worst Delay typical best worst best Delay typical
Process
temperature
Voltage
min
typical
max
% yield
10
mode = enclosed: (uses best fitting wire loads) 50x50 40x40 20x20 30x30
50x50
mode = segmented: (uses several wire loads) 50x50 40x40 20x20 30x30
40x40
20x20
40x40
30x30 12
set_drive
set_drive is used at the input ports of the block. It is used to specify the drive strength at the input port. Is typically used to model the external drive resistance to the ports of the block or chip. 0 signifies highest strength and is normally used for clock or reset ports. set_drive <value><object list> dc_shell> set_drive 0 {clk rst}
Kazi ECE 681 13
set_driving_cell
set_driving_cell is used to model the drive resistance of the driving cell to the input ports. set_driving_cell cell <cell name> -pin <pin name> <object list> dc_shell>set_driving_cell cell BUFF1 pin Z [all_inputs]
14
set_load
set_load sets the capacitive load in the units defined in the technology library (pf), to the specified ports or nets of the design. It typically sets capacitive loading on output ports of the blocks during pre-layout synthesis, and on nets, for back annotating the extracted post layout capacitive information set load <value> <object list> dc_shell>set_load 1.5 [all_outputs] dc_shell> set_load 0.3 [get_nets blockA/n1234]
Kazi ECE 681 15
16
A simple schematic
21
22
Path delay = 0.75 + 0.45 + 0.56 +0.1 + 0.2 +0.1 = 2.16 0.75 0.45 0.56
0.1
0.2 0.1
0.0
23
BIP Calculator
Example: A B O 0 0 0 1 0 1 1 1 0 1 0
24
B A
1 1 1 0 1 1 0 1 0 1 1 0 1 1 1 0
PRBS detector
set datain
clk
25
Code must have comments and has to be readable Should have run synthesis on it and run at least one gate level simulation (assuming we have some gate level library) The report should be a comprehensive report, telling the reader what is the functionality of the ASIC, what are its features etc Describe your test environment, i.e. pattern generator, pattern detector (signal analyzer) or self checking mechanism of all the outputs from the ASIC. (waveform analysis is not good enough)
26
27