SlideShare a Scribd company logo
Digital System Design
Learning Module 2.1
Combinational Circuit Design
Analysis Vs Design Vs Investigation
Analysis: Analysis is a Greek word that equates to decomposition: "breaking a whole into its component parts (in
order to better understand it)".
Analysis of a problem:
Analysis of a problem is understanding the problem you're trying to solve. What environment is it in. Who are your
customers going be. What behaviors should your solution exhibit. etc
Analysis of a system:
System analysis can be defined as a deep decomposition of the structure or a module that has been designed before
to seek maximum information.
Design (Synthesis):
• System design means to make any module or a part of the structure from scratch and build it completely without
estimation.
• Design emphasizes a conceptual solution that fulfills the requirements, rather than its implementation
Investigation:
The process of inquiring into or following up; research; study; inquiry, especially patient or thorough inquiry or
examination; as, the investigations of the philosopher and the mathematician; the investigations of the judge, the
moralist. (making a judgement on the basis of information)
Technically leads to
• Verification
• Bug Finding
Analysis of Combinational Circuits
• The analysis of a combinational circuit requires that we determine the
function that the circuit implements. This task starts with a given logic
diagram and culminates with a set of Boolean functions, a truth table,
or, possibly, an explanation of the circuit operation
• The analysis can be performed manually by finding the Boolean
functions or truth table or by using a computer simulation program.
• The first step in the analysis is to make sure that the given circuit is
combinational and not sequential. The diagram of a combinational
circuit has logic gates with no feedback paths or memory elements .
To obtain the output Boolean functions from a logic diagram, we proceed as
follows:
1. Label all gate outputs that are a function of input variables with arbitrary
symbols—but with meaningful names. Determine the Boolean functions for
each gate output.
2. Label the gates that are a function of input variables and previously
labeled gates
with other arbitrary symbols. Find the Boolean functions for these gates.
3. Repeat the process outlined in step 2 until the outputs of the circuit are
obtained.
4. By repeated substitution of previously defined functions, obtain the
output Boolean functions in terms of input variables.
Analysis of Combinational Circuits
Example
Write the Boolean Function
What Does this mean?
Be Investigative!
What this circuit performs ?
Analysis of Combinational Circuits
Design of Combinational Circuits
The design of combinational circuits starts from the specification of the design
objective and culminates in a logic circuit diagram or a set of Boolean functions
from which the logic diagram can be obtained.
The procedure involves the following steps:
1. From the specifications of the circuit, determine the required number of inputs
and outputs and assign a symbol to each.
2. Derive the truth table that defines the required relationship between inputs
3. Obtain the simplified Boolean functions for each output as a function of the input
variables.
4. Draw the logic diagram and verify the correctness of the design (manually or by
simulation).
Design Example
• Develop a BCD to Excess 3 Coder
Design Example: Excess-3 Coder
Design of Full Adder
Design of Full Adder
Four Bit Adder Design
What is the performance concern here?
Carry Propagation
Design of a Multiplier 2 bit by 2bit
Design of a Multiplier 2 bit by 2bit
Design A Magnitude Comparator
For Equality
For A>B Observe the relative bits,
starting from MSB
1- if A3 =1 and B3=0, A>B finish
(A3 B’3)
2- if A2=1 and B3=0, A>B finish
(X3 A2 B’2)
3- if A1 =1 and B1=0, A>B finish
(X3 X2 A1 B’1)
4-if A0 =1 and B0=0, A>B finish
(X3 X2 X1 A0 B’0)
Design A Magnitude Comparator
Three to Eight Line Decoder
Home Work for Implementation
Designs of Adder using decoders
Design a Decoder
Diagram for Decoder is your
task.
2x1 Multiplexer
4x1 Multiplexer
Implementation of Boolean Function using Multiplexer
Develop Truth Table
Try the Implementation of
Using multiplexer
HDL Models for combinational Logic
• Gate Level Models ( Schematic oriented)
• Data Flow Models ( assigning the values to variable as if they are
registers)
• Behavioral Models ( following the procedure of logic circuit)
HDL Example 4.1
HDL Example 4.2
Data Flow Model
• Using binary / logical operators to get results in the binary
• Using “assign” keyword for continuous assignment
HDL Example 4.3
HDL Example 4.4
HDL Example 4.5
HDL Example 4.6
Behavioral Model:
• Usually describe the circuits in form of algorithmic level.
• Well Suited for sequential circuits
• Keyword “always”
HDL Example 4.6
Specific to
behavioral
When ever any of
Them changes
Subsequent instructions execute
module 2-1 Design Analysis & Investigation of combinational logic in HDL.pptx
Test Bench ~ providing Stimulus to HDL
Module
• “initial” – executes once at time t=0, follows the instructions in the
‘initial’ block
• Generating a set of values in test bench
Association of variables in test bench and
module
Test Bench ~ Results Display
• Wave forms (Timing Diagrams)
• Text on screen
Syntax Example
$display ("[$display] time=%0d A=%b B=0x%0h", $time, A, B);
Time = 3 A= 10 B=0x2d
Avoids leading digits
Test Bench ~ Results Display
The $write and the $display tasks work in the same way, and the only
difference is that the $display task adds a new line character at the end
of the output, while the $write task does not.
module tb;
initial begin
$display ("This ends with a new line ");
$write ("This does not,");
$write ("like this. To start new line, use newline char");
$display ("This always starts on a new line!");
end
endmodule
This ends with a new line
This does not, like this. To start a new line, use newline char
Inputs and outputs are declared as reg and wire
‘Initial’ looking for simulation time
Stimulus generation / same time =0
Output of the test bench
Module definition of 2x1 Multiplexer
Types of Verifications
• Functional Verification
What is the output in response to inputs
• Timing Verification
How output appear as the inputs change with reference to time
3
4
5
6
7 8
9
2
1
Test bench
A B C
+
‘Monitor’
Prints the text whenever
Signal changes
Ad

