Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
57
Добавлен:
02.02.2015
Размер:
1 Mб
Скачать

На рис. 9.9 приведена реализация измерительного тракта (не показаны связи интерфейсных частей и ключи коммутатора Кв).

Рис. 9.9. Реализация измерительного тракта

на структурных функциональных узлах, измерение Ui(t)

По отношению к структуре рис. 9.5 структура рис. 9.8 имеет меньшее число функциональных узлов, сами же узлы более простые, чем на рис. 9.6. К достоинствам таких структур можно отнести также способность расширения функциональных возможностей. Недостатками такой структуры являются наличие коммутатора Кв и некоторые потери времени, связанные с необходимостью организации измерительной структуры.

Реализация структур субкомплексов

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

Для выяснения основных требований к внутреннему интерфейсу СПС рассмотрим состав информации, обмен которой происходит в измерительной части в процессе работы СПС по структуре рис. 9.6.

В таблице 9.1 приведены сведения о том, какое количество битов информации передается по шинам внутреннего интерфейса и прямого доступа в память в зависимости от типа сигналов.

 

 

Разрядность шин структуры рис. 9.6

 

Таблица 9.1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Функцио-

 

 

 

Шина внутреннего интерфейса

 

Шина прямого

 

 

 

Сигналы управления

 

 

 

 

 

нальный

 

 

 

 

Информация

доступа

 

 

Ввод в ФУ

 

Вывод из ФУ

 

узел (ФУ)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1)

2)

3)

 

4)

5)

6)

7)

8)

9)

10)

11)

12)

 

13)

 

ПНПuir

3

3

3

 

1

2

1

1

2

1

 

 

 

 

 

 

ПАЦПa

3

1

 

 

 

2

1

1

 

1

 

10

12-14

 

 

 

ПАЦПft

3

1

3

 

 

2

1

1

3

1

 

20

 

 

 

 

ПЦАПa

3

2

 

 

1

2

1

1

 

1

12-20

 

 

 

12-14

 

ПВУui

3

1

3

 

 

2

1

1

 

1

 

 

 

 

 

 

ПЦАПft

3

 

 

 

 

2

1

1

 

1

26

 

 

 

 

 

Обозначения:

1)

адрес

ФУ,

2)

режим,

3) поддиапазон, 4) состояние,

 

5) сброс-запуск, 6) готовность, 7) неисправность, 8) состояние, 9) конец опе-

 

рации, 10) ввод в ФУ,

11) вывод из ФУ,

12) ввод в ОЗУ, 13) вывод из ОЗУ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

101

По шине прямого доступа в память (ШПД) передаются только сигналы, содержащие информацию об измеряемой (выдаваемой) величине. В этом режиме объем информации не более 2 байт на обмен.

Сигналы, передаваемые по шине внутреннего интерфейса, можно разделить на сигналы управления работой функционального узла и сигналы, несущие информацию об измеряемой (выдаваемой) величине. В некоторых функциональных узлах такие сигналы отсутствуют, так как информация выдается или преобразуется в аналоговой форме. Объем информации, передаваемой по информационной части шины внутреннего интерфейса, составляет 2-4 байта. Объем управляющей информации 1-2 байта.

Рассмотрим требования к выбору характеристик внутреннего интерфейса СПС. Разрядность существующих микропроцессоров (8 или 16 двоичных разрядов) не позволяет вести обработку информации параллельным методом и требует разбивки информационного слова на части, кратные байту информации. Кроме того, прием и передача по шине внутреннего интерфейса информационного сообщения в 20-30 бит в параллельном коде требует большого числа шин и контактов разъема при физической реализации интерфейса. Поэтому наиболее приемлемым методом передачи информации по шине внутреннего интерфейса является последовательно-параллельный (бит-параллельный, байтпоследовательный).

Сигналы управления функционального узла, общий информационный объем которых не превышает 16 бит, могут передаваться по отдельным шинам и в виде сообщений.

Таким образом, можно сформулировать два основных требования к внутреннему интерфейсу: 1) двунаправленная бит-параллельная, байт– последовательная передача информации по шине, число приемников и источников информации на которой не превышает 16; 2) наличие механизма управления работой функционального узла путем передачи и приема ограниченного количества сигналов управления.

Есть следующие пути выбора такого интерфейса: 1) применение одного из известных стандартных интерфейсов, реализация которого возможна при выбранном конструктивном решении; 2) разработка специфического нестандартного интерфейса, возможности которого максимально приближены к типам сигналов, приведенным в таблице 9.1, хотя и должны обладать (по отношению к данной конкретной реализации) некоторой избыточностью.

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

