mirror of
https://github.com/YosysHQ/yosys
synced 2025-04-06 17:44:09 +00:00
Anlogic FPGAs all have two kinds of BRAMs, one is 9bit*1K when being true dual port (or 18bit*512 when simple dual port), the other is 16bit*2K. Supports mapping of these two kinds of BRAMs. 9Kbit BRAM in SDP mode and 32Kbit BRAM with 8bit width are not support yet. Signed-off-by: Icenowy Zheng <icenowy@aosc.io>
46 lines
657 B
Plaintext
46 lines
657 B
Plaintext
bram $__ANLOGIC_BRAM9K_TDP
|
|
init 1
|
|
abits 13 @a13d1
|
|
dbits 1 @a13d1
|
|
abits 12 @a12d2
|
|
dbits 2 @a12d2
|
|
abits 11 @a11d4
|
|
dbits 4 @a11d4
|
|
abits 10 @a10d8
|
|
dbits 8 @a10d8
|
|
abits 10 @a10d9
|
|
dbits 9 @a10d9
|
|
groups 2
|
|
ports 1 1
|
|
wrmode 0 1
|
|
enable 1 1
|
|
transp 2 0
|
|
clocks 2 3
|
|
clkpol 2 3
|
|
endbram
|
|
|
|
bram $__ANLOGIC_BRAM32K
|
|
init 1
|
|
abits 11
|
|
dbits 16
|
|
groups 2
|
|
ports 1 1
|
|
wrmode 0 1
|
|
enable 1 2
|
|
transp 0 0
|
|
clocks 2 3
|
|
clkpol 2 3
|
|
endbram
|
|
|
|
match $__ANLOGIC_BRAM32K
|
|
min efficiency 30
|
|
shuffle_enable B
|
|
make_transp
|
|
or_next_if_better
|
|
endmatch
|
|
|
|
match $__ANLOGIC_BRAM9K_TDP
|
|
min efficiency 5
|
|
make_transp
|
|
endmatch
|