SlideShare a Scribd company logo
1 of 14
Download to read offline
Computer Architecture and Organization
Chapter-01
Systems:
A system is a collection of elements or components that are organized for a common
purpose. A computer system consists of hardware components that have been carefully
chosen so that they work well together and software components or programs that run
in the computer.
The main software component is itself an operating system that manages and provides
services to other programs that can be run in the computer.
A filing system is a group of files organized with a plan (for example, alphabetical by
customer).
All of nature and the universe can be said to be a system.
Systems design:
Systems design is the process of defining the architecture, modules, interfaces, and data
for a system to satisfy specified requirements. Systems design could be seen as the
application of systems theory to product development.
System Representation:
A useful way of modeling a system is a graph. A (directed) graph consists of a set of
objects V = {v1,v2,v3,v4,….vn} called nodes or vertices and a set of edges E whose members
are (ordered) pairs of nodes taken from the set {(v2 ,v2), (v1,v3),...,(vn-1, vn)}of all such pairs.
The edge e = (vi,vj) joins or connects node vi, to node vj.
The systems of interest comprise two classes of objects: a set of information processing
components C and a set of lines S that carry information signals between components.
Thus we can represent any system like a graph and this is called block diagram.
Structure in Computer Architecture:
We define the structure of a system as the abstract graph consisting of its block diagram
with no functional information. A structural description merely names components and
defines their interconnection.
Behavior in Computer Architecture:
A behavioral description, enables one to determine for any given input signal a to the
system, the corresponding output f(a). We define the function f to be the behavior of the
system. The behavior f may be represented in many different ways.
Figure 2.3 shows one kind of behavioral description for the logic circuit of Figure 2.2.
Comparison between Behavior and Structure:
Hardware description languages:
We can fully describe a system's structure and behavior by means of a block diagram—
the term schematic diagram is also used—in which we identify the functions of the
components. We can convey the same detailed information by means of a hardware
description language (HDL), a format that resembles (and is usually derived from) a
high-level programming language such as Ada or C.
Beginning in the 1950s, academic and industrial researchers developed many ad hoc
HDLs. These eventually evolved into a few widely used languages, notably VHDL and
Verilog.
Hardware description languages such as VHDL have several advantages. They can
provide precise, technology-independent descriptions of digital circuits at various levels
of abstraction, primarily the gate and register levels. Consequently, they are widely used
for documentation purposes. Like programming languages, HDLs can be processed by
computers and so are suitable for use with computer-aided design (CAD) programs
which, as discussed later, play an important role in the design process.
VHDL:
VHDL is a hardware description language used in electronic design automation to
describe digital and mixed-signal systems such as field-programmable gate arrays and
integrated circuits. VHDL can also be used as a general-purpose parallel programming
language.
A VHDL description has two main parts:
1. An entity part
2. An architecture part.
The entity part:
The entity part is a formal statement of the system's structure at the highest level, that
is, as a single component. It describes the system's interface, which is the "face"
presented to external devices but says nothing about the system's behavior or its
internal structure.
The architecture part
The architecture part of a VHDL description specifies behavior and/or internal structure.
Example:
# VHDL DESCRIPTION OF A HALF ADDER.
 In this example the entity statement gives the half adder's formal name half-
adder and the names assigned to its input-output (IO) signals; IO signals are
referred to in VHDL by their connection terminals or ports. Inputs and outputs are
distinguished by the keywords in and out, Here two inputs x and y, and two out
sum and carry.
 The functions of the half adder's two outputs sum and carry are specified by two
Boolean functions xor and and, which are built into VHDL; that is, they are
predefined functions.
In VHDL xor stands for the EXCLUSIVE-OR function. The AND function denoted by
and. Note that VHDL expresses AND(x,y) in the equivalent "infix" format x and y. An
alternative description of the behavior of half-adder appears above in the form of a
truth table.The symbol <= is called signal assignment and indicates that the value of
the expression on the right of <= is assigned to the signal on the left. begin-end to
bracket related items represent minor syntactical details borrowed from programming
languages.
Design Process:
When we get a system’s structure, now we need to design the system’s behavior and
this process is known as analysis. Then we need to apply the analysis results to develop
the system’s original application level system. This is known as design process.
The design process in computer architecture is given below:
What is CAD?
Computer-aided design is the use of computers to aid in the creation, modification,
analysis, or optimization of a design. CAD software is used to increase the productivity
of the designer, improve the quality of design, improve communications through
documentation, and to create a database for manufacturing.
In CAD, three important ways to the overall design process:
 CAD editors or translators convert design data into forms such as HDL
descriptions or schematic diagrams, which humans, computers, or both can
efficiently process.
 Simulators create computer models of a new design, which can mimic the
design's behavior and help designers determine how well the design meets
various performance and cost goals.
 Synthesizers automate the design process itself by deriving structures that
implement all or part of some design step
What is system hierarchy?
When we want to design a particular system, we need to define the major levels of the
system required. Then we need to specify the levels structure and behavior so that we
can realize the system visualization. This is known as system hierarchy.
Here computer architecture has three major levels. We need to define the three steps:
1. Specify the processor level Structure
2. Specify the register level Structure
3. Specify the gate level structure
Now we can understand what we need to design the system from the hierarchy.
What are the major levels in digital computer Design?
There are three major levels in digital computer design. They are given below:
• The processor level, also called the architecture, behavior, or system level.
• The register level, also called the register-transfer level (RTL).
• The gate level, also called the logic level.
The components required to design a computer shortly:
The Gate Level
Gate-level (logic) design is concerned with processing binary variables whose possible
values are restricted to the bits (binary digits) 0 and 1. The design components are:
 logic gates, which are simple, memoryless processing elements, and
 flip-flops, which are bit-storage devices.
