What should happen to channels/procs after block conversion?
- Dominant language
- C++
- Stars
- 1.9k
- Forks
- 283
- Avg merge
- 2d 10h
- Merged PRs (30d)
- 135
Description
Currently, functions/procs are left in the package and show up in the module signature. Some of this is useful, for example it is useful for eval_proc_main to associate block ports with channels. Some of this is confusing, though, and can lead to replication. For example, a channel that becomes a FIFO instantiation after block conversion replicates the FIFO config. Furthermore, because channels need to be used, IR with a block instantiation that references a channel needs to have the original proc.
Proc scoped channels (#869) may help make the organization of the module signature + IR more natural. Perhaps blocks should have their own channels used purely to describe the abstract<->physical mapping of ports to channels.
Contributor guide
Assessment
This issue has not been assessed yet.