Concurrent Statements

Slides:



Advertisements
Similar presentations
UNIT 2: Data Flow description
Advertisements

Sequential Statements
Quad 2-to-1 and Quad 4-to-1 Multiplexers Discussion D2.4 Example 7.
Introduction to VHDL VHDL Tutorial R. E. Haskell and D. M. Hanna T1: Combinational Logic Circuits.
Sequential Statements Module F3.2. Sequential Statements Statements executed sequentially within a process If Statements Case Statements Loop Statements.
VHDL Rabee Shatnawi & Rami Haddad. What is this presentation about?! This presentation will introduce the key concepts in VHDL and the important syntax.
Introduction to VHDL CSCE 496/896: Embedded Systems Witawas Srisa-an.
Kazi Fall 2006 EEGN 4941 EEGN-494 HDL Design Principles for VLSI/FPGAs Khurram Kazi Some of the slides were taken from K Gaj’s lecture slides from GMU’s.
ECE C03 Lecture 141 Lecture 14 VHDL Modeling of Sequential Machines Hai Zhou ECE 303 Advanced Digital Design Spring 2002.
مرتضي صاحب الزماني Memory Modeling. مرتضي صاحب الزماني مدل ساده package body Mem_Pkg is constant DataWidth_c : Natural := 8; constant AddrWidth_c : Natural.
Fall 08, Oct 29ELEC Lecture 7 (updated) 1 Lecture 7: VHDL - Introduction ELEC 2200: Digital Logic Circuits Nitin Yogi
Introduction to VHDL (part 2)
1 Data Object Object Types A VHDL object consists of one of the following: –Signal, Which represents interconnection wires that connect component instantiation.
Acknowledgements: LRS - UNI Erlangen-Nuremberg
Lecture # 4 Masuma Akter Lecturer, Dept. of EEE.
ENG6090 RCS1 ENG6090 Reconfigurable Computing Systems Hardware Description Languages Part 4: Modeling Dataflow.
1 Part I: VHDL CODING. 2 Design StructureData TypesOperators and AttributesConcurrent DesignSequential DesignSignals and VariablesState Machines A VHDL.
A.7 Concurrent Assignment Statements Used to assign a value to a signal in an architecture body. Four types of concurrent assignment statements –Simple.
CprE / ComS 583 Reconfigurable Computing Prof. Joseph Zambreno Department of Electrical and Computer Engineering Iowa State University Lecture #17 – Introduction.
7/10/2007DSD,USIT,GGSIPU1 Basic concept of Sequential Design.
VHDL in 1h Martin Schöberl. AK: JVMHWVHDL2 VHDL /= C, Java,… Think in hardware All constructs run concurrent Different from software programming Forget.
Digital Design with VHDL Presented by: Amir Masoud Gharehbaghi
مرتضي صاحب الزماني 1 Data Structures. مرتضي صاحب الزماني 2 Corner Stitching.
VHDL for Combinational Circuits. VHDL We Know Simple assignment statements –f
مرتضي صاحب الزماني 1 Basic Graph Algorithms. مرتضي صاحب الزماني 2 Graph Data Structures Adjacency Matrix [©Bazargan]
Fall 2004EE 3563 Digital Systems Design EE 3563 VHDL – Basic Language Elements  Identifiers: –basic identifier: composed of a sequence of one or more.
VHDL Very High Speed Integrated Circuit Hardware Description Language Shiraz University of shiraz spring 2011.
ECE 332 Digital Electronics and Logic Design Lab Lab 6 Concurrent Statements & Adders.
15-Dec-15EE5141 Chapter 4 Sequential Statements ä Variable assignment statement ä Signal assignment statement ä If statement ä Case statement ä Loop statement.
George Mason University Data Flow Modeling in VHDL ECE 545 Lecture 7.
Digital Design with VHDL Presented by: Amir Masoud Gharehbaghi
9/9/2006DSD,USIT,GGSIPU1 Concurrent vs Sequential Combinational vs Sequential logic –Combinational logic is that in which the output of the circuit depends.
04/26/20031 ECE 551: Digital System Design & Synthesis Lecture Set : Introduction to VHDL 12.2: VHDL versus Verilog (Separate File)
CEC 220 Digital Circuit Design VHDL in Sequential Logic Wednesday, March 25 CEC 220 Digital Circuit Design Slide 1 of 13.
Data Flow Modeling in VHDL
مرتضي صاحب الزماني 1 Operators. Assignments In DA(BS) Deadline: 3 Ordibehesht مرتضي صاحب الزماني 2.
Relational Operators Result is boolean: greater than (>) less than (=) less than or equal to (
55:032 - Intro. to Digital DesignPage 1 VHDL and Processes Defining Sequential Circuit Behavior.
Dataflow modelling Lecture 4. Dataflow modelling Specifies the functioning of a circuit without explicitly refer to its structure Functioning is described.
QUIZ What Circuit is this ?. Entity (The Object) -- Entity informs about the circuit’s interface -- signals entity my_circuit is port (L0, L1, L2, L3.
George Mason University Data Flow Modeling of Combinational Logic ECE 545 Lecture 5.
Sequential statements (1) process
Combinational logic circuit
Conditional Signal Assignment
Introduction To VHDL 홍 원 의.
B e h a v i o r a l to R T L Coding
Introduction Introduction to VHDL Entities Signals Data & Scalar Types
Module Goals Introduce structural VHDL constructs Use of components
Dataflow Style Combinational Design with VHDL
CHAPTER 17 VHDL FOR SEQUENTIAL LOGIC
Some VHDL Details 10/8/08 ECE Lecture 8.
Chapter 2. Introduction To VHDL
Sequential Design.
ECE 448 Lecture 3 Combinational-Circuit Building Blocks Data Flow Modeling of Combinational Logic ECE 448 – FPGA and ASIC Design with VHDL.
IAS 0600 Digital Systems Design
ECE 434 Advanced Digital System L08
ECE 448 Lecture 3 Combinational-Circuit Building Blocks Data Flow Modeling of Combinational Logic ECE 448 – FPGA and ASIC Design with VHDL.
CHAPTER 17 VHDL FOR SEQUENTIAL LOGIC
Sequential Statements
Data Flow Modeling of Combinational Logic
The continuation of a grand tour of the language.
Concurrent vs Sequential
ECE 448 Lecture 3 Combinational-Circuit Building Blocks Data Flow Modeling of Combinational Logic ECE 448 – FPGA and ASIC Design with VHDL.
VHDL Programming (08 Marks)
Program Flow.
The continuation of a grand tour of the language.
Data Object By E. Thirumeni Department of Electronics
CprE / ComS 583 Reconfigurable Computing
4-Input Gates VHDL for Loops
VHDL - Introduction.
Presentation transcript:

Concurrent Statements مرتضي صاحب الزماني

Concurrent Statements Concurrent statements are executed at the same time, independent of the order in which they appear مرتضي صاحب الزماني

Conditional Signal Assignment Condition is a Boolean expression Mandatory else path, unless unconditional assignment conditions may overlap priority Similar to if ..., elsif ..., else constructs TARGET <= VALUE_1 when CONDITION_1 else                     VALUE_2 when CONDITION_2 else                     . . .                     VALUE_n; هرگاه تغييري روي سيگنالهاي سمت راست رخ دهد اين انتساب بار ديگر ارزيابي مي شود (هميشه فعال است) مرتضي صاحب الزماني

Conditional Signal Assignment (Example) entity CONDITIONAL_ASSIGNMENT is    port (A, B, C, X : in   bit_vector (3 downto 0);             Z_CONC : out bit_vector (3 downto 0);             Z_SEQ    : out bit_vector (3 downto 0)); end CONDITIONAL_ASSIGNMENT; architecture EXAMPLE of CONDITIONAL_ASSIGNMENT is begin    -- Concurrent version of conditional signal assignment    Z_CONC <= B when X = "1111" else                         C when X > "1000" else                         A;   -- Equivalent sequential statements    process (A, B, C, X)    begin        if  (X = "1111")  then          Z_SEQ <= B        elsif  (X > "1000")  then          Z_SEQ <= C;       else          Z_SEQ <= A;        end if;    end process; end EXAMPLE; توجه: در پروسس، همة سيگنالهاي سمت راست انتساب در ليست حساسيت آمده اند. مرتضي صاحب الزماني

Selected Signal Assignment Choice options must not overlap All choice options have to be covered single values value range selection of values ("|" means "or") "when others" covers all remaining choice options Similar to case ..., when ... constructs with EXPRESSION select TARGET <= VALUE_1 when CHOICE_1,                         VALUE_2 when CHOICE_2 | CHOICE_3,                         VALUE_3 when CHOICE_4 to CHOICE_5,                         · · ·                         VALUE_n when others; مرتضي صاحب الزماني

Selected Signal Assignment : Example entity SELECTED_ASSIGNMENT is    port (A, B, C, X : in   integer range 0 to 15;             Z_CONC : out integer range 0 to 15;             Z_SEQ    : out integer range 0 to 15); end SELECTED_ASSIGNMENT;    architecture EXAMPLE of SELECTED_ASSIGNMENT is begin    -- Concurrent version of selected signal assignment    with X select       Z_CONC <= A when 0,                            B when 7 | 9,                            C when 1 to 5,                            0 when others;    -- Equivalent sequential statements    process (A, B, C, X)    begin       case X is          when 0         => Z_SEQ <= A;          when 7 | 9    => Z_SEQ <= B;          when 1 to 5  => Z_SEQ <= C;          when others => Z_SEQ <= 0; end case;    end process; end EXAMPLE; مرتضي صاحب الزماني

Concurrent Statements: Summary Modeling of multiplexers conditional signal assignment: decision based upon several signals selected signal assignment: decision based upon values of a single signal مرتضي صاحب الزماني