Combinational circuits:
 Combinational circuits are defined as the time independent circuits which do
not depends upon previous inputs to generate any output are termed as
combinational circuits.
 Examples – Adder, Subtractor, Converter, Encoder, Decoder, Multiplexer,
Demultiplexer
 Block Diagram –

Example of combinational circuit (Full Adder):
 Here the output depends only on the present input.
Sequential circuits:
 Sequential circuits are those which are dependent on clock cycles and depends
on present as well as past inputs to generate any output.
 Examples – Flip-flops, Counters, Register, Clocks
 Block Diagram –
Example of Sequential circuit (S-R Flip Flop):
Here the output depends on the present input as well as past output.
What are the differences between combinational and
sequential logic circuits?
Combinational Logic Circuits Sequential Logic Circuits
Output depends only on current inputs
Output depends on current, past as well
as clock inputs
Hence they are faster They are slower
They are time-independent and don’t
need clock inputs
Time-dependent and thus require clocks
Since there is no clock, they don’t require
triggering
Since a clock is present, triggering is
required
Made using logic gates Made using flip-flops
Also, easier to design since there are no
crazy feedbacks or clocks
More complicated to design
They can’t store anything. They have no
memory.
Main uses are to implement arithmetic
and logical operations.
The main use is for storing data and
other memory applications
Easier to use and handle Harder to use and handle
Example: Full Adder, Multiplier etc. Example: Counters, Shift-registers
THE REGISTER LEVEL:
At the register or register-transfer level, related information bits are grouped into
ordered sets called words or vectors. The primitive components are small combinational
or sequential circuits intended to process or store words.
Types of components used in register level:
1. Combinational, and
2. Sequential
Required Components and their functions for Resister level design:
Word Gate:
Here we need to word using word instead of single bit. Let X and Y are two number
such that X = (x1 , x2, x3, …. , xn) and Y = (y1, y2, y3, …. , yn). Here the word X and Y has n-
bits. Now if we want to perform any operation using them, we need to perform
corresponding bits.
If we want to perform NAND operation such that:
Z = 𝑿𝒀
̅̅̅̅
(z1, z2, z3, ….. , zn ) = (x1𝑦1
̅̅̅̅̅̅̅ , x2𝑦2
̅̅̅̅̅̅̅, x3𝑦3
̅̅̅̅̅̅̅ , … … . . , xn𝑦𝑛
̅̅̅̅̅̅̅ )
Multiplexer
Multiplexer is a combinational circuit that has maximum of 2n
data inputs, ‘n’ selection
lines and single output line. One of these data inputs will be connected to the output
based on the values of selection lines.
Since there are ‘n’ selection lines, there will be 2n
possible combinations of zeros and
ones. So, each combination will select only one data input. Multiplexer is also called
as Mux.
4x1 Multiplexer
4x1 Multiplexer has four data inputs I3, I2, I1 & I0, two selection lines s1 & s0 and one
output Y. The block diagram of 4x1 Multiplexer is shown in the following figure.
One of these 4 inputs will be connected
to the output based on the combination
of inputs present at these two selection
lines. Truth table of 4x1 Multiplexer is
shown below.
Multiplexers as function generators
Encoders:
An encoder is a combinational circuit that converts binary information in the form of a
2N
input lines into N output lines, which represent N bit code for the input. For simple
encoders, it is assumed that only one input line is active at a time.
As an example, let’s consider Octal to
Binary encoder. As shown in the
following figure, an octal-to-binary
encoder takes 8 input lines and
generates 3 output lines.
Decoders:
A decoder does the opposite job of an encoder. It is a combinational circuit that
converts n lines of input into 2n lines of output.
Let’s take an example of 3-to-8 line decoder.
Truth Table –
X Y Z D0 D1 D2 D3 D4 D5 D6 D7
0 0 0 1 0 0 0 0 0 0 0
0 0 1 0 1 0 0 0 0 0 0
0 1 0 0 0 1 0 0 0 0 0
0 1 1 0 0 0 1 0 0 0 0
1 0 0 0 0 0 0 1 0 0 0
1 0 1 0 0 0 0 0 1 0 0
1 1 0 0 0 0 0 0 0 1 0
1 1 1 0 0 0 0 0 0 0 1
Register:
A Register is a group of flip-flops with each flip-flop capable of storing one bit of
information. An n-bit register has a group of n flip-flops and is capable of storing binary
information of n-bits.
A register consists of a group of flip-flops and gates. The flip-flops hold the binary
information and gates control when and how new information is transferred into a
register. Various types of registers are available commercially. The simplest register is
one that consists of only flip-flops with no external gates.
Shift Register:
We know that one flip-flop can store one-bit of information. In order to store multiple
bits of information, we require multiple flip-flops. The group of flip-flops, which are used
to hold (or store) the binary data is known as register.
If the register is capable of shifting bits either towards right hand side or towards left
hand side is known as shift register. An ‘N’ bit shift register contains ‘N’ flip-flops.
Following are the four types of shift registers based on applying inputs and accessing
of outputs.
Counters:
Counter is a sequential circuit. A digital circuit which is used for a counting pulses is
known counter. Counter is the widest application of flip-flops. It is a group of flip-flops
with a clock signal applied. Counters are of two types.
 Asynchronous or ripple counters.
 Synchronous counters.
