Организация работы АЦП и ЦАП в микропроцессорных системах

Проблема интеграции АЦП или ЦАП в микропроцессорную систему (МПС) обязательно распадается на две взаимосвязанные задачи: обеспечение электрической совместимости преобразователя с цифровым контроллером и алгоритмической организации обмена данными между ними.

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

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

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

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

Проще всего задача интеграции преобразователя в МПС решается тогда, когда в структуре цифрового контроллера выделены специальные линии (шина, порт) для общения с периферийными устройствами и заранее оговорен протокол и командная организация обмена данными. Например, для чтения данных с АЦП (или выдачи их на ЦАП) выделяется отдельный порт однокристального микроконтроллера или порт параллельного периферийного адаптера более сложной МПС, например, некоторого универсального контроллера.

Рис.

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

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

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

Если при проектировании МПС адресное пространство памяти и внешних устройств не разделено, то обмен данными центрального процессора с преобразовательным блоком может быть организован как чтение или запись в ячейки памяти. При этом обращение производится по некоторому зафиксированному для преобразователя адресу. Подключение блока ПФИ к общей шине системы осуществляется только при появлении на шине этого адреса, который распознается дешифратором этого блока. Обращение к памяти на время обращения к преобразователю при этом блокируется. Стробирование обмена осуществляется сигналами ЦП " чтение из памяти " (READ) и " запись в память " (WRITE). Если преобразовательных блоков несколько, то обращение к каждому из них ведется по отдельному адресу и дополнительно дешифрируется (рис.50).

Рис.

Если при проектировании МПС адресное пространство памяти и внешних устройств разделено, то обмен данными центрального процессора с преобразовательным блоком ведется по специальным командам и стробируется специальными сигналами ЦП " чтение с УВВ " (READ I/O), " запись в УВВ " (WRITE I/O). Блокировка памяти при этом не нужна.

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

В целом, синхронизация достигается за счет применения метода " запрос – ответ ". Это находит отражение, в принятых названиях линий передачи квитирующих сигналов, например READY – WAIT (готовность – ожидание), INTINTA (требование прерываний – подтверждение прерываний), HOLD – HLDA (требование захвата – подтверждение захвата).

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

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

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

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

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

Общие принципы организации механизмов обмена определяют еще один подход к классификации УВВ.

По методам организации обмена данными УВВ удобно относить к одной из трех групп: со свободным, жестким и смешанным (полужестким) ритмом. Каждой группе свойственно определенное соотношение временных параметров УВВ (главным образом, времени доступности данных после инициализации tдост) и МПС (такт работы микропрограммируемых узлов tмп, длительность цикла ЗУ системы tзу, длительность выполнения команды программного устройства tком, время реакции на запрос прерывания tпрер).

Устройства ввода-вывода со свободным ритмом, полностью работающие под управлением ведущей системы, в свою очередь, подразделяются на УВВ с постоянной, синхронной и асинхронной доступностью после инициализации. Устройство с постоянной доступностью способно принять или передать очередную порцию информации в любой момент времени, определяемый запросами ведущего устройства. Примером такого УВВ является ЦАП с входным буферным регистром данных. Устройство с синхронной доступностью способно к обмену в строго фиксированный момент времени после сигнала инициализации. Так, например, работает АЦП поразрядного уравновешивания при организации запуска процедуры преобразования от ведущего устройства. В зависимости от тактовой частоты и разрядности преобразования время tдост, определяемое как произведение длительности такта на разрядность, принимает значения от соизмеримых с tмп до tпрер в типовых МПС. Соотношение tдост и временных параметров МПС определяет целесообразные или допустимые методы организации операции ввода-вывода. Так, при tдост<tзу обычно допустимо использование состояния ожидания ведущего программируемого элемента, а при tдост>tком более целесообразны программные методы организации ввода-вывода.

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

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

Деление УВВ, и особенно аналого-цифровых, на различные группы относительно, поскольку изменение ритма обмена (а значит, и "переход" из группы в группу) в большинстве ПФИ технически решается просто. Выбор ритма должен производиться с учетом задач определенной МПС на основании анализа потоков информации. В частности, возможность смешанного ритма определяется допустимостью пропуска ряда отсчетов АЦП в определенные моменты времени. Следует подчеркнуть явно выраженную тенденцию к буферизации данных в УВВ, сводящую УВВ с жестким ритмом к УВВ со свободным ритмом. В таком режиме УВВ может функционировать до тех пор, пока системой обеспечивается темп работы, исключающий переполнение буфера. При превышении допустимого темпа необходимо возвращаться к механизму жесткого ритма, иначе возможна утеря порции данных.

Существующие концепции построения вычислительных машин разделяют методы организации операций ввода-вывода на два класса: прямой ввод-вывод, когда результат операции оказывается в одном из регистров ЦП (чаще всего в аккумуляторе), и косвенный ввод-вывод, когда результат операции оказывается в памяти системы и передается в ЦП при выполнении команд чтения из памяти. Прямой ввод-вывод облегчает доступ ЦП к передаваемой информации, но усложняет организацию групповых передач. Косвенный ввод-вывод, наоборот, приспособлен для групповых передач, но усложняет доступ ЦП к одиночным порциям передаваемых данных. В современных МПС наибольшее распространение получил прямой ввод-вывод, а косвенный реализуется в операциях прямого доступа к памяти (ПДП).

В структуру контрольно-измерительной цифровой системы могут, как уже указывалось выше, включаться различные периферийные интегральные схемы (ПБИС).

Необходимость введения ПБИС и функции, возлагаемые на нее как на элемент сопряжения УВВ и ЦП, определяются из требований, диктуемых УВВ, и имеющихся ресурсов ЦП.

В отношении функций ПБИС можно разделить на "прозрачные", демпфирующие, БИС управления данными и обрабатывающие.

"Прозрачные" ПБИС не влияют ни на темп, ни на содержание передаваемой информации. Необходимость их использования обычно диктуется требованиями электрической совместимости УВВ и ЦП – нагрузочной способностью, уровнями сигналов и возможностью отключения от микропроцессорной магистрали (наличие элементов с Z-состоянием). "Прозрачные" ПБИС применяются для подключения УВВ с постоянной и УВВ с синхронной доступностью после инициализации. Примером могут служить БИС шинных формирователей К589АП16, К580ВА86.

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

Управляющие ПБИС включаются в состав МПС в тех случаях, когда ни один из механизмов обмена ЦП не может обеспечить требуемый темп работы УВВ. Применяют эти ПБИС и тогда, когда процессор способен реализовать функции обмена, но возникает необходимость в разгрузке программного обеспечения ЦП. Примерами таких ПБИС могут являться контроллер прямого доступа в память К580ВТ57, контроллер индикации и клавиатуры К580ВВ79.

Рассматривая особенности структурной и алгоритмической организации построения контрольно-измерительных МПС и их систем ввода-вывода можно выделить еще ряд интересных моментов.

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

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

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

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: