0% found this document useful (0 votes)
7 views10 pages

Introduction to Digital Systems Overview

Uploaded by

michealehaftu69
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
7 views10 pages

Introduction to Digital Systems Overview

Uploaded by

michealehaftu69
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

Chapter one

Introduction to Digital System


Introduction:
In describing computers, a distinction is often made between computer architecture and
computer organization. Although it is difficult to give precise definitions

Computer architecture refers to those attributes of a system visible to a programmer or, put
another way, those attributes that have a direct impact on the
logical execution of a program. A term that is often used interchangeably with computer
architecture is instruction set architecture (ISA). The ISA defines instruction
formats, instruction opcodes, registers, instruction and data memory; the effect of
executed instructions on the registers and memory; and an algorithm for controlling instruction
execution.
Computer organization refers to the operational units and their interconnections that realize the
architectural specifications. Examples of architectural attributes include the instruction set, the
number of bits used to represent various data types (e.g., numbers, characters), I/O mechanisms,
and techniques for addressing memory. Organizational attributes include those hardware details
transparent to the programmer, such as control signals; interfaces between the computer and
peripherals; and the memory technology used.

For example, it is an architectural design issue whether a computer will have a multiply
instruction. It is an organizational issue whether that instruction will be implemented by a special
multiply unit or by a mechanism that makes repeated use of the add unit of the system. The
organizational decision may be based on the anticipated frequency of use of the multiply
instruction, the relative speed of the two approaches, and the cost and physical size of a special
multiply unit.

Structure and Function:


A computer is a complex system; contemporary computers contain millions of elementary
electronic components. How, then, can one clearly describe them? The key is to recognize the
hierarchical nature of most complex systems, including the computer [SIMO96]. A hierarchical
system is a set of interrelated subsystems, each of the latter, in turn, hierarchical in structure until
we reach some lowest level of elementary subsystem.
The hierarchical nature of complex systems is essential to both their design and their description.
The designer need only deal with a particular level of the system at a time. At each level, the
system consists of a set of components and their interrelationships. The behavior at each level
depends only on a simplified, abstracted characterization of the system at the next lower level. At
each level, the designer is concerned with structure and function:
 Structure: The way in which the components are interrelated.
 Function: The operation of each individual component as part of the structure
Function
Both the structure and functioning of a computer are, in essence, simple. In general terms, there
are only four basic functions that a computer can perform:
■ Data processing: Data may take a wide variety of forms, and the range of processing
requirements is broad. However, we shall see that there are only a few fundamental methods or
types of data processing.
■ Data storage: Even if the computer is processing data on the fly (i.e., data come in and get
processed, and the results go out immediately), the computer must temporarily store at least
those pieces of data that are being worked on at any given moment. Thus, there is at least a short-
term data storage function. Equally important, the computer performs a long-term data storage
function. Files of data are stored on the computer for subsequent retrieval and update.
■ Data movement: The computer’s operating environment consists of devices that serve as
either sources or destinations of data. When data are received from or delivered to a device that
is directly connected to the computer, the process is known as input–output (I/O), and the device
is referred to as a peripheral. When data are moved over longer distances, to or from a remote
device, the process is known as data communications.
■ Control: Within the computer, a control unit manages the computer’s resources and
orchestrates the performance of its functional parts in response to instructions.
Structure
We now look in a general way at the internal structure of a computer. We begin with a traditional
computer with a single processor that employs a microprogrammed control unit, then examine a
typical multicore structure. simple single-processor computer Figure 1.1 provides a hierarchical
view of the internal structure of a traditional single-processor computer. There are four main
structural components:
■ Central processing unit (CPU): Controls the operation of the computer and
performs its data processing functions; often simply referred to as processor.
■ Main memory: Stores data.
fig.1.1 Top level structure of a computer system

■ I/O: Moves data between the computer and its external environment.
■ System interconnection: Some mechanism that provides for communication among CPU,
main memory, and I/O. A common example of system interconnection is by means of a system
bus, consisting of a number of conducting wires to which all the other components attach.
the most interesting and in some ways the most complex component is the CPU. Its major
structural components are as follows:
■ Control unit: Controls the operation of the CPU and hence the computer.
■ Arithmetic and logic unit (ALU): Performs the computer’s data processing
functions.
■ Registers: Provides storage internal to the CPU.
■ CPU interconnection: Some mechanism that provides for communication among the control
unit, ALU, and registers.

multicore computer structure: As was mentioned, contemporary computers generally have


multiple processors. When these processors all reside on a single chip, the term multicore
computer is used, and each processing unit (consisting of a control unit, ALU, registers, and
perhaps cache) is called a core. To clarify the terminology, this text will use the following
definitions.
■ Central processing unit (CPU): That portion of a computer that fetches and
executes instructions. It consists of an ALU, a control unit, and registers.
In a system with a single processing unit, it is often simply referred to as a
processor.
■ Core: An individual processing unit on a processor chip. A core may be equivalent in
functionality to a CPU on a single-CPU system. Other specialized processing units, such as one
optimized for vector and matrix operations, are also
referred to as cores.
■ Processor: A physical piece of silicon containing one or more cores. The
processor is the computer component that interprets and executes instructions. If a processor
contains multiple cores, it is referred to as a multicore
processor.
======= for more understanding Read a brief History of computers ======
1.1. Basic concepts of Digital System
 Digital systems are designed to store, process, and communicate information in digital
form. They are found in a wide range of applications, including process control,
communication systems, digital instruments, and consumer products etc.
 A system is a set of related components that work as a whole to achieve a goal. A
system contains inputs, behavior and outputs.

Behavior is a function that translates inputs to output. Components are electronics blocks –
digital, analog, or mixed signal. Digital System is a system in which signals have a finite
number of discrete values. Analog System has values from a continuous set and Mixed Signal
System has both Digital and Analog parts.
Generally, signals are represented by two methods, i.e., Digital and Analog System. Digital
Signal is limited to only a few possible values, generally represented by Binary logic 0 (0 – 0.8
volts) and logic 1 (2.0 – 5.0 volts). Whereas Analog Signal varies continuously.
Building block concepts:
Binary Numbers : At the heart of digital electronics lies the binary number system. Unlike
the decimal system we commonly use, which has ten digits (0-9), the binary system operates
with only two digits: 0 and 1. These binary digits, also known as bits, form the foundation of all
digital information representation. Every piece of data in digital electronics is broken down into
combinations of 0s and 1s, allowing for precise and efficient computation.
Logic Gates: Logic gates are the essential building blocks of digital circuits. They perform
logical operations based on the input signals they receive and produce corresponding output
signals.
Digital Circuits: Putting Logic Gates to Work: Digital circuits are constructed by combining
logic gates to perform specific tasks. They are the backbone of various electronic devices,
including computers, smartphones, and calculators. Here are some common types of digital
circuits:
Adders: Summing It Up

Adders are circuits designed to perform addition operations. They take two or more binary
numbers as input and produce the sum as the output. Adders are critical components of
arithmetic operations in digital systems.

Flip-Flops: Memory Elements


Flip-flops are memory elements used to store binary information. They can be in either a high
state (1) or a low state (0), and their output remains stable until triggered by a clock signal. Flip-
flops are essential for sequential logic circuits and memory storage applications.

Multiplexers: Data Selection

Multiplexers, also known as data selectors, are circuits that select one of many input signals and
route it to the output based on a control signal. They are commonly used in data transmission,
routing, and communication systems.

1.2. Boolean Algebra


The digital circuitry in digital computers and other digital systems is designed, and its behavior is
analyzed, with the use of a mathematical discipline known as Boolean algebra. The name is in
honor of an English mathematician George Boole, who proposed the basic principles of this
algebra in 1854 in his treatise, An Investigation of the Laws of Thought on Which to Found the
Mathematical Theories of Logic and Probabilities.

Boolean algebra turns out to be a convenient tool in two areas:


 Analysis: It is an economical way of describing the function of digital circuitry.
 Design: Given a desired function, Boolean algebra can be applied to develop
a simplified implementation of that function.

As with any algebra, Boolean algebra makes use of variables and operations. In this case, the
variables and operations are logical variables and operations. Thus, a variable may take on the
value 1 (TRUE) or 0 (FALSE). The basic logical operations are AND, OR, and NOT, which are
symbolically represented by dot, plus sign, and overbar:

A AND B = A . B
A OR B = A + B
NOT A = Ã

The operation AND yields true (binary value 1) if and only if both of its operands are true. The
operation OR yields true if either or both of its operands are true. The unary operation NOT
inverts the value of its operand. For example, consider the equation:

D = A + ( B . C)
D is equal to 1 if A is 1 or if both B = 0 and C = 1. Otherwise, D is equal to 0. Several points
concerning the notation are needed. In the absence of parentheses, the AND operation takes
precedence over the OR operation. Also, when no ambiguity will occur, the AND operation is
represented by simple concatenation instead of the dot operator. Thus,
A + B . C = A + (B . C) = A + BC all mean: Take the AND of B and C; then take the OR of
the result and A.

