Professional Documents
Culture Documents
Unit1 and Unit2 PDF
Unit1 and Unit2 PDF
Unit1 and Unit2 PDF
1
Subject Evaluation Procedure
5 Marks : Attendance
2
Unit 1 : Basics of Digital Electronics
Introduction
Logic Gates
Flip Flops
Decoder
Encoder
Multiplexers
Demultiplexer
3
4
5
6
7
8
9
Combinational Circuits
• No feedback paths
• No memory
• Combinational circuit is a connected
arrangement of logic gates with set of inputs
and outputs.
• Binary values of outputs are a function of
binary combination of inputs.
10
Sequential Circuits
• Feedback paths exist
• Memory present
• 2 Types- Synchronous and Asynchronous
• Synchronous seq circuits employ signals that
effect storage elements only at discrete
instants of time.
• Synchronization is achieved with help of
device called clock.
11
12
13
14
15
Integrated Circuits
16
17
CSE211
1
Unit 1 : Basics of Digital Electronics
Introduction
Logic Gates
Flip Flops
Decoder
Encoder
Multiplexers
Demultiplexer
Registers
2
3
4
5
A Demultiplexer, sometimes abbreviated DMUX is a circuit that has
one input and more than one output. It is used when a circuit wishes
to send a signal to one of many devices
6
7
When the load input is 1 , the
data in the four inputs are
transferred into the register with
the next positive transition of a
clock pulse
8
9
10
11
Register Transfer and Micro-operations
Overview
Register Transfer
Logic Micro-operations
Shift Micro-operations
CSE 211
Register Transfer and Micro-operations 2
CSE 211
Register Transfer and Micro-operations 3
CSE 211
Register Transfer and Micro-operations 4
For any function of the computer, the register transfer language can be
used to describe the (sequence of) micro-operations
CSE 211
Register Transfer and Micro-operations 5
MAR
CSE 211
Register Transfer and Micro-operations 6
• Designation of a register
- a register
- portion of a register
- a bit of a register
15 0 15 8 7 0
R2 PC(H) PC(L)
Numbering of bits Subfields
CSE 211
Register Transfer and Micro-operations 7
R2 ← R1
CSE 211
Register Transfer and Micro-operations 8
R3 ← R5
– the data lines from the source register (R5) to the destination
register (R3)
– Parallel load in the destination register (R3)
– Control lines to perform the action
CSE 211
Register Transfer and Micro-operations 9
Control Functions
P: R2 ← R1
CSE 211
Register Transfer and Micro-operations 10
Load
Transfer occurs here
The same clock controls the circuits that generate the control function and the
destination register
Registers are assumed to use positive-edge-triggered flip-flops
CSE 211
Register Transfer and Micro-operations 11
CSE 211
Register Transfer and Micro-operations 1
Overview
Register Transfer
Logic Micro-operations
Shift Micro-operations
CSE 211
Register Transfer and Micro-operations 2
BUS STRUCTURE CONSISTS OF SET OF COMMON LINES, ONE FOR EACH BIT
OF A REGISTER THROUGH WHICH BINARY INFORMATION IS TRANSFERRED
ONE AT A TIME
Have control circuits to select which register is the source, and which is the
destination
CSE 211
Register Transfer and Micro-operations 3
CSE 211
Register Transfer and Micro-operations 4
CSE 211
Register Transfer and Micro-operations 5
MUX
CSE 211
Register Transfer and Micro-operations 6
CSE 211
Register Transfer and Micro-operations 7
CSE 211
Register Transfer and Micro-operations 8
CSE 211
Register Transfer and Micro-operations 9
Memory - RAM
Memory (RAM) can be thought as a sequential circuits containing
some number of registers
Memory stores binary information in groups of bits called words
These registers hold the words of memory
Each of the r registers is indicated by an address
These addresses range from 0 to r-1
Each register (word) can hold n bits of data
Assume the RAM contains r = 2k words. It needs the following
data input lines
1. n data input lines
2. n data output lines n
Memory Transfer
Memory is usually accessed in computer systems by putting the desired
address in a special register, the Memory Address Register (MAR, or AR)
M
Memory Read
AR
unit Write
CSE 211
Register Transfer and Micro-operations 11
Memory Read
R1 ← M[MAR]
CSE 211
Register Transfer and Micro-operations 12
Memory Write
M[MAR] ← R1
CSE 211
Register Transfer and Micro-operations 13
CSE 211
Register Transfer and Micro-operations 14
MICROOPERATIONS
CSE 211
Register Transfer and Micro-operations 15
Arithmetic MICROOPERATIONS
• The basic arithmetic microoperations are
– Addition
– Subtraction
– Increment
– Decrement
CSE 211
Register Transfer and Micro-operations 1
Overview
Register Transfer
Arithmetic Micro-operations
Logic Micro-operations
Shift Micro-operations
CSE 211
Register Transfer and Micro-operations 2
MICROOPERATIONS
CSE 211
Register Transfer and Micro-operations 3
Arithmetic MICROOPERATIONS
• The basic arithmetic microoperations are
– Addition
– Subtraction
– Increment
– Decrement
CSE 211
Register Transfer and Micro-operations 4
Binary Adder
CSE 211
Register Transfer and Micro-operations 5
Binary Adder-Subtractor
Binary Adder-Subtractor
B3 A3 B2 A2 B1 A1 B0 A0
C3 C2 C1 C0
FA FA FA FA
C4 S3 S2 S1 S0
CSE 211
Register Transfer and Micro-operations 6
Binary Incrementer
Binary Incrementer
A3 A2 A1 A0 1
x y x y x y x y
HA HA HA HA
C S C S C S C S
C4 S3 S2 S1 S0
CSE 211
Register Transfer and Micro-operations 7
Arithmetic Circuits
Cin
S1
S0
A0 X0 C0
S1 D0
S0
Y0
FAC1
B0 0
1 4x1
2
3
MUX
A1 X1 C1
S1 D1
S0 FA
Y1
B1 0
1 4x1 C2
2
3
MUX
A2 X2 C2
S1 D2
S0 FA
B2 0
1 4x1 Y2 C3
2
3
MUX
A3 X3 C3
S1 D3
S0 FA
B3 0
1 4x1 Y3 C4
2
3
MUX Cout
0 1
CSE 211
Register Transfer and Micro-operations 1
Overview
Register Transfer
Arithmetic Micro-operations
Logic Micro-operations
Shift Micro-operations
CSE 211
Register Transfer and Micro-operations 2
CSE 211
Register Transfer and Micro-operations 3
Logic Microoperations
CSE 211
Register Transfer and Micro-operations 4
Hardware Implementation
Ai
0
Bi
1
4X1 Fi
MUX
2
3 Select
S1
S0
Function table
S1 S0 Output µ-operation
0 0 F=A∧B AND
0 1 F=A∨B OR
1 0 F=A⊕B XOR
1 1 F = A’ Complement
CSE 211
Register Transfer and Micro-operations 5
Selective-set A←A+B
Selective-complement A←A⊕B
Selective-clear A ← A • B’
Mask (Delete) A←A•B
Clear A←A⊕B
Insert A ← (A • B) + C
Compare A←A⊕B
CSE 211
Register Transfer and Micro-operations 6
1 1 0 0 At
1010 B
1 1 1 0 At+1 (A ← A + B)
0 1 1 0 At+1 (A ← A ⊕ B)
If a bit in B is set to 1, that same position in A gets complemented from its
original value, otherwise it is unchanged
CSE 211
Register Transfer and Micro-operations 7
0 1 0 0 At+1 (A ← A ⋅ B’)
If a bit in B is set to 1, that same position in A gets set to 0, otherwise it is
unchanged
4. In a mask operation, the bit pattern in B is used to clear certain bits in A
1 1 0 0 At
1010 B
1 0 0 0 At+1 (A ← A ⋅ B)
CSE 211
Register Transfer and Micro-operations 8
0 1 1 0 At+1 (A ← A ⊕ B)
CSE 211
Register Transfer and Micro-operations 9
CSE 211
Register Transfer and Micro-operations 10
Shift Microoperations
• There are three types of shifts
– Logical shift
– Circular shift
– Arithmetic shift
• What differentiates them is the information that goes into the serial input
Serial
input
CSE 211
Register Transfer and Micro-operations 11
Logical Shift
• In a logical shift the serial input to the shift is a 0.
Circular Shift
• In a circular shift the serial input is the bit that is shifted out of the other
end of the register.
CSE 211
Register Transfer and Micro-operations 13
Arithmetic Shift
• An arithmetic shift is meant for signed binary numbers (integer)
• An arithmetic left shift multiplies a signed number by two
• An arithmetic right shift divides a signed number by two
• Sign bit : 0 for positive and 1 for negative
• The main distinction of an arithmetic shift is that it must keep the sign of
the number the same as it performs the multiplication or division
sign
bit
CSE 211
Register Transfer and Micro-operations 14
Arithmetic Shift
• An left arithmetic shift operation must be checked for the overflow
0
sign
bit
CSE 211
Register Transfer and Micro-operations 15
CSE 211
Register Transfer and Micro-operations 16
D
Arithmetic i
Circuit
Select
0 4x1
C i+1 F
1 i
MUX S3 S2 S1 S0 Cin Operation
2 0 0 0 0 0 F=A
3 0 0 0 0 1 F=A+1
0 0 0 1 0 F=A+B
E 0 0 0 1 1 F=A+B+1
Logic i 0 0 1 0 0 F = A + B’
Bi 0 0 1 0 1 F = A + B’+ 1
Circuit 0 0 1 1 0 F=A-1
A 0 0 1 1 1 F=A
i
0 1 0 0 X F=A∧B
shr
A 0 1 0 1 X F=A∨B
i-1 0 1 1 0 X F=A⊕B
shl
A 0 1 1 1 X F = A’
i+1
1 0 X X X F = shr A
1 1 X X X F = shl A
CSE 211
Chapter 5:
Memory It’s an
ADD
operation
Op code
Control
110010?????????? Unit
Read instruction
from memory
Operands
(data)
15 0
Processor register
(Accumulator AC)
300 1350
457 Operand
1350 Operand
+ +
AC AC
15 0 4096 x 16
IR
15 0 15 0
TR DR
7 0 7 0 15 0
OUTR INPR AC
List of BC Registers
DR 16 Data Register Holds memory operand
AR 12 Address Register Holds address for memory
AC 16 Accumulator Processor register
IR 16 Instruction Register Holds instruction code
PC 12 Program Counter Holds address of next instruction
TR 16 Temporary Register Holds temporary data
INPR 8 Input Register Holds input character
OUTR 8 Output Register Holds output character
LD INR CLR
PC 2
LD INR CLR
DR 3
LD INR CLR
Adder E
and AC 4
logic
LD INR CLR
INPR
IR 5
LD
TR 6
LD INR CLR
OUTR
Clock
LD
16-bit common bus
3x8
decoder
7 6543 210
D0
I
D7 Control Control
logic outputs
gates
T15
T0
15 14 . . . . 2 1 0
4 x 16
Sequence decoder
T0
T1
T2
T3
T4
D3
CLR
SC
T1 S2
T0 S1 Bus
S0
Memory
7
unit
Address
Read
AR 1
LD
PC 2
INR
IR 5
LD Clock
Common bus
cpe 252: Computer Organization 40
Start DETERMINE THE TYPE OF INSTRUCTION
SC ← 0
T0
AR ← PC
T1
IR ← M[AR], PC ← PC + 1
T2
Decode Opcode in IR(12-14),
AR ← IR(0-11), I ← IR(15)
T3 T3 T3 T3
Execute Execute AR ← M[AR] Nothing
input-output register-reference
instruction instruction
SC ← 0 SC ← 0 Execute T4
memory-reference
instruction
SC ← 0
D'7IT3: AR ← M[AR]
D'7I'T3: Nothing
D7I'T3: Execute a register-reference instr.
D7IT3: Execute an input-output instr.
Operation
Symbol Symbolic Description
Decoder
AND D0 AC ← AC ∧ M[AR]
ADD D1 AC ← AC + M[AR], E ← Cout
LDA D2 AC ← M[AR]
STA D3 M[AR] ← AC
BUN D4 PC ← AR
BSA D5 M[AR] ← PC, PC ← AR + 1
ISZ D6 M[AR] ← M[AR] + 1, if M[AR] + 1 = 0 then PC ← PC+1
- The effective address of the instruction is in AR and was placed there during
timing signal T2 when I = 0, or during timing signal T3 when I = 1
- Memory cycle is assumed to be short enough to be completed in a CPU cycle
- The execution of MR Instruction starts with T4
AND to AC
D0T4: DR ← M[AR] Read operand
D0T5: AC ← AC ∧ DR, SC ← 0 AND with AC
ADD to AC
D1T4: DR ← M[AR] Read operand
D1T5: AC ← AC + DR, E ← Cout, SC ← 0 Add to AC and store carry in E
cpe 252: Computer Organization 43
MEMORY REFERENCE INSTRUCTIONScont.
LDA: Load to AC
D2T4: DR ← M[AR]
D2T5: AC ← DR, SC ← 0
STA: Store AC
D3T4: M[AR] ← AC, SC ← 0
BUN: Branch Unconditionally
D4T4: PC ← AR, SC ← 0
BSA: Branch and Save Return Address
M[AR] ← PC, PC ← AR + 1
Memory, PC, AR at time T4 Memory, PC after execution
20 0 BSA 135 20 0 BSA 135
Return address: PC = 21 Next instruction 21 Next instruction
AR = 135 135 21
136 Subroutine PC = 136 Subroutine
D0 T 4 D1 T 4 D2 T 4 D 3T 4
D0 T 5 D1 T 5 D2 T 5
AC AC ∧ DR AC AC + DR AC DR
SC <- 0 E Cout SC 0
SC 0
D4 T 4 D5 T 4 D6 T 4
PC AR M[AR] PC DR M[AR]
SC 0 AR AR + 1
D5 T 5 D6 T 5
PC AR DR DR + 1
SC 0
D6 T 6
M[AR] DR
If (DR = 0)
then (PC PC + 1)
SC 0
AC
Transmitter
Keyboard interface INPR FGI