xSCOPE performance figures#
Transfer rates between the xCORE Tile and XTAG-3 or XTAG-4#
The recommended xCONNECT target-to-XTAG link inter- and intra-token delay for most target hardware is approcimately 10ns between transitions.
For a tile frequency of 500MHz this can be achieved by setting the link inter- and intra-token delay to 5 cycles (see Link). The latencies and maximum call rates for the probe functions using an xCONNECT Link at this speed are given in xSCOPE performance figures for xCONNECT Link with 5-cycle intra-token delay.
Probe function |
Latency (core cycles) |
Max calls/sec |
---|---|---|
|
15 (always) |
666,000 |
|
20 (with no contention) |
999,000 |
|
27 (with no contention) |
666,000 |
|
22 (with no contention) |
666,000 |
|
28 (with no contention) |
555,000 |
If two subsequent calls are made, the second call may be delayed in line
with the maximum frequency. For example, if xscope_probe_data_pred
is called twice, the second call is delayed by approximately 1.5 us.
The maximum call rates can be increased by reducing the inter- and intra-token delay (see Link). A small delay requires careful layout of the link and choice of cabling, since it increases link frequency.
Transfer rates between the XTAG-3 or XTAG-4 and Host PC#
The host PC has a limit at which it can receive trace data from the XTAG. If the PC is unable to keep up with the rate at which the target is transmitting, it may drop trace data records.
Host/target data throughput benchmarks#
The throughput in each direction using both the xSCOPE interface and the JTAG interface is shown below.
Host machine and OS |
Host to target (xSCOPE) [Kbytes/s] |
Target to host (xSCOPE) [Kbytes/s] |
Host to target (JTAG) [Kbytes/s] |
Target to host (JTAG) [Kbytes/s] |
---|---|---|---|---|
Intel I3 NUC PC Centos 7 running natively |
1105 |
6926 |
2.7 |
2.8 |
Intel I3 NUC PC Ubuntu 20.04 running natively |
1053 |
6929 |
2.8 |
2.9 |
Intel I3 NUC PC Windows 10 running natively |
1031 |
6926 |
2.7 |
2.9 |
Intel I7 Laptop Centos 7 running in a VM |
932 |
5183 |
4.2 |
15.9 |
It can be seen that in the direction from target to host, when using the xSCOPE interface the maximum throughput of the xTAG device has been reached (for OSes running natively). This data is streamed from the target to the host without handshaking. In the direction from host to target the data is transferred in a series of blocks along with a handshake for each, which is why the throughput is significantly lower.