Российский производитель и разработчик сертифицированного измерительного оборудования с 1987 года

FAQ: Учёт архитектуры LTR для оптимального программирования задачи "реального времени"

В данной статье рассматриваются вопросы минимизации задержек ввода-вывода данных при реализации real-time задачи на основе крейта LTR. А именно, рассматриваются факторы задержек, обусловленные архитектурой LTR.

 

Задержки ввода-вывода, обусловленные архитектурой крейта LTR.

Архитектура крейта LTR описана в руководстве (глава 4), и ключом для её понимания является нижеприведённый рисунок (с точностью до реализации показанных общих принципов в разных крейтах и различий в интерфейсах с ПК):

 

Исходя из рисунка:

  1. Задержка на ввод в ПК будет минимальной, если верхний программный уровень постоянно откачивает данные, чтобы они минимально копились в буфере FIFO на ввод (на картинке: "Выходной буфер FIFO...").
  2. Задержка на вывод из ПК будет минимальной, если одновременно выполнены следующие два условия: 

а) в поток на вывод не ставить более 10-ти слов подряд (слово - 32 бита), адресованных одному и тому же модулю LTR (в данном посадочном месте крейта);

б) средняя скорость посылки данных одному модулю LTR не должна быть выше пропускной способности этого модуля на вывод.

 

Пропускная способность (п.4.6.3.7 руководства) на вывод (или приём команд) у модулей LTR разная, например, и у модулей LTR41 - LTR43 она составляет 80‑Кбайт/с, или в пересчёте на слово – 20 Кслов/c, а у большинства остальных – 1,6 Мбайт/c (Примечание 1).

В частности, если условия a), б) не выполняются, то на рисунке выше данные во "входном буфере FIFO" будут сильно копиться из-за того, что соответствующий "малый входной буфер FIFO" одного из модулей будет часто полным и вывод на остальные модули из-за этого будет тормозиться.

 

Задержки ввода-вывода, обусловленные архитектурой модулей LTR

К значимым факторам задержек на уровне модулей LTR относятся: 

  1. Задержки аналогового тракта модуля, связанные с шириной  полосы частот пропускания  (характерны для LTR27 и обусловленные аналоговым фильтром 1-го порядка с шириной полосы частот пропускания 100 Гц).
  2. Задержки, связанные с временем срабатывания входных-выходных "исполнительных устройств"  (характерны для LTR41, LTR42) и составляют единицы миллисекунд.  
  3. Задержки преобразования АЦП или ЦАП (характерны для LTR22, LTR24, LTR27, LTR212) и зависят от установленной частоты преобразования.
  4. Задержки цифровой фильтрации средствами модуля LTR (характерны для LTR212, LTR27, LTR25).
  5. Задержки буферизации модуля (характерны для LTR34, LTR210, если данный режим предполагает значительное накопление данных в буфере).

Заметим, что минимальной задержкой на ввод обладает модуль АЦП LTR11 с АЦП последовательного приближения, широкой полосой частот пропускания и без буферизации на уровне модуля. Но в многоканальном режиме LTR11 имеет "коммутационную задержку", хотя процесс последовательного опроса каналов LTR11 создаёт фазовый сдвиг момента оцифровки АЦП, а не задержку в тракте преобразования. 

 


Примечание 1:  В рамках развития системы LTR (или заказа) возможна модернизация модулей LTR42, LTR43 на быстрый интерфейс вывода, возможно распараллеливание буферизации на вывод в крейт-контроллере LTR и другие пути развития системы LTR в сторону оптимизации real-time задач.

 

По данной теме читайте также следующие статьи: 

 

Перейти к другим статьям FAQ       Cтатья создана:17.12.2016
Последняя редакция:30.06.2017

Контакты

Адрес: 117105, Москва, Варшавское шоссе, д. 5, корп. 4

Многоканальный телефон:
+7 (495) 785-95-25

Отдел продаж: sale@lcard.ru
Техническая поддержка: support@lcard.ru

Время работы: с 9-00 до 19-00 мск