Solutions - Homework 2 (Due date: October 9:30 am) Presentation and clarity are very important!

Size: px
Start display at page:

Download "Solutions - Homework 2 (Due date: October 9:30 am) Presentation and clarity are very important!"

Transcription

1 ECE-8L: Computer Logic Design Fall Solutions - Homework (Due date: October 9: am) Presentation and clarit are ver important! PROBLEM ( PTS) Complete the following table. Use the fewest number of bits for ever case. Show our procedure. Decimal Sign-and-magnitude 's complement 's complement PROBLEM (5 PTS) We need to perform the following operations, where numbers are represented in 's complement: For each case: Determine the minimum number of bits required to represent both summands. You might need to sign-etend one of the summands, since for proper summation, both summands must have the same number of bits. Perform the binar addition in s complement arithmetic. The result must have the same number of bits as the summands. Determine whether there is overflow b: i. Using, (carries). ii. Performing the operation in the decimal sstem and checking whether the result is within the allowed range for bits, where is the minimum number of bits for the summands. If we want to avoid overflow, what is the minimum number of bits required to represent the summands and the result? n = 8 bits c8= c7= +7 = + +5 = +8 = overflow = c 8 c 7 = -> no overflow +8 [- 7, 7 -] -> no overflow n = 9 bits n = 8 bits c8= c7= -5 = + +6 = +9 = overflow = c 8 c 7 = -> no overflow +9 [- 7, 7 -] -> no overflow c9= c8= -9 = + +8 = - = overflow = c 9 c 8 = -> no overflow - [- 8, 8 -] -> no overflow

2 ECE-8L: Computer Logic Design Fall n = 9 bits c9= c8= -55 = + - = overflow = c 9 c 8 = -> overflow! -55-=-85 [- 8, 8 -] -> overflow! To avoid overflow: n = bits (sign-etension): n = bits c= c9= +9 = + +7 = overflow = c c 9 = -> overflow! 9+7=57 [- 9, 9 -] -> overflow! To avoid overflow: n = bits (sign-etension): PROBLEM (5 PTS) c= c9= -55 = + - = -85 = overflow = c c 9 = -> no overflow -85 [- 9, 9 -] -> no overflow n = bits c= c= +99 = + + = overflow = c c = -> overflow! 99+= [-, -] -> overflow! Sign-etension in s complement: Whenever we need to increase the number of bits for representing a number, we append the MSB to the left as man times as needed: Eamples: = = + =5 = = + + = = We can think of the sign-etended number as an -bit number, where > : = Demonstrate that represents the same decimal number as, i.e., demonstrate that sign-etension is correct for an >. Useful formula: =, c= c= +9 = + +7 = +57 = overflow = c c = -> no overflow +57 [-, -] -> no overflow To avoid overflow: n = bits (sign-etension): c= c= +99 = + + = += overflow = c c = -> no overflow + [-, -] -> no overflow We need to demonstrate that: = =, where: =, =, +,, Using the formula for 's complement numbers: + = +

3 ECE-8L: Computer Logic Design Fall + + = + + = + =, = = + = + = = PROBLEM (5 PTS) Implement the following functions using i) decoders and ii) multipleers: = + + = + +,, =,, = Fa Fb Fc Fd w w w s = Fa s = Fb s = Fc s = Fd w w w w w w w w w w w w Fa Fb Fc Fd Using onl -to- MUXs, implement the XOR and XNOR gates. f XOR f XNOR s = f XOR s = f XNOR f XOR f XNOR

4 ECE-8L: Computer Logic Design Fall Using onl a -to- MUX, implement the following functions.,, =,,,,, =,,,, =,,,, =, Fa Fb Fc Fd s = OR Fa s = OR Fb s = Fc s = Fd Fa Fb s = s = PROBLEM 5 ( PTS) A -bit address line in a µprocessor handles up to = of addresses, each address containing one-bte of information. We want to connect four 56KB memor chips to the µprocessor. Sketch the circuit that: i) addresses the memor chips, and ii) enables onl one memor chip (via CE: chip enable) when the address falls in the corresponding range. Eample: if = 5, onl memor chip is enabled (CE=). If =, onl memor chip is enabled. 56KB 56KB 56KB 56KB FFFF 7FFFF 8 BFFFF C FFFFF Memor space address Memor devices 56 KB 56 KB 56 KB CE CE CE ? 56 KB CE 56KB 56KB 56KB 56KB FFFF 7FFFF 8 BFFFF C FFFFF Memor space address Memor devices 56 KB 56 KB 56 KB CE CE address(7..) address(8) address(9) w w CE 56 KB CE

5 ECE-8L: Computer Logic Design Fall PROBLEM 6 (5 PTS) Complete the timing diagram of the circuit shown below: w w E DECODER k E P P P Unknown P s s P P P P PRIORITY ENCODER f k f The following VHDL code corresponds to the shaded circuit. Complete the timing diagram: a b c d tst.vhd DEMUX s s librar ieee; use ieee.std_logic_6.all; entit tst is port (b,c,d: in std_logic; : out std_logic_vector( downto )); end tst; architecture bhv of circ is signal, : std_logic; process (b,c,d) <= c & d; if b = then case d is when => <= ; when others => <= ; end case; else if c = then <= ; end if; end if; end process; end bhv; a b c d Unknown

6 ECE-8L: Computer Logic Design Fall PROBLEM 7 ( PTS) A straightforward implementation of the multiplication operation (for positive or unsigned numbers) is called Arra Multiplier: the partial products are added up at ever column. The figure depicts the hardware implementation for multipling two unsigned number of bits. a a a a cin b b b b FULL ADDER cout s a b a b a b a b a b a b a b a b a b a b a b a b a b a b a b a b p 7 p 6 p 5 p p p p p b() b() b() b() a() a b a b a b a b m m m m s s s s a() c c c a b a b a b a b m m m m p() s s s c c c s a() a b a b a b a b m m m m p() s s s c c c s a() a b a b a b a b m m m m p() s s s c c c s m m m m p() p(7) p(6) p(5) p() One of the drawbacks of this approach is the long dela between the input and the output. In the figure, the bits,,, require the inputs to pass through adders as well as AND gates.

7 ECE-8L: Computer Logic Design Fall An alternative implementation, called Wallace Multiplier, features a shorter dela between the input and the output. The hardware implementation is more complicated though. The figure shows a Wallace multiplier implementation for two unsigned numbers of bits. Note how the addition operation of the rows has been rearranged so that onl rows are added up at ever stage b() b() b() b() a() a b a b a b a b cout FULL ADDER cin a() a() a b a b m m m a b m a b a b a b m m a b a b m m s a() a b m a b m a b m a b m m m m m m m m m m m m m c c c c c s s s s s m m m m c c c c c s s s s s m m m m c c c c c s s s s s P(7) P(6) P(5) P() P() P() P() P() Write the VHDL implementation for the multiplication operation of two unsigned numbers of bits using: i) Arra Multiplier, and ii) Wallace multiplier. Use the Structural Description: create a separate VHDL file for the Full Adder circuit. Simulate both circuits and make sure that the are performing the correct operation. Attach our VHDL code, testbench code, and simulation results.

8 ECE-8L: Computer Logic Design Fall ARRAY MULTIPLIER: VHDL Code: librar IEEE; use IEEE.STD_LOGIC_6.ALL; entit m_mult is generic (N: INTEGER:= ); port (A,B: in std_logic_vector (N- downto ); P: out std_logic_vector (*N- downto )); end m_mult; architecture structure of m_mult is component fulladd port( cin,, : in std_logic; s, cout : out std_logic); end component; tpe m_arra is arra (natural range <>, natural range <>) of std_logic; signal m: m_arra(n downto, N- downto ); signal s: m_arra(n- downto, N- downto ); signal c: m_arra(n- downto, N- downto ); -- Arra of N * (N-) full adders: gi: for i in to N- generate -- along rows gj: for j in to N- generate -- along columns m(i,j) <= A(i) and B(j); fa: if i /= N- and j /= N- generate fij: fulladd port map (cin => c(i,j), => s(i,j+), => m(i+,j), s => s(i+,j), cout => c(i+,j)); fb: if i = generate s(i,j) <= m(i,j); m(n,) <= ''; glj: for j in to N- generate c(,j) <= ''; s(j+,n-) <= m(j+,n-); -- Column (from rows to N-) P(j+) <= s(j+,); flj: fulladd port map (cin => c(n-,j), => s(n-,j+), => m(n,j), s => p(n+j), cout => m(n,j+)); P() <= m(,); P(*N-) <= m(n,n-); end structure; Full Adder VHDL Code: librar ieee; use ieee.std_logic_6.all; entit fulladd is port( cin,, : in std_logic; s, cout : out std_logic); end fulladd; architecture structure of fulladd is s <= or or cin; cout <= ( and ) or ( and cin) or ( and cin); end structure;

9 ECE-8L: Computer Logic Design Fall Testbench Code: LIBRARY ieee; USE ieee.std_logic_6.all; use ieee.std_logic_arith.all; ENTITY tb_m_mult IS generic (N: INTEGER:= ); END tb_m_mult; ARCHITECTURE behavior OF tb_m_mult IS -- Component Declaration for the Unit Under Test (UUT) COMPONENT m_mult PORT( A : IN std_logic_vector(n- downto ); B : IN std_logic_vector(n- downto ); P : OUT std_logic_vector(*n- downto ) ); END COMPONENT; BEGIN END; --Inputs signal A : std_logic_vector(n- downto ) := (others => ''); signal B : std_logic_vector(n- downto ) := (others => ''); --Outputs signal P : std_logic_vector(*n- downto ); -- Instantiate the Unit Under Test (UUT) uut: m_mult PORT MAP ( A => A, B => B, P => P ); -- Stimulus process stim_proc: process -- hold reset state for ns. wait for ns; -- insert stimulus here A <= conv_std_logic_vector(,n); B <= conv_std_logic_vector (5,N); wait for ns; A <= conv_std_logic_vector(,n); B <= conv_std_logic_vector (,N); wait for ns; A <= conv_std_logic_vector(,n); B <= conv_std_logic_vector (,N); wait for ns; A <= conv_std_logic_vector(8,n); B <= conv_std_logic_vector (,N); wait for ns; A <= conv_std_logic_vector(,n); B <= conv_std_logic_vector (8,N); wait for ns; A <= conv_std_logic_vector(**n-,n); B <=conv_std_logic_vector (**N-,N); wait for ns; A <= conv_std_logic_vector(,n); B <= conv_std_logic_vector (,N); wait for ns; wait; end process;

10 ECE-8L: Computer Logic Design Fall WALLACE MULTIPLIER (-BIT): VHDL Code: librar IEEE; use IEEE.STD_LOGIC_6.ALL; entit m_wallace_bit is port (A, B: in std_logic_vector ( downto ); P : out std_logic_vector (7 downto )); end m_wallace_bit; architecture structure of m_wallace_bit is component fulladd port( cin,, : in std_logic; s, cout : out std_logic); end component; tpe m_arra is arra (natural range <>, natural range <>) of std_logic; signal m: m_arra( downto, downto ); signal c: m_arra( downto, downto ); signal s: m_arra( downto, downto ); gi: for i in to generate -- along rows gj: for j in to generate -- along columns m(i,j) <= A(i) and B(j); c(,) <= ''; c(,) <= ''; c(,) <= ''; s(,) <= c(,); s(,) <= c(,); s(,) <= c(,); -- First Laer f: fulladd port map (cin => c(,), => m(,), => m(,), s => s(,), cout => c(,)); f: fulladd port map (cin => c(,), => m(,), => m(,), s => s(,), cout => c(,)); f: fulladd port map (cin => c(,), => m(,), => m(,), s => s(,), cout => c(,)); f: fulladd port map (cin => c(,), => m(,), => '', s => s(,), cout => c(,)); -- Second Laer f: fulladd port map (cin => c(,), => m(,), => s(,), s => s(,), cout => c(,)); f: fulladd port map (cin => c(,), => m(,), => s(,), s => s(,), cout => c(,)); f: fulladd port map (cin => c(,), => m(,), => s(,), s => s(,), cout => c(,)); f: fulladd port map (cin => c(,), => m(,), => s(,), s => s(,), cout => c(,)); -- Third Laer f: fulladd port map (cin => c(,), => m(,), => s(,), s => s(,), cout => c(,)); f: fulladd port map (cin => c(,), => m(,), => s(,), s => s(,), cout => c(,)); f: fulladd port map (cin => c(,), => m(,), => s(,), s => s(,), cout => c(,)); f: fulladd port map (cin => c(,), => m(,), => s(,), s => s(,), cout => c(,)); end structure; P() <= m(,); P() <= s(,); P() <= s(,); P() <= s(,); P() <= s(,); P(5) <= s(,); P(6) <= s(,); P(7) <= s(,);

11 ECE-8L: Computer Logic Design Fall Testbench Code: LIBRARY ieee; USE ieee.std_logic_6.all; use ieee.std_logic_arith.all; ENTITY tb_m_wallace_bit IS END tb_m_wallace_bit; ARCHITECTURE behavior OF tb_m_wallace_bit IS -- Component Declaration for the Unit Under Test (UUT) COMPONENT m_wallace_bit PORT( A : IN std_logic_vector( downto ); B : IN std_logic_vector( downto ); P : OUT std_logic_vector(7 downto ) ); END COMPONENT; BEGIN END; --Inputs signal A : std_logic_vector( downto ) := (others => ''); signal B : std_logic_vector( downto ) := (others => ''); --Outputs signal P : std_logic_vector(7 downto ); -- Instantiate the Unit Under Test (UUT) uut: m_wallace_bit PORT MAP ( A => A, B => B, P => P ); -- Stimulus process stim_proc: process -- hold reset state for ns. wait for ns; -- insert stimulus here li: for i in to 5 loop A <= conv_std_logic_vector(i,); lj: for j in to 5 loop B <= conv_std_logic_vector (j,); wait for ns; end loop; end loop; A <= ""; B <= ""; wait for ns; wait; end process;

Solutions - Homework 2 (Due date: February 5 5:30 pm) Presentation and clarity are very important! Show your procedure!

Solutions - Homework 2 (Due date: February 5 5:30 pm) Presentation and clarity are very important! Show your procedure! Solutions - Homework (Due date: Februar 5 th @ 5: pm) Presentation and clarit are ver important! Show our procedure! PROBLEM ( PTS) In these problems, ou MUST show our conversion procedure. a) Convert

More information

DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING, THE UNIVERSITY OF NEW MEXICO ECE-238L: Computer Logic Design Fall 2013.

DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING, THE UNIVERSITY OF NEW MEXICO ECE-238L: Computer Logic Design Fall 2013. ECE-8L: Computer Logic Design Fall Notes - Chapter BINARY NUMBER CONVERSIONS DECIMAL NUMBER SYSTEM A decimal digit can take values from to 9: Digit-b-digit representation of a positive integer number (powers

More information

VHDL Testbench. Test Bench Syntax. VHDL Testbench Tutorial 1. Contents

VHDL Testbench. Test Bench Syntax. VHDL Testbench Tutorial 1. Contents VHDL Testbench Tutorial 1 Contents 1 VHDL Testbench 2 Test Bench Syntax 3 Testbench Example: VHDL Code for Up Down Binary Counter 4 VHDL Testbench code for up down binary counter 5 Testbench Waveform for

More information

The block diagram representation is given below: The output equation of a 2x1 multiplexer is given below:

The block diagram representation is given below: The output equation of a 2x1 multiplexer is given below: Experiment-3: Write VHDL programs for the following circuits, check the wave forms and the hardware generated a. multiplexer b. De-Multiplexer Objective: i. To learn the VHDL coding for Multiplexer and

More information

DIGITAL LOGIC WITH VHDL (Fall 2013) Unit 2

DIGITAL LOGIC WITH VHDL (Fall 2013) Unit 2 DIGITAL LOGIC WITH VHDL (Fall 23) Unit 2 Use of std_logic_vector. CONCURRENT DESCRIPTION with-select, when-else statements Examples: multiplexor, decoder. std_logic_vector In the example, we use the std_logic_vector

More information

Chapter 6 Combinational-Circuit Building Blocks

Chapter 6 Combinational-Circuit Building Blocks Chapter 6 Combinational-Circuit Building Blocks Commonly used combinational building blocks in design of large circuits: Multiplexers Decoders Encoders Comparators Arithmetic circuits Multiplexers A multiplexer

More information

Abi Farsoni, Department of Nuclear Engineering and Radiation Health Physics, Oregon State University

Abi Farsoni, Department of Nuclear Engineering and Radiation Health Physics, Oregon State University Hardware description language (HDL) Intended to describe circuits textually, for a computer to read Evolved starting in the 1970s and 1980s Popular languages today include: VHDL Defined in 1980s by U.S.

More information

Digital Systems Design

Digital Systems Design Digital Systems Design Review of Combinatorial Circuit Building Blocks: VHDL for Combinational Circuits Dr. D. J. Jackson Lecture 2-1 Introduction to VHDL Designer writes a logic circuit description in

More information

Hardware Description Language VHDL (1) Introduction

Hardware Description Language VHDL (1) Introduction Hardware Description Language VHDL (1) Introduction Digital Radiation Measurement and Spectroscopy NE/RHP 537 Introduction Hardware description language (HDL) Intended to describe circuits textually, for

More information

ELCT 501: Digital System Design

ELCT 501: Digital System Design ELCT 501: Digital System Lecture 4: CAD tools (Continued) Dr. Mohamed Abd El Ghany, Basic VHDL Concept Via an Example Problem: write VHDL code for 1-bit adder 4-bit adder 2 1-bit adder Inputs: A (1 bit)

More information

Solutions - Homework 4 (Due date: November 9:30 am) Presentation and clarity are very important!

Solutions - Homework 4 (Due date: November 9:30 am) Presentation and clarity are very important! DPARTMNT OF LCTRICAL AND COMPUTR NGINRING, TH UNIVRSITY OF NW MXICO C-38L: Computer Logic Design Fall 3 Solutions - Homework 4 (Due date: November 6th @ 9:3 am) Presentation and clarity are very important!

More information

ECE 448 Lecture 3. Combinational-Circuit Building Blocks. Data Flow Modeling of Combinational Logic

ECE 448 Lecture 3. Combinational-Circuit Building Blocks. Data Flow Modeling of Combinational Logic ECE 448 Lecture 3 Combinational-Circuit Building Blocks Data Flow Modeling of Combinational Logic George Mason University Reading Required P. Chu, FPGA Prototyping by VHDL Examples Chapter 3, RT-level

More information

Contents. Appendix D VHDL Summary Page 1 of 23

Contents. Appendix D VHDL Summary Page 1 of 23 Appendix D VHDL Summary Page 1 of 23 Contents Appendix D VHDL Summary...2 D.1 Basic Language Elements...2 D.1.1 Comments...2 D.1.2 Identifiers...2 D.1.3 Data Objects...2 D.1.4 Data Types...2 D.1.5 Data

More information

ECE 448 Lecture 3. Combinational-Circuit Building Blocks. Data Flow Modeling of Combinational Logic

ECE 448 Lecture 3. Combinational-Circuit Building Blocks. Data Flow Modeling of Combinational Logic ECE 448 Lecture 3 Combinational-Circuit Building Blocks Data Flow Modeling of Combinational Logic George Mason University Reading Required P. Chu, FPGA Prototyping by VHDL Examples Chapter 3, RT-level

More information

Lecture 7. Standard ICs FPGA (Field Programmable Gate Array) VHDL (Very-high-speed integrated circuits. Hardware Description Language)

Lecture 7. Standard ICs FPGA (Field Programmable Gate Array) VHDL (Very-high-speed integrated circuits. Hardware Description Language) Standard ICs FPGA (Field Programmable Gate Array) VHDL (Very-high-speed integrated circuits Hardware Description Language) 1 Standard ICs PLD: Programmable Logic Device CPLD: Complex PLD FPGA: Field Programmable

More information

DIGITAL LOGIC DESIGN VHDL Coding for FPGAs Unit 8

DIGITAL LOGIC DESIGN VHDL Coding for FPGAs Unit 8 DIGITAL LOGIC DESIGN VHDL Coding for FPGAs Unit 8 PARAMETRIC CODING Techniques: generic input size, for-generate, if-generate, conv_integer. Custom-defined arrays, functions, and packages. Examples: vector

More information

Review. LIBRARY list of library names; USE library.package.object; ENTITY entity_name IS generic declarations PORT ( signal_name(s): mode signal_type;

Review. LIBRARY list of library names; USE library.package.object; ENTITY entity_name IS generic declarations PORT ( signal_name(s): mode signal_type; LIBRARY list of library names; USE library.package.object; Review ENTITY entity_name IS generic declarations PORT ( signal_name(s): mode signal_type; signal_name(s) : mode signal_type); END ENTITY entity_name;

More information

ECE 545 Lecture 5. Data Flow Modeling in VHDL. George Mason University

ECE 545 Lecture 5. Data Flow Modeling in VHDL. George Mason University ECE 545 Lecture 5 Data Flow Modeling in VHDL George Mason University Required reading P. Chu, RTL Hardware Design using VHDL Chapter 4, Concurrent Signal Assignment Statements of VHDL 2 Types of VHDL Description

More information

EE261: Intro to Digital Design

EE261: Intro to Digital Design 2014 EE261: Intro to Digital Design Project 3: Four Bit Full Adder Abstract: This report serves to teach us, the students, about modeling logic and gives a chance to apply concepts from the course to a

More information

DIGITAL LOGIC WITH VHDL (Fall 2013) Unit 4

DIGITAL LOGIC WITH VHDL (Fall 2013) Unit 4 DIGITAL LOGIC WITH VHDL (Fall 2013) Unit 4 Integer DATA TYPE STRUCTURAL DESCRIPTION Hierarchical deign: port-map, for-generate, ifgenerate. Eample: Adder, comparator, multiplier, Look-up Table, Barrel

More information

DIGITAL LOGIC WITH VHDL (Fall 2013) Unit 1

DIGITAL LOGIC WITH VHDL (Fall 2013) Unit 1 DIGITAL LOGIC WITH VHDL (Fall 23) Unit DESIGN FLOW DATA TYPES LOGIC GATES WITH VHDL TESTBENCH GENERATION DESIGN FLOW Design Entry: We specify the logic circuit using a Hardware Description Language (e.g.,

More information

ECE 545 Lecture 8. Data Flow Description of Combinational-Circuit Building Blocks. George Mason University

ECE 545 Lecture 8. Data Flow Description of Combinational-Circuit Building Blocks. George Mason University ECE 545 Lecture 8 Data Flow Description of Combinational-Circuit Building Blocks George Mason University Required reading P. Chu, RTL Hardware Design using VHDL Chapter 7, Combinational Circuit Design:

More information

Arithmetic Circuits. Nurul Hazlina Adder 2. Multiplier 3. Arithmetic Logic Unit (ALU) 4. HDL for Arithmetic Circuit

Arithmetic Circuits. Nurul Hazlina Adder 2. Multiplier 3. Arithmetic Logic Unit (ALU) 4. HDL for Arithmetic Circuit Nurul Hazlina 1 1. Adder 2. Multiplier 3. Arithmetic Logic Unit (ALU) 4. HDL for Arithmetic Circuit Nurul Hazlina 2 Introduction 1. Digital circuits are frequently used for arithmetic operations 2. Fundamental

More information

Concurrent Signal Assignment Statements (CSAs)

Concurrent Signal Assignment Statements (CSAs) Concurrent Signal Assignment Statements (CSAs) Digital systems operate with concurrent signals Signals are assigned values at a specific point in time. VHDL uses signal assignment statements Specify value

More information

Lecture 1: VHDL Quick Start. Digital Systems Design. Fall 10, Dec 17 Lecture 1 1

Lecture 1: VHDL Quick Start. Digital Systems Design. Fall 10, Dec 17 Lecture 1 1 Lecture 1: VHDL Quick Start Digital Systems Design Fall 10, Dec 17 Lecture 1 1 Objective Quick introduction to VHDL basic language concepts basic design methodology Use The Student s Guide to VHDL or The

More information

DIGITAL LOGIC WITH VHDL (Fall 2013) Unit 3

DIGITAL LOGIC WITH VHDL (Fall 2013) Unit 3 DIGITAL LOGIC WITH VHDL (Fall 2013) Unit 3 BEHAVIORAL DESCRIPTION Asynchronous processes (decoder, mux, encoder, etc): if-else, case, for-loop. BEHAVIORAL DESCRIPTION (OR SEQUENTIAL) In this design style,

More information

IE1204 Digital Design L7: Combinational circuits, Introduction to VHDL

IE1204 Digital Design L7: Combinational circuits, Introduction to VHDL IE24 Digital Design L7: Combinational circuits, Introduction to VHDL Elena Dubrova KTH / ICT / ES dubrova@kth.se This lecture BV 38-339, 6-65, 28-29,34-365 IE24 Digital Design, HT 24 2 The multiplexer

More information

Basic Language Concepts

Basic Language Concepts Basic Language Concepts Sudhakar Yalamanchili, Georgia Institute of Technology ECE 4170 (1) Describing Design Entities a sum b carry Primary programming abstraction is a design entity Register, logic block,

More information

Solutions - Homework 2 (Due date: October 4 5:30 pm) Presentation and clarity are very important! Show your procedure!

Solutions - Homework 2 (Due date: October 4 5:30 pm) Presentation and clarity are very important! Show your procedure! Solutions - Homework 2 (Due date: October 4 th @ 5:30 pm) Presentation and clarity are very important! Show your procedure! PROBLEM 1 (28 PTS) a) What is the minimum number of bits required to represent:

More information

Declarations of Components and Entities are similar Components are virtual design entities entity OR_3 is

Declarations of Components and Entities are similar Components are virtual design entities entity OR_3 is Reserved Words component OR_3 port (A,B,C: in bit; Z: out bit); end component ; Reserved Words Declarations of Components and Entities are similar Components are virtual design entities entity OR_3 is

More information

Very High Speed Integrated Circuit Har dware Description Language

Very High Speed Integrated Circuit Har dware Description Language Very High Speed Integrated Circuit Har dware Description Language Industry standard language to describe hardware Originated from work in 70 s & 80 s by the U.S. Departm ent of Defence Root : ADA Language

More information

ELECTRICAL AND COMPUTER ENGINEERING DEPARTMENT, OAKLAND UNIVERSITY ECE-278: Digital Logic Design Fall Notes - Unit 4. hundreds.

ELECTRICAL AND COMPUTER ENGINEERING DEPARTMENT, OAKLAND UNIVERSITY ECE-278: Digital Logic Design Fall Notes - Unit 4. hundreds. ECE-78: Digital Logic Design Fall 6 UNSIGNED INTEGER NUMBERS Notes - Unit 4 DECIMAL NUMBER SYSTEM A decimal digit can take values from to 9: Digit-by-digit representation of a positive integer number (powers

More information

DIGITAL LOGIC DESIGN VHDL Coding for FPGAs Unit 3

DIGITAL LOGIC DESIGN VHDL Coding for FPGAs Unit 3 DIGITAL LOGIC DESIGN VHDL Coding for FPGAs Unit 3 BEHAVIORAL DESCRIPTION Asynchronous processes (decoder, mux, encoder, etc): if-else, case, for-loop. Arithmetic expressions inside asynchronous processes.

More information

VHDL Structural Modeling II

VHDL Structural Modeling II VHDL Structural Modeling II ECE-331, Digital Design Prof. Hintz Electrical and Computer Engineering 5/7/2001 331_13 1 Ports and Their Usage Port Modes in reads a signal out writes a signal inout reads

More information

Lecture 5: State Machines, Arrays, Loops. EE 3610 Digital Systems

Lecture 5: State Machines, Arrays, Loops. EE 3610 Digital Systems EE 3610: Digital Systems 1 Lecture 5: State Machines, Arrays, Loops BCD to Excess-3 (XS 3 ) Code Converter Example: Fig. 2-53 2 Easier to use one type of code (e.g. XS 3 ) over the other type (e.g. BCD)

More information

DIGITAL LOGIC DESIGN VHDL Coding for FPGAs Unit 6

DIGITAL LOGIC DESIGN VHDL Coding for FPGAs Unit 6 DIGITAL LOGIC DESIGN VHDL Coding for FPGAs Unit 6 FINITE STATE MACHINES (FSMs) Moore Machines Mealy Machines Algorithmic State Machine (ASM) charts FINITE STATE MACHINES (FSMs) Classification: Moore Machine:

More information

Logic and Computer Design Fundamentals VHDL. Part 1 Chapter 4 Basics and Constructs

Logic and Computer Design Fundamentals VHDL. Part 1 Chapter 4 Basics and Constructs Logic and Computer Design Fundamentals VHDL Part Chapter 4 Basics and Constructs Charles Kime & Thomas Kaminski 24 Pearson Education, Inc. Terms of Use (Hyperlinks are active in View Show mode) Overview

More information

Introduction to VHDL #1

Introduction to VHDL #1 ECE 3220 Digital Design with VHDL Introduction to VHDL #1 Lecture 3 Introduction to VHDL The two Hardware Description Languages that are most often used in industry are: n VHDL n Verilog you will learn

More information

ACS College of Engineering. Department of Biomedical Engineering. Logic Design Lab pre lab questions ( ) Cycle-1

ACS College of Engineering. Department of Biomedical Engineering. Logic Design Lab pre lab questions ( ) Cycle-1 ACS College of Engineering Department of Biomedical Engineering Logic Design Lab pre lab questions (2015-2016) Cycle-1 1. What is a combinational circuit? 2. What are the various methods of simplifying

More information

LECTURE 4: The VHDL N-bit Adder

LECTURE 4: The VHDL N-bit Adder EECS 317 Computer Design LECTURE 4: The VHDL N-bit Adder Instructor: Francis G. Wolff wolff@eecs.cwru.edu Case Western Reserve University Review: N-Bit Ripple-Carry Adder Hierarchical design: 2-bit adder

More information

ELECTRICAL AND COMPUTER ENGINEERING DEPARTMENT, OAKLAND UNIVERSITY ECE-2700: Digital Logic Design Winter Notes - Unit 4. hundreds.

ELECTRICAL AND COMPUTER ENGINEERING DEPARTMENT, OAKLAND UNIVERSITY ECE-2700: Digital Logic Design Winter Notes - Unit 4. hundreds. UNSIGNED INTEGER NUMBERS Notes - Unit 4 DECIMAL NUMBER SYSTEM A decimal digit can take values from to 9: Digit-by-digit representation of a positive integer number (powers of ): DIGIT 3 4 5 6 7 8 9 Number:

More information

Digital Design Using VHDL Using Xilinx s Tool for Synthesis and ModelSim for Verification

Digital Design Using VHDL Using Xilinx s Tool for Synthesis and ModelSim for Verification Digital Design Using VHDL Using Xilinx s Tool for Synthesis and ModelSim for Verification Ahmed Abu-Hajar, Ph.D. abuhajar@digitavid.net Digitavid, Inc San Jose, CA Session One Outline Introducing VHDL

More information

Lecture 3: Modeling in VHDL. EE 3610 Digital Systems

Lecture 3: Modeling in VHDL. EE 3610 Digital Systems EE 3610: Digital Systems 1 Lecture 3: Modeling in VHDL VHDL: Overview 2 VHDL VHSIC Hardware Description Language VHSIC=Very High Speed Integrated Circuit Programming language for modelling of hardware

More information

VHDL. ELEC 418 Advanced Digital Systems Dr. Ron Hayne. Images Courtesy of Cengage Learning

VHDL. ELEC 418 Advanced Digital Systems Dr. Ron Hayne. Images Courtesy of Cengage Learning VHDL ELEC 418 Advanced Digital Systems Dr. Ron Hayne Images Courtesy of Cengage Learning Design Flow 418_02 2 VHDL Modules 418_02 3 VHDL Libraries library IEEE; use IEEE.std_logic_1164.all; std_logic Single-bit

More information

UNIT I Introduction to VHDL VHDL: - V -VHSIC, H - Hardware, D - Description, L Language Fundamental section of a basic VHDL code Library :

UNIT I Introduction to VHDL VHDL: - V -VHSIC, H - Hardware, D - Description, L Language Fundamental section of a basic VHDL code Library : UNIT I Introduction to VHDL VHDL stands for very high-speed integrated circuit hardware description language. Which is one of the programming languages used to model a digital system by dataflow, behavioral

More information

ECE 545 Lecture 12. FPGA Resources. George Mason University

ECE 545 Lecture 12. FPGA Resources. George Mason University ECE 545 Lecture 2 FPGA Resources George Mason University Recommended reading 7 Series FPGAs Configurable Logic Block: User Guide Overview Functional Details 2 What is an FPGA? Configurable Logic Blocks

More information

Design a 4 bit-adder. Then design a 4-7 decoder to show the outputs. Output Sum(4 bits) Adder. Output carry(1 bit)

Design a 4 bit-adder. Then design a 4-7 decoder to show the outputs. Output Sum(4 bits) Adder. Output carry(1 bit) Csc 343 Lab 2 Sep 28. 07 Objective: Design a 4 bit-adder. Then design a 4-7 decoder to show the outputs. Structure: Input A (4 bits) Input B (4 bit) Adder Output Sum(4 bits) Output carry(1 bit) input cin

More information

DIGITAL LOGIC WITH VHDL (Fall 2013) Unit 6

DIGITAL LOGIC WITH VHDL (Fall 2013) Unit 6 DIGITAL LOGIC WITH VHDL (Fall 2013) Unit 6 FINITE STATE MACHINES (FSMs) Moore Machines Mealy Machines FINITE STATE MACHINES (FSMs) Classification: Moore Machine: Outputs depend only on the current state

More information

Review of Digital Design with VHDL

Review of Digital Design with VHDL Review of Digital Design with VHDL Digital World Digital world is a world of 0 and 1 Each binary digit is called a bit Eight consecutive bits are called a byte Hexadecimal (base 16) representation for

More information

Topics. FPGA Design EECE 277. Number Representation and Adders. Class Exercise. Laboratory Assignment #2

Topics. FPGA Design EECE 277. Number Representation and Adders. Class Exercise. Laboratory Assignment #2 FPGA Deign EECE 277 Number Repreentation and Adder Dr. William H. Robinon Februar 2, 25 Topi There are kind of people in the world, thoe that undertand binar and thoe that don't. Unknown Adminitrative

More information

Lattice VHDL Training

Lattice VHDL Training Lattice Part I February 2000 1 VHDL Basic Modeling Structure February 2000 2 VHDL Design Description VHDL language describes a digital system as a set of modular blocks. Each modular block is described

More information

Getting Started with VHDL

Getting Started with VHDL Getting Started with VHDL VHDL code is composed of a number of entities Entities describe the interface of the component Entities can be primitive objects or complex objects Architectures are associated

More information

Using Library Modules in VHDL Designs

Using Library Modules in VHDL Designs Using Library Modules in VHDL Designs This tutorial explains how Altera s library modules can be included in VHDL-based designs, which are implemented by using the Quartus R II software. Contents: Example

More information

VHDL Examples Mohamed Zaky

VHDL Examples Mohamed Zaky VHDL Examples By Mohamed Zaky (mz_rasmy@yahoo.co.uk) 1 Half Adder The Half Adder simply adds 2 input bits, to produce a sum & carry output. Here we want to add A + B to produce Sum (S) and carry (C). A

More information

Using Library Modules in VHDL Designs

Using Library Modules in VHDL Designs Using Library Modules in VHDL Designs This tutorial explains how Altera s library modules can be included in VHDL-based designs, which are implemented by using the Quartus R II software. Contents: Example

More information

VHDL 2 Combinational Logic Circuits. Reference: Roth/John Text: Chapter 2

VHDL 2 Combinational Logic Circuits. Reference: Roth/John Text: Chapter 2 VHDL 2 Combinational Logic Circuits Reference: Roth/John Text: Chapter 2 Combinational logic -- Behavior can be specified as concurrent signal assignments -- These model concurrent operation of hardware

More information

INTRODUCTION TO VHDL ADVANCED COMPUTER ARCHITECTURES. Slides by: Pedro Tomás. Additional reading: - ARQUITECTURAS AVANÇADAS DE COMPUTADORES (AAC)

INTRODUCTION TO VHDL ADVANCED COMPUTER ARCHITECTURES. Slides by: Pedro Tomás. Additional reading: - ARQUITECTURAS AVANÇADAS DE COMPUTADORES (AAC) INTRODUCTION TO VHDL Slides by: Pedro Tomás Additional reading: - ADVANCED COMPUTER ARCHITECTURES ARQUITECTURAS AVANÇADAS DE COMPUTADORES (AAC) Outline 2 Hardware Description Languages (HDL) VHDL Very

More information

Chapter 3 Part 2 Combinational Logic Design

Chapter 3 Part 2 Combinational Logic Design University of Wisconsin - Madison ECE/Comp Sci 352 Digital Systems Fundamentals Kewal K. Saluja and Yu Hen Hu Spring 2002 Chapter 3 Part 2 Combinational Logic Design Originals by: Charles R. Kime and Tom

More information

Digital Circuit Design and Language. Datapath Design. Chang, Ik Joon Kyunghee University

Digital Circuit Design and Language. Datapath Design. Chang, Ik Joon Kyunghee University Digital Circuit Design and Language Datapath Design Chang, Ik Joon Kyunghee University Typical Synchronous Design + Control Section : Finite State Machine + Data Section: Adder, Multiplier, Shift Register

More information

EEL 4712 Digital Design Test 1 Spring Semester 2007

EEL 4712 Digital Design Test 1 Spring Semester 2007 IMPORTANT: Please be neat and write (or draw) carefully. If we cannot read it with a reasonable effort, it is assumed wrong. COVER SHEET: Problem: Points: 1 (15 pts) 2 (20 pts) Total 3 (15 pts) 4 (18 pts)

More information

Midterm Exam Thursday, October 24, :00--2:15PM (75 minutes)

Midterm Exam Thursday, October 24, :00--2:15PM (75 minutes) Last (family) name: Answer Key First (given) name: Student I.D. #: Department of Electrical and Computer Engineering University of Wisconsin - Madison ECE 551 Digital System Design and Synthesis Midterm

More information

In our case Dr. Johnson is setting the best practices

In our case Dr. Johnson is setting the best practices VHDL Best Practices Best Practices??? Best practices are often defined by company, toolset or device In our case Dr. Johnson is setting the best practices These rules are for Class/Lab purposes. Industry

More information

ECE 545 Lecture 4. Simple Testbenches. George Mason University

ECE 545 Lecture 4. Simple Testbenches. George Mason University ECE 545 Lecture 4 Simple Testbenches George Mason University Required reading P. Chu, RTL Hardware Design using VHDL Chapter 2.2.4, Testbenches 2 Testbenches ECE 448 FPGA and ASIC Design with VHDL 3 Testbench

More information

Experiment 0 OR3 Gate ECE 332 Section 000 Dr. Ron Hayne June 8, 2003

Experiment 0 OR3 Gate ECE 332 Section 000 Dr. Ron Hayne June 8, 2003 Experiment 0 OR3 Gate ECE 332 Section 000 Dr. Ron Hayne June 8, 2003 On my honor I have neither received nor given aid on this report. Signed: Ronald J. Hayne Part I Description of the Experiment Experiment

More information

Introduction to VHDL #3

Introduction to VHDL #3 ECE 322 Digital Design with VHDL Introduction to VHDL #3 Lecture 7 & 8 VHDL Modeling Styles VHDL Modeling Styles Dataflow Concurrent statements Structural Components and interconnects Behavioral (sequential)

More information

Lab 3: Standard Combinational Components

Lab 3: Standard Combinational Components Lab 3: Standard Combinational Components Purpose In this lab you will implement several combinational circuits on the DE1 development board to test and verify their operations. Introduction Using a high-level

More information

1. Defining and capturing the design of a system. 2. Cost Limitations (low profit margin must sell millions)

1. Defining and capturing the design of a system. 2. Cost Limitations (low profit margin must sell millions) What is an Embedded System? A type of computer system ECEN 4856: Embedded System Design Lecture 2: Embedded System Standards Traditional Definitions Limited in hardware and software vs the PC Designed

More information

Mridula Allani Fall Fall

Mridula Allani Fall Fall Mridula Allani Fall 2010 Fall 2010 1 Model and document digital systems Hierarchical models System, RTL (Register Transfer Level), gates Different levels of abstraction Behavior, structure Verify circuit/system

More information

N-input EX-NOR gate. N-output inverter. N-input NOR gate

N-input EX-NOR gate. N-output inverter. N-input NOR gate Hardware Description Language HDL Introduction HDL is a hardware description language used to design and document electronic systems. HDL allows designers to design at various levels of abstraction. It

More information

Advanced Electronics Lab.

Advanced Electronics Lab. College of Engineering Course Book of 2010-2011 Advanced Electronics Lab. Mr. Araz Sabir Ameen M.Sc. in Electronics & Communications ALTERA DE2 Development and Education Board DE2 Package: The DE2 package

More information

Writing VHDL for RTL Synthesis

Writing VHDL for RTL Synthesis Writing VHDL for RTL Synthesis Stephen A. Edwards, Columbia University December 21, 2009 The name VHDL is representative of the language itself: it is a two-level acronym that stands for VHSIC Hardware

More information

COE 405, Term 062. Design & Modeling of Digital Systems. HW# 1 Solution. Due date: Wednesday, March. 14

COE 405, Term 062. Design & Modeling of Digital Systems. HW# 1 Solution. Due date: Wednesday, March. 14 COE 405, Term 062 Design & Modeling of Digital Systems HW# 1 Solution Due date: Wednesday, March. 14 Q.1. Consider the 4-bit carry-look-ahead adder (CLA) block shown below: A 3 -A 0 B 3 -B 0 C 3 4-bit

More information

EENG 2910 Project III: Digital System Design. Due: 04/30/2014. Team Members: University of North Texas Department of Electrical Engineering

EENG 2910 Project III: Digital System Design. Due: 04/30/2014. Team Members: University of North Texas Department of Electrical Engineering EENG 2910 Project III: Digital System Design Due: 04/30/2014 Team Members: University of North Texas Department of Electrical Engineering Table of Content i Contents Abstract...3 Introduction...3 Report...4

More information

CDA 4253 FPGA System Design VHDL Testbench Development. Hao Zheng Comp. Sci & Eng USF

CDA 4253 FPGA System Design VHDL Testbench Development. Hao Zheng Comp. Sci & Eng USF CDA 4253 FPGA System Design VHDL Testbench Development Hao Zheng Comp. Sci & Eng USF art-4- > 70% projects spent > 40% time in verification 2 Validation, Verification, and Testing Validation: Does the

More information

CMPT 250: Computer Architecture. Using LogicWorks 5. Tutorial Part 1. Somsubhra Sharangi

CMPT 250: Computer Architecture. Using LogicWorks 5. Tutorial Part 1. Somsubhra Sharangi CMPT 250: Computer Architecture Using LogicWorks 5 Tutorial Part 1 Somsubhra Sharangi What is VHDL? A high level language to describe digital circuit Different that a programming language ( such as Java)

More information

5. 0 VHDL OPERATORS. The above classes are arranged in increasing priority when parentheses are not used.

5. 0 VHDL OPERATORS. The above classes are arranged in increasing priority when parentheses are not used. Filename= ch5.doc 5. 0 VHDL OPERATORS There are seven groups of predefined VHDL operators: 1. Binary logical operators: and or nand nor xor xnor 2. Relational operators: = /= < >= 3. Shifts operators:

More information

DO NOT COPY entity vaddshr is port ( A, B, C, D: in SIGNED (7 downto 0); SEL: in STD_LOGIC; S: out SIGNED (7 downto 0) ); end vaddshr; DO NOT COPY

DO NOT COPY entity vaddshr is port ( A, B, C, D: in SIGNED (7 downto 0); SEL: in STD_LOGIC; S: out SIGNED (7 downto 0) ); end vaddshr; DO NOT COPY 48 Chapter 5 Combinational Logic Design Practices Table 5-56 librar IEEE; VHDL program that use IEEE.std_logic_1164.all; allows adder sharing. use IEEE.std_logic_arith.all; entit vaddshr is port ( A, B,

More information

Using Library Modules in VHDL Designs. 1 Introduction. For Quartus II 12.1

Using Library Modules in VHDL Designs. 1 Introduction. For Quartus II 12.1 Using Library Modules in VHDL Designs For Quartus II 12.1 1 Introduction This tutorial explains how Altera s library modules can be included in VHDL-based designs, which are implemented by using the Quartus

More information

JUNE, JULY 2013 Fundamentals of HDL (10EC45) PART A

JUNE, JULY 2013 Fundamentals of HDL (10EC45) PART A JUNE, JULY 2013 Fundamentals of HDL (10EC45) Time: 3hrs Max Marks:100 Note: Answer FIVE full questions, selecting at least TWO questions from each part. PART A Q1.a. Describe VHDL scalar data types with

More information

EEL 4783: Hardware/Software Co-design with FPGAs

EEL 4783: Hardware/Software Co-design with FPGAs EEL 4783: Hardware/Software Co-design with FPGAs Lecture 9: Short Introduction to VHDL* Prof. Mingjie Lin * Beased on notes of Turfts lecture 1 What does HDL stand for? HDL is short for Hardware Description

More information

Constructing VHDL Models with CSA

Constructing VHDL Models with CSA Constructing VHDL Models with CSA List all components (e.g., gate) inclusive propagation delays. Identify input/output signals as input/output ports. All remaining signals are internal signals. Identify

More information

Introduction to VHDL. Main language concepts

Introduction to VHDL. Main language concepts Introduction to VHDL VHSIC (Very High Speed Integrated Circuit) Hardware Description Language Current standard is IEEE 1076-1993 (VHDL-93). Some tools still only support VHDL-87. Tools used in the lab

More information

Lecture 12 VHDL Synthesis

Lecture 12 VHDL Synthesis CPE 487: Digital System Design Spring 2018 Lecture 12 VHDL Synthesis Bryan Ackland Department of Electrical and Computer Engineering Stevens Institute of Technology Hoboken, NJ 07030 1 What is Synthesis?

More information

Advanced Training Course on FPGA Design and VHDL for Hardware Simulation and Synthesis. 26 October - 20 November, 2009

Advanced Training Course on FPGA Design and VHDL for Hardware Simulation and Synthesis. 26 October - 20 November, 2009 2065-15 Advanced Training Course on FPGA Design and VHDL for Hardware Simulation and Synthesis 26 October - 20 November, 2009 FPGA Architectures & VHDL Introduction to Synthesis Nizar Abdallah ACTEL Corp.2061

More information

VHDL: A Crash Course

VHDL: A Crash Course VHDL: A Crash Course Dr. Manuel Jiménez With contributions by: Irvin Ortiz Flores Electrical and Computer Engineering Department University of Puerto Rico - Mayaguez Outline Background Program Structure

More information

ECE 2020B Fundamentals of Digital Design Spring problems, 6 pages Exam Two Solutions 26 February 2014

ECE 2020B Fundamentals of Digital Design Spring problems, 6 pages Exam Two Solutions 26 February 2014 Problem 1 (4 parts, 21 points) Encoders and Pass Gates Part A (8 points) Suppose the circuit below has the following input priority: I 1 > I 3 > I 0 > I 2. Complete the truth table by filling in the input

More information

Lecture 38 VHDL Description: Addition of Two [5 5] Matrices

Lecture 38 VHDL Description: Addition of Two [5 5] Matrices Lecture 38 VHDL Description: Addition of Two [5 5] Matrices -- First, write a package to declare a two-dimensional --array with five elements library IEEE; use IEEE.STD_LOGIC_1164.all; package twodm_array

More information

310/ ICTP-INFN Advanced Tranining Course on FPGA and VHDL for Hardware Simulation and Synthesis 27 November - 22 December 2006

310/ ICTP-INFN Advanced Tranining Course on FPGA and VHDL for Hardware Simulation and Synthesis 27 November - 22 December 2006 310/1780-10 ICTP-INFN Advanced Tranining Course on FPGA and VHDL for Hardware Simulation and Synthesis 27 November - 22 December 2006 VHDL & FPGA - Session 2 Nizar ABDALLH ACTEL Corp. 2061 Stierlin Court

More information

EE6301 DIGITAL LOGIC CIRCUITS UNIT V VHDL PART A

EE6301 DIGITAL LOGIC CIRCUITS UNIT V VHDL PART A EE6301 DIGITAL LOGIC CIRCUITS UNIT V VHDL PART A 1. Write a VHDL code for 2 x 1 MUX. [N/D 14], [ M/J 16], [A/M 17] library ieee; use ieee.std_logic_1164.all; entity mux2_1 is port (a,b,sel:instd_logic;

More information

Computer-Aided Digital System Design VHDL

Computer-Aided Digital System Design VHDL بس م اهلل الر حم ن الر حی م Iran University of Science and Technology Department of Computer Engineering Computer-Aided Digital System Design VHDL Ramin Rajaei ramin_rajaei@ee.sharif.edu Modeling Styles

More information

DOD, VHSIC ~1986, IEEE stnd 1987 Widely used (competition Verilog) Commercial VHDL Simulators, Synthesizers, Analyzers,etc Student texts with CDROMs

DOD, VHSIC ~1986, IEEE stnd 1987 Widely used (competition Verilog) Commercial VHDL Simulators, Synthesizers, Analyzers,etc Student texts with CDROMs DOD, VHSIC ~1986, IEEE stnd 1987 Widely used (competition Verilog) Commercial VHDL Simulators, Synthesizers, Analyzers,etc Student texts with CDROMs Entity Architecture Blocks CAE Symbol CAE Schematic

More information

Tutorial 4 HDL. Outline VHDL PROCESS. Modeling Combinational Logic. Structural Description Instantiation and Interconnection Hierarchy

Tutorial 4 HDL. Outline VHDL PROCESS. Modeling Combinational Logic. Structural Description Instantiation and Interconnection Hierarchy CS3: Hardware Lab Tutorial 4 HDL Outline VHDL basic language concepts basic design methodology Examples A. Sahu Dept of Comp. Sc. & Engg. Indian Institute of Technology Guwahati i i i3 i4 Modeling Combinational

More information

Modeling Complex Behavior

Modeling Complex Behavior Modeling Complex Behavior Sudhakar Yalamanchili, Georgia Institute of Technology, 2006 (1) Outline Abstraction and the Process Statement Concurrent processes and CSAs Process event behavior and signals

More information

Lab Assignment 1. Developing and Using Testbenches

Lab Assignment 1. Developing and Using Testbenches Lab Assignment 1 Developing and Using Testbenches Task 1 Develop a testbench in VHDL to test and verify the operation of an ALU (Arithmetic Logic Unit), specified using Fig. 1 and Tables 1 and 2. The ALU

More information

!"#$%&&"'(')"*+"%,%-".#"'/"'.001$$"

!#$%&&'(')*+%,%-.#'/'.001$$ !"#$%&&"'(')"*+"%,%-".#"'/"'.001$$"!!"#$%&'#()#*+"+#,-."/0110#230#4."50",+"+#)6# 6+-+#(.6+-0#)4475.8)60#0/#.65-0#230#9+**+"+# 2.48).-0#(.6+-0#! 2+"*5."5*:#,."/0110#;)**0! *),".6*:#-.99-0*0"5."+#2+660,.40"5)#;)*)2)#

More information

VHDL for FPGA Design. by : Mohamed Samy

VHDL for FPGA Design. by : Mohamed Samy VHDL for FPGA Design by : Mohamed Samy VHDL Vhdl is Case insensitive myvar = myvar = MYVAR IF = if = if Comments start with -- Comments can exist anywhere in the line Semi colon indicates the end of statements

More information

VHDL Simulation. Testbench Design

VHDL Simulation. Testbench Design VHDL Simulation Testbench Design The Test Bench Concept Elements of a VHDL/Verilog testbench Unit Under Test (UUT) or Device Under Test (DUT) instantiate one or more UUT s Stimulus of UUT inputs algorithmic

More information

Computer Organization EE 3755 Midterm Examination

Computer Organization EE 3755 Midterm Examination Name Computer Organization EE 3755 Midterm Examination Wednesday, 30 October 2013, 8:30 9:20 CDT Alias Problem 1 Problem 2 Problem 3 Problem 4 Problem 5 Problem 6 Problem 7 Exam Total (21 pts) (15 pts)

More information

EL 310 Hardware Description Languages Midterm

EL 310 Hardware Description Languages Midterm EL 3 Hardware Description Languages Midterm 2 3 4 5 Total Name: ID : Notes: ) Please answer the questions in the provided space after each question. 2) Duration is minutes 3) Closed books and closed notes.

More information

Revision: August 31, E Main Suite D Pullman, WA (509) Voice and Fax

Revision: August 31, E Main Suite D Pullman, WA (509) Voice and Fax Exercise 7: Combinational rithmetic Circuits Revision: ugust 3, 29 25 E Main uite D Pullman, W 9963 (59) 334 636 Voice and Fax TUDENT I am submitting my own work, and I understand penalties will be assessed

More information