Table 1.1a defines the basic logical operations in a form known as a truth table, which lists the
value of an operation for every possible combination of values of operands. The table also lists
three other useful operators: XOR, NAND, and NOR. The exclusive-or (XOR) of two logical
operands is 1 if and only if exactly one of the operands has the value 1. The NAND function is
the complement (NOT) of the AND function, and the NOR is the complement of OR:
A NAND B = NOT (A AND B) = AB
A NOR B = NOT (A OR B) = A+ B

As we shall see, these three new operations can be useful in implementing certain digital circuits.
The logical operations, with the exception of NOT, can be generalized to more than two
variables, as shown in Table 1.1b. Table 1.2 summarizes key identities of Boolean algebra. The
equations have been arranged in two columns to show the complementary, or dual, nature of the
AND and OR operations. There are two classes of identities: basic rules (or postulates), which
are stated without proof, and other identities that can be derived from the basic postulates. The
postulates define the way in which Boolean expressions are interpreted. One of the two
distributive laws is worth noting because it differs.
from what we would find in ordinary algebra:
A + (B . C) = (A + B) . (A + C)

Table 1.1 Boolean operators.

Table 1.2 Basic identities of Boolean Algebra


1.3 Logic Gates
The fundamental building block of all digital logic circuits is the gate. Logical functions are
implemented by the interconnection of gates. A gate is an electronic circuit that produces an
output signal that is a simple Boolean operation on its input signals. The basic gates used in
digital logic are AND, OR, NOT, NAND, NOR, and XOR. Figure 1.1 depicts these six gates.
Each gate is defined in three ways: graphic symbol, algebraic notation, and truth table.
The symbology used in this chapter is from the IEEE standard, IEEE Std 91. Note that the
inversion (NOT) operation is indicated by a circle.
Each gate shown in Figure 1.1 has one or two inputs and one output. However, as indicated in
Table 1.1b, all of the gates except NOT can have more than two inputs. Thus, (X + Y + Z) can be
implemented with a single OR gate with three inputs. When one or more of the values at the
input are changed, the correct output signal appears almost instantaneously, delayed only by the
propagation time of signals through the gate (known as the gate delay). In some cases, a gate is
implemented with two outputs, one output being the negation of the other output.
Figure 1.1 Basic Logic Gates
Here we introduce a common term: we say that to assert a signal is to cause a signal line to make
a transition from its logically false (0) state to its logically true (1) state. The true (1) state is
either a high or low voltage state, depending on theBtype of electronic circuitry. Typically, not
all gate types are used in implementation. Design and fabrication are simpler if only one or two
types of gates are used. Thus, it is important to identify functionally complete sets of gates. This
means that any Boolean function can be implemented using only the gates in the set. The
following are functionally complete sets:
■ AND, OR, NOT
■ AND, NOT
■ OR, NOT
■ NAND
■ NOR
It should be clear that AND, OR, and NOT gates constitute a functionally complete set, because
they represent the three operations of Boolean algebra. For the AND and NOT gates to form a
functionally complete set, there must be a way to synthesize the OR operation from the AND and
NOT operations. This can be done by applying DeMorgan’s theorem:
A + B = A.B
A OR B = NOT((NOT A)AND (NOT B))
Similarly, the OR and NOT operations are functionally complete because they can be used to
synthesize the AND operation. Figure 1.2 shows how the AND, OR, and NOT functions can be
implemented solely with NAND gates, and Figure 1.3 shows the same thing for NOR gates.
For this reason, digital circuits can be, and frequently are, implemented solely with NAND gates
or solely with NOR gates.

1.4. Combinational circuit


A combinational circuit is an interconnected set of gates whose output at any time is a function
only of the input at that time. As with a single gate, the appearance of the input is followed
almost immediately by the appearance of the output, with only gate delays. In general terms, a
combinational circuit consists of n binary inputs and m binary outputs. As with a gate, a
combinational circuit can be defined in three ways:
■ Truth table: For each of the 2n possible combinations of input signals, the
binary value of each of the m output signals is listed.
■ Graphical symbols: The interconnected layout of gates is depicted.
■ Boolean equations: Each output signal is expressed as a Boolean function of
its input signals.

Common questions

Powered by AI

Boolean algebra provides a mathematical framework for designing and analyzing digital circuits by using logical operations like AND, OR, and NOT . These operations can describe circuit functions economically, enabling the simplification and optimization of circuit designs. For example, the Boolean expression D = A + (B . C) specifies that D is true if A is true or both B and C are true, which can be implemented using logic gates . Boolean algebra also allows for the identification and use of functionally complete gate sets, such as NAND or NOR, which simplifies circuit complexity by reducing the variety of gates needed in a design .

