Presentation is loading. Please wait.

Presentation is loading. Please wait.

ECE 434 Advanced Digital System L11

Similar presentations


Presentation on theme: "ECE 434 Advanced Digital System L11"— Presentation transcript:

1 ECE 434 Advanced Digital System L11
Electrical and Computer Engineering University of Western Ontario

2 Outline Review: VHDL Functions, Procedures, Packages & Libraries
Networks for Arithmetic Operations Serial Adder with Accumulator Serial-Parallel Multiplier 23/02/2019

3 Review: VHDL Functions
Functions execute a sequential algorithm and return a single value to calling program A = “ ” General form 23/02/2019

4 Review: For Loops Should not be explicitly declared
Can be used inside the loop, but cannot be changed 23/02/2019

5 Review: VHDL Procedures
Facilitate decomposition of VHDL code into modules Procedures can return any number of values using output parameters General form procedure procedure_name (formal-parameter-list) is [declarations] begin Sequential-statements end procedure_name; procedure_name (actual-parameter-list); 23/02/2019

6 Review: Packages and Libraries
Provide a convenient way of referencing frequently used functions and components Package declaration Package body [optional] 23/02/2019

7 Review: VHDL Model for a 74163 Counter
74163 – 4-bit fully synchronous binary counter Counter operations Generate a Cout in state 15 if T=1 Cout = Q3Q2Q1Q0T 23/02/2019

8 Review: VHDL Model for a 74163 Counter
23/02/2019

9 Cascaded Counters 23/02/2019

10 Cascaded Counters (cont’d)
23/02/2019

11 Networks for Arithmetic Operations
Case Study: Serial Adder with Accumulator 23/02/2019

12 Networks for Arithmetic Operations
Serial Adder with Accumulator 23/02/2019

13 State Graphs for Control Networks
Use variable names instead of 0s and 1s E.g., XiXj/ZpZq if Xi and Xj inputs are 1, the outputs Zp and Zq are 1 (all other outputs are 0s) E.g., X = X1X2X3X4, Z = Z1Z2Z3Z4 X1X4’/Z2Z3 == / 23/02/2019

14 Constraints on Input Labels
Assume: I – input expression => we traverse the arc when I=1 Assures that at most one input label can be 1 at any given time Assures that at least one input label will be 1 at any given time 1 + 2: Exactly one label will be 1 => the next state will be uniquely defined for every input combination 23/02/2019

15 Constraints on Input Labels (cont’d)
23/02/2019

16 Networks for Arithmetic Operations
Case Study: Serial Parallel Multiplier Note: we use unsigned binary numbers 23/02/2019

17 Block Diagram of a Binary Multiplier
Ad – add signal // adder outputs are stored into the ACC Sh – shift signal // shift all 9 bits to right Ld – load signal // load multiplier into the 4 lower bits of the ACC and clear the upper 5 bits 23/02/2019

18 Multiplication Example
23/02/2019

19 State Graph for Binary Multiplier
23/02/2019

20 Behavioral VHDL Model 23/02/2019

21 Behavioral VHDL Model (cont’d)
23/02/2019

22 Multiplier Control with Counter
Current design: control part generates the control signals (shift/add) and counts the number of steps If the number of bits is large (e.g., 64), the control network can be divided into a counter and a shift/add control 23/02/2019

23 Multiplier Control with Counter (cont’d)
Counter generates a completion signal K that stops the multiplier after the proper number of shifts have been completed 23/02/2019

24 Multiplier Control with Counter (cont’d)
23/02/2019

25 Operation of a Multiplier Using Counter
23/02/2019

26 Array Multiplier 23/02/2019

27 Array Multiplier (cont’d)
23/02/2019

28 Multiplication of Signed Binary Numbers
How to multiply signed binary numbers? Procedure Complement the multiplier if negative Complement the multiplicand if negative Multiply two positive binary numbers Complement the product if it should be negative Simple but requires more hardware and time than other available methods 23/02/2019

29 Multiplication of Signed Binary Numbers
Four cases Multiplicand is positive, multiplier is positive Multiplicand is negative, multiplier is positive Multiplicand is positive, multiplier is negative Multiplier is negative, multiplicand is negative 23/02/2019

30 To Do Read chapters 4.1, 4.2, 4.3 Do homework #3 23/02/2019


Download ppt "ECE 434 Advanced Digital System L11"

Similar presentations


Ads by Google