ECE 352 Digital System Fundamentals

Slides:



Advertisements
Similar presentations
Computer Organization, Bus Structure
Advertisements

Registers and Counters
Control path Recall that the control path is the physical entity in a processor which: fetches instructions, fetches operands, decodes instructions, schedules.
Lab 09 :D Flip Flop, Shift Registers and Switch Bounce: Slide 2 Slide 3 The D Flip Flop. 4-Bit Shift Register. Slide 4 Shift Register De-bounce System:
Sequential Circuits A Basic sequential circuit is nothing but a combinational circuit with some feedback paths between its output and input terminals.
Henry Hexmoor1 Chapter 7 Henry Hexmoor Registers and RTL.
The Logic Machine We looked at programming at the high level and at the low level. The question now is: How can a physical computer be built to run a program?
ENGIN112 L26: Shift Registers November 3, 2003 ENGIN 112 Intro to Electrical and Computer Engineering Lecture 26 Shift Registers.
REGISTER A Register is a group of binary storage cells suitable for holding binary information. A group of flip-flops constitutes a register, since each.
Counters and Registers
Sequential Circuits Chapter 4 S. Dandamudi To be used with S. Dandamudi, “Fundamentals of Computer Organization and Design,” Springer,  S.
Registers CPE 49 RMUTI KOTAT.
1 Registers and Counters A register consists of a group of flip-flops and gates that affect their transition. An n-bit register consists of n-bit flip-flops.
Rabie A. Ramadan Lecture 3
EKT 221/4 DIGITAL ELECTRONICS II  Registers, Micro-operations and Implementations - Part3.
SEQUENTIAL CIRCUITS Component Design and Use. Register with Parallel Load  Register: Group of Flip-Flops  Ex: D Flip-Flops  Holds a Word of Data 
REGISTER A register is a group of flip-flops. Each flip- flop is capable of storing one bit of informa­ tion. An n-bit register consists of a group of.
Abdullah Said Alkalbani University of Buraimi
Lecture 21: Registers and Counters (1)
EKT 221 : Digital 2 Serial Transfers & Microoperations Date : Lecture : 2 hr.
CO5023 Latches, Flip-Flops and Decoders. Sequential Circuit What does this do? The OUTPUT of a sequential circuit is determined by the current output.
REGISTER TRANSFER LANGUAGE (RTL) INTRODUCTION TO REGISTER Registers1.
ECEN 248: INTRODUCTION TO DIGITAL SYSTEMS DESIGN Dr. Shi Dept. of Electrical and Computer Engineering.
Counters and registers Eng.Maha Alqubali. Registers Registers are groups of flip-flops, where each flip- flop is capable of storing one bit of information.
Sequential Logic Design
Combinational circuits
EKT 221 : Digital 2 Serial Transfers & Microoperations
REGISTER TRANSFER LANGUAGE (RTL)
Registers and Counters
Chap 7. Register Transfers and Datapaths
EKT 221 : Digital 2 Serial Transfers & Microoperations
Counters Next, we’ll look at different kinds of counters and discuss how to build them. These are not only examples of sequential analysis and design,
Basics of digital systems
Lecture 16 Arithmetic Circuits
Multipliers Multipliers play an important role in today’s digital signal processing and various other applications. The common multiplication method is.
3.2 Shift Register Basic shift register function
Digital System Design Review.
Registers and Counters
Registers and Counters Register : A Group of Flip-Flops. N-Bit Register has N flip-flops. Each flip-flop stores 1-Bit Information. So N-Bit Register Stores.
Interfacing Memory Interfacing.
Chapter 4 Gates and Circuits.
COE 202: Digital Logic Design Sequential Circuits Part 4
Datapaths For the rest of the semester, we’ll focus on computer architecture: how to assemble the combinational and sequential components we’ve studied.
ECEN 248: INTRODUCTION TO DIGITAL SYSTEMS DESIGN
Computer Architecture and Organization: L02: Logic design Review
Fundamentals of Data Representation
Counters Next, we’ll look at different kinds of counters and discuss how to build them. These are not only examples of sequential analysis and design,
ECE 352 Digital System Fundamentals
ECE 352 Digital System Fundamentals
ECE 352 Digital System Fundamentals
Digital Logic Department of CNET Chapter-6
ECE 352 Digital System Fundamentals
ECE 352 Digital System Fundamentals
ECE 352 Digital System Fundamentals
ECE 352 Digital System Fundamentals
ECE 352 Digital System Fundamentals
ECE 352 Digital System Fundamentals
ECE 352 Digital System Fundamentals
Outline Registers Counters 5/11/2019.
ECE 352 Digital System Fundamentals
Registers and Counters
Reference Chapter 7 Moris Mano 4th Edition
Shift registers and Floating Point Numbers
EGR 2131 Unit 12 Synchronous Sequential Circuits
Counters Next, we’ll look at different kinds of counters and discuss how to build them. These are not only examples of sequential analysis and design,
Registers Today we’ll see some common sequential devices: counters and registers. They’re good examples of sequential analysis and design. They are also.
ECE 352 Digital System Fundamentals
Shift registers and Floating Point Numbers
ECE 352 Digital System Fundamentals
ECE 352 Digital System Fundamentals
Presentation transcript:

ECE 352 Digital System Fundamentals Serial Transfers In this presentation, we will look at a different way of transferring and processing information.

Serial Transfers The register transfer operations we have seen so far have been parallel All bits in a register (the data word) are transferred and/or operated on at once An alternative is use a serial approach In a serial transfer, a data word is transferred one bit at a time, eventually transferring the entire data word A serial operation is performed on one bit of the data word at a time, eventually completing the operation on the entire data word In the register circuits we’ve looked at so far, all operations have been done in parallel – that is, they have operated on all bits of the operands simultaneously. Alternatively, we can perform operations on only one bit position at a time. In a serial data transfer, a word is transferred from one register to another one bit at a time, until the entire word has been transferred. In a serial operation, the operation is performed on one bit of a data word at a time, until the operation has been completed on all bits.

