Археология об основании Рима: Новые раскопки проясняют и такой острый дискуссионный вопрос, как дата самого возникновения Рима...
Биохимия спиртового брожения: Основу технологии получения пива составляет спиртовое брожение, - при котором сахар превращается...
Топ:
Методика измерений сопротивления растеканию тока анодного заземления: Анодный заземлитель (анод) – проводник, погруженный в электролитическую среду (грунт, раствор электролита) и подключенный к положительному...
Установка замедленного коксования: Чем выше температура и ниже давление, тем место разрыва углеродной цепи всё больше смещается к её концу и значительно возрастает...
Отражение на счетах бухгалтерского учета процесса приобретения: Процесс заготовления представляет систему экономических событий, включающих приобретение организацией у поставщиков сырья...
Интересное:
Наиболее распространенные виды рака: Раковая опухоль — это самостоятельное новообразование, которое может возникнуть и от повышенного давления...
Отражение на счетах бухгалтерского учета процесса приобретения: Процесс заготовления представляет систему экономических событий, включающих приобретение организацией у поставщиков сырья...
Аура как энергетическое поле: многослойную ауру человека можно представить себе подобным...
Дисциплины:
2020-10-20 | 87 |
5.00
из
|
Заказать работу |
|
|
Формирование требований к аппаратной реализации СУ.
I. Сигналы от конечных выключателей данного сверлильного автомата должны соответствовать уровням ТТЛ и равны 1 при включенном выключателе и 0 при выключенном. Поскольку микропроцессорная система построена на микросхемах ТТЛ, сигналы от автомата не требуют преобразования. В микросхемах ТТЛ (транзисторно-транзисторная логика) сигнал низкого уровня (0) равен 0¸0,4 В, а сигнал высокого уровня (1) равен 2,4¸5 В.
II. Автомат также должен воспринимать управляющие сигналы с уровнями ТТЛ.
III. Взаимодействие микропроцессорной системы и контроллера сверлильного автомата будет осуществлено через порт ввода-вывода с адресом 0FFh. Причём при чтении из порта биты с 0-го по 3-й должны быть равны 1 при включенных А, ПВ1, ПВ2 и ПВ3 соответственно и 0 при выключенных. А при записи в этот порт в битах с 0-го по 2-й на автомат будут передаваться управляющие сигналы БВ, РП и БН соответственно.
IV. Управляющая программа будет находится в ПЗУ с адреса 0FFFFh:0000h. С этого адреса начинается работа МП после включения или сброса.
Разработка УП.
Для управляющих сигналов сверлильного автомата в [2] были получены следующие структурные формулы:
БВ = А×ПВ2×ПВ3×ПВ1
РП = ПВ2×ПВ3×ПВ1
БН = ПВ2×ПВ3×ПВ1.
Разрабатываемая УП будет циклически читать состояние порта 0FFh, производить вычисления по приведённым формулам и отправлять результат в тот же порт. Вычисление управляющих сигналов по логическим формулам делает программу громоздкой, прямолинейной, но наглядной. Вообще логические команды ассемблера редко используются для вычисления логических выражений, так как с помощью инструкций проверок, сравнений и условных переходов результата можно добиться проще.
|
Итак, первоначальный вариант программы:
cikl: ;Метка для зацикливания вычислений.
in al,0ffh ;Чтение из порта 0FFh.
;Теперь al = (x x x x ПВ3 ПВ2 ПВ1 А)b
;номера битов 7 6 5 4 3 2 1 0
;где x – значение не определено.
mov ah,al ;Содержимое регистра аl заносится в ah.
and ah,1 ;ah=ah and 00000001b = (x x x x ПВ3 ПВ2 ПВ1 А) and
;00000001b = (0 0 0 0 0 0 0 A)b = A
mov bl,al
and bl,2 ;bl=bl and 00000010b = (x x x x ПВ3 ПВ2 ПВ1 А) and
;00000010b = (0 0 0 0 0 0 ПВ1 0)b
shr bl,1 ;bl = (0 0 0 0 0 0 0 ПВ1)b = ПВ1
mov bh,al
and bh,4 ;bh = (0 0 0 0 0 ПВ2 0 0)b
mov cl,2
shr bh,cl ;bh = (0 0 0 0 0 0 0 ПВ2)b = ПВ2
mov ch,al
and ch,8
mov cl,3
shr ch,cl ;ch = (0 0 0 0 0 0 0 ПВ3)b = ПВ3
;Вычисление сигнала БВ
mov al,ah ;al = ah = A
mov dl,bh ;dl = bh = ПВ2
xor dl,1 ;dl = ПВ2
and al,dl ;al = A×ПВ2
mov dh,ch ;dh = ch = ПВ3
xor dh,1 ;dh = ПВ3
and al,dh ;al = A×ПВ2×ПВ3
and al,bl ;al = A×ПВ2×ПВ3×ПВ1 = БВ
;Вычисление сигнала РП
mov ah,bh ;ah = bh = ПВ2
and ah,dh ;ah = ПВ2×ПВ3
mov dh,bl ;dh = bl = ПВ1
xor dh,1 ;dh = ПВ1
and ah,dh ;ah = ПВ2×ПВ3×ПВ1 = РП
shl ah,1 ;ah = (0 0 0 0 0 0 РП 0)b
|
or al,ah ;al = (0 0 0 0 0 0 0 БВ)b or (0 0 0 0 0 0 РП 0)b =
; = (0 0 0 0 0 0 РП БВ)b
;Вычисление сигнала БН
and dl,ch ;dl = ПВ2×ПВ3
and dl,dh ;dl = ПВ2×ПВ3×ПВ1 = БН
shl dl,1
shl dl,1 ;dl = (0 0 0 0 0 БН 0 0)b
or al,dl ;al = (0 0 0 0 0 0 РП БВ)b or (0 0 0 0 0 БН 0 0)b =
; = (0 0 0 0 0 БН РП БВ)b
out 0ffh,al ;запись вычисленных значений в порт 255
jmp cikl ;переход в самое начало.
Аппаратная реализация СУ.
Структура микропроцессорной системы, описанная в 1 и 2 частях данного руководства, изменений не претерпевает. Поэтому необходимо разработать лишь контроллер ВУ (см. рис. 2.1.). В соответствии с методикой, описанной в 4.3., потоки информации разбиваются на две группы: входные сигналы (А, ПВ1, ПВ2 и ПВ3 со сверлильного автомата и сигналы ШД, ША, IOR и IOW с микропроцессорной системы) и выходные сигналы (БВ, РП, и БН на ТО и сигналы на ШД).
I. Составляется таблица истинности (табл. 5.1.), при этом сразу отбрасываются не осуществимые комбинации входных сигналов (например, сигналы запроса на чтение и на запись IOW и IOR не могут быть активны одновременно). В данной таблице введены следующие обозначения: X – состояние сигнала может быть любым; Z – сигнал находится в 3-м состоянии (отключен); CS – сигнал с дешифратора адреса.
II. Из таблицы видно, что при сочетании входных сигналов в последнем столбце происходит передача управляющих сигналов на ТО. Тогда структурные формулы для этих сигналов следующие:
БВ = IOW×IOR×CS×D0 = З×D0
РП = IOW×IOR×CS×D1 = З×D1
БН = IOW×IOR×CS×D2 = З×D2,
где 3 = IOW×IOR×CS. Как уже было отмечено в I., когда сигнал IOW = 0, сигнал IOR = 1, а когда IOR = 0, IOW = 1. Очевидно, что выражение IOW×IOR = IOW. Таким образом 3 = IOW×CS = IOW+CS.
Таблица истинности контроллера сверлильного автомата. Табл. 3.6.
Входы IOW | 1 | 0 | 1 | 1 | 0 |
IOR | 1 | 1 | 0 | 0 | 1 |
ША (CS) | X (X) | не 0FFh (1) | не 0FFh (1) | 0FFh (0) | 0FFh (0) |
ШД | X | X | X | Z | D0, D1, D2 |
Выходы ШД | Z | Z | Z | D0 = А D1 = ПВ1 D2 = ПВ2 D3 = ПВ3 D4…D7 = X | Z |
БВ | 0 | 0 | 0 | 0 | D0 |
РП | 0 | 0 | 0 | 0 | D1 |
БН | 0 | 0 | 0 | 0 | D2 |
|
При сочетании входных сигналов в предпоследнем столбце таблицы, контроллер должен выставить на ШД состояние путевых выключателей. Это можно осуществить при помощи регистра, который соединяет сигналы А, ПВ1, ПВ2 и ПВ3 с соответствующими линиями ШД при наличии разрешающего сигнала Ч. При Ч = 0 выходы регистра должны перейти в Z-состояние:
Ч = IOW×IOR×CS = IOR×CS = IOR + CS.
III. Таким образом, получены следующие структурные формулы:
3 = IOW + CS
БВ = 3×D0
РП = 3×D1
БН = 3×D2
Ч = IOR + CS.
IV.
Упрощение СУ.
Разработанное схемотехническое решение совместно с УП является законченной полноценной СУ. Кроме того, разработанный контроллер автомата может как непосредственно припаиваться к соответствующим выводам микропроцессорной системы, так и вставляться в разъём расширения ЕISA любого IBM-совместимого компьютера. Если последнее не требуется (т.е. СУ разрабатывается как самостоятельное устройство), то контроллер и микропроцессорная система могут быть значительно упрощены:
1. В разработанной УП отсутствуют обращения к ячейкам памяти, следовательно из микропроцессорной системы можно удалить ОЗУ. По той же причине не нужны логические элементы формирующие сигнал записи MEMW в ОЗУ.
2. Не используются контроллер прерываний и контроллер ПДП – их тоже можно исключить.
3. Если данные (байты) посылать в порты только с чётными адресами (например 0FEh), то эти данные будут передаваться только по младшей части ШД (D7 – D0). Следовательно преобразователь III (рис. 5.1.) из контроллера может быть исключен. Подсоединение производится непосредственно к ШД.
|
4. УП обращается только к одному порту ВВ, значит необходимость в дешифрации адреса отпадает (блок I рис. 5.1.). В этом случае сигнал CS всегда равен нулю.
Так как аппаратное решение изменилось, необходимо изменить УП. Итак, новая программа, в которой, кроме выше сказанного, отражён другой подход к программированию:
cikl: ;Метка для зацикливания.
in al,0FEh ;Чтение из чётного порта (254).
;Теперь al = (x x x x ПВ3 ПВ2 ПВ1 А)b
;номера битов 7 6 5 4 3 2 1 0.
and al,00001111b ;Сбросить биты 4-7 регистра al.
mov ah,00000001b ;Поместить в ah комбинацию БВ=1, РП=0, БН=0.
cmp al,00000011b ;Сравнить с комбинацией ПВ3=0, ПВ2=0, ПВ1=1, А=1.
jz exit ;Если в регистре al проверяемая комбинация, перейти к
;метке exit. В этом случае после команды CMP флаг ZF=1.
and al,11111110b ;Сбросить бит 0, соответствующий сигналу А.
mov ah,00000010b ;Поместить в ah комбинацию БВ=0, РП=1, БН=0.
cmp al,00000100b ;Сравнить с комбинацией ПВ3=0, ПВ2=1, ПВ1=0.
jz exit ;Перейти к метке exit, если в al проверяемая комбинация.
mov ah,00000100b ;Поместить в ah комбинацию БВ=0, РП=0, БН=1.
cmp al,00001000b ;Сравнить с комбинацией ПВ3=1, ПВ2=0, ПВ1=0.
jz exit ;Перейти к метке exit, если в al проверяемая комбинация.
mov ah,00000000b ;Поместить в ah комбинацию БВ=0, РП=0, БН=0.
exit: ;Метка выхода после проверок.
mov al,ah ;Поместить в al комбинацию управляющих сигналов.
out 0FEh,al ;Записать управляющий сигнал в порт 0FEh
jmp cikl ;Повторить всё сначала.
Новая УП содержит лишь 16 команд, а делает то же, что и старая УП, состоящая из 36 команд.
|
|
Архитектура электронного правительства: Единая архитектура – это методологический подход при создании системы управления государства, который строится...
Биохимия спиртового брожения: Основу технологии получения пива составляет спиртовое брожение, - при котором сахар превращается...
История развития пистолетов-пулеметов: Предпосылкой для возникновения пистолетов-пулеметов послужила давняя тенденция тяготения винтовок...
Типы оградительных сооружений в морском порту: По расположению оградительных сооружений в плане различают волноломы, обе оконечности...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!