Й.Янсен Курс цифровой электроники. Том 3. Сложные ИС для устройств передачи данных (1987) (1092083), страница 27
Текст из файла (страница 27)
Этн разряды осуществляют управление насосами, моторами, клапанами, кранами и другими устройствами. Обеспечивая выдачу соответствующих значений (О или 1) каждого из разрядов управляющего слова, контроллер осуществляет автоматическое управление различными сложными процессами. При реализации сложных процессов промежуточные результаты обычно влияют на последовательность выполнения отдельных операций и моменты времени, когда зти операции начинаются. Пример: операция нагревания стирального барабана в стиральной машине должна произойти не раньше того момента, когда закончится наполнение барабана водой, так как нель- Заломкко оую едствойство (ЗУ) зя нагревать барабан, в котором нет требуемого количества воды, Таким образом, необходимо, чтобы нагревание ие начиналось, если не активизирована управляющая переменная ИОН (детектор верхнего уровня воды), которая указывает, что требуемое количество воды находится в барабане.
Контроллер следит за тем, чтобы своевременно перевести счетчик в исходное состояние, если в течение некоторого времени из-за прекращения подачи воды в барабане не будет достигнут требуемый уровень воды. Контроллер без отрицательной обратной связи, т. е. без использования входных управляющих переменных, которые сами Рве, 2.63.
Функцнональван таблнпа ППЗУ, аанрограммнрованного в катает. ве контроллера. являются результатом соответствующего управляемого процесса, обычно состоит из счетчика с ППЗУ. Ячейки ППЗУ зайрп. граммированы таким образом, что в результате воздействия записанных в них управляющих слов (микрокоманд) отдельные операции происходит в требуемом порядке, а время обработки на отдельных этапах определяется таймером.
Как мы видели вьппе, при использовании контроллера с отрицательной обратной связью результаты отдельных операций определяют как порядок, так и продолжительность отдельных этапов обработки информации. На рис. 2.63 приведена функциональная таблица контроллера, позволяющего в зависимости от запрограммированного набора битов при каждом отсчете счетчика реализовать несколько операций обработки, Вместо программирования отдельных разрядов управляющего слова, каждый нз которых определяет выполнение одной элементарной операции, можно записать в ПЗУ двоишые коды, ииициирующие выполнение в каждом рабочем такте (периоде счетчика) группы необходимых операций.
Зги коды преобразуются в управляющие сип1алы для исполнительных Галла*2 устройств с помощью декодера. Кодировка операций позволяет уменьшить длину (число разрядов) управляющего слова, выдаваемого ППЗУ. В примере, показанном на рис. 2.64, управляющие переменные, которые называются флаговыми битами илн признаками, определяют как последовательность, так и продолжительность отдельных операций. Как мы уже видели, управля1ощая переРРРРЯяянир~л РКИЯНЕННМЯ 5 М НРР имя ля НРН ИПНРН) я твтчя ятиньм я ЯЛЯРи яшРхи лиям ЯРРЛ1 Я/Р5РЯ 5555 5,~,5д 545Г Лряя дисн ллсРРРР Ря Лд Яяяядяя й аделям ЛОЯР~ЯРНРЛ 5ямд дням гтяллн ляпали яяр им 5ЯЬЯ Мяла Ряа свн / РР~РРРяснд» НЯРРНР Модидллаиил адреса Рла.:3:64, ППЗУ-коитроллер или автоматической стиральной машииы менная является сигналом„который сообщает информацию о результате выполнения отдельных предыдущих операций; управляющей переменной может быть, например, внешний сигнал — старт или стоп, — а также сигналы, поступающие с пульта управления при ручном режиме обработки данных.
Из рис. 2.64 следует, что и схеме отсутствует счетчик, а последовательность операций определяет ППЗУ. Допустим, что мы выбираем управляющее слово из ППЗУ. Программируя соответствующим образом это слово, мы можем получить такой код, который после декодирования обеспечит выполнение требуемой операции. Этот код определяет также адрес, по которому указаны параметры следующего этапа обработки. При этом выходы ППЗУ через шины изменения адресов связываются со старшими разрядами адреса. В результате на выходе ППЗУ формируется управляющее слово, определяющее следующий этап обработки.
После выполнения этого Залрмилаиляыа:нстярястаа 13у) этапа активизируется одна из управляющих переменных, которая обеспечивает обращение к следующему адресу ППЗУ. При этом происходит выбор ячейки памяти, в которой хранится двоичный код следующей операции обработки.
Порядок следования этапов обработки данных определяется управляющими переменными, которые появляются одна за другой, т. е. последовательно.,ППЗУ запрограммировано так, что когда управляющие переменные возникают в ожидаемом порядке, то и отдельные этапы обработки сохраняют требуемую последовательность выполнения операций.
Если эти этапы протекают не так, как ожидалось, то возникающее отклонение может привести к другому порядку в развитии процесса обработки. В этом случае с помощью специальной управляющей переменной можно вызвать тот адрес ЗУ, где берет начало новый порядок следования операций. Выполнение обработки, согласно новой последовательности операций, не обязательно соответствует какому-то нарушению нормального функционирования устройства. Такое изменение хода выполнения процесс при нормальной работе ц Рнс. 2.6о.
Алгоритм управления автома. тической стиральной машиной. а (аветвление») может происходить и нфрового устройства. Возможно, луч- $74 Гмюа 2 ше всего зто положение иллюстрируется на примере процесса деления чисел. Мы знаем, что деление состоит из операцийвычитания и сдвига, которые повторяются до тех пор, пока остаток не превратится в нуль или не изменит знак. В этой ситуации ППЗУ необходимо программировать так, чтобы сдвиги и вычитания повторялись до того момента, пока контрольная переменная не выдаст нулевой или отрицательный результат, на который контроллер реагирует прерыванием подпрограммы вычислений и началом следующего этапа обработки.
Контрольная переменная произведет обращение к адресу ЗУ за пределами данной подпрограммы, так что в действительности мы имеем дело с переходом в другую часть программы. По-видимому, нам следует пояснить сам принцип управления с применением ППЗУ-контроллера и несколько углубить его с помощью примера системы управления автоматической стиральной машиной. Если мы предполагаем, что процесс стирки протекает так, как показано на структурной схеме, приведенной на рис. 2.66, и что отдельные операции закодированы в двоичной форме, как показано в таблице на рис.
2.66, то для ППЗУ получится кодовая таблица, которую мы привели на рис. 2.67. В этой таблице указываются адреса с соответствующим содержимым разрядов слова, хранящегося в ППЗУ. Кроме этого, в таблице приведены управляющие переменные, которые инициируют последовательные операции. Обзор сокращенного обозначения управляющих переменных содержится в таблице на рис. 2.68.
Порядок следования отдельных операций в нормальных условиях соответствует графе «состояние» (см. рис. 2.67). Этот порядок мы обнаруживаем и в структурной схеме (см. рис. 2.65). Работа стиральной машины начинается после команды 5%Р (запуск программы стирки). Этот сигнал вырабатываетеся внешней запускающей схемой. Через адресный вход А~ сигнал $%Р выбирает слово, хранящееся в ячейке ППЗУ с адресом 00001. При этом появляется сообщение о первой операции (001 — подача воды).
Эта команда декоднруется, и полученный в результате декодирования сигнал осуществляет требуемую операцию — открывается водопроводный кран. После считывания этого слова из ЗУ адресация ЗУ изменится на 00101, в результате чего выходы Ом .11~ н (1г связываются с адресными входами Ам Аз и Ам соответственно, Поэтому адресу в ПЗУ также записав код 001, поэтому подача воды будет продолжаться. Аналогичная ситуация наблюдается и для адреса 00100, так как если сигнал 5%Р прекращается„то мы имеем А,=О. И в этом случае водопроводный кран будет оставаться открытым. Как только будет установлено, что уровень воды достиг требуемой отметки, по- Завалина/ои1ие усграасгаа 1ЗУ) о/унниисносонан и!иронии 175 Риа.
2.бб. Кодовая таблввл длв отдельиыл оиеравла в стиральной хашааа. соса сне Состояние рсвеннсв Со рнание ППЛУ Пирес /тири сг сос!нонн ! 5/ОР , о а о )о о, ! Пиерсррнис 5 Пинсиеоии/Е а > 5, О',! о 5! а «5, а / О ! 5 О ! Униар и",5' о П лг расо! и о о вх / о о'о ! гра- и о о а о о,а / о о о, о / Поейснание и о о > а о)/ / о / а рисса и и о>/ /'о о / о о о о о а > о о о / О 0 ! О,/ / О вин и вш / о в оонеб о / о хри Жгн/Е о о 0>о! 5 ! 5, / / о Уаг сс//0055 » 0 5/ОР 5, О О О >о о а ' // о Писа раса! я4 а РСНРСН ' /5 Вав. 555 О Поеаснанис о 5, О'О 5, о > о 5 о / ! гри/ '/в/и о ! а о / о' о О О.' Рис.
2.67. Программирование ППЗУ. явится сигнал г)5)Н (сработал детектор уровня), в результате чего мы перейдем к адресации следующего слова ЗУ, как ука- зано в четвертой строке функциональной таблицы, вов « о а '>о; ! ~О./ /емРО/ ' О / ! о > о,'!, ОМ/'На ! О ', ! « >,о / о !>о ~о О / о а О, О ! о / тра. / о, ! гра о и/ / гри. ! ее о О о / 176 Глава 2 Сокращенные обозначения управляющих переменных $%Р 1ЧВН ТЕМ РЯО 5МТ100 ММ. Т5М 5ТОР 5К1Р старт программы стирки детектор верхнего уровня (воды) температура 5О 'С счетчик перемешивания ! ОО детектор нижнего уровня (воды) счетчик 5 мин стоп пропуск, переход по указанному адресу Рис. 2.68.
Сокращенные обозначения упраиляющнх переменных. Это слово генерирует код 010, который после декодирования даст команду на включение нагревательных элементов в стиральной машине. При этом адресация изменяется с помощью шин модификации адреса, как это следует из пятой строки функциональной таблицы. По новому адресу слова появляется код 010, который также сохраняется и для адреса следующей строки, потому что, несмотря на прекращение сигнала ЫРН (Аз=0), нагревание воды должно продолжаться.
При нагревании воды до 80 'С появляется сигнал ТЕМР80. Аналогичным образом ППЗУ контролирует все остальные операции. При этом коды, которые инициируют различные операции, вместе с управляющими переменными определяют порядок следования и продолжительность отдельных этапов стирки. В рамках данного метода управления предусмотрена возможность отклонения от стандартного порядка следования операций за счет изменения адресации ППЗУ при помощи определенной управляющей переменной, что приводит к переходу к другой подпрограмме обработки.
В приведенном примере это может произойти, если активизируются внешние управляющие переменные БК1Р нли ЗТОР. При появлении сигнала ЬК1Р адресация изменится таким образом, что операция «нагревание» будет пропущена, а при подаче сигнала БТОР программа стирки будет переведена в начальное состояние. В нижних строках функциональной таблицы показано, как происходит адресация при активизации сигнала ЬК1Р.
Если сигналы ЗК1Р и 1чПН появились одновременно, то произойдет обращение к адресу, указанному в 23-й строке этой таблицы. Соответствующее слово содержит код 011, совпадающий с командой «полоскание», поэтому в данном случае пагреванне не производится, а сразу же после заполнения водой барабана мы перейдем к полосканию. В остальном программа будет выполняться по-старому, однако адресация ЗУ прн этом будет другой: так как сигнал ЗК1Р остается актив.- 177 Зааовииииои1ив устройства 1ЗУ1 ным, то в разряде Ав адреса ЗУ будет стоять 1.