You copied the Doc URL to your clipboard.

2.12. ATB data ordering

When ATB transfers are generated, the order of the data is modified from the original packet values. Channel, data, and timestamp values are split into nibbles and written in reverse nibble order, MS nibble first in the data stream, after the packet header (opcode) or timestamp size.

For example, a write requesting a D32TS at stimulus port 20 of value 0x12345678 with timestamp offset of value 0x1234 produces the following data values:

  • Channel packet C8 = 0x3, 0x14 (opcode, channel number)

  • Data packet D32TS = 0xF6, 0x12345678 (opcode, data value)

  • Associated timestamp TS = 0x4, 0x1234 (size = 4 nibbles, timestamp value).

The generated ATB writes are:

0x3216F413
0x21487654
0xXXXXXX43

Xs are filled by the next packet.

Table 2.6 shows the structure of the ATB writes.

Table 2.6. ATB writes
ATB 32-bit writeATB data nibblesSource data nibbles

First word

0x3216F413

[31:28] = 0x3D32TS data [23:20]
[27:24] = 0x2D32TS data [27:24]
[23:20] = 0x1D32TS data [31:28]
[19:16] = 0x6D32TS opcode [3:0]
[15:12] = 0xFD32TS opcode [7:4]
[11:8] = 0x4C8 data [3:0]
[7:0] = 0x1C8 data [7:4]
[3:0] = 0x3C8 opcode [3:0]

Second word

0x21487654

[31:28] = 0x2TS value [11:8]
[27:24] = 0x1TS value [15:12]
[23:20] = 0x4TS size [3:0]
[19:16] = 0x8D32TS data [3:0]
[15:12] = 0x7D32TS data [7:4]
[11:8] = 0x6D32TS data [11:8]
[7:0] = 0x5D32TS data [15:12]
[3:0] = 0x4D32TS data [19:16]

Third word

0xXXXXX43

[31:8] = 0xXXXXXXFilled by the next packet, or set to NULL
[7:0] = 0x4TS value [3:0]
[3:0] = 0x3TS value [7:4]

Was this page helpful? Yes No