102

Роль и состав программного обеспечения

Функции ЭВМ в измерительной установке весьма разнообразны. Одной из таких функций является просто накопление поступающей информации. Во многих случаях объем измерительной информации столь велик, что ее накопление и хранение возможно только на машинных носителях. Возможности ЭВМ используются полнее, если в ее функции входит анализ поступающей информации. Быстродействие современных ЭВМ позволяет выполнять предварительный анализ регистрируемой измерительной информации в темпе ее поступления, или, как говорят, в реальном времени. Целью предварительного анализа может быть отбор полезных событий, отбрасывание информации о фоновых явлениях и помехах. Это приводит к существенному снижению объема накапливаемых данных и повышению их информативности.

Широко используется также методика «подправки» каждого регистрируемого кода по результатам градуировочных измерений. Это позволяет компенсировать нелинейность и другие погрешности измерительного тракта и обойтись без относительно сложных систем стабилизации. Часто в процессе измерений регистрируются и изучаются сразу несколько видов физических воздействий. Анализ в реальном времени позволяет выполнить раздельное накопление информации об этих объектах.

Использование ЭВМ предоставляет широкие возможности по управлению измерительной установкой и автоматизации процесса измерений. Важным элементом ИИС является диалог оператора с ЭВМ. В состав программного обеспечения, помимо программ сбора и обработки информации, включаются вспомогательные программы. Вспомогательные программы позволяют оператору наблюдать за ходом измерений, получать информацию о состоянии установки, изменять режим измерений и т. д.

Разработка ИВК реального времени требует основательного знакомства с целым рядом вопросов: языками программирования, аппаратными средствами связи электронного измерительного или управляющего оборудования с ЭВМ, а также принципами и техникой программирования этого оборудования, операционными системами (ОС) реального времени и методикой использования системных средств в прикладных программах, особенностями организации программных комплексов реального времени.

Использование вычислительных машин в измерительных системах отличается от их применения для решения вычислительных задач. В последнем случае основным инструментом инженера является язык программирования высокого уровня. Знаний по архитектуре ЭВМ и системному программному обеспечению в этом случае практически не требуется. Программы и даже сложные программные комплексы отличаются детерминированностью и, будучи однажды отлажены, работают в дальнейшем всегда одинаково хорошо.

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

103

ляются важнейшими средствами организации программ реального времени. Программы реального времени работают в условиях изменяющейся внешней среды. Ход выполнения программы обычно зависит от таких непредсказуемых условий, как скорость накопления и характер регистрируемых событий, нестабильность измерительной аппаратуры, возникновение аварийных ситуаций. Поэтому в программах реального времени содержатся элементы интеллектуальности. Программа сама следит за внешними условиями и автоматически изменяет свое выполнение в зависимости от складывающихся обстоятельств.

Все это позволяет рассматривать разработку программного обеспечения измерительных систем реального времени как самостоятельную область программирования с развитым алгоритмическим аппаратом, специфическими методами отладки и тестирования, своеобразными условиями применения.

Уровень и пути развития ИВК во многом определяются программным обеспечением (ПО) – совокупностью программ, используемых при подготовке и решении задач, управлении, проектировании и проверке работоспособности элементов системы. Программное обеспечение ИВК можно разбить на два вида: общее и специальное.

Общее программное обеспечение включает в себя: 1) ПО управления – со-

вокупность программ, предназначенных для управления функционированием системы (вычислительный процесс, ввод-вывод, контроль работоспособности системы и ее модулей) в процессе реализации прикладных измерительных задач и при разработке новых программ; 2) ПО разработки программ – совокупность программ, используемых в качестве вспомогательных средств на всех этапах разработки программ (от ввода программ на языках высокого уровня до проверки функционирования программ в реальном масштабе времени).

Специальное программное обеспечение реализуется в виде пакетов при-

кладных программ (ППП): 1) ППП стандартного математического обеспечения

– совокупность программ реализации стандартных методов (математической статистики, вычислительной математики, интегрального исчисления и др.) при решении различных прикладных задач; 2) ППП специального назначения – совокупность программ, разрабатываемых для решения задач или класса задач (определенного вида измерительного эксперимента или совокупности экспериментов) на базе ППП стандартного математического обеспечения; 3) ППП метрологического обеспечения – совокупность программ аттестации измерительных средств ИВК (измерительные модули, каналы, алгоритмы) в автоматическом режиме в процессе эксплуатации системы.

Рассмотрим подробнее некоторые, наиболее важные составляющие программного обеспечения ИВК. Операционная система – это совокупность программ, обеспечивающая определенный уровень эффективности цифровой вычислительной системы за счет автоматизированного управления ее работой и набора услуг, предоставляемых пользователям.

