Lab1 5 PDF
Lab1 5 PDF
Objective
Part 1
To know about the basic logic gates, their truth tables, input-output characteristics and
analyzing their functionality. Introduction to logic gate ICs, Integrated Circuits pin
configurations and their use.
Part 2
Learn to use Proteus Software for Simulation of Digital Logic Circuits.
Pre-Lab:
Background Theory:
The Digital Logic Circuits can be represented in the form of (1) Boolean Functions, (2)
Truth Tables, and (3) Logic Diagram. Digital Logic Circuits may be practically
implemented by using electronic gates. The following points are important to understand.
Electronic gates are available in the form of Integrated Circuits (ICs) and they require
a power.
Supply Gate INPUTS are driven by voltages having two nominal values, e.g. 0V and
5, 12V representing logic 0 and logic 1 respectively.
The OUTPUT of a gate provides two nominal values of voltage only, e.g. 0V and 5,
12V representing logic 0 and logic 1 respectively. In general, there is only one output
to a logic gate except in some special cases.
Truth tables are used to help show the function of a logic gate in terms of input values
combination with the desired output.
Logic Diagram is used to represent the Digital Logic Circuit in the form of symbols
connected with each other.
Digital Logic Circuits can be simulated in the virtual environment called simulation
software
The basic operations are described below with the aid of Boolean function, logic symbol, and
truth table.
AND gate:
𝑨 𝑩 𝑭 = 𝑨.𝑩
0 0 0
0 1 0
1 0 0
1 1 1
The AND gate is an electronic circuit that gives a high output (1) only if all its inputs are
high. A dot (.) is used to show the AND operation i.e. A.B. Bear in mind that this dot is
sometimes omitted i.e. AB.
OR Gate:
𝑨 𝑩 𝑭=𝑨+𝑩
0 0 0
0 1 1
1 0 1
1 1 1
The OR gate is an electronic circuit that gives a high output (1) if one or more of its inputs
are high. A plus (+) is used to show the OR operation.
NOT gate
𝑨 𝑭=𝑨
0 1
1 0
The NOT gate is an electronic circuit that produces an inverted version of the input at its
output. It is also known as an inverter.
NAND gate
𝑨 𝑩 𝑭 = 𝑨.𝑩
0 0 1
0 1 1
1 0 1
1 1 0
This is a NOT-AND gate which is equal to an AND gate followed by a NOT gate. The output
of NAND gate is high if any of the inputs are low. The symbol is an AND gate with a small
circle on the output. The small circle represents inversion.
NOR gate
𝑨 𝑩 𝑭=𝑨+𝑩
0 0 1
0 1 0
1 0 0
1 1 0
This is a NOT-OR gate which is equal to an OR gate followed by a NOT gate. The output of
NOR gate is low if any of the inputs are high. The symbol is an OR gate with a small circle
on the output. The small circle represents inversion.
XOR gate
XOR
𝑨 𝑩 𝑭 = 𝑨⊕𝑩
0 0 0
0 1 1
1 0 1
1 1 0
The 'Exclusive-OR' gate is a circuit which will give a high output if odd number of inputs
are high. An encircled plus sign “ ” is used to show the EOR operation.
XNOR gate
XNOR
𝑨 𝑩 𝑭 = 𝑨⊕𝑩
0 0 1
0 1 0
1 0 0
1 1 1
The 'Exclusive-NOR' gate circuit does the opposite to the XOR gate. It will give a high
output if even number of inputs are high. The symbol is an XOR gate with a small circle on
the output. The small circle represents inversion.
Digital systems are said to be constructed by using logic gates. These gates are AND, OR,
NOT, NAND, NOR, XOR and XNOR. Logic gate ICs are available in different packages and
technologies. Two main classifications are as below:
74 series is TTL (Transistor-Transistor Logic) based integrated circuits family. Power rating
for 74 series is 5 to 5.5Volts. This circuitry has fast speed but requires more power than later
families. The Pin configuration of basic gates 2-input ICs for 74 Series is given in Figure 1.8:
Figure 1.8 shows the 4000 series is CMOS (complementary metal oxide semiconductors)
based integrated circuits. Power ratings are 3V to 15 Volts. CMOS circuitry consumes low
power, but it is not fast as compared to TTL.
The ICs available in Lab to perform the Tasks are listed below:
In-Lab:
Equipment Required
Procedure
o
Figure 1.10: IC placement on the breadboard
3. Select number of possible combinations of inputs using the slide switches SW0-SW3
(as shown in Tables 1.8 & 1.9) and note down the output with the help of LED for all
gate ICs. (You can use LD0-LD14 located on KL-31001 Digital Logic Lab)
(Note: Please make sure the Trainer board is off during the setup of circuit)
In-lab Task 1:
Verify all gates using their ICs on KL-31001 Digital Logic Lab trainer
INPUTS OUTPUTS
0 1
1 0
1 1
INPUT OUTPUT
𝑨 𝑩
0
Procedure
The Proteus software for simulation is installed in Digital Design Lab. Please follow the
details below to figure out the usage of Proteus tools and process of simulation.
Parts Browsing:
Proteus has many models of electronic equipment such as logic gates, many kinds of switches
and basic electronic devices. The equipment can be placed by clicking on it and then a new
window will pop-up as shown in Figure 1.12.
Finding Steps:
All the electrical circuits require power supplies. The power supplies for logic circuits are
represented in digital system design on Proteus because the schematic may be too
complicated to understand for simulation section. Therefore, power supplies will be needed
as input power for a system. Moreover, all the input generators, such as AC generator, DC
and pulse, are contained in this category and it will be shown when clicked. In addition,
“Ground” will not be available in this group. Because it is not an input signal it is just a
terminal junction. Therefore, it will be grouped in the terminal category as shown in Figures
1.14 & 1.15.
Figure 1.14: Power supplies window in Proteus Figure 1.15: Terminals window in Proteus
Logic State:
In addition, there is another input that usually used in the digital circuit, but it does not exist
in the real world as an equipment it is called as “LOGIC STATE”. It can be found in the
picking part section (type logic state and pick it as shown in Figure 1.16).
Placing Equipment:
Selecting all devices needed to be placed on the circuit window (Gray window) and make the
required connections. It can be done by following steps:
1. Click on and select the first device that will be placed.
2. Place mouse wherever the device is preferred to place and then click the left button of
the mouse. The device will be placed, if it is needed to be moved, click the right
button of the mouse on the device symbol to select the mouse. Then hold this device
with the left mouse button and move it to any desired place (Figure 1.17).
Digi
Figure 1.18: Making connection between devices to make a circuit
After wiring all devices and connect all inputs according to the circuit, the simulation is ready
to run by clicking on Play button and stop button is used to stop the simulation.
3. Logic probe or LED can be used to observe the output state.
NOTE: The digital result on Proteus can be seen also in Small Square Box at the pin of the
equipment & state can be shown in four colors. (Red= Logic 1, Blue = Logic 0, Gray=
Unreadable and Yellow= Logic Congestion)
In-Lab Task 2:
Verify all the basic logic gates using the Proteus simulation tool and note down the values in
the Tables 1.10 & 1.11 with the corresponding logic symbol and Boolean function. Then
show the simulated logic circuit diagrams to your Lab Instructor.
INPUTS OUTPUTS
0 1
1 0
1 1
INPUT OUTPUT
𝑨 𝑩
0
Post-Lab Tasks:
1. Make a list of logic gate ICs of TTL family and CMOS family along with the ICs
names. (Note: at least each family should contain 15 ICs)
10
11
12
13
14
15
Critical Analysis/Conclusion
Lab Assessment
Pre-Lab /1
In-Lab /5
Data
Analysis
/4 /10
Data
Post-Lab /4 /4
Presentation
Writing
/4
Style
Objectives
This lab is designed to simulate and implement any logic function using universals
gates (NAND/NOR).
To build the understanding of how to construct any combinational logic function
using NAND or NOR gates only.
Pre-Lab:
Background theory:
Digital circuits are more frequently constructed with universal gates. NAND and NOR gate
are called universal gates. Any Boolean logic function can be implemented using NAND only
or NOR only gates. NAND and NOR gates are easier to fabricate with electronic components
than basic gates. Because of the prominence of universal gates in the design of digital
circuits, rules and procedures have been developed for conversion from Boolean function
given in terms of AND, OR, and NOT into its equivalent NAND and NOR logic diagram.
Read and understand the universal gates. List the truth tables of AND, OR, NOT, NAND,
NOR and XOR gates. Identify the NAND and NOR ICs and their specification for CMOS
and TTL families.
In lab:
This lab has two parts. In the first part, simulation and implementation of any logic
expression by using only NAND gates are done. In the second part, the same procedure is
done by using NOR gates only.
Procedure
Simulate NOT, AND, OR, XOR and XNOR gates in Proteus software, by using only
NAND gates. Verify their truth tables.
Insert the IC on the trainer’s breadboard.
Use any one or more of the NAND gates of the IC for this experiment.
One or more Logic Switches of the trainer (S1 to S9) can be used for input to the
NAND gate.
For output indication, connect the output pin of the circuit to any one of the LEDs of
the trainer (L0 to L15).
In-Lab Tasks-Part-1
INPUT OUTPUT
𝑨 𝑭
INPUTS OUTPUT
𝑨 𝑩 𝑭
0 0
0 1
1 0
1 1
INPUTS OUTPUT
𝑨 𝑩 𝑭
0 0
0 1
1 0
1 1
INPUTS OUTPUT
𝑨 𝑩 𝑭
0 0
0 1
1 0
1 1
INPUTS OUTPUT
𝑨 𝑩 𝑭
0 0
0 1
1 0
1 1
𝐹 (𝐴, 𝐵) = ______________________________________
Inputs Outputs
Calculated Observed
𝑨 𝑩
𝑭𝑪 𝑭𝑶
0 0
0 1
1 0
1 1
Procedure
Simulate NOT, AND and OR gates in Proteus software, by using only NOR gates.
Verify their truth tables.
Insert the IC on the trainer’s breadboard.
Use any one or more of the NOR gates of the IC for this experiment.
One or more Logic Switches of the trainer (S1 to S9) can be used for input to the
NOR gate.
For output indication, connect the output pin of the circuit to any one of the LEDs of
the trainer (L0 to L15).
In-Lab Tasks-Part-2
INPUT OUTPUT
𝑨 𝑭
By setting the switches to 1 and 0, verify that the output (F) of the circuit conforms to
that of an AND gate. Record your observations in Table 2.8 below.
INPUTS OUTPUT
𝑨 𝑩 𝑭
0 0
0 1
1 0
1 1
INPUTS OUTPUT
𝑨 𝑩 𝑭
0 0
0 1
1 0
1 1
Post-Lab:
Task 01: Simulate NAND, XOR and XNOR gates in Proteus software, by using only NOR
gates. Verify their truth tables.
Critical Analysis/Conclusion
Lab Assessment
Pre-Lab /1
In-Lab /5
Data
Analysis
/4 /10
Data
Post-Lab /4 /4
Presentation
Writing
/4
Style
Objective
Part 1
In this lab, Verilog (Hardware Description Language) is introduced with Xilinx ISE. Verilog
is used to model d i g i t a l systems. It is most commonly used in the design and
verification of digital circuits.
Part 2
Xilinx ISE is a verification and simulation tool for Verilog, VHDL, System Verilog, and
mixed- language designs.
Pre-Lab:
Background Theory:
Verilog HDL has evolved as a standard hardware description language. Verilog HDL offers
many useful features:
This is the lowest level of abstraction provided by Verilog. A module can be implemented
in terms of switches, storage nodes, and the interconnections between them. Design at this
level requires knowledge of switch-level implementation details.
The module is implemented in terms of logic gates and interconnections between these
gates. Design at this level is similar to describing a design in terms of a gate-level/structure-
level logic diagram.
At this level, the module is designed by specifying the data flow. The designer is aware of
how data flows between hardware registers and how the data is processed in the design.
This is the highest level of abstraction provided by Verilog HDL. A module can be
implemented in terms of the desired design algorithm without concern for the hardware
implementation details. Designing at this level is very similar to C programming.
3.2 Syntax
3.2.1 Comments
Verilog comments are the same as in C++. Use // for a single line comment or /* … */ for
a multiline comment.
3.2.2 Punctuation
White spaces are ignored in Verilog. A semicolon is used to indicate the end of a command
line and commas are typically used to separate elements in a list. Like C++, Verilog is case
sensitive.
3.2.3 Identifiers
An identifier is usually a variable. You can use any letter, digit, the underscore, or
$. Identifiers may not begin with a digit and may not be the same as a Verilog keyword. As
in C++ variable names should be chosen to assist in documentation.
Signals in Verilog have one of four values. These are 0 (logic 0), 1 (logic 1), ?, X, or x (
don’t care or unknown), and Z or z for high impedance tri-state.
3.2.5 Constants
In this declaration size indicates the number of bits and 'radix gives the number base (d =
decimal, b = binary, o = octal, h = hex). The default radix is decimal.
Examples:
16 //The number 16 base 10
3.3 Structure
3.3.1 Module
3.3.2 Ports
Ports in Verilog can be of type input, output¸ or inout. The module ports are given in
the port name list and are declared in the beginning of the module. Here is a sample
module with input and output ports.
module MyModule(yOut, aIn);
output yOut;
input aIn;
…
endmodule
The port names input and output default to type wire. Either can be a vector and the
output variables can be of re-declared to type reg. The output and input variables in a module
are typical names for the output and input pins on the implementation chip.
3.3.3 Signals
A signal is represented by either a net type or a variable type in Verilog. The net type
represents a circuit node, and these can be of several types. The two net types most often
used are wire and tri. Type nets do not have to be declared in Verilog since Verilog
assumes that all signals are nets unless they are declared otherwise. Variables are either of
type reg or integer. Integers are always 32-bits where the reg type of variables may be of
any length. Typically, we use integers as loop counters and reg variables for all other
variables. The generic form for representing a signal in Verilog is:
The net types are typically used for input signals and for intermediate signals within
combinational logic. Variables are used for sequential circuits or for outputs which are
assigned a value within a sequential always block.
Examples:
^ XOR
~& NAND
~| NOR
~^ XNOR
! Not unary operator also called logical negation
Logical
- Subtract
* Multiply
/ Divide
% Mod operator
> Greater than
Relational
In-Lab:
Select the location for the project (Should be your dld_lab folder)
Enter the name of the project
Then click next
Right click on Design Pane and select a New Source or Add Source (If file already exists).
endmodule
Example: Dataflow
endmodule
Stimulus Example:
// Inputs
reg aIn;
reg bIn;
// Outputs
wire yOut;
initial begin
// Initialize Inputs
aIn = 0; bIn = 0;
#10; // Wait 10 ns
aIn = 0; bIn = 1;
#10; // Wait 10 ns
aIn = 1; bIn = 0;
#10; // Wait 10 ns
aIn = 1; bIn = 1;
Click on ISE simulator it will open two options as shown in Figure 3.9
Then double-click on Behavior check syntax and wait to verify by tick sign
Then double-click on simulate behavior model, which will open a new window
In-Lab Task 2:
Verify all the basic logic gates using the Xilinx ISE simulation tool and verify your
waveform with logic gates truth table.
Task 01: Write a Verilog code (Gate-Level) for NOT, OR, NOR, NAND, XOR and
XNOR.
Task 02: Write a stimulus/test bench for Task 01 and show the simulation results.
Post-Lab:
Task 01: Write a Verilog code for the given Boolean function* (e.g. 𝐹 = 𝑥 + 𝑥̅ 𝑦 + 𝑦𝑧̅ ):
a) Using Gate-Level model (Provide Gate Level diagram and Truth Table)
b) Using Dataflow model
Task 02: Write a stimulus/test bench for Task 01 and show the simulation results.
* (Note: Every student should opt different Boolean function)
Critical Analysis/Conclusion
Lab Assessment
Pre-Lab /1
In-Lab /5
Data
Analysis
/4 /10
Data
Post-Lab /4 /4
Presentation
Writing
/4
Style
Objective
In this lab, we implement Boolean functions by using SoP (sums of product) and PoS
(products of sum).
Equipment Required
KL-31001 Digital Logic Lab Trainer, Breadboard, Logic gate ICs (NAND & NOR).
Pre-Lab:
Boolean Algebra
Boolean algebra is algebra for the manipulation of objects that can take on only two
values, typically true and false.
Boolean Function
A Boolean function typically has one or more input values and yields a result, based on these
input value, in the range {0, 1}. A Boolean operator can be completely described using a
table that lists inputs, all possible values for these inputs, and the resulting values of the
operation.
A Boolean function can be represented in a truth table and it can be transformed from an
algebraic expression into a circuit diagram composed of logic gates. In evaluating Boolean
equations AND operation is performed before OR operation unless OR operation is
enclosed with in brackets.
Basic Theorems
Table 4.1: Basic Boolean algebra theorems
Inverse Law 𝑥. 𝑥̅ = 0 𝑥 + 𝑥̅ = 1
Canonical Forms
Any Boolean function that is expressed as a sum of minterms or as a product of maxterms is
said to be in its canonical form.
In general, the unique algebraic expression for any Boolean function can be obtained from its
truth table by using an OR operator to combine all minterms for which the function is equal
to 1.
Minterm
A minterm denoted as 𝑚 , where 0 ≤ 𝑖 < 2𝑛, is a product (AND) of the 𝑛 variables
(literals) in which each variable is complemented if the value assigned to it is 0, and un
complemented if it is 1.
A shorthand notation:
The inverse of the function can be expressed as a sum (OR) of its 0-minterms.
A shorthand notation:
Example:
𝒙 𝒚 𝒛 𝑴𝒊𝒏𝒕𝒆𝒓𝒎𝒔 𝑭 𝑭
0 0 0 𝑚 =𝑥𝑦𝑧 0 1
𝑚 =𝑥𝑦𝑧
0 0 1 0 1
𝑚 = 𝑥 𝑦𝑧
0 1 0 0 1
𝑚 = 𝑥 𝑦𝑧
0 1 1 1 0
𝑚 = 𝑥𝑦 𝑧
1 0 0 0 1
𝑚 = 𝑥𝑦 𝑧
1 0 1 1 0
𝑚 = 𝑥𝑦𝑧
1 1 0 1 0
𝑚 = 𝑥𝑦𝑧
1 1 1 1 0
𝐹 = 𝑥 𝑦𝑧 + 𝑥𝑦 𝑧 + 𝑥𝑦𝑧 + 𝑥𝑦𝑧 = 𝑚 + 𝑚 + 𝑚 + 𝑚
or
𝐹 (𝑥, 𝑦, 𝑧) = (3, 5, 6, 7)
Similarly,
𝐹 = 𝑥 𝑦 𝑧 + 𝑥 𝑦 𝑧 + 𝑥 𝑦𝑧 + 𝑥𝑦 𝑧 = 𝑚 + 𝑚 + 𝑚 + 𝑚
or
𝐹 (𝑥, 𝑦, 𝑧) = (0, 1, 2, 4)
Maxterm
A maxterm denoted as 𝑀 , where 0 ≤ 𝑖 < 2𝑛, is a sum (OR) of the 𝑛 variables (literals) in
which each variable is complemented if the value assigned to it is 1, and un complemented if
it is 0.
A shorthand notation:
The inverse of the function can be expressed as a product (AND) of its 1-maxterms.
A shorthand notation:
Example:
𝒙 𝒚 𝒛 𝑴𝒂𝒙𝒕𝒆𝒓𝒎𝒔 𝑭 𝑭
0 0 0 𝑀 =𝑥+𝑦+𝑧 0 1
𝑀 =𝑥+𝑦+𝑧
0 0 1 0 1
𝑀 =𝑥+𝑦 +𝑧
0 1 0 0 1
𝑀 =𝑥+𝑦 +𝑧
0 1 1 1 0
𝑀 =𝑥 +𝑦+𝑧
1 0 0 0 1
𝑀 =𝑥 +𝑦+𝑧
1 0 1 1 0
𝑀 = 𝑥 +𝑦 + 𝑧
1 1 0 1 0
𝑀 =𝑥 +𝑦 +𝑧
1 1 1 1 0
𝐹 = (𝑥 + 𝑦 + 𝑧). (𝑥 + 𝑦 + 𝑧 ). (𝑥 + 𝑦 + 𝑧). (𝑥 + 𝑦 + 𝑧) = 𝑀 . 𝑀 . 𝑀 . 𝑀
or
𝐹 (𝑥, 𝑦, 𝑧) = (0, 1, 2, 4)
Similarly,
𝐹 = (𝑥 + 𝑦 + 𝑧 ). (𝑥 + 𝑦 + 𝑧 ). (𝑥 + 𝑦 + 𝑧). (𝑥 + 𝑦 + 𝑧 ) = 𝑀 + 𝑀 + 𝑀 + 𝑀
or
𝐹 (𝑥, 𝑦, 𝑧) = (3, 5, 6, 7)
Standard Forms
The term "Sum of Products" or "SoP" is widely used for the canonical form that is a
disjunction (OR) of minterms.
The term "Product of Sums" or "PoS" for the canonical form that is a conjunction
(AND) of maxterms.
Pre-Lab Tasks:
1. Express the Boolean function 𝐹 = 𝑥 + 𝑦𝑧 as a sum of minterms by using truth table.
2. Express 𝐹 = (𝑥 + 𝑦𝑧) as a product of maxterms.
3. Given the function as defined in the truth table (Table 4.4), express 𝐹 using sum of
minterms and product of maxterms.
𝒙 𝒚 𝒛 𝑴𝒊𝒏𝒕𝒆𝒓𝒎𝒔 𝑴𝒂𝒙𝒕𝒆𝒓𝒎𝒔 𝑭 𝑭
0 0 0 𝑚 =𝑥𝑦𝑧 𝑀 = 𝑥+𝑦+𝑧 0 1
𝑚 =𝑥 𝑦 𝑧 𝑀 =𝑥+𝑦+𝑧
0 0 1 1 0
𝑚 = 𝑥 𝑦𝑧 𝑀 =𝑥+𝑦 +𝑧
0 1 0 0 1
𝑚 = 𝑥 𝑦𝑧 𝑀 = 𝑥+𝑦 +𝑧
0 1 1 1 0
𝑚 = 𝑥𝑦 𝑧 𝑀 =𝑥 +𝑦+𝑧
1 0 0 1 0
𝑚 = 𝑥𝑦 𝑧 𝑀 =𝑥 +𝑦+𝑧
1 0 1 0 1
𝑚 = 𝑥𝑦𝑧 𝑀 = 𝑥 +𝑦 + 𝑧
1 1 0 0 1
𝑚 = 𝑥𝑦𝑧 𝑀 =𝑥 +𝑦 +𝑧
1 1 1 0 1
In-Lab Tasks:
Circuit Implementation
1. First, make the circuit diagram of the given Task.
2. Select appropriate logic gate ICs which are needed.
3. Make connections according to the circuit diagram you made.
4. Connect the input to data switches and output to the logic indicator.
5. Follow the input sequence and record the output.
TASK: Implement the circuit for the given function “F”. Function’s output is given in Table
4.5. Finds its Boolean expression in SoP and PoS forms.
𝑨 𝑩 𝑪 𝑫 𝑭
0 0 0 0 0
0 0 0 1 0
0 0 1 0 0
0 0 1 1 1
0 1 0 0 0
0 1 0 1 0
0 1 1 0 0
0 1 1 1 1
1 0 0 0 1
1 0 0 1 0
1 0 1 0 0
1 0 1 1 0
1 1 0 0 0
1 1 0 1 1
1 1 1 0 1
1 1 1 1 1
Boolean Equations:
Circuit Diagrams:
Observed Outputs
𝑨 𝑩 𝑪 𝑫 𝑭
𝑭𝟏 𝑭𝟐 𝑭𝟑
0 0 0 0 0
0 0 0 1 0
0 0 1 0 0
0 0 1 1 1
0 1 0 0 0
0 1 0 1 0
0 1 1 0 0
0 1 1 1 1
1 0 0 0 1
1 0 0 1 0
1 0 1 0 0
1 0 1 1 0
1 1 0 0 0
1 1 0 1 1
1 1 1 0 1
1 1 1 1 1
Post-Lab Tasks:
1. Write a Verilog code for the sum of minterms circuit, 𝑭𝟏 , (Structural Level).
2. Write a Verilog code for the reduced SoP circuit, 𝑭𝟐 , (Structural Level).
3. Write a Verilog code for the reduced PoS circuit 𝑭𝟑 , (Structural Level).
4. Simulate and verify the outputs by making an appropriate stimulus for the above
modules.
Critical Analysis/Conclusion
Lab Assessment
Pre-Lab /1
In-Lab /5
Data
Analysis
/4 /10
Data
Post-Lab /4 /4
Presentation
Writing
/4
Style
Objective
Part 1
In this lab, students will learn Karnaugh Map minimization and how to use logic
minimization automated tools for an excessive number of variables in a function.
Part 2
Minimized logic function results are verified by using Verilog Structural Level (Gate-Level)
description on Xilinx ISE Design tool.
Pre- Lab:
Background Theory:
We can simplify the equations and find a Boolean function of any truth table using K-Map.
K-Maps:
3-Variables:
𝐵
𝐵𝐶
𝐴 00 01 11 10
0 𝑚 𝑚 𝑚 𝑚
𝐴 1 𝑚 𝑚 𝑚 𝑚
4-Variables:
𝐶
𝐶𝐷
𝐴B 00 01 11 10
00 𝑚 𝑚 𝑚 𝑚
01 𝑚 𝑚 𝑚 𝑚
𝐵
11 𝑚 𝑚 𝑚 𝑚
𝐴
10 𝑚 𝑚 𝑚 𝑚
In-Lab:
Equipment/Tools Required:
KL-31001 Digital Logic Lab, Breadboard, Logic gate ICs, K-map Minimizer automated tool
(Figure 5.1).
Procedure:
1. First, make the circuit diagram for the desired task or subtask given by the Lab
instructor.
2. Using k-map minimizer tool derive the simplified function:
a. Set the number of variables
b. Set the type of solution
c. Set the values of function ‘𝐹’. (Function values can be generated randomly) *
d. Click on solve button then the solution will come on solution screen.
3. Implement the circuit using logic gate ICs (which is/are needed) for the tasks.
4. Make connections according to the circuit diagram you made.
5. Connect the inputs to data switches and output to the logic indicator.
6. Follow the input sequence and record the outputs in Table 5.1.
In-Lab Task 1:
Implement the minimized function given below using logic gate IC(s).
𝐹(𝐴, 𝐵, 𝐶, 𝐷) = ( , , , )
Truth Table:
Table 5.1: Observation Table for In-Lab Task
Observed Outputs
𝑨 𝑩 𝑪 𝑫 𝑭
𝑭𝟏 𝑭𝟐
0 0 0 0
0 0 0 1
0 0 1 0
0 0 1 1
0 1 0 0
0 1 0 1
0 1 1 0
0 1 1 1
1 0 0 0
1 0 0 1
1 0 1 0
1 0 1 1
1 1 0 0
1 1 0 1
1 1 1 0
1 1 1 1
Tools Required
In-lab Task 2
Using structural model, write a Verilog description for the 8-variable function ‘ F ’:
𝐹(𝐴, 𝐵, 𝐶, 𝐷, 𝐸, 𝐹, 𝐺, 𝐻) = ( , , , )
Procedure
Results
Post-Lab Tasks:
1. Using dataflow model, write a Verilog description for the 8-variable function ‘ F ’
(used in “In-Lab Task 2”):
2. Simulate and verify the output by making an appropriate stimulus on Xilinx ISE tool
Results
Critical Analysis/Conclusion
Lab Assessment
Pre-Lab /1
In-Lab /5
Data
Analysis
/4 /10
Data
Post-Lab /4 /4
Presentation
Writing
/4
Style