The four basic functions of a computer—data processing, data storage, data movement, and control—are integral to its operation. Data processing refers to the computer's ability to execute instructions and manipulate data, primarily handled by the arithmetic and logic unit (ALU). Data storage includes both short-term (working data) and long-term storage (files), managed by main memory and storage systems . Data movement encompasses I/O operations and data communications over networks, often facilitated by system buses and I/O devices . Control involves the coordination of these processes by the control unit, which manages resource allocation and the execution order within the processor .

Combinational circuits differ from sequential circuits in that the output of a combinational circuit is solely a function of the current inputs, with no regard for previous input states. They consist of interconnected logic gates without memory, producing output almost immediately after input due to gate delays . Examples include adders and multiplexers. Sequential circuits, however, incorporate memory elements (like flip-flops) and their output depends on both current and past inputs, enabling them to perform more complex operations such as counting or data storage . The inclusion of storage elements in sequential circuits allows them to manage state information over time, unlike combinational circuits .

In a multicore processor architecture, the CPU is the key component responsible for fetching and executing instructions. In the context of multicore processors, each core of the processor is equivalent in functionality to a CPU, containing a control unit, an arithmetic and logic unit (ALU), and registers . These cores may also include a cache to improve performance . Each core can operate independently, or they may work in parallel to improve computational efficiency and performance, allowing for multitasking and handling complex computations within a single processor chip .

Functionally complete sets of gates offer simplicity, cost-effectiveness, and versatility in digital circuit design. A set of gates is functionally complete if any Boolean function can be implemented using just the gates in the set. This allows designers to construct complex logic circuits using a limited variety of gate types, which simplifies manufacturing and reduces costs . For example, with NAND or NOR gates being functionally complete, entire circuits can be implemented using just one type of gate, facilitating standardized fabrication and maintenance. This also aids in the optimization of logic circuits by simplifying the logical expressions through methods like DeMorgan's Theorems .

Computer architecture refers to those attributes of a system visible to a programmer, including the instruction set architecture (ISA), number of bits for data types, and techniques for addressing memory. It impacts the logical execution of a program . In contrast, computer organization involves the operational units and their interconnections that realize the architectural specifications, such as control signals, interfaces to peripherals, and the memory technology used . An architectural decision might involve the presence of a multiply instruction, whereas the organizational aspect would involve how this instruction is executed by the system, e.g., via a dedicated multiply unit or using repeated addition .

Digital systems are characterized by signals with a finite number of discrete values, typically represented in binary form—logic levels "0" and "1" . They are used in a variety of applications where precision and efficiency in processing and communication are required. Analog systems, on the other hand, manage signals that vary continuously across a range of values, typically in real-time applications like audio and video . The design of digital systems leverages discrete mathematics, Boolean algebra, and logic circuits, whereas analog design involves continuous signal processing techniques. Digital systems are preferred for applications requiring error detection and correction, while analog systems are often used where signal integrity over a continuous range is essential .

Data movement is critical in computer systems as it enables the transfer of data between the processor, memory, and peripheral devices. It encompasses input-output (I/O) processes for connecting devices like keyboards and displays, as well as data communication over networks . Efficient data movement ensures timely data processing, minimizes latency, and maximizes throughput. The interface with external environments is facilitated through system interconnections, such as buses, which provide pathways for data to flow between internal CPU components and external peripherals. Data movement efficiency is fundamental to the overall performance of a computer system, influencing speed and responsiveness, especially in I/O-bound processes .

The hierarchical nature of complex systems, including computers, refers to their organization into a set of interrelated subsystems and components. Each subsystem can itself be seen as a hierarchical system until the basic level is reached . This hierarchy is essential for design as it allows designers to focus on one level of the system at a time, simplifying the design process by limiting interaction to a subset of components and interactions. It facilitates both the detailed understanding and abstract representation of a system's behavior, enabling designers to apply abstraction, modular design, and incremental development practices .

The control unit within a CPU manages the execution of instructions by coordinating the operations of the CPU's components, including the ALU and registers . It interprets instructions fetched from memory, sequences them appropriately, and generates control signals to direct data flow across the CPU and between external peripherals. This involves managing the instruction cycle, which includes fetching, decoding, executing, and, in some cases, effective address calculation and operand data fetching. The control unit ensures correct operation sequencing and timing, adapting resource usage to maintain seamless CPU function .

You might also like