Форум русскоязычного сообщества Ubuntu


Следите за новостями русскоязычного сообщества Ubuntu в Twitter-ленте @ubuntu_ru_loco

Автор Тема: Пользовательское приложение неправильно работает на более новых процессорах  (Прочитано 950 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн ShuraG

  • Автор темы
  • Новичок
  • *
  • Сообщений: 5
    • Просмотр профиля
Может кто что-то посоветует...
Сразу пишу, что я не большой специалист по линукс, занимаюсь этим только когда возникает необходимость.
Итак, есть железка (материнская плата плюс пользовательская плата PCI-e, через которую передается аудио и управляющие команды с/на 32 одинаковых пульта).
Работает она под uduntu 16.04 LTS (x86). Исходников пользовательского ПО нет, есть возможность только залить все в эту железку через флешку.

На материнках на процессоре J1900 все работает нормально. Пробовал на более старых процессорах Intel i3, i5 - все работает нормально.
Но на материнках с более новыми процессорами (например, J3455, J4105) пользовательское ПО работает криво - каналы с 0 по 6 и с 24 по 35 работают нормально, а с 7 по 23 работают неправильно, данные не проходят.

Есть ли у кого идеи, может какие-то настройки kernel попробовать добавить в grub, чтобы система работала на более новых процессорах? на что обратить внимание, что посмотреть? А то материнок на старых процессорах не найти...

Спасибо.
« Последнее редактирование: 27 Февраля 2022, 16:48:28 от ShuraG »

Оффлайн zelen50

  • Новичок
  • *
  • Сообщений: 38
    • Просмотр профиля
Для начала разберитесь какие аппаратные ресурсы использует Ваша плата.
на вскидку попробуйте в биосе на новых платах отключить "ненужную" перефирию по максимому (USB, LAN, AUDIO, ACPI, Wi-Fi, ... ). проблема скорее всего аппаратная (конфликт ресурсов) а не програмная.

Оффлайн ShuraG

  • Автор темы
  • Новичок
  • *
  • Сообщений: 5
    • Просмотр профиля
Да я уже в биосе все выключал, кроме LAN и USB. LAN выключить нельзя - используется. USB попробую выключить. Но не думаю что поможет.
Там какая-то странная вещь происходит, есть периодичность. Например, на материнках с процессорами J3455, J4105 и подобными, первые 6 каналов работают нормально, а с 7-го канала в файлы записываются нулевые данные, но каждые 16 секунд маленьких кусочек данных (аудиосигнала) все-таки записывается (256 милисекунд), и данные в этих кусочках правильные. Я из канала 23, кажется, записываются все аудиоданные из внешнего пульта, но тоже каждые 16 секунд такой же длины кусочек (256 мс) записывается нулями вместо сигнала. С 8 по 22 каналов записываются чистые нули, такого нет.

То есть есть ощущение, что проблема программная, есть совершенно определенная периодичность. Тем более что если в этом устройстве заменить только одну материнку на более старую (на более старом процессоре), все работает нормально. Чудеса в решете какие-то... Может, конечно, ПО было как-то криво написано.

На плате стоит мост PCI-e to PCI (довольно старый чип, PEX8112) и Xilinx FPGA, которая принимает данные и передает их на внутреннюю шину PCI.

 

 

Страница сгенерирована за 0.089 секунд. Запросов: 25.