Shannon decomposition William Sandqvist Claude Shannon mathematician / electrical engineer (1916 –2001) William Sandqvist

Slides:



Advertisements
Similar presentations
1 Lecture 13 VHDL 3/16/09. 2 VHDL VHDL is a hardware description language. The behavior of a digital system can be described (specified) by writing a.
Advertisements

©2004 Brooks/Cole FIGURES FOR CHAPTER 9 MULTIPLEXERS, DECODERS, AND PROGRAMMABLE LOGIC DEVICES Click the mouse to move to the next page. Use the ESC key.
02/02/20091 Logic devices can be classified into two broad categories Fixed Programmable Programmable Logic Device Introduction Lecture Notes – Lab 2.
FPGAs and VHDL Lecture L12.1. FPGAs and VHDL Field Programmable Gate Arrays (FPGAs) VHDL –2 x 1 MUX –4 x 1 MUX –An Adder –Binary-to-BCD Converter –A Register.
1/31/20081 Logic devices can be classified into two broad categories Fixed Programmable Programmable Logic Device Introduction Lecture Notes – Lab 2.
Multiplexers, Decoders, and Programmable Logic Devices
ECE 448 Lecture 3 Combinational-Circuit Building Blocks Data Flow Modeling of Combinational Logic ECE 448 – FPGA and ASIC Design with VHDL.
George Mason University ECE 448 – FPGA and ASIC Design with VHDL Combinational-Circuit Building Blocks Data Flow Modeling of Combinational Logic ECE 448.
Combinational Logic1 DIGITAL LOGIC DESIGN by Dr. Fenghui Yao Tennessee State University Department of Computer Science Nashville, TN.
ECE 331 – Digital System Design Single-bit Adder Circuits and Adder Circuits in VHDL (Lecture #12) The slides included herein were taken from the materials.
ECE 331 – Digital System Design
ECE 331 – Digital System Design
AND Gate: A Logic circuit whose output is logic ‘1’ if and only if all of its inputs are logic ‘1’.
Figure to-1 Multiplexer and Switch Analog
Data Flow Modeling of Combinational Logic Simple Testbenches
Combinational Logic Design
Designing with FPGAs ELEC 418 Advanced Digital Systems Dr. Ron Hayne Images Courtesy of Thomson Engineering.
Unit 9 Multiplexers, Decoders, and Programmable Logic Devices Ku-Yaw Chang Assistant Professor, Department of Computer Science.
A.7 Concurrent Assignment Statements Used to assign a value to a signal in an architecture body. Four types of concurrent assignment statements –Simple.
VHDL TUTORIAL Preetha Thulasiraman ECE 223 Winter 2007.
Figure 5.1 Conversion from decimal to binary. Table 5.1 Numbers in different systems.
ENG241 Digital Design Week #4 Combinational Logic Design.
9/15/09 - L15 Decoders, Multiplexers Copyright Joanne DeGroat, ECE, OSU1 Decoders and Multiplexer Circuits.
ASIC 121: Practical VHDL Digital Design for FPGAs Tutorial 1 September 27, 2006.
Lecture 9 Topics: –Combinational circuits Basic concepts Examples of typical combinational circuits –Half-adder –Full-adder –Ripple-Carry adder –Decoder.
CHAPTER 9 MULTIPLEXERS, DECODERS, AND PROGRAMMABLE LOGIC DEVICES
L26 – Datapath ALU implementation
Basic Overview of VHDL Matthew Murach Slides Available at:
VHDL for Combinational Circuits. VHDL We Know Simple assignment statements –f
Introduction to VHDL Spring EENG 2920 Digital Systems Design Introduction VHDL – VHSIC (Very high speed integrated circuit) Hardware Description.
ECE 332 Digital Electronics and Logic Design Lab Lab 6 Concurrent Statements & Adders.
ECE 331 – Digital System Design Single-bit Adder Circuits and Adder Circuits in VHDL (Lecture #11) The slides included herein were taken from the materials.
ECE 331 – Digital System Design Multiplexers and Demultiplexers (Lecture #13)
Chapter 5 Introduction to VHDL. 2 Hardware Description Language A computer language used to design circuits with text-based descriptions of the circuits.
EKT 221 : Chapter 4 Computer Design Basics
ECE 331 – Digital System Design Multi-bit Adder Circuits, Adder/Subtractor Circuit, and Multiplier Circuit (Lecture #12)
CS/EE 3700 : Fundamentals of Digital System Design
 Seattle Pacific University EE Logic System DesignMux-Decoder-1 Multiplexers Two alternative forms for a 2:1 Mux Truth Table Functional form Logical.
ECOM 4311—Digital System Design with VHDL
Apr. 3, 2000Systems Architecture I1 Introduction to VHDL (CS 570) Jeremy R. Johnson Wed. Nov. 8, 2000.
VHDL ELEC 311 Digital Logic and Circuits Dr. Ron Hayne Images Courtesy of Cengage Learning.
Number Representation and Arithmetic Circuits
May 9, 2001Systems Architecture I1 Systems Architecture I (CS ) Lab 5: Introduction to VHDL Jeremy R. Johnson May 9, 2001.
Lecture 8 Review Combinational Devices –Decoder –Multiplexor (Bhasker p-81) –Shifter –Barrel Shifter (Bhasker p-303)
George Mason University Data Flow Modeling of Combinational Logic ECE 545 Lecture 5.
Explain Half Adder and Full Adder with Truth Table.
This chapter in the book includes: Objectives Study Guide
Combinational logic circuit
Conditional Signal Assignment
Basic Language Concepts
Systems Architecture Lab: Introduction to VHDL
This chapter in the book includes: Objectives Study Guide
ECE 4110–5110 Digital System Design
Combinational Circuits Using VHDL
This chapter in the book includes: Objectives Study Guide
ECE 4110–5110 Digital System Design
ECE 448 Lecture 3 Combinational-Circuit Building Blocks Data Flow Modeling of Combinational Logic ECE 448 – FPGA and ASIC Design with VHDL.
Combinatorial Logic Design Practices
ECE 448 Lecture 3 Combinational-Circuit Building Blocks Data Flow Modeling of Combinational Logic ECE 448 – FPGA and ASIC Design with VHDL.
ECE 448 Lecture 3 Combinational-Circuit Building Blocks Data Flow Modeling of Combinational Logic ECE 448 – FPGA and ASIC Design with VHDL.
Data Flow Modeling of Combinational Logic
VHDL (VHSIC Hardware Description Language)
Concurrent vs Sequential
Chapter 5 – Number Representation and Arithmetic Circuits
ECE 448 Lecture 3 Combinational-Circuit Building Blocks Data Flow Modeling of Combinational Logic ECE 448 – FPGA and ASIC Design with VHDL.
ECE 331 – Digital System Design
Data Flow Description of Combinational-Circuit Building Blocks
Data Flow Description of Combinational-Circuit Building Blocks
4-Input Gates VHDL for Loops
Digital Logic with VHDL
Presentation transcript:

Shannon decomposition William Sandqvist Claude Shannon mathematician / electrical engineer (1916 –2001) William Sandqvist (Degital Design Ex4)

(Ex 8.6) Show how a 4-to-1 multiplexer can be used as a "function generator" for example to generate the OR function.

William Sandqvist (Degital Design Ex4) (Ex 8.6) Show how a 4-to-1 multiplexer can be used as a "function generator" for example to generate the OR function. Multiplexer as function generator

William Sandqvist (Degital Design Ex4) (Ex 8.6) = Show how a 4-to-1 multiplexer can be used as a "function generator" for example to generate the OR function. Multiplexer as function generator

William Sandqvist (Degital Design Ex4)

BV 6.1 Show how the function can be implemented using a 3-to-8 decoder and an OR gate.

William Sandqvist (Degital Design Ex4) BV 6.1 Show how the function can be implemented using a 3-to-8 decoder and an OR gate.

William Sandqvist (Degital Design Ex4)

Ex 8.7 A majority gate outputs the same value as the majority of the inputs. The gate can for example be used in fault-tolerant logic, or in image processing circuits. a) (Set up the gate's truth table and minimize the function with Karnaugh map. Realize the function with AND-OR gates. ) b) Realize the majority gate with an 8: 1 MUX. c) Use Shannon decomposition and realize the majority gate with a 2: 1 MUX and gates. d) Realize the majority gate with only 2:1 MUXes.

William Sandqvist (Degital Design Ex4) (8.7a) With AND OR gates

William Sandqvist (Degital Design Ex4) (8.7a) With AND OR gates

William Sandqvist (Degital Design Ex4) (8.7a) With AND OR gates

William Sandqvist (Degital Design Ex4) (8.7a) With AND OR gates

William Sandqvist (Degital Design Ex4) 8.7b With 8-to-1 mux …

William Sandqvist (Degital Design Ex4) 8.7b With 8-to-1 mux …

William Sandqvist (Degital Design Ex4) 8.7c Shannon decomposition. 2-to-1 mux and gates.

William Sandqvist (Degital Design Ex4) 8.7c Shannon decomposition. 2-to-1 mux and gates.

William Sandqvist (Degital Design Ex4) 8.7c Shannon decomposition. 2-to-1 mux and gates.

William Sandqvist (Degital Design Ex4) 8.7c OR Shannon decomposition. 2-to-1 mux and gates.

William Sandqvist (Degital Design Ex4) 8.7c OR Shannon decomposition. 2-to-1 mux and gates.

William Sandqvist (Degital Design Ex4) 8.7c OR Shannon decomposition. 2-to-1 mux and gates.

William Sandqvist (Degital Design Ex4) 8.7d Shannon decomposition. Only 2-to-1 muxes.

William Sandqvist (Degital Design Ex4) 8.7d Shannon decomposition. Only 2-to-1 muxes.

William Sandqvist (Degital Design Ex4) 8.7d Shannon decomposition. Only 2-to-1 muxes.

William Sandqvist (Degital Design Ex4) 8.7d Shannon decomposition. Only 2-to-1 muxes.

William Sandqvist (Degital Design Ex4)

BV 6.5 William Sandqvist For the function use Shannon’s expansion to derive an implementation using a 2-to- 1 multiplexer and any necessary gates. William Sandqvist (Degital Design Ex4)

BV 6.5 William Sandqvist For the function use Shannon’s expansion to derive an implementation using a 2-to- 1 multiplexer and any necessary gates. William Sandqvist (Degital Design Ex4)

BV 6.5 William Sandqvist For the function use Shannon’s expansion to derive an implementation using a 2-to- 1 multiplexer and any necessary gates. William Sandqvist (Degital Design Ex4)

BV 6.5 William Sandqvist For the function use Shannon’s expansion to derive an implementation using a 2-to- 1 multiplexer and any necessary gates. William Sandqvist (Degital Design Ex4)

(Ex 8.9) Show how one four-input exorgate (XOR, odd parity function) is realized in an FPGA circuit. Show the contents of the SRAM cells ( LUT, Lookup Table )

William Sandqvist (Degital Design Ex4) (8.9)

William Sandqvist (8.9) William Sandqvist (Degital Design Ex4)

William Sandqvist (8.9) William Sandqvist (Degital Design Ex4)

(Ex 8.8) Set up full adder truth table. Show how a full adder is implemented in an FPGA chip. Logic elements of an FPGA is able to cascade COUT and CIN between "neighbors." Show the contents of the SRAM cells ( LUT, Lookup Table ).

William Sandqvist (Degital Design Ex4) (8.8)

William Sandqvist (Degital Design Ex4) (8.8)

William Sandqvist (8.8) William Sandqvist (Degital Design Ex4)

William Sandqvist (8.8) William Sandqvist (Degital Design Ex4)

(BV ex 6.31) In digital systems it is often necessary to have circuits that can shift the bits of a vector one or more bit positions to the left or right. Design a circuit that can shift a four-bit vector W = w 3 w 2 w 1 w 0 one bit position to the right when a control signal Shift is equal to 1. Let the outputs of the circuit be a four-bit vector Y = y 3 y 2 y 1 y 0 and a signal k, such that if Shift = 1 then y 3 = 0, y 2 = w 3, y 1 = w 2, y 0 = w 1, and k = w 0. If Shift = 0 then Y = W and k = 0.

William Sandqvist (Degital Design Ex4)

We uses MUXes: (BV ex 6.31)

William Sandqvist (Degital Design Ex4) (BV ex 6.31) We uses MUXes:

William Sandqvist (Degital Design Ex4)

BV ex Barrel shifter The shifter in Example 6.31 shifts the bits of an input vector by one bit position to the right. It fills the vacated bit on the left side with 0. If the bits that are shifted out are placed into the vacated position on the left, then the circuit effectively rotates the bits of the input vector by a specified number of bit positions. Such a circuit is called a barrel shifter. Design a four-bit barrel shifter that rotates the bits by 0, 1, 2, or 3 bit positions as determined by the valuation of two control signals s 1 and s 0. A barrelshifter is used to speed up floating point operations.

William Sandqvist Barrel shifter William Sandqvist (Degital Design Ex4)

BV ex Truth table: W0 W1 W2 W

William Sandqvist (Degital Design Ex4) BV ex Truth table: W0 W1 W2 W

William Sandqvist (Degital Design Ex4) BV ex Truth table: W0 W1 W2 W

William Sandqvist (Degital Design Ex4) BV ex Truth table: W0 W1 W2 W

William Sandqvist (Degital Design Ex4) BV ex Truth table: W0 W1 W2 W

William Sandqvist (Degital Design Ex4) BV ex And so on... Truth table: W0 W1 W2 W

William Sandqvist (Degital Design Ex4)

= Lowcost FPGA William Sandqvist (Degital Design Ex4) Key Benefits  Lowest FPGA unit cost starting at $0.49  Ultra-low power in Flash*Freeze mode, as low as 2 µW  Nonvolatile FPGA eliminates unnecessary parts from BOM  Single-chip and ultra-low-power products simplify board design  Variety of cost-optimized packages reduce assembly costs  Low-power FPGAs reduce thermal management and cooling needs

William Sandqvist (Degital Design Ex4) BV 6.16 Actel Corporation manufactures an FPGA family called Act 1, which uses multiplexer based logic blocks. Show how the function can be implemented using only ACT 1 logic blocks.

William Sandqvist (Degital Design Ex4) BV 6.16

William Sandqvist (Degital Design Ex4) BV 6.16

William Sandqvist (Degital Design Ex4) BV 6.16

William Sandqvist (Degital Design Ex4) BV 6.16

William Sandqvist (Degital Design Ex4)

VHDL BV 2.51a Write VHDL code to describe the following functions VHDL code is written with a text editor and saved in a file with the extension.vhd. The code always consists of two sections ENTITY and ARCHITECTURE. Entity is a description of how the circuit "looks from the outside" (the interface), and Architecture how it "looks like inside."

William Sandqvist (Degital Design Ex4) VHDL BV 2.51a Comments begin with –- If you wish, you can "draw" clarification ASCII graphics in the comment lines.. -- ___________ -- | | -- | Functions | -- ->-| x1 | -- ->-| x2 f1 |->- -- ->-| x3 f2 |->- -- ->-| x4 | -- |___________| -- Program code is written with a text editor. So we can only do text comments to the code. A fixed-width font is used ( eg. Courier New ). One usually indent text blocks that belong together for greater clarity.

William Sandqvist (Degital Design Ex4) VHDL BV 2.51a ENTITY Functions IS PORT(x1, x2, x3, x4 :IN STD_LOGIC; f1, f2, :OUT STD_LOGIC ) END Functions ARCHITECTURE LogicFunc OF Functions IS BEGIN f1 <= (x1 AND NOT x3)OR(x2 AND NOT x3)OR (NOT x3 AND NOT x4)OR(x1 AND x2)OR (x1 AND NOT x4); f2 <= (x1 OR NOT x3)AND(x1 OR x2 OR NOT x4)AND (x2 OR NOT x3 OR NOT x4); END LogicFunc ;

VHDL BV 6.21 William Sandqvist (Degital Design Ex4) Using a selected signal assignement, write VHDL code for a 4-to-2 binary encoder. Only one of w0 …w3 is ”1” at a time. LIBRARY ieee; USE IEEE.std_logic_1164.all; ENTITY ENCODER IS PORT( w :IN STD_LOGIC_VECTOR( 3 DOWNTO 0 ) ; y :OUT STD_LOGIC_VECTOR( 1 DOWNTO 0 ) ); END ENCODER ARCHITECTURE Behavior OF ENCODER IS BEGIN WITH w SELECT y <= ”00” WHEN ”0001”, ”01” WHEN ”0010”, ”10” WHEN ”0100”, ”11” WHEN OTHERS; END Behavior ;

William Sandqvist (Degital Design Ex4)

(8.10) Additional if time permits William Sandqvist (Degital Design Ex4) Y

Y Y

Y x0x0 x1x x0x0 x1x x0x0 x1x x0x0 x1x Y William Sandqvist (Degital Design Ex4)

Y x0x0 x1x x0x0 x1x x0x0 x1x x0x0 x1x Y William Sandqvist (Degital Design Ex4)

Y x0x0 x1x x0x0 x1x x0x0 x1x x0x0 x1x Y William Sandqvist (Degital Design Ex4)

Y x0x0 x1x x0x0 x1x x0x0 x1x x0x0 x1x Y William Sandqvist (Degital Design Ex4) Or … Or if you don’t have acess to the variable x 0 inverted …

William Sandqvist (Degital Design Ex4)