|
Packit |
534379 |
# fpgamux #
|
|
Packit |
534379 |
|
|
Packit |
534379 |
## SYNOPSIS ##
|
|
Packit |
534379 |
```console
|
|
Packit |
534379 |
fpgamux [-h] [-S|--socket-id SOCKET_ID] [-B|--bus-number BUS] [-D|--device DEVICE] [-F|--function FUNCTION]
|
|
Packit |
534379 |
[-G|--guid GUID] -m|--muxfile <filepath.json>
|
|
Packit |
534379 |
```
|
|
Packit |
534379 |
|
|
Packit |
534379 |
## DESCRIPTION ##
|
|
Packit |
534379 |
```fpgamux``` tests multiple AFUs that are synthesized into a single AFU along with
|
|
Packit |
534379 |
the CCIP-MUX basic building block (BBB). The CCIP-MUX uses the upper bits in the MMIO addresses to route MMIO
|
|
Packit |
534379 |
reads and writes to the AFU running on the corresponding CCIP-MUX port. ```fpgamux``` uses a configuration file that
|
|
Packit |
534379 |
lists the software components and correct configuration. ```fpgamux``` only runs on the Integrated FPGA Platform.
|
|
Packit |
534379 |
You cannot run it on the PCIe accelerator card (PAC).
|
|
Packit |
534379 |
|
|
Packit |
534379 |
.. note::
|
|
Packit |
534379 |
|
|
Packit |
534379 |
```
|
|
Packit |
534379 |
The OPAE driver discovers only the first AFU. The first software component in the configuration
|
|
Packit |
534379 |
determines the GUID to use for enumeration. Use the -G|--guid option to override the GUID
|
|
Packit |
534379 |
for the first software component.
|
|
Packit |
534379 |
```
|
|
Packit |
534379 |
|
|
Packit |
534379 |
|
|
Packit |
534379 |
## OPTIONS ##
|
|
Packit |
534379 |
`-S SOCKET_ID, --socket-id SOCKET_ID`
|
|
Packit |
534379 |
|
|
Packit |
534379 |
socket id of FPGA resource.
|
|
Packit |
534379 |
|
|
Packit |
534379 |
`-B BUS, --bus BUS`
|
|
Packit |
534379 |
|
|
Packit |
534379 |
bus id of FPGA resource.
|
|
Packit |
534379 |
|
|
Packit |
534379 |
`-D DEVICE, --device DEVICE`
|
|
Packit |
534379 |
|
|
Packit |
534379 |
The device id of FPGA resource.
|
|
Packit |
534379 |
|
|
Packit |
534379 |
`-F FUNCTION, --function FUNCTION`
|
|
Packit |
534379 |
|
|
Packit |
534379 |
The function id of FPGA resource.
|
|
Packit |
534379 |
|
|
Packit |
534379 |
`-G, --guid`
|
|
Packit |
534379 |
|
|
Packit |
534379 |
Specifies the GUID to use for the resource enumeration.
|
|
Packit |
534379 |
|
|
Packit |
534379 |
`-m, --muxfile <filepath.json>`
|
|
Packit |
534379 |
|
|
Packit |
534379 |
The path to the ```fpgamux``` configuration file. This file must be in JSON format following the
|
|
Packit |
534379 |
schema described below.
|
|
Packit |
534379 |
|
|
Packit |
534379 |
## CONFIGURATION ##
|
|
Packit |
534379 |
```fpgamux``` uses a configuration file (in JSON format) to determine what software components to instantiate and
|
|
Packit |
534379 |
how to configure them to work with the AFUs. The schema includes the following elements:
|
|
Packit |
534379 |
|
|
Packit |
534379 |
```
|
|
Packit |
534379 |
[
|
|
Packit |
534379 |
{
|
|
Packit |
534379 |
"app" : "fpga_app",
|
|
Packit |
534379 |
"name" : "String",
|
|
Packit |
534379 |
"config" : "Object"
|
|
Packit |
534379 |
}
|
|
Packit |
534379 |
]
|
|
Packit |
534379 |
```
|
|
Packit |
534379 |
|
|
Packit |
534379 |
## EXAMPLES ##
|
|
Packit |
534379 |
The following example shows a configuration with two components:
|
|
Packit |
534379 |
```
|
|
Packit |
534379 |
[
|
|
Packit |
534379 |
{
|
|
Packit |
534379 |
"app" : "nlb0",
|
|
Packit |
534379 |
"name" : "nlb0",
|
|
Packit |
534379 |
"config" :
|
|
Packit |
534379 |
{
|
|
Packit |
534379 |
"begin" : 1,
|
|
Packit |
534379 |
"end" : 1,
|
|
Packit |
534379 |
"multi-cl" : 1,
|
|
Packit |
534379 |
"cont" : false,
|
|
Packit |
534379 |
"cache-policy" : "wrline-M",
|
|
Packit |
534379 |
"cache-hint" : "rdline-I",
|
|
Packit |
534379 |
"read-vc" : "vh0",
|
|
Packit |
534379 |
"write-vc" : "vh1",
|
|
Packit |
534379 |
"wrfence-vc" : "write-vc",
|
|
Packit |
534379 |
"timeout-usec" : 0,
|
|
Packit |
534379 |
"timeout-msec" : 0,
|
|
Packit |
534379 |
"timeout-sec" : 1,
|
|
Packit |
534379 |
"timeout-min" : 0,
|
|
Packit |
534379 |
"timeout-hour" : 0,
|
|
Packit |
534379 |
"freq" : 400000000
|
|
Packit |
534379 |
}
|
|
Packit |
534379 |
},
|
|
Packit |
534379 |
{
|
|
Packit |
534379 |
"app" : "nlb3",
|
|
Packit |
534379 |
"name" : "nlb3",
|
|
Packit |
534379 |
"config" :
|
|
Packit |
534379 |
{
|
|
Packit |
534379 |
"mode" : "read",
|
|
Packit |
534379 |
"begin" : 1,
|
|
Packit |
534379 |
"end" : 1,
|
|
Packit |
534379 |
"multi-cl" : 1,
|
|
Packit |
534379 |
"strided-access" : 1,
|
|
Packit |
534379 |
"cont" : false,
|
|
Packit |
534379 |
"warm-fpga-cache" : false,
|
|
Packit |
534379 |
"cool-fpga-cache" : false,
|
|
Packit |
534379 |
"cool-cpu-cache" : false,
|
|
Packit |
534379 |
"cache-policy" : "wrline-M",
|
|
Packit |
534379 |
"cache-hint" : "rdline-I",
|
|
Packit |
534379 |
"read-vc" : "vh0",
|
|
Packit |
534379 |
"write-vc" : "vh1",
|
|
Packit |
534379 |
"wrfence-vc" : "write-vc",
|
|
Packit |
534379 |
"alt-wr-pattern" : false,
|
|
Packit |
534379 |
"timeout-usec" : 0,
|
|
Packit |
534379 |
"timeout-msec" : 0,
|
|
Packit |
534379 |
"timeout-sec" : 1,
|
|
Packit |
534379 |
"timeout-min" : 0,
|
|
Packit |
534379 |
"timeout-hour" : 0,
|
|
Packit |
534379 |
"freq" : 400000000
|
|
Packit |
534379 |
}
|
|
Packit |
534379 |
}
|
|
Packit |
534379 |
]
|
|
Packit |
534379 |
```
|
|
Packit |
534379 |
|
|
Packit |
534379 |
## Revision History ##
|
|
Packit |
534379 |
|
|
Packit |
534379 |
| Document Version | Intel Acceleration Stack Version | Changes |
|
|
Packit |
534379 |
| ---------------- |------------------------------------|----------|
|
|
Packit |
534379 |
| 2018.05.21 | 1.1 Beta. (Supported with Intel Quartus Prime Pro Edition 17.1.) | No changes from previous release. |
|