More Related Content

Similar to module 2-1 Design Analysis & Investigation of combinational logic in HDL.pptx (20)

Code optimization in compiler design
Code optimization in compiler designCode optimization in compiler design
Code optimization in compiler design
Kuppusamy P
 
Algorithm.pdf
Algorithm.pdfAlgorithm.pdf
Algorithm.pdf
MIT,Imphal
 
problem solving and design By ZAK
problem solving and design By ZAKproblem solving and design By ZAK
problem solving and design By ZAK
Tabsheer Hasan
 
Problem-solving and design 1.pptx
Problem-solving and design 1.pptxProblem-solving and design 1.pptx
Problem-solving and design 1.pptx
TadiwaMawere
 
01SoftwEng.pptInnovation technology pptInnovation technology ppt
01SoftwEng.pptInnovation technology pptInnovation technology ppt01SoftwEng.pptInnovation technology pptInnovation technology ppt
01SoftwEng.pptInnovation technology pptInnovation technology ppt
sultanahimed3
 
Taking your machine learning workflow to the next level using Scikit-Learn Pi...
Taking your machine learning workflow to the next level using Scikit-Learn Pi...Taking your machine learning workflow to the next level using Scikit-Learn Pi...
Taking your machine learning workflow to the next level using Scikit-Learn Pi...
Philip Goddard
 
ADA_Module 1_MN.pptx- Analysis and design of Algorithms
ADA_Module 1_MN.pptx- Analysis and design of AlgorithmsADA_Module 1_MN.pptx- Analysis and design of Algorithms
ADA_Module 1_MN.pptx- Analysis and design of Algorithms
madhu614742
 
LMmanual.pdf
LMmanual.pdfLMmanual.pdf
LMmanual.pdf
NarutoUzumaki413489
 
ANALYSIS AND DESIGN OF ALGORITHMS -M1-PPT
ANALYSIS AND DESIGN OF ALGORITHMS -M1-PPTANALYSIS AND DESIGN OF ALGORITHMS -M1-PPT
ANALYSIS AND DESIGN OF ALGORITHMS -M1-PPT
AIET
 
Architecture presentation 4
Architecture presentation 4Architecture presentation 4
Architecture presentation 4
Anoushiravan M. Ghamsari
 
03 Synthesis (1).ppt
03 Synthesis  (1).ppt03 Synthesis  (1).ppt
03 Synthesis (1).ppt
ShreyasMahesh
 
C programming for Computing Techniques
C programming for Computing TechniquesC programming for Computing Techniques
C programming for Computing Techniques
Appili Vamsi Krishna
 
cscript_controller.pdf
cscript_controller.pdfcscript_controller.pdf
cscript_controller.pdf
VcTrn1
 
final Unit 1-1.pdf
final Unit 1-1.pdffinal Unit 1-1.pdf
final Unit 1-1.pdf
prakashvs7
 
0-Slot05-06-07-Basic-Logics.pdf
0-Slot05-06-07-Basic-Logics.pdf0-Slot05-06-07-Basic-Logics.pdf
0-Slot05-06-07-Basic-Logics.pdf
ssusere19c741
 
Lec16-CS110 Computational Engineering
Lec16-CS110 Computational EngineeringLec16-CS110 Computational Engineering
Lec16-CS110 Computational Engineering
Sri Harsha Pamu
 
EELE 5331 Digital ASIC DesignLab ManualDr. Yushi Zhou.docx
EELE 5331 Digital ASIC DesignLab ManualDr. Yushi Zhou.docxEELE 5331 Digital ASIC DesignLab ManualDr. Yushi Zhou.docx
EELE 5331 Digital ASIC DesignLab ManualDr. Yushi Zhou.docx
toltonkendal
 
Digital Electronics-Unit II.pdf
Digital Electronics-Unit II.pdfDigital Electronics-Unit II.pdf
Digital Electronics-Unit II.pdf
Kannan Kanagaraj
 
Algorithms for c nit jamshedpur first year
Algorithms for c nit jamshedpur first yearAlgorithms for c nit jamshedpur first year
Algorithms for c nit jamshedpur first year
PallavSuman
 
Simulink Presentation.ppt
Simulink Presentation.pptSimulink Presentation.ppt
Simulink Presentation.ppt
hodeeeeee1
 
Code optimization in compiler design
Code optimization in compiler designCode optimization in compiler design
Code optimization in compiler design
Kuppusamy P
 
problem solving and design By ZAK
problem solving and design By ZAKproblem solving and design By ZAK
problem solving and design By ZAK
Tabsheer Hasan
 
Problem-solving and design 1.pptx
Problem-solving and design 1.pptxProblem-solving and design 1.pptx
Problem-solving and design 1.pptx
TadiwaMawere
 
01SoftwEng.pptInnovation technology pptInnovation technology ppt
01SoftwEng.pptInnovation technology pptInnovation technology ppt01SoftwEng.pptInnovation technology pptInnovation technology ppt
01SoftwEng.pptInnovation technology pptInnovation technology ppt
sultanahimed3
 
Taking your machine learning workflow to the next level using Scikit-Learn Pi...
Taking your machine learning workflow to the next level using Scikit-Learn Pi...Taking your machine learning workflow to the next level using Scikit-Learn Pi...
Taking your machine learning workflow to the next level using Scikit-Learn Pi...
Philip Goddard
 
ADA_Module 1_MN.pptx- Analysis and design of Algorithms
ADA_Module 1_MN.pptx- Analysis and design of AlgorithmsADA_Module 1_MN.pptx- Analysis and design of Algorithms
ADA_Module 1_MN.pptx- Analysis and design of Algorithms
madhu614742
 
ANALYSIS AND DESIGN OF ALGORITHMS -M1-PPT
ANALYSIS AND DESIGN OF ALGORITHMS -M1-PPTANALYSIS AND DESIGN OF ALGORITHMS -M1-PPT
ANALYSIS AND DESIGN OF ALGORITHMS -M1-PPT
AIET
 
03 Synthesis (1).ppt
03 Synthesis  (1).ppt03 Synthesis  (1).ppt
03 Synthesis (1).ppt
ShreyasMahesh
 
C programming for Computing Techniques
C programming for Computing TechniquesC programming for Computing Techniques
C programming for Computing Techniques
Appili Vamsi Krishna
 
cscript_controller.pdf
cscript_controller.pdfcscript_controller.pdf
cscript_controller.pdf
VcTrn1
 
final Unit 1-1.pdf
final Unit 1-1.pdffinal Unit 1-1.pdf
final Unit 1-1.pdf
prakashvs7
 