Операционная система является посредником между ИВК и пользователем, она анализирует, интерпретирует запросы и обеспечивает их выполнение. Запрос пользователя указывает на требуемые действия, необходимые для их выполнения ресурсы и представляется в виде задания на языке, который называ-

104

ется языком управления. Существуют три основные категории ОС, каждая из которых характеризуется как определенным типом взаимодействия пользователя с его заданиями, так и ограничениями на время ответа ИВК.

1). Операционная система пакетной обработки – обеспечивает обработку заданий, поступающих в виде последовательных пакетов данных на входных устройствах; во время обработки нет взаимодействия между пользователем и его заданием, а время ответа ИВК есть время выполнения задания.

2). Операционная система разделения времени – обеспечивает одновремен-

ное обслуживание многих пользователей, работающих в режиме непосредственной связи с ЭВМ, и позволяет каждому пользователю взаимодействовать со своей программой и данными.

3). Операционная система реального времени – обслуживает процессы,

протекающие в устройствах, работающих в режиме непосредственной связи с ЭВМ. Эти процессы (например, синхронизированный измерительный эксперимент – с точной фиксацией моментов измерения) имеют жесткие ограничения на время ответа: если запросы не будут вовремя обработаны, нарушается ход процесса, что приводит к неправильным результатам. Такие операционные системы часто проектируются специализированными, ориентированными на конкретный измерительный эксперимент.

Общие характеристики операционных систем реального времени

Операционная система малой ЭВМ представляет собой сложный комплекс взаимодействующих программ, предназначенных, с одной стороны, для управления ходом вычислительного процесса (управляющие программы), а с другой

– для организации процесса взаимодействия пользователя с ЭВМ (обслуживающие программы). К настоящему времени разработано огромное количество ОС, различающихся характеристиками и назначением. Некоторые ОС, например UNIX или CP/M, достаточно универсальны и могут использоваться на машинах разных марок, но многие ОС являются машинно-ориентированными и предназначены для машин определенного семейства.

Вто же время в зависимости от задач, решаемых вычислительной системой, одна и та же ЭВМ может быть укомплектована различными ОС, характеристики которых в сильной степени влияют на свойства создаваемой системы. Так, ОС может предполагать наличие только одного терминала, с которого осуществляется как запуск подготовленных к выполнению программ, так и диалоговые взаимодействия с ними в процессе их выполнения. Оператор, работающий за терминалом, является единственным пользователем.

Вболее сложном случае операционная система обслуживает несколько терминалов. Один из них является командным (системным, консольным), с него осуществляется запуск подготовленных программ. Остальные терминалы служат для диалогового взаимодействия нескольких операторов с выполняемой (единственной) программой. Несмотря на наличие нескольких операторов, такой режим следует назвать все же однопользовательским. Запускать программы может только один оператор, работающий за командным терминалом.

105

Наконец, наиболее совершенные операционные системы позволяют обслуживать много терминалов, причем все они одновременно являются командными. Вычислительная система (ВС) становится многопользовательской, так как все операторы имеют практически одинаковые права и могут одновременно и независимо управлять системой. Если при этом программы, запущенные с нескольких терминалов, одновременно находятся в оперативной памяти и выполняются параллельно, то такой режим, как и обеспечивающую его ОС, называют мультипрограммным или мультизадачным.

Задачей (или заданием) в ОС называется готовая к выполнению (т. е. оттранслированная и скомпонованная) программа, участвующая в вычислительном процессе. Операционная система, организуя вычислительный процесс, имеет дело с заданиями как написанными пользователем, так и системными.

Операционные системы различаются и по другим признакам: скорости реакции на внешнее прерывание, порядку распределения ресурсов ЭВМ между выполняемыми заданиями, средствами взаимодействия оператора с запущенным им заданием и т. д. Таким образом, ОС надо выбирать с учетом конкретных условий использования вычислительной системы. Анализ условий и выбор операционной системы является важным этапом при проектировании ИВК.

Рассмотрим структуру операционной системы реального времени, приведенную на рис. 9.10.

Рис. 9.10. Структура операционной системы реального времени

Оператор взаимодействует с операционной системой, вводя через клавиатуру терминала команды оператора. Эти сообщения поступают в программу связи с оператором, которая анализирует введенные команды, проверяет их правильность и выполняет затребованные действия самостоятельно, либо запускает соответствующие системные программы.

Функции команд оператора разнообразны. С их помощью осуществляется запуск программ пользователя, вызов системных обслуживающих программ, вывод сообщения о состоянии вычислительной машины, перераспределение памяти и внешних устройств, загрузка системных компонентов, переход на другую операционную систему и т. д.

106

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

Доступ к функциям монитора из прикладной программы осуществляется с помощью системных макрокоманд (системных директив), включение которых в программу обеспечивает динамическое по ходу выполнения задания обращение к нужным функциям монитора.

Указание в тексте программы на языке Ассемблера имени системной макрокоманды приводит на этапе трансляции к включению в текст программы вместо имени макрокоманды несколько строк, называемых макрорасширением и хранящихся в системной макробиблиотеке. На этапе выполнения эти строки осуществляют подготовку аргументов запроса к монитору и передачу управления программе монитора, соответствующей конкретному запросу.

Можно выделить следующие важнейшие действия, выполняемые посредством системных макрокоманд: 1) ввод-вывод; 2) обслуживание нестандартных внешних устройств, например, измерительной аппаратуры, в режиме прерываний; 3) временная синхронизация вычислительного и измерительного процессов с помощью системного таймера; 4) автоматическая настройка программ на конкретную аппаратную конфигурацию; 5) организация комплексов взаимодействующих программ реального времени; 6) взаимодействие оператора с выполняемым заданием и управление ходом его выполнения.

Приведенный список не исчерпывает возможности системных макрокоманд, которые являются важнейшим элементом программ реального времени.

Подпрограммы на языке высокого уровня, с помощью которых происходит вызов системных макрокоманд, содержатся в системной объектной библиотеке. Состав этой библиотеки определяет возможности использования языка программирования при создании программ реального времени. Кроме того, в системной объектной библиотеке могут содержаться различные вспомогательные подпрограммы (преобразования чисел и кодов, обработки строк и т. д.).

Подсоединение к основной программе подпрограмм из системной библиотеки производится на этапе компоновки программы автоматически, если редактор связей встретил их имена в объектном модуле.

В состав ОС включаются драйверы внешних устройств – программы управления внешними устройствами. В функции драйвера входит выполнение операций ввода-вывода на физическом уровне путем обращения к регистрам ВУ, отсчитывание количества переданных слов или байтов, смещение указателя в буфере оперативной памяти (ОП), откуда (или куда) передаются данные, и т. д. Все эти действия обычно выполняются в режиме прерываний.

107

Монитор следит за этим процессом, инициируя работу драйвера, если в выполняемой программе встретился запрос на ввод-вывод. Монитор организует очередь к драйверу, если запросы на ввод-вывод поступают из программы быстрее, чем драйвер и ВУ успевают их обрабатывать, а также выполняет ряд других операций по взаимодействию работы драйвера и основной программы.

Описанные компоненты операционной системы принадлежат к управляю-

щим программам. Отдельную группу составляют обслуживающие программы

(утилиты). Сюда входят программы работы с файлами, программы, позволяющие подготовить и отладить прикладную программу (редактор текста, ассемблер, компоновщик, отладчик), программа-библиотекарь и т. д.

Рассмотрим основные характеристики операционной системы реального времени на примере широко распространенной ОС с разделением функций РАФОС. Операционная система включает в себя пять мониторов, различающихся возможностями, объемом и быстродействием.

Исполняющий бездисковый RM-монитор предназначен для работы в локальных многомашинных комплексах и на микроЭВМ без внешней памяти. Минимальный размер монитора 1,8 кбайт. Обслуживается оперативная память объемом до 28 кбайт. На такой вычислительной машине нельзя выполнять подготовку и отладку новых программ из-за отсутствия утилит. Нельзя также оперативно запускать требуемые по ходу измерения задания, так как при работе с таким монитором выполняться может только то единственное задание, которое было загружено вместе с монитором.

Однозадачный SJ-монитор требует для своей работы жесткого диска, на котором хранятся выгружаемые компоненты операционной системы. SJ-монитор позволяет пользователю выполнять весь комплекс работ по подготовке задания: создание исходного текста программы; трансляцию, компоновку и запуск программы; интерактивную отладку программы с помощью специально предусмотренных программ-отладчиков.

FB-монитор отличается от SJ-монитора практически лишь тем, что позволяет организовать двухзадачный фоново-оперативный режим. В этом случае в оперативной памяти одновременно находятся два задания – оперативное и фоновое. Оперативное задание обладает бóльшим приоритетом и выполняется в первую очередь. Если по каким-либо причинам оперативное задание блокируется, начинает выполняться фоновое задание.

Более сложный и совершенный XM-монитор, являющийся двухзадачным и однопользовательским, обеспечивает все возможности FB-монитора и содержит также системные программы управления расширенной памятью.

Многозадачный TS-монитор обеспечивает одновременную работу с вычислительной системой до 20 пользователей. Он защищает файлы от несанкционированного доступа. Монитор удобно использовать для организации многопользовательских вычислительных машин общего назначения, однако его возможности по управлению измерительными системами ограничены.

Помимо системы РАФОС в вычислительных комплексах используется другая операционная система реального времени – ОС РВ. Эта система, являясь многозадачной, обеспечивает управление процессами реального времени с од-

108

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

Организация мультипрограммной работы ВС требует решения целого ряда вопросов, которые можно разбить на три группы: 1) планирование оперативной памяти; 2) распределение между задачами времени центрального процессора; 3) организация взаимодействия задач друг с другом.

Составные части операционной системы MS DOS

В MS DOS можно выделить следующие составные части: 1) базовая система ввода-вывода BIOS, 2) загрузчик операционной системы Boot Sector, 3) модуль расширения базовой системы ввода-вывода IO.SYS, 4) модуль обработки прерываний MSDOS.SYS, 5) командный интерпретатор COMMAND.COM, 6) внешние команды MS DOS, 7) драйверы внешних устройств.

Базовая система ввода-вывода аппаратно зависима. Она поставляется уже записанной в постоянном запоминающем устройстве компьютера фирмой-

изготовителем ЭВМ. В ее функции входит проверка исправности аппаратных средств при включении питания, считывание с диска загрузчика операционной системы и передача ему управления.

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

Загрузчик операционной системы содержится в первом секторе каждого диска, отформатированного в среде MS DOS. Он просматривает каталог диска и загружает в оперативную память файлы IO.SYS и MSDOS.SYS.

Модуль расширения базовой системы ввода-вывода настраивает операционную систему на конкретную конфигурацию вычислительного комплекса и позволяет подключить вновь написанные драйверы к нестандартным устройствам ввода-вывода.

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

Командный интерпретатор выводит приглашение пользователю на ввод команды, анализирует полученную инструкцию, выполняет встроенные команды, загружает в оперативную память внешние команды или программы пользователя и передает им управление.

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

109

БЕЙСИК,
АССЕМБЛЕР, СИ

Языки программирования, трансляторы

Измерительно-вычислительный комплекс программируется на различных уровнях – от кодов до алгоритмических языков. Для этого в программное обеспечение включаются соответствующие отладочные средства: трансляторы, редакторы, отладчики, загрузчики и др.

Программирование в кодах редко используется в настоящее время, а для решения системных задач применяются языки, максимально приближенные к системе команд вычислительных средств ядра ИВК, – это и др. Из языков высокого уровня наиболее широкое применение получили

ФОРТРАН, ПАСКАЛЬ, PL.

Известны два способа перевода заданий с языка высокого уровня на машинный язык: трансляция (компиляция) и интерпретация, реализуемые транслятором и интерпретатором соответственно. Основное отличие трансляции от интерпретации заключается в том, что при трансляции результат хранится в памяти целиком – в виде объектной программы и выполняется после завершения трансляции, а при интерпретации – по частям, в течение времени, необходимого для выполнения соответствующего числа машинных команд.

Все языки можно разделить на два класса: машинно-ориентированные и проблемно-ориентированные. Машинно-ориентированные языки предназначены для того, чтобы в наиболее удобной для человека форме писать программы для конкретной ЭВМ. К этим языкам относятся автокоды и АССЕМБЛЕР.

АССЕМБЛЕР представляет собой язык символьного кодирования для соответствующей ЭВМ. Он основан на системе команд и включает в себя ряд дополнительных средств для составления, изменения и оформления программ. Программирование на Ассемблере требует глубокого знания организации аппаратных средств ЭВМ и довольно трудоемко.

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

Проблемно-ориентированные языки различаются по форме записи и содержанию в зависимости от класса задач. Операторы в этих языках можно разбить на пять типов: 1) операторы манипуляции данными – для вычислений, перемещения данных, обработки списков и редактирования строк; 2) операторы управления программой – для изменения последовательности выполнения программы; 3) операторы ввода-вывода – для организации обмена с внешними устройствами; 4) операторы описания – для спецификации данных и управляющей информации, задания требований к памяти, указания типа данных, информации о конфигурации аппаратных средств системы, определения способа обработки особых ситуаций в ходе выполнения программы; 5) операторы обращения к подпрограммам – для создания библиотеки подпрограмм и обращения к ним.

110

Соседние файлы в папке Проэктирование.Вопросы+книга