Brief Description of Register level Design:
A register-level system consists of a set of registers linked by combinational data transfer
and data-processing circuits. Here each operation is typically implemented by one or
more elementary register-transfer steps of the form
cond: Z: = f( X1, X2, ..., Xk );
Where f is a function to be performed. And X1, X2, ..., Xk and Z denote data words or
the registers that store them. The prefix cond denotes a control condition (which may
be 0 or 1)
A simple register-level system like that of Figure 2.38a performs a single action, in this
case, the add operation Z := A + B.
Figure 2.38b shows a more
complicated system that can
perform several different
operations. Such a multifunction
system is generally partitioned
into a data-processing part,
called a data path, and a
controlling part, the control unit,
which is responsible for
selecting and controlling the
actions of the data path.
The control unit CU selects the operation (add, shift, and so on) for the ALU to perform
in each clock cycle. It also determines the input operands to apply to the ALU and the
destination of its results.
Now given a set of operations to be executed, design a circuit using a specified set
of register-level components that implement the desired functions while satisfying
certain cost and performance criteria. We need to follow the steps to design the
system:
1. Define the desired behavior by a set of sequences of register-transfer operations,
such that each operation can be implemented directly using the available design
components. This constitutes an algorithm AL to be executed.
2. Analyze AL to determine the types of components and the number of each type
required for the data path DP.
3. Construct a block diagram for DP using the components identified in step-2. Make
the connections between the components so that all data paths implied by
AL are present and the given performance-cost constraints are met.
4. Analyze AL and DP to identify the control signals needed. Introduce into DP the
logic or control points necessary to apply these signals.
5. Design a control unit CU for DP that meets all the requirements of AL.
6. Verify, typically by computer simulation, that the final design operates correctly
and meets all performance-cost goals.

More Related Content

What's hot

Documentation Standards of an IC
Documentation Standards of an ICDocumentation Standards of an IC
Documentation Standards of an ICAbhilash Nair
 
CIS110 Computer Programming Design Chapter (3)
CIS110 Computer Programming Design Chapter  (3)CIS110 Computer Programming Design Chapter  (3)
CIS110 Computer Programming Design Chapter (3)Dr. Ahmed Al Zaidy
 
Instruction Set (Part 2)
Instruction Set (Part 2)Instruction Set (Part 2)
Instruction Set (Part 2)Ajeng Savitri
 
CIS110 Computer Programming Design Chapter (7)
CIS110 Computer Programming Design Chapter  (7)CIS110 Computer Programming Design Chapter  (7)
CIS110 Computer Programming Design Chapter (7)Dr. Ahmed Al Zaidy
 
Computer organization and architecture
Computer organization and architectureComputer organization and architecture
Computer organization and architectureSubesh Kumar Yadav
 
Component Diagram Example Templates
Component Diagram Example TemplatesComponent Diagram Example Templates
Component Diagram Example TemplatesCreately
 
Design and implementation of complex floating point processor using fpga
Design and implementation of complex floating point processor using fpgaDesign and implementation of complex floating point processor using fpga
Design and implementation of complex floating point processor using fpgaVLSICS Design
 
Data flow oriented modeling
Data flow oriented modelingData flow oriented modeling
Data flow oriented modelingKavithaGowri
 
23. Advanced Datatypes and New Application in DBMS
23. Advanced Datatypes and New Application in DBMS23. Advanced Datatypes and New Application in DBMS
23. Advanced Datatypes and New Application in DBMSkoolkampus
 
Computer Architecture and organization ppt.
Computer Architecture and organization ppt.Computer Architecture and organization ppt.
Computer Architecture and organization ppt.mali yogesh kumar
 

What's hot (20)

Documentation Standards of an IC
Documentation Standards of an ICDocumentation Standards of an IC
Documentation Standards of an IC
 
CIS110 Computer Programming Design Chapter (3)
CIS110 Computer Programming Design Chapter  (3)CIS110 Computer Programming Design Chapter  (3)
CIS110 Computer Programming Design Chapter (3)
 
Instruction Set (Part 2)
Instruction Set (Part 2)Instruction Set (Part 2)
Instruction Set (Part 2)
 
CIS110 Computer Programming Design Chapter (7)
CIS110 Computer Programming Design Chapter  (7)CIS110 Computer Programming Design Chapter  (7)
CIS110 Computer Programming Design Chapter (7)
 
System software 5th unit
System software 5th unitSystem software 5th unit
System software 5th unit
 
Systolic, Transposed & Semi-Parallel Architectures and Programming
Systolic, Transposed & Semi-Parallel Architectures and ProgrammingSystolic, Transposed & Semi-Parallel Architectures and Programming
Systolic, Transposed & Semi-Parallel Architectures and Programming
 
INSTRUCTION SET
INSTRUCTION SETINSTRUCTION SET
INSTRUCTION SET
 
Computer organization and architecture
Computer organization and architectureComputer organization and architecture
Computer organization and architecture
 
Group 19 CD project
Group 19 CD projectGroup 19 CD project
Group 19 CD project
 
Component Diagram Example Templates
Component Diagram Example TemplatesComponent Diagram Example Templates
Component Diagram Example Templates
 
Unit 04 dbms
Unit 04 dbmsUnit 04 dbms
Unit 04 dbms
 
Component Diagram
Component DiagramComponent Diagram
Component Diagram
 
Design and implementation of complex floating point processor using fpga
Design and implementation of complex floating point processor using fpgaDesign and implementation of complex floating point processor using fpga
Design and implementation of complex floating point processor using fpga
 
C++ Unit_01
C++ Unit_01C++ Unit_01
C++ Unit_01
 
Hdlc
HdlcHdlc
Hdlc
 
Data flow oriented modeling
Data flow oriented modelingData flow oriented modeling
Data flow oriented modeling
 
23. Advanced Datatypes and New Application in DBMS
23. Advanced Datatypes and New Application in DBMS23. Advanced Datatypes and New Application in DBMS
23. Advanced Datatypes and New Application in DBMS
 
Computer Architecture and organization ppt.
Computer Architecture and organization ppt.Computer Architecture and organization ppt.
Computer Architecture and organization ppt.
 
Spr ch-02
Spr ch-02Spr ch-02
Spr ch-02
 
Hipo diagram
Hipo diagramHipo diagram
Hipo diagram
 

Similar to Chapter 01

Introduction to Data Structure
Introduction to Data Structure Introduction to Data Structure
Introduction to Data Structure Prof Ansari
 
Presentation on Behavioral Synthesis & SystemC
Presentation on Behavioral Synthesis & SystemCPresentation on Behavioral Synthesis & SystemC
Presentation on Behavioral Synthesis & SystemCMukit Ahmed Chowdhury
 
SWE-401 - 6. Software Analysis and Design Tools
SWE-401 - 6. Software Analysis and Design ToolsSWE-401 - 6. Software Analysis and Design Tools
SWE-401 - 6. Software Analysis and Design Toolsghayour abbas
 
Computer education presentation - ARCH 383
Computer education presentation - ARCH 383Computer education presentation - ARCH 383
Computer education presentation - ARCH 383LipikaPandey
 
CS304PC:Computer Organization and Architecture UNIT I.pdf
CS304PC:Computer Organization and Architecture UNIT I.pdfCS304PC:Computer Organization and Architecture UNIT I.pdf
CS304PC:Computer Organization and Architecture UNIT I.pdfAsst.prof M.Gokilavani
 
object oriented programming part inheritance.pptx
object oriented programming part inheritance.pptxobject oriented programming part inheritance.pptx
object oriented programming part inheritance.pptxurvashipundir04
 
System on Chip Design and Modelling Dr. David J Greaves
System on Chip Design and Modelling   Dr. David J GreavesSystem on Chip Design and Modelling   Dr. David J Greaves
System on Chip Design and Modelling Dr. David J GreavesSatya Harish
 
List and describe various features of electronic systems.List and .pdf
List and describe various features of electronic systems.List and .pdfList and describe various features of electronic systems.List and .pdf
List and describe various features of electronic systems.List and .pdfinfo824691
 
0 introduction to computer architecture
0 introduction to computer architecture0 introduction to computer architecture
0 introduction to computer architectureaamc1100
 
Due 24 August (Friday, 1159 p.m. EDT)Use Module 1 and Book Ch.docx
Due 24 August (Friday, 1159 p.m. EDT)Use Module 1 and Book Ch.docxDue 24 August (Friday, 1159 p.m. EDT)Use Module 1 and Book Ch.docx
Due 24 August (Friday, 1159 p.m. EDT)Use Module 1 and Book Ch.docxjacksnathalie
 
lecture1422486950.pdf
lecture1422486950.pdflecture1422486950.pdf
lecture1422486950.pdftomsmith160
 
Programming & Data Structure Lecture Notes
Programming & Data Structure Lecture NotesProgramming & Data Structure Lecture Notes
Programming & Data Structure Lecture NotesFellowBuddy.com
 
Software engg. pressman_ch-10
Software engg. pressman_ch-10Software engg. pressman_ch-10
Software engg. pressman_ch-10Dhairya Joshi
 

Similar to Chapter 01 (20)

Wi Fi documantation
Wi Fi documantationWi Fi documantation
Wi Fi documantation
 
vhdl
vhdlvhdl
vhdl
 
Introduction to Data Structure
Introduction to Data Structure Introduction to Data Structure
Introduction to Data Structure
 
Presentation on Behavioral Synthesis & SystemC
Presentation on Behavioral Synthesis & SystemCPresentation on Behavioral Synthesis & SystemC
Presentation on Behavioral Synthesis & SystemC
 
software design
software designsoftware design
software design
 
SWE-401 - 6. Software Analysis and Design Tools
SWE-401 - 6. Software Analysis and Design ToolsSWE-401 - 6. Software Analysis and Design Tools
SWE-401 - 6. Software Analysis and Design Tools
 
Computer education presentation - ARCH 383
Computer education presentation - ARCH 383Computer education presentation - ARCH 383
Computer education presentation - ARCH 383
 
Unit-3.doc
Unit-3.docUnit-3.doc
Unit-3.doc
 