0-Slot05-06-07-Basic-Logics.pdf
0-Slot05-06-07-Basic-Logics.pdf0-Slot05-06-07-Basic-Logics.pdf
0-Slot05-06-07-Basic-Logics.pdf
ssusere19c741
 
Lec16-CS110 Computational Engineering
Lec16-CS110 Computational EngineeringLec16-CS110 Computational Engineering
Lec16-CS110 Computational Engineering
Sri Harsha Pamu
 
EELE 5331 Digital ASIC DesignLab ManualDr. Yushi Zhou.docx
EELE 5331 Digital ASIC DesignLab ManualDr. Yushi Zhou.docxEELE 5331 Digital ASIC DesignLab ManualDr. Yushi Zhou.docx
EELE 5331 Digital ASIC DesignLab ManualDr. Yushi Zhou.docx
toltonkendal
 
Digital Electronics-Unit II.pdf
Digital Electronics-Unit II.pdfDigital Electronics-Unit II.pdf
Digital Electronics-Unit II.pdf
Kannan Kanagaraj
 
Algorithms for c nit jamshedpur first year
Algorithms for c nit jamshedpur first yearAlgorithms for c nit jamshedpur first year
Algorithms for c nit jamshedpur first year
PallavSuman
 
Simulink Presentation.ppt
Simulink Presentation.pptSimulink Presentation.ppt
Simulink Presentation.ppt
hodeeeeee1
 

Recently uploaded (20)

Artificial intelligence and machine learning.pptx
Artificial intelligence and machine learning.pptxArtificial intelligence and machine learning.pptx
Artificial intelligence and machine learning.pptx
rakshanatarajan005
 
Construction Materials (Paints) in Civil Engineering
Construction Materials (Paints) in Civil EngineeringConstruction Materials (Paints) in Civil Engineering
Construction Materials (Paints) in Civil Engineering
Lavish Kashyap
 
hypermedia_system_revisit_roy_fielding .
hypermedia_system_revisit_roy_fielding .hypermedia_system_revisit_roy_fielding .
hypermedia_system_revisit_roy_fielding .
NABLAS株式会社
 
Machine Learning basics POWERPOINT PRESENETATION
Machine Learning basics POWERPOINT PRESENETATIONMachine Learning basics POWERPOINT PRESENETATION
Machine Learning basics POWERPOINT PRESENETATION
DarrinBright1
 
Design Optimization of Reinforced Concrete Waffle Slab Using Genetic Algorithm
Design Optimization of Reinforced Concrete Waffle Slab Using Genetic AlgorithmDesign Optimization of Reinforced Concrete Waffle Slab Using Genetic Algorithm
Design Optimization of Reinforced Concrete Waffle Slab Using Genetic Algorithm
Journal of Soft Computing in Civil Engineering
 
ML_Unit_VI_DEEP LEARNING_Introduction to ANN.pdf
ML_Unit_VI_DEEP LEARNING_Introduction to ANN.pdfML_Unit_VI_DEEP LEARNING_Introduction to ANN.pdf
ML_Unit_VI_DEEP LEARNING_Introduction to ANN.pdf
rameshwarchintamani
 
01.คุณลักษณะเฉพาะของอุปกรณ์_pagenumber.pdf
01.คุณลักษณะเฉพาะของอุปกรณ์_pagenumber.pdf01.คุณลักษณะเฉพาะของอุปกรณ์_pagenumber.pdf
01.คุณลักษณะเฉพาะของอุปกรณ์_pagenumber.pdf
PawachMetharattanara
 
AI Chatbots & Software Development Teams
AI Chatbots & Software Development TeamsAI Chatbots & Software Development Teams
AI Chatbots & Software Development Teams
Joe Krall
 
Transport modelling at SBB, presentation at EPFL in 2025
Transport modelling at SBB, presentation at EPFL in 2025Transport modelling at SBB, presentation at EPFL in 2025
Transport modelling at SBB, presentation at EPFL in 2025
Antonin Danalet
 
Generative AI & Large Language Models Agents
Generative AI & Large Language Models AgentsGenerative AI & Large Language Models Agents
Generative AI & Large Language Models Agents
aasgharbee22seecs
 
