Разделы
Публикации
Популярные
Новые
Главная » Сопряжение цифровых, аналоговых сигналов

1 ... 19 20 21 22 23 24 25 ... 59


быть очень дорогими, и их стоимость в этот период часто превышает даже стоимость самого микропроцессора, но с течением времени они проявляют присущую технологии интегральных схем (и мало чему еще в этом мире) тенденцию к экспоненциальному понижению цен. Рис. 11.18. иллюстрирует соответствующий (по-види- 30 -мому, всеобщий) закон долины Silicon)) (часть геологического разлома Сан - Андреас между Сан - Франциско и Сан - Хосе)Ч Несмотря на некоторые пренебрежительные замечания, которые мы себе позволили по адресу вспомогательных БИС, многие 1975 197В 1977 1978 1979 из них оказываются совер- р„с. 11.18. Закон долины Silicon: наблюдаемые шенно необходимыми; оче- кривые.

видные тому примеры- /-SiHcon Valley (Am290!, цеиа 100 штук; 2 -New J г г England (цена 30 галлонов отопительного масла).

это устройства управления

дисками и дисплеем. Другой вспомогательный кристалл, нашедший себе широкое применение, - это универсальный синхронный/асин-хронный приемник/передатчик (УСАПП).

Как пользоваться УСАППом. УСАПП - это управляемая микропроцессором разновидность УАПП, который мы рассматривали в разд. 8.27. Хотя привычные УАППы можно использовать с микропроцессором, предлагаемые вместе с различными микропроцессорными семействами УСАППы более удобны ввиду возможности программировать по шрще управление режимом их работы. Большинство семейств ЦП имеют свои УСАППы, например Motorola 6850 (ЦП 6800), ZilogSIO (ЦП280), MOS Technology 6550 (ЦП 6502) и Intel 8251 (ЦП 8085). За возможным исключением УСАПП 6850 (подробнее об этом читайте ниже), все эти схемы в основном совместимы. Их применение мы проиллюстрируем на примере широко известного 8251А.

Чаще всего УСАПП используется для пересылки данных между ЦП и терминалами или устройствами для получения документов (такими, как печатающие устройства или графопостроители), когда главным требованием является универсальная совместимость и простота взаимного соединения устройств. Обычно это делается посредством последовательной передачи символов в коде ASCII через уровни RS-232C, как было описано в разд. 10.17. Для такого способа связи используется асинхронный режим работы УСАППа, причем каждый 8-битовый символ помещается между битами START и STOP и пере-

) Игра слов Silicon Valley - непрерывно опускающаяся часть указанного разлома, и вместе с тем Silicon - это кремний, причем в этой долине сосредоточена электронная промышленность.- Прим. ред.



Г лат tl

дается со стандартной скоростью как последовательная 10-битовая строка (см. разд. 10.17).

УСАЙП изготовляется в корпусе с 28 выводами и соединяется с ЦП при помощи 8 линий DATA (данных) шины ЦП, пяти дополнительных линий управления и одного входа CHIP SELECT (выбор чипа). На рис. 11.19 пошзано простое-соединение УСАППа с тшт- ной шиной вместе с подключеяием-устройств синхронизации приема/ /передачи данных и последовательного ввода/вывода и внешних управляющих линий протокола RS-232,

10/М

А15 J

h Ah J

Выбор VCTpOHCT-

Частота Синхроимпульсы


БкпгачЕйие-9i

Возможные лрерывания

Рис. 11.19. Соединение УСАППа с шиной микропроцессора.

Линии ЦП. Вход RESET служит для включения холостого режима работы схемы, в котором она ожидает программного выбора режима работы. Этот вход обычно связывают в шине с линией включения питания. Линия СЁК связывается с любым тактовым сигналом, частота которого должна не менее чем в 30 раз превосходить частоту приема/ /передачи битов; сама величина частоты и фаза сигнала не имеют значения. Линия CS (выбор чипа) используется, чтобы активировать ИМС для связи с процессором по шине. По линиям RD и WR производится стробирование параллельных данных в шине, если на линии C/D имеется сигнал НИЗКОГО уровня, или стробирование информации о состоянии и управляющей информации, если на C/D подан сигнал ВЫСОКОГО уровня. Линию C/D обычно соединяют с адресной линией Ао (МЗР); это означает, что данные и состояние/управ-ление можно рассматривать как два порта В/В.



