llvm / circt

Circuit IR Compilers and Tools
https://circt.org
Other
1.69k stars 303 forks source link

[FIRRTL] Remove CHIRRTL Behavioral Memory Constructs #1347

Closed seldridge closed 2 years ago

seldridge commented 3 years ago

FIRRTL Dialect currently includes everything that Chisel can emit. This includes the behavioral memory statements:

Add a pass that lowers these to firrtl.memory using the algorithms described in the following Scala FIRRTL Compiler (SFC) transforms:

Roughly, this needs to figure out whether each firrtl.memoryport is a read, write, or readwrite port and what the enable line is.

ekiwi commented 3 years ago

If you are looking into how to handle "behavioral memories", are you going to try and address the issues with the current implementation?

youngar commented 2 years ago

This has been implemented