Alcantara ECE10 Research3
Alcantara ECE10 Research3
ECE 10
DIGITAL ELECTRONICS 1
RESEARCH NO. 3
MULTIPLEXERS & DEMULTIPLEXERS
COMPARATOR
READ ONLY MEMORY
PROGRAMMABLE LOGIC ARRAY
INTRODUCTION TO SEQUENTIAL LOGIC
BS ECE - 2B
Submitted to:
learning logic circuits, learners or undergraduates always configure the essential role
of logic, binary signals, boolean algebra, and principles of communication which are
building blocks of what technology has been till the present. Each of the parts of the
digital circuits that are involved in routing signals for digital electronics. Yet, the two
are opposite in operation. The both are also classified under switching theories.
Multiplexers (MUX)
single input from multiple available input lines and directs it to a singular output line.
multiple input signals and produces a single output. In a multiplexer, there are 2^n
input lines and one output line, where n represents the number of selection lines.
operational principles.
One specific type of this type of digital logic switch is time division
having multiplexers is the saving of space and power due to reducing the number of
non-electronic circuit of a multiplexer. These are suitable for both analog and digital
applications. In analog applications, they are constructed using relays and transistor
switches, while in digital applications, they are composed of standard logic gates.
By its behavior of 2^1:1, multiplexers have input that are even in numbers and
can be classified by four types mainly, 2-1 multiplexer that has 1 select line, 4-1
multiplexer that has 2 select lines, 8-1 multiplexer that has 3 select lines, and 16-1
of logic gates that are identified as Sum of Products (SOP) operation. The
composition of this kind of logic circuit is adding the AND functions which are
products of inputs with paths of NOT or inverters. The output will be joint by the sum
of these products that utilize the final OR logic gate. An instance of these is a 4-1
circuit. It consists of four input bits, one output bit, and two control bits. The input bits
are designated as D0, D1, D2, and D3, with only one input bit being transmitted to
the output at a time. The output, denoted as 'q', is determined by the value of the
control input AB. The control bits AB dictate which input data bit is transmitted to the
output. The circuit diagram of the 4-to-1 multiplexer, constructed using AND gates, is
illustrated below. For instance, when the control bits AB are set to 00, the upper AND
gate is enabled, while the remaining AND gates are disabled, allowing the input D0
When the control input is set to 11, all gates are disabled except for the
bottom AND gate. In this scenario, the input D3 is transmitted to the output, resulting
output matches the input. Another example is the IC 45352, in which the output is
amounts of memory efficiently and to minimize the number of copper lines needed
for connecting the memory to other components of the computer. Another application
is telephone networking since multiple audio signals are integrated on a single line of
Demultiplexers (DEMUX)
input and channels it to one of several output lines. It performs the reverse operation
input and produces multiple outputs. In a demultiplexer, there is one input line and
2^n output lines, where n still represents the number of selection lines the same in
multiplexers.
and converts it into several sources. While a multiplexer is based as a digital switch,
demultiplexers are on the side of being a digital circuit instead. It works on one to
they still are both space-saving and power-efficient due to being used to reduce the
sustained in the figure below showing the ratio 1:2^n relationships. One factor to
consider in demultiplexers and multiplexers are the selection lines. Selection lines
are employed to identify which input or output will be active at a given moment.
Figure 1.3 portrays the block diagram of a demultiplexer and how it behaves
and runs. Due to having only 1 input, the demultiplexer works to distribute it to
multiple outputs showing 1:2^n ratio where output is also in base of 2 exponentially.
demultiplexer with 1 select line, 1-4 demultiplexer with 2 select lines, 1-8
demultiplexer with with 3 select lines, and finally 1-16 demultiplexer with 4 select
lines. But unlike multiplexers, when constructing digital logic circuits, the operation is
not in Sum of Products (SOP) anymore to add all the inputs. Because demultiplexers
have only a single input, the circuit is designed to have multiple AND logic gates to
Logic Unit or ALU. The output of the ALU is supplied as an input to the demultiplexer,
whose output is then linked to multiple registers. This allows the ALU output to be
The demultiplexer, also referred to as a data distributor, requires one input, three
selection lines, and eight output lines. It accepts a single input data line and directs it
to one of the output lines. The circuit diagram of a 1-to-8 demultiplexer utilizes eight
The input bit, referred to as data D/I, is transmitted to the output lines based
on the control input value of AB. When AB = 01, the second gate, F1, is activated,
while the other AND gates remain disabled, allowing the data bit to be transmitted to
the output, resulting in F1 = data. If D is low, F1 will also be low; if D is high, F1 will
be high. Therefore, the value of F1 depends on the value of D, with the other outputs
there are also advantages and disadvantages for multiplexers and demultiplexers.
Table 1.1. ADVANTAGES & DISADVANTAGES OF MULTIPLEXERS
MULTIPLEXERS
ADVANTAGES DISADVANTAGES
Reduces the cost as well as the The ports which can be utilized at the
complexity of the circuit same time have limitations
DEMULTIPLEXERS
ADVANTAGES DISADVANTAGES
Used to divide the mutual signals back Bandwidth wastage might happen
into separate streams.
assess their relative magnitude. It generates one or more output signals that indicate
whether one input is greater than, less than, or equal to the other. Binary or digital
comparators can be constructed using standard AND, NOR, and NOT gates to
compare the digital signals at its input terminals and generate an output based on
(MCU) and central processing units (CPU) that the world knows until this time.
compare binary numbers to determine whether the value at input A is greater than,
less than, or equal to the value at input B, among other conditions. The digital
comparator achieves this by utilizing several logic gates that operate based on the
principles of Boolean algebra. This digital comparator has mainly two types
mentioned below.
1. Identity Comparator
A digital comparator with only one output terminal for when A=B, either A=B=1
2. Magnitude Comparator
a digital comparator which has three output terminals, one each for equality
unknown values, denoted as A (A1, A2, A3, … An, etc.), with a constant or another
set of variables, represented as B (B1, B2, B3, … Bn, etc.), and generate an output
output conditions based on their relative comparison. (A>B, A=B, A<B), meaning A is
upon the fulfillment of any of the three conditions mentioned. For instance, it can be
used to trigger an output from a counter when a specified count value is reached.
Figure 2.1 reveals a 1-bit digital comparator that composes inverter logic or
NOT, AND logic, and NOR logic which are combined in a sequential manner to
produce different outputs that match the function of a digital comparator. Naming the
outputs C=A’B which A is less than B, while output D=(A’B+AB’)’ concludes that input
A is equal to input B, and last output E=AB’ showing input A is greater than B. In
Based on these functions, the digital comparator can compare the individual inputs.
By this boolean expression and logic operations, a truth table can be created
for a digital comparator. According to the combinational logic circuit and following the
given inputs and outputs, the truth table will present as shown below.
Table 2. Digital Comparator Truth Table
INPUTS OUTPUTS
0 0 0 1 0
0 1 1 0 0
1 0 0 0 1
1 1 0 1 0
Table 2 shows the possible outputs in a specific inputs given. Two notable
characteristics of this simple comparator can be observed from the truth table above.
First, the circuit does not differentiate between the two inputs being "0" or "1." The
output A = B is generated when both inputs are equal, meaning that either A = B =
commonly available logic gate, the Exclusive-NOR (X-NOR) gate, which performs
corresponding pairs of bits. When comparing two binary or BCD values or variables,
we are assessing the "magnitude" of these values, contrasting a logic "0" with a logic
comparator, analogous to the method used in the previous tutorial for constructing an
BCD words, producing an output that indicates whether one word is greater than,
an example of a larger bit of magnitude comparator. In this case, two 4-bit words
known as "nibbles" are compared to generate the corresponding output, with one
example above, the comparator initiates the process by comparing the most
comparison proceeds to the next bit in descending order until the least significant bit
(LSB) is reached. If equality is preserved across all bits, the two numbers are
determined to be equal.
data sorting and searching. Comparators are essential in algorithms for sorting and
searching, where values need to be compared to each other to arrange or find data.
compare sensor readings with set thresholds and trigger actions accordingly. Finally,
digital comparators can be used in digital clock and timer synchronization due to
frequency counters and analyzers. Signal integrity and error detection can bring
Modern computers have modular parts that work as a puzzle in order for a
machine to operate. From any technology companies that offer components may mix
the building blocks of a computer. This includes the central processing unit which is
the heart of the computer, the motherboard that connects the individual parts of the
PC, the RAM or Random Access Memory, that manages multitasking activities in a
system, the power supply unit that delivers and regulates the required power and
electricity for the computer, and finally, the storage that is based in ROM or Read
Only Memory. Read Only Memory is one of the essential factors of any
storing data for both immediate access and long-term retention. Computer memory
is broadly classified into two types based on its operational characteristics: volatile
stored data even when the power supply is disconnected. This type of memory is
generally more cost-effective and has a higher storage capacity compared to volatile
memory. Common examples of non-volatile memory include ROM and flash memory.
retained only while the system is powered. When the power is interrupted, all stored
data in volatile memory is lost. RAM (Random Access Memory) serves as a primary
implied by its designation, ROM permits only the retrieval of pre-stored programs
with specific data, which is encoded in binary format. Due to its non-volatile nature,
power.
Figure 3.2 discerns the block diagram of a Read-Only Memory. The structure
comprises k input lines and n output lines, where the k input lines are utilized to
designate the address from which the ROM content is accessed. Given that each of
the k input lines can independently assume a binary value of 0 or 1, a total of 2^k
elements that complete the ROM can be distinguished. Thus, the two basic internal
components of a read-only memory are the decoder and the OR gates. A circuit
The two major electronic devices can be found in Figure 3.3 with specific
corresponds to the binary form of the input provided. In the context of ROM, the
decoder’s outputs align with the outputs of each OR gate. For example, in a 64 x 4
ROM configuration, there are 64 memory words, each comprising 4 bits, yielding four
output lines. The presence of six input lines allows for the specification of 64 unique
addresses or minterms, thereby enabling the selection of one out of the 64 stored
words based on the input address. Each input combination uniquely identifies and
A small, durable battery powers the ROM within a computer, which is primarily
composed of two key components: OR logic gates and a decoder. The decoder in
ROM receives binary input and generates a decimal output, which subsequently
serves as the input for the OR gates. ROM chips are structured in a grid
deactivated. When activated, a value of 1 is represented, with the rows and columns
individual storage element within the memory chip. The diodes permit current flow in
only one direction, with a specific forward break-over threshold, typically around 0.6
V for silicon-based components, determining the current necessary for the diode to
conduct. ROM chips may transmit a charge exceeding the forward break-over
voltage to a designated column and row, with the cell in question being grounded. In
the presence of a diode at the intersection, the charge is converted to a binary state,
with the cell being activated (or "on") and assigned a value of 1.
Covering the information about read only memory, this can conclude that a
ROM is utilized during the startup process of computers that makes the stored data
memory during startup of computers is the boot firmware, basic input/output system
or also known as “BIOS”. This software consists of code that instructs the boot-up
Read-only memory also has different types according to its functions and
lines and bit lines interconnected through transistor switches. Data in this type
through the use of fuses or anti-fuses. Once programmed, the data within
using high voltages and exposure to ultraviolet light for about 20 minutes.
microcontrollers.
it is indispensable for the storage and execution of the BIOS. Moreover, ROM serves
other functions, including basic data management, the storage of software for
fundamental utility processes, and enabling read and write operations with peripheral
devices. There are a ton more real-life applications to technology using read-only
memory.
integrity and immutability of the software are essential for proper functionality.
b. Game Consoles
Many older video game consoles utilize ROM cartridges for storing game
software, ensuring that the game can be played without the risk of data
corruption.
Figure 3.4.2. Nintendo Entertainment System
https://www.billboard.com/culture/product-recommendations/retro-gaming
c. Embedded Systems
control systems, and industrial machinery. The data within these systems is
d. Bootstrapping Devices
ROM is also employed to store the initial bootstrapping code necessary for
e. Cryptographic Systems
maintaining the integrity of the data is crucial and must be preserved without
alteration.
designs and technologies. With this, identifying the advantages and disadvantages
of ROM is practical most of all for considering its functions and operations.
ADVANTAGES DISADVANTAGES
the field of digital electronics for the realization of combinational logic circuits. It is
within its architectural framework. It integrates both memory elements and logic
predefined function and are configured for their intended operations during the
This type of digital logic circuit processes multiple input variables and
generates output signals based on the logic specified within its programmed
configuration. Unlike fixed logic circuits, PLAs offer significant flexibility, as they
enable users to define and program the interconnections between input variables,
AND gates, and OR gates to implement specific logic operations. Yet, when
(FPGA), the programmable logic array may lack efficiency in terms of speed and
cost. While in contexts of logic circuits, PLA tends to be versatile since it has a
programmable AND gate array and programmable OR gate array rather than PAL
that has programmable AND gate array but a fixed OR gate array and ROM that has
a fixed AND gate array and only OR gate array are programmable. The
however, it does not fully decode input variables or generate all possible minterms,
PLA does not involve traditional programming practices, such as using languages
like C or C++. For more in depth understanding, the block diagram of a PLA is
In figure 4.1, there are several logic gate components that are present to
create a programmable logic array. The first block includes the input buffer which is
employed to prevent the loading effect on the source driving the input signals in a
PLA. Following the process after the input buffer, the AND matrix or array will
function in PLA to generate the product terms. Then, the OR array or matrix is
utilized to generate the desired output by performing the logical OR operation on the
product terms to produce the sum terms. Next is similar to the first input buffer where
the invert or non-invert matrix is a buffer used in PLAs to set the output to active-high
or active-low. Finally, the output buffer is used at the output side. It is mainly provided
to increase the driving capability of the programmable logic array. Here in PLA, all
the minterms are not realized but only required minterms are implemented.
In the field of digital electronics, the PLAs are extensively used for designing
buffer gate, AND gate, and OR gate to generate the exact desired outputs. The
INPUTS OUTPUTS
A B Cin S Cout
0 0 0 0 0
0 0 1 1 0
0 1 0 1 0
0 1 1 0 1
1 0 0 1 0
1 0 1 0 1
1 1 0 0 1
1 1 1 1 1
In table 4, the full-adder truth table comprises three inputs and two outputs.
With three inputs, there are a total of eight product terms, as outlined in the following
truth table for the full adder. That being output S is the Sum while output Cout is the
output carry of the full-adder. While examining the truth table, forming the minterms
together can give us the output sum S=∑m(1,2,4,7) and the output carry
Figure 4.2. K-Map for Sum (S) and Carry Out (Cout)
https://www.tutorialspoint.com/digital-electronics/programmable-logic-array.htm
Given the karnaugh maps of Sum (S) and Carry Out (Cout) in figure 4.2, the
boolean expression can be determined by the placement of output “1” in the K-Map.
According to the karnaugh map of sum (S), the total number of individual
boolean expressions are 4 which are products of the inputs A, B, and Cin. Then it will
be joined by a sum operation (OR). The boolean expression for Sum (S) is
S=A’BCin’ + A’B’Cin + AB’Cin’ + ABCin. Same process for the boolean expression of
the Carry Out (Cout) having only 3 individual product expressions. Carry out (Cout)
boolean expression is therefore, Cout=AB + BCin + ACin. From these two Boolean
expressions, we can see that there are seven product terms and two sum terms.
Thus, formulating the programmable logic array program table is now possible based
1 A’BCin’ 0 1 0 1 -
2 A’B’Cin 0 0 1 1 -
3 AB’Cin’ 1 0 0 1 -
4 ABCin 1 1 1 1 -
5 AB 1 1 - - 1
6 BCin - 1 1 - 1
7 ACin 1 - 1 - 1
T T
The table 4.2 consists of the PLA program table that proves the
implementation for a full-adder circuit. In the PLA programming table, "1" signifies
the presence of a connection, whereas "-" indicates the absence of a product term in
the output. The symbol "T" represents a true value, denoting an active-high output.
programmable logic array based on the program table being a full-adder circuit.
Figure 4.3 gives the overview of the construction of the combinational logic
circuit required for making a programmable logic array specifically for full-adder
designed to implement complex digital functions, eliminating the need for discrete
components like AND gates, OR gates, and similar elements. This chapter has
1. Programmable Logic Arrays (PLAs) are employed in the field of digital signal
depends not only on the current inputs but also on the prior sequence of inputs,
output is determined solely by the present input values, sequential logic circuits
retain information about previous states, which affects their current output.
flip-flops, latches, or registers that store the system's state. Sequential logic is
circuit composed of input variables (X), logic gates (computation circuit), and output
variables (Z). The block diagram of the sequential circuit should be in this form.
Figure 5.1 deploys the block diagram of a combinational circuit that generates
an output solely based on the input variables, whereas a sequential circuit produces
an output that depends on both the current input and the previous output variables.
storing binary information. This stored binary information determines the current
state of the sequential circuit. A latch, for instance, can store one bit of information.
As shown in the figure 5.2, there are two types of input to the combinational
logic. The first is the external inputs which are not controlled by the circuit while the
second is the internal inputs which are a function of a previous output state. Lastly,
Secondary inputs are state variables produced by the storage elements, whereas
Flip Flops
information. It serves as the basic building block for most sequential circuits and is
can be derived from the combinational circuit, the flip-flop, or a combination of both.
The state of flip-flops changes during the active phase of clock pulses and remains
unchanged when the clock pulse is inactive. Specifically, clocked flip-flops act as
This stands for Set-Reset Flip Flop. It has two inputs: Set (S) and Reset (R),
and two outputs: Q and Q’ (not Q). When S is turned on, the output Q
flip-flop keeps its last state. However, having both S and R as 1 at the same
2. T Flip Flop
The T in T flip-flop stands for "Toggle." This type of flip-flop has a single input,
T, and two outputs, Q and Q'. When T is 0, the state remains unchanged.
has two inputs, J and K, along with two outputs, Q and Q'. When J is 1 and K
set to 0. If both J and K are 0, the output retains its previous state. A
4. D Flip Flop
The D in D flip-flop stands for "Data" or "Delay." This flip-flop has a single
input, D, and two outputs, Q and Q'. It is straightforward to use, as the value
response to the applied input. It is used to store a binary value, either 1 or 0, at any
given time. The latch has two inputs, labeled SET and RESET, and two outputs that
Types of Latches
1. S-R Latch
S-R latches, or Set-Reset latches, represent the most basic type of latch and
are constructed using two inputs: S (Set) and R (Reset). The S input sets the
output to 1, while the R input resets the output to 0. If both S and R inputs are
are also referred to as preset and clear states. The S-R latch serves as the
inputs: D and a clock signal. The output of the latch follows the input at the D
terminal while the clock signal is high. Once the clock signal transitions to low,
the latch stores and retains the output until the next rising edge of the clock.
3. J-K Latch
JK latch has two inputs J and K. The output gets toggled when the J and K
inputs are high. JK latch is just like SR latch, but it eliminates the undefined
state of SR latch.
capacity. By utilizing n flip-flops, a register can store an n-bit word. Thus, Register
design in sequential logic involves the creation and configuration of registers, which
are composed of flip-flops used for storing and managing data in digital systems.
synchronization.
The register design process aims to ensure that the register efficiently stores
and manages data in alignment with the specific requirements of the sequential logic
circuit, while also taking into account factors such as speed, control, and
design.
1. Selection of Flip Flops
The choice of flip-flops (D, T, JK, etc.) in the register depends on the desired
2. Clocking Mechanism
registers updating their stored data at defined intervals, usually on the rising
3. Control Inputs
Registers may include control inputs such as enable, load, clear, or reset
process must consider how these control signals interact with the flip-flops
4. Data Width
Registers can be designed for either parallel or serial data storage. Parallel
Since sequential circuits rely on the state of flip-flops, careful attention must
Registers are used to perform various types of operations, with the CPU
utilizing these registers to carry out tasks. The input data to the system is stored in
the registers, and the results produced by the system are also stored within the
registers. There are several types of registers to be executed with distinct behaviors.
The Memory Address Register (MAR) is a specialized register that holds the
instructions and data from memory during the execution phase. The MAR
stores the address of the memory location from which the CPU reads data or
2. Accumulator Register
The accumulator register is commonly used by the CPU to store the system's
results. After processing, the CPU stores all generated results in the
accumulator register.
unit. It holds the data that is either to be stored in the computer's memory or
has been fetched from memory. The MDR functions as a buffer, temporarily
storing data that the processor is ready to use. It contains a copy of the data
from memory, which is first held in the MDR before being passed to the
4. Shift Register
A digital memory circuit that stores and shifts data through a series of internal
relays or flip-flops.
Counters & Counter Design
A counter is a device that stores and sometimes displays the number of times
digital electronics, counters are used for counting purposes, tracking specific events
occurring within a circuit. For instance, in an up counter, the count increases with
to count the number of clock signals or pulses. A mod n counter counts from 0 to
counter applies the clock input only to the first flip-flop, while the clock pulses for the
intermediate or subsequent flip-flops are derived from the output of the preceding
flip-flop.
For Counter Designing, there are also key factors to consider for successful
needed. There are two classifications of counters being the asynchronous and
crucial part for designing counters since this depends on the increment and
decrement of values of the clock. And of course, the modulus which indicates the
number of distinct states it cycles through before returning to its initial state. For
flip-flops, the type of counter like up/down, binary, and the modulus or the number of
states the counter will have. These factors are essential in determining the counter's
0 1
1 3
3 4
4 5
5 7
7 0
in a sequential circuit. Table 5.4.1 on the other hand is a tabular figure of the
sequence above, since the language of sequential logic is in binary, the next process
in order to construct a counter is to set the values of the sequences which are
0 0 0 0 0 1
0 0 1 0 1 1
0 1 1 1 0 0
1 0 0 1 0 1
1 0 1 1 1 1
1 1 1 0 0 0
After stating table 5.4.2, the binary coded transition table, using a type of flip
flop is essential. For this instance, T Flip Flop will be utilized as its condition is: If
value of Q changes either from 0 to 1 or from 1 to 0 then input for T flip-flop is 1 else
Qt Qt+1 T
0 0 0
0 1 1
1 0 1
1 1 0
The next process upon completing T flip flop shown in table 5.4.3,
Constructing the input table for all T flip-flops using the excitation table of the T
flip-flop. Given that the T flip-flop operates in a toggle mode, the output Q3
represents the most significant bit, while Q1 represents the least significant bit.
T3 T2 T1
0 0 1
0 1 0
1 1 1
0 0 1
0 1 0
1 1 1
Table 5.5.4 presents the input table of flip flops for the sequence given.
Provided the plots of T3, T2, and T1, finding the value of T3, T2, T1 in terms of Q3,
themselves are solved by examining the outputs of logic 1 inside the K-Map.
Therefore, the values required for the sequence are T3=Q2, T2=Q1, & T1=Q2+Q1’.
Finally, the values given from the solutions can be formulated to design a
combinational logic circuit that can be equivalent to a sequential circuit with the
specified sequence and clock. This is the complete process of designing counters by
a given sequence.
Figure 5.4.3. Logic Circuit Diagram Equivalent
https://www.geeksforgeeks.org/design-counter-given-sequence/
arithmetic and logical operations within sequential circuits, commonly as a part of the
Central Processing Unit or CPU. The ALU is tasked with performing various
operations such as AND, OR, XOR, NOT, and comparison tasks. It also handles the
systems.
Defying the ALU in some context, it is known for being the “heart” of a
processor or CPU due to the support and function it gives to give the processor its
purpose. In certain processors, the Arithmetic Logic Unit is split into two distinct
units: an Arithmetic Unit (AU) and a Logic Unit (LU). Additionally, some processors
may feature multiple Arithmetic Units. ALU has direct input and output connections to
the processor controller, main memory (RAM & ROM), and i/o devices. Data flows
Figure 5.5.1 previews the typical schematic symbol of an arithmetic logic unit.
It is composed of 5 parts. The inputs to the ALU is the variable A & B which are also
referred to as operands while variable R is the output of the ALU. For variable F, it
represents the code or instruction from the Control Unit and lastly, variable D depicts
the Output status; it indicates cases such as carry in, carry out, overflow, division by
Typically, the Arithmetic Logic Unit comprises storage locations for input
operands, operands being processed such as those being added, the accumulated
result which is stored in an accumulator, and shifted results. The flow of bits and the
operations applied to them within the ALU's subunits are managed by gated circuits.
The ALU frequently interacts with registers (e.g., the accumulator) to receive
input data, perform computations, and store the resulting data. Registers temporarily
hold data as the ALU processes it. The operation of the ALU is managed by control
signals that specify which operation, either arithmetic or logical, it should perform,
its operations and manage the flow of data through registers and flip-flops. Its output
can depend on prior states, which are stored in the system’s registers. The ALU also
generates flag bits, such as carry, zero, sign, or overflow flags. These flags can be
Exporting multiple status codes from the ALU is essential for several
system.
1. Comparisons
Comparisons between two values are generally carried out by subtracting one
from the other. The relationship between the values can then be determined
by analyzing the resulting difference. Some conditions are stated like this: If
the first is larger than the second, the result will be positive; If the second is
larger than the first, the result will be negative; If the two are equal, the result
will be zero.
2. Zero Flag
In order to assess the equality of two values, the ALU must verify whether the
result is zero. This can be accomplished by passing each bit of the result
through a NOR gate. Notably, utilizing a single multi-port NOR gate offers a
3. Overflow Flag
two distinct flags for these conditions or by employing a single flag that is
This flag signals when an operation produces a result that exceeds the range
5. Sign Flag
A status flag that indicates the sign of the result of an arithmetic operation. It
significant bit or MSB of the result. If the result is negative, the MSB will be set
to 1, causing the sign flag to be set. Conversely, if the result is positive, the
MSB will be 0, and the sign flag will be cleared. This flag plays a crucial role in
operations.
Certain instruction sets require the CPU designer to store the ALU flags in a
dedicated "status register" and ensure that these flags can be preserved
during an interrupt routine. These sets rely on the status of the flags from
prior ALU flags; instead, they use the results of the ALU calculations within
the same instruction in which the calculations are performed. This distinction
dictates how the CPU handles and stores flag values, with some sets
flags is vital for the design of efficient and accurate computational systems.
Control Signals
that define the specific operation to be carried out. Typically, the ALU necessitates at
least three control lines, each corresponding to a bit, which collectively allow the
calculate results based on the control lines while having two 4-bits inputs.
Code Operation
000 AND
001 OR
010 X-OR
011 NOT/INVERT
100 ADD
101 SUBTRACT
functionality and proper integration within a digital system. The initial phase requires
a clear definition of the problem, specifying the desired circuit behavior, including the
visually depicts the circuit's states and transitions based on input conditions, serving
as a guide for the sequential operation of the circuit over time. The state diagram is
then converted into a state table that comprehensively lists the current states, inputs,
next states, and outputs, acting as a foundational blueprint for the circuit's design.
transitions are managed. An excitation table is then constructed for the chosen
flip-flops, outlining the required inputs to transition between states as defined in the
state table.
The next step involves deriving and simplifying Boolean expressions for the
inputs of the flip-flops and any outputs to reduce circuit complexity. These simplified
expressions are utilized to design the logic circuit by integrating the appropriate logic
gates and flip-flops to achieve the physical implementation. Verification and testing
are conducted to ensure that the circuit performs according to the initial
test outcomes. Upon successful verification, the circuit is prepared for hardware
approach ensures the sequential circuit meets its functional requirements, aligns with
State Diagram
0 1
1 3
3 4
4 5
5 7
7 0
in a sequential circuit. Table 5.4.1 on the other hand is a tabular figure of the
sequence above, since the language of sequential logic is in binary, the next process
in order to construct a counter is to set the values of the sequences which are
0 0 0 0 0 1
0 0 1 0 1 1
0 1 1 1 0 0
1 0 0 1 0 1
1 0 1 1 1 1
1 1 1 0 0 0
After stating table 5.4.2, the binary coded transition table, using a type of flip
flop is essential. For this instance, T Flip Flop will be utilized as its condition is: If
value of Q changes either from 0 to 1 or from 1 to 0 then input for T flip-flop is 1 else
Excitation Table
Qt Qt+1 T
0 0 0
0 1 1
1 0 1
1 1 0
The next process upon completing T flip flop shown in table 5.4.3,
Constructing the input table for all T flip-flops using the excitation table of the T
flip-flop. Given that the T flip-flop operates in a toggle mode, the output Q3
represents the most significant bit, while Q1 represents the least significant bit.
T3 T2 T1
0 0 1
0 1 0
1 1 1
0 0 1
0 1 0
1 1 1
Table 5.5.4 presents the input table of flip flops for the sequence given.
Provided the plots of T3, T2, and T1, finding the value of T3, T2, T1 in terms of Q3,
themselves are solved by examining the outputs of logic 1 inside the K-Map.
Therefore, the values required for the sequence are T3=Q2, T2=Q1, & T1=Q2+Q1’.
Finally, the values given from the solutions can be formulated to design a
combinational logic circuit that can be equivalent to a sequential circuit with the
specified sequence and clock. This is the complete process of designing counters by
a given sequence.
1. The state diagram is constructed using all the states of the sequential circuit
inputs need to be applied to get the required output. In other words this table
3. The excitation table is crucial for developing excitation equations, which are
then used to design the logic that drives the flip-flop inputs in the sequential
circuit. This ensures the circuit operates correctly according to the desired
Figure 5.5.3. Other Flip Flop Excitation Tables & State Diagrams
https://www.cs.umd.edu/~meesh/cmsc311/clin-cmsc311/Lectures/lecture28/
Finally, the counter design can be drawn into a logic circuit by obeying the
operations that are not coordinated by a global clock signal. The circuit is based
rather on the changes of input signals which specifies the timing of its operations.
Synchronous circuit on the other hand is performed where the operation relies on a
central clock signal, having to have its controlled and coordinated manner. The clock
signal guarantees simultaneous and regular intervals even when the circuit's state is
response to an input clock signal, allowing the next state to be reached. This
synchronization with a common clock signal ensures that all internal state transitions
occur at the same time, enhancing reliability and reducing the likelihood of issues
Generally, flip flops are a kind of synchronous circuit. Meaning, any type of flip
example, the J-K Flip Flop excitation table will be used. As for J-K flip flop
excitations, If J=1 and K=0, set the flip-flop to 1, while if J=0 and K=1, reset the
flip-flop to 0, when J=1 and K=1, the flip-flop toggles and if J=0 and K=0, there's no
change .
0 0 0 0
0 1 1 x
1 0 x 1
1 1 0 0
with a universal clock signal and may not transition simultaneously to reach the next
stable internal state. Any change in input can lead to alterations in the internal state,
potentially causing issues such as race conditions and other related problems. This
The asynchronous sequential circuit in terms of logic circuits may consist and
feedback loop broken, a flow table can be implemented according to the operations
NEXT
STATE
00 01 11 10
0 0 1 1 0
1 1 1 0 0
REFERENCES