Линии последовательного В/В. Все линии последовательного ввода и вывода данных и различные линии последовательного управления (CTS, RTS, DTR, ER) соответствуют стандартному протоколу RS-232C. Об этих четырех линиях мы больше ничего не скажем. Линии RxD и TxD служат соответственно для приема и передачи данных.

Прочие линии. Линии TxRDY, RxRDY, и TxEMPTY позво-ляют контролировать состояние регистров УСАППа для поиска неисправностей или для прерываний. Линии ТХС и RxC - это входы для синхроимпульсов, задающих частоту обращения к передатчику и приемнику. Эти входы питаются от любого внешнего генератора, от системного генератора синхроимпульсов (например, генератора ЦП 8085 с частотой 6,144 МГц) или от ИМС генератора частоты передачи информации. Такие генераторы обычно устанавливаются на частоту, в 16 раз большую, чем желаемая скорость последовательной передачи информации, например на 19,2 кГц для скорости 1200 Бод. (Как было сказано в гл. 10, 1200 бод - это 1200 бит/с, что соответствует 120 10-битовым словам в 1 с, т. е. 120 символам ASCII в 1 с.)

Профаммирование. В начале этого раздела мы говорили, что режимы работы УСАППа управляются командами из программ. Другими словами, посланный в УСАПП байт в режиме С (сигнал ВЫСОКОГО уровня на линии C/D) интерпретируется УСАППом как управляющая команда, которая устанавливает режим его работы. Таким способом можно выбрлть, например, синхронный или асинхронный режим работы, число битов STOP и четный или нечетный паритет (или не задавать его вовсе). Ниже приведены байты команд управления для трех часто употребляемых режимов работы с последовательными данными:

* Данные Паритет Управляющий байт

8 бит Никакого 0I00I110

7 бит Нечетный ОЮПОЮ

7 бит Четный 01111010

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



ORG: 0

MVI А, J910J9I110B OUT CSTAT

g начальный адрес при включении ЦП J командное слово для 8 бит без паритета S послать в регистр управления УСАППа

Программа 11.13

После того как при помощи командного регистра режим работы УСАППа установлен, фактические байты данных высылаются и принимаются в режиме D (сигнал НИЗКОГО уровня иа линии C/D) посредством обычных команд микропроцессора ддя ввода и вывода данных. При этом следует опрашивать регистр состояния (опять режим С), чтобы определять, когда принятые УСАППом последовательные данные оказывакяся готовыми для ввода в ЦП и когда УСАПП готов Л приему данных, которые должны быть переданы. Кроме того, другие биты регистра состояния указывают, была ли обнаружена паритетная ошибка, были ли потеряны входящие данные и т. д. Вы игнорирует эпги ужасные предвестники несчастья и дерзко бросаетесь вперед Примером может служить программа П. 14.

L00P1:

L00P2:

>

программа передачи данных

>

начать здесь, с высылаемым байтом данныя

в регистре С

IN CSTAT

ANI J94

>

маска буфера передатчика

JZ LOOPl

>

ждать, пока буфер передатчика освободится

MOV A,C

OUT CD ATA

>

выслать байт данных

программа приема

поступающий байт данных засылается в А

m CSTAT

ANI 02

маска готовности приема

JZ L00P2

ждать байта данных

IN CD ATA

Э

заслать его в А

ANI 7FH

вычеркнуть СЗР

Программа 11.14

Заметим, что приведенные примеры представляют собой простейшие из возможных программ для операций с УСАППом; для проверки информации о состоянии в них используется программируемый В/В (см. разд. 10.06-10.08). Зги программы останавливают выполнение

адрес регистра данных УСАППа % адрес регистра управления/состояния УСАПП

С0АТА=8Ш CSTAt = 81H



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

ИМС параллельного В/В (ПВВ), Другой по-настоящему важный класс периферийных БИС состоит из многоканальных схем В/В с параллельными портами. Обычно это фиксирующие схемы для выходящих н буфера для приходящих данных параллельного формата (как правило, шириной 8 бит); иногда они могут включать программируемые таймеры и даже устройства для преобразования параллельного формата в последовательный. Как и УСАППы, они имеют программируемые режимы работы, которые позволяют выбирать формат и направление передачи данных, выполнять операции с отдельными битами и устанавливать длительность задержек. Протокол передачи данных ПВВ также можно программировать; можно, например, разрешить автоматические прерывания и выбрать режим рукопожатия (по поводу такого режима см. разд. 10.13 и следующий раздел). Данные типичных ПВВ собраны в табл. 11.7.

Таблица 117

бис лев

с >.

г

Ш

t и и

X а

Cf га

е

о к

Ч

R Ш

