Страница 2 из 2 ПерваяПервая 12
Показано с 11 по 13 из 13

Тема: ПЛК110 и быстрый таймер... непонятно

  1. #11

    По умолчанию

    Дмитрий, о какой прошивке вспомогательного процессора Вы ведете речь? То, что мы с Вами делали и вроде бы, с Ваших же слов все помогло - никакого отношения к вспомогательному процессору не имело.

    А что он сделал - просто разогнал процессор на 10%. С нашей помощью. Но так делать нельзя, в принципе, надо оставлять запас ресурса. Традиционная русская инженерная школа рекомендует запас от 1,5 раз (освещение туалета) до 3-х раз (серьезные проекты) и 10 раз (например, АЭС)

  2. #12

    По умолчанию

    Я бы назвал это не "разогнал на 10%", а "вернул на производительность, на которой проект разрабатывался".
    А сделано было следующее : после установки нужной прошивки дополнительно выполняется настройка стартового загрузчика специальной утилиткой (любезно предоставленной В. Филоненко) и ядро начинает работать не на 180 МГц, а на 200 МГц положенных по паспорту.

    Тупо не хватило ресурсов времени, в проекте активно используется прерывание быстрого таймера, поэтому каждый такт важен. Проект был разработан и принят в серийное производство на контроллерах работавших на частоте 200 МГц, а через год, по каким-либо внутренним причинам разработчики понизили частоту ядра до 180 МГц.

    Запас времени цикла при работе с прерываниями расходуется по другому. Сейчас длительность цикла в проекте выставлена 5 мс, согласно модуля статистики Free processor resource = 2400-2500 mks, казалось бы - запас в 100%!!!! Однако, на 180МГц данный запас сжирается по копеечке и через 10-15 секунд работы свободных ресурсов времени не остается, появляется флаг "переписывайте программу" и прочие чудесатые чудеса....

    Кстати, быстрое прерывание написано на LD, попытки сформулировать тоже самое на ST давали в 2 раза худшие показатели времени... так что утверждению об одинаковости скорости выполнения программ на разных языках нужно относиться осторожно )))

  3. #13

    По умолчанию

    Программирование прерываний - особое искусство
    А чтобы не иметь в таких проектах проблем с производительностью - просто удвойте число команд после того, как получили рабочий макет. Если все продолжает работать - то ОК, если же нет - то надо что-либо менять.
    И проблем потом с расширением функционала не будет.

Страница 2 из 2 ПерваяПервая 12

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •