Language Attributes and Package Standard

Slides:



Advertisements
Similar presentations
Slide: 1 Copyright © AdaCore Arrays Presented Quentin Ochem university.adacore.com.
Advertisements

L18 – VHDL for other counters and controllers. Other counters  More examples Gray Code counter Controlled counters  Up down counter  Ref: text Unit.
COE 405 Basic Concepts in VHDL Dr. Aiman H. El-Maleh Computer Engineering Department King Fahd University of Petroleum & Minerals Dr. Aiman H. El-Maleh.
VHDL Data Types Module F3.1. VHDL Data Types Scalar Integer Enumerated Real (floating point)* Physical* Composite Array Record Access (pointers)* * Not.
1 Chapter 4 Language Fundamentals. 2 Identifiers Program parts such as packages, classes, and class members have names, which are formally known as identifiers.
ELEN 468 Lecture 191 ELEN 468 Advanced Logic Design Lecture 19 VHDL.
VHDL. What is VHDL? VHDL: VHSIC Hardware Description Language  VHSIC: Very High Speed Integrated Circuit 7/2/ R.H.Khade.
1 Part II: VHDL CODING. 2 Design StructureData TypesOperators and AttributesConcurrent DesignSequential DesignSignals and VariablesState Machines A VHDL.
1 Data Object Object Types A VHDL object consists of one of the following: –Signal, Which represents interconnection wires that connect component instantiation.
Concordia University 1 Lecture #8 In this lecture we will cover the following material: The standard package, The std_logic_1164  Objects & data Types.
VHDL Training ©1995 Cypress Semiconductor 1 Introduction  VHDL is used to:  document circuits  simulate circuits  synthesize design descriptions 
1/8/ L11 Project Step 5Copyright Joanne DeGroat, ECE, OSU1 Project Step 5 Step 2 in behavioral modeling. Use of procedures.
The Xilinx Spartan-3E FPGA family. Field Programmable Gate Array (FPGA) Configurable Logic Block (CLB) –Look-up table (LUT) –Register –Logic circuit Adder.
L16 – VHDL for State Machines with binary encoding.
2-Jun-16EE5141 Chapter 3 ä The concept of the signal ä Process concurrency ä Delta time ä Concurrent and sequential statements ä Process activation by.
Fall 2004EE 3563 Digital Systems Design EE 3563 VHDL – Basic Language Elements  Identifiers: –basic identifier: composed of a sequence of one or more.
15-Nov-15 All the Operators. operators.ppt 2 Precedence An operator with higher precedence is done earlier (precedes) one with lower precedence A higher.
L13 – VHDL Language Elements. VHDL Language Elements  Elements needed for FPGA design Types  Basic Types  Resolved Types – special attributes of resolved.
9/4/ L6 Language Overview I Copyright 2006, Joanne DeGroat, ECE, OSU 1 Language Overview I The start of a grand tour of the language.
Introduction to VHDL. VHDL DARPA, VHSIC (Very High Speed Integrated Circuits) program Different manufacturers Standard language to describe –Structure.
 In the java programming language, a keyword is one of 50 reserved words which have a predefined meaning in the language; because of this,
