Allow invoke
to use with
statements to specify combinational connections
#633
Labels
invoke
to use with
statements to specify combinational connections
#633
One pattern that showed up while writing #632 is that while invoking a Calyx component, it would be useful to also have some other combinational connections active. For example, if you have two memories
a_mem
andb_mem
and want to pass a value at indexidx
to aninvoke
d component, your two choices are:a_mem[idx]
in a register and pass the value of the register, orinvoke
statement at all.A cleaner solution is to allow
invoke
statements to enable a combinational group that activates some assignments when the invoke group is running:The compilation for such groups would be straightforward--inline all assignments in the
comb group
into the group generated to implement theinvoke
. Additionally, since this is specifying things usingwith
, only combinational groups. I'm not sure if normal groups should be allowed anywhere wherewith
is used.The text was updated successfully, but these errors were encountered: