Цитата(RKOB @ Jun 23 2009, 12:33)

>Пакеты могут передаваться в любом порядке
Это утверждение верно для х4, а для х1 они передаются в правильном порядке! (как ни странно). А на счет связки BRAM -> FIFO, мне тож надо так сделать, пока у меня сразу пишется в FIFO. Спасибо!
У меня switch PEX8648 не пропускает пакеты более 128 Байт при Write Memory. Никак не могу побороть его! Пробовал настраивать свитч (установил регистры Maximum Payload Size = 512 прошивкой EEPROM) пока не помогло. Может знаете в чем причина?
Вот еще одна странная штука: при записи (устройство пишет) по 64 Байта скорость передачи 380 МБ/с, а вот при записи по 128 Байт - 370 МБ/с. В чем дело не могу понять?!? А в остальном работаем так же - блоками по 4 кБ.
Насколько я понимаю, параметр PAYLOAD должен быть одинаковым во всей цепочке. Его настраивает BIOS в момент обнаружения устройств. Пока я встречал только компьютеры у которых PAYLOAD=128 и 256.
У PEX8648 какой может быть PAYLOAD ? Если она и может поддерживать больше чем 128 а компьютер поддерживает только 128, то и работать будет только 128. А вообще говоря в PCI-Express заложен огромный потенциал. Если они когда-нибуть увеличат его до 4096, то и скорость резко возрастёт.
У меня в итоге всё делится на 128 байт для команды Write Memory.