diff options
Diffstat (limited to 'src/vhdl/simulate/iir_values.ads')
-rw-r--r-- | src/vhdl/simulate/iir_values.ads | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/vhdl/simulate/iir_values.ads b/src/vhdl/simulate/iir_values.ads index 292e8424a..a134df438 100644 --- a/src/vhdl/simulate/iir_values.ads +++ b/src/vhdl/simulate/iir_values.ads @@ -114,8 +114,11 @@ package Iir_Values is Iir_Value_Quantity, Iir_Value_Environment); - type Protected_Index_Type is new Natural; + -- Uniq identifier for scalar signal. First identifier is 'First + 1. + type Signal_Index_Type is new Natural; + function Get_Last_Signal_Index return Signal_Index_Type; + type Protected_Index_Type is new Natural; type Quantity_Index_Type is new Natural; type Terminal_Index_Type is new Natural; type Environment_Index_Type is new Natural; @@ -134,6 +137,9 @@ package Iir_Values is subtype Iir_Value_Numerics is Iir_Value_Kind range Iir_Value_I64 .. Iir_Value_F64; + subtype Iir_Value_Physicals is + Iir_Value_Kind range Iir_Value_I64 .. Iir_Value_I64; + type Iir_Value_Literal (Kind: Iir_Value_Kind); type Iir_Value_Literal_Acc is access Iir_Value_Literal; @@ -180,6 +186,8 @@ package Iir_Values is Val_Record: Value_Array_Acc; -- range 1 .. N when Iir_Value_Signal => Sig : Ghdl_Signal_Ptr; + -- Each signal has a uniq identifier. + Sig_Id : Signal_Index_Type; when Iir_Value_Protected => Prot : Protected_Index_Type; when Iir_Value_Quantity => |