Physical and Physic-Chemical Based Optimization Methods: A Review
Physical and Physic-Chemical Based Optimization Methods: A ReviewPhysical and Physic-Chemical Based Optimization Methods: A Review
Physical and Physic-Chemical Based Optimization Methods: A Review
Journal of Soft Computing in Civil Engineering
 
Agents chapter of Artificial intelligence
Agents chapter of Artificial intelligenceAgents chapter of Artificial intelligence
Agents chapter of Artificial intelligence
DebdeepMukherjee9
 
vtc2018fall_otfs_tutorial_presentation_1.pdf
vtc2018fall_otfs_tutorial_presentation_1.pdfvtc2018fall_otfs_tutorial_presentation_1.pdf
vtc2018fall_otfs_tutorial_presentation_1.pdf
RaghavaGD1
 
Smart City is the Future EN - 2024 Thailand Modify V1.0.pdf
Smart City is the Future EN - 2024 Thailand Modify V1.0.pdfSmart City is the Future EN - 2024 Thailand Modify V1.0.pdf
Smart City is the Future EN - 2024 Thailand Modify V1.0.pdf
PawachMetharattanara
 
Optimizing Reinforced Concrete Cantilever Retaining Walls Using Gases Brownia...
Optimizing Reinforced Concrete Cantilever Retaining Walls Using Gases Brownia...Optimizing Reinforced Concrete Cantilever Retaining Walls Using Gases Brownia...
Optimizing Reinforced Concrete Cantilever Retaining Walls Using Gases Brownia...
Journal of Soft Computing in Civil Engineering
 
Slide share PPT of SOx control technologies.pptx
Slide share PPT of SOx control technologies.pptxSlide share PPT of SOx control technologies.pptx
Slide share PPT of SOx control technologies.pptx
vvsasane
 
How to Build a Desktop Weather Station Using ESP32 and E-ink Display
How to Build a Desktop Weather Station Using ESP32 and E-ink DisplayHow to Build a Desktop Weather Station Using ESP32 and E-ink Display
How to Build a Desktop Weather Station Using ESP32 and E-ink Display
CircuitDigest
 
SICPA: Fabien Keller - background introduction
SICPA: Fabien Keller - background introductionSICPA: Fabien Keller - background introduction
SICPA: Fabien Keller - background introduction
fabienklr
 
twin tower attack 2001 new york city
twin  tower  attack  2001 new  york citytwin  tower  attack  2001 new  york city
twin tower attack 2001 new york city
harishreemavs
 
Modeling the Influence of Environmental Factors on Concrete Evaporation Rate
Modeling the Influence of Environmental Factors on Concrete Evaporation RateModeling the Influence of Environmental Factors on Concrete Evaporation Rate
Modeling the Influence of Environmental Factors on Concrete Evaporation Rate
Journal of Soft Computing in Civil Engineering
 
Artificial intelligence and machine learning.pptx
Artificial intelligence and machine learning.pptxArtificial intelligence and machine learning.pptx
Artificial intelligence and machine learning.pptx
rakshanatarajan005
 
Construction Materials (Paints) in Civil Engineering
Construction Materials (Paints) in Civil EngineeringConstruction Materials (Paints) in Civil Engineering
Construction Materials (Paints) in Civil Engineering
Lavish Kashyap
 
hypermedia_system_revisit_roy_fielding .
hypermedia_system_revisit_roy_fielding .hypermedia_system_revisit_roy_fielding .
hypermedia_system_revisit_roy_fielding .
NABLAS株式会社
 
Machine Learning basics POWERPOINT PRESENETATION
Machine Learning basics POWERPOINT PRESENETATIONMachine Learning basics POWERPOINT PRESENETATION
Machine Learning basics POWERPOINT PRESENETATION
DarrinBright1
 
ML_Unit_VI_DEEP LEARNING_Introduction to ANN.pdf
ML_Unit_VI_DEEP LEARNING_Introduction to ANN.pdfML_Unit_VI_DEEP LEARNING_Introduction to ANN.pdf
ML_Unit_VI_DEEP LEARNING_Introduction to ANN.pdf
rameshwarchintamani
 
01.คุณลักษณะเฉพาะของอุปกรณ์_pagenumber.pdf
01.คุณลักษณะเฉพาะของอุปกรณ์_pagenumber.pdf01.คุณลักษณะเฉพาะของอุปกรณ์_pagenumber.pdf
01.คุณลักษณะเฉพาะของอุปกรณ์_pagenumber.pdf
PawachMetharattanara
 
AI Chatbots & Software Development Teams
AI Chatbots & Software Development TeamsAI Chatbots & Software Development Teams
AI Chatbots & Software Development Teams
Joe Krall
 
Transport modelling at SBB, presentation at EPFL in 2025
Transport modelling at SBB, presentation at EPFL in 2025Transport modelling at SBB, presentation at EPFL in 2025
Transport modelling at SBB, presentation at EPFL in 2025
Antonin Danalet
 
Generative AI & Large Language Models Agents
Generative AI & Large Language Models AgentsGenerative AI & Large Language Models Agents
Generative AI & Large Language Models Agents
aasgharbee22seecs
 
Agents chapter of Artificial intelligence
Agents chapter of Artificial intelligenceAgents chapter of Artificial intelligence
Agents chapter of Artificial intelligence
DebdeepMukherjee9
 
vtc2018fall_otfs_tutorial_presentation_1.pdf
vtc2018fall_otfs_tutorial_presentation_1.pdfvtc2018fall_otfs_tutorial_presentation_1.pdf
vtc2018fall_otfs_tutorial_presentation_1.pdf
RaghavaGD1
 
Smart City is the Future EN - 2024 Thailand Modify V1.0.pdf
Smart City is the Future EN - 2024 Thailand Modify V1.0.pdfSmart City is the Future EN - 2024 Thailand Modify V1.0.pdf
Smart City is the Future EN - 2024 Thailand Modify V1.0.pdf
PawachMetharattanara
 
Slide share PPT of SOx control technologies.pptx
Slide share PPT of SOx control technologies.pptxSlide share PPT of SOx control technologies.pptx
Slide share PPT of SOx control technologies.pptx
vvsasane
 
How to Build a Desktop Weather Station Using ESP32 and E-ink Display
How to Build a Desktop Weather Station Using ESP32 and E-ink DisplayHow to Build a Desktop Weather Station Using ESP32 and E-ink Display
How to Build a Desktop Weather Station Using ESP32 and E-ink Display
CircuitDigest
 
SICPA: Fabien Keller - background introduction
SICPA: Fabien Keller - background introductionSICPA: Fabien Keller - background introduction
SICPA: Fabien Keller - background introduction
fabienklr
 
twin tower attack 2001 new york city
twin  tower  attack  2001 new  york citytwin  tower  attack  2001 new  york city
twin tower attack 2001 new york city
harishreemavs
 
Ad

