xls
xls copied to clipboard
[enhancement] Provide automatic generation of channel muxing / demuxing procs in DSLX
What's hard to do? (limit 100 words)
Even though creating muxing/demuxing logic for channels is an easy concept it requires quite complex code, with nonblocking receives to allow free data flow and conditional operations that depend on the select signal. This task could potentially be automated.
Current best alternative workaround (limit 100 words)
Write the muxing/demuxing logic manually
Your view of the "best case XLS enhancement" (limit 100 words)
A basic muxing/demuxing logic with the select channel could potentially be generated automatically. However, simple channel switching is often insufficient for a functional design. For instance, when connecting a single proc to two RAMs, one may want to switch between channels only after all operations on one channel have finished. This scenario requires more complex arbitration logic. Users can provide this additional logic by wrapping the simple muxing/demuxing processes with a process that performs the necessary arbitration.