210 lines
5.9 KiB
JSON
210 lines
5.9 KiB
JSON
{
|
|
"simulation": {
|
|
"addressmapping": {
|
|
"BANKGROUP_BIT": [
|
|
17,
|
|
18,
|
|
19,
|
|
20,
|
|
21,
|
|
22,
|
|
23,
|
|
24,
|
|
25,
|
|
26,
|
|
27,
|
|
28,
|
|
29,
|
|
30,
|
|
31,
|
|
32
|
|
],
|
|
"BANK_BIT": [
|
|
13,
|
|
14,
|
|
15
|
|
],
|
|
"BYTE_BIT": [
|
|
0,
|
|
1
|
|
],
|
|
"COLUMN_BIT": [
|
|
2,
|
|
3,
|
|
4,
|
|
5,
|
|
6,
|
|
7,
|
|
8,
|
|
9,
|
|
10,
|
|
11,
|
|
12
|
|
],
|
|
"RANK_BIT": [
|
|
33
|
|
],
|
|
"ROW_BIT": [
|
|
16
|
|
]
|
|
},
|
|
"mcconfig": {
|
|
"Arbiter": "Simple",
|
|
"CmdMux": "Oldest",
|
|
"HighWatermark": 0,
|
|
"LowWatermark": 0,
|
|
"MaxActiveTransactions": 128,
|
|
"PagePolicy": "Open",
|
|
"PowerDownPolicy": "NoPowerDown",
|
|
"RefreshMaxPostponed": 0,
|
|
"RefreshMaxPulledin": 0,
|
|
"RefreshPolicy": "AllBank",
|
|
"RequestBufferSize": 8,
|
|
"RespQueue": "Fifo",
|
|
"Scheduler": "FrFcfs",
|
|
"SchedulerBuffer": "Bankwise"
|
|
},
|
|
"memspec": {
|
|
"memarchitecturespec": {
|
|
"RAACDR": 1,
|
|
"RAAIMT": 32,
|
|
"RAAMMT": 96,
|
|
"burstLength": 16,
|
|
"cmdMode": 1,
|
|
"dataRate": 2,
|
|
"nbrOfBankGroups": 8,
|
|
"nbrOfBanks": 16,
|
|
"nbrOfChannels": 2,
|
|
"nbrOfColumns": 2048,
|
|
"nbrOfDIMMRanks": 1,
|
|
"nbrOfDevices": 8,
|
|
"nbrOfLogicalRanks": 1,
|
|
"nbrOfPhysicalRanks": 1,
|
|
"nbrOfRanks": 1,
|
|
"nbrOfRows": 65536,
|
|
"refMode": 1,
|
|
"width": 4
|
|
},
|
|
"memoryId": "JEDEC_2x8x2Gbx4_DDR5-3200A",
|
|
"memoryType": "DDR5",
|
|
"memtimingspec": {
|
|
"ACTPDEN": 2,
|
|
"CCD_L_WR2_slr": 16,
|
|
"CCD_L_WR_slr": 32,
|
|
"CCD_L_slr": 8,
|
|
"CCD_S_WR_slr": 8,
|
|
"CCD_S_slr": 8,
|
|
"CCD_WR_dlr": 0,
|
|
"CCD_WR_dpr": 0,
|
|
"CCD_dlr": 0,
|
|
"CPDED": 8,
|
|
"FAW_dlr": 0,
|
|
"FAW_slr": 32,
|
|
"PD": 12,
|
|
"PPD": 2,
|
|
"PRPDEN": 2,
|
|
"RAS": 52,
|
|
"RCD": 22,
|
|
"RDDQS": 0,
|
|
"REFI1": 6240,
|
|
"REFI2": 3120,
|
|
"REFISB": 1560,
|
|
"REFPDEN": 2,
|
|
"REFSBRD_dlr": 0,
|
|
"REFSBRD_slr": 48,
|
|
"RFC1_dlr": 0,
|
|
"RFC1_dpr": 0,
|
|
"RFC1_slr": 312,
|
|
"RFC2_dlr": 0,
|
|
"RFC2_dpr": 0,
|
|
"RFC2_slr": 208,
|
|
"RFCsb_dlr": 0,
|
|
"RFCsb_slr": 184,
|
|
"RL": 22,
|
|
"RP": 22,
|
|
"RPRE": 1,
|
|
"RPST": 0,
|
|
"RRD_L_slr": 8,
|
|
"RRD_S_slr": 8,
|
|
"RRD_dlr": 0,
|
|
"RTP": 12,
|
|
"RTRS": 2,
|
|
"WL": 20,
|
|
"WPRE": 2,
|
|
"WPST": 0,
|
|
"WR": 48,
|
|
"WTR_L": 16,
|
|
"WTR_S": 4,
|
|
"XP": 12,
|
|
"clkMhz": 1600
|
|
}
|
|
},
|
|
"simconfig": {
|
|
"AddressOffset": 0,
|
|
"CheckTLM2Protocol": false,
|
|
"DatabaseRecording": true,
|
|
"Debug": false,
|
|
"EnableWindowing": false,
|
|
"ErrorCSVFile": "error.csv",
|
|
"ErrorChipSeed": 42,
|
|
"PowerAnalysis": false,
|
|
"SimulationName": "ddr5",
|
|
"SimulationProgressBar": true,
|
|
"StoreMode": "NoStorage",
|
|
"ThermalSimulation": false,
|
|
"UseMalloc": false,
|
|
"WindowSize": 1000
|
|
},
|
|
"simulationid": "std::string_simulationId",
|
|
"tracesetup": [
|
|
{
|
|
"clkMhz": 100,
|
|
"name": "mytrace.stl"
|
|
},
|
|
{
|
|
"addressDistribution": "random",
|
|
"clkMhz": 100,
|
|
"name": "MyTestGen",
|
|
"numRequests": 1000,
|
|
"rwRatio": 0.5
|
|
},
|
|
{
|
|
"clkMhz": 100,
|
|
"maxPendingReadRequests": 8,
|
|
"name": "MyTestGen",
|
|
"states": [
|
|
{
|
|
"addressDistribution": "sequential",
|
|
"addressIncrement": 256,
|
|
"id": 0,
|
|
"maxAddress": 1024,
|
|
"numRequests": 1000,
|
|
"rwRatio": 0.5
|
|
},
|
|
{
|
|
"addressDistribution": "sequential",
|
|
"addressIncrement": 512,
|
|
"id": 1,
|
|
"maxAddress": 2048,
|
|
"minAddress": 1024,
|
|
"numRequests": 100,
|
|
"rwRatio": 0.75
|
|
}
|
|
],
|
|
"transitions": [
|
|
{
|
|
"from": 0,
|
|
"probability": 1.0,
|
|
"to": 1
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"clkMhz": 100,
|
|
"name": "MyTestHammer",
|
|
"numRequests": 4000,
|
|
"rowIncrement": 2097152
|
|
}
|
|
]
|
|
}
|
|
} |