Привет. Подскажите какие существуют методы быстрого тестирования своих PCIe корок?
Короче разрабатываем железяку c PCIe на ПЛИС Xilinx Virtex-6, в котором FPGA контролирует сбор инфы с пары стандартных плат АЦП, шлет инфу в ЦАПы и рядом еще крутится процессор. Точнее железяка покупная, а мы только разрабатываем софт под нее. В FPGA вокруг PCIe корки построена своя система обработки трафика, чтобы работать в реальном времени. Проблема в том, что сейчас вылавливаем баги и постоянно появляется что-то новенькое. Т.е. получается так - допустим компилируется версия кода и запускается на железе. Все работает и согласно словам программиста все баги пофиксины. Другой человек работает с этой железякой - и тут трах-бах - шина валится. Вызываем программиста, он долго ищет и в конце находит баг. Фиксит - опять все работает, и так до следующего раза. В итоге с пары минут время непрерывной работы PCIe увеличилось до пары дней. Программист клянется, что багов больше нет, но что-то не верится.
В последнем случае баг был в том, что добавили пару плат и из-за трафика в посыльном буфере сообщения налаживались друг на друга. Вероятность этого была настолько мала, что программист это не проверил.
В общем вопрос - существуют ли методы гарантированного тестирования PCIe в домашних условиях. Т.е как можно быстро протестировать корку на любые возможные сценарии? Сорри, профессиональных тестировщиков в штате нету и не предвидится - фирма маленькая.
|