Update readme to reflect new traffic generator changes.
The readme was updated to reflect the new json configuration parameters for the traffic generator.
This commit is contained in:
20
README.md
20
README.md
@@ -126,8 +126,15 @@ The JSON code below shows an example configuration:
|
|||||||
"name": "ddr3_example.stl"
|
"name": "ddr3_example.stl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"clkMhz": 400,
|
"clkMhz": 2000,
|
||||||
"name": "ddr3_example.stl"
|
"type": "generator",
|
||||||
|
"name": "gen0",
|
||||||
|
"numRequests": 2000,
|
||||||
|
"rwRatio": 0.85,
|
||||||
|
"addressDistribution": "random",
|
||||||
|
"seed": 123456,
|
||||||
|
"maxPendingReadRequests": 8,
|
||||||
|
"maxPendingWriteRequests": 8
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -142,7 +149,14 @@ Fields Description:
|
|||||||
- "mcconfig": memory controller configuration file
|
- "mcconfig": memory controller configuration file
|
||||||
- "tracesetup": The trace setup is only used in standalone mode. In library mode or gem5 mode the trace setup is ignored. Each device should be added as a json object inside the "tracesetup" array.
|
- "tracesetup": The trace setup is only used in standalone mode. In library mode or gem5 mode the trace setup is ignored. Each device should be added as a json object inside the "tracesetup" array.
|
||||||
|
|
||||||
Each **trace setup** device configuration consists of two parameters, **clkMhz** (operation frequency of the **trace player**) and a trace file **name**. Most configuration fields reference other JSON files which contain more specialized chunks of the configuration like a memory specification, an address mapping and a memory controller configuration.
|
Each **trace setup** device configuration can either be a **trace player** or a **traffic generator**. By not specifing the **type** parameter, the device will act as a **trace player**.
|
||||||
|
All device configurations must define a **clkMhz** (operation frequency of the **traffic initiator**) and a trace file **name** (in case of a trace player this specifies the **trace file** to play; in case of a traffic generator this field is only for identification purposes).
|
||||||
|
The **maxPendingReadRequests** and **maxPendingWriteRequests** parameters define the maximum number of outstanding read/write requests. The current implementation delays all memory accesses when one limit is reached. The default value (0) disables the limit.
|
||||||
|
|
||||||
|
A **traffic generator** can be configured to generate **numRequests** requests in total, of which the **rwRatio** field defines the probability of one request being a read request. The **seed** parameter can be used to produce same results for all simulations.
|
||||||
|
The parameter **addressDistribution** can either be set to **"random"** or **"sequential"**. In case of **"sequential"** the additional **addressIncrement** field must be specified, defining the address increments after each request.
|
||||||
|
|
||||||
|
Most configuration fields reference other JSON files which contain more specialized chunks of the configuration like a memory specification, an address mapping and a memory controller configuration.
|
||||||
|
|
||||||
|
|
||||||
#### Trace Files
|
#### Trace Files
|
||||||
|
|||||||
Reference in New Issue
Block a user