Why Do It Serially? A serial data transfer reduces the number of interconnections between registers Data can be transferred between n-bit registers using a single data connection instead of n data connections For transfers between devices, this reduces the number of interconnections between device and the number of pins required on the devices Serial operations reduce the hardware costs For example, an n-bit addition can be completed with only a single full adder So why do something serially? One reason is to use a single bit connection to transfer N bits of data, instead of using N connections to transfer the data in parallel. This reduces the number of pins per device, and the number of interconnections between those devices. In a world full of very small and complex electronic devices, reducing the pins and connections is often crucial to achieving a small final product. Another advantage is that we can complete an operation with fewer hardware resources, such as doing an N-bit addition with only a single full adder. This helps to reduce the size of a circuit because there are fewer gates.

At What Cost? The trade-off is speed Of course, if the data is being transferred serially, operating on it serially isn’t any slower In reality, it is even more complicated… A serial operation takes longer than the corresponding parallel operation n 1-bit transfers versus a single n-bit transfer n 1-bit additions versus a single n-bit addition Serial data transfers and operations are appropriate when reduced speed is not an issue, or other factors are more important Serial data transfers are extremely common in practice But as you should have already noticed, most improvements are actually trade-offs, where we improve one parameter at the expense of others. The primary cost is in speed – we are doing things in sequence instead of all at once. Sometimes this isn’t an issue, such as when we serially process data that is also received serially. The reality of trading off serial versus parallel operations is actually even more complicated, but those issues will wait for another course. In general, a serial operation on an N bit word requires N small operations instead of a single, larger, parallel operation. Serial operations are a good choice when speed is not the dominant factor, or other factors are more important. In fact, serial data transfers are extremely common in circuit design.

Serial Transfer Example Shift registers are used at both ends The same clock must be used at both ends! Load the parallel data into the source shift register Simultaneously shift data out of the source register and into the destination register After n clock cycles, the parallel data can be read from the destination shift register What’s missing? A simple circuit to do a serial data transfer consists of two N-bit shift registers. Note that both shift registers must use the same clock, or it becomes a MUCH more complicated problem. The source shift register, also called the transmit shift register or TSR, is loaded in parallel with the complete N-bit data word that will be transferred. Then, on each clock edge, the data is shifted out of the TSR and into the receive shift register, or RSR. After N clocks, the N-bit data word can be read from the parallel output of the RSR. Now that you’ve seen the basic idea, have you noticed what’s missing to make it useful? Well, the RSR does not know when the TSR loaded the data word, so it doesn’t know when the transferred word begins or ends. We need a signal to notify the receive end when the data is valid. Every serial communication scheme must have some way to identify when a complete word has been received.

Serial Operation Example Use one full adder to perform an n-bit addition Load the operands into two n-bit shift registers Do the addition one bit at a time, starting from the least significant bit Need to know the carry from the previous addition Shift the operands right one bit at each clock Store each bit of the result in a shift register, shifting in at the most significant bit Can use an operand register to store the result! After n clocks, addition is complete and the result is available in the shift register What happens when we perform an operation serially? Let’s look at serial addition as an example of a serial operation. We’ll use a single full adder to compute the sum of two N-bit operands. We begin by parallel loading the two operands into two shift registers. We then send the least significant bit of each operand register to the full adder. At each clock, we shift the operands right, so the next bit is sent to the adder, along with the carry-out that we saved from the PREVIOUS bit’s addition. As each bit of the result is generated, we store it in a shift register, shifting in at the most significant bit. We can even use one of the operand registers to hold the result, since as we shift the operand out of the register, it makes room for the result. After N clocks, the operation is complete, and the sum of the operands is now available in the register into which it was shifted.

Serial Adder Circuit Use one full adder to perform an n-bit addition Load the operands into two n-bit shift registers Now, let’s look at the serial adder circuit. The circuit has a single full adder. The A and B inputs of the adder are connected to the least significant bits of the shift registers. The operation begins by loading two operands into the shift registers. While the LD signal is asserted to load the registers, the SH signal is NOT asserted. When SH is 0, the carry flip-flop reset signal is asserted, so the carry-in to the first addition will be 0. 1

Serial Adder Circuit Do the addition one bit at a time, starting from the least significant bit Once the operands are loaded, we assert the SH signal to do the addition one bit at a time. Asserting SH also releases the reset signal on the carry flip-flop. One bit comes from each shift register, and the carry-in comes from the carry flip-flop.

Serial Adder Circuit Store each bit of the result in a shift register, shifting in at the most significant bit The sum and carry results are computed for the current bit position. The sum bit is right-shifted into one of the shift registers that initially holds one of the operands. It enters at the most significant bit. The carry bit is stored into the carry flip-flop, so it will be available for the next bit of the operation.

Serial Adder Circuit After n clocks, addition is complete and the result is available in the shift register When the circuit has been clocked N times, all N bits of the operands have been shifted out of the shift registers, and the N-bit result has been shifted in. The full sum word is then available at the circuit output.

Serial Adder Circuit So, how do you control this circuit? Design a control unit FSM! This circuit is in fact a simple datapath capable of doing serial addition, but something needs to tell it what to do and when. So, we would need to create a control unit to determine when to do an operation, control the datapath during the operation, and provide an additional output that indicates when the SUM output is valid.

ECE 352 Digital System Fundamentals Serial Transfers This video demonstrated how we can serially transfer and process data to reduce the area and connectivity requirements of our circuits.