CS304PC:Computer Organization and Architecture UNIT I.pdf
CS304PC:Computer Organization and Architecture UNIT I.pdfCS304PC:Computer Organization and Architecture UNIT I.pdf
CS304PC:Computer Organization and Architecture UNIT I.pdf
 
object oriented programming part inheritance.pptx
object oriented programming part inheritance.pptxobject oriented programming part inheritance.pptx
object oriented programming part inheritance.pptx
 
System on Chip Design and Modelling Dr. David J Greaves
System on Chip Design and Modelling   Dr. David J GreavesSystem on Chip Design and Modelling   Dr. David J Greaves
System on Chip Design and Modelling Dr. David J Greaves
 
List and describe various features of electronic systems.List and .pdf
List and describe various features of electronic systems.List and .pdfList and describe various features of electronic systems.List and .pdf
List and describe various features of electronic systems.List and .pdf
 
Chapter 1- IT.pptx
Chapter 1- IT.pptxChapter 1- IT.pptx
Chapter 1- IT.pptx
 
0 introduction to computer architecture
0 introduction to computer architecture0 introduction to computer architecture
0 introduction to computer architecture
 
E workshop system design
E workshop system designE workshop system design
E workshop system design
 
Due 24 August (Friday, 1159 p.m. EDT)Use Module 1 and Book Ch.docx
Due 24 August (Friday, 1159 p.m. EDT)Use Module 1 and Book Ch.docxDue 24 August (Friday, 1159 p.m. EDT)Use Module 1 and Book Ch.docx
Due 24 August (Friday, 1159 p.m. EDT)Use Module 1 and Book Ch.docx
 
lecture1422486950.pdf
lecture1422486950.pdflecture1422486950.pdf
lecture1422486950.pdf
 
Programming & Data Structure Lecture Notes
Programming & Data Structure Lecture NotesProgramming & Data Structure Lecture Notes
Programming & Data Structure Lecture Notes
 
Cao 2012
Cao 2012Cao 2012
Cao 2012
 
Software engg. pressman_ch-10
Software engg. pressman_ch-10Software engg. pressman_ch-10
Software engg. pressman_ch-10
 

Recently uploaded

scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...HenryBriggs2
 
Augmented Reality (AR) with Augin Software.pptx
Augmented Reality (AR) with Augin Software.pptxAugmented Reality (AR) with Augin Software.pptx
Augmented Reality (AR) with Augin Software.pptxMustafa Ahmed
 
Worksharing and 3D Modeling with Revit.pptx
Worksharing and 3D Modeling with Revit.pptxWorksharing and 3D Modeling with Revit.pptx
Worksharing and 3D Modeling with Revit.pptxMustafa Ahmed
 
Convergence of Robotics and Gen AI offers excellent opportunities for Entrepr...
Convergence of Robotics and Gen AI offers excellent opportunities for Entrepr...Convergence of Robotics and Gen AI offers excellent opportunities for Entrepr...
Convergence of Robotics and Gen AI offers excellent opportunities for Entrepr...ssuserdfc773
 
Ground Improvement Technique: Earth Reinforcement
Ground Improvement Technique: Earth ReinforcementGround Improvement Technique: Earth Reinforcement
Ground Improvement Technique: Earth ReinforcementDr. Deepak Mudgal
 
Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...
Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...
Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...drmkjayanthikannan
 
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills KuwaitKuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwaitjaanualu31
 
Hostel management system project report..pdf
Hostel management system project report..pdfHostel management system project report..pdf
Hostel management system project report..pdfKamal Acharya
 
👉 Yavatmal Call Girls Service Just Call 🍑👄6378878445 🍑👄 Top Class Call Girl S...
👉 Yavatmal Call Girls Service Just Call 🍑👄6378878445 🍑👄 Top Class Call Girl S...👉 Yavatmal Call Girls Service Just Call 🍑👄6378878445 🍑👄 Top Class Call Girl S...
👉 Yavatmal Call Girls Service Just Call 🍑👄6378878445 🍑👄 Top Class Call Girl S...manju garg
 
Digital Communication Essentials: DPCM, DM, and ADM .pptx
Digital Communication Essentials: DPCM, DM, and ADM .pptxDigital Communication Essentials: DPCM, DM, and ADM .pptx
Digital Communication Essentials: DPCM, DM, and ADM .pptxpritamlangde
 
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
COST-EFFETIVE  and Energy Efficient BUILDINGS ptxCOST-EFFETIVE  and Energy Efficient BUILDINGS ptx
COST-EFFETIVE and Energy Efficient BUILDINGS ptxJIT KUMAR GUPTA
 
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKAR
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKARHAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKAR
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKARKOUSTAV SARKAR
 
Standard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power PlayStandard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power PlayEpec Engineered Technologies
 
Online food ordering system project report.pdf
Online food ordering system project report.pdfOnline food ordering system project report.pdf
Online food ordering system project report.pdfKamal Acharya
 
Theory of Time 2024 (Universal Theory for Everything)
Theory of Time 2024 (Universal Theory for Everything)Theory of Time 2024 (Universal Theory for Everything)
Theory of Time 2024 (Universal Theory for Everything)Ramkumar k
 
School management system project Report.pdf
School management system project Report.pdfSchool management system project Report.pdf
School management system project Report.pdfKamal Acharya
 
