Да произвольная. FIFO там специфическое. Есть область памяти,
которая может быть отдана под FIFO. Есть регистр, который в этой
области показывает на начало, есть который показывает на конец. И
есть, блин, который показывает на размер FIFO. ЗАЧЕМ? Меня это
удручает, так как сие явное излишество. Далее, в области FIFO могу
выделить блок произвольной длины, где хранятся уже принятые данные.
Оставшаяся область, отведенная под FIFO, видимо, заполняется, пока
я обрабатываю блок с уже готовыми данными. Когда через специальный регистр я считываю готовые данные, изменяется счетчик (еще один регистр). Когда счетчик становится равным размеру блока, блок автоматически смещается, а счетчик сбрасывается. Вот единственный признак, который я узрел.