Цитата
Нужен компилируемый пример.
Можно конечно запариться, но что толку - не работает когда перезагружаешь комп при включенной плате, кто это будет повторять.
И еще такое наблюдение: та же самая ошибка происходит, если плата с плисиной не просто перезагружает комп, а отключает и включает ему питание.
Т.е. ломается что-то внутри IP PCIe. И как ее сбросить, починить не понятно.
Цитата
Единица обмена по PCIe слово в 4 байта. Если нужно читать/писать байт то используются маски положения этого байта относительно слова с выровненным адресом. То-же и на шине Avalon.
У меня опыт с Avalon пока не велик - но из того что помню там есть рад нюансов (как по мне неприятно-неожиданных) связанных с тем как шина сконфигурирована - одни и тот же набор сигналов шины может вести себя по разному. И поэтому может быть что при чтении одного не выровненного байта на шине Avalon проходит несколько транзакций. Тут по хорошему надо бы на симе с PCIe посмотреть все это - погонять различные транзакции. Ну или прилепив сигналтап на выход Avalon c PCIe и смотреть на живом железе что и как.
Сигналтаб прикручен именно к Avalon c PCIe. И когда комп читает, на шине все отлично, а вот комп получает другое значение. Попробовали чтение исключительно словами 64 бит - ошибка сохраняется.
И кстати, когда работали с windriver под виндой таких проблем вообще не возникало.
Быть. torizin-liteha@yandex.ru