04/26/20031 ECE 551: Digital System Design & Synthesis Lecture Set : Introduction to VHDL 12.2: VHDL versus Verilog (Separate File)
BASIC VHDL LANGUAGE ELEMENTS Digital Design for Instrumentation with VHDL 1.
Relational Operators Result is boolean: greater than (>) less than (=) less than or equal to (
Signals & Data-typesVer 1.1, Copyright 1997, TS, Inc. VHDL S i g n a l s & D a t a T y p e s Page 1.
1/8/ L10 AttributesCopyright Joanne DeGroat, ECE, OSU1 Language Attributes and Package Standard A very useful aspect of the language.
IAY 0600 Digital Systems Design
Introduction To VHDL 홍 원 의.
The Machine Model Memory
Subject Name: FUNDAMENTALS OF HDL Subject Code: 10EC45
Operators Assignment Operators Logical Operators Relational Operators
Behavioral Style Combinational Design with VHDL
Dataflow Style Combinational Design with VHDL
Timing Model Start Simulation Delay Update Signals Execute Processes
Behavioral Style Combinational Design with VHDL
Behavioral modeling of a dual ported register set.
IAS 0600 Digital Systems Design
All the Operators 22-Nov-18.
IAS 0600 Digital Systems Design
Copyright Joanne DeGroat, ECE, OSU
VHDL DATA TYPES.
The start of a grand tour of the language.
All the Operators 4-Dec-18.
ECE 434 Advanced Digital System L10
IAS 0600 Digital Systems Design
Modeling of Circuits with a Regular Structure
CprE / ComS 583 Reconfigurable Computing
IAS 0600 Digital Systems Design
IAS 0600 Digital Systems Design
Step 2 in behavioral modeling. Use of procedures.
How do you achieve deterministic concurrent simulation.
Timing & Concurrency II
Copyright Joanne DeGroat, ECE, OSU
IAS 0600 Digital Systems Design
All the Operators 6-Apr-19.
An overview of the Verilog HDL.
Behavioral modeling of a dual ported register set.
All the Operators 13-Apr-19.
4. Microsystem Modeling using HDLs
Copyright Joanne DeGroat, ECE, OSU
Structural Modeling and the Generate Statement
Copyright Joanne DeGroat, ECE, OSU
VHDL Data Types Module F3.1.
Timing & Concurrency II
Step 2 in behavioral modeling. Use of procedures.
Timing & Concurrency II
Data Object By E. Thirumeni Department of Electronics
L25 – Final Review AU 15 Final Exam – Classroom – Journalism 300
Copyright Joanne DeGroat, ECE, OSU
Structural Modeling and the Generate Statement
Presentation transcript:

Language Attributes and Package Standard A very useful aspect of the language. 1/8/2007 - L10 Attributes Copyright 2006 - Joanne DeGroat, ECE, OSU

Copyright 2006 - Joanne DeGroat, ECE, OSU Attributes What are attributes? VHDL Attributes Types Signal Variables Examples Signal Specific Other Package Standard 1/8/2007 - L10 Attributes Copyright 2006 - Joanne DeGroat, ECE, OSU

Copyright 2006 - Joanne DeGroat, ECE, OSU What are attributes? John is just plain nasty!!!! Being nasty is an attribute of John. Language attributes Lovely, pretty and handsome are adjectives which describe an attribute of the language element they apply to. In the English language these are adjectives Lovely Rita ….. (Do you remember the Beatles!) In an HDL this element is called an attribute 1/8/2007 - L10 Attributes Copyright 2006 - Joanne DeGroat, ECE, OSU

Copyright 2006 - Joanne DeGroat, ECE, OSU What are attributes? VHDL attributes provide additional information on the language element to which they are associated. For example They can tell you the size of an array and whether the index is X to Y or Y downto X. They can tell you a signal’s last value Etc. 1/8/2007 - L10 Attributes Copyright 2006 - Joanne DeGroat, ECE, OSU

Attributes that relate to TYPES ATTRIBUTE: T’BASE Kind: Type Prefix: Any Type or Subtype T Result Type: The base type of T Result: Same – a type Restrictions: This attribute is allowed only as a prefix of the name of another attribute; T’BASE’LEFT Example: BIT’BASE’LEFT is ‘0’ Base Type: The base type of a type is the type itself NATURAL’BASE will have a value of INTEGER 1/8/2007 - L10 Attributes Copyright 2006 - Joanne DeGroat, ECE, OSU

Attributes that relate to TYPES ATTRIBUTE: T’LEFT Kind: Value Prefix: Any scalar type or subtype T Result Type: Same type a T Result: The left bound of T Example: BIT’LEFT has value ‘0’ Scalar type consist of enumeration, integer, physical, and floating point types. 1/8/2007 - L10 Attributes Copyright 2006 - Joanne DeGroat, ECE, OSU

Attributes that relate to TYPES ATTRIBUTE: T’RIGHT Kind: Value Prefix: Any scalar type or subtype T Result Type: Same type a T Result: The right bound of T Example: BIT’RIGHT has value ‘1’ 1/8/2007 - L10 Attributes Copyright 2006 - Joanne DeGroat, ECE, OSU

Attributes that relate to TYPES ATTRIBUTE: T’HIGH Kind: Value Prefix: Any scalar type or subtype T Result Type: Same type a T Result: The upper bound of T Example: BIT’ HIGH has value ‘1’ 1/8/2007 - L10 Attributes Copyright 2006 - Joanne DeGroat, ECE, OSU

Attributes that relate to TYPES ATTRIBUTE: T’LOW Kind: Value Prefix: Any scalar type or subtype T Result Type: Same type a T Result: The lower bound of T Example: BIT’LOW has value ‘0’ 1/8/2007 - L10 Attributes Copyright 2006 - Joanne DeGroat, ECE, OSU

Attributes that relate to TYPES ATTRIBUTE: T’POS(X) Kind: Function Prefix: Any discrete or physical type or subtype T A discrete type is an enumeration or intger type. Parameter: Any expression whose type is the base type of T Result Type: Universal Integer Universal integer is an integer of an anonymous predefined integer type. An integer. Result: The position number of the value of the parameter. Example: type operations is (OPADD, OPSUB, OPAND, OPOR); signal oper : operations; Then operations’POS(OPSUB) has value 2 operations’POS(OPOR) has value 4 1/8/2007 - L10 Attributes Copyright 2006 - Joanne DeGroat, ECE, OSU

Attributes that relate to TYPES ATTRIBUTE: T’VAL(X) Kind: Function Prefix: Any discrete or physical type or subtype T Parameter: Any expression of any integer type Result Type: The base type of T Result: The value from the type whose position number is the universal integer value corresponding to X Example: type operations is (OPADD, OPSUB, OPAND, OPOR); signal oper : operations; Then operations’VAL(2) has value OPSUB operations’VAL(4) has value OPOR 1/8/2007 - L10 Attributes Copyright 2006 - Joanne DeGroat, ECE, OSU

Attributes that relate to TYPES ATTRIBUTE: T’SUCC(X) Kind: Function Prefix: Any discrete or physical type or subtype T Parameter: Any expression whose type is the base type of T Result Type: The base type of T Result: The value whose position number is one greater than that of the parameter. Restricitons: An error occurs if X equals T’BASE’HIGH Example: type operations is (OPADD, OPSUB, OPAND, OPOR); signal oper : operations; Then operations’SUCC(OPSUB) has value OPAND operations’SUCC(OPAND) has value OPOR 1/8/2007 - L10 Attributes Copyright 2006 - Joanne DeGroat, ECE, OSU

Attributes that relate to TYPES ATTRIBUTE: T’PRED(X) Kind: Function Prefix: Any discrete or physical type or subtype T Parameter: Any expression whose type is the base type of T Result Type: The base type of T Result: The value whose position number is one less than that of the parameter. Restricitons: An error occurs if X equals T’BASE’LOW Example: type operations is (OPADD, OPSUB, OPAND, OPOR); signal oper : operations; Then operations’PRED(OPSUB) has value OPADD operations’PRED(OPAND) has value OPSUB 1/8/2007 - L10 Attributes Copyright 2006 - Joanne DeGroat, ECE, OSU

Attributes that relate to TYPES ATTRIBUTE: T’LEFTOF(X) Kind: Function Prefix: Any discrete or physical type or subtype T Parameter: Any expression whose type is the base type of T Result Type: The base type of T Result: The value which is to the left of the parameter in the range of T. Restricitons: An error occurs if X equals T’BASE’LEFT Example: type operations is (OPADD, OPSUB, OPAND, OPOR); signal oper : operations; Then operations’LEFTOF(OPSUB) has value OPADD 1/8/2007 - L10 Attributes Copyright 2006 - Joanne DeGroat, ECE, OSU

Attributes that relate to TYPES ATTRIBUTE: T’RIGHTOF(X) Kind: Function Prefix: Any discrete or physical type or subtype T Parameter: Any expression whose type is the base type of T Result Type: The base type of T Result: The value which is to the right of the parameter in the range of T. Restricitons: An error occurs if X equals T’BASE’RIGHT Example: type operations is (OPADD, OPSUB, OPAND, OPOR); signal oper : operations; Then operations’RIGHTOF(OPSUB) has value OPAND 1/8/2007 - L10 Attributes Copyright 2006 - Joanne DeGroat, ECE, OSU

Attributes that relate to ARRAYS ATTRIBUTE: A’LEFT[(N)] Kind: Function Prefix: Any prefix A that is an array object Parameter: Locally static expression of type integer. Defaults to 1. Result Type: Type of the Nth index range of A Result: Left bound of the Nth index range of A. ATTRIBUTE: A’RIGHT[(N)] Result: Right bound of the Nth index range of A. 1/8/2007 - L10 Attributes Copyright 2006 - Joanne DeGroat, ECE, OSU

Attributes that relate to ARRAYS ATTRIBUTE: A’HIGH[(N)] Kind: Function Prefix: Any prefix A that is an array object Parameter: Locally static expression of type integer. Defaults to 1. Result Type: Type of the Nth index range of A Result: Upper bound of the Nth index range of A. ATTRIBUTE: A’LOW[(N)] Result: Lower bound of the Nth index range of A. 1/8/2007 - L10 Attributes Copyright 2006 - Joanne DeGroat, ECE, OSU

Attributes that relate to ARRAYS ATTRIBUTE: A’RANGE[(N)] Kind: Range Prefix: Any prefix A that is an array object Parameter: Locally static expression of type integer. Defaults to 1. Result Type: Type of the Nth index range of A Result: The range A’LEFT(N) to A’RIGHT(N) or A’LEFT(N) downto A’RIGHT(N) ATTRIBUTE: A’REVERSE_RANGE[(N)] Result:. The range A’ RIGHT(N) to A’ LEFT(N) or A’ RIGHT(N) downto A’ LEFT(N) 1/8/2007 - L10 Attributes Copyright 2006 - Joanne DeGroat, ECE, OSU

Attributes that relate to ARRAYS ATTRIBUTE: A’LENGHT[(N)] Kind: Range Prefix: Any prefix A that is an array object Parameter: Locally static expression of type integer. Defaults to 1. Result Type: Universal Integer Result: Number of values in the Nth index range, i.e., A’HIGH(N) – A’LOW(N) +1 1/8/2007 - L10 Attributes Copyright 2006 - Joanne DeGroat, ECE, OSU

Attributes that relate to ARRAYS EXAMPLE: signal mydt : bit_vector (31 downto 0); signal myto : bit_vector ( 0 to 15); Then the 1/8/2007 - L10 Attributes Copyright 2006 - Joanne DeGroat, ECE, OSU

Attributes that relate to ARRAYS EXAMPLE: signal mydt : bit_vector (31 downto 0); signal myto : bit_vector ( 0 to 15); Then the 1/8/2007 - L10 Attributes Copyright 2006 - Joanne DeGroat, ECE, OSU

Attributes that relate to ARRAYS EXAMPLE: signal mydt : bit_vector (31 downto 0); signal myto : bit_vector ( 0 to 15); Then the 1/8/2007 - L10 Attributes Copyright 2006 - Joanne DeGroat, ECE, OSU

Attributes that relate to ARRAYS EXAMPLE: signal mydt : bit_vector (31 downto 0); signal myto : bit_vector ( 0 to 15); Then the 1/8/2007 - L10 Attributes Copyright 2006 - Joanne DeGroat, ECE, OSU

Attributes that relate to ARRAYS EXAMPLE: signal mydt : bit_vector (31 downto 0); signal myto : bit_vector ( 0 to 15); Then the 1/8/2007 - L10 Attributes Copyright 2006 - Joanne DeGroat, ECE, OSU

Attributes that relate to ARRAYS EXAMPLE: signal mydt : bit_vector (31 downto 0); signal myto : bit_vector ( 0 to 15); Then the 1/8/2007 - L10 Attributes Copyright 2006 - Joanne DeGroat, ECE, OSU

Attributes that relate to ARRAYS EXAMPLE: signal mydt : bit_vector (31 downto 0); signal myto : bit_vector ( 0 to 15); Then the 1/8/2007 - L10 Attributes Copyright 2006 - Joanne DeGroat, ECE, OSU

Attributes that relate to ARRAYS EXAMPLE: signal mydt : bit_vector (31 downto 0); signal myto : bit_vector ( 0 to 15); Then the 1/8/2007 - L10 Attributes Copyright 2006 - Joanne DeGroat, ECE, OSU

Attributes that relate to SIGNALS ATTRIBUTE: S’DELAYED[(T)] Kind: Signal Prefix: Any signal Parameter: Any static expression of type TIME that evaluates to a non-negative value. Result Type: Base type of S Result: A signal equivalent to S delayed T units of time. The value of S’DELAYED(t) is always equal to the value of S t units of time previous. 1/8/2007 - L10 Attributes Copyright 2006 - Joanne DeGroat, ECE, OSU

Attributes that relate to SIGNALS ATTRIBUTE: S’STABLE[(T)] Kind: Signal Prefix: Any signal Parameter: Any static expression of type TIME that evaluates to a non-negative value. Defaults to 0 if omitted. Result Type: Boolean Result: A signal that has value TRUE when an event has not occurred on signal S for T units of time, and the value FALSE otherwise. 1/8/2007 - L10 Attributes Copyright 2006 - Joanne DeGroat, ECE, OSU

Attributes that relate to SIGNALS ATTRIBUTE: S’QUIET[(T)] Kind: Signal Prefix: Any signal Parameter: Any static expression of type TIME that evaluates to a non-negative value. Defaults to 0 if omitted. Result Type: Boolean Result: A signal that has value TRUE when the signal has been quiet (not had a change in value) for T units of time. 1/8/2007 - L10 Attributes Copyright 2006 - Joanne DeGroat, ECE, OSU

Attributes that relate to SIGNALS ATTRIBUTE: S’TRANSACTION Kind: Signal Prefix: Any signal Result Type: Type BIT Result: A signal that toggles to the inverse of its previous value in each simulation cycle in which the signal S becomes active. ATTRIBUTE: S’EVENT Result Type: Type BOOLEAN Result: A value that indicates whether an event has just occurred on signal S. 1/8/2007 - L10 Attributes Copyright 2006 - Joanne DeGroat, ECE, OSU

Attributes that relate to SIGNALS ATTRIBUTE: S’ACTIVE Kind: Function Prefix: Any signal Result Type: Type BOOLEAN Result: A value that indicated whether S is active, i.e., has a new value generated for it this simulation cycle. ATTRIBUTE: S’LAST_EVENT Result Type: Type TIME Result: The amount of time that has elapsed since the last event on signal S. 1/8/2007 - L10 Attributes Copyright 2006 - Joanne DeGroat, ECE, OSU

Attributes that relate to SIGNALS ATTRIBUTE: S’LAST_ACTIVE Kind: Function Prefix: Any signal Result Type: Type TIME Result: The amount of time that has elapsed since the last time the signal S was active. ATTRIBUTE: S’LAST_VALUE Result Type: Base type of S Result: The previous value of S. 1/8/2007 - L10 Attributes Copyright 2006 - Joanne DeGroat, ECE, OSU

Attributes that relate to Design Units ATTRIBUTE: B’BEHAVIOR Kind: Value Prefix: Any block denoted by a label or entity denoted by its architecture name. Result Type: BOOLEAN Result: The value if TRUE if the block defined by the block statement or entity does not contain a component instantiation statement. ATTRIBUTE: B’STRUCTURE The same except that TRUE when the block/entity contains only component instantiations 1/8/2007 - L10 Attributes Copyright 2006 - Joanne DeGroat, ECE, OSU

Copyright 2006 - Joanne DeGroat, ECE, OSU Package STANDARD 1/8/2007 - L10 Attributes Copyright 2006 - Joanne DeGroat, ECE, OSU

Package Standard (cont.) 1/8/2007 - L10 Attributes Copyright 2006 - Joanne DeGroat, ECE, OSU

Package Standard (completed) 1/8/2007 - L10 Attributes Copyright 2006 - Joanne DeGroat, ECE, OSU