PE 459 LECTURE 2- natural gas basic concepts and properties
PE 459 LECTURE 2- natural gas basic concepts and propertiesPE 459 LECTURE 2- natural gas basic concepts and properties
PE 459 LECTURE 2- natural gas basic concepts and propertiessarkmank1
 
Introduction to Serverless with AWS Lambda
Introduction to Serverless with AWS LambdaIntroduction to Serverless with AWS Lambda
Introduction to Serverless with AWS LambdaOmar Fathy
 

Recently uploaded (20)

scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
 
Augmented Reality (AR) with Augin Software.pptx
Augmented Reality (AR) with Augin Software.pptxAugmented Reality (AR) with Augin Software.pptx
Augmented Reality (AR) with Augin Software.pptx
 
Worksharing and 3D Modeling with Revit.pptx
Worksharing and 3D Modeling with Revit.pptxWorksharing and 3D Modeling with Revit.pptx
Worksharing and 3D Modeling with Revit.pptx
 
Convergence of Robotics and Gen AI offers excellent opportunities for Entrepr...
Convergence of Robotics and Gen AI offers excellent opportunities for Entrepr...Convergence of Robotics and Gen AI offers excellent opportunities for Entrepr...
Convergence of Robotics and Gen AI offers excellent opportunities for Entrepr...
 
Ground Improvement Technique: Earth Reinforcement
Ground Improvement Technique: Earth ReinforcementGround Improvement Technique: Earth Reinforcement
Ground Improvement Technique: Earth Reinforcement
 
Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...
Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...
Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...
 
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills KuwaitKuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
 
Hostel management system project report..pdf
Hostel management system project report..pdfHostel management system project report..pdf
Hostel management system project report..pdf
 
👉 Yavatmal Call Girls Service Just Call 🍑👄6378878445 🍑👄 Top Class Call Girl S...
👉 Yavatmal Call Girls Service Just Call 🍑👄6378878445 🍑👄 Top Class Call Girl S...👉 Yavatmal Call Girls Service Just Call 🍑👄6378878445 🍑👄 Top Class Call Girl S...
👉 Yavatmal Call Girls Service Just Call 🍑👄6378878445 🍑👄 Top Class Call Girl S...
 
Digital Communication Essentials: DPCM, DM, and ADM .pptx
Digital Communication Essentials: DPCM, DM, and ADM .pptxDigital Communication Essentials: DPCM, DM, and ADM .pptx
Digital Communication Essentials: DPCM, DM, and ADM .pptx
 
Signal Processing and Linear System Analysis
Signal Processing and Linear System AnalysisSignal Processing and Linear System Analysis
Signal Processing and Linear System Analysis
 
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak HamilCara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
 
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
COST-EFFETIVE  and Energy Efficient BUILDINGS ptxCOST-EFFETIVE  and Energy Efficient BUILDINGS ptx
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
 
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKAR
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKARHAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKAR
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKAR
 
Standard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power PlayStandard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power Play
 
Online food ordering system project report.pdf
Online food ordering system project report.pdfOnline food ordering system project report.pdf
Online food ordering system project report.pdf
 
Theory of Time 2024 (Universal Theory for Everything)
Theory of Time 2024 (Universal Theory for Everything)Theory of Time 2024 (Universal Theory for Everything)
Theory of Time 2024 (Universal Theory for Everything)
 
School management system project Report.pdf
School management system project Report.pdfSchool management system project Report.pdf
School management system project Report.pdf
 
PE 459 LECTURE 2- natural gas basic concepts and properties
PE 459 LECTURE 2- natural gas basic concepts and propertiesPE 459 LECTURE 2- natural gas basic concepts and properties
PE 459 LECTURE 2- natural gas basic concepts and properties
 
Introduction to Serverless with AWS Lambda
Introduction to Serverless with AWS LambdaIntroduction to Serverless with AWS Lambda
Introduction to Serverless with AWS Lambda
 

