iterative versus sequential circuits
DESCRIPTION
Iterative Versus Sequential Circuits. Iterative Versus Sequential Circuits. Iterative Versus Sequential Circuits. Synchronous Design Methodology. Synchronous systems – all flip-flops are clocked by the same common clock. To ensure reliable operation: - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Iterative Versus Sequential Circuits](https://reader033.vdocuments.us/reader033/viewer/2022061520/56815922550346895dc64ae1/html5/thumbnails/1.jpg)
Iterative Versus Sequential Circuits
![Page 2: Iterative Versus Sequential Circuits](https://reader033.vdocuments.us/reader033/viewer/2022061520/56815922550346895dc64ae1/html5/thumbnails/2.jpg)
Iterative Versus Sequential Circuits
![Page 3: Iterative Versus Sequential Circuits](https://reader033.vdocuments.us/reader033/viewer/2022061520/56815922550346895dc64ae1/html5/thumbnails/3.jpg)
Iterative Versus Sequential Circuits
![Page 4: Iterative Versus Sequential Circuits](https://reader033.vdocuments.us/reader033/viewer/2022061520/56815922550346895dc64ae1/html5/thumbnails/4.jpg)
Synchronous Design Methodology Synchronous systems – all flip-flops
are clocked by the same common clock.
To ensure reliable operation: Minimize and determine the amount of
clock skew in the system. Ensure that flip-flops have positive setup
and hold time margins, including allowance for clock skew.
Identify asynchronous inputs and synchronize them with the clock. Ensure that the synchronizers have low probability of failure.
![Page 5: Iterative Versus Sequential Circuits](https://reader033.vdocuments.us/reader033/viewer/2022061520/56815922550346895dc64ae1/html5/thumbnails/5.jpg)
Clock Skew
Difference between arrival times of the clock at different devices.
![Page 6: Iterative Versus Sequential Circuits](https://reader033.vdocuments.us/reader033/viewer/2022061520/56815922550346895dc64ae1/html5/thumbnails/6.jpg)
Clock Skew
![Page 7: Iterative Versus Sequential Circuits](https://reader033.vdocuments.us/reader033/viewer/2022061520/56815922550346895dc64ae1/html5/thumbnails/7.jpg)
Asynchronous Inputs Synchronizer – circuit that samples an
asynchronous input and produces an output that meets the setup and hold times required in a synchronous system.
![Page 8: Iterative Versus Sequential Circuits](https://reader033.vdocuments.us/reader033/viewer/2022061520/56815922550346895dc64ae1/html5/thumbnails/8.jpg)
Asynchronous Inputs
![Page 9: Iterative Versus Sequential Circuits](https://reader033.vdocuments.us/reader033/viewer/2022061520/56815922550346895dc64ae1/html5/thumbnails/9.jpg)
Asynchronous Inputs
![Page 10: Iterative Versus Sequential Circuits](https://reader033.vdocuments.us/reader033/viewer/2022061520/56815922550346895dc64ae1/html5/thumbnails/10.jpg)
Synchronous System Structure
![Page 11: Iterative Versus Sequential Circuits](https://reader033.vdocuments.us/reader033/viewer/2022061520/56815922550346895dc64ae1/html5/thumbnails/11.jpg)
Design Example Shift and add multiplier
MPY/LPROD – Initially stores the multiplier, and accumulates the low-order bits of the product.
HPROD – Initially cleared, and stores the high-order bits of the product.
MCND – Stores the multiplicand.
If low-order bit of MPY/LPROD
Is 1 then F = 9-bit sum of HPROD and MCND.
Is 0 then F = HPROD extended to 9 bits.
![Page 12: Iterative Versus Sequential Circuits](https://reader033.vdocuments.us/reader033/viewer/2022061520/56815922550346895dc64ae1/html5/thumbnails/12.jpg)
Design Example LDMCND_L=0 enables the
multiplicand register U1 to be loaded.
LDHP_L=0 enables the HPROD register U6 to be loaded.
MPSY[1,0] = 11 enables the MPY/LPROD
register U2 to be loaded. = 01 it shifts right during
multiplication. = 00 at other time to preserve
register content. SELSUM=1 multiplexers U7 and
U8 select adders U4 and U5 output otherwise it selects HPROD.
CLEAR=1 the output of multiplexers U7 and U8 is cleared.
![Page 13: Iterative Versus Sequential Circuits](https://reader033.vdocuments.us/reader033/viewer/2022061520/56815922550346895dc64ae1/html5/thumbnails/13.jpg)
Design Example LDMCND_L=0 enables the
multiplicand register U1 to be loaded.
LDHP_L=0 enables the HPROD register U6 to be loaded.
MPSY[1,0] = 11 enables the MPY/LPROD
register U2 to be loaded. = 01 it shifts right during
multiplication. = 00 at other time to preserve
register content. SELSUM=1 multiplexers U7 and
U8 select adders U4 and U5 output otherwise it selects HPROD.
CLEAR=1 the output of multiplexers U7 and U8 is cleared.
![Page 14: Iterative Versus Sequential Circuits](https://reader033.vdocuments.us/reader033/viewer/2022061520/56815922550346895dc64ae1/html5/thumbnails/14.jpg)
Design Example
![Page 15: Iterative Versus Sequential Circuits](https://reader033.vdocuments.us/reader033/viewer/2022061520/56815922550346895dc64ae1/html5/thumbnails/15.jpg)
Algorithmic State Machines - ASM Partition the system into two parts:
Controller - ASM. Controlled architecture – data processor.
![Page 16: Iterative Versus Sequential Circuits](https://reader033.vdocuments.us/reader033/viewer/2022061520/56815922550346895dc64ae1/html5/thumbnails/16.jpg)
ASM
Algorithm is a well defined procedure consisting of a finite number of steps to the solution of a problem.
Controller is a hardware algorithm or Algorithmic State Machine.
ASMs can serve as stand-alone sequential network model.
![Page 17: Iterative Versus Sequential Circuits](https://reader033.vdocuments.us/reader033/viewer/2022061520/56815922550346895dc64ae1/html5/thumbnails/17.jpg)
ASM Conditional outputs – Mealy model. State outputs – Moore model. State time:
Transition period. Stable period.
![Page 18: Iterative Versus Sequential Circuits](https://reader033.vdocuments.us/reader033/viewer/2022061520/56815922550346895dc64ae1/html5/thumbnails/18.jpg)
ASM State box.
Represents one state in the ASM.
May have an optional state output list.
Single entry. Single exit to
state or decision boxes.
![Page 19: Iterative Versus Sequential Circuits](https://reader033.vdocuments.us/reader033/viewer/2022061520/56815922550346895dc64ae1/html5/thumbnails/19.jpg)
ASM Decision box.
Provides for next alternatives and conditional outputs.
Conditional output based on logic value of Boolean expression involving external input variables and status information.
Single entry. Dual exit, denoting if
Boolean expression is true or false.
Exits to decision, state or conditional boxes.
![Page 20: Iterative Versus Sequential Circuits](https://reader033.vdocuments.us/reader033/viewer/2022061520/56815922550346895dc64ae1/html5/thumbnails/20.jpg)
ASM Conditional output
box. Provides a listing of
output variables that are to have a value logic-1, i.e., those output variables being asserted.
Single entry from decision box.
Single exit to decision or state box.
![Page 21: Iterative Versus Sequential Circuits](https://reader033.vdocuments.us/reader033/viewer/2022061520/56815922550346895dc64ae1/html5/thumbnails/21.jpg)
ASM Blocks Consists of the interconnection of a
single state box along with one or more decision and/or conditional boxes.
It has one entry path which leads directly to its state box, and one or more exit pathes.
Each exit path must lead directly to a state, including the state box in itself.
A path through an ASM block from its state box to an exit path is called a link path.
![Page 22: Iterative Versus Sequential Circuits](https://reader033.vdocuments.us/reader033/viewer/2022061520/56815922550346895dc64ae1/html5/thumbnails/22.jpg)
ASM Block Example
![Page 23: Iterative Versus Sequential Circuits](https://reader033.vdocuments.us/reader033/viewer/2022061520/56815922550346895dc64ae1/html5/thumbnails/23.jpg)
ASM Blocks An ASM block describes the operation of the
system during the state time in which it is in the state associated with the block.
The outputs listed in the state box are asserted.
The conditions indicated in the decision boxes are evaluated simultaneously to determine which link path is to be followed.
If a conditional box is found in the selected path then the outputs found in its output list are asserted.
Boolean expression may be written for each link path. The selected link paths are those that evaluate to logic-1.
![Page 24: Iterative Versus Sequential Circuits](https://reader033.vdocuments.us/reader033/viewer/2022061520/56815922550346895dc64ae1/html5/thumbnails/24.jpg)
ASM Blocks