Project Report PDF
Project Report PDF
INSTITUTE OF TECHNOLOGY
Yelahanka, Bangalore- 560064, Karnataka- India.
An Autonomous Institution with A+ Grade by NAAC UGC, Approved by VTU, UGC, AICTE, Govt. of India.
Submitted By
1|Page
List of Figures
Figure 1.1: Steps involved in the realization of circuits using cadence…………….5
2|Page
List of Tables
For Example,
3|Page
Chapter 1
Simulation and Analysis - Virtuoso integrates with various simulation tools to perform
different types of analyses, including DC, AC, transient, noise, and parametric sweeps.
Simulation results can be visualized using the Waveform Viewer, which allows for
detailed inspection and measurement of signals.
Layout Design - The Layout Editor enables the physical design of ICs, where designers
create the geometric representation of the circuit that will be fabricated. It includes tools
for placing and routing components, as well as performing design rule checks (DRC)
to ensure the layout adheres to fabrication constraints.
4|Page
1.2.2 Steps involved in the realization of analog circuits using
cadence
Circuit
Simulation Verification
Design
Fig 1.1
5|Page
The platform supports extensive customization and automation through scripting and
programmable interfaces. Designers can create custom scripts to automate repetitive
tasks, optimize design flows, and enhance productivity.
Industry Standard
Cadence Virtuoso is widely adopted in academia and industry, making it a de facto
standard for VLSI design. Its widespread use ensures that students and professionals
are well-equipped with the skills needed for careers in semiconductor design.
Fig 1.2
6|Page
In the Library Manager, execute File - New – Library. The new library
form appears
Fig 1.3
In the ―New Library dialog box, Name ― inverter in the Name section.
And select the option in Technology file – “Attach to an existing
technology library “then click OK.
Fig 1.4
In the CIW or Library manager, execute File – New – Cell view. “New
file” form appears.
Library inverter
Cell Inv_1x
View Schematic
Open with Schematics L
7|Page
Fig 1.5
1.4.1 Symbol
fig 1.6
1.4.2 Schematic
8|Page
fig 1.7
Test schematic
Fig 1.8
Table 1.1
Table 1.2
Fig 1.9
10 | P a g e
Fig 1.10
1.7 Conclusion
The realization of a CMOS inverter using the Cadence tool suite provides a comprehensive
understanding of both the theoretical and practical aspects of digital circuit design. This step-
by-step process involving in design, simulation, and validation of a fundamental digital logic
component, the CMOS inverter. Through this project, we gained an in-depth understanding of
CMOS technology, including the operation and characteristics of PMOS and NMOS
transistors, which is crucial for further exploration and design of more complex digital circuits.
The project illustrated the complete design flow, starting from creating the inverter schematic
to generating the symbol and setting up the test schematic for simulation, emphasizing the
importance of each step and how they contribute to the successful realization of the circuit.
11 | P a g e
Chapter 2
Realizing various logic gates using NCLaunch and iRUN involves understanding the principles
of digital logic design, HDL (Hardware Description Language) coding, and simulation.
NCLaunch is a graphical user interface for managing simulation tasks in the Cadence tool suite,
while iRUN is a command-line tool that automates the compilation, elaboration, and simulation
processes. Here’s a theoretical overview:
Logic gates are the fundamental building blocks of digital circuits. Each gate performs
a basic logical function and is implemented using transistors in VLSI design. Common logic
gates include AND, OR, NOT, NAND and NOR gates. These gates are combined to create
more complex digital circuits.
Fig 2.1
12 | P a g e
Hardware description language
Hardware Description Languages (HDLs) like Verilog and VHDL are essential tools in digital
circuit design, allowing engineers to describe the structure, behavior, and timing of electronic
circuits. HDLs enable precise modeling, simulation, and verification of complex designs,
facilitating efficient development and implementation in VLSI systems.
Write Verilog or VHDL code to describe the logic gates (e.g., AND, OR, NOT,
NAND, NOR, XOR, XNOR) and their interconnections.
Design Testbenches:
Develop testbenches to apply input stimuli and verify the outputs of each gate under
different conditions.
Use iRUN to compile and elaborate the HDL files, ensuring syntax and semantic
correctness.
Simulation Setup:
Configure simulation options such as time step, initial conditions, and output file
format in NCLaunch.
Run Simulation:
Execute the simulation using NCLaunch to generate waveform outputs based on the
testbench inputs.
Waveform Analysis:
13 | P a g e
Debug and Iterate:
Identify and resolve any discrepancies between simulated and expected results
through debugging.
Make necessary adjustments to the HDL code and repeat simulation until desired
functionality is achieved.
AND Gate
and.v and_test.v
NAND Gate
nand.v nand_test.v
14 | P a g e
NOR Gate
nor.v nor_test.v
OR Gate
or.v or_test.v
15 | P a g e
2.1.4 simulation results
AND Gate
Fig 2.2
NAND Gate
Fig 2.3
NOR Gate
Fig 2.4
OR Gate
16 | P a g e
Fig 2.5
2.2.1 Theory
2.2.3 TCL Script for Realizing the Circuits and Boolean Expressions
Filename: run.tcl
read_hdl {./boolean1.v}
elaborate
read_sdc ./constraints_top.sdc
17 | P a g e
set_attribute syn_map_effort medium
syn_generic
syn_map
syn_opt
y=ab̅+c
Verilog Code – Filename: boolean.v
module boolean(a,b,c,y);
input a,b,c;
output y;
wire s1,s2;
not(s1,b);
and(s2,a,s1);
assign y = s2|c;
endmodule
y=A̅B̅+C̅D̅
Verilog Code - Filename: boolean1.v
module boolean1(A,B,C,D,Y);
input A,B,C,D;
output Y;
wire s1,s2;
nand(s1,A,B);
nand(s2,C,D);
assign y = s1|s2;
endmodule
18 | P a g e
2:1 Mux(Y = DOS̅ + D1S̅)
Verilog Code - Filename: mux21
module mux21(D0,D1,S,Y);
input D0,D1,S;
output Y;
wire sb,a,b;
not(sb,S);
and(a,sb,D0);
and(b,S,D1);
or(Y,a,b);
endmodule
2.2.5 Conclusion
This report has explored the use of NCLaunch and iRUN tools for the design, simulation, and
verification of logic gates and Boolean expressions. By utilizing Hardware Description
Languages (HDLs) such as Verilog, we developed accurate representations of fundamental
logic gates including AND, OR, NOT, NAND and NOR. The use of NCLaunch provided an
intuitive interface for managing and visualizing our simulation tasks, while iRUN facilitated
an efficient command-line workflow for compiling, elaborating, and running our simulations.
The hands-on experience with NCLaunch and iRUN underscored their effectiveness in
managing the complexity of digital circuit design and verification. We were able to debug and
optimize our designs, gaining deeper insights into the behavior of digital circuits and the
application of Boolean algebra in real-world scenarios. The process also enhanced our
problem-solving skills, reinforcing the importance of meticulous design and thorough testing
19 | P a g e
References
[1] EECS Department, University of Michigan, "Cadence Virtuoso Tutorial," 2009.
[Online]. Available:
https://www.eecs.umich.edu/courses/eecs522/w09/public/CadenceTutorial1W09.pdf.
[2] TutorialsPoint, "Logic Gates," 2024. [Online]. Available:
https://www.tutorialspoint.com/computer_logical_organization/logic_gates.htm.
[3] W. Millan, A. Clark, and E. Dawson, "Boolean Function Design Using Hill Climbing
Methods," in Information Security and Privacy. ACISP 1999, J. Pieprzyk, R. Safavi-
Naini, and J. Seberry, Eds., Lecture Notes in Computer Science, vol. 1587, Springer,
Berlin, Heidelberg, 1999, pp. 1-15. DOI: 10.1007/3-540-48970-3_1.
[4] Mastering TCL/TK:
rd
A Comprehensive Guide to the TCL programming language –[Brent
B. Welch]- 3 Edition
[5] TCL Programming for Beginners: A Hands-On Guide-[Kevin T. Smith]-6 th Edition
20 | P a g e