From CMS firmware 0x202 and onward the new event builder seems to be working.
Here is an example of how to generate a fake multi-block event and unpack it.
To initialize the AMC13 for internal triggers, TTC loop-back and fake data,
with two AMC inputs enabled:
AMC13Tool:
i 0-1 f l t initialize
wv 0x18 0x3800 set fake event size to 0x3800 64-bit words
lt 1 generate one trigger
Fake events contain 0x3800 64-bit words of data plus 3 extra words
(two header and one trailer) generated by the AMC13. The block size
is 0x1000 words, so these events will require 3 blocks.
To read data from the AMC13, first read the word count from Kintex
offset 0xd (in 32-bit words). Then read that many words from the buffer
at offset 0x20000. Then write any data to offset 0xc, which advances
to the next page of the buffer.
Currently each block of a multi-block event is in one SDRAM page.
The last block can be identified by noticing that the bits (M,S)=(0,1)
in the AMC information words in the block header.
--
EricHazen - 26 May 2014