module 2-1 Design Analysis & Investigation of combinational logic in HDL.pptx

  • 1. Digital System Design Learning Module 2.1 Combinational Circuit Design
  • 2. Analysis Vs Design Vs Investigation Analysis: Analysis is a Greek word that equates to decomposition: "breaking a whole into its component parts (in order to better understand it)". Analysis of a problem: Analysis of a problem is understanding the problem you're trying to solve. What environment is it in. Who are your customers going be. What behaviors should your solution exhibit. etc Analysis of a system: System analysis can be defined as a deep decomposition of the structure or a module that has been designed before to seek maximum information. Design (Synthesis): • System design means to make any module or a part of the structure from scratch and build it completely without estimation. • Design emphasizes a conceptual solution that fulfills the requirements, rather than its implementation Investigation: The process of inquiring into or following up; research; study; inquiry, especially patient or thorough inquiry or examination; as, the investigations of the philosopher and the mathematician; the investigations of the judge, the moralist. (making a judgement on the basis of information) Technically leads to • Verification • Bug Finding
  • 3. Analysis of Combinational Circuits • The analysis of a combinational circuit requires that we determine the function that the circuit implements. This task starts with a given logic diagram and culminates with a set of Boolean functions, a truth table, or, possibly, an explanation of the circuit operation • The analysis can be performed manually by finding the Boolean functions or truth table or by using a computer simulation program. • The first step in the analysis is to make sure that the given circuit is combinational and not sequential. The diagram of a combinational circuit has logic gates with no feedback paths or memory elements .
  • 4. To obtain the output Boolean functions from a logic diagram, we proceed as follows: 1. Label all gate outputs that are a function of input variables with arbitrary symbols—but with meaningful names. Determine the Boolean functions for each gate output. 2. Label the gates that are a function of input variables and previously labeled gates with other arbitrary symbols. Find the Boolean functions for these gates. 3. Repeat the process outlined in step 2 until the outputs of the circuit are obtained. 4. By repeated substitution of previously defined functions, obtain the output Boolean functions in terms of input variables. Analysis of Combinational Circuits
  • 5. Example Write the Boolean Function What Does this mean?
  • 6. Be Investigative! What this circuit performs ? Analysis of Combinational Circuits
  • 7. Design of Combinational Circuits The design of combinational circuits starts from the specification of the design objective and culminates in a logic circuit diagram or a set of Boolean functions from which the logic diagram can be obtained. The procedure involves the following steps: 1. From the specifications of the circuit, determine the required number of inputs and outputs and assign a symbol to each. 2. Derive the truth table that defines the required relationship between inputs 3. Obtain the simplified Boolean functions for each output as a function of the input variables. 4. Draw the logic diagram and verify the correctness of the design (manually or by simulation).
  • 8. Design Example • Develop a BCD to Excess 3 Coder
  • 10. Design of Full Adder Design of Full Adder
  • 11. Four Bit Adder Design What is the performance concern here?
  • 13. Design of a Multiplier 2 bit by 2bit
  • 14. Design of a Multiplier 2 bit by 2bit
  • 15. Design A Magnitude Comparator For Equality For A>B Observe the relative bits, starting from MSB 1- if A3 =1 and B3=0, A>B finish (A3 B’3) 2- if A2=1 and B3=0, A>B finish (X3 A2 B’2) 3- if A1 =1 and B1=0, A>B finish (X3 X2 A1 B’1) 4-if A0 =1 and B0=0, A>B finish (X3 X2 X1 A0 B’0)
  • 16. Design A Magnitude Comparator
  • 17. Three to Eight Line Decoder Home Work for Implementation
  • 18. Designs of Adder using decoders
  • 19. Design a Decoder Diagram for Decoder is your task.
  • 21. Implementation of Boolean Function using Multiplexer Develop Truth Table Try the Implementation of Using multiplexer
  • 22. HDL Models for combinational Logic • Gate Level Models ( Schematic oriented) • Data Flow Models ( assigning the values to variable as if they are registers) • Behavioral Models ( following the procedure of logic circuit)
  • 25. Data Flow Model • Using binary / logical operators to get results in the binary • Using “assign” keyword for continuous assignment
  • 30. Behavioral Model: • Usually describe the circuits in form of algorithmic level. • Well Suited for sequential circuits • Keyword “always” HDL Example 4.6 Specific to behavioral When ever any of Them changes Subsequent instructions execute
  • 32. Test Bench ~ providing Stimulus to HDL Module • “initial” – executes once at time t=0, follows the instructions in the ‘initial’ block • Generating a set of values in test bench
  • 33. Association of variables in test bench and module
  • 34. Test Bench ~ Results Display • Wave forms (Timing Diagrams) • Text on screen Syntax Example $display ("[$display] time=%0d A=%b B=0x%0h", $time, A, B); Time = 3 A= 10 B=0x2d Avoids leading digits
  • 35. Test Bench ~ Results Display The $write and the $display tasks work in the same way, and the only difference is that the $display task adds a new line character at the end of the output, while the $write task does not. module tb; initial begin $display ("This ends with a new line "); $write ("This does not,"); $write ("like this. To start new line, use newline char"); $display ("This always starts on a new line!"); end endmodule This ends with a new line This does not, like this. To start a new line, use newline char
  • 36. Inputs and outputs are declared as reg and wire ‘Initial’ looking for simulation time Stimulus generation / same time =0 Output of the test bench Module definition of 2x1 Multiplexer
  • 37. Types of Verifications • Functional Verification What is the output in response to inputs • Timing Verification How output appear as the inputs change with reference to time 3 4 5 6 7 8 9 2 1
  • 38. Test bench A B C + ‘Monitor’ Prints the text whenever Signal changes
  翻译: