circt
circt copied to clipboard
[SCFToCalyx] Memory banking for Calyx
Breaking down #7409
This patch will support memory banking in Calyx by user specifying the number of available banks for each memory (in the order they are declared in the source .mlir file) in a json file
This should be done using attributes on memories. An extra JSON file that lives separate from the source program seems unnecessary
This should be done using attributes on memories. An extra JSON file that lives separate from the source program seems unnecessary
I agree, and I have thought of that, too. The cons are users have to go to the source .mlir file and manually insert attributes like {calyx.num_banks = n} to each memref::alloc, memref::alloca, memref::getglobal, etc. I thought JSON could be a automated way, but using attributes does make more sense.
And I'd appreciate it if anyone could let me know that attribute insertion can be automated.
And I'd appreciate it if anyone could let me know that attribute insertion can be automated.
Attributes can be automatically inserted by frontends.
Attributes can be automatically inserted by frontends.
That's great!
And just removed the needs for passing JSON and now only relies on attributes on memory allocations
Cool! Can you add tests and fix the failures? I can review it then and we can merge after the review.