IEEE P1076.1.1-2010/D1.1 Draft Standard VHDL Analog and Mixed-Signal Extensions—Packages for Multiple Energy Domain Support IEEE Standard VHDL Analog and MixedSignal Extensions—Packages for Multiple Energy Domain Support 1. Overview 1.1 Scope This standard defines a collection of VHDL 1076.1 packages, compatible with IEEE Std 1076.1™,1, 2 along with recommendations for conforming use, in order to facilitate the interchange of simulation models of physical components and subsystems. The packages include the definition of standard types, subtypes, natures, and constants for modeling in multiple energy domains (electrical, fluidic, mechanical, etc.) The packages are intended for use primarily in the modeling of multiple energy domain systems. The range of operation of the packages is not defined in this standard, but is intended to be valid across a wide range of disciplines and applications. This standard is embodied in the package declarations for the following packages: FUNDAMENTAL_CONSTANTS MATERIAL_CONSTANTS ENERGY_SYSTEMS ELECTRICAL_SYSTEMS MECHANICAL_SYSTEMS RADIANT_SYSTEMS THERMAL_SYSTEMS FLUIDIC_SYSTEMS 1 The IEEE standards or products referred to in this standard are trademarks of the Institute of Electrical and Electronics Engineers, Inc. 2 IEEE publications are available from the Institute of Electrical and Electronics Engineers, Inc., 445 Hoes Lane, Piscataway, NJ 08854, USA (http://standards.ieee.org/). 1 Copyright © 2010 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. Deleted: -1999 IEEE P1076.1.1-2010/D1.1 Draft Standard VHDL Analog and Mixed-Signal Extensions—Packages for Multiple Energy Domain Support 1.2 Purpose The definitions of IEEE Std 1076.1 allow users to build simulation models of physical components and subsystems that may belong to multiple energy domains (electrical, fluidic, mechanical, etc.). Such models are built upon sets of properties that are specific to each energy domain and encapsulated in so-called natures. IEEE Std 1076.1 provides a mechanism to define natures, but intentionally does not predefine any standard set of natures as it is expected that this would be done in a subsequent IEEE standard project. The definition of a standard set of natures is crucial to make possible the reuse and exchange of models written in VHDL 1076.1 within and among vendors. Deleted: -1999 Deleted: -1999 The packages were chosen for two purposes. The first purpose was to define a set of basic physical constants (either with or without default values) so that models written using these packages could have a common basis for modeling physical systems. The second purpose was to define a set of types and natures that would provide a common framework for modeling physical systems across a range of commonly used energy domains. These purposes enable models written using this standard to contain the same physical constants, but also ensure that the interfaces are consistent, correct, and maintain interoperability. 1.3 System of units The International System of Units, universally abbreviated SI (from the French Le Système International d'Unités), is the modern metric system of measurement, and is internationally recognized. The SI system of units is used in this standard to ensure that the packages are consistent, correct, and internationally interoperable. In practice this means compliance with IEEE/ASTM SI 10™. Due to the inclusion of machine readable text in this standard, it has been necessary to use mathematical notation using the syntax adopted by IEEE Std 1076.1. This is a specific exception to the general SI usage in this standard. Deleted: -2002 Deleted: -1999 1.4 IEEE math package This standard uses the VHDL mathematical packages in IEEE Std 1076-™ for the definition of basic mathematical types and operators. 2. Definitions For the purposes of this standard, the following terms and definitions apply. The Authoritative Dictionary of IEEE Standards, Seventh Edition, should be referenced for terms not defined in this clause. 2.1 unit: Attribute defined as a string that is used to define the name of the fundamental unit of the declared type. For example, for the quantity voltage in electrical systems, the UNIT is defined as "volt." 2.2 symbol: Attribute defined as a string that is used to define the symbol of the fundamental unit of the declared type. For example, for the quantity voltage in electrical systems the symbol is defined as "V." 3. Constants The constants shall be divided into two classes: fixed and user-definable. The fixed constants shall be fundamental physical constants that have accepted values. The user-definable constants shall be defined as deferred constants, allowing them to be defined in a package body by the user. This allows the package to contain names of commonly used constants, without restricting the value to specific cases. The constants package shall use the MATH_REAL package from the IEEE library. 2 Copyright © 2010 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. Deleted: .2 Deleted: -1996 IEEE P1076.1.1-2010/D1.1 Draft Standard VHDL Analog and Mixed-Signal Extensions—Packages for Multiple Energy Domain Support 3.1 Usage The FUNDAMENTAL_CONSTANTS package shall be compiled into a library symbolically named IEEE. The MATERIAL_CONSTANTS package shall be compiled into a library symbolically named IEEE_ENV. 3.2 FUNDAMENTAL_CONSTANTS ---------------------------------------------------------------------------- Copyright 2005, 2010 by IEEE. All rights reserved. --- This source file is an essential part of IEEE Std 1076.1.1 -- IEEE Standard Packages for Multiple Energy Domain Support. --- This source file may not be copied, sold, or included with software -- that is sold without written permission from the IEEE Standards -- Department. This source file may be used to implement this standard -- and may be distributed in compiled form in any manner so long as the -- compiled form does not allow direct decompilation of the original -- source file. --- This source file may be copied for individual use between licensed users. -- This source file is provided on an AS IS basis. The IEEE disclaims ANY -- WARRANTY EXPRESS OR IMPLIED INCLUDING ANY WARRANTY OF MERCHANTABILITY -- AND FITNESS FOR USE FOR A PARTICULAR PURPOSE. The user of the source -- file shall indemnify and hold IEEE harmless from any damages or liability -- arising out of the use thereof. --- Title: Standard VHDL Packages for Multiple Energy Domain Support -(IEEE 1076.1.1, FUNDAMENTAL_CONSTANTS) --- Library: This package shall be compiled into a library -- symbolically named IEEE. --- Developers: IEEE DASC VHDL Multiple Energy Domain Packages Working Group --- Purpose: To define a set of basic physical constants with default values. --- Limitation: --- Notes: The fundamental constants used in this package were based on the -National Institute of Standards and Technology (NIST) values with -published uncertainty as given in the table below: --- Constant Description Default value Uncertainty -- ----------------------------------------- PHYS_Q Electronic charge 1.602_176_462e-19 0.000_000_063e19 -- PHYS_EPS0 Permittivity of vacuum 8.854_187_817e-12 exact -- PHYS_MU0 Permeability of vacuum 4.0e-7*pi exact -- PHYS_K Boltzmann’s constant 1.380_650_3e-23 0.000_002_4e-23 -- PHYS_GRAVITY Accel. due to gravity 9.806_65 exact -- PHYS_CTOK Convert degrees C->K 273.15 exact -- PHYS_C Velocity of light 299_792_458.0 exact -- PHYS_H Planck’s constant 6.626_068_76e-34 0.000_000_52e-34 -- PHYS_H_OVER_2_PI Planck’s constant/2*Pi PHYS_H/MATH_2_PI 0.000_000_82e-34 --- ----------------------------------------------------------------------------- Version : 2.0 -- Date : 15 January 2010 3 Copyright © 2010 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. Deleted: -2004 Deleted: –2004 Deleted: -19 Deleted: -19 Deleted: -12 Deleted: -7 Deleted: -23 Deleted: -23 Deleted: -34 Deleted: -34 Deleted: -34 Deleted: 1.0 Deleted: 4 November 2004 IEEE P1076.1.1-2010/D1.1 Draft Standard VHDL Analog and Mixed-Signal Extensions—Packages for Multiple Energy Domain Support -- ---------------------------------------------------------------------------library IEEE; use IEEE.MATH_REAL.all; package FUNDAMENTAL_CONSTANTS is -- Declaration attribute SYMBOL : STRING; attribute UNIT : STRING; -- Physical Constant Definitions -- Electronic charge <COULOMB> constant PHYS_Q : REAL := 1.602_176_462e-19; Deleted: -19 -- Permittivity of vacuum <FARADS/METER> constant PHYS_EPS0 : REAL := 8.854_187_817e-12; Deleted: -12 -- Permeability of vacuum <HENRIES/METER> constant PHYS_MU0 : REAL := 4.0e-7 * MATH_PI; Deleted: -7 -- Boltzmann's constant <JOULES/KELVIN> constant PHYS_K : REAL := 1.380_650_3e-23; -- Acceleration due to gravity <METERS/SECOND_SQUARED> constant PHYS_GRAVITY : REAL := 9.806_65; -- Conversion between degrees Celsius and Kelvin constant PHYS_CTOK : REAL := 273.15; Formatted: Portuguese (Brazil) Deleted: -23 Formatted: Portuguese (Brazil) Deleted: -34 -- Velocity of light in a vacuum <METERS/SECOND> constant PHYS_C : REAL := 299_792_458.0; Formatted: Portuguese (Brazil) -- Planck’s constant constant PHYS_H : REAL := 6.626_068_76e-34; Deleted: -24 Deleted: -21 -- Planck’s constant divided by 2 pi constant PHYS_H_OVER_2_PI : REAL := PHYS_H/MATH_2_PI; Deleted: -18 Deleted: -15 -- common scaling factors constant YOCTO : REAL := constant ZEPTO : REAL := constant ATTO : REAL := constant FEMTO : REAL := constant PICO : REAL := constant NANO : REAL := constant MICRO : REAL := constant MILLI : REAL := constant CENTI : REAL := constant DECI : REAL := constant DEKA : REAL := constant HECTO : REAL := constant KILO : REAL := constant MEGA : REAL := constant GIGA : REAL := constant TERA : REAL := constant PETA : REAL := constant EXA : REAL := constant ZETTA : REAL := constant YOTTA : REAL := alias DECA is DEKA; Deleted: -12 Deleted: -9 Deleted: -6 Deleted: -3 Deleted: -2 Deleted: -1 Deleted: +1 Deleted: +2 Deleted: +3 Deleted: +6 Deleted: +9 Deleted: +1 Deleted: +1 Deleted: +1 Deleted: +2 Deleted: +2 1.0e-24; 1.0e-21; 1.0e-18; 1.0e-15; 1.0e-12; 1.0e-9; 1.0e-6; 1.0e-3; 1.0e-2; 1.0e-1; 1.0e+1; 1.0e+2; 1.0e+3; 1.0e+6; 1.0e+9; 1.0e+122; 1.0e+155; 1.0e+188; 1.0e+211; 1.0e+244; end package FUNDAMENTAL_CONSTANTS; 4 Copyright © 2010 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. IEEE P1076.1.1-2010/D1.1 Draft Standard VHDL Analog and Mixed-Signal Extensions—Packages for Multiple Energy Domain Support 3.3 MATERIAL_CONSTANTS -------------------------------------------------------------------------- Copyright 2005, 2010 by IEEE. All rights reserved. --- This source file is an essential part of IEEE Std 1076.1.1 -- IEEE Standard Packages for Multiple Energy Domain Support. --- This source file may not be copied, sold, or included with software -- that is sold without written permission from the IEEE Standards -- Department. This source file may be used to implement this standard -- and may be distributed in compiled form in any manner so long as the -- compiled form does not allow direct decompilation of the original -- source file. --- This source file may be copied for individual use between licensed users. -- This source file is provided on an AS IS basis. The IEEE disclaims ANY -- WARRANTY EXPRESS OR IMPLIED INCLUDING ANY WARRANTY OF MERCHANTABILITY -- AND FITNESS FOR USE FOR A PARTICULAR PURPOSE. The user of the source -- file shall indemnify and hold IEEE harmless from any damages or liability -- arising out of the use thereof. --- Title: Standard VHDL Packages for Multiple Energy Domain Support -(IEEE 1076.1.1, MATERIAL_CONSTANTS) --- Library: This package shall be compiled into a library -- symbolically named IEEE_ENV. --- Developers: IEEE DASC VHDL Multiple Energy Domain Packages Working Group --- Purpose: To define a set of basic physical constants without default values. --- Limitation: --- Notes: Deferred constants allow the user to define the value, but the -names of these constants have been standardized. The rationale -for this is that, for example, properties of materials are measured -and subject to variation according the application context, -environmental conditions, and assumptions of individual experiments. --The values of the constants used in this package were based on the -National Institute of Standards and Technology (NIST) values (or from -reference [1] given below) provided in the table below: --- Constant Typical Value Description -- -------------------- -------------- PHYS_EPS_SI 11.7 Relative permittivity of silicon -- PHYS_EPS_SIO2 3.9 Relative permittivity of silicon dioxide -- PHYS_E_SI 190.0e+9 Young's Modulus for silicon <PASCALS> -- PHYS_E_SIO2 73.0e+9 Young's Modulus for silicon dioxide <PASCALS> -- PHYS_E_POLY 1.62e+9 [1] Young's Modulus for polysilicon <PASCALS> -- PHYS_NU_SI 0.28 Poisson's Ratio for silicon <100-orientation> -- PHYS_NU_POLY 0.22 [1] Poisson's Ratio for polysilicon <100-orientation> -- PHYS_RHO_POLY 2330 Density of polysilicon <KILOGRAMS/METER_CUBED> -- PHYS_RHO_SIO2 2220 [1] Density of silicon-dioxide -<KILOGRAMS/METER_CUBED> -- [1] John Lau,"Thermal Stress and Strain in Microelectronics -- Packaging" 5 Copyright © 2010 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. Deleted: -2004 Deleted: –2004 Deleted: +9 Deleted: +9 Deleted: +9 IEEE P1076.1.1-2010/D1.1 Draft Standard VHDL Analog and Mixed-Signal Extensions—Packages for Multiple Energy Domain Support -- ----------------------------------------------------------------------------- Version : 2.0 -- Date : 15 January 2010 -- ---------------------------------------------------------------------------package MATERIAL_CONSTANTS is Deleted: 1.0 Deleted: 4 November 2004 -- Relative permittivity of silicon constant PHYS_EPS_SI : REAL; -- Relative permittivity of silicon dioxide constant PHYS_EPS_SIO2 : REAL; -- Young's Modulus for silicon <PASCALS> constant PHYS_E_SI : REAL; -- Young's Modulus for silicon dioxide <PASCALS> constant PHYS_E_SIO2 : REAL; -- Young's Modulus for polysilicon <PASCALS> constant PHYS_E_POLY : REAL; -- Poisson's Ratio for silicon <100-orientation> constant PHYS_NU_SI : REAL; -- Poisson's Ratio for polysilicon <100-orientation> constant PHYS_NU_POLY : REAL; -- Density of polysilicon <KILOGRAMS/METER_CUBED> constant PHYS_RHO_POLY : REAL; -- Density of silicon-dioxide <KILOGRAMS/METER_CUBED> constant PHYS_RHO_SIO2 : REAL; -- Environmental constants constant AMBIENT_TEMPERATURE : REAL; constant AMBIENT_PRESSURE : REAL; constant AMBIENT_LUMINANCE : REAL; -- Ambient temperature <KELVIN> -- Ambient pressure <PASCALS> -- Ambient illuminance <LUX> end package MATERIAL_CONSTANTS; 4. Energy domain packages IEEE Std 1076.1 requires that analog properties be defined using quantities and natures. Quantities can be free (not with respect to a specific reference) or can be through or across branch quantities defined between terminals of a given nature. Different energy domains use basic definitions of natures, and through and across types that are defined in these packages. For example, in the electrical domain, through quantities may be defined using currents and across quantities as voltages. Each package defines the names of quantity types, natures, tolerances, units, and symbols for use within a single energy domain. The domain definition packages require the use of the FUNDAMENTAL_CONSTANTS package defined in 3.2. Deleted: -1999 4.1 ENERGY_SYSTEMS -------------------------------------------------------------------------- Copyright 2005, 2010 by IEEE. All rights reserved. --- This source file is an essential part of IEEE Std 1076.1.1 -- IEEE Standard Packages for Multiple Energy Domain Support. --- This source file may not be copied, sold, or included with software -- that is sold without written permission from the IEEE Standards 6 Copyright © 2010 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. Deleted: -2004 IEEE P1076.1.1-2010/D1.1 Draft Standard VHDL Analog and Mixed-Signal Extensions—Packages for Multiple Energy Domain Support ----- Department. This source file may be used to implement this standard and may be distributed in compiled form in any manner so long as the compiled form does not allow direct decompilation of the original source file. -- ---------- This source file may be copied for individual use between licensed users. This source file is provided on an AS IS basis. The IEEE disclaims ANY WARRANTY EXPRESS OR IMPLIED INCLUDING ANY WARRANTY OF MERCHANTABILITY AND FITNESS FOR USE FOR A PARTICULAR PURPOSE. The user of the source file shall indemnify and hold IEEE harmless from any damages or liability arising out of the use thereof. Title: Standard VHDL Packages for Multiple Energy Domain Support (IEEE 1076.1.1, ENERGY_SYSTEMS) -- -------- Deleted: –2004 Library: This package shall be compiled into a library symbolically named IEEE. Developers: IEEE DASC VHDL Multiple Energy Domain Packages Working Group Purpose: To define a set of types and natures that would provide a common framework for modeling energy systems. -- -- Limitation: -- -- Notes: -- -- ----------------------------------------------------------------------------- Version : 2.0 -- Date : 15 January 2010 -- ---------------------------------------------------------------------------library IEEE; use IEEE.FUNDAMENTAL_CONSTANTS.all; package ENERGY_SYSTEMS is -- subtype declarations subtype ENERGY is REAL tolerance "DEFAULT_ENERGY"; subtype POWER is REAL tolerance "DEFAULT_POWER"; subtype PERIODICITY is REAL tolerance "DEFAULT_PERIODICITY"; subtype REAL_ACROSS is REAL tolerance "DEFAULT_REAL_ACROSS"; subtype REAL_THROUGH is REAL tolerance "DEFAULT_REAL_THROUGH"; -- attribute declarations -- Use of UNIT to designate full description of units attribute UNIT of ENERGY : subtype is "joule"; attribute UNIT of POWER : subtype is "watt"; -- Use of SYMBOL to designate abbreviation of units attribute SYMBOL of ENERGY : subtype is "J"; attribute SYMBOL of POWER : subtype is "W"; -- nature declarations nature UNSPECIFIED is REAL_ACROSS across REAL_THROUGH through UNSPECIFIED_REF reference; nature UNSPECIFIED_VECTOR is array (NATURAL range <>) of UNSPECIFIED; -- vector subtype declarations subtype ENERGY_VECTOR is subtype POWER_VECTOR is subtype PERIODICITY_VECTOR is subtype REAL_ACROSS_VECTOR is REAL_VECTOR tolerance "DEFAULT_ENERGY"; REAL_VECTOR tolerance "DEFAULT_POWER"; REAL_VECTOR tolerance "DEFAULT_PERIODICITY"; UNSPECIFIED_VECTOR'across; 7 Copyright © 2010 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. Deleted: 1.0 Deleted: 4 November 2004 IEEE P1076.1.1-2010/D1.1 Draft Standard VHDL Analog and Mixed-Signal Extensions—Packages for Multiple Energy Domain Support subtype REAL_THROUGH_VECTOR is UNSPECIFIED_VECTOR'through; end package ENERGY_SYSTEMS; 4.2 ELECTRICAL_SYSTEMS -------------------------------------------------------------------------- Copyright 2005, 2010 by IEEE. All rights reserved. --- This source file is an essential part of IEEE Std 1076.1.1 -- IEEE Standard Packages for Multiple Energy Domain Support. --- This source file may not be copied, sold, or included with software -- that is sold without written permission from the IEEE Standards -- Department. This source file may be used to implement this standard -- and may be distributed in compiled form in any manner so long as the -- compiled form does not allow direct decompilation of the original -- source file. --- This source file may be copied for individual use between licensed users. -- This source file is provided on an AS IS basis. The IEEE disclaims ANY -- WARRANTY EXPRESS OR IMPLIED INCLUDING ANY WARRANTY OF MERCHANTABILITY -- AND FITNESS FOR USE FOR A PARTICULAR PURPOSE. The user of the source -- file shall indemnify and hold IEEE harmless from any damages or liability -- arising out of the use thereof. --- Title: Standard VHDL Packages for Multiple Energy Domain Support -(IEEE 1076.1.1, ELECTRICAL_SYSTEMS) --- Library: This package shall be compiled into a library -- symbolically named IEEE. --- Developers: IEEE DASC VHDL Multiple Energy Domain Packages Working Group --- Purpose: To define a set of types and natures that would provide a -common framework for modeling electrical, magnetic, and -electromagnetic systems. --- Limitation: --- Notes: --- ----------------------------------------------------------------------------- Version : 2.0 -- Date : 15 January 2010 -- ---------------------------------------------------------------------------library IEEE; use IEEE.FUNDAMENTAL_CONSTANTS.all; package ELECTRICAL_SYSTEMS is -- subtype declarations subtype VOLTAGE is subtype CURRENT is subtype CHARGE is subtype RESISTANCE is subtype CONDUCTANCE is subtype CAPACITANCE is subtype MMF is subtype ELECTRIC_FLUX is REAL REAL REAL REAL REAL REAL REAL REAL tolerance tolerance tolerance tolerance tolerance tolerance tolerance tolerance "DEFAULT_VOLTAGE"; "DEFAULT_CURRENT"; "DEFAULT_CHARGE"; "DEFAULT_RESISTANCE"; "DEFAULT_CONDUCTANCE"; "DEFAULT_CAPACITANCE"; "DEFAULT_MMF"; "DEFAULT_FLUX"; 8 Copyright © 2010 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. Deleted: -2004 Deleted: –2004 Deleted: 1.0 Deleted: 4 November 2004 IEEE P1076.1.1-2010/D1.1 Draft Standard VHDL Analog and Mixed-Signal Extensions—Packages for Multiple Energy Domain Support subtype ELECTRIC_FLUX_DENSITY is REAL tolerance "DEFAULT_FLUX_DENSITY"; subtype ELECTRIC_FIELD_STRENGTH is REAL tolerance "DEFAULT_FIELD_STRENGTH"; subtype MAGNETIC_FLUX is REAL tolerance "DEFAULT_FLUX"; subtype MAGNETIC_FLUX_DENSITY is REAL tolerance "DEFAULT_FLUX_DENSITY"; subtype MAGNETIC_FIELD_STRENGTH is REAL tolerance "DEFAULT_FIELD_STRENGTH"; subtype INDUCTANCE is REAL tolerance "DEFAULT_INDUCTANCE"; subtype RELUCTANCE is REAL tolerance "DEFAULT_RELUCTANCE"; -- attribute declarations -- Use of UNIT to designate full description of units attribute UNIT of VOLTAGE : subtype is "volt"; attribute UNIT of CURRENT : subtype is "ampere"; attribute UNIT of CHARGE : subtype is "coulomb"; attribute UNIT of RESISTANCE : subtype is "ohm"; attribute UNIT of CONDUCTANCE : subtype is "siemens"; attribute UNIT of CAPACITANCE : subtype is "farad"; attribute UNIT of MMF : subtype is "ampere"; attribute UNIT of ELECTRIC_FLUX : subtype is "coulomb"; attribute UNIT of ELECTRIC_FLUX_DENSITY : subtype is "coulomb/meter^2"; attribute UNIT of ELECTRIC_FIELD_STRENGTH : subtype is "volt/meter"; attribute UNIT of MAGNETIC_FLUX : subtype is "weber"; attribute UNIT of MAGNETIC_FLUX_DENSITY : subtype is "tesla"; attribute UNIT of MAGNETIC_FIELD_STRENGTH : subtype is "ampere/meter"; attribute UNIT of INDUCTANCE : subtype is "henry"; attribute UNIT of RELUCTANCE : subtype is "ampere/weber"; -- Use of attribute attribute attribute attribute attribute attribute attribute attribute attribute attribute attribute attribute attribute attribute attribute SYMBOL SYMBOL SYMBOL SYMBOL SYMBOL SYMBOL SYMBOL SYMBOL SYMBOL SYMBOL SYMBOL SYMBOL SYMBOL SYMBOL SYMBOL SYMBOL to of of of of of of of of of of of of of of of designate abbreviation of VOLTAGE : CURRENT : CHARGE : RESISTANCE : CONDUCTANCE : CAPACITANCE : MMF : ELECTRIC_FLUX : ELECTRIC_FLUX_DENSITY : ELECTRIC_FIELD_STRENGTH : MAGNETIC_FLUX : MAGNETIC_FLUX_DENSITY : MAGNETIC_FIELD_STRENGTH : INDUCTANCE : RELUCTANCE : units subtype subtype subtype subtype subtype subtype subtype subtype subtype subtype subtype subtype subtype subtype subtype is is is is is is is is is is is is is is is "V"; "A"; "C"; "Ohm"; "S"; "F"; "A"; "C"; "C/m^2"; "V/m"; "Wb"; "T"; "A/m"; "H"; "A/Wb"; -- nature declarations nature ELECTRICAL is VOLTAGE across CURRENT through ELECTRICAL_REF reference; nature ELECTRICAL_VECTOR is array (NATURAL range <>) of ELECTRICAL; nature MAGNETIC is MMF across MAGNETIC_FLUX through MAGNETIC_REF reference; nature MAGNETIC_VECTOR is array (NATURAL range <>) of MAGNETIC; -- vector subtype declarations subtype VOLTAGE_VECTOR is subtype CURRENT_VECTOR is subtype MMF_VECTOR is subtype MAGNETIC_FLUX_VECTOR is subtype CHARGE_VECTOR is subtype RESISTANCE_VECTOR is ELECTRICAL_VECTOR'across; ELECTRICAL_VECTOR'through; MAGNETIC_VECTOR'across; MAGNETIC_VECTOR'through; REAL_VECTOR tolerance "DEFAULT_CHARGE"; REAL_VECTOR tolerance "DEFAULT_RESISTANCE"; 9 Copyright © 2010 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. IEEE P1076.1.1-2010/D1.1 Draft Standard VHDL Analog and Mixed-Signal Extensions—Packages for Multiple Energy Domain Support subtype CONDUCTANCE_VECTOR is REAL_VECTOR tolerance "DEFAULT_CONDUCTANCE"; subtype CAPACITANCE_VECTOR is REAL_VECTOR tolerance "DEFAULT_CAPACITANCE"; subtype ELECTRIC_FLUX_VECTOR is REAL_VECTOR tolerance "DEFAULT_FLUX"; subtype ELECTRIC_FLUX_DENSITY_VECTOR is REAL_VECTOR tolerance "DEFAULT_FLUX_DENSITY"; subtype ELECTRIC_FIELD_STRENGTH_VECTOR is REAL_VECTOR tolerance "DEFAULT_FIELD_STRENGTH"; subtype MAGNETIC_FLUX_DENSITY_VECTOR is REAL_VECTOR tolerance "DEFAULT_FLUX_DENSITY"; subtype MAGNETIC_FIELD_STRENGTH_VECTOR is REAL_VECTOR tolerance "DEFAULT_FIELD_STRENGTH"; subtype INDUCTANCE_VECTOR is REAL_VECTOR tolerance "DEFAULT_INDUCTANCE"; subtype RELUCTANCE_VECTOR is REAL_VECTOR tolerance "DEFAULT_RELUCTANCE"; alias GROUND is ELECTRICAL_REF; end package ELECTRICAL_SYSTEMS; 4.3 MECHANICAL_SYSTEMS -------------------------------------------------------------------------- Copyright 2005, 2010 by IEEE. All rights reserved. --- This source file is an essential part of IEEE Std 1076.1.1 -- IEEE Standard Packages for Multiple Energy Domain Support. --- This source file may not be copied, sold, or included with software -- that is sold without written permission from the IEEE Standards -- Department. This source file may be used to implement this standard -- and may be distributed in compiled form in any manner so long as the -- compiled form does not allow direct decompilation of the original -- source file. --- This source file may be copied for individual use between licensed users. -- This source file is provided on an AS IS basis. The IEEE disclaims ANY -- WARRANTY EXPRESS OR IMPLIED INCLUDING ANY WARRANTY OF MERCHANTABILITY -- AND FITNESS FOR USE FOR A PARTICULAR PURPOSE. The user of the source -- file shall indemnify and hold IEEE harmless from any damages or liability -- arising out of the use thereof. --- Title: Standard VHDL Packages for Multiple Energy Domain Support -(IEEE 1076.1.1, MECHANICAL_SYSTEMS) --- Library: This package shall be compiled into a library -- symbolically named IEEE. --- Developers: IEEE DASC VHDL Multiple Energy Domain Packages Working Group --- Purpose: To define a set of types and natures that would provide a -common framework for modeling mechanical systems. --- Limitation: --- Notes: --- ---------------------------------------------------------------------------- 10 Copyright © 2010 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. Deleted: -2004 Deleted: –2004 IEEE P1076.1.1-2010/D1.1 Draft Standard VHDL Analog and Mixed-Signal Extensions—Packages for Multiple Energy Domain Support -- Version : 2.0 -- Date : 15 January 2010 -- ---------------------------------------------------------------------------library IEEE; use IEEE.FUNDAMENTAL_CONSTANTS.all; package MECHANICAL_SYSTEMS is -- subtype declarations subtype DISPLACEMENT is REAL subtype FORCE is REAL subtype VELOCITY is REAL subtype ACCELERATION is REAL subtype MASS is REAL subtype STIFFNESS is REAL subtype DAMPING is REAL subtype MOMENTUM is REAL subtype ANGLE is REAL subtype TORQUE is REAL subtype ANGULAR_VELOCITY is REAL subtype ANGULAR_ACCELERATION is REAL "DEFAULT_ANGULAR_ACCELERATION"; subtype MOMENT_INERTIA is REAL subtype ANGULAR_MOMENTUM is REAL subtype ANGULAR_STIFFNESS is REAL subtype ANGULAR_DAMPING is REAL tolerance tolerance tolerance tolerance tolerance tolerance tolerance tolerance tolerance tolerance tolerance tolerance "DEFAULT_DISPLACEMENT"; "DEFAULT_FORCE"; "DEFAULT_VELOCITY"; "DEFAULT_ACCELERATION"; "DEFAULT_MASS"; "DEFAULT_STIFFNESS"; "DEFAULT_DAMPING"; "DEFAULT_MOMENTUM"; "DEFAULT_ANGLE"; "DEFAULT_TORQUE"; "DEFAULT_ANGULAR_VELOCITY"; tolerance tolerance tolerance tolerance "DEFAULT_MOMENT_INERTIA"; "DEFAULT_ANGULAR_MOMENTUM"; "DEFAULT_ANGULAR_STIFFNESS"; "DEFAULT_ANGULAR_DAMPING"; -- attribute declarations -- Use of UNIT to designate full description of units attribute UNIT of DISPLACEMENT : subtype is "meter"; attribute UNIT of FORCE : subtype is "newton"; attribute UNIT of VELOCITY : subtype is "meter/second"; attribute UNIT of ACCELERATION : subtype is "meter/second^2"; attribute UNIT of MASS : subtype is "kilogram"; attribute UNIT of STIFFNESS : subtype is "newton/meter"; attribute UNIT of DAMPING : subtype is "newton*second/meter"; attribute UNIT of MOMENTUM : subtype is "kilogram*meter/second"; attribute UNIT of ANGLE : subtype is "radian"; attribute UNIT of TORQUE : subtype is "newton*meter"; attribute UNIT of ANGULAR_VELOCITY : subtype is "radian/second"; attribute UNIT of ANGULAR_ACCELERATION : subtype is "radian/second^2"; attribute UNIT of MOMENT_INERTIA : subtype is "kilogram*meter^2"; attribute UNIT of ANGULAR_MOMENTUM : subtype is "kilogram*meter^2/second"; attribute UNIT of ANGULAR_STIFFNESS : subtype is "newton*meter/radian"; attribute UNIT of ANGULAR_DAMPING : subtype is "newton*meter*second/radian"; -- Use of attribute attribute attribute attribute attribute attribute attribute attribute attribute attribute attribute attribute SYMBOL SYMBOL SYMBOL SYMBOL SYMBOL SYMBOL SYMBOL SYMBOL SYMBOL SYMBOL SYMBOL SYMBOL SYMBOL to of of of of of of of of of of of of designate abbreviations of units DISPLACEMENT : subtype is FORCE : subtype is VELOCITY : subtype is ACCELERATION : subtype is MASS : subtype is STIFFNESS : subtype is DAMPING : subtype is MOMENTUM : subtype is ANGLE : subtype is TORQUE : subtype is ANGULAR_VELOCITY : subtype is ANGULAR_ACCELERATION : subtype is "m"; "N"; "m/s"; "m/s^2"; "kg"; "N/m"; "N*s/m"; "kg*m/s"; "rad"; "N*m"; "rad/s"; "rad/s^2"; 11 Copyright © 2010 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. Deleted: 1.0 Deleted: 4 November 2004 IEEE P1076.1.1-2010/D1.1 Draft Standard VHDL Analog and Mixed-Signal Extensions—Packages for Multiple Energy Domain Support attribute attribute attribute attribute SYMBOL SYMBOL SYMBOL SYMBOL of of of of MOMENT_INERTIA ANGULAR_MOMENTUM ANGULAR_STIFFNESS ANGULAR_DAMPING : : : : subtype subtype subtype subtype is is is is "kg*m^2"; "kg*m^2/s"; "N*m/rad"; "N*m*s/rad"; -- nature declarations nature TRANSLATIONAL is DISPLACEMENT across FORCE through TRANSLATIONAL_REF reference; nature TRANSLATIONAL_VECTOR is array (NATURAL range <>) of TRANSLATIONAL; nature TRANSLATIONAL_VELOCITY is VELOCITY across FORCE through TRANSLATIONAL_VELOCITY_REF reference; nature TRANSLATIONAL_VELOCITY_VECTOR is array (NATURAL range <>) of TRANSLATIONAL_VELOCITY; nature ROTATIONAL is ANGLE across TORQUE through ROTATIONAL_REF reference; nature ROTATIONAL_VECTOR is array (NATURAL range <>) of ROTATIONAL; nature ROTATIONAL_VELOCITY is ANGULAR_VELOCITY across TORQUE through ROTATIONAL_VELOCITY_REF reference; nature ROTATIONAL_VELOCITY_VECTOR is array (NATURAL range <>) of ROTATIONAL_VELOCITY; -- vector subtype declarations subtype DISPLACEMENT_VECTOR is TRANSLATIONAL_VECTOR'across; subtype FORCE_VECTOR is TRANSLATIONAL_VECTOR'through; subtype VELOCITY_VECTOR is TRANSLATIONAL_VELOCITY_VECTOR'across; subtype FORCE_VELOCITY_VECTOR is TRANSLATIONAL_VELOCITY_VECTOR'through; subtype ANGLE_VECTOR is ROTATIONAL_VECTOR'across; subtype TORQUE_VECTOR is ROTATIONAL_VECTOR'through; subtype ANGULAR_VELOCITY_VECTOR is ROTATIONAL_VELOCITY_VECTOR'across; subtype TORQUE_VELOCITY_VECTOR is ROTATIONAL_VELOCITY_VECTOR'through; subtype ACCELERATION_VECTOR is REAL_VECTOR tolerance "DEFAULT_ACCELERATION"; subtype MASS_VECTOR is REAL_VECTOR tolerance "DEFAULT_MASS"; subtype STIFFNESS_VECTOR is REAL_VECTOR tolerance "DEFAULT_STIFFNESS"; subtype DAMPING_VECTOR is REAL_VECTOR tolerance "DEFAULT_DAMPING"; subtype MOMENTUM_VECTOR is REAL_VECTOR tolerance "DEFAULT_MOMENTUM"; subtype ANGULAR_ACCELERATION_VECTOR is REAL_VECTOR tolerance "DEFAULT_ANGULAR_ACCELERATION"; subtype MOMENT_INERTIA_VECTOR is REAL_VECTOR tolerance "DEFAULT_MOMENT_INERTIA"; subtype ANGULAR_MOMENTUM_VECTOR is REAL_VECTOR tolerance "DEFAULT_ANGULAR_MOMENTUM"; subtype ANGULAR_STIFFNESS_VECTOR is REAL_VECTOR tolerance "DEFAULT_ANGULAR_STIFFNESS"; subtype ANGULAR_DAMPING_VECTOR is REAL_VECTOR tolerance "DEFAULT_ANGULAR_DAMPING"; -- alias declarations 12 Copyright © 2010 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. IEEE P1076.1.1-2010/D1.1 Draft Standard VHDL Analog and Mixed-Signal Extensions—Packages for Multiple Energy Domain Support alias alias alias alias alias ANCHOR is TRANSLATIONAL_REF; TRANSLATIONAL_V_REF is TRANSLATIONAL_VELOCITY_REF; ROTATIONAL_V_REF is ROTATIONAL_VELOCITY_REF; TRANSLATIONAL_V is TRANSLATIONAL_VELOCITY; ROTATIONAL_V is ROTATIONAL_VELOCITY; end package MECHANICAL_SYSTEMS; 4.4 RADIANT_SYSTEMS -------------------------------------------------------------------------- Copyright 2005, 2010 by IEEE. All rights reserved. --- This source file is an essential part of IEEE Std 1076.1.1 -- IEEE Standard Packages for Multiple Energy Domain Support. --- This source file may not be copied, sold, or included with software -- that is sold without written permission from the IEEE Standards -- Department. This source file may be used to implement this standard -- and may be distributed in compiled form in any manner so long as the -- compiled form does not allow direct decompilation of the original -- source file. --- This source file may be copied for individual use between licensed users. -- This source file is provided on an AS IS basis. The IEEE disclaims ANY -- WARRANTY EXPRESS OR IMPLIED INCLUDING ANY WARRANTY OF MERCHANTABILITY -- AND FITNESS FOR USE FOR A PARTICULAR PURPOSE. The user of the source -- file shall indemnify and hold IEEE harmless from any damages or liability -- arising out of the use thereof. --- Title: Standard VHDL Packages for Multiple Energy Domain Support -(IEEE 1076.1.1, RADIANT_SYSTEMS) --- Library: This package shall be compiled into a library -- symbolically named IEEE. --- Developers: IEEE DASC VHDL Multiple Energy Domain Packages Working Group --- Purpose: To define a set of types and natures that would provide a -common framework for modeling radiant systems. --- Limitation: --- Notes: --- ----------------------------------------------------------------------------- Version : 2.0 -- Date : 15 January 2010 -- ---------------------------------------------------------------------------library IEEE; use IEEE.FUNDAMENTAL_CONSTANTS.all; package RADIANT_SYSTEMS is -- subtype declarations subtype ILLUMINANCE is REAL tolerance "DEFAULT_ILLUMINANCE"; subtype LUMINOUS_FLUX is REAL tolerance "DEFAULT_LUMINOUS_FLUX"; subtype LUMINOUS_INTENSITY is REAL tolerance "DEFAULT_LUMINOUS_INTENSITY"; 13 Copyright © 2010 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. Deleted: -2004 Deleted: –2004 Deleted: 1.0 Deleted: 4 November 2004 IEEE P1076.1.1-2010/D1.1 Draft Standard VHDL Analog and Mixed-Signal Extensions—Packages for Multiple Energy Domain Support subtype IRRADIANCE is REAL tolerance "DEFAULT_IRRADIANCE"; -- attribute declarations -- Use of UNIT to designate full description of units attribute UNIT of ILLUMINANCE : subtype is "lux"; attribute UNIT of LUMINOUS_FLUX : subtype is "lumen"; attribute UNIT of LUMINOUS_INTENSITY : subtype is "candela"; attribute UNIT of IRRADIANCE : subtype is "watt/meter^2"; -- Use of SYMBOL to designate abbreviation of units attribute SYMBOL of ILLUMINANCE : subtype is "lx"; attribute SYMBOL of LUMINOUS_FLUX : subtype is "lm"; attribute SYMBOL of LUMINOUS_INTENSITY : subtype is "cd"; attribute SYMBOL of IRRADIANCE : subtype is "W/m^2"; -- nature declarations nature RADIANT is LUMINOUS_INTENSITY across LUMINOUS_FLUX through RADIANT_REF reference; nature RADIANT_VECTOR is array (NATURAL range <>) of RADIANT; -- vector subtype declarations subtype LUMINOUS_INTENSITY_VECTOR is RADIANT_VECTOR'across; subtype LUMINOUS_FLUX_VECTOR is RADIANT_VECTOR'through; subtype ILLUMINANCE_VECTOR is REAL_VECTOR tolerance ”DEFAULT_ILLUMINANCE"; subtype IRRADIANCE_VECTOR is REAL_VECTOR tolerance "DEFAULT_IRRADIANCE"; end package RADIANT_SYSTEMS; 4.5 THERMAL_SYSTEMS ------------------------------------------------------------------------- Copyright 2005, 2010 by IEEE. All rights reserved. --- This source file is an essential part of IEEE Std 1076.1.1 -- IEEE Standard Packages for Multiple Energy Domain Support. --- This source file may not be copied, sold, or included with software -- that is sold without written permission from the IEEE Standards -- Department. This source file may be used to implement this standard -- and may be distributed in compiled form in any manner so long as the -- compiled form does not allow direct decompilation of the original -- source file. --- This source file may be copied for individual use between licensed users. -- This source file is provided on an AS IS basis. The IEEE disclaims ANY -- WARRANTY EXPRESS OR IMPLIED INCLUDING ANY WARRANTY OF MERCHANTABILITY -- AND FITNESS FOR USE FOR A PARTICULAR PURPOSE. The user of the source -- file shall indemnify and hold IEEE harmless from any damages or liability -- arising out of the use thereof. --- Title: Standard VHDL Packages for Multiple Energy Domain Support -(IEEE 1076.1.1, THERMAL_SYSTEMS) --- Library: This package shall be compiled into a library -- symbolically named IEEE. --- Developers: IEEE DASC VHDL Multiple Energy Domain Packages Working Group --- Purpose: To define a set of types and natures that would provide a -common framework for modeling thermal systems. 14 Copyright © 2010 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. Deleted: -2004 Deleted: –2004 IEEE P1076.1.1-2010/D1.1 Draft Standard VHDL Analog and Mixed-Signal Extensions—Packages for Multiple Energy Domain Support --- Limitation: --- Notes: --- ----------------------------------------------------------------------------- Version : 2.0 -- Date : 15 January 2010 -- ---------------------------------------------------------------------------library IEEE; use IEEE.FUNDAMENTAL_CONSTANTS.all; package THERMAL_SYSTEMS is -- subtype declarations subtype TEMPERATURE subtype HEAT_FLOW subtype THERMAL_CAPACITANCE subtype THERMAL_RESISTANCE subtype THERMAL_CONDUCTANCE is is is is is REAL REAL REAL REAL REAL tolerance tolerance tolerance tolerance tolerance "DEFAULT_TEMPERATURE"; "DEFAULT_HEAT_FLOW"; "DEFAULT_THERMAL_CAPACITANCE"; "DEFAULT_THERMAL_RESISTANCE"; "DEFAULT_THERMAL_CONDUCTANCE"; -- attribute declarations -- Use of UNIT to designate full description of attribute UNIT of TEMPERATURE : subtype attribute UNIT of HEAT_FLOW : subtype attribute UNIT of THERMAL_CAPACITANCE : subtype attribute UNIT of THERMAL_RESISTANCE : subtype attribute UNIT of THERMAL_CONDUCTANCE : subtype -- Use of attribute attribute attribute attribute attribute SYMBOL SYMBOL SYMBOL SYMBOL SYMBOL SYMBOL to of of of of of units is "kelvin"; is "watt"; is "joule/kelvin"; is "kelvin/watt; is "watt/kelvin"; designate abbreviation of units TEMPERATURE : subtype is HEAT_FLOW : subtype is THERMAL_CAPACITANCE : subtype is THERMAL_RESISTANCE : subtype is THERMAL_CONDUCTANCE : subtype is "K"; "W"; "J/K"; "K/W"; "W/K"; -- nature declarations nature THERMAL is TEMPERATURE across HEAT_FLOW through THERMAL_REF reference; nature THERMAL_VECTOR is array (NATURAL range <>) of THERMAL; -- vector subtype declarations subtype TEMPERATURE_VECTOR subtype HEAT_FLOW_VECTOR subtype THERMAL_CAPACITANCE_VECTOR "DEFAULT_THERMAL_CAPACITANCE"; subtype THERMAL_RESISTANCE_VECTOR "DEFAULT_THERMAL_RESISTANCE"; subtype THERMAL_CONDUCTANCE_VECTOR "DEFAULT_THERMAL_CONDUCTANCE"; is THERMAL_VECTOR'across; is THERMAL_VECTOR'through; is REAL_VECTOR tolerance is REAL_VECTOR tolerance is REAL_VECTOR tolerance end package THERMAL_SYSTEMS; 4.6 FLUIDIC_SYSTEMS ------------------------------------------------------------------------- Copyright 2005, 2010 by IEEE. All rights reserved. -- 15 Copyright © 2010 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. Deleted: 1.0 Deleted: 4 November 2004 IEEE P1076.1.1-2010/D1.1 Draft Standard VHDL Analog and Mixed-Signal Extensions—Packages for Multiple Energy Domain Support -------------------- This source file is an essential part of IEEE Std 1076.1.1 IEEE Standard Packages for Multiple Energy Domain Support. Deleted: -2004 This source file may not be copied, sold, or included with software that is sold without written permission from the IEEE Standards Department. This source file may be used to implement this standard and may be distributed in compiled form in any manner so long as the compiled form does not allow direct decompilation of the original source file. This source file may be copied for individual use between licensed users. This source file is provided on an AS IS basis. The IEEE disclaims ANY WARRANTY EXPRESS OR IMPLIED INCLUDING ANY WARRANTY OF MERCHANTABILITY AND FITNESS FOR USE FOR A PARTICULAR PURPOSE. The user of the source file shall indemnify and hold IEEE harmless from any damages or liability arising out of the use thereof. Title: Standard VHDL Packages for Multiple Energy Domain Support (IEEE 1076.1.1, FLUIDIC_SYSTEMS) -- Deleted: –2004 -- Library: This package shall be compiled into a library -- symbolically named IEEE. -- -- Developers: IEEE DASC VHDL Multiple Energy Domain Packages Working Group --- Purpose: To define a set of types and natures that would provide a -common framework for modeling fluidic systems. -- -- Limitation: --- Notes: There are two natures in the fluidic systems package: -FLUIDIC and COMPRESSIBLE_FLUIDIC. -The FLUIDIC nature assumes a non-compressible medium and uses -volume flow rate as the through variable. -The COMPRESSIBLE_FLUIDIC nature assumes a potentially -compressible medium and uses mass flow rate as the through variable. -In both cases PRESSURE is used as the across variable. -- -- ----------------------------------------------------------------------------- Version : 2.0 -- Date : 15 January 2010 -- ---------------------------------------------------------------------------library IEEE; use IEEE.FUNDAMENTAL_CONSTANTS.all; package FLUIDIC_SYSTEMS is -- subtype declarations subtype PRESSURE is REAL tolerance "DEFAULT_PRESSURE"; subtype VFLOW_RATE is REAL tolerance "DEFAULT_VFLOW_RATE"; subtype MASS_FLOW_RATE is REAL tolerance "DEFAULT_MASS_FLOW_RATE"; subtype VOLUME is REAL tolerance "DEFAULT_VOLUME"; subtype DENSITY is REAL tolerance "DEFAULT_DENSITY"; subtype VISCOSITY is REAL tolerance "DEFAULT_VISCOSITY"; subtype FRESISTANCE is REAL tolerance "DEFAULT_FRESISTANCE"; subtype FCONDUCTANCE is REAL tolerance "DEFAULT_FCONDUCTANCE"; subtype FCAPACITANCE is REAL tolerance "DEFAULT_FCAPACITANCE"; subtype INERTANCE is REAL tolerance "DEFAULT_INERTANCE"; subtype CFRESISTANCE is REAL tolerance "DEFAULT_CFRESISTANCE"; subtype CFCAPACITANCE is REAL tolerance "DEFAULT_CFCAPACITANCE"; subtype CFINERTANCE is REAL tolerance "DEFAULT_CFINERTANCE"; subtype CFCONDUCTANCE is REAL tolerance "DEFAULT_CFCONDUCTANCE"; -- attribute declarations -- Use of UNIT to designate full description of units 16 Copyright © 2010 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. Deleted: 1.0 Deleted: 4 November 2004 IEEE P1076.1.1-2010/D1.1 Draft Standard VHDL Analog and Mixed-Signal Extensions—Packages for Multiple Energy Domain Support attribute UNIT of PRESSURE : subtype is "pascal"; attribute UNIT of VFLOW_RATE : subtype is "meter^3/second"; attribute UNIT of MASS_FLOW_RATE : subtype is "kilogram/second"; attribute UNIT of DENSITY : subtype is "kilogram/meter^3"; attribute UNIT of VISCOSITY : subtype is "pascal*second"; attribute UNIT of VOLUME : subtype is "meter^3"; attribute UNIT of FRESISTANCE : subtype is "pascal*second/meter^3"; attribute UNIT of FCONDUCTANCE : subtype is "meter^3/(pascal*second)"; attribute UNIT of FCAPACITANCE : subtype is "meter^3/pascal"; attribute UNIT of INERTANCE : subtype is "pascal*second^2/meter^3"; attribute UNIT of CFRESISTANCE : subtype is "pascal*second/kilogram"; attribute UNIT of CFCAPACITANCE : subtype is "kilogram/pascal"; attribute UNIT of CFINERTANCE : subtype is "pascal*second^2/kilogram"; attribute UNIT of CFCONDUCTANCE : subtype is "kilogram/(pascal*second)"; -- Use of SYMBOL to designate abbreviation of units attribute SYMBOL of PRESSURE : subtype is "Pa"; attribute SYMBOL of VFLOW_RATE : subtype is "m^3/s"; attribute SYMBOL of MASS_FLOW_RATE : subtype is "kg/s"; attribute SYMBOL of DENSITY : subtype is "kg/m^3"; attribute SYMBOL of VISCOSITY : subtype is "Pa*s"; attribute SYMBOL of VOLUME : subtype is "m^3"; attribute SYMBOL of FRESISTANCE : subtype is "Pa*s/m^3"; attribute SYMBOL of FCONDUCTANCE : subtype is "m^3/(Pa*s)"; attribute SYMBOL of FCAPACITANCE : subtype is "m^3/Pa"; attribute SYMBOL of INERTANCE : subtype is "Pa*s^2/m^3"; attribute SYMBOL of CFRESISTANCE : subtype is "Pa*s/kg"; attribute SYMBOL of CFCAPACITANCE : subtype is "kg/Pa"; attribute SYMBOL of CFINERTANCE : subtype is "Pa*s^2/kg"; attribute SYMBOL of CFCONDUCTANCE : subtype is "kg/(Pa*s)"; -- nature declarations nature FLUIDIC is PRESSURE across VFLOW_RATE through FLUIDIC_REF reference; nature FLUIDIC_VECTOR is array (NATURAL range <>) of FLUIDIC; -- nature declarations nature COMPRESSIBLE_FLUIDIC is PRESSURE across MASS_FLOW_RATE through COMPRESSIBLE_FLUIDIC_REF reference; nature COMPRESSIBLE_FLUIDIC_VECTOR is array (NATURAL range <>) of COMPRESSIBLE_FLUIDIC; -- vector subtype declarations subtype PRESSURE_VECTOR is FLUIDIC_VECTOR'across; subtype VFLOW_RATE_VECTOR is FLUIDIC_VECTOR'through; subtype MASS_FLOW_RATE_VECTOR is COMPRESSIBLE_FLUIDIC_VECTOR'through; subtype VOLUME_VECTOR is REAL_VECTOR tolerance "DEFAULT_VOLUME"; subtype DENSITY_VECTOR is REAL_VECTOR tolerance "DEFAULT_DENSITY"; subtype VISCOSITY_VECTOR is REAL_VECTOR tolerance "DEFAULT_VISCOSITY"; subtype FRESISTANCE_VECTOR is REAL_VECTOR tolerance "DEFAULT_FRESISTANCE"; subtype FCONDUCTANCE_VECTOR is REAL_VECTOR tolerance "DEFAULT_FCONDUCTANCE"; subtype FCAPACITANCE_VECTOR is REAL_VECTOR tolerance "DEFAULT_FCAPACITANCE"; subtype INERTANCE_VECTOR is REAL_VECTOR tolerance "DEFAULT_INERTANCE"; 17 Copyright © 2010 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. IEEE P1076.1.1-2010/D1.1 Draft Standard VHDL Analog and Mixed-Signal Extensions—Packages for Multiple Energy Domain Support subtype CFRESISTANCE_VECTOR "DEFAULT_CFRESISTANCE"; subtype CFCONDUCTANCE_VECTOR "DEFAULT_CFCONDUCTANCE"; subtype CFCAPACITANCE_VECTOR "DEFAULT_CFCAPACITANCE"; subtype CFINERTANCE_VECTOR is REAL_VECTOR tolerance is REAL_VECTOR tolerance is REAL_VECTOR tolerance is REAL_VECTOR tolerance "DEFAULT_CFINERTANCE"; end package FLUIDIC_SYSTEMS; 18 Copyright © 2010 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change.