Chapter 01

  • 1. Computer Architecture and Organization Chapter-01 Systems: A system is a collection of elements or components that are organized for a common purpose. A computer system consists of hardware components that have been carefully chosen so that they work well together and software components or programs that run in the computer. The main software component is itself an operating system that manages and provides services to other programs that can be run in the computer. A filing system is a group of files organized with a plan (for example, alphabetical by customer). All of nature and the universe can be said to be a system. Systems design: Systems design is the process of defining the architecture, modules, interfaces, and data for a system to satisfy specified requirements. Systems design could be seen as the application of systems theory to product development. System Representation: A useful way of modeling a system is a graph. A (directed) graph consists of a set of objects V = {v1,v2,v3,v4,….vn} called nodes or vertices and a set of edges E whose members are (ordered) pairs of nodes taken from the set {(v2 ,v2), (v1,v3),...,(vn-1, vn)}of all such pairs. The edge e = (vi,vj) joins or connects node vi, to node vj. The systems of interest comprise two classes of objects: a set of information processing components C and a set of lines S that carry information signals between components. Thus we can represent any system like a graph and this is called block diagram.
  • 2. Structure in Computer Architecture: We define the structure of a system as the abstract graph consisting of its block diagram with no functional information. A structural description merely names components and defines their interconnection. Behavior in Computer Architecture: A behavioral description, enables one to determine for any given input signal a to the system, the corresponding output f(a). We define the function f to be the behavior of the system. The behavior f may be represented in many different ways. Figure 2.3 shows one kind of behavioral description for the logic circuit of Figure 2.2.
  • 3. Comparison between Behavior and Structure: Hardware description languages: We can fully describe a system's structure and behavior by means of a block diagram— the term schematic diagram is also used—in which we identify the functions of the components. We can convey the same detailed information by means of a hardware description language (HDL), a format that resembles (and is usually derived from) a high-level programming language such as Ada or C. Beginning in the 1950s, academic and industrial researchers developed many ad hoc HDLs. These eventually evolved into a few widely used languages, notably VHDL and Verilog. Hardware description languages such as VHDL have several advantages. They can provide precise, technology-independent descriptions of digital circuits at various levels of abstraction, primarily the gate and register levels. Consequently, they are widely used for documentation purposes. Like programming languages, HDLs can be processed by computers and so are suitable for use with computer-aided design (CAD) programs which, as discussed later, play an important role in the design process.
  • 4. VHDL: VHDL is a hardware description language used in electronic design automation to describe digital and mixed-signal systems such as field-programmable gate arrays and integrated circuits. VHDL can also be used as a general-purpose parallel programming language. A VHDL description has two main parts: 1. An entity part 2. An architecture part. The entity part: The entity part is a formal statement of the system's structure at the highest level, that is, as a single component. It describes the system's interface, which is the "face" presented to external devices but says nothing about the system's behavior or its internal structure. The architecture part The architecture part of a VHDL description specifies behavior and/or internal structure. Example: # VHDL DESCRIPTION OF A HALF ADDER.
  • 5.  In this example the entity statement gives the half adder's formal name half- adder and the names assigned to its input-output (IO) signals; IO signals are referred to in VHDL by their connection terminals or ports. Inputs and outputs are distinguished by the keywords in and out, Here two inputs x and y, and two out sum and carry.  The functions of the half adder's two outputs sum and carry are specified by two Boolean functions xor and and, which are built into VHDL; that is, they are predefined functions. In VHDL xor stands for the EXCLUSIVE-OR function. The AND function denoted by and. Note that VHDL expresses AND(x,y) in the equivalent "infix" format x and y. An alternative description of the behavior of half-adder appears above in the form of a truth table.The symbol <= is called signal assignment and indicates that the value of the expression on the right of <= is assigned to the signal on the left. begin-end to bracket related items represent minor syntactical details borrowed from programming languages. Design Process: When we get a system’s structure, now we need to design the system’s behavior and this process is known as analysis. Then we need to apply the analysis results to develop the system’s original application level system. This is known as design process. The design process in computer architecture is given below:
  • 6. What is CAD? Computer-aided design is the use of computers to aid in the creation, modification, analysis, or optimization of a design. CAD software is used to increase the productivity of the designer, improve the quality of design, improve communications through documentation, and to create a database for manufacturing. In CAD, three important ways to the overall design process:  CAD editors or translators convert design data into forms such as HDL descriptions or schematic diagrams, which humans, computers, or both can efficiently process.  Simulators create computer models of a new design, which can mimic the design's behavior and help designers determine how well the design meets various performance and cost goals.  Synthesizers automate the design process itself by deriving structures that implement all or part of some design step What is system hierarchy? When we want to design a particular system, we need to define the major levels of the system required. Then we need to specify the levels structure and behavior so that we can realize the system visualization. This is known as system hierarchy. Here computer architecture has three major levels. We need to define the three steps: 1. Specify the processor level Structure 2. Specify the register level Structure 3. Specify the gate level structure Now we can understand what we need to design the system from the hierarchy. What are the major levels in digital computer Design? There are three major levels in digital computer design. They are given below: • The processor level, also called the architecture, behavior, or system level. • The register level, also called the register-transfer level (RTL). • The gate level, also called the logic level.
  • 7. The components required to design a computer shortly: The Gate Level Gate-level (logic) design is concerned with processing binary variables whose possible values are restricted to the bits (binary digits) 0 and 1. The design components are:  logic gates, which are simple, memoryless processing elements, and  flip-flops, which are bit-storage devices. Combinational circuits:  Combinational circuits are defined as the time independent circuits which do not depends upon previous inputs to generate any output are termed as combinational circuits.  Examples – Adder, Subtractor, Converter, Encoder, Decoder, Multiplexer, Demultiplexer  Block Diagram – 
  • 8. Example of combinational circuit (Full Adder):  Here the output depends only on the present input. Sequential circuits:  Sequential circuits are those which are dependent on clock cycles and depends on present as well as past inputs to generate any output.  Examples – Flip-flops, Counters, Register, Clocks  Block Diagram – Example of Sequential circuit (S-R Flip Flop):
  • 9. Here the output depends on the present input as well as past output. What are the differences between combinational and sequential logic circuits? Combinational Logic Circuits Sequential Logic Circuits Output depends only on current inputs Output depends on current, past as well as clock inputs Hence they are faster They are slower They are time-independent and don’t need clock inputs Time-dependent and thus require clocks Since there is no clock, they don’t require triggering Since a clock is present, triggering is required Made using logic gates Made using flip-flops Also, easier to design since there are no crazy feedbacks or clocks More complicated to design They can’t store anything. They have no memory. Main uses are to implement arithmetic and logical operations. The main use is for storing data and other memory applications Easier to use and handle Harder to use and handle Example: Full Adder, Multiplier etc. Example: Counters, Shift-registers THE REGISTER LEVEL: At the register or register-transfer level, related information bits are grouped into ordered sets called words or vectors. The primitive components are small combinational or sequential circuits intended to process or store words. Types of components used in register level: 1. Combinational, and 2. Sequential
  • 10. Required Components and their functions for Resister level design: Word Gate: Here we need to word using word instead of single bit. Let X and Y are two number such that X = (x1 , x2, x3, …. , xn) and Y = (y1, y2, y3, …. , yn). Here the word X and Y has n- bits. Now if we want to perform any operation using them, we need to perform corresponding bits. If we want to perform NAND operation such that: Z = 𝑿𝒀 ̅̅̅̅ (z1, z2, z3, ….. , zn ) = (x1𝑦1 ̅̅̅̅̅̅̅ , x2𝑦2 ̅̅̅̅̅̅̅, x3𝑦3 ̅̅̅̅̅̅̅ , … … . . , xn𝑦𝑛 ̅̅̅̅̅̅̅ ) Multiplexer Multiplexer is a combinational circuit that has maximum of 2n data inputs, ‘n’ selection lines and single output line. One of these data inputs will be connected to the output based on the values of selection lines. Since there are ‘n’ selection lines, there will be 2n possible combinations of zeros and ones. So, each combination will select only one data input. Multiplexer is also called as Mux. 4x1 Multiplexer 4x1 Multiplexer has four data inputs I3, I2, I1 & I0, two selection lines s1 & s0 and one output Y. The block diagram of 4x1 Multiplexer is shown in the following figure.
  • 11. One of these 4 inputs will be connected to the output based on the combination of inputs present at these two selection lines. Truth table of 4x1 Multiplexer is shown below. Multiplexers as function generators Encoders: An encoder is a combinational circuit that converts binary information in the form of a 2N input lines into N output lines, which represent N bit code for the input. For simple encoders, it is assumed that only one input line is active at a time. As an example, let’s consider Octal to Binary encoder. As shown in the following figure, an octal-to-binary encoder takes 8 input lines and generates 3 output lines. Decoders: A decoder does the opposite job of an encoder. It is a combinational circuit that converts n lines of input into 2n lines of output. Let’s take an example of 3-to-8 line decoder.
  • 12. Truth Table – X Y Z D0 D1 D2 D3 D4 D5 D6 D7 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 1 1 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 1 0 1 0 0 0 0 0 1 0 0 1 1 0 0 0 0 0 0 0 1 0 1 1 1 0 0 0 0 0 0 0 1 Register: A Register is a group of flip-flops with each flip-flop capable of storing one bit of information. An n-bit register has a group of n flip-flops and is capable of storing binary information of n-bits. A register consists of a group of flip-flops and gates. The flip-flops hold the binary information and gates control when and how new information is transferred into a register. Various types of registers are available commercially. The simplest register is one that consists of only flip-flops with no external gates.
  • 13. Shift Register: We know that one flip-flop can store one-bit of information. In order to store multiple bits of information, we require multiple flip-flops. The group of flip-flops, which are used to hold (or store) the binary data is known as register. If the register is capable of shifting bits either towards right hand side or towards left hand side is known as shift register. An ‘N’ bit shift register contains ‘N’ flip-flops. Following are the four types of shift registers based on applying inputs and accessing of outputs. Counters: Counter is a sequential circuit. A digital circuit which is used for a counting pulses is known counter. Counter is the widest application of flip-flops. It is a group of flip-flops with a clock signal applied. Counters are of two types.  Asynchronous or ripple counters.  Synchronous counters. Brief Description of Register level Design: A register-level system consists of a set of registers linked by combinational data transfer and data-processing circuits. Here each operation is typically implemented by one or more elementary register-transfer steps of the form cond: Z: = f( X1, X2, ..., Xk ); Where f is a function to be performed. And X1, X2, ..., Xk and Z denote data words or the registers that store them. The prefix cond denotes a control condition (which may be 0 or 1) A simple register-level system like that of Figure 2.38a performs a single action, in this case, the add operation Z := A + B.
  • 14. Figure 2.38b shows a more complicated system that can perform several different operations. Such a multifunction system is generally partitioned into a data-processing part, called a data path, and a controlling part, the control unit, which is responsible for selecting and controlling the actions of the data path. The control unit CU selects the operation (add, shift, and so on) for the ALU to perform in each clock cycle. It also determines the input operands to apply to the ALU and the destination of its results. Now given a set of operations to be executed, design a circuit using a specified set of register-level components that implement the desired functions while satisfying certain cost and performance criteria. We need to follow the steps to design the system: 1. Define the desired behavior by a set of sequences of register-transfer operations, such that each operation can be implemented directly using the available design components. This constitutes an algorithm AL to be executed. 2. Analyze AL to determine the types of components and the number of each type required for the data path DP. 3. Construct a block diagram for DP using the components identified in step-2. Make the connections between the components so that all data paths implied by AL are present and the given performance-cost constraints are met. 4. Analyze AL and DP to identify the control signals needed. Introduce into DP the logic or control points necessary to apply these signals. 5. Design a control unit CU for DP that meets all the requirements of AL. 6. Verify, typically by computer simulation, that the final design operates correctly and meets all performance-cost goals.