Сгенерил сейчас FIFO для Virtex5 (ISE11.3) с разной разрядностью на запись и на чтение. На запись 8 бит, на чтение 64. Моделирую: последовательно записываю 00, 01, 02, 03, 04, 05, 06, 07. Читаю. Получается слово "0001020304050607", т.е. первый записанный байт оказался старшим. По моим представлениям должно быть наоборот. В доке на фифо генератор про это ни слова. Если следовать логике Block RAM Address Mapping (ug190, page 128), то первый байт должен все-таки в младших разрядах оказаться. Сижу и думаю кому верить. Никто на практике (в аппаратуре) с этим не сталкивался?
PS У альтеры точно первый младшим оказывается...
|