IEE5650: VLSI Testing
Assignment #0 (Due: Sep. 24, 2020 23:59:99)
Last update: 2020-09-16
Reading:
-
PODEM source code
-
Benchmark circuits
-
Please compress the folder containing following two parts to a file named by
"ASS0_<your-student-ID>" and
upload it to
new E3 system.
-
Whole program, including the provided and your modification.
-
Short Report, briefly describe how your accomplish the assignment.
-
Naming and characteristics of benchmark circuits (decompressed from circuits.tgz):
(In the following, XXX is the identification number of the circuit, e.g., "27" is the identification number of s27.bench)
-
sXXX_seq.bench is the original ISCAS89 circuits.
- sXXX_opt.bench is the combinational parts of sXXX_seq.bench optimized with the Synopsys DC.
- sXXX_com.bench is the same as sXXX_opt.bench.
- cXXX.bench is the combinational ISCAS85 circuits.
Assignment Description:
(100 pts) Get yourself familiar with the data structure of the podem test generation package (though we do not use the test
generation part yet). Please use the circuit parser to read benchmark circuits and then output the following attributes
of a circuit. Choose benchmark circuits according to different criteria including combinational, sequential, optimized
,and non-optimized, larger or small circuits, etc.
- Number of inputs
- Number of outputs
- Total number of gates including inverter, or, nor, and, nand
- Number of gates for each type
- Number of flip-flops (if available)
- Total number of signal nets.
A net is any wire connecting between (PI, PPI, gate outputs) to (PO, PPO and gate inputs). Note that a gate connecting
to different gates will be counted as different nets.
For example, say that the output of gate A branches out to gate C and D.
Then there are two branch nets: A->C and A->D, and one stem net A, adding up to three nets in total.
- Number of branch nets
- Number of stem nets
- Average number of fanouts of each gate (all types)
Attention:
-
The required command format is as follows:
(So you are required to enroll a new option in main.cc.)
- ./atpg -ass0 [circuit_name]
-
Example:
- ./atpg -ass0 c17.bench