га а 3 о.

С

s

Ш

u Q.

6522

* --

6532 Г)

6820,21 Г)

8154

Ш

8155,56

c >

8254

-

8255

в) Однобитовый регистр направления данных, б) Одвобитобый регистр установКа/сброс с од-> ной командой, в) Возможно преобразование последовательных данных в параллельные, Г) ПВВ 68 XX и 65 XX нуждаются в синхроивзнрующем сигнале Ф,. Д) Использует линий ADq-t как для данных, так н для адресов.

Почти все ИМС ПВВ изготовляются по /г-М(Ш-технологии, откуда следует, что они не могут служить источниками больших токов; обычно их можно включать на разветвленную нагрузку из четырех или пяти микромощных элементов ТТЛ Шоттки. Вследстаие этого



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

На рис. 11.20 предлагается разновидность схемы, которую можно было бы использовать в данном случае для обновления данных н^а

лее

Фиксирующая схема, дешифратор, драйвер

9368

С d В с А b

20 мА

6-ра1рядньш 7-сегментный дисплей

FNA 5520


7594

Рис. 11.20. Управление переключаемым дисплеем при помощи ПВВ,

б-разрядном дисплее. Не имеет значения, что выходы наших схен п-МОП можно использовать непосредственно для питания переключателя Дарлингтона с заземленным эмиттером, о чем мы говорили в разд. 9.10. Выходной (питающий) ток при величине ВЫСОКОГО уровня выходного сигнала 1,5 В часто бывает указан в описаниях схем под заголовком Ток питания схемы Дарлингтона . Например, для ПВВ 8255 этот ток равен 1,5 мА (минимум) при 1,5 В.

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



180 НС (мин1 Чстановлено


Рис, 11.21. Рукопожатие ПВВ.

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

Рис. 11.21 иллюстрирует этот простой подход в относящихся к ПВВ 8255 терминах: IBF означает буфер входа заполнен (input buffer full) и представляет собой сигнал, дополнительный к нашему KEADY; STB - это сигнал стробироваиия ввода; при помощи сигнала INTR ПВВ сообщает процессору, что имеет данные, которые должен ему передать. Согласно техническим условиям,длительность стробирующего импульса должна составлять не менее 500 не, а данные должны оставаться полностью установленными в течение 180 не после прохождения заднего фронта стробирующего импульса. На приведенной диаграмме также показано, что происходит после того, как процессор считывает данные из ПВВ. Хотя обычно употребляется стробирующий импульс фиксированной ширины, можно было бы поддерживать стробирующий уровень в течение всего времени, пока подается сигнал IBF (буфер ввода заполнен), как советует стрелка на рисунке. Такой способ обмена данных с двусторонним захватом гарантирует, что они не могут быть потеряны.

А/Ц-преобразователи для микропроцессоров и шин. Поскольку в основанном на микропроцессорах оборудовании часто бывают нужны aHajforo-цифровые преобразователи, различные изготовители выпустили свои АЦП, предназначенные для упрощенного соединения с-щиййки данных. Эти преобразователи имеют, в частности, выходы байтовой ширины с тремя состояниями, которые можно соединять непосредственно с шиной. Например, ICL7109 фирмы Intersil представляет собой интегрирующий 12-битовый А/Ц-преобразователь, выходные сигналы которого могут быть поданы прямо на шину в виде двух последовательных байтов без помощи обычного в таких случаях приданого вроде внешних фиксирующих схем, буферов с тремя состояниями и т. д. Линии START и STATUS, которые имеет этот преобразователь, позволяет микропроцессору заниматься другими вещами, пока АЦП выполняет свои относительно медленные преобразования (7,5 преобразований в 1 с).

АЦП ICL7109 - это характерный представитель семейства приспособленных для работы с шинами самостоятельных преобразователей; он является полным аналого-цифровым преобразователем, независимо от того, работает он совместно с микропроцессором или сам по себе. ИМС другого класса, называемые микропроцессор-



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

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

11.10. Память

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

В этом разделе мы поговорим о различных видах памяти: статических и динамических ЗУПВ, ЗУПВ и ПЗУ, ПЗУ масочно-про-граммируемых, электрически программируемых и перепрограммируемых (не говоря уже об электрически перепрограммируемых ПЗУ),

Статические и динамические ЗУПВ* Статическое ЗУПВ записывает биты в массиве триггеров, в то время как динамические ЗУПВ сохраняют их в виде зарядов на конденсаторах. Бит, записанный в статическом ЗУПВ, сохраняется там до тех пор, пока вместо него не будет записан другой, если только не будет выключено питание. В динамн-



ческом ЗУГШ данные исчезают, как правило, менее чем за секунду^ если их не возобновлять ( регенерировать ). Иными словами, динамическое ЗУПВ постоянно забывает записанные в нем данные, и спасти их может только регенерирующий синхроимпульс, который периодически воздействует на ряды данных. Как правило, по каждому из 64 адресов ряда такой импульс приходится подавать каждые 2 мс.

Почему же тогда, удивитесь вы, кто-то решает выбрать динамические ЗУПВ? Дело в том, что не использующая триггеров динамическая память занимает меньше места и позволяет поэтому записать на одном чипе больше данных (и за меньшую цену). Например, классический чип 2114 (статическое ЗУПВ) может хранить 4К (1Кх4) бит и стоит около 5 долларов, в то время как на чипе 4116 динамического ЗУПВ можно приблизительно за ту же цену записать 16К (16Кх1) бит. Поскольку размеры корпусов этих схем одинаковы, при использовании динамических ЗУПВ можно на одной и той же плате ЗУ за ту же цену получить в четыре раза больший объем памяти, чем при использовании статических.

Но тогда зачем вообще использовать статические ЗУПВ? - спросите вы теперь (как вы непостоянны, не правда ли?). Напомним что использовать чипы динамических ЗУПВ приходится в количествах, кратных восьми, поскольку почти все они имеют ширину в один бит, в то время как для небольших систем может хватить пары статических схем 2114. Другим преимуществом статических ЗУПВ является простота их использования, так как в этом случае можно не беспокоиться о регенерирующих синхроимпульсах или о возможных несоответствиях с синхронизацией (циклы регенерации могут конкурировать с обычными циклами обращения к памяти и потому должны быть надлежащим образом с ними согласованы).

Следующей тип ЗУПВ сочетает в себе лучшие качества статических и династических устройств. Эти ЗУПВ фактически являются ди-намич^имй, но имеют встроенную схему регенерации, с которой, собственно, пользователь и считывает данные. Они бывают шириной 4 или 8 бит и просты в употреблении. Цена их заметно выше чем у сравнимых динамических ЗУ, и, кроме того, их бывает труднее получить.

Имеются ЗУПВ с объемами от 1К бит до не менее чем 64К бит и со временем доступа от 750 не до приблизительно 50 не. При этом ЗУПВ большого объема обычно динамические, в то время как удобные ЗУПВ байтовой ширины и другие небольшие ЗУПВ (например, статическая схема 8185 1Кх8 бит) неизменно бывают статическими.

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



перемычками, перепрограммируемые ПЗУ со стиранием УФ-излуче-ннем и электрически перепрограммируемые ПЗУ.

Масочно-программируемые ПЗУ. Эти схемы рождаются уже запрограммированными. Выпускающее полупроводниковую продукцию предприятие превращает заказанное вами значение битов в специально изготовленную маску для проведения металлизации, посредством которой эти схемы и программируются. Размеры масочно-программи-руемых ПЗУ могут варьировать от 1К бит до 8К бит и выше. Такие схемы предназначаются для выпуска крупными сериями, так что не надо и мечтать о приобретении масочно-программируемого ПЗУ для макетирования. Типичные цены составляют от 1000 до 3000 долл. за заказанную партию, причем изготовитель будет настойчиво вас убеждать не покупать меньше чем 1000 штук ПЗУ за 1 раз. При таких количествах один чип может обойтись менее чем в 5 долл.

ПЗУ с плавкими перемычками. Эти схемы вступают в жизнь, имея все биты установленными в 1, и вы подвергаете их лечению электрошоком до тех пор, пока не будут сброшены в нуль мешающие биты. Например, чип 3624 фирмы Intel изготовляется по проверенной временем и основанной на плавлении поликристаллического кремния технологии. Он содержит 512 байт в корпусе с 24 выводами и программируется пропусканием сильного тока через соответствующие выводы при повышенном напряжении питания всей схемы: вы должны следить, расплавились ли нужные перемычки, если нет, надо просто продолжать лупить его током!

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

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

Классическая ИМС2716 - это широко используемое УФППЗУ (стираемое и программируемое ПЗУ) емкостью 2К байт, которое ра-



1 ... 19 20 21 22 23 24 25 ... 59
© 2004-2025 AVTK.RU. Поддержка сайта: +7 495 7950139 в тональном режиме 271761
Копирование материалов разрешено при условии активной ссылки.
Яндекс.Метрика