aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/synth/synth-context.ads9
-rw-r--r--src/synth/synth-environment.ads9
2 files changed, 13 insertions, 5 deletions
diff --git a/src/synth/synth-context.ads b/src/synth/synth-context.ads
index 660367f4b..1bc36301f 100644
--- a/src/synth/synth-context.ads
+++ b/src/synth/synth-context.ads
@@ -56,16 +56,21 @@ package Synth.Context is
-- Global context.
Build_Context : Netlists.Builders.Context_Acc;
+ -- Create and free the corresponding synth instance.
function Make_Instance (Sim_Inst : Block_Instance_Acc)
return Synth_Instance_Acc;
procedure Free_Instance (Synth_Inst : in out Synth_Instance_Acc);
+ -- Build the value for object OBJ.
+ -- KIND must be Wire_Variable or Wire_Signal.
procedure Make_Object (Syn_Inst : Synth_Instance_Acc;
Kind : Wire_Kind;
Obj : Iir);
- function Get_Net (Val : Value_Acc) return Net;
-
+ -- Get the value of OBJ.
function Get_Value (Inst : Synth_Instance_Acc; Obj : Iir) return Value_Acc;
+ -- Get a net from a scalar/vector value. This will automatically create
+ -- a net for literals.
+ function Get_Net (Val : Value_Acc) return Net;
end Synth.Context;
diff --git a/src/synth/synth-environment.ads b/src/synth/synth-environment.ads
index 6b5c4af31..ca1fcf709 100644
--- a/src/synth/synth-environment.ads
+++ b/src/synth/synth-environment.ads
@@ -41,9 +41,12 @@ package Synth.Environment is
-- nature of a wire as the assignment semantic is not the same (a variable
-- assignment overwrite the old value, while a signal assignment is
-- effective at the next cycle).
- type Wire_Kind is (Wire_None,
- Wire_Signal, Wire_Variable,
- Wire_Input, Wire_Output, Wire_Inout);
+ type Wire_Kind is
+ (
+ Wire_None,
+ Wire_Signal, Wire_Variable,
+ Wire_Input, Wire_Output, Wire_Inout
+ );
type Assign is new Uns32;
No_Assign : constant Assign := 0;