mirror of
https://github.com/YosysHQ/yosys
synced 2025-10-21 06:40:32 +00:00
Tested all the accepted configurations in eXpreso, disabling the RBRAM2 configs that fail to place, and increasing the cost for the double site TDP memories.
285 lines
5.1 KiB
Text
285 lines
5.1 KiB
Text
ifdef IS_T16FFC {
|
|
ram block $__ANALOGDEVICES_BLOCKRAM_FULL_ {
|
|
option "ERR" "ECC" {
|
|
style "ECC";
|
|
option "SIZE" "2048x32" {
|
|
abits 11;
|
|
width 32;
|
|
byte 32;
|
|
option "MODE" "TDP" cost 4502;
|
|
option "MODE" "SDP" forbid;
|
|
option "MODE" "SP" forbid;
|
|
}
|
|
option "SIZE" "1024x32" {
|
|
abits 10;
|
|
width 32;
|
|
byte 32;
|
|
option "MODE" "TDP" forbid;
|
|
option "MODE" "SDP" cost 2402;
|
|
option "MODE" "SP" forbid;
|
|
}
|
|
}
|
|
option "ERR" "BP" {
|
|
style "BP";
|
|
option "SIZE" "2048x36" {
|
|
abits 11;
|
|
width 36;
|
|
byte 9;
|
|
option "MODE" "TDP" cost 4504;
|
|
option "MODE" "SDP" forbid;
|
|
option "MODE" "SP" forbid;
|
|
}
|
|
option "SIZE" "1024x36" {
|
|
abits 10;
|
|
width 36;
|
|
byte 9;
|
|
option "MODE" "TDP" forbid;
|
|
option "MODE" "SDP" cost 2404;
|
|
option "MODE" "SP" forbid;
|
|
}
|
|
}
|
|
option "ERR" "FP" {
|
|
style "FP";
|
|
option "SIZE" "2048x18" {
|
|
abits 11;
|
|
width 18;
|
|
byte 18;
|
|
option "MODE" "TDP" cost 2501;
|
|
option "MODE" "SDP" cost 2401;
|
|
option "MODE" "SP" forbid;
|
|
}
|
|
}
|
|
option "ERR" "NONE" {
|
|
option "SIZE" "8192x05" {
|
|
abits 13;
|
|
width 5;
|
|
byte 1;
|
|
option "MODE" "TDP" cost 2505;
|
|
option "MODE" "SDP" forbid;
|
|
option "MODE" "SP" forbid;
|
|
}
|
|
option "SIZE" "4096x09" {
|
|
abits 12;
|
|
width 9;
|
|
byte 1;
|
|
option "MODE" "TDP" cost 2509;
|
|
option "MODE" "SDP" forbid;
|
|
option "MODE" "SP" forbid;
|
|
}
|
|
option "SIZE" "4096x10" {
|
|
abits 12;
|
|
width 10;
|
|
byte 1;
|
|
option "MODE" "TDP" forbid;
|
|
option "MODE" "SDP" cost 2410;
|
|
option "MODE" "SP" forbid;
|
|
}
|
|
option "SIZE" "2048x20" {
|
|
abits 11;
|
|
width 20;
|
|
byte 1;
|
|
option "MODE" "TDP" forbid;
|
|
option "MODE" "SDP" forbid;
|
|
option "MODE" "SP" cost 2320;
|
|
}
|
|
option "SIZE" "2048x40" {
|
|
abits 11;
|
|
width 40;
|
|
byte 8;
|
|
option "MODE" "TDP" cost 4505;
|
|
option "MODE" "SDP" forbid;
|
|
option "MODE" "SP" forbid;
|
|
}
|
|
}
|
|
|
|
# supports any initialization value, but need to export memory files
|
|
init any;
|
|
|
|
option "MODE" "TDP" {
|
|
port srsw "A" {
|
|
clock anyedge;
|
|
clken;
|
|
rdwr no_change;
|
|
}
|
|
port srsw "B" {
|
|
clock anyedge;
|
|
clken;
|
|
rdwr no_change;
|
|
}
|
|
}
|
|
option "MODE" "SDP" {
|
|
port sw "A" {
|
|
clock anyedge;
|
|
clken;
|
|
}
|
|
port sr "B" {
|
|
clock anyedge;
|
|
clken;
|
|
}
|
|
}
|
|
option "MODE" "SP" {
|
|
port srsw "A" {
|
|
clock anyedge;
|
|
clken;
|
|
rdwr no_change;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
ram block $__ANALOGDEVICES_BLOCKRAM_HALF_ {
|
|
option "ERR" "ECC" {
|
|
style "ECC";
|
|
option "SIZE" "1024x32" {
|
|
abits 10;
|
|
width 32;
|
|
byte 32;
|
|
option "MODE" "SDP" cost 2402;
|
|
option "MODE" "SP" forbid;
|
|
option "MODE" "SP2" forbid;
|
|
}
|
|
option "SIZE" "512x32" {
|
|
abits 9;
|
|
width 32;
|
|
byte 32;
|
|
option "MODE" "SDP" forbid;
|
|
option "MODE" "SP" cost 2302;
|
|
option "MODE" "SP2" forbid;
|
|
}
|
|
}
|
|
option "ERR" "BP" {
|
|
style "BP";
|
|
option "SIZE" "1024x36" {
|
|
abits 10;
|
|
width 36;
|
|
byte 9;
|
|
option "MODE" "SDP" cost 2404;
|
|
option "MODE" "SP" forbid;
|
|
option "MODE" "SP2" forbid;
|
|
}
|
|
option "SIZE" "512x36" {
|
|
abits 9;
|
|
width 36;
|
|
byte 9;
|
|
option "MODE" "SDP" forbid;
|
|
option "MODE" "SP" cost 2304;
|
|
option "MODE" "SP2" forbid;
|
|
}
|
|
}
|
|
option "ERR" "FP" {
|
|
style "FP";
|
|
option "SIZE" "1024x18" {
|
|
abits 10;
|
|
width 18;
|
|
byte 18;
|
|
option "MODE" "SDP" forbid;
|
|
option "MODE" "SP" forbid;
|
|
option "MODE" "SP2" cost 2301;
|
|
}
|
|
}
|
|
option "ERR" "NONE" {
|
|
option "SIZE" "4096x05" {
|
|
abits 12;
|
|
width 5;
|
|
byte 1;
|
|
option "MODE" "SDP" cost 2405;
|
|
option "MODE" "SP" cost 2305;
|
|
option "MODE" "SP2" forbid;
|
|
}
|
|
option "SIZE" "2048x09" {
|
|
abits 11;
|
|
width 9;
|
|
byte 1;
|
|
option "MODE" "SDP" cost 2409;
|
|
option "MODE" "SP" forbid;
|
|
option "MODE" "SP2" cost 2309;
|
|
}
|
|
option "SIZE" "2048x10" {
|
|
abits 11;
|
|
width 10;
|
|
byte 1;
|
|
option "MODE" "SDP" cost 2410;
|
|
option "MODE" "SP" forbid;
|
|
option "MODE" "SP2" forbid;
|
|
}
|
|
option "SIZE" "1024x20" {
|
|
abits 10;
|
|
width 20;
|
|
byte 1;
|
|
option "MODE" "SDP" forbid;
|
|
option "MODE" "SP" cost 2320;
|
|
option "MODE" "SP2" forbid;
|
|
}
|
|
option "SIZE" "1024x40" {
|
|
abits 10;
|
|
width 40;
|
|
byte 8;
|
|
option "MODE" "SDP" cost 2405;
|
|
option "MODE" "SP" forbid;
|
|
option "MODE" "SP2" forbid;
|
|
}
|
|
}
|
|
|
|
option "MODE" "SDP" {
|
|
ifdef IS_T16FFC forbid;
|
|
port sw "A" {
|
|
clock anyedge;
|
|
clken;
|
|
}
|
|
port sr "B" {
|
|
clock anyedge;
|
|
clken;
|
|
}
|
|
}
|
|
option "MODE" "SP" {
|
|
ifdef IS_T16FFC forbid;
|
|
port srsw "A" {
|
|
clock anyedge;
|
|
clken;
|
|
rdwr no_change;
|
|
}
|
|
}
|
|
option "MODE" "SP2" {
|
|
ifdef IS_T40LP forbid;
|
|
port srsw "A" {
|
|
clock anyedge;
|
|
clken;
|
|
rdwr no_change;
|
|
}
|
|
}
|
|
}
|
|
|
|
ifdef IS_T40LP {
|
|
ram block $__ANALOGDEVICES_BLOCKRAM_QUARTER_ {
|
|
option "ERR" "BP" {
|
|
style "BP";
|
|
option "SIZE" "512x18" {
|
|
abits 9;
|
|
width 18;
|
|
byte 9;
|
|
option "MODE" "SP2" cost 2202;
|
|
}
|
|
}
|
|
option "ERR" "NONE" {
|
|
option "SIZE" "2048x05" {
|
|
abits 11;
|
|
width 5;
|
|
byte 1;
|
|
option "MODE" "SP2" cost 2205;
|
|
}
|
|
option "SIZE" "1024x09" {
|
|
abits 10;
|
|
width 9;
|
|
byte 1;
|
|
option "MODE" "SP2" cost 2209;
|
|
}
|
|
}
|
|
option "MODE" "SP2" {
|
|
port srsw "A" {
|
|
clock anyedge;
|
|
clken;
|
|
rdwr no_change;
|
|
}
|
|
}
|
|
}
|
|
}
|