Искусство схемотехники. Том 3 [Изд.4-е] (fb2)

- Искусство схемотехники. Том 3 [Изд.4-е] (пер. И. И. Короткевич, ...) 12.6 Мб, 502с. (скачать fb2) - Пауль Хоровиц - Уинфилд Хилл

Настройки текста:



Хоровиц Пауль, Хилл Уинфилд
«Искусство схемотехники» Том 3 (Главы 11–15) Издание 4-е переработанное и дополненное

THE ART OF ELECTRONICS

Second Edition

Paul Horowits Harward University

Witlfield Hill Rowland Institute for Science, Cambridge, Massachusetts

CAMBRIDGE UNIVERSITY PRESS

Cambridge

New York Port Chester Melbourne Sydney




Глава 11 МИКРОПРОЦЕССОРЫ

Перевод К Г. Финогенова и М. П. Шарапова


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

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

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

Большая часть концепций программирования и интерфейса с магистралью, обсуждавшихся в предыдущей главе применительно к микроЭВМ, непосредственно приложима к схемам микропроцессорного управления, и в дальнейшем мы предполагаем, что читатель знаком с содержанием гл. 10. Настоящую главу мы начнем с детального рассмотрения небольшого микропроцессора с элегантной системой команд, а именно МП Motorola 68008, который в сущности представляет собой 32-разрядный процессор (68000) с 8-разрядной внешней шиной данных.

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

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

Внимательный взгляд на МП 68008

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

В этой главе мы рассмотрим МП Motorola 68008, являющийся младшим представителем элегантного и популярного семейства микропроцессоров 68000, находящих применение в таких микроЭВМ, как Macintosh, NeXT, Sun и Apollo. Этот микропроцессор практически идентичен МП 68000 (16-разрядная шина данных, 24-разрядная адресная шина), но упакован в 48-контактный DIP-корпус с 8-разрядной шиной данных и 20-разрядный адресной шиной. Микропроцессор выполняет те же программы, что и МП 68000; более узкая шина данных абсолютно прозрачна для использования.


11.01. Регистры, память и ввод-вывод

Регистры. На рис. 11.1 показаны внутренние регистры МП 68000 (мы будем использовать обозначение «68000» при описании черт, общих для МП 68000 и 68008).



Рис. 11.1. Регистры МП 68000/8.


Процессор содержит 8 регистров данных и 7 адресных регистров, причем все они в полной мере являются регистрами общего назначения; вспомним в связи с этим, что в МП 8086/8 регистр АХ (AL) должен использоваться в операциях ввода-вывода, DX — для адресации к портам и т. д. Регистры данных могут содержать «байты» (8 бит), «слова» (16 бит) и «данные слова» (32 бит), причем тип данных в любой операции указывается непосредственно в обозначении команды на языке ассемблера (см. ниже). Все вычисления и обработка байтов выполняются в регистрах данных.

Адресные регистры используются как указатели памяти или пространства ввода-вывода в 5 из 12 возможных для МП 68000 способов адресации; в адресных регистрах допустимо выполнение лишь нескольких арифметических операций (сложение, вычитание, сравнение, пересылка). Сегменты, как и сегментные регистры, отсутствуют; в микропроцессорах семейства 68000 всегда возможен доступ ко всему адресному пространству (1 или 4 Мбайт для МП 68008 в DIP — или четырехстороннем корпусе, 16 Мбайт для 68000, 4 Гбайт для 68020/30).

В микропроцессоре также имеются: указатель стека (фактически их два, но в каждый данный момент активен только один), программный счетчик PC (именуемый в МП 8086/8 «указатель команд») и регистр состояния SP. Последний содержит флаги (нуля, переноса, переполнения и др.), а также маску прерываний и биты режима.

Память и ввод-вывод. В отличие от МП 8086/8 в процессорах 68000 не предусмотрены отдельные сигналы магистрали ввода-вывода и в их системе команд отсутствуют команды ввода-вывода типа IN и OUT. Ввод-вывод осуществляется так же, как и обращение к памяти, с использованием адресов полной длины и стробирующих сигналов. Для подключения порта ввода-вывода вам следует декодировать адресные линии и сделать так, чтобы регистры ваших портов выглядели, как несуществующая память. Такой метод называется отображением ввода-вывода на пространство памяти; он используется во многих микропроцессорах. (Впрочем, даже в случае самостоятельного протокола ввода-вывода МП 8086 всегда можно отобразить ввод-вывод на пространство памяти с помощью стробирующих сигналов MEMR' и MEMW'.)

Преимущество отображения ввода-вывода на пространство памяти заключается в том, что для операций над регистрами портов можно использовать все команды, предназначенные для работы с памятью. Специальные команды IN/OUT МП 8086/8 заменяет команда MOVE; кроме этого, непосредственно над содержимым портов можно выполнять операции арифметические (сложения, вычитания, циклического сдвига, сравнения, проверки), логические (И, ИЛИ), а также над битами (установка бит, проверка бит). Единственный недостаток отображения ввода-вывода на пространство памяти заключается в необходимости декодировать много адресных линий; практически здесь не возникает трудностей, поскольку при большом адресном пространстве и малом числе портов ввода-вывода нет необходимости декодировать полный адрес (примеры см. ниже).


11.02. Система команд и способы адресации

В табл. 11.1 приведен полный набор команд МП 68000. Чтобы образовать правильный оператор (команду) языка ассемблера, следует указать операнды (с помощью одного из 12 режимов адресации) и тип данных (байтов, слово или длинное слово). На языке ассемблера фирмы Motorola оператор выглядит следующим образом:

ОПЕРАЦИЯ. размер источник, приемник

Здесь ОПЕРАЦИЯ берется из табл. 11.1, размер есть В, W или L (байт, слово или длинное слово соответственно), а источник и приемник могут представлять регистры, непосредственные константы или ячейки памяти. Ниже приведено несколько примеров с указанием способов адресации.


Таблица 11.1. Набор команд МП 68000/8

Операция · Описание

Арифметические

ABCD Сложение упакованных двоично-десятичных чисел

ADD Сложение

ASL Арифметический сдвиг влево

ASR Арифметический сдвиг вправо

CLR Очистка операнда

DIVS Деление (знаковое)

DIVU Деление (беззнаковое)

EXT Расширение знака

LSL Логический сдвиг влево

LSR Логический сдвиг вправо

MOVE Пересылка

MULS Умножение (знаковое)

MULU Умножение (беззнаковое)

NBCD Отрицание упакованного двоично-десятичного числа

NEG Отрицание

SBCD Вычитание упакованного двоично-десятичного числа

SUB Вычитание


Логические

AND Логическое И

BCHG Проверка и изменение бита

BCLR Проверка и очистка бита

BSET Проверка и установка бита

BTST Проверка бита

CHK Проверка регистра на границы

CMP Сравнение

EOR Исключающее ИЛИ

EXG Обмен регистров

NOT Побитовое дополнение

OR Логическое ИЛИ

RESET Возбуждение линии RESET

ROL Циклический сдвиг влево без расширения

ROR Циклический сдвиг вправо без расширения

ROXL Циклический сдвиг влево с расширением

ROXR Циклический сдвиг вправо с расширением

Scc1) Установить байт по условию

SWAP Обмен половин регистра

TAS Проверка и установка операнда

TST Проверка операнда и установка флагов


Управления

Всс1) Условный переход

BRA Безусловный переход (относительный)

BSR Переход на подпрограмму (относительный)

DBcc1) Проверка, декремент и переход

JMP Безусловный переход (7 режимов)

JSR Переход на подпрограмму (7 режимов)

LEA Загрузка эффективного адреса

LINK Подсоединение стека

NOP Холостая команда

PEA Загрузка в стек эффективного адреса

RTE Возврат из исключения

RTR Возврат, восстановление кодов условий

RTS Возврат из подпрограммы

STOP Останов

TRAP Ловушка (векторизованное исключение)

TRAPV Ловушка по переполнению

UNLK Отсоединение стека


Коды условий ("сс")

СС Перенос сброшен

CS Перенос установлен

EQ Равенство нулю

F Никогда не истина2)

GE Больше или равно нулю

GT Больше нуля

HI Выше

LE Меньше или равно нулю

LS Ниже или равно

LT Меньше нуля

MI Минус

NE Не равно нулю

PL Плюс

T Всегда истина2)

VC Переполнение сброшено

VS Переполнение установлено

____

1) См. «Коды условий».

2) Не используется в командах Вcс; вместо «ВТ» используйте BRA


MOVE.W (непосредственная,

# $FFFF,D0 регистровая)

MOVE.B (А0), (А1) (косвенная, косвенная)

ADD.L D5, (А2) + (прямая, косвенная с постинкрементом)

BTST.B #2$C0000 (непосредственная, абсолютная длинная)


В первом примере устанавливаются в 1 все 16 бит регистра D0 (символ «$» обозначает «шестнадцатиричное», а «#» указывает на «непосредственную» константу); вторая команда копирует байт из ячейки памяти, адрес которой находится в А0, в ячейку памяти, адрес которой находится в А1; третья прибавляет 32-разрядное знаковое целое к 4-байтовому («длинному») целому, которое начинается в памяти с байта, адресуемого через А2, после чего содержимое А2 увеличивается на 4; последняя команда проверяет бит 2 в ячейке памяти С0000Н, устанавливая соответствующим образом флаг нуля Z (для последующей команды условного перехода). Заметьте, что операнды cледуют в порядке — источник, приемник, что противоположно нотации МП 8086.

МП 68000 позволяет использовать почти все режимы адресации и размеры операндов с любой командой («Справочное пособие программиста МП 68000» исчерпывающе описывает все допустимые сочетания; наиболее полезная информация собрана в табл. 11.2). В результате написание изящных и эффективных программ на языке ассемблера оказывается относительно простой задачей. Например, работая с МП 8086 и желая проанализировать состояние флага порта ввода-вывода, вы должны будете сохранить и восстановить содержимое регистра AL и в сумме использовать 5 команд (PUSH, IN, TEST, POP, Jcc). МП 68000 позволяет выполнить ту же операцию с помощью всего двух команд: BTST и Всс; никакие регистры не нужны, потому что бит памяти (и, следовательно, регистры порта) можно проанализировать непосредственно. Более того, «автоинкрементный» режим адресации вроде «(А2) +» дает возможность работать с массивами. Хотя мы еще не описали все режимы адресации и команды, вы вполне сможете выполнить следующее упражнение.

Упражнение 11.1. Скопировать массив длиной $100 байт из таблицы, начинающейся в ячейке $А0000 в таблицу, начинающуюся в ячейке SA8000. При решении этой задачи будет полезна команд WGT метка (переход если больше нуля).


Режимы адресации. В приведенных выше примерах команд операции выполнялись над константами, содержимым регистров и содержимым ячеек памяти (или портов). Архитектура МП 68000 предусматривает богатый набор «режимов адресации» для определения этих операндов. В табл. 11.3 перечислены 12 режимов адресации, которые рассматриваются фирмой Motorola как 14. Вот что они значат:

Регистровая прямая адресация

Синтаксис: Dn (или An)

Пример: MOVE.W D0,D1

Операндом является содержимое указанного регистра


Непосредственная адресация

Синтаксис: #хххх

Пример: MOVE.B #$FF,D0

Операндом является указанная константа


Абсолютная адресация к памяти

Синтаксис: xxxx.W или xxxx.L

Пример: ADD.W D0JB000.W

Адрес операнда указан как непосредственная константа


Косвенная адресация

Синтаксис: (An)

Пример: SUB.W D0, (А0)

Указанный регистр содержит адрес операнда


Косвенная постинкрементная адресация

Синтаксис: (Аn) +

Пример: MOVE.B (А0) +, (А1) +

Аналогична косвенной, но после выполнения операции An инкрементируется на величину размера


Косвенная предекрементная адресация

Синтаксис: — 1Аn)

Пример: MOVE.W D0,-(A7)

An сначала декрементируется на величину размера, затем выполняется косвенная адресация


Косвенная адресация со смещением

Синтаксис: d16(An)

Пример: MOVE.L (А0),100(А0)

Адрес операнда определяется как (An) плюс 16-разрядное знаковое смещение d16


Косвенная индексная адресация со смещением

Синтаксис: d8(An,Xn.W [или. L]) (Хn может быть либо Dn, либо An)

Пример: MOVE.L 100(A0),100(A0,D7)

Адрес операнда определяется как (An) плюс (Хп) плюс 8-разрядное знаковое смещение d8


PC-относительная адресация со смещением

Синтаксис: d16(PC)

Пример: LEA 100(РС), АЗ

Адрес операнда отличается от адреса этой команды на величину 16-разрядного знакового смещения


PC-относительная адресация с индексом и смещением

Синтаксис: d8(PC,Xn.W или. L)

Пример: MOVE.W 100(PC,D0.W),D1

Адрес операнда отличается от адреса этой команды на величину суммы 8-разрядного знакового смещения и содержимого Хn.


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

Косвенная (особенно с постинкрементом или предекрементом) хороша для работы с массивами или стеком; кроме того, если адрес уже находится в адресном регистре, такая адресация быстрее абсолютной, так как при выполнении команды адрес (абсолютный) не требуется извлекать из памяти. PC-относительные режимы адресации особенно удобны при написании «позиционно-независимых» программ, поскольку все адреса определяются относительно самих программных строк; заметьте, что 8- и 16-разрядные смещения представляют собой знаковые целочисленные дополнения до 2, позволяя описывать ячейки, отстоящие от точки отсчета на ±127 или ±32767 байт соответственно. Обратите еще внимание на то, что непосредственные или РС-относительные операнды нельзя модифицировать (они «неизменяемы»).


11.03. Представление команд на машинном языке

Как уже упоминалось выше, язык ассемблера, использованный нами в примерах, не является «объектным кодом», фактически выполняемым микропроцессором. Скорее это мнемоническое представление, удобное для написания программ. Последовательность команд языка ассемблера, составляющая программу, должна быть преобразована в последовательность двоичных байт, выполняемых процессором. Как и в случае МП 8086, каждая команда языка ассемблера МП 68000 преобразуется (ассемблируется) в несколько байт машинного кода. Код операции (коп) всегда занимает 2 байт, но в тех случаях, когда требуется определить режимы адресации, к нему могут добавляться дополнительные слова (двухбайтовые). В зависимости от вида операции и режимов адресации команда может иметь длину от 2 до 10 байт. Например, команда

ADD.W (A1) +,D3

ассемблируется в код минимальной длины (2 байта), именно (D6 59)н, причем и номера регистров, и режимы адресации указываются (вместе с кодом операции) в самой 2-байтовой команде. С другой стороны, команда MOVE.W $FFFF,$A0000 ассемблируется в 8-байтовый код, а именно (33 FC FF FF 00 0А 00 00)н, причем в первых двух байтах указываются операция и режимы адресации, в следующих двух байтах — непосредственная константа, а в последних четырех байтах — абсолютный адрес (длинный) приемника.

ЦП, естественно, по самой своей конструкции умеет интерпретировать этот результирующий машинный код. Рассмотрение структуры машинного кода конкретной команды может помочь вам в понимании логики работы ЦП. На рис. 11.2 развернута структура самой употребительной команды МП 68000 MOVE.



Рис. 11.2. Структура команды MOVE.


Пройдемся по ней. Два лидирующих нуля идентифицируют (почти) команду, как операцию MOVE; следующие два бита определяют размер операндов, как это показано на рисунке. Любопытно отметить, что поскольку комбинация бит 00 не используется для описания размера, код 0000ххх…хх не входит число кодов команды MOVE (однако не думайте, что этот код пропадает — фирма Motorola использует его для других команд). Следующие 6 бит описывают режим адресации и регистр (если таковой используется) операнда-приемника, а последние 6 бит заключают ту же информацию об операнде-источнике; на рис. 11.2 показано, как кодируется эта информация. Заметьте, что последние 5 режимов адресации, не использующие регистр, разделяют между собой оставшийся номер режима (111) и различаются «фальшивыми» номерами регистра. Если режим адресации какого-либо из операндов требует дополнительной информации (непосредственные данные, абсолютные адреса, смещения), к коду команды добавляются дополнительные байты, как это показано на рис. 11.2.

Любопытно заметить, что МП 68000 расходует 1/4 х 3/4 = 19 % всех возможных кодов команд на команду MOVE, предоставляя все сочетания режимов адресации и для источника, и для приемника. Фирма Motorola не могла быть столь же расточительной для остальных 50 с лишком команд табл. 11.1, и возможности их адресации пришлось урезать.

К примеру, если использовать фирменное обозначение <еа> для полного набора команд, то можно образовать команды ADD < еа >, Dn или

ADD Dn, <еа>

но не все варианты полного сочетания

ADD <еа>, <еа>

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

MOVE.W #$3FFF,(A1) +

Код размера равен 11 (слово); код режима приемника равен 011, а регистра — 001; для приемника код режима равен 111, а «регистра» — 100. Таким образом, код команды составляет

00 11 001 011 111 100, или 32FCH

а полностью команда кодируется как

32 FC 3F FF

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

Иллюстрация команд и режимов адресации МП 68000 дана в программе 11.1, где показаны два способа копирования таблицы из 100Н байт, начинающейся в ячейке $8000, в непосредственно прилегающую область памяти (с адреса $8100).



В первом варианте для пересылки из памяти в память мы использовали косвенную адресацию со смещением (удобное средство, отсутствующее в МП 8086), а также инкремент указателя, декремент счетчика и условный переход. При частоте генератора 10 МГц цикл занимает 6,2 мкс, и вся таблица пересылается за 1,6 мс. Во втором варианте в программу введен второй адресный регистр, указывающий на приемник. В этом случае можно использовать постинкрементную адресацию и отказаться от команды ADDQ, что увеличивает скорость пересылки. Анализ на выход из цикла мы выполняем с помощью более эффективной (но рискованной) команды «декремент и условный переход» DBcc. В результате цикл выполняется почти в два раза быстрее (3,4 мкс на шаг, 0,87 мс на всю пересылку).

Упражнение 11.2. Напишите программу для вычисления суммы 16-разрядных слов в таблице, начинающейся с адреса $10000. Пусть длина таблицы в словах хранится в качестве первого элемента таблицы (он не должен входить в сумму); предположите также, что суммирование не приведет к переполнению.

Упражнение 11.3. Напишите программу для изменения порядка байтов в таблице, имеющей длину $100 байт и начинающуюся с адреса $1000.


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


11.04. Сигналы магистрали

Если вы усвоили взаимодействие сигналов на магистрали IBM PC, то разобраться с сигналами МП 68008 не составит труда — они схожи. Мы описали их в табл. 11.4 (имеющей тот же формат, что и табл. 10.1) и на рис. 11.3.



Рис. 11.3. Сигналы МП 68008.


Лучше всего воспользоваться уже испытанной последовательностью изучения и рассмотреть сначала программно-управляемую передачу данных («программно-управляемый ввод-вывод»), затем прерывания и, наконец, ПДП. Это не займет много времени.

Программно-управляемая передача данных. Программно-управляемая передача данных показана на рис. 11.4; мы также изобразили сигналы (CLK и AS'), которые в процессе проектирования схемы обычно можно игнорировать.



Рис. 11.4. Циклы чтения/записи МП 68008 (8 МГц, без состояний ожидания).


В МП 68008 используется один сигнал, стробирующий данные (DS'), а также линия направления чтения-записи (R/W) в отличие от IBM PC, где предусмотрены два стробирующих сигнала (IOR', IOW'). В цикле записи ЦП переводит сигнал R/W в низкое состояние, устанавливает адрес и данные и, выждав некоторое время, переводит в низкое состояние сигнал DS'. Приемник (память или устройство ввода-вывода) фиксирует данные, которые (в отличие от IBM PC) гарантированно установлены еще перед фронтом сигнала DS', и подтверждает прием, устанавливая в низкое состояние сигнал DTACK'. ЦП завершает цикл, снимая сигнал DS' и затем (выждав некоторое время на случай использования приемником Прозрачных фиксаторов) снимает адрес и данные. Таким образом, достоверность данных гарантируется в течение DS' плюс короткие интервалы до и после сигнала. Цикл чтения отличается лишь тем, что ЦП поддерживает линию R/W' в высоком состоянии (указывая тем самым, что выполняется чтение) и, к тому же, устанавливает сигнал DS' на один такт раньше, чтобы дать возможность источнику данных отозваться на требование данных. Данные должны быть установлены до окончания сигнала DS'; детали взаимодействия показаны на рис. 11.4.

Действие сигнала DTACK' требует дальнейшего обсуждения. Шина МП 68008 является асинхронной (см. разд. 10.14): установив сигнал DS', ЦП, перед тем, как завершить цикл, ожидает от адресуемого устройства сигнала подтверждения DTACK' (через проводное ИЛИ). Если сигнал DTACK' поступает перед концом такта S4, состояния ожидания не включаются в протокол, и последовательность сигналов выглядит точно так, как показано на рис. 11.4; если же DTACK' задерживается, ЦП удерживает все свои выходные сигналы в стабильном состоянии (включая в протокол магистрали после такта S4 «состояния ожидания») до появления сигнала DTACK', после чего завершает цикл тактами S5-S7. Состояния ожидания требуются только при работе с очень медленными устройствами, поэтому адресуемое устройство должно устанавливать сигнал DTACK' сразу же после распознания им на шине своего адреса (устройство может установить DTACK' по результатам декодирования адреса или образовав логическое И из сигнала декодирования и полученного им из ЦП сигнала AS', который указывает на достоверность адреса). Вообще говоря, если все устройства, подключенные к шине, являются быстрыми, вы можете, с известной долей риска, постоянно удерживать линию DTACK' в низком состоянии и полностью избавиться от состояний ожидания; эта методика отразилась в названии журнала, посвященного высокопроизводительным приложениям семейства МП 68000: «DTACK' заземлен».

Все это выглядит несколько запутанно, но в действительности сопряжение с МП 68008 выполняется очень просто. На рис. 11.5 изображен простейший порт ввода-вывода.




Рис. 11.5. Параллельный порт ввода-вывода, а — базовая схема; б — схема с реально существующими вентилями; в — реализация на основе ПЛМ.


Адресные сигналы декодируются и после поступления сигналов DS' и R/W' образуют сигналы, используемые для стробирования D-триггеров выходного регистра (для записи) и разрешения тристабильных выводов входного регистра (для чтения). Сигнал DTACK' устанавливается сразу после расшифровки адреса (если адресуется данный порт), поскольку для столь быстрых устройств, какими являются 8-разрядные регистры, состояния ожидания не требуются; мы использовали обычный прием преобразования драйвера с тремя состояниями в драйвер с открытым коллектором. Заметьте, что для стробирования D-триггеров мы использовали срез сигнала DS'; это сделано из-за того, что фронт сигнала DS' может отстоять от момента установки достоверных данных всего лишь на 35 нс (см. рис. 11.4), что опасно близко к времени упреждения многих 8-разрядных регистров (например, семейства LS и НСТ имеют минимальное время упреждения 20 нc). Так, если на шине данных используются шинные буферы (например, 8-разрядные двунаправленные буферы `245), то дополнительная задержка данных относительно сигнала DS' может привести к тому, что триггеры схемы `574 не успеют установиться. Используя срез сигнала, мы выигрываем дополнительные 140 мкc для увеличения времени упреждения. (При желании можно было использовать прозрачные фиксаторы, например `573, которые фиксируют данные по срезу сигналы фиксации; для таких фиксаторов характерное минимальное значение времени упреждения, как и времени удержания, составляет около 15 нc.)

Варианты схем, приведенные на рис. 11.5, учитывают практические детали. Оказывается, в большинстве логических семейств отсутствуют 3-входовые вентили ИЛИ! Одним из возможных решений является использование 2-входовых вентилей, как показано на рис. 11.5. Более современный способ - поместить всю вентильную логику в комбинационную ПЛМ; помимо уменьшения числа микросхем, это дает вам возможность, используя высокую плотность вентилей в ПЛМ, генерировать с помощью одной микросхемы стробирующие и разрешающие сигналы для дополнительных периферийных портов.

Одна незначительная деталь приведенного примера предвосхитила материал следующего раздела. В процессе обработки прерывания (см. ниже) МП 68008 выполняет цикл подтверждения прерывания, выглядящий, как цикл чтения самого верха памяти (линии А4-А19 установлены в 1). Если в этой области адресного пространства вы располагаете память или какие-то регистры, их надо заблокировать на время цикла прерывания, идентифицируемого по состоянию битов FC0-2 «функционального кода». Все это поясняется в следующем разделе.

Прерывания. В МП 68008 реализуются и автовекторизуемые, и полностью векторизуемые (с подтверждением) прерывания (если вы забыли, что это такое, см. разд. 10.11), для чего используется вторая группа сигналов шины из табл. 11.4. В обоих случаях вы запрашиваете прерывание, устанавливая на двух линиях приоритетного запроса (IPL') некоторую комбинацию низких уровней. Две линии определяют три уровня прерываний (четвертое состояние - на обеих линиях высокий потенциал - соответствует отсутствию прерывания). Эти линии схожи с линиями IRQ магистрали IBM PC, но поскольку они чувствительны к уровню, к каждому уровню прерываний можно подключить несколько прерывающих устройств, (Полезно заметить, что МП 68000, а также некоторые варианты МП 68008 имеют 3 линии IPL', что позволяет определить 7 уровней прерываний.)

ЦП, обнаружив запрос прерывания (по крайней мере одна линия в низком состоянии), выполняет цикл подтверждения (рис. 11.6), в течение которого идентифицируется источник прерываний.



Рис. 11.6. Цикл подтверждения прерывания.


ЦП устанавливает на линиях А1-А3 значение уровня прерывания, а на линиях А4-А19 высокий уровень; все линии функционального кода FC0-2 устанавливаются в высокое состояние. Затем ЦП выполняет цикл чтения (устанавливая сигнал R/W' в высокое состояние). Теперь ваши внешние цепи определяют вид цикла подтверждения: автовекторизуемое (переход в соответствии с уровнем IPL') или с подтверждением (переход в соответствии с вектором, установленным прерывающим устройством на линиях D0-D7). Более просто реализуется автовекторизуемое прерывание (рис. 11.7).



Рис. 11.7. Автовекторизуемое прерывание.


Внешняя цепь обнаруживает цикл подтверждения по сигналам FC0-2 и одновременно с AS' устанавливает входной сигнал VPA'. После этого ЦП осуществляет переход на программу обслуживания, соответствующую уровню IPL прерывания. Для перехода используются векторы (т. е. 32-разрядные адреса программ обслуживания), расположенные по абсолютным адресам $68, $74 или $7C. Если число прерывающих устройств не превышает трех, автовекторизация весьма удобна. Собственно говоря, устройств может быть и больше, но вам придется опрашивать регистры состояния всех «подозрительных» устройств (т. е. устройств, подключенных к обслуживаемому уровню прерываний), чтобы найти виновника. И лишь в случае, когда у вам много потенциальных источников прерываний (маловероятная ситуация в небольшом устройстве на базе МП 68008), и к тому же требуется обеспечить минимальные временные задержки, целесообразно обратиться к схеме прерываний с подтверждением.

Полностью векторизируемые прерывания реализуются следующим образом. Прежде всего оставьте сигнал VPA' на входе ЦП в сброшенном состоянии (высокий уровень). Организуйте схему таким образом, чтобы каждое устройство, работающее в режиме прерываний, выставляло бы свой вектор на линии данных в ответ на цикл чтения ЦП, выполняемый при установленных в высокое состояние сигналах FC0-2 и при уровне IPL (считываемом с линией А1-3), совпадающем с уровнем запроса устройства. При этом схема должна обеспечить выдачу вектора только одним прерывающим устройством, даже если несколько устройств одновременно выставили запросы на прерывание. Этого можно добиться, используя сигнал приоритета прерывания INPT, проходящий последовательно через все устройства, образующие, таким образом, приоритетную цепочку, как это было описано в разд. 10.11; тем самым гарантируется, что подтверждение прерывания выполняется только устройством (соответствующего уровня IPL), которое электрически расположено ближе других к ЦП, даже если запросы на прерывание поступают от нескольких устройств одного уровня IPL.

Другой, более элегантный метод показан на рис. 11.8.



Рис. 11.8. Полновекторизованное прерывание.


Здесь нет необходимости использовать неуклюжую цепочечную структуру, которая заменяется линиями запроса от каждого устройства. Состояния этих линий фиксируются в начале каждого цикла магистрали (фронтом сигнала AS) и поступают в дешифратор приоритета (который генерирует двоичный адрес возбужденного входа с максимальным номером, см. разд. 8.14). Кроме этого, дешифратор генерирует выходной сигнал (GS'), если возбуждается любой из входов; этот сигнал используется для инициации прерывания ЦП. Для простоты мы поместили прерывания от всех устройств на один уровень IPL. ЦП отзывается на прерывание, сохраняя в стеке адрес возврата, после чего инициирует цикл подтверждения (рис. 11.6). В течение цикла подтверждения наша схема устанавливает вектор (образованный в схеме приоритетного отбора), а также сигнал DTACK'. После этого ЦП выполняет векторный переход на соответствующий обработчик.

Рассмотренная схема проста в реализации, и для семейства МП 68000 она работает быстрее, чем схема автовекторизации. Далее, относительно просто достигается увеличение числа прерывающих устройств степенями 8 при использовании дополнительных микросхем `574 и `148. От каждого периферийного устройства требуется выделенная линия (не одна линия шины); хотя при этом нарушается симметрия шины данных, такой способ предпочтительнее приоритетной цепочки, которая совершенно перестает работать, если забыть надеть перемычки на неиспользуемые разъемы. Фактически в новых компьютерных магистралях (например, магистраль NuBus машины Macintosh II) все чаще используются линии прерываний, разведенные по разъемам.

Отметим любопытную (и немаловажную) деталь в приведенной схеме. Вам может показаться странным, что индивидуальные запросы прерываний, генерируемые в устройствах с помощью фиксируемых бит (см., например, рис. 10.12), повторно фиксируются в схеме — 574. Причина этого носит тонкий характер. Прерывающие устройства, как правило, являются асинхронными по отношению к тактовым сигналам ЦП, и могут генерировать прерывания в любое время. Если второе периферийное устройство пошлет запрос прерывания в тот момент, когда ЦП считывает вектор первого прерывающего устройства, а фиксаторы в схеме обработки прерываний отсутствуют, установленный на шине вектор изменится «на полдороги» (в течение цикла подтверждения прерывания и получения вектора), что приведет к непредсказуемым результатам. Вы можете возразить, что такая ситуация маловероятна, и будете правы; однако она может возникнуть и вы даже можете оценить вероятность ее появления. Откладывая момент принятия решения о «намерении прервать» на начало каждого цикла шины, мы устраняем отмеченную проблему (вообще говоря, из-за явления «метастабильности» незначительная вероятность ошибки остается; если вам не хватает поводов для беспокойства, см. разд. 8.17).

Упражнение 11.4. Пусть мы рискнули отказаться от фиксирующего регистра `574 в установке, содержащей два асинхронных устройства, посылающих сигналы прерываний со скоростью 1000 прерываний в секунду каждое. Предположим, что цикл получения вектора имеет критическое временное окно в 1 нc, в течение которого смена установленного вектора приведет к чтению неправильного вектора (т. е. ЦП прочитает номер вектора, отличный от обоих установленных векторов). Оцените, сколь часто ЦП, осуществляя векторный переход, будет попадать пальцем в небо (с аварией системы).


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

В МП 68000 предусмотрена возможность установки 192 различающихся векторов прерываний с номерами от 40Н до FFH; соответствующие адреса переходов (т. е. адреса соответствующих сервисных программ) хранятся в ячейках памяти 100H-3FFH.

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

Чтобы сделаться ведущим шины, любое устройство может выдать «Запрос шины», установив на линии BR' (через проводное ИЛИ) низкий уровень. ЦП очень серьезно относится к этой процедуре, во мгновение ока (?) устанавливая на линии «шина предоставлена» BG' низкий уровень. ЦП также прекращает контролировать состояние всех линий шины (кроме BG'), включая адрес, стробы и другие управляющие линии, помеченные индексом 2) в табл. 11.4. Теперь внешнее устройство контролирует шину, и это состояние длится до снятия сигнала BR', после чего ЦП возвращает себе роль ведущего. Внешний ведущий обязан управлять шиной по тем же правилам, которым следует ЦП, чтобы не сбивалась работа остальных устройств, подключенных к шине. Собственно, они даже и не узнают, что произошло что-то необычное, если только не посмотрят на состояние линий BR'/BG'.

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

Остальные сигналы магистрали. Ниже дано описание остальных сигналов, перечисленных в табл. 11.4.

CLK. Это вход для сигналов тактового генератора (см. рис. 11.3 и 11.4). Мы рекомендуем использовать какой-либо из недорогих кварцевых генераторов в DIP-корпусе, выпускаемых компаниями CTS, Dale, Motorola, Statec или Vectron. МП 68008 лучше работает с тактовыми сигналами симметричной формы, которые легко получить с помощью триггера, подключенного к выходу генератора. Максимальная допустимая частота обычно указывается в обозначении микропроцессора (и памяти тоже): последние варианты МП 68008 работают до частоты 10 МГц (МС 68008Р10). Двухбайтовые команды обычно выполняются за четыре периода тактовых импульсов (как на рис. 11.4), однако команды с более сложными способами адресации должны несколько раз обращаться к памяти, что может потребовать до 70 тактов или около того.

BERR. Вы устанавливаете этот входной сигнал, чтобы сообщить ЦП, что произошел сбой в работе шины. Например, если никто не установит сигнал DTACK' в ответ на строб данных, ЦП будет ждать его вечно; это может произойти, если программа обращается к несуществующей памяти. Установка сигнала BERR' вызывает переход (напоминающий переход при прерывании и называемый «исключением») на программу обработчика. Ниже на рис. 11.10 будет показана простая схемная реализация сигнала BERR.

RESET' и HALT'. Эти сигнальные линии необычны в этом отношении, что служат и как входы (для сброса или останова процессора), и как выходы (с помощью которых ЦП может инициализировать систему). Взгляните снова на рис. 11.10, где показан простой способ использования этих линий.

Е (разрешение). Может показаться, что этот выходной сигнал имеет большое значение, однако это не так. Сигнал Е (в комбинации с VPA') облегчает подключение к МП 68008 старых периферийных микросхем серии 6800 (разработанных для синхронного относительно медленного 8-разрядного микропроцессора 6800). В других случаях сигнал Е можно игнорировать.

Пример законченной разработки: аналоговый усреднитель сигналов

В последующих разделах мы займемся проектированием законченного прибора на базе МП 68008 — аналогового «усреднителя сигналов» (вопросы усреднения будут обсуждаться в разд. 15.13). Прибор будет включать в себя ЦП с соответствующими электронными схемами для получения сигналов DTACK, BERR и других, память (ОЗУ и ПЗУ) и много разных интерфейсов: микропереключатели в DIP-корпусе, матрица электролюминисцентных диодов (ЭЛД), последовательный и параллельный порты, календарь-часы/таймер, аналого-цифровые и цифро-аналоговые преобразователи (АЦП и ЦАП), а также твердотельное реле для переключения цепей переменного тока. Как видите, мы задумали включить в наш прибор всего понемногу, чтобы получить микропроцессорный модуль общего назначения, перенастройка которого осуществляется сменой управляющей программы.

Мы пройдем с вами процедуру аппаратного проектирования, остановившись на критериях выбора элементов и разработки схемы. Вы научитесь выбирать и подключать память и периферийные устройства и разумным образом распределять адресное пространство. Закончив аппаратное проектирование, мы займемся программным обеспечением и напишем несколько программных «модулей» (блоков) для управления выбранными процессами. Мы, однако, не будем утомлять вас детальным рассмотрением всех программных строк, поскольку программные комплексы, подобные нашему, содержат много не очень интересных (хотя и необходимых) программ, вроде программы ввода с клавиатуры установочных команд. Наконец, мы проанализируем эффективность получившегося прибора — гибкость, обусловленную применением микропроцессора, и накладываемые им ограничения скоростных характеристик.


11.05. Разработка схемы

Структурная схема. На рис. 11.9 изображена структурная, на рис. 11.10 — электрическая схемы микропроцессорного прибора.



Рис. 11.9. Структурная схема прибора общего назначения на базе микропроцессора.







Рис. 11.10. Электрическая схема прибора общего назначения на базе микропроцессора.


Рассмотрим сначала структурную схему, на которой показаны устройства, подключенные к магистрали. Если анализировать эту схему с позиции микроЭВМ, то сразу бросается в глаза «перекошенность» памяти: объем ПЗУ в 4 раза превышает объем ОЗУ. Однако в микропроцессорном приборе конкретного назначения все программы и таблицы размещаются не в ОЗУ, а в ПЗУ, а ОЗУ используется только для буферизации данных и хранения временных результатов вычислений. К тому же производители программируемых ПЗУ с ультрафиолетовым стиранием (РПЗУ) по мере повышения качества технологии прекращают выпуск ПЗУ малого объема; сейчас трудно найти РПЗУ с емкостью, меньшей 8Кx8 бит. Так или иначе, на схеме показана память минимально возможного объема (по одной микросхеме ПЗУ и ОЗУ); при необходимости память можно расширить.

Следующее устройство на магистрали-календарь-часы. Календарь-часы??!! Что это, просто излишняя роскошь для тех, кому лень посмотреть на собственные часы при включении прибора? Напротив, календарь-часы — существенный элемент любого прибора, выполняющего периодические измерения, или фиксирующего моменты поступления данных, или управляющего любыми другими процессами, протекающими во времени. Календарь-часы можно запрограммировать, чтобы они вызывали периодические прерывания с частотой от 100 прерываний в секунду до одного за день; можно использовать их и как будильник (конечно, без звонка; вместо звонка возникает прерывание), устанавливаемый на любой момент хотя и в следующем веке. В нашем усреднителе сигналов мы воспользуемся таймерами параллельного порта 8536, но и календарь иметь под рукой полезно.

Микросхема 8530 последовательного порта представляет собой высокопроизводительный двухканальный УСАПП (универсальный синхронно-асинхронный приемно-передатчик, см. разд. 10.19), в комплекте с парой задающих генераторов. Это очень приличная микросхема, не только знакомая со всеми хитростями обычного асинхронного интерфейса RS-232, но и обеспечивающая полный синхронный протокол "SDLC/HDLC", включающий контроль ошибок, восстановление после тайм-аута, синхронизацию кадров и т. д.; возможно слишком жирно для нашей задачи, но, в конце концов, какого черта! Микросхема 8536 является одновременно таймером и параллельным портом; ее сделали отличные ребята из фирмы Zilog, и она тоже не слабак: возможностей у нее тьма-тьмущая. Например, каждую из ее 20 линий можно запрограммировать на вход или на выход, как на прямой, так и на инверсный; каждый выход может быть с открытым стоком или с двумя состояниями, в то время как каждый вход может работать в нормальном режиме или с «запоминанием 1» (кратковременный положительный импульс устанавливает входной регистр).

Описание режимов, кажется, не имеет конца (оно занимает 26 страниц) и поражает неисчислимыми возможностями. Посмотрим теперь на верхний ряд устройств. Матрица ЭЛД представляет собой просто линейку из 8 диодов, предназначенных для индикации работы прибора; эти диоды могут оказать также существенную помощь при отладке, когда остальные средства оказываются бессильны. К одному из выходов, питающих ЭЛД, мы подключили твердотельное реле, с помощью которого можно управлять каким-то сильноточным устройством. Например, для стабилизации температуры в ванне можно подавать сигнал, характеризующий температуру, на вход АЦП, а с помощью реле переменного тока включать нагреватель. Мы еще предоставим вам возможность проявить свою смекалку в этой области при выполнении упражнений. Микропереключатель в DIP-корпусе является обычным 8-контактным переключателем, полезным для ввода в прибор настроечной информации; с его помощью можно, например, указать, какой последовательный порт (и на какой частоте) используется ЦП после включения питания. Наконец, мы подключили к магистрали по паре аналого-цифровых и цифро-аналоговых преобразователей, чтобы прибор мог функционировать в мире аналоговых сигналов.

Детали схемы. Теперь начнется самое интересное. Рассмотрим электрическую схему прибора (рис. 11.10).

ЦП CLK. для работы МП 68008 требуются тактовые сигналы (CLK) прямоугольной формы (перепады логических уровней) в диапазоне от 2 до 10 МГц. Верхний предел определяется скоростью срабатывания внутренних вентилей и регистров; в настоящее время можно встретить экземпляры МП 68008 с максимальной тактовой частотой 8, 10 или 12,5 МГц. Нижний предел определяется тем обстоятельством, что в ЦП используются динамические регистры, требующие периодической регенерации, поскольку данные в них сохраняются не в триггерах, а в заряженных конденсаторах. Скорость вычислений пропорциональна тактовой частоте, поэтому естественно желание всемерно повысить тактовую частоту. Это, однако, сопряжено с некоторыми недостатками: а) более жесткие требования к временной синхронизации памяти и периферийных устройств, б) большая стоимость и в) большая рассеиваемая мощность, особенно для маломощных КМОП-процессоров и периферийных устройств. Обычно потребляемая мощность не имеет большого значения, за исключением случая батарейного питания; см. гл. 14. Мы остановились на тактовой частоте 8 МГц, так как это дает возможность использовать ту же тактовую серию (деленную на два) для микросхемы последовательного порта; в противном случае для работы УСАПП потребовался бы отдельный генератор, или пришлось бы ограничиться низкими скоростями передачи.

RESET, прерывания, стробирующие сигналы. Для того чтобы выполнить начальную загрузку МП 68008, следует установить сигналы RESET' и HALT' (обе линии двунаправленные; надо использовать схему с открытым коллектором с принудительной установкой верхнего уровня). Мы применили простую схему автозагрузки, состоящую из RC-цепи, триггера Шмитта и кнопки. Обратите внимание на диод, служащий для быстрого разряда в случае коротких выбросов напряжения питания; более совершенная схема сброса при включении питания должна использовать цепь «микропроцессорного контроля» вроде МАХ692, дающую хорошо сформированный сигнал сброса. Линия, обозначенная нами MR', переводится в высокое состояние и при начальной загрузке, и (на время 128 тактов) при выполнении ЦП команды RESET; линия INIT' переводится в высокое состояние только при загрузке.

В этой простой системы мы остановились на автовекторизуемых прерываниях; логическое И сигналов FC0 и FC1 указывает на выполнение цикла подтверждения прерывания, в течение которого мы обязаны установить сигнал VPA' одновременно со стробом адреса AS'. Мы также используем наш сигнал INTA' для запрещения нормального декодирования ввода-вывода (см. ниже). В МП 68008 предусмотрены три уровня автовекторизуемых прерываний. К нижнему уровню (IPL1) мы подключили через проводное ИЛИ «медленные» прерывания от последовательного порта и календаря; прерывания от чувствительного к задержкам таймера (называемого "СIO"-микросхемой) реализуются на следующем уровне (IPL0/2). Самый верхний уровень «немаскируемых» прерываний (установлены обе линии IPL) зарезервирован для прерывания от кнопки (немаскируемое прерывание NMI), так что вы всегда можете вывести плату из состояния зависания в процессе отладки программы.

Для образования пары стробирующих сигналов (RD', WR') мы использовали несколько вентилей. Эти сигналы будут полезны для некоторых "Intel-совместимых" периферийных устройств, для которых требуются отдельные строб-сигналы.

DTACK', BERR' и медленные периферийные устройства. Наконец, мы использовали сдвиговый регистр с параллельным выводом (`164) в качестве машины состояния для генерации последовательности нескольких требуемых сигналов. Сдвиговый регистр удерживается в исходном состоянии до установки ЦП сигнала AS', который указывает на начало цикла шины (см. рис. 11.4). После этого единицы начинают продвигаться вниз по регистру, на один шаг на каждый нарастающий фронт тактовой серии. Выход Q0 позволяет генерировать задержанный сигнал RD' (DELRD'), который используется обоими неповоротливыми устройствами (SCC и СIO), как это будет объяснено позже. Некоторые устройства ввода-вывода работают медленно и требуют состояний ожидания; выход Q2 сдвигового регистра позволяет сформировать задержанный сигнал DTACK и реализовать два состояния ожидания для всех портов ввода-вывода (при нашей раскладке адресов весь ввода-вывод отображается на память выше адреса $80000, т. е. при установленном сигнале А19), и отсутствие состояний ожидания для памяти (сигнал А19 не установлен). Если, однако, 1 дойдет до конца сдвигового регистра, возникнут неприятности, поскольку любые циклы магистрали завершаются (со сбросом сигнала AS) задолго до этого. Поэтому последний выход (Q7) использован для установки сигнала BERR, который приводит к векторизованному переходу (через ячейку 08), что предотвращает зависание ЦП. Такой сигнал «тайм-аута» магистрали особенно важен в ЭВМ общего назначения, где в противном случае обращение ЦП к несуществующему периферийному устройству приведет к аварии машины.

Память. Получив сигнал начальной загрузки (установка RESET и HALT), МП 68008 обращается к началу памяти с целью извлечения двух важных адресов: 32-разрядного стартового адреса, хранящегося в байтах памяти $04-$07, и начального значения указателя стека, располагающегося в байтах $00-$03. Прочитав эти адреса, МП инициализирует указатель стека, после чего осуществляет переход по стартовому адресу.

Поскольку эти ячейки в начале памяти считываются ЦП еще до загрузки какой-либо программы, эта область памяти должна быть энергонезависимой, т. е. ее содержимое должно сохраняться при полном отключении питания. Естественно использовать здесь РПЗУ (репрограммируемое постоянное запоминающее устройство, см. разд. 11.12), недорогое ПЗУ с байтовой организацией, стираемое ультрафиолетовым облучением. Эти ПЗУ легко распознать по небольшому стеклянному (собственно, кварцевому) окошку, расположенному «на спине» каждой микросхемы. Стирание РПЗУ требует полчаса, а запись-около минуты. Такие ПЗУ могут иметь емкость до мегабита, и данные сохраняются в них дольше, чем будет жить конструируемый вами прибор. Единственный недостаток размещения ПЗУ в начале памяти заключается в том, что там же располагаются разнообразные векторы (прерываний, ошибок шины и других «исключений»), содержимое которых хотелось бы изменять программно.

Решение проблемы может заключаться в использовании варианта РПЗУ, называемого ЭРПЗУ (электрически стираемое репрограммируемое постоянное запоминающее устройство). Можно также организовать двухступенчатый процесс: в ПЗУ постоянно хранятся векторы, указывающие на таблицу переходов в обычной памяти (ОЗУ, см. ниже). Есть, однако, более изящный способ. Вы конструируете схему таким образом, что при загрузке в начале памяти оказывается ПЗУ, но позже оно заменяется (под управлением программы) на обычную память с возможностью записи в нее, т. е. ОЗУ. Посмотрим снова на рис. 11.10. Мы использовали РПЗУ 27256, микросхему с организацией 32Кx8, имеющую, по нынешним стандартам, умеренную емкость. У нее есть 15 адресных входов, 8 трехстабильных выходов данных, вход выбора микросхемы (CS') и вход разрешения выхода (OE'). Каждый адресуемый байт (записанный в микросхему заранее в помощью программатора и более неизменяемый) поступает на линии данных только если установлены оба входа разрешения. Обычно вход CS' устанавливается как можно раньше сигналом с дешифратора адреса, а вход ОЕ стробируется сигналом чтения. В нашем случае память (ПЗУ или ОЗУ) активизируется только если сброшен сигнал А19; другими словами, память располагается в младшей половине адресного пространства. Кроме того, чтение ПЗУ разрешается только если а) установлен сигнал А18 или б) установлен бит BOOT (устанавливается при включении, сбрасывается программой). ОЗУ также располагается в нижней половине адресного пространства, но активизируется только если чтение ПЗУ запрещено. Таким образом, когда выполняется начальная загрузка, триггер BOOT установлен, и в адресном пространстве $0000-$7FFF временно располагается ПЗУ; ОЗУ как бы не существует. Обращение к ПЗУ осуществляется также и в области его «постоянного проживания», по адресам $40000-$47FFF.

Первые 8 байт ПЗУ остроумно запрограммированы так, что осуществляется переход на продолжение программы начальной загрузки, но уже в старшем адресном пространстве, где (среди прочего) очищается порт ЭЛД (адрес $86000). Запись в порт ЭЛД имеет побочный эффект сброса триггера BOOT, в результате чего временный образ ПЗУ в начале адресного пространства замещается образом ОЗУ. Для пояснения сказанного, ниже приведено содержимое первых 24 байт ПЗУ, реализующих описанную процедуру:



Заметьте, что две последние команды выполняются по адресам $40008 и $40010 соответственно благодаря стартовому адресу, извлеченному из ячейки $0004. Подключение микросхемы ОЗУ 8Кx8 осуществляется очень просто. ОЗУ воспринимает младшие 13 бит адреса (8К) и активизируется, когда сигнал А19 снят и ПЗУ отключено. Стробирующие сигналы RD' и WR' подключены ко входам разрешения выхода (OE') и разрешения записи (WE') соответственно. Будем пока считать, что схема декодирования, обозначенная на рис. 11.10 пунктиром, отсутствует. Тогда ОЗУ располагается в самом низу адресного пространства, за исключением момента начальной загрузки, когда оно замещается временным образом ПЗУ.

Однако наша схема декодирования адресов работает странным образом. Взглянем внимательно на ОЗУ. Мы игнорировали биты адреса А13-П17! В результате байт памяти с адресом, например $0000, имеет много двойников — его можно найти по адресам $2000, $4000 и вообще по любому адресу, имеющему нули в разрядах А0-А12 и А18-А19. Байт имеет множественное представление в адресном пространстве. Чтобы устранить эту неоднозначность, можно было более узко квалифицировать сигнал CS', разрешающий работу ПЗУ, обусловив нулевое состояние бит А13-А17, но в этом нет особого смысла. Хотя наличие «призраков» памяти по всему адресному пространству может показаться свидетельством небрежности, но вреда в этом нет, и к тому же экономятся вентили. То же происходит с ПЗУ (а также и с вводом-выводом). На рис. 11.11 показана карта памяти[1] нашего прибора, где описанные повторения обозначены явным образом.



Рис. 11.11. Карта памяти.


Разумеется, если вы захотите установить в системе дополнительную память, вам придется привлечь дополнительные адресные линии. На рис. 11.10 показано, как это можно сделать — просто подключите дешифратор 1 из 4 (`139) к двум следующим адресным линиям, активизируя его нашим сигналом разрешения ПЗУ, и без всяких хлопот вы можете добавить три блока ОЗУ. Дальнейшее расширение памяти осуществляется аналогично.

Упражнение 11.5. С помощью дешифратора 1 из 8 (`138) подключите к системе 8 блоков памяти 8Кx8.

Упражнение 11.6. Модифицируйте схему с целью подключения ОЗУ емкостью 32Кx8.

Упражнение 11.7. Теперь измените схему так, чтобы в ней работали два блока ПЗУ емкостью 64Кx8 (27512).

Упражнение 11.8. Для каждого из предыдущих упражнений нарисуйте карту памяти.


Синхронизация памяти. Перед тем, как приступать к рассмотрению ввода-вывода, полезно обратиться к вопросу синхронизации памяти. Ранее отмечалось, что наша схема генерации сигнала DTACK не создавала состояний ожидания при обращении к памяти. Это очень хорошо, но лишь в том случае, когда память обладает достаточным быстродействием, чтобы удовлетворить временным ограничением циклов чтения и записи на рис. 11.4. Но так ли это в действительности? Чтобы получить ответ на этот вопрос, надо начать с временной диаграммы МП 68008, затем вычесть наихудшие значения задержек «склеивающих» схем и посмотреть, сколько времени остается на реакцию памяти. Давайте проделаем это.

На рис. 11.12 изображен цикл чтения, для которого синхронизация обычно имеет большее значение.



Рис. 11.12. Временные соотношения цикла чтения из памяти (статическое ОЗУ, 150 нc).


Мы начали с временных характеристик ЦП для микросхемы в тактовой частотой 8 МГц, поскольку для нашей схемы мы выбрали именно эту частоту. Наиболее важным является временной интервал между правильным адресом ЦП и правильными данными памяти, так как этот интервал определяет максимально допустимое значение «времени доступа к адресу» со стороны памяти. В этом случае ЦП устанавливает правильный адрес по меньшей мере за 290 нc перед установкой правильных данных; соответствующее значение для DSсоставляет 237 нc. Наша схема образования сигнала CS' для ОЗУ включает два каскада вентилей. При использовании микросхем 74НСТ02 и 74НСТ00 максимальные задержки составят 28 нc и 25 нc, что дает примерное значение 53 нc. В этом случае для времени доступа со стороны памяти (относительно фронта CS') остается 290 нc — 53 нc = 237 нc. С помощью аналогичных рассуждений (предположив, что сигнал RD' генерируется одной микросхемой 74НСТ32) получаем, что память должна выставить данные не позже 203 нc после установки ОЕ'. На рис. 11.12 также показаны наихудшие временные соотношения для самой медленной (150 нc) статической памяти (ОЗУ) с организацией 8Кx8: время доступа от фронта адреса 150 нc, от фронта CS' 150 нc и от фронта ОЕ' 60 нc. Поскольку для нашей схемы допустимы значения 290 нc, 237 нc и 203 нc, соответственно, мы имеем для наиболее критичной ситуации (время доступа от CS') запас почти 100 нc.

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

К сожалению, того же нельзя сказать про ПЗУ, которые обычно оказываются медленнее ОЗУ. Например, выпускаемые РПЗУ 32Кx8 характеризуются стандартными значениями времени (от адреса до данных или от CS' до данных) 150 нc, 200 нс и 250 нc. Приведенные выше выкладки сохраняют свое значение, но надо увеличить задержку CS' на 6 нс, так как изменяется логика образования этого сигнала. В результате только два более быстрых варианта РПЗУ удовлетворяют условию максимальной задержки 231 не от CS' до данных и могут использоваться в нашей схеме при отсутствии состояний ожидания. Вместо того, чтобы отбирать быстрые ПЗУ, можно было поставить более быструю «склеивающую» логику, например, 74АСТ или 74F; это дало бы возможность использовать ПЗУ с временем 250 нс. В действительности эти ПЗУ скорее всего будут работать в нашей схеме при любой логике, поскольку вычисления, выполненные на основе предельных временных характеристик, обычно дают результаты с большим запасом. Предельные значения достигаются при наихудшем сочетании температуры, напряжения питания, емкостной нагрузки и качества конкретной микросхемы; наши наихудшие условия предполагали значение напряжения питания 4,5 В, температурный диапазон от —40 °C до +85 °C, и неестественно высокую емкостную нагрузку 50 пФ. Если, однако, вы хотите быть уверенным в надежной работе аппаратуры, особенно в случае выпуска крупных серий приборов, следует вести расчеты по предельным значениям.

Периферийные цепи. В нашем приборе предусмотрено 9 периферийных устройств, поэтому в качестве «адресного коммутатора» мы использовали дешифратор «1 из 8» (`138); один из портов ввода-вывода разделяется ЭЛД-индикатором и набором микропереключателей. Сигналом разрешения дешифратора служит установка А19, что переводит нас в пространство ввода-вывода (верхняя половина адресного пространства); работа дешифратора запрещается на время цикла подтверждения прерывания, как это было объяснено ранее. К дешифратору подводятся линии А12-А14, в результате чего периферийные устройства имеют адреса $80000, $81000, $82000 и т. д.; оставшиеся старшие линии адреса мы игнорировали, как и при подключении памяти, в результате чего адреса периферийных устройств многократно появляются в адресном пространстве. В сущности, каждый адрес, превышающий 80000, до самого последнего адреса $FFFFF (а это полмиллиона адресов), отвечает какому-то периферийному устройству!

Упражнение 11.9. Расшифруйте это последнее утверждение, определив, сколько раз в точности каждое периферийное устройство появляется в адресном пространстве. После этого напишите общее выражение для адресов ЭЛД-индикатора, используя крестик (х) для тех бит, значение которых не влияет на результат дешифрации.

Упражнение 11.10. Единственным реальным недостатком нашей схемы неполной дешифрации адресов является использование понапрасну полмегабайта адресного пространства для обращения к десятку пустяковых периферийных устройств, в то время как большую часть этого пространства можно было бы отвести под память. Покажите, как следует дешифровать адреса ввода-вывода, если большую часть адресного пространства 1 Мбайт предполагается отвести под память. Наши 8 портов должны отображаться на адреса $FF000, SFF100… SFF700 и не отзываться при обращении по меньшим адресам. Теперь можно установить ОЗУ объемом 1 Мбайт, однако при обращении по адресам портов ввода-вывода будут активизироваться и ввод-вывод, и память. Найдите способ разрешить эту проблему.


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

ЭЛД и микропереключатели. Это простейшие из портов. При выводе матрица ЭЛД управляется 8-разрядным регистром из D-триггеров, для которого тактовым является сигнал декодирования адреса LEDSW', объединенный с WR'. Обратите внимание на то, что стробирование выполняется срезом сигнала; это уменьшает проблемы синхронизации, связанные со временем упреждения. Мы использовали восьмиразрядный регистр `273 с бистабильными выходами (вместо более распространенной тристабильной микросхемы `574) ради входа RESET', который мы устанавливаем на время сброса процессора или начальной загрузки; в результате при запуске световая индикация отключается. Логические микросхемы семейства НСТ имеют хорошие характеристики по скорости насыщения и выходному току (8 мА при выходном напряжении 4,5 В), что дает возможность использовать заземленную матрицу ЭЛД (с микросхемами семейства LS начальный уровень ЭЛД должен быть +5 В); это очень удобно, так как диоды индицируют единицы, а не нули. Выбранная нами матрица ЭЛД имеет встроенные резисторы, органичивающие ток до 6 мА. Заметьте, что один из битов порта ЭЛД управляет твердотельным реле переменного тока. Эти реле легко запускаются логическими уровнями (гарантированное напряжение срабатывания 3 В, сопротивление нагрузки 1,5 кОм), и, кроме того, они переключаются при нулевом напряжении (см. разд. 9.08 и 9.10). Заметьте также, что строб-сигнал WRITE порта ЭЛД выполняет дополнительную функцию, сбрасывая триггер BOOT при своей первой установке; после сброса триггера порт ЭЛД можно использовать по своему усмотрению.

Организация порта микропереключателей также не сложна. На выходе использован трехстабильный 8-разрядный инвертирующий буфер `240, управляемый уровнями от микропереключателей с принудительной установкой верхнего уровня. Разрешающим сигналом буфера служит тот же сигнал декодирования адреса LEDSW', на этот раз объединенный с RD'. Другими словами, если вы записываете по адресу $86000, данные индицируются на ЭЛД; если вы читаете, то считывается байт, характеризующий установку микропереключателей. Поскольку мы использовали инвертирующий буфер, замкнутый переключатель считывается как 1, а не 0.

АЦП и ЦАПы. Эти порты устроены так же просто. Обе микросхемы конвертеров являются «комплексными», со встроенными таймерами и опорными источниками. АЦП AD670 удовлетворяет протоколу сигналов R/W' и DS', поскольку снабжен входами направления и разрешения кристалла. Запись (разрешение микросхемы осуществляется низким уровнем R/W') начинает преобразование, в то время как чтение позволяет получить результирующий байт. В цикле записи АЦП фиксирует два бита данных: BPO/UPO' управляет диапазоном входных сигналов (высокий уровень — биполярный сигнал, низкий — однополярный), a FMT определяет формат цифрового выхода (высокий — дополнение до двух, низкий — беззнаковое двоичное представление). Выходной сигнал DONE говорит об окончании преобразования; мы отказались от использования этого сигнала, потому что, как нам кажется, проще выполнить несколько команд NOP в течение времени преобразования (длительность которого не превышает 10 мкс), чем организовывать опрос флага.

Микросхема AD670, как большинство периферийных микросхем, не отличается быстротой реакции в своей интерфейсной части. Ей требуется строб СЕ' по меньшей мере длительностью 300 нc в цикле записи, в цикле же чтения время доступа с момента установки СЕ' составляет 250 нc. Обратившись к рис. 11.4, вы увидите, что эти величины не удовлетворяют требованиям временной синхронизации МП 68008 в случае нормального (без состояний ожидания) цикла магистрали. Однако при двух состояниях ожидания (которые наша схема генерирует для всех адресов от $80000 и выше) все согласуется: сигнал DS' в цикле записи получает длительность 390 нc, а в цикле чтения он должен поддерживаться в установленном состоянии в течение 487 нc.

ЦАП AD558 также является комплексным конвертером; ему требуется единственное напряжение питания +5В, а на выходе образуется сигнал напряжения. В микросхему можно только записывать, поэтому мы использовали строб WR' для разрешения микросхемы, а сигнал декодирования адреса — для выбора микросхемы. Здесь также временные соотношения не будут удовлетворяться при отсутствии состояния ожидания: AD558 требует наличия данных за 200 нc до среза сигнала СЕ', а минимальная длительность СЕ' составляет 150 нc. Без состояний ожидания вы получите только 180 нc и 140 нc, соответственно; два состояния ожидания увеличат эти интервалы до удовлетворительных значений 430 нc и 390 нc.

Последовательный и параллельный порты. Типичными представителями перифейрийных БИС являются микросхемы Zilog 8530 SCC (последовательный порт) и 8536 СIO (параллельный порт и таймер). Такого рода микросхемы отличаются необычной гибкостью и умопомрачительным количеством рабочих режимов, программируемых путем засылки управляющих байтов во внутренние регистры. Некоторые из этих микросхем по сложности приближаются к микропроцессорам (см. рис. 11.13), и чтобы научиться программировать их работу, вам придется затратить немало времени.



Рис. 11.13. Структурная схема последовательного порта Zilog 8530.

Примечание: BR — запрос шины; FIFO — «пеpвым вошел, первым вышел»; TxD — сигнал передачи; RxD — сигнал приема; NRZ1 — кодирование без возвращения к нулю с инверсией; CRC — контроль циклическим избыточным кодом; DPLL — фазовая автоподстройка частоты; SDLC — синхронное управление линиями передачи данных.


Хотя периферийные БИС обычно разрабатываются под конкретные микропроцессоры, общность их характеристик позволяет использовать микросхемы, предназначенные для поддержки определенного семейства микропроцессоров, с процессорами других фирм. Микросхемы Zilog 85хх претендуют на роль универсальных, «магистрально-независимых» периферийных устройств, хотя при использовании их с МП 68008 возникает некоторая несовместимость в отношении строба RD', которую мы снимем, образовав задержанный строб RD'.

Рассмотрим сначала параллельный порт/таймер 8536. В нем используется пара стробирующих сигналов RD' и WR', а также сигнал разрешения входа СЕ(который, как и обычно, поступает с выхода дешифратора адреса). Кроме того, на соответствующий вход микросхемы подаются тактовые сигналы для синхронизации таймера и управления внутренней логикой. Микросхема 8536 включает цепи полностью векторизуемых прерываний с подтверждением, выставляющие вектор на линии данных в течение цикла подтверждения прерывания. Реализация всех этих излишних для нас возможностей требует использования приоритетной цепочки, связывающей устройства (с помощью входного сигнала IEi и выходного IEO), а также входа INTACK', управляющего установкой (программируемого) вектора. Мы же ограничимся выходным сигналом INT' для организации запроса прерывания. Из состава интерфейсной шины к параллельному порту подключаются линии данных D0-D7, а также адресные линии (А0, А1) для адресации внутренних регистров; использование двух младших адресных линий приводит к отображению внутренних регистров на адресное пространство, начинающееся с базового адреса. В нашем случае внутренние регистры располагаются по адресам $84000-$84003.

Число адресных выводов наводит на мысль, что в микросхеме имеются 4 внутренних регистра, что, однако, весьма далеко от истины: фактически порт содержит 41 регистр для записи и 48 регистров для чтения! (Мы же предупреждали, что программирование этих микросхем — кошмарное занятие!) Для доступа к регистрам вы сначала записываете в «управляющий» регистр по адресу база + 3 ($84003) байт, содержащий адрес требуемого регистра данных, а затем читаете из или записываете в выбранный регистр. В отличие от этого регистры данных параллельного порта допускают непосредственную адресацию, и в них записывают или из них читают прямо по адресам база, база + 1 и база + 2.

На рис. 11.14 показаны временные диаграммы циклов чтения и записи, позволяющие рассмотреть проблемы синхронизации строба RD'.



Рис. 11.14. Синхронизация параллельного порта Zilog 8536.


Спецификации микросхемы 8536 дают минимальное значение интервала между установкой адресных сигналов А0-А1 и фронтом строба RD' (время упреждения) 80 нc. В спецификациях также определяется время отклика, как обычно, довольно большое — бедняге 8536 требуется 255 нc для выдачи данных; длительность же сигнала RD' должна составлять 390 нc (минимум). С большим временем отклика мы уже умеем бороться с помощью состояний ожидания. Однако состояния ожидания не решат проблему с временем упреждения адреса по отношению к RD' (из рис. 11.4 видно, что сигнал DS' может появиться всего лишь через 30 нc после установки правильного адреса). Чтобы все работало правильно, мы должны задержать RD' на один такт ЦП: это легко сделать с помощью того же сдвигового регистра, который генерирует сигнал DTACK'. Мы просто образуем логическое И «быстрого» строба RD' и (инвертированного) выходного сигнала Q0 сдвигового регистра, который не устанавливается до перепада тактового сигнала ЦП между состояниями S3 и S4. В результате образуется задержанный строб RD' (который мы назвали DELRD'), начинающийся на один такт позже (в тот же момент, что и нормальный DS' цикла записи). Описанная процедура предоставляет порту дополнительные 125 нc для упреждения адреса (в сумме 155 нc). Генератор состояний ожидания по-прежнему вводит два состояния ожидания, что делает полную длину цикла достаточной для медленных периферийных устройств.

К счастью, для сигнала WR' не требуется аналогичная схема, потому что МП 68008 предусмотрительно увеличивает время упреждения на один такт для циклов записи (обратите внимание на задержку сигнала DS' в цикле записи на рис. 11.4), а для микросхемы 8536 требуется то же значение времени упреждения (80 нc, см. рис. 11.14).

Интерфейс последовательного порта 8530 выглядит почти так же. Отличие заключается лишь в том, что адресные входы, выбирающие внутренние регистры, называются по-другому. Сигнал А0 подается на вход А/В' (выбирающий канал А или В сдвоенного порта), а сигнал А1 — на вход D/C' (который выбирает регистры данных или управления). Эта микросхема тоже не обижена регистрами: в ней имеются в каждом канале 16 регистров для записи и 9 регистров для чтения; доступ к ним осуществляется так же, как и в микросхеме 8536, в два этапа.

Тактовая частота 8530 может достигать 6 МГц; мы выбрали частоту 4 МГц, которая позволяет установить скорость передачи до 9600 бод. Асинхронные линии данных TxD и RxD работают с уровнями ТТЛ-логики, а не с биполярными сигналами стыка RS-232 (см. разд. 9.14 и 10.19). Большинство драйверов стыка RS-232 (например, классическая микросхема 1488) требуют двух источников питания, что для нашей системы, которая целиком питается от единственного источника +5В, будет как бельмо на глазу. К счастью, сейчас доступны искусные микросхемы, содержащие емкостные преобразователи напряжения. Эта методика была предложена фирмой Maxim в серии микросхем МАХ232; она используется также в микросхемах LT1080 фирмы LTC. Заметьте, что выход запроса прерывания с открытым стоком объединен по схеме проводного ИЛИ с соответствующим выходом микросхемы календаря-часов, так что возбуждение любого выхода приводит к автовекторизуемому прерыванию уровня IPL1. Обработчик прерывания этого уровня должен определить источник прерывания с помощью процедуры опроса, выполняя программное чтение регистра состояния каждого устройства. Соответствующая программа будет описана ниже.

Календарь-часы. Это последняя из использованных в нашем приборе периферийных БИС, и с ней тоже не все просто. Интерфейс этой микросхемы с магистралью практически такой же, как у микросхем Zilog: пара стробов «типа Intel» (RD', WR') и 4 бит адресации внутренних регистров. Здесь могут возникнуть и те же проблемы с синхронизацией сигнала RD'. Мы говорим «могут», потому что спецификация микросхемы недостаточно однозначна: в ней указывается «типичное» время упреждения от сигналов адреса до RD' (100 нс), но не дается минимального значения. Что имели в виду авторы, мы не знаем, но лучше не рисковать. Поскольку задержанный строб DELRD' у нас уже есть, давайте используем его.

Микросхема ICM7170 представляет собой современную БИС календаря-часов с внутренней схемой переключения питания; вы просто привешиваете к ней трехвольтовую литиевую батарейку, как показано на рис. 11.10. Прежние варианты календаря-часов требовали от вас обеспечения заданного порядка сброса управляющих сигналов при выключении, но микросхема 7170 берет на себя заботу и об этом. Конечно, бесполезно обращаться к микросхеме, если питание +5 В выключено; батарейка лишь поддерживает безостановочный ход часов в периоды спячки, так что схема просыпается с ясной головой и острым чувством времени.

Цепи питания. Закончив разработку схемы прибора, уже не хочется обременять себя такими деталями, как питание и заземление. Не поддавайтесь этому искушению. Наша схема использует «5-вольтовую логику», что на практике часто означает 5 В ± 5 % (в нашем примере ЦП и некоторые периферийные микросхемы требуют напряжения питания от +4,75 В до +5,25 В). Далее, в цепях питания не должно быть больших импульсных выбросов, избавиться от которых можно с помощью щедрого использования керамических конденсаторов 0,1 мкФ с некоторой добавкой танталовых электролитических конденсаторов большей емкости. Крайним случаем «большого выброса» является угрожающее перенапряжение, могущее возникнуть из-за отказа последовательных стабилизаторов напряжения в цепи питания +5 В. На этот случай стоит предусмотреть схему автоматического шунтирования источника питания при перенапряжении — либо на основной плате, либо в самом источнике питания. Выбирая источник питания, учтите, что микропроцессорная плата может легко потреблять 1 А и более, а по печатным проводникам, питающим вставные платы, может протекать и много ампер. Поэтому заранее запланируйте токонесущие печатные проводники достаточно большого сечения, а также сильноточные соединительные разъемы.

Как было показано в разд. 9.11, особую важность представляют заземляющие проводники как на самих печатных платах, так и между ними. Эти проводники должны иметь минимальную индуктивность. Лучше всего отвести под них один слой многослойной печатной платы, хотя «решетчатое» заземление на двухслойной плате часто дает удовлетворительные результаты (подробнее об этом в следующей главе). Наконец, последний совет касается схемы сброса при включении питания. RC-цепочка (с диодом), изображенная на рис. 11.10, заманчиво проста, однако она не будет отзываться на короткие броски напряжения, достаточные для нарушения работы выполняемой программы. Если микропроцессор встроен в прибор, то результатом будут сбои в работе прибора, причем для восстановления его работоспособности вам придется каждый раз выключать и снова включать питание! Мы сталкивались с таким явлением и в промышленном оборудовании, и в собственных разработках. Самое надежное — использовать хорошую современную схему сброса, например серии МАХ690 фирмы Maxim.

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

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

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

Представим, что твердотельное реле (рис. 11.10) подключено к небольшому кипятильнику, опущенному в чашку с сырым яйцом. Рассмотрим программу 11.2.



Для упрощения программы будем считать, что компьютер запущен и календарь-часы установлены. (В дальнейшем мы рассмотрим, как выполнить эти малоинтересные, но немаловажные действия!) Программа начинается с засылки нулевого байта в порт ЭЛД, чтобы выключить кипятильник; далее календарь-часы устанавливаются в 24-часовой режим при выключенных прерываниях. После этого программа входит в цикл ("WAKE", пробуждение) непрерывного опроса цифры часов в микросхеме календаря-часов, пока не будет прочитана цифра «8»; в этот момент в порт ЭЛД посылается байт, заполненный единицами, в результате чего включается кипятильник и загораются все ЭЛД.

Далее программа входит во второй цикл ("COOK", кипячение) непрерывного опроса цифры минут в микросхеме календаря-часов, пока не будет прочитана цифра «5»; в этот момент в порт ЭЛД посылается нулевой байт, выключающий кипятильник и гасящий ЭЛД. Наконец, программа переходит к третьему циклу ("WAIT", ожидание) опроса, как и в первом цикле, цифры часов, пока она не перестанет быть «8». В этот момент осуществляется безусловный переход в первый цикл ожидания 8 часов (уже завтрашних).

Мы привели эту скороспелую программу только для того, чтобы показать, как просто она может выглядеть. Не перенимайте наш стиль-многое мы сделали грубо, экономя место и не желая вдаваться в пояснения. В более совершенной программе мы могли повысить «интеллектуальный уровень» таймера, например, заставив один из портов АЦП фиксировать момент закипания воды; именно в этот момент следовало начать отсчет времени кипячения яйца, а можно было ради экономики электроэнергии еще и выключить кипятильник! Естественно также предусмотреть ввод, с помощью кнопки NMI, времени пробуждения, длительности кипячения и т. д. Порт ЦАП можно использовать для индикации времени, возможно, в виде «живых цифр», в то время как другой порт ЦАП (подключенный к динамику в подушке) мягко будит вас, тихо рассказывая что-то задушевное под аккомпанемент записанной в память мелодии…, но мы отклонились от темы. Ну что же, пора нырять!


11.06. Программирование: определение задачи

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

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

Что такое усреднитель сигналов? Усреднитель сигналов, иногда называемый многоканальным накопителем, предназначен для повышения качества (т. е. увеличения отношения сигнал/шум) периодического аналогового сигнала, неизбежно смешанного с непериодическим шумом (или сигналами помех). Повышение качества осуществляется путем измерения значений сигнала много раз в течение каждого периода, занесения этих выборочных значений в набор последовательных «ящиков» или каналов и затем сложения в каждом канале соответствующих выборок от многих периодов входного сигнала. Другими словами, сигнал складывается сам с собой по модулю его периода. Как будет показано в разд. 15.13, такая процедура повышает отношение сигнал/шум для сигнала, накапливающегося в каналах, потому что суммарное значение (периодического) сигнала растет линейно со временем, а флуктуации (случайного) шума растут только как квадратный корень из времени. Будем называть каждый последовательный период накопления значений в ячейках «разверткой»; типичный сеанс накопления данных может состоять из нескольких тысяч разверток.

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

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

Мы решили ограничиться фиксированным числом каналов (256) с широким диапазоном их ширин. Поскольку усреднитель сигналов используется для исследования периодических явлений двух видов - с собственным внутренним периодом (например, океанские приливы) и запускаемых периодически нами (например, нервные импульсы или резонансные явления), мы предусмотрели два режима развертки: с внешним запуском, когда прибор ждет внешнего сигнала, чтобы начать цикл развертки, и с автозапуском, когда циклы развертки следуют друг за другом непрерывно. Далее, мы предусмотрели два способа завершения процедуры усреднения сигнала: по определенному заранее числу разверток и по нажатию на кнопку «стоп». В последнем случае усреднение завершается после окончания очередной развертки. Для наблюдения усредненного сигнала на экране ЭЛТ (с непрерывным обновлением изображения) мы формируем аналоговые X и Y сигналы (вместе с сигналом подсветки Z). При этом масштаб изображения можно изменять в широких пределах умножением на 2n; имеется также режим «автомасштабирования», в котором данные непрерывно пересчитываются (нормализуются) в соответствии с числом выполненных разверток. Наконец, на управляющую панель выведены ЭЛД, индицирующие состояние (ожидание, развертка) и логические выходные сигналы, характеризующие наличие развертки и конец развертки. Ниже приведены характеристики нашего усреднителя сигналов.

Диапазон аналогового входного сигнала: ±5В

Число каналов: 256

Внутреннее представление: 32-разрядные целые со знаком

Ширина канала: от 100 мкс до 1 с, с интервалами 1-2-5

Накопление: конечное суммирование (сумма 100 мкс-выборок)

Определяемое заранее число разверток: от 1 до 20000, с интервалами 1-2-5

Режимы развертки: внешний запуск; периодический (автозапуск)

Режимы наблюдения: с выбором масштаба (изображение, выходящее за верхнюю границу экрана, переносится вниз); с автомасштабированием

Масштаб изображения: от 1 до 16К входного диапазона, ступенями с умножением на 2

Входы: аналоговый сигнал, внешний запуск развертки

Выходы: X, Y, Z (на ЭЛТ), РАЗВЕРТКА, КОНЕЦ

Дополнительное управление: ПУСК, СТОП, СБРОС (перезагрузка)


На рис. 11.15 показаны входные и выходные сигналы микропроцессорной платы.



Рис. 11.15. Входные, выходные и управляющие сигналы усреднителя сигналов. «ЭЛД» обозначает порт индикации (см. рис. 11.10); «А», «В» и «С» относятся к битам параллельного порта 8536.


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

Аналоговый фильтр имеет особое значение и заслуживает некоторых пояснений. Если вы получаете короткие периодические выборки значений непрерывного аналогового сигнала с частотным спектром конечной ширины (при максимальной частоте, присутствующей в сигнале, f, вы сохраняете входную информацию лишь если выборки следуют с частотой 2fмакс и более. Если же этот критерий Найквиста не удовлетворяется, происходят странные вещи; конкретно, на рис. 11.16 показано явление возникновения побочной низкочастотной составляющей в результате субдискретизации, когда частоты, близкие к частоте дискретизации fд, отображаются на низкочастотную область. Для устранения этого явления входной сигнал следует пропускать через низкочастотный фильтр с граничной частотой fд/2 или меньше.



Рис. 11.16. Возникновение побочной низкочастотной составляющей в результате субдискретизации.


Это вроде бы просто, но как быть с тем обстоятельством, что ширина канала и, следовательно, частота дискретизации в нашем усреднителе перестраивается? Можно установить на входе регулируемый фильтр низких частот (например, фильтр с коммутируемыми конденсаторами и программно управляемой тактовой частотой) и настраивать его согласно ширине канала; это допустимо, так как если вы выбираете большую ширину канала, высокие частоты вас все равно не интересуют. Однако можно поступить проще. Заметьте, что при интегрировании (усреднении) сигнала в течение ширины канала вы получаете низкочастотный фильтр с автоматической регулировкой. По этой причине на входе усреднителя сигналов иногда устанавливают преобразователь напряжения в частоту (микросхема высокой степени интеграции). Мы используем, в сущности, тот же подход: дискретизация аналогового входного сигнала всегда осуществляется на частоте 10 кГц (при этом для устранения наложения спектров входной сигнал фильтруется низкочастотным фильтром с граничной частотой 5 кГц, соответствующей частоте дискретизации); при больших периодах дискретизации осуществляется эффективное интегрирование сигнала за счет сложения соответствующего числа последовательных отсчетов. На рис. 11.17 показано, как могла бы выглядеть передняя панель прибора.



Рис. 11.17. Передняя панель усреднителя сигналов.


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

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

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

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


11.07. Программирование: детали

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

Замечание: дальнейшее описание насыщено деталями. Читатели, желающие получить лишь общее представление, могут опустить обсуждение вопросов программирования, перейдя сразу к разд. 11.08 или 11.09.

На рис. 11.18 изображена общая структура, сильно упрощенная.




Рис. 11.18. Программирование: общая структура.


В ОЗУ мы организовали три массива: массив DATA из 256 32-разрядных («длинных») целых чисел для хранения текущих данных для каждого канала; массив NORM из 256 16-разрядных («слова») целых чисел для хранения количества полных разверток для каждого канала, что нужно для нормализации данных в режиме автомасштабирования; и, наконец, массив DISPLAY из 256 байт для хранения данных, непрерывно поступающих на дисплей. Основные функции программы заключаются в следующем: добавление в массив DATA новых данных из АЦП при одновременной модификации массива NORM; масштабирование этих длинных чисел с преобразованием их в байты массива (в режиме автомасштабирования — с использованием массива NORM, а при ручном задании масштаба - путем сдвига); непрерывный вывод этих байтов на экран.

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

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

Синхронизация; программное управление и управление от прерываний.

Наиболее важная задача — обеспечить выполнение АЦП преобразований каждые 100 мкс и накопление получаемых данных в массиве DATA. Следующая по важности задача - регенерация дисплея с частотой по меньшей мере 40 Гц, чтобы избежать мерцания. Менее важной является задача обновления по мере изменения содержимого массива DATA также и массива DISPLAY.

Вы можете подумать, что наиболее важная задача должна решаться средствами основной (зацикленной) программы, задачи же менее важные могут время от времени отнимать время процессора с помощью прерываний. Однако это не так. Прерывания имеют приоритет по отношению к текущей программе, поэтому срочные задачи должны выполняться обработчиками прерываний, задачи же менее важные — наоборот, «главной» программой, которая получит лишь то время ЦП, которое останется от обработки прерываний. (При этом, конечно, предполагается, что процессор обрабатывает прерывания достаточно быстро. Как мы увидим, большое число регистров МП 68008 позволяет ему исключительно быстро обрабатывать прерывания; МП 68008 прямо создан для этой задачи.)

Как было показано на рис. 11.18, данные из АЦП поступают в массив DATA с помощью прерываний, создаваемых каждые 100 мкс программируемым таймером 8536. Главная программа занимается непрерывным обновлением массива DISPLAY, используя для этого подпрограмму update (обновление) (поскольку эта подпрограмма совсем не думает о том, что у нее под носом протекает интереснейший процесс сбора данных, она вынуждена проверять флаг, устанавливаемый программой обработки прерываний и свидетельствующий об окончании измерений).

Мы сначала хотели включить в главную программу также и регенерацию дисплея, но этому помешало любопытное обстоятельство. С каждой парой сигналов X, Y, посылаемых на ЦАП для вывода на экран точки, надо формировать также и сигнал «оси Z» (подсветки). В разд. 10.20 было показано, как можно сформировать «программный сигнал», посылая в бит порта сначала 1, а затем 0. Сигналы оси Z должны иметь одинаковую длительность, иначе одни точки на экране будут ярче других. Если, однако, программа время от времени прерывается, невозможно гарантировать равную длительность программных сигналов.

Упражнение 11.12. Но почему?


Можно, конечно, выключать прерывания, генерировать сигнал, а затем снова включать прерывания. Это безобразное решение, поскольку в самый важный процесс регулярных выборок вносятся нежелательные задержки. Потом мы нашли лучший способ: вывод на экран одной точки выполнять, как вспомогательную задачу обработчиком прерываний. Обработчик срабатывает каждые 100 мкс, так что полное 256-точечное изображение будет выводиться 40 раз в секунду. При этом, поскольку прерывания возникают и в том случае, когда главная программа находится в состоянии ожидания (сигнала ПУСК), изображение на экране не будет гаснуть. Наконец, такой способ содержит в себе чудесную глюковину: ведь запустив АЦП, приходится выжидать 10 мкс перед тем, как снимать с него результат преобразования; этого времени как раз хватит, чтобы послать в ЦАП пару X, Y. Другими словами, регенерация дисплея в обработчике прерываний абсолютно не требует процессорного времени!

Главная программа: инициализация. Хватит нам ходить вокруг до около. Давайте рассмотрим подетальнее задачи, выполняемые программой. Сначала взгляните на главную программу, изображенную на рис. 11.19 в виде несколько необычной структурной схемы.



Рис. 11.19. Структурная схема главной программы.


Приведенная диаграмма весьма близко соответствует собственно программе на языке ассемблера (программа 11.3).
















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

Из текста программы также видно, как мы будем использовать регистры МП 68008. При каждом прерывании мы извлекаем данные из АЦП, добавляем их к текущему содержимому канала и проверяем, не дошли ли мы до конца канала или развертки. Можно было хранить содержимое указателей и счетчиков в памяти (так и пришлось бы поступать при использовании менее совершенного процессора типа 8086), но зарезервировав достаточное число регистров для нужд обработчика прерываний, мы существенно повышаем эффективность режима прерываний. Поэтому мы выделили регистры данных для текущего содержимого канала (D7), обратного счетчика периодов дескретизации (внутри канала) (D6) и обратного счетчика каналов внутри развертки (D5), смещения в массиве DISPLAY (D4), а также регистр для временных данных (D3). Далее, мы зарезервировали адресные регистры для трех массивов (NORM, А6; DATA, А5; DISPLAY, А4) и для наиболее используемых портов (ADC0, A3; СIO [параллельный порт], А2). Главная программа берет на себя обязательство не использовать эти регистры при включенных прерываниях.

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

MOVE.B ADC0, D0

где ADC0 представляет длинный абсолютный адрес (в нашем случае $80000), требует 28 тактов (3,5 мкс в нашем процессоре), в то время как команда

MOVE.B (A3), D0

использующая косвенную адресацию через A3, выполняется всего за 12 тактов. Эта разница обусловлена исключительно процессами на магистрали, где для пересылки каждого байта требуются (в МП 68008) 4 такта. В процессе выполнения первой команды ЦП извлекает из памяти двухбайтовый код операции, четырехбайтовое расширение (длинного) адреса и, наконец, запрошенный байт данных, т. е. всего 7 байт, на что расходуется 28 тактов. Вторая команда требует извлечения двухбайтового кода операции и запрошенного байта данных, т. е. всего 3 байт (12 тактов). Вообще системы с узкими шинами (вроде нашего МП 68008, у которого внутренняя 32-разрядная архитектура должна себя чувствовать как в смирительной рубашке, общаясь с внешним миром через 8-разрядную шину) особенно неэффективны в условиях интенсивных передач данных.

Наконец, началась программа! Первые 8 байт ПЗУ хранят важнейший стартовый вектор: указатель стека и входную точку программы. Входная точка находится в «истинном» ПЗУ (по адресу $40008), поэтому мы можем немедленно очистить бит BOOT, что приводит к замещению временного образа ПЗУ, используемого при начальной загрузке, оперативной памятью. Теперь мы можем загружать векторы прерываний в начало ОЗУ, в конкретные ячейки, определяемые архитектурой МП 68008 (вся область векторов приведена в табл. 11.5): $68 (INT2), $74 (INT5) и $7С (NMI = INT7). Мы использовали только INT5 (от 100 мкс — таймера в микросхеме параллельного порта); в этот вектор мы загружаем адрес нашего обработчика прерываний. В зависимости от конкретного состояния прибора (ожидание пуска или внешнего сигнала запуска, начало новой развертки, процесс развертки) обработчик прерываний должен выполнять различные функции; поэтому мы написали один грандиозный обработчик со многими точками входа, соответствующими его функциям. На данном этапе мы еще не готовы принимать данные, поэтому в вектор INT5 мы загружаем входную точку idle__int (прерывание простоя). Очень полезно загрузить на всякий случай все неиспользуемые векторы прерываний адресом bad__int (ложное прерывание) (вдруг произойдет деление на нуль, ложное прерывание и т. д.); мы загружаем в них адрес программы, которая зажигает ЭЛД определенным образом (далее будет видно, каким именно).

Теперь наступает утомительный, но существенный этап инициализации портов. БИС периферийных устройств, как, например, 8536, обладают изумительной гибкостью, но за нее приходится платить тщательным планированием. Вы должны продумать, какие управляющие байты следует послать, в какие регистры и в каком порядке, чтобы получить требуемый результат. Для простых параллельных портов в процессе планирования следует выбрать направление, полярность, режим и прерывания, а для таймеров — основание счета, каскадирование, режим запуска, прерывания и проч. В программе 11.3 приведен полный текст инициализации параллельного порта/таймера. Разрешаются параллельные порты А, В и С, причем биты 4–6 порта В назначаются выходными, а остальные - входными (см. рис. 11.15). Таймер-0 настраивается на деление его тактовой частоты 4 МГц на 400 и на непрерывный перезапуск с генерацией прерывания (по INT5) каждые 100 мкс. Заметьте, что все установочные входы мы сделали инверсными, поэтому при замыкании контакта (на который изначально подано +5 В) на землю с него считывается 1, а не 0. На входе, к которому подключена кнопка СТОП, мы использовали опцию «запоминания 1», так что мгновенное нажатие фиксируется, а отрабатывается оно только в конце развертки.

Наконец, мы очищаем массивы в ОЗУ (отметьте использование подпрограммы), инициализируем регистры, разрешаем прерывания и переходим на выполнение «главного» цикла.

Главная программа: главный цикл. Завершив инициализацию, мы входим в бесконечный главный цикл main__loop. Фактически он состоит из двух циклов: цикла ожидания нажатия кнопки ПУСК и цикла непрерывного обновления памяти изображения, на фоне которого осуществляется сбор данных в режиме прерываний. Программа обработки прерываний, завершив последнюю развертку, устанавливает программный «флаг останова» stop__flag, который непрерывно проверяется вторым главным циклом. Обнаружив установленный флаг, главная программа возвращается в первый цикл ожидания нового пуска. Давайте сопоставим структурную схему и программные строки.

Главный цикл (рис. 11.19) начинается с установки на ЭЛД состояния «ожидание». Затем программа ждет нажатия кнопки ПУСК, т. е. ее перехода из разомкнутого в замкнутое состояние. Это сложнее, чем кажется, потому что кнопка не содержит цепей подавления дребезга, в результате чего вы имеете несколько десятков близко расположенных перепадов между уровнями «замкнуто» и «разомкнуто», возникающих на протяжении, возможно, 25 мс. Этого времени может хватить на завершение самого короткого цикла измерений (если вы выбрали 1 развертку и интервал дискретизации 100 мкс), после чего измерения будут ошибочно продолжены, поскольку контакт кнопки все еще колеблется между состояниями «разомкнуто» и «замкнуто». Поэтому мы написали простенькую программу подавления дребезга, которая фиксирует, что кнопка была непрерывно разомкнута в течение приблизительно 50 мс (тем временем многократно выполняется подпрограмма обновления update), а затем переходит в состояние «замкнуто». Наконец мы получили приказ на выступление!

Программа сбрасывает выходной сигнал КОНЕЦ, считывает состояние управляющей панели и использует соответствующим образом полученные значения (устанавливая программные флаги типа auto__loop и параметры вроде dwell__per__bin и num__sweeps). Обратите внимание на использование таблицы decode__tbl (и косвенной адресации с индексацией) для получения значений, соответствующих положениям переключателей.

Далее программа очищает массивы DATA и NORM, инициализирует некоторые регистры (адресов и данных) и сбрасывает флаг останова. Последний шаг заключается в изменении содержимого вектора INT5 (который пока указывает на метку idle__int в обработчике прерываний) на адрес wait__trig или sweep__start в зависимости от того, какой режим установлен на управляющей панели: внешнего запуска или автозапуска.

Наконец, главная программа входит в «рабочий» цикл, в котором многократно выполняются два действия: вызов подпрограммы update (обновления массива DISPLAY в соответствии с содержимым массива DATA) и проверка флага останова stop__flag. На фоне этого унылого цикла прерывания тайком выполняют все то, ради чего был сделан наш прибор.

Главная программа: подпрограммы. Перед тем как взяться за наиболее сложную программу нашего комплекса - обработчик прерываний, рассмотрим две подпрограммы, вызываемые главной программой (рис. 11.20).



Рис. 11.20. Структурные схемы подпрограмм.


Подпрограмма clear__arrays заполняет нулями оба массива DATA и NORM; массив DISPLAY очищать нет необходимости, потому что программа update сразу же скопирует нули из DATA в DISPLAY. Эта программа обновляет за раз одно значение из массива DISPLAY, используя для этого текущие параметры изображения с управляющей панели и входные данные из массивов DATA и NORM; она также обновляет состояние порта ЭЛД, копируя байт памяти led__store.

Рассмотрим сначала простую подпрограмму clear__arrays из программы 11.3. Регистры А0 и А1 используются, как указатели двух массивов, и все 32 разряда D0 заполняются нулями. Счетчик D1 инициализируется величиной, равной размеру массива минус один; сейчас станет понятно, зачем это нужно. В цикле слово или длинное слово нулей пересылается в массивы с помощью косвенной адресации (с постинкрементом); вспомните, что постинкрементная адресация — штука интеллигентная, она инкрементирует адресный регистр правильным образом, прибавляя в нашем случае 2 в операции со словом и 4 в операции с длинным словом. Команда DBF заслуживает особого объяснения. Она представляет собой один из вариантов команды DBcc, для которого код условия ее = «ложь» (False). Любая команда (в общем виде) DBcc Dn, метка фактически проверяет два условия.

Сначала она анализирует выполнение условия ее (т. е. состояние флагов, установленное предыдущей командой), при этом, если ее = «истина», ничего не делается (т. е. команда как бы пропускается и ЦП переходит к выполнению следующей команды). Если, однако, ее = «ложь», происходит декремент указанного регистра (как слова) и переход на метку метка, с предварительным анализом содержимого регистра. Если в регистре обнаруживается — 1, переход на метку не осуществляется, и выполняется следующая команда. В нашем случае команда DBcc действует просто как оператор цикла, так как ее = F («всегда ложь», см. табл. 11.1), поэтому декремент D1 осуществляется безусловно, до тех пор, пока не обнаружится D1 = — 1. Несмотря на эти сложности (а также и необходимость использовать счетчик длиной в слово), команда DBcc весьма удобна, так как заменяет две команды (SUBQ, Вcс), и выполняется очень быстро. Поскольку она проверяет счетчик на —1, последний следует инициализировать числом, на 1 меньшим требуемого числа шагов, чем и объясняется инициализация, использованная в программе. Подпрограмма заканчивается обычной командой RTS (возврат из подпрограммы), восстанавливающей исходное содержимое PC (программного счетчика) и осуществляющей таким образом возврат в вызывающую программу.

Заметьте, что в начале подпрограммы не понадобилось сохранять содержимое каких-либо регистров, потому что вызывающая программа не оставила ничего ценного в регистрах D0-D1 и А0-А1. Обратите также внимание на использование MOVE, а не CLR для обнуления массивов; оказывается, команда MOVE работает быстрее CLR из-за особенностей архитектуры МП 68000 — при выполнении CLR МП 68000 сначала инициализирует цикл чтения, а затем — цикл записи. Разработчики приняли такое, на первый взгляд, странное решение для упрощения логики ЦП.

Упражнение 11.13. Напишите вариант подпрограммы clear arrays с использованием команд SUBQ и Всс вместо DBF. Напишите еще один вариант, в котором вместо MOVE используется CLR.


Подпрограмма update более содержательна. Ее задача — обновлять массив DISPLAY в памяти (а также и состояние ЭЛД); она многократно вызывается в обоих циклах главной программы. Поскольку прерывания имеют приоритет, они выполняют свою работу в точном соответствии с расписанием (каждые 100 мкc), все же оставшееся время отдается подпрограмме update. Ее действия начинаются с пересылки образа ЭЛД в памяти в физический порт ЭЛД. Даже эта относительно простая операция требует некоторых пояснений. Естественный вопрос, который должен прийти вам в голову, — это почему бы, желая установить или сбросить бит ЭЛД, не обновлять ЭЛД непосредственно? В ответ надо указать на два обстоятельства. Во-первых, просто записать новый байт в порт ЭЛД нельзя, так как при этом потеряются значения остальных битов; либо мы должны иметь порт ЭЛД с возможностью как записи, так и чтения, либо надо хранить в памяти образ ЭЛД. Поскольку из нашего порта ЭЛД читать нельзя, в памяти предусмотрена ячейка led__store, хранящая копию последнего байта, посланного в порт ЭЛД. Во-вторых, раз уж такая ячейка все равно есть, мы можем сэкономить время в критических циклах обработчика прерываний, обновляя в них только ячейку led__store. Передачу же сообщения на ЭЛД-индикатор передней панели будет осуществлять подпрограмма update в ходе своего выполнения. Все это станет более понятным, когда мы приступим к рассмотрению обработчика прерываний.

Упражнение 11.14. Какие дополнительные (очень несложные) аппаратные средства требуются для того, чтобы можно было читать из порта ЭЛД? Проявите сообразительность, чтобы дополнительная дешифрация адреса получилась простой.


Оставшаяся часть подпрограммы update обновляет массив DISPLAY. Прежде всего из памяти извлекается смещение (число элементов от начала массива) очередного обновляемого элемента. (Для этого было бы неплохо использовать выделенный адресный регистр, но при распределении регистров приоритет был, конечно, отдан обработчику прерываний.) Смещение умножается на 4 (сдвигом влево на 2 бит), чтобы его можно было использовать для индексной адресации в массиве DATA длинных чисел. Переслав в D1 очередной элемент из DATA, мы считываем с управляющей панели текущее значение масштаба изображения и маскируем его, чтобы получить число от 0 до 15. Число 15 ($0F) обозначает автомасштабирование, в то время как меньшие числа определяют фиксированный масштаб в виде степени 2. Мы либо соответствующим образом сдвигаем значение элемента, либо переходим на программный блок автомасштабирования.

Для выполнения автомасштабирования нам надо значение текущего (индексированного с помощью update__offset) элемента DATA разделить на текущее значение из массива NORM (которое говорит, сколько разверток включено в значение DATA), а затем еще раз разделить на ширину канала (которая говорит, сколько выборок было сделано в каждой развертке). Перед любым делением всегда проверяйте на нуль! Наконец, как при сдвиге, так и при автомасштабировании мы должны преобразовать полученное длинное данное со знаком в байт со знаком. В случае автомасштабирования результирующее длинное число всегда находится в диапазоне ±128. В случае фиксированного масштаба, если выбрать масштаб меньше отсчета в наиболее заполненном канале, произойдет переполнение. Лучше всего сделать так, чтобы при переполнении точки, выходящие за верхний край изображения, «прокручивались» в его низ и наоборот. Написав несколько чисел и проиграв с ними разные варианты, вы легко убедитесь, что правильный алгоритм заключается в усечении числа до 8 бит и инвертировании затем старшего бита. Мы реализовали этот алгоритм с помощью команды изменения бита BCNG, после которой выполняется байтовая пересылка (командой MOVE) в массив DISPLAY. Далее мы инкрементируем и сохраняем индекс update__offset и, наконец, выполняем команду RTS.

Обработчик прерываний. Наконец мы добрались до обработчика прерываний — центральной фигуры всей программы. Перед нами четыре точки входа в обработчик, инициируемый прерываниями от таймера; перед нами также простенький обработчик bad__int ложных прерываний, а также и всех остальных векторизованных ошибок и ловушек (табл. 11.5). Займемся ради разминки программой bad__int, а когда не останется отговорок, примемся за обработчик прерываний от таймера.

МП 68008, как уже описывалось выше, распознает прерывания, а также разнообразные «исключения», перечисленные в таблице, и сохранив в стеке текущие PC и SR, осуществляет переход на команду, адрес которой извлекается из вектора, соответствующего данному исключению. Так, если вы попытаетесь разделить на нуль, ЦП сохранит в стеке содержимое счетчика команд и регистра состояния, а затем перейдет на команду, 32-разрядный адрес которой хранится в байтах памяти с абсолютными адресами $014—$017. Точно так же обслуживаются и прерывания, причем для векторов прерываний с полным подтверждением отведены ячейки с адресами $100-$3FF, а для векторов автовекторизуемых прерываний — ячейки $064-$07F. Вы можете выполнять в обработчике прерываний любые действия; завершить их следует командой RTE (возврат из исключения). Чтобы избежать путаницы, ЦП запрещает прерывания после передачи управления обработчику и разрешает их снова при выполнении команды RTE. Если у вас уж слишком закрученный обработчик, вам может понадобиться разрешить прерывания (только более приоритетных уровней) внутри обработчика, что можно сделать, послав соответствующий байт в регистр состояния.

Программа bad__int. Из рис. 11.20 и текста программы 11.3 легко представить ход выполнения программы bad__int, в задачу которой входит упорядоченный сброс выходных сигналов и вывод на ЭЛД какой-то бросающейся в глаза информации. Стартовый адрес этой программы, определяемый компоновщиком после сборки всех настраиваемых строк, загружается (главной программой в процессе начальной загрузки) во все зарезервированные для векторов ячейки (в начале памяти), перечисленные в таблице. Любое исключение или ложное прерывание (т. е. что угодно, кроме прерывания уровня 5) заставляет ЦП выполнить описанную выше процедуру с передачей управления на программу bad__int. Сначала выключается сигнал Z-оси, чтобы исключение, случайно возникшее в середине программного импульса Z-оси, не оставило луч дисплея включенным на полную яркость (к тому же в одной точке). Далее стоит сбросить сигнал на выходе РАЗВЕРТКА и установить сигнал на выходе КОНЕЦ, поскольку в предшествующих измерениях все равно нет смысла.

Теперь проявим остроумие. Пошлем в порт ЭЛД 01Н и войдем в бесконечный цикл, в котором это число циклически сдвигается влево и после биологически заметной задержки снова посылается на ЭЛД. Результатом такой операции будет «шагающий бит» на ЭЛД-индикаторе, картина, которая заставит встрепенуться самого измученного оператора. Поскольку в цикле нет команды RTE, процесс этот будет идти бесконечно. Чтобы снова начать измерения, оператор должен нажать кнопку СБРОС.

Упражнение 11.15. Придумайте более совершенный алгоритм, позволяющий оператору определить, какое исключение привело к сбою. Подсказка: всего имеется немного менее 256 исключений; ЭЛД-индикатор содержит 8 бит. Можете ли вы написать программу, реализующую ваше решение?


Прерывания от таймера: четыре точки входа. Теперь у нас не осталось никаких отговорок. Нырнем. Текст обработчика прерываний входит в программу 11.3; его структурная схема изображена на рис. 11.21.




Рис. 11.21. Структурная схема обработчика прерываний.


Обработчик имеет четыре точки входа, соответствующие различным состояниям прибора. Они обозначены idle, wait__trig, sweep__start и get__data. Программа, в зависимости от общего состояния прибора, автоматически изменяет содержимое вектора прерываний (ячейка $074), связывая прерывание с той или иной точкой входа. Если вы не желаете накапливать данные, вы входите в обработчик в точке idle; на экран выводится одна точка и осуществляется возврат. Если войти в обработчик в точке get__data, программа считывает АЦП, проверяет, не возникли ли состояния «конец ячейки» или «конец развертки» (обрабатывая их соответствующим образом) и обновляет дисплей. При входе в точке sweep__start устанавливается требуемое состояние ЭЛД и выходных сигналов и осуществляется переход в точку get__data.

Наконец, вход wait__trig служит для проверки наличия сигнала внешнего запуска и перехода либо на sweep__strat, либо на idle. В обработчике прерываний имеются и другие метки (например z__pulse), но они не являются входными точками, а служат для переходов внутри программы.

Прерывания от таймера: idle. Учитывая важность обработчика, рассмотрим его во всех деталях. Ранее в главной программе вектор прерываний был настроен на вход idle, чтобы в ожидании запуска образовать изображение на экране. Таким образом, выполнение начинается с метки idle__int. Если вспомнить назначение зарезервированных регистров, понять ход программы не сложно. В D4 хранится индекс очередной точки экрана, требующей регенерации, который мы посылаем в преобразователь Х-координаты ЦАПО (используя косвенную адресацию со смещением, которая быстрее абсолютной). В преобразователь Y-координаты ЦАП1 мы посылаем данное (используя D4 в качестве индекса массива DISPLAY, указатель базы которого находится в А4). D4 инкрементируется (но не проверяется на конец массива) и управление передается генератору импульса Z-оси.

Упражнение 11.16. Объясните, почему можно обойтись без проверки индексного регистра D4 массива DISPLAY после его инкрементирования?


К этому времени Х- и Y-ЦАП уже установились (время установки 1 мкс), поэтому генератор Z-импульса с помощью команды BSET устанавливает бит Z__BLANK (бит 4, см. определения) параллельного порта В, адрес которого, ввиду его частого использования, мы храним в регистре А2. Сбросить бит можно следующей командой, но в этом случае образовался бы слишком короткий (3 мкс) импульс, и изображение было бы бледным (подсветка на 3 мкс каждые 100 мкс). Поскольку, однако, все прерывания завершаются через этот программный блок, мы можем воспользоваться возможностью и сделать полезное дело, одновременно убив время, именно, сообщить таймеру, что он может снять свой запрос на прерывание. Запись в регистр команд и состояния таймера-1 осуществляется с помощью двухэтапного процесса (как это было и в блоке инициализации главной программы): сначала мы посылаем в управляющий регистр микросхемы (адрес $84003) внутренний адрес регистра ($0А), а затем посылаем сам управляющий байт ($20), который интерпретируется микросхемой 8536, как команда на снятие запроса прерывания от таймера-1. Больше до выхода из прерывания ничего делать не нужно, поэтому мы завершаем импульс Z-оси (командой BCLR) и выполняем команду RTE (возврат из исключения). Поместив строки подтверждения прерывания в генератор Z-импульса, мы удлинили импульс подсветки до 10 мкс, с повторением его каждые 100 мкс. Прерывание все равно надо было подтвердить, и мы нашли для этого самое подходящее место. Такая же глюковина использована нами и в другом месте, когда мы в течение аналого-цифрового преобразования посылаем в ЦАП X и Y-координаты точки. Об этом ниже.

Прерывания от таймера: get_data. Эта точка входа используется чаще других, именно, когда усреднитель сигнала выполняет развертку. Мы запускаем АЦП, посылая в его порт байт режима ($03); это число определяет биполярное преобразование в дополнительном коде. Как и раньше, для повышения скорости мы используем косвенную адресацию через регистр A3 (в котором хранится адрес АЦП).

Теперь надо подождать 10 мкс окончания преобразования — прекрасная возможность послать на ЦАП дисплея новую пару X и Y-координат точно так же, как это делается в блоке idle. Эти программные действия заканчиваются на 1 мкс раньше, чем нужно, поэтому мы тянем время с помощью команды NOP (холостая команда), а затем считываем АЦП. Заметьте, насколько это удобнее, чем вводить бит состояния, сигнализирующий о завершении преобразования в АЦП (эта возможность обсуждалась в разд. 11.05); не забудьте, однако, добавить еще несколько команд NOP, если вам захочется увеличить тактовую частоту ЦП.

Мы прочитали из АЦП байт в дополнительном (до 2) коде, но наш массив DATA и накопитель ячейки (D7) используют длинные дополнительные числа. Для получения длинного целого числа дважды выполняется команда ЕХТ (расширение знака). Расширение знака представляет собой просто копирование самого старшего бита числа влево, пока не заполнится большее по длине целое слово; эта операция сохраняет значение целого со знаком (простое заполнение нулями не сохраняет значения числа). Расширенное целое добавляется к накапливаемому содержимому ячейки в D7, а счетчик ширины канала dwell__per__bin (D6) декрементируется. Если в нем еще не нуль, возврат осуществляется через z__pulse, как описано выше. Полное время выполнения программы обработчика в этом случае составляет 32,3 мкс плюс 9 мкс на процедуру прерывания ЦП и еще 5 мкс на команду RTE, всего 46,3 мкс. Таким образом, главная программа имеет более половины процессорного времени на выполнение простой задачи обновления массива DISPLAY.

Если накопление в канале завершилось, обработчик устанавливает счетчик ширины канала, добавляет накопленное значение в D7 к соответствующему элементу массива DATA (на который указывает А5), инкрементирует соответствующий элемент массива NORM (через А6), очищает регистр-аккумулятор (D7), декрементирует счетчик каналов и (если в счетчике каналов не нуль, т. е. развертка не завершилась) переходит на z__pulse. Обратите внимание на использование автоинкрементного режима адресации. Дополнительное время, расходуемое обработчиком на выполнение этих операций, составляет 14,8 мкс.

Если завершилась и развертка, о чем говорит нуль в счетчике каналов D5, обработчик устанавливает указатели, ЭЛД-индикатор и выходные сигналы. Затем проверяется, не была ли нажата кнопка СТОП; такую проверку следует обязательно выполнять в конце (или начале) развертки, чтобы данные всегда усреднились по целому числу разверток. Если кнопка СТОП была нажата, программа переходит на метку stop sweep, в результате чего устанавливаются выход КОНЕЦ и стоп-флаг, а в вектор INT5 загружается адрес входной точки idle.

Если кнопка СТОП не нажималась, программа проверяет, не следует ли завершить измерения ввиду отработки заданного на передней панели числа разверток (число оставшихся разверток хранится в памяти в переменной num__sweeps), поскольку значение 0 обозначает «безостановочная работа», мы сначала проверяем на нуль; если num__sweeps = 0, это значение сохраняется и осуществляется переход на re__trigger, в противном случае значение num__sweeps декрементируется и снова проверяется на нуль. Если теперь оно равно нулю, это значит, что закончилась последняя запланированная развертка; в этом случае осуществляется переход на stop__sweep. Если развертки не исчерпались, выполняется программный блок re__trigger.

Блок re__trigger определяет режим запуска следующей развертки. Если переменная autoloop, установленная программой main после считывания состояния управляющей панели, имеет значение «истина», в вектор INT5 загружается адрес точки входа sweep__start, в противном случае загружается адрес wait__trig.

Заметьте, что в процессе смены вектора нет опасности прерывания, потому что пока ЦП выполняет обработку прерывания, прерывания запрещены; поскольку мы не включаем их в обработчике прерывания, они остаются запрещенными.

Прерывания от таймера: sweep__start и wait__trig. Эти входные точки используются, если следующее прерывание должно начать развертку, либо мы ожидаем импульса внешнего запуска (длительностью на менее 100 мкс!). Соответствующий адрес загружается в вектор INT5 либо в главной программе при нажатии кнопки ПУСК, либо в обработчике прерываний при завершении обработки не последней развертки (в точке re__trigger); по структурной схеме можно проследить, где это делается. Программный блок sweep__start сразу начинает развертку, и его структура проста: зажигается ЭЛД РАЗВЕРТКА, устанавливается выходной сигнал РАЗВЕРТКА, сбрасывается фиксатор бита кнопки СТОП («запоминание 1»), загружается вектор get__data, а затем происходит естественный переход на метку get__data. При последующих прерываниях вход в обработчик прерываний осуществляется через входную точку get__data.

Вход в обработчик через входную точку wait__trig осуществляется, если следующая развертка не должна начаться до получения внешнего сигнала запуска (параллельный порт А, бит 7). Поскольку нажатие на кнопку СТОП должно «пересиливать» запуск, программа сначала анализирует состояние входа СТОП (и переходит при наличии этого сигнала на метку stop__sweep), а затем входа внешнего запуска; если сигнал запуска отсутствует, происходит переход на метку idle, если присутствует - на метку sweep__start.


11.08. Характеристики

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

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

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

Входная точка · Время выполнения (мкс)

idle              37

det__data     46,3 (внутри канала)

                    61 (конец канала)

                    92 (конец развертки, ручной СТОП)

                    105 (конец развертки, программный останов)

                    113 (конец развертки, ожидание внешнего запуска)

                    114 (конец развертки, автозапуск)

sweep__start 61

wait__trig     46 (нет запуска)

                    69 (запуск)

Большая часть приведенных длительностей не превышает «длительности пульса» усреднителя сигналов (100 мкс), что, конечно, очень хорошо. В трех случаях, однако, время обработки прерывания оказывается больше 100 мкс. Первая ситуация (конец развертки, программный останов) не страшна, поскольку затрата нескольких липших микросекунд после того, как все данные собраны, не имеет значения. Точно так же вряд ли вас обеспокоит вторая критическая ситуация (ожидание внешнего запуска), так как между сигналом внешнего запуска и началом очередной развертки всегда можно допустить некоторое время ожидания. Однако от последней ситуации (конец развертки, автозапуск) можно ожидать неприятностей, так как в режиме автозапуска мы ожидаем значение полного периода, точно равное 256 х ширина канала. В действительности, однако, здесь все в порядке по следующей причине. При использовании усреднителя сигналов в режиме автозапуска внешнее оборудование всегда запускается от усреднителя (для чего и предусмотрен выходной сигнал РАЗВЕРТКА), и если период будет отличаться на долю процента от ожидаемого, никакой беды не будет. Если, однако, вам необходимо завершать обработку за время, меньшее 100 мкс, используйте МП 68008 с тактовой частотой 10 МГц, отчего все длительности окажутся меньше на 20 %; это даст для наихудшего случая значение, меньшее 100 мкс (фактически 91 мкс). Однако при использовании более быстрого процессора не забудьте подправить программу обработчика, чтобы предоставить АЦП достаточное время для преобразования.

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


11.09. Некоторые дополнительные соображения

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

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

Одновибратор подсветки. Мы использовали для подсветки луча дисплея «программный импульс» параллельного порта, потому что считали необходимым продемонстрировать эту полезную методику. При этом мы особо подчеркнули, что при включенных прерываниях нельзя получить надежный программный импульс. Другая возможность заключается в использовании (вместо бита параллельного порта) аппаратного импульсного генератора, например, микросхемы одновибратора. Такого рода микросхемы, вообще говоря, применять рискованно, однако для нашего случая прекрасно подходит микросхема 8536 СIO фирмы Zilog, содержащая встроенный одновибратор, с которого можно снять выходной сигнал. Этот одновибратор фактически образуется с помощью одного из трех встроенных таймеров, что позволяет программно управлять длиной его импульса (вы даже можете соединить два таймера последовательно и получить более длинный импульс). В нашем приборе используются не все таймеры; и описываемая методика оказывается весьма удобной. С ее помощью сокращается программа обработчика прерываний и возникает возможность оптимальной настройки длительности Z-импульса подсветки.

«Запоминание 1» для кнопки СТОП. При чтении состояния кнопки СТОП мы воспользовались полезным качеством микросхемы 8536, именно, наличием встроенного триггера «запоминания 1». При инициализации микросхемы 8536 можно придать свойство запоминания 1 любому биту входного порта; этот бит затем устанавливается при кратковременном нажатии на кнопку и удерживает это состояние до программного сброса при выполнении цикла записи в этот бит порта. Для нашего случая это очень удобно, потому что нам надо фиксировать нажатие кнопки СТОП только в конце развертки. Длительность развертки может составлять много секунд, и встроенная память позволяет избежать периодического считывания состояния кнопки СТОП; поэтому в нашей программе состояние бита СТОП анализируется только в конце развертки (см. рис. 11.21).

Большинство микросхем параллельных портов не содержит входной памяти, и вам может понадобиться запланировать в программе действия, которых нам удалось избежать. Сделать надо следующее. Прежде всего определите внутренний программный флаг, который можно назвать stop__at__end (останов в конце); в программе это определение следует поставить после stop__flag. Не забудьте сбросить этот флаг перед входом в цикл приема данных; удобно это сделать после считывания состояния управляющей панели. Далее добавьте в цикл update__loop несколько команд, чтобы периодически проверять вход stop__bit и, если кнопка СТОП нажата, установить флаг stop__at__end. Наконец, измените строки обработчика прерывания так, чтобы в конце каждой развертки проверялась не кнопка СТОП, а этот программный флаг.

Упражнение 11.17. Впишите карандашом предлагаемые изменения в листинг программы.


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

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

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

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

Простейший способ организации плавного управления в микропроцессорном приборе заключается в использовании АЦП, преобразующего напряжение от переменного резистора, укрепленного на передней панели и подключенного между напряжением +5 вольт (или другим, более удобным) и землей. В продаже имеются небольшие дешевые микросхемы 8-битных АЦП, скомпонованных с 8-битными мультиплексорами и дискретизаторами с памятью; обычно у вас остается несколько свободных входов, которые можно использовать для чтения нескольких органов управления на передней панели. Можно даже с помощью АЦП прочитать состояние «-позиционного поворотного переключателя — достаточно подключить его выводы к цепочке из n — 1 резистора равной величины и подать на АЦП выходное напряжение!

Если вам нужно иметь лучшее разрешение, чем обеспечивает простой 8-битный АЦП, подумайте о многооборотном кодировщике. Он укрепляется на передней панели и имеет размер не больше обычного переменного резистора. Кодировщик содержит пару оптических прерывателей, формирующих, по мере вращения ручки, импульсы, сдвинутые по фазе на 90°. Сдвиг импульсов по фазе дает возможность определить, в каком направлении поворачивается ручка (см. рис. 8.97). В отличие от обычного переменного резистора, многооборотный кодировщик не имеет фиксатора, что и позволяет поворачивать его ось на много оборотов. Типичный узел такого рода серии Bourns EN формирует 256 импульсов на один оборот.

Микросхемы аппаратной поддержки микропроцессора

В нашем микропроцессорном приборе использованы 22 интегральные схемы, из которых 10 представляют собой мощные функциональные БИС (ЦП, память, параллельные и последовательные порты, календарь-часы, АЦП и ЦАП), а остальные 12, составляющие очевидное большинство, являются низменными вентилями, триггерами, буферами и фиксаторами. Эти микросхемы низкой и средней степени интеграции нужны для сочленения между собой больших микросхем и иногда называются «склеивающей логикой». Количество этого клея можно существенно уменьшить, если прибегнуть к помощи ПЛМ или даже (в условиях массового выпуска) заказных или полузаказных микросхем, специально разработанных под конкретную задачу. Тем не менее, фиксаторы и, особенно, тристабильные буферы используются весьма интенсивно во всех микропроцессорных системах, так что краткий обзор имеющихся возможностей вполне уместен. После этого мы коснемся некоторых распространенных поддерживающих БИС (последовательные и параллельные порты и преобразователи) и завершим главу обсуждением запоминающих устройств.


11.10. Микросхемы средней степени интеграции

Фиксаторы и D-регистры. Фиксаторы и регистры уже упоминались в разд. 8.24. Термин «фиксатор», строго говоря, относится к прозрачному фиксатору, у которого состояние выходов повторяет состояние соответствующих входов (на время действия сигнала разрешения). Так называемый фиксатор с фиксацией по фронту является, в действительности, регистром D-типа. Он состоит из D-триггеров с общим тактовым входом. Различие в функционировании этих схем приводит к важным последствиям, когда они используются для фиксации данных, поступающих с магистрали, что связано с особенностями относительной синхронизации во времени сигналов данных и строба записи. В частности, в соответствии с протоколом некоторых микропроцессорных магистралей (например, машин IBM PC), данные не обязательно будут достоверными на фронте строба записи, однако гарантируется их достоверность на срезе этого сигнала (и в течение некоторого минимального времени после него); см. рис. 10.6 и 11.22. При использовании прозрачного фиксатора с разрешением на все время стробирующего сигнала на его выходе почти наверняка появятся переходные состояния, как это показано на рис. 11.22.



Рис. 11.22. Синхронизация цикла записи, а — прозрачный фиксатор; б — регистр с фиксацией по перепаду.


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

Делая выбор между фиксатором и регистром, учтите, что на выходе прозрачного фиксатора достоверные данные появляются раньше, и иногда это может оказаться решающим доводом. Учтите также, что на многих магистралях (в частности, МП 68008) правильные данные поддерживаются в течение всего стробирующего сигнала с учетом времен упреждения и удержания, и в этом случае D-peгистр можно тактировать по фронту, если для этого хватит времени упреждения.

Естественно, что на такой магистрали прозрачные фиксаторы не будут иметь на выходах переходных состояний. На рынке имеется большое разнообразие и D-регистров, и прозрачных фиксаторов, с такими характерными чертами, как вход сброса, «разнесенные» выводы (все входы на одной стороне, все выходы на другой), инверсные выходы, тристабильные выходы (удобные для подключения к шине), а также раздельные по входам сигналы разрешения. Последнее качество упрощает внешнюю логику, позволяя тактировать фиксатор сигналом строба записи, а разрешать по входу сигналом с выхода дешифратора адреса. Характеристики фиксаторов были перечислены в табл. 8.9. Всеобщими любимцами являются восьмиразрядные тристабильные микросхемы `373 (фиксатор) `374 (D-регистр) или их модернизированные варианты с разнесенными выводами `573 и `574. Все они упакованы в DIP-корпусы с 20 выводами. В таком же корпусе выпускается микросхема `273, которая представляет собой микросхему `374 с сигналом сброса (но не тристабильную), а также микросхема `377-вариант `374 с сигналом разрешения (но без трех состояний). Более новые «долговязые» DIP-корпусы с 24 выводами имеют привычную ширину 0,3 дюйма, но предоставляют несколько дополнительных выводов. Так, новейшая серия `821 включает 8- и 9-разрядные регистры и фиксаторы со входами разрешения и сброса и тристабильными выходами, и все это в корпусах с разнесенными выводами.

Заметьте, что во многих приложениях некоторые из этих узких микросхем с 20 и 24 выводами могут оказаться удобнее причудливых БИС параллельных портов с 40 выводами (шириной 0,6 дюйма). Например, в нашей разработке мы использовали для ЭЛД-порта 8-разрядный регистр `273, а для порта DIP-переключателей 8-разрядный буфер `240. Вместо этого можно взять БИС параллельного порта вроде Zilog 8536 (хотя для такого примитивного прибора хватило бы и более простой микросхемы Intel 8255), которая стоит дороже, потребляет больше места и питания и требует дополнительного программирования. Однако для БИС характерна меньшая мощность выходов (1,7 мА на выходе и ничтожный входной ток у микросхемы 8255, в сравнении с 8 мА как на входе, так и на выходе у микросхемы `НСТ273). Некоторые микросхемы фиксаторов/регистров средней степени интеграции, когда дело доходит до выходных характеристик, напоминают могучих битюгов: микросхемы семейства `АС(Т) могут принимать и отдавать до 24 мА, а для серии `AS821 характерны значения 24 мА по входу и 48 мА по выходу. С другой стороны, БИС начинают играть всеми цветами радуги, когда вам требуется богатство возможностей (прерывания, причудливые режимы входов и выходов и т. д.), а не просто грубая сила.

Буферы. Другой тип микросхем, используемый в микропроцессорных разработках целыми пригоршнями, — это тристабильные буферы. С их помощью на шине устанавливают адреса и данные. Чаще всего вы просто посылаете данные в ЦП, как это было с вашим простым вводом данных с DIP-переключателя. Как и в случае фиксаторов, имеются варианты микросхем шириной 8 бит и более, с 20 и 24 выводами. Микросхемы могут иметь такие черты, как входной гистерезис (для подавления шума), инверсные выходы, разнесенные выводы, а также раздельные входы разрешения для двунаправленной передачи. Специальные двунаправленные буферы со входами направления и разрешения (вместо пары входов разрешения) называются приемопередатчиками; в табл. 8.5 перечислены их характеристики.

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



Рис. 11.23. Шинный приемопередатчик.


Часто можно найти микросхему средней степени интеграции с тристабильным выходным буфером и другими удобными для вас чертами; например, счетчик, фиксатор или даже АЦП/ЦАП с тристабильными выходами можно непосредственно подсоединить к микропроцессорной шине. В нашем примере так подключены АЦП//ЦАП. На рис. 11.24 показан другой пример буферизации шины: в некоторых микропроцессорах (например, 8086 и 8088) для экономии места функции выводов комбинируются, и на одни и те же выводы мультиплексируются и данные, и младшие разряды адреса.



Рис. 11.24. Мультиплектированная шина данных/адреса.


Выходной сигнал ALE (address latch enable, разрешение адресных фиксаторов) сопутствует правильному адресу и используется, как это показано на рисунке, для разрешения группы фиксаторов. Однако фиксировать данные нет необходимости, потому что стробирующие сигналы RD' и WR' действуют только когда сигналы данных имеют правильное значение. Обратите внимание на использование для буферизации двунаправленных линий данных приемопередатчика `245.


11.11. Периферийные БИС

Общие характеристики. Как уже упоминалось, БИС аппаратной поддержки микропроцессора обычно выполняются на базе КМОП- или nМОП- технологии и заключаются в корпуса с 28 или 40 выводами. Для таких БИС характерна высокая степень гибкости, причем их параметры часто допускают программную настройку. Обычно эти БИС предназначаются для определенных микропроцессоров, но фактически их универсальность позволяет использовать БИС одной фирмы с микропроцессором другой; так, мы объединили в нашей разработке календарь-часы фирмы Intersil и два порта фирмы Zilog с ЦП фирмы Motorola. Новые модели периферийных БИС обычно дороги (например, цена микросхемы 8530 составляет около 25 долл.), стоя иной раз больше, чем сам ЦП. Однако постепенно цена модели падает по экспоненциальному закону, что характерно для технологии интегральных схем (и, к сожалению, мало для чего еще в этом мире!). На рис. 8.87 был проиллюстрирован этот, видимо, универсальный закон «Кремниевой Долины» (расположенной на разломе Сан-Андреас между Сан-Франциско и Сан-Хосе).

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

Как использовать УСАПП. УСАПП представляет собой микросхему последовательного порта с микропроцессорным управлением, например Zilog 8530 в нашей разработке. Хороший УСАПП обеспечивает программное управление скоростью передачи, многообразие форматов кадра (число бит, контроль четности и проч.), универсальные синхронные режимы работы (по протоколам вроде HDLC и SDLC), выбор метода модуляции (без возвращения к нулю, частотный, манчестерский), восстановление тактовой синхронизации, контроль ошибок и т. д. Большинство УСАПП обеспечивает режим прерываний, а многие даже блочную передачу данных по каналу ПДП. Почти любое семейство ЦП имеет собственный УСАПП, хотя о совместимости разных УСАПП мало кто думает. Например, фирма IBM для работы с МП Intel 8088 на своих компьютерах PC выбрала УСАПП National 8250 вместо Intel 8251. Мы остановились на Zilog 8530 (он используется также в компьютере Макинтош) из-за его гибкости, доступности и цены, и именно с его помощью мы рассмотрим вопросы подключения и программирования УСАПП.

УСАПП чаще всего используются для пересылки данных на или из терминалов, модемов, устройств для получения твердых копий (принтеры, плоттеры), а также для непосредственной связи компьютеров в общем во всех случаях, когда основными требованиями являются универсальная совместимость и простота соединения. Обычно по линии с помощью биполярных уровней интерфейса RS-232 последовательно передаются коды ASCII, как это было описано в разд. 9.14 и 10.19. В таких простых системах связи УСАПП эксплуатируется в асинхронном режиме, когда каждый 8-битовый символ заключается между старт- и стоп-битами и передается в виде 10-битовой строки с одной из стандартных скоростей; для такого рода применений микросхема 8530 слишком хороша.

Микросхема 8530 выпускается в корпусе с 40 выводами (рис. 11.25); она взаимодействует с ЦП с помощью набора процессорных интерфейсных линий, а с внешним миром — одновременно и независимо с помощью набора коммуникационных интерфейсных линий.



Рис. 11.25. Сигналы «последовательного коммуникационного контроллера» (УСАПП) Zilog 8530.


Интерфейс с процессором. Для подключения к шине ЦП в микросхеме 8530 предусмотрены 8 двунаправленных линий данных, а для программно-управляемого ввода-вывода обычная пара стробирующих сигналов (RD', WR') и сигнал разрешения микросхемы (СЕ'). Вход А/В определяет, к какому из двух каналов УСАПП осуществляется обращение, а сигнал D/C' показывает, передаются ли данные (высокий уровень D/C') или информация управления/состояния (низкий уровень D/C').

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

Коммуникационный интерфейс. Каждый из двух каналов УСАПП (обозначаемых А и В) включает линии передачи и приема последовательных данных (TxD, RxD) вместе с линиями, обеспечивающими квитированное управление модемом (RTS, CTS и т. д.). Соответствующие этим линиям выводы можно обнаружить в разъеме на задней панели компьютера. Кроме этого, предусмотрены менее знакомые тактовые линии, используемые только для синхронной передачи (TRxC, RTxC). Наконец, УСАПП требуется внешний тактовый сигнал с частотой, в 32 раза превышающей наивысшую скорость передачи.

УСАПП не имеет никакого представления о биполярных уровнях интерфейса RS-232, поэтому на всех упомянутых линиях следует использовать драйверы и приемники уровней RS-232. В течение десятилетий в качестве интерфейсных микросхем для уровней RS-232 использовались классические модели биполярных счетверенных драйвера 1488 и приемника 1489; однако для нашего прибора мы выбрали КМОП-микросхему МАХ233 (сдвоенный драйвер/приемник), большим достоинством которой является наличие встроенных удвоителей напряжения и инверторов, что позволяет ограничиться единственным источником питания +5 В. Заметьте, что мы не связывались с линиями управления модемом (RTS, CTS, DSR, DTR); вообще их, как правило, игнорируют, используя вместо аппаратного программное квитирование (Ctrl-S, Ctrl-Q), включаемое в поток данных.

Программное обеспечение. Как уже отмечалось, режимы работы УСАПП устанавливаются командами программы. Байт, посылаемый в УСАПП в командном режиме (сигнал D/C' имеет низкий уровень), интерпретируется УСАПП, как команда управления и устанавливает рабочий режим. Таким образом можно определить вид передачи (синхронная или асинхронная), число стоп-бит, контроль четности или нечетности и т. д. Простые УСАПП вчерашнего дня имели всего один управляющий регистр и программировались легко; хитроумные микросхемы вроде 8530 содержат буквально десятки регистров и для программирования требуют квалификации доктора философии. К сожалению, такова цена, которую вы платите за исключительную гибкость мощных БИС аппаратной поддержки микропроцессора.

Для иллюстрации сказанного рассмотрим последовательность команд инициализации микросхемы 8530 для работы в следующем режиме: асинхронная последовательная передача по каналу А, скорость 1200 бод, 8 бит, без контроля четности, 1 стоп-бит; кроме того, мы запретим прерывания. Полная процедура инициализации длинна и утомительна; мы приведем программу целиком, однако во всей красе рассмотрим лишь один-два важнейших командных байта. В табл. 11.6 перечислены регистры записи и чтения микросхемы 8530, доступ к которым, как мы уже объясняли, осуществляется в два этапа: сначала передается номер регистра в качестве команды (D/C' в низком состоянии), а затем происходит запись в регистр (или чтение из него).


Таблица 11.6. Регистры микросхем Zilog 8530

Регистр · Функция

_____________________

Регистры чтения

RR0 · Состояние буферов приема-передачи и внешнее состояние

RR1 · Состояние условия специального приема

RR2 · Немодифицированный вектор прерывания (канал А); модифицированный вектор (канал В)

RR3 · Биты незавершенных прерываний

RR8 · Буфер приема

RR10 · Общее состояние

RR12 · Счетчик скорости пересылки (младший байт)

RR13 · Счетчик скорости пересылки (старший байт)

RR15 · Информация о прерывании, внешнее/состояние


Регистры записи

WR0 · Инициализация, указатели

WR1 · Прерывания и пересылка, определение режима

WR2 · Вектор прерывания

WR3 · Прием, параметры и управление

WR4 · Общие параметры и режимы

WR5 · Передача, параметры и управление

WR6 · Символы синхронизации или адресное поле SDLC

WR7 · Символ синхронизации или флаг SDLC

WR8 · Буфер передачи

WR9 · Управление и сброс прерывания ведущего

WR10 · Биты общего управления передачи/приема

WR11 · Управление режимом генератора

WR12 · Счетчик скорости пересылки (младший байт)

WR13 · Счетчик скорости пересылки (старший байт)

WR14 · Биты общего управления

WR15 · Управление прерыванием, внешнее/состояние


Для буферов передачи и приема (WR8 и RR8) двухэтапная процедура не приемлема, так как эти регистры используются при пересылке каждого байта; для них достаточно простых операций чтения или записи при D/C' в высоком состоянии. Точно так же, байт состояния буфера требует непосредственного доступа, поскольку чтение его флага обычно осуществляется при каждой пересылке байта данных; в микросхеме 8530 предусмотрено чтение RR0 с помощью простой операции чтения команды/состояния (D/C' в низком состоянии). Ниже мы рассмотрим все это подробнее на основе простых программ на языке ассемблера.

Каждый бит каждого регистра что-то означает. Например, на рис. 11.26 можно найти регистры WR3 и WR4, с помощью которых устанавливаются различные коммуникационные характеристики.




Рис. 11.26. Два регистра, используемые для инициализации микросхемы Zilog 8530.


В регистре WR3 к асинхронным операциям относятся только биты D0 разрешения приемника, D5 разрешения аппаратного квитирования (см. след. раздел) с помощью сигналов управления модемом CTS и DCD, а также два старших бита, определяющие число бит на символ. Остальные биты связаны с синхронными режимами, которые мы собираемся выключить соответствующим выбором D2-D3 в WR4. Таким образом, мы устанавливаем (D7, D6) = (1,1), D5 = 0 и D0 = 1, т. е. в WD3 мы посылаем шестнадцатеричный байт С1. С помощью WR4 мы задаем режим генератора x16 (минимальный делитель для асинхронных операций — УСАПП должен выполнять опрос сигнала каждого бита в его середине, поэтому частота входного генератора делается кратной частоте передачи), 1 стоп-бит на символ (используется всегда, за исключением устаревшего стандарта на телетайпную передачу со скоростью 110 бод), отсутствие контроля четности; получается шестнадцатеричный байт 44. Заметьте, что состояние битов D5-D4 не имеет значения, так как они управляют синхронной передачей; произвольно также состояние D1 (контроль четности или нечетности), если D0 (включение контроля) равен 0. Заметьте также, что установка 1 стоп-бита на символ (что имеет смысл только для асинхронного режима) автоматически выключает синхронный режим, а вместе с ним и все биты регистра управления, определяющие синхронные операции (например, D4-D1 в регистре WR3). Таким же образом можно управиться и с остальными управляющими регистрами. Это довольно скучная работа, в процессе которой легко допустить ошибки.

В табл. 11.7 приведены правильные, как мы надеемся, значения байтов (мы их тщательно проверили!).


Таблица 11.7. Инициализация последовательного порта 85301)

Регистр · Байт2) · Результат

________________________________ 

WR0 · (Указатель регистра) · Используется для доступа к WR1-WR15

WR1 · 00 · Запрет прерываний

WR2 · XX · Вектор прерываний (если разрешены)

WR3 · С1 · 8 бит, разрешение приема

WR4 · 44 · х15, 1 стоп-байт без контроля

WR5 · 68 · 8 бит, разрешение передачи

WR6 · XX · Символ синхронизации (только синхронный режим)

WR7 · XX · Символ синхронизации (только синхронный режим)

WR8 · (Буфер передачи) · Передаваемые данные (прямой доступ с D/C' = 1)

WR9 · СО · Сброс

WR10 · XX · Режимы синхронных операций

WR11 · 50 · Такты приема/передачи от генератора скорости пересылки

WR12 · 10210 · Делитель скорости пересылки - старший байт

WR13 · 00 · Делитель скорости пересылки - младший байт

WR14 · 03 · Разрешение генератора скорости пересылки

WR15 · XX · Режимы прерываний (если разрешены)

_____

1) Асинхронный режим, 1200 бод, 8 бит, без контроля четности.

2) XX-произвольное состояние; все числа шестнадцатеричные, кроме WR12. 


Обратите внимание на состояние XX (произвольное) для регистров, игнорируемых нами, в силу того, что мы не используем ни прерываний, ни синхронного режима. Регистр WR9 выполняет полный сброс микросхемы, который должен предшествовать любым другим командам. С помощью регистров WR12 и WR13 устанавливается 16-разрядное значение делителя частоты передачи, которое для микросхемы 8530 дается выражением частота передачи = fтакт/[2 (режим генератора) x (делитель + 2)]. Таким образом, при частоте генератора 4 МГц и режиме генератор x16 для скорости передачи 1200 бод получаем делитель 10210 (фактически скорость передачи составит 1201,92 бод, что весьма близко к заданному значению). При выбранной нами частоте генератора возможны все стандартные скорости передачи вплоть до 9600 бод (для этой скорости делитель должен быть равен 13).

Заметьте, что в вашем распоряжении все многочисленные режимы работы УСАПП, устанавливаемые соответствующими последовательностями инициализирующих управляющих байт. Микросхема 8530, как и все УСАПП, обеспечивает также синхронную коммуникацию в различных режимах со скоростями до 1 Мбит/с; это особенно полезно для пересылки данных между двумя процессорами. Для нашего прибора такой способ пересылки не имеет смысла в силу ограниченного объема оперативной памяти, однако он может оказаться полезным при подключении жесткого диска.

Обратите внимание на необходимость пересылки из ЦП в УСАПП правильной последовательности инициализирующих байт до того, как начнут передаваться какие-либо последовательные данные, как это было и в случае параллельного порта 8536; в нашем примере последовательный порт не использовался, так что мы опустили его инициализацию. Программа 11.4 дает понятие о процедуре инициализации. Сложность программы (включая декодирование таблиц с данными с целью определения управляющих байтов) — это цена, которую вы платите за исключительную гибкость БИС поддержки микропроцессора.



После того как с помощью управляющих регистров установлен режим работы УСАПП, можно передавать и принимать байты данных с помощью циклов ЦП записи и чтения при высоком уровне сигнала D/C'. С целью определения наличия нового, ожидающего приема в ЦП байта данных или возможности пересылки в УСАПП нового байта для его дальнейшей передачи следует опрашивать регистр состояния (при низком уровне D/C'), конкретно D0 в регистре RR0 в первом случае, и D2 в том же регистре во втором.

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



Учтите, что эти примеры, в которых используется программный ввод-вывод с проверкой состояния (см. разд. 10.06–10.08), иллюстрируют работу простейших программных драйверов. В них работа ЦП останавливается на время циклического опроса флага состояния. Использование механизма прерываний позволяет повысить эффективность работы ЦП; это особенно справедливо для операций ввода. Микросхема 8530 может возбуждать прерывания по любому указанному условию; от нее даже можно получить в качестве подтверждения выбранный вами 8-битовый вектор, если использовать линии подтверждения прерывания (IEI, IEO, INTACK). Все эти возможности реализуются с помощью управляющих байтов инициализации.

Микросхемы параллельного ввода-вывода (PIO). В состав нашего микропроцессорного прибора была включена многофункциональная микросхема параллельного порта (такого рода схемы часто объединяются с одним или несколькими таймерами). Использованная нами микросхема 8536 принадлежит тому же семейству, что и микросхема последовательного порта 8530 и использует схожие интерфейс с процессором и протокол настройки. Хорошие микросхемы параллельных портов позволяют программировать для каждого бита в отдельности направление передачи и режим (с фиксацией, с открытым стоком, с инверсией). Протокол передачи данных также можно запрограммировать; например, в микросхеме 8536 можно разрешить векторизуемые прерывания по любому сочетанию входных бит. Можно также выбрать один из четырех режимов квитирования (см. ниже).

Микросхемы РIO, как и все периферийные БИС, разрабатываются на базе nМОП- и КМОП-технологий, причем в новых разработках используется в основном последняя. С выходов таких схем можно снять, как правило, несколько мА, однако nМОП-схемы, в отличие от КМОП, обеспечивают лишь доли мА. Поэтому они обычно используются совместно с микросхемами мощных драйверов, позволяющих подключать к ним нагрузку, требующую значительных токов. Не пытайтесь подключать реле непосредственно к выходу микросхемы РIO (см. наши замечания относительно микросхем среднего уровня интеграции в разделе «Фиксаторы и D-регистры»).

На рис. 11.27 показан пример реальной схемы, конкретно для управления 6-разрядным дисплеем.



Рис. 11.27. Управление мультиплексированным дисплеем от РIO.


Конечно, вам придется написать программу для периодического вывода последовательных десятичных чисел, а также и «шагающего бита» через порт А, не забыв запретить прерывания на время вывода, чтобы предотвратить мерцание. Другой, более простой способ управления многоразрядным ЭЛД-дисплеем в микропроцессорной системе заключается в использовании чего-то вроде семейства «интеллектуальных дисплеев» фирмы Siemens-дисплейных секций, отображаемых на память, и выглядящих с точки зрения ЦП просто как участки памяти (см. рис. 9.24); поскольку такие дисплеи запоминают выводимые числа, запись в них требуется выполнять только при смене отображаемого числа.

Квитирование. Процедура квитирования требует некоторых пояснений. Представьте себя на месте внешнего устройства, посылающего байты данных в процессор через порт РIO. Вы хотите узнать, готов ли РIO принять следующий байт, т. е. извлечен ли процессором предыдущий байт. Для выполнения этой операции следует предусмотреть в РIO специальный выход «готов к приему данных» (ready for data, RFD), который сбрасывается РIO после получения от вас нового байта, и вновь устанавливается после того, как этот байт забирается центральным процессором. Другими словами, вы имеете право стробировать свои данные в любой момент, если только установлен RFD.

На рис. 11.28 показано, как реализуется это «взаимное квитирование», которое является одним из четырех режимов квитирования, предусмотренных в микросхеме 8536.



Рис. 11.28. Квитирование.


При вводе данных внешний источник может установить данные, но не устанавливает строб ACKIN' (такое название этого вывода придумала фирма Zilog!) до обнаружения установленного сигнала RFD. Устройство снимает строб (и может снять данные), обнаружив сброс RFD, затем снова ожидает установки RFD. При выводе данных процессы протекают аналогично. РIO устанавливает сначала данные, затем сигнал DAV' (data available, данные установлены). Внешнее устройство фиксирует данные, после чего устанавливает сигнал подтверждения ACKIN'. Это заставляет РIO сбросить и данные, и DAV'. Последнее воспринимается внешним устройством, как команда на сброс ACKIN', чем начинается новый цикл. Заметьте, что квитирование полностью взаимно, т. е. каждый участник передачи данных на каждом шаге ждет вершения своей части операции вторым соучастником. Такое полностью взаимное квитирование гарантирует отсутствие потерь данных. Иногда, однако, протокол можно упростить. В микросхеме 8536 предусмотрен режим «импульсного квитирования», в котором сигнал ACKIN' не обязан ожидать разрешения на сброс; в этом случае сигнал ACKIN' представляет собой импульс длительностью по меньшей мере 250 нc, возбуждаемый, когда установлены RFD или DAV', как было описано выше.

Легко сообразить, что режим квитирования выбирается в процессе инициализации посылкой тех же всеобъемлющих управляющих байтов. Если выбран один из режимов квитирования, все или некоторые из четырех линий порта С используются в качестве ACKIN', DAV' и RFD. Если вы не назначаете порту режим квитирования, линии порта С можно использовать, как обычные биты ввода-вывода, точно так же, как порты А и В.

Предупреждение: общий недостаток многих периферийных БИС, особенно с тактирующим входом, заключается в непомерно большом времени успокоения после каждой операции. Весьма показателен наш опыт работы с микросхемой 8530: при использовании МП 68000 на частоте 10 МГц пришлось между последовательными циклами вывода включить несколько команд NOP, потому что скорость, с которой ЦП мог посылать последовательные байты (интервал между байтами 0,8 мкc) была выше скорости их приема микросхемой 8530 (минимальное значение «допустимого времени восстановления после доступа» для 8530 составляет 1,7 мкс). Учтите также своеобразные требования к синхронизации процессорного интерфейса. Вспомним, что в нашем микропроцессорном приборе периферийные схемы Zilog требовали необычно большого времени предустановки адреса по отношению к фронту строба чтения (80 не), что заставило нас добавить схемы для генерации задержанного сигнала RD'. Эти особенности, с которыми вы не встретитесь при использовании простых цифровых схем среднего уровня интеграции, являются результатом необходимости тактирования внутренних состояний микросхемы, относительно низкой скорости работы КМОП-схем, или и того, и другого.

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

Аналого-цифровые и цифро-аналоговые преобразователи на микропроцессорной магистрали. Ввиду широкого внедрения устройств сбора данных с микропроцессорным управлением (в противоположность автономным приборам) новейшие модели АЦП и ЦАП стали разрабатываться с учетом возможности их подключения к микропроцессорной магистрали. Например, «микропроцессорно-совместимые» ЦАП имеют шины передачи входных данных шириной 1 байт и два входных буфера, так что вы можете зафиксировать 12-разрядную величину, поступающую по 8-разрядной шине, за два цикла записи; двойная буферизация обеспечивает одновременное поступление на вход преобразователя всех 12 разрядов преобразуемой величины, что уменьшает переходные выбросы на выходе. Аналогично этому микропроцессорно-совместимые АЦП комплектуются тристабильными выходными драйверами, организованными в группы шириной 8 бит. И АЦП, и ЦАП часто используют «магистрально-ориентированные» сигналы типа RD', WR' и CS'. Такие преобразователи можно непосредственно подключать к микропроцессорной магистрали, используя лишь незначительный объем «склеивающей» логики для декодирования адреса. Вам не приходится мучиться с обычными интерфейсными атрибутами вроде внешних фиксаторов и тристабильных драйверов. Можете вспомнить, как все просто выглядело в нашем приборе, включавшим и АЦП, и ЦАП.

Несколько примеров. Микросхема AD7537 фирмы Analog Devices представляет собой двухканальный 12-разрядный ЦАП с 8-битовой загрузкой (т. е. каждая 12-битовая величина загружается за два цикла магистрали, как 8 + 4), со средствами одновременного обновления двух 12-разрядных каналов с двойной буферизацией (рис. 11.29); вариант AD7547 снабжен входом, шириной 12 бит, предназначенным для 16-разрядных магистралей. Микросхема AD7572 той же фирмы — это 12-разрядный АЦП, не требующий «склеивающих» схем, с возможностью параллельного вывода шириной 8 или 12 бит через тристабильные драйверы; эту схему можно легко подключить к микропроцессорным магистралям шириной как 8, так и 16 бит. Некоторые преобразователи, совместимые с магистралями, даже позволяют задавать выравнивание слова, меньшего по ширине, чем магистраль, влево или вправо. Выбирая преобразователь для подключения к микропроцессорной магистрали, остерегайтесь устройств с замедленной синхронизацией процессорного интерфейса (что не имеет никакого отношения к скорости преобразования), которая может заставить вас предусматривать состояния ожидания, задержанные стробы и т. д. Например, микросхема AD558, во всех остальных отношениях превосходный автономный 8-разрядный АЦП, характеризуется минимальным временем упреждения данных по отношению к срезу сигнала WR' 200 нc, что требует, при использовании его с МП 68008, введения состояния ожидания.



Рис. 11.29. 12-разрядные двухканальные ЦАП (с любезного разрешения Analog Devices), а — микросхема 7537 с шириной загрузки 1 байт; б — микросхема 7547 с шириной загрузки 12 бит.


При подключении к микропроцессору любого АЦП с разрешением 12 бит и более подумайте об изоляции выходов микросхемы АЦП от системной магистрали с помощью буферов (или даже опторазвязок); в противном случае переходные процессы в цифровых цепях и наводки от микропроцессора могут легко ухудшить разрешение. При высоком разрешении (16 бит и более) может оказаться необходимым разместить преобразователь вне корпуса, содержащего цифровую электронику. В качестве примера возможных неприятностей мы можем описать наш опыт работы с промышленной платой 16-разрядного АЦП, предназначенного для IBM PC. Модуль преобразователя размещался прямо на плате, внутри компьютера. Мы скептически отнеслись к возможности достижения максимального 16-битового разрешения, и перед покупкой платы осведомились, какова будет реакция АЦП на приложение к его аналоговым входам постоянного напряжения. В отделе технической поддержки фирмы-изготовителя нас заверили, что колебания будут «не более двух соседних цифровых кодов». Фактически выходные показания метались в пределах семи соседних кодов, что снижало разрешение до 14 бит. По предложению фирмы мы принесли им плату для испытаний, которые лишь подтвердили проблему шума. Когда мы спросили «как же так?», нам сказали, что введший вас в заблуждение сотрудник уже у них не работает. Нам сообщили, что все их платы работают точно так же; и, добавляя оскорбления к ущербу, пригрозили взыскать с нас стоимость «обслуживания», состоявшего в испытаниях платы.


11.12. Запоминающие устройства

В обычном микрокомпьютере увеличить объем памяти несложно - вам лишь надо решить, сколько мегабайт стоит добавить, и к какому поставщику обратиться. Больше умственных усилий надо затратить при разработке прибора с микропроцессорным управлением, где распределение памяти является элементом проектирования, и где совместно используются блоки запоминающих устройств разных типов — энергонезависимые ПЗУ для хранения программ, а энергозависимые ОЗУ для временного размещения данных и стеков, а также как рабочее пространство программы. Энергонезависимые ПЗУ с «зашитыми» программами широко используются в микропроцессорных устройствах, чтобы избавиться от необходимости каждый раз при включении прибора загружать программу. В настоящем разделе мы рассмотрим различные виды памяти: статические и динамические ОЗУ (оперативные запоминающие устройства), РПЗУ (репрограммируемые постоянные запоминающие устройства), ЭРПЗУ (электрически стираемые репрограммируемые постоянные запоминающие устройства). Как только вы немного в них разберетесь, выбор уже не составит труда. Можете сразу обратиться к рис. 11.35, где мы свели воедино типы запоминающих устройств.

Статические и динамические ОЗУ. В статических ОЗУ биты хранятся в матрицах триггеров, в то время как в динамических ОЗУ-в заряженных конденсаторах. Бит, записанный в статическое ОЗУ, остается в нем до тех пор, пока не будет перезаписан, или пока не выключится источник питания. В динамическом ОЗУ данные, если их не «регенерировать», исчезнут менее чем через секунду. Другими словами, динамическое ОЗУ непрерывно забывает данные, и чтобы их сохранить, приходится периодически опрашивать «строки» двумерной матрицы битов в микросхеме памяти. Например, в ОЗУ объемом 256 кбит к каждому из 256 рядов приходится обращаться каждые 4 мс.

Вы можете задаться вопросом, кому же придет в голову выбирать динамическое ОЗУ? Дело в том, что обходясь без триггеров, динамическое ОЗУ занимает меньше места, в результате чего микросхема большей емкости оказывается дешевле. Например, популярное сегодня статическое ОЗУ емкостью 32Кх8 (256 кбит) стоит около 10 долл., в два раза больше нынешней цены динамического ОЗУ емкостью 1 Мбит. В результате, используя динамические ОЗУ, вы за половину стоимости будете иметь в 4 раза больше памяти.

Теперь, наверное, вы удивляетесь, кому же нужны статические ОЗУ (что-то вас кидает из стороны в сторону)? Основное достоинство статических ОЗУ заключается в их простоте. Отпадает необходимость в циклах регенерации, не нужно заботиться об их синхронизации (циклы регенерации конкурируют с обычными циклами обращения к памяти и должны поэтому жестко синхронизоваться). В простых системах с ограниченным числом микросхем памяти естественно использовать статические ОЗУ. К тому же большая часть нынешних статических ОЗУ используют КМОП-технологию, что существенно для приборов с батарейным питанием. Между прочим, статическое КМОП ОЗУ, автоматически переключаемое на батарейное питание при выключении основного (с помощью микросхемы управления питанием типа МАХ690), представляет неплохую альтернативу ПЗУ в качестве энергонезависимой памяти. Другим достоинством статических ОЗУ является их высокое быстродействие (выпускаются микросхемы с характерным временем 25 нc и менее), а также удобная компоновка секциями по 8 бит. Рассмотрим оба типа ОЗУ подетальнее.

Статические ОЗУ. Мы уже столкнулись со статическим ОЗУ в нашей микропроцессорной разработке, где одно такое ОЗУ емкостью 32Кх8 использовалось для размещения данных, стека и рабочей области (программа была записана в РПЗУ). Организовать обмен данными со статическим ОЗУ проще простого: в цикле чтения вы устанавливаете сигналы адреса, выбора микросхемы (CS') и разрешения выхода (OE'); запрошенные данные появляются на тристабильных линиях данных спустя максимум taa (адресное время доступа). В цикле записи вы устанавливаете сигналы адреса, данных и CS', а затем (спустя время упреждения адреса tas) импульс разрешения записи (WE'); достоверные данные записываются в конце импульса WE'. Действующие временные ограничения для 120 нс статического ОЗУ показаны на рис. 11.30, из которого видно, что «быстродействие» памяти — это время от установки достоверного адреса до достоверных данных (при чтении) или до завершения цикла записи (при записи). Для статических ОЗУ интервал времени между последовательными обращениями к памяти («длительность цикла») равен времени доступа; для динамических ОЗУ, как будет показано ниже, это не так.



Рис. 11.30. Синхронизация статического ОЗУ с быстродействием 120 нc. а — цикл чтения, б — цикл записи.


Микросхемы статических ОЗУ могут иметь емкость от 1 Кбит (или меньше) до 1 Мбит при ширине 1, 4 или 8 бит. Быстродействие (время доступа) колеблется от 150 до 10 нc или около того. В настоящее время широко используются недорогие статические КМОП ОЗУ емкостью 8Кx8 и 32Кx8 с временем доступа 80 нc, а также меньше по емкости, но более быстродействующие (< 3 нc) статические КМОП ОЗУ для кеш-памяти. Варианты микросхем могут иметь отдельные выводы для входов и выходов, два порта доступа и то или иное внешнее оформление (например, однорядный корпус SIP). Может быть это и существенно, однако заметьте, что вам не надо заботиться, чтобы линии данных ЦП подключались обязательно к одноименным выводам микросхемы памяти — ведь независимо от порядка соединения вы при чтении всегда получите то же, что записали! Это замечание справедливо и для адресов. Однако не пытайтесь так поступить с ПЗУ.

Упражнение 11.18. А почему?


Динамические ОЗУ. По сравнению со статическими ОЗУ динамические ОЗУ — это сплошная мигрень. На рис. 11.31 показан нормальный цикл. Адрес (содержащий, например, для ОЗУ объемом 1 Мбайт 20 бит) расщепляется на две группы и мультиплексируется на вдвое меньшее число выводов, сначала «адрес строки», стробируемый сигналом RAS' (Row Address Strobe — строб адреса строки), а затем «адрес колонки», стробируемый сигналом CAS' (Column Address Strobe — строб адреса колонки).



Рис. 11.31. Циклы чтения и записи динамического ОЗУ (Motorola, 120 нc).


Данные записываются (или читаются в соответствии с состоянием входа направления R/W') вслед за установкой CAS'. Перед началом следующего цикла памяти должно пройти некоторое время «выдержки RAS», поэтому длительность цикла больше времени доступа; например, динамическое ОЗУ может иметь время доступа 100 нc и длительность цикла 200 нc. Цикл регенерации выглядит так же, но без сигнала СAS'. Вообще-то обычные обращения к памяти отлично ее регенерируют, если только вы можете гарантировать обращения со всеми возможными адресами строк!

Динамические ОЗУ, как и статические, выпускаются с шириной данных 1, 4 и 8 бит, емкостью от 64 Кбит до 4 Мбит и с быстродействием приблизительно от 70 до 150 нc. Наиболее популярны большие 1-битовые микросхемы, что вполне объяснимо: если вам нужна большая матрица памяти, скажем объемом 4 Мбайт и шириной 16 бит, и имеются в наличии ОЗУ емкостью 1 Мбит с организацией 1Мx1 и 128Кx8, имеет смысл использовать 1-битовые микросхемы, потому что (а) каждая линия данных будет подключена только к двум микросхемам (а не к 16), что существенно уменьшит емкостную нагрузку, и (б) эти микросхемы занимают меньше места, потому что меньшее число выводов данных более чем компенсирует дополнительные адресные выводы. Кроме того, 1-битовые микросхемы, как правило, дешевле. Приведенные рассуждения справедливы, если вы строите большую память, и не относятся, например, к нашему простому микропроцессору с памятью 32Кx8. Заметьте, однако, что улучшенная технология упаковки микросхем с высокой плотностью ("ZIP" и "SIMM") уменьшает важность минимизации числа выводов.

Существует ряд способов генерации последовательности мультиплексированных адресов и сигналов RAS, CAS и R/W', требуемой для управления динамическим ОЗУ. Поскольку это ОЗУ всегда подключается к микропроцессорной магистрали, вы начинаете работу с ним, обнаружив сигнал AS' (или эквивалентный ему), говорящий о том, что установлен правильный адрес из пространства динамического ОЗУ (о чем свидетельствуют старшие адресные линии). Традиционный метод заключается в использовании дискретных компонент средней степени интеграции для мультиплексирования адреса (несколько 2-канальных 2-входовых мультиплексоров `257) и генерации сигналов RAS, CAS, а также сигналов управления мультиплексором. Требуемая последовательность создается с помощью сдвигового регистра, тактируемого с частотой, кратной тактовой частоте микропроцессора или, что лучше, с помощью линии задержки с отводами. Для организации периодических циклов регенерации (только RAS) вам потребуется еще несколько логических схем и счетчик, отсчитывающий последовательные адреса строк. На все это уйдет около 10 корпусов.

Привлекательным способом, альтернативным «дискретным» схемам управления динамическим ОЗУ, является использование ПЛМ, причем для генерации всех необходимых сигналов достаточно одной-двух микросхем. Еще проще взять специальную микросхему «поддержки динамического ОЗУ», например, АМ2968. Такого рода микросхемы берут на себя не только мультиплексирование адресов и образование сигналов RAS/CAS, но также и арбитрацию регенерации вместе с образованием адресов строк; более того, они даже включают мощные драйверы и демпфирующие резисторы, которые нужны для подключения больших матриц микросхем памяти, как это будет объяснено ниже. К таким контроллерам динамических ОЗУ обычно прилагаются дополнительные микросхемы для синхронизации, а также обнаружения и коррекции ошибок; в результате небольшой набор микросхем полностью решает проблему включения динамического ОЗУ в вашу разработку.

Впрочем, почти полностью! Основные неприятности с динамическими ОЗУ начинаются, когда вы пытаетесь освободиться от наводок на всех этих стробирующих и адресных магистральных линиях. Суть проблемы заключается в том, что несколько десятков корпусов МОП-схем оказываются разбросанными на большой площади системной платы, причем ко всем корпусам подходят управляющие и адресные шины. Для подключения к ним нескольких десятков микросхем требуются мощные выходные каскады Шоттки; однако большая длина линий и распределенная входная емкость в сочетании с крутыми фронтами выходных каскадов приводят к появлению «звона» большой амплитуды. Часто можно увидеть на адресных линиях ОЗУ отрицательные выбросы до —2 В! Типичным средством борьбы (не всегда полностью успешной) является включение на выходе каждого драйвера последовательных демпфирующих резисторов с сопротивлением около 33 Ом.

Другая проблема заключается в огромных переходных токах, часто достигающих величины 100 мА на линию. Представьте себе микросхему 8-разрядного драйвера, у которого большинство выходов случайно переключаются в одном направлении, например, с высокого уровня на низкий. Это приводит к переходному току величиной около 1 А, который на некоторое время повышает потенциал нулевого вывода, а вместе с ним и всех выходов, которые должны были иметь низкий уровень. Отмеченная проблема отнюдь не носит академического характера — однажды мы наблюдали сбои в работе памяти как раз из-за таких переходных токов на нулевом выводе, образующихся из-за выбросов токов CAS-драйвера. При этом наводки, проходящие в RAS-драйверы той же микросхемы, оказывались достаточными для завершения цикла памяти!

Дополнительным источником наводок в динамических ОЗУ являются большие переходные токи, образованные микросхемами в целом, причем наиболее честные разработчики даже включают сведения об этом явлении в свои технические материалы (рис. 11.32).



Рис. 11.32. Переходные токи динамического ОЗУ.


Обычным средством борьбы является установка шунтирующих конденсаторов, подключенных к нулевой линии с малой индуктивностью; считается разумным шунтировать каждую микросхему керамическим конденсатором с емкостью 0,1 мкФ. Мы пришли к выводу, что логические драйверы 74F с внешними резисторами хорошо работают с динамическим ОЗУ, как и специальные драйверы типа Аm2966, которые включают интегральные демпфирующие резисторы. Контроллер динамического ОЗУ Аm2968, упоминавшийся выше, по заверениям разработчиков может обслуживать до 88 микросхем памяти без внешних компонент, давая при этом отрицательные выбросы не более —0,5 В. Даже более важным, нежели выбор конкретного драйвера, является использование нулевых линий с низкой индуктивностью и частого шунтирования U+. Двухсторонние платы с узкими линиями заземления неминуемо приведут к неприятностям; макетные платы с накруткой проводов обычно немногим лучше.

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

Постоянные запоминающие устройства (ПЗУ). ПЗУ относятся к памяти, неразрушаемой при выключении питания (энергонезависимой), и нужда в них возникает практически в любой компьютерной системе. К примеру, в микрокомпьютерах необходимо иметь по крайней мере небольшое ПЗУ для хранения последовательности команд начальной загрузки, которая включает не только строки выделения стека и инициализации портов и прерываний, но также и команды, обеспечивающие чтение операционной системы с диска. Когда ваш персональный компьютер выполняет тестирование памяти и затем загружает DOS, он выполняет приказы некоторого ПЗУ. Кроме того, для микрокомпьютера типично хранение в ПЗУ некоторой части операционной системы (обычно наиболее аппаратно-зависимых модулей); эта часть называется «базовой системой ввода-вывода» (basic I/O system, BIOS) и обеспечивает стандартный механизм для обращения операционной системы к конкретным портам.

ПЗУ широко используются для хранения различных таблиц, например, для генератора символов, отображаемых на экране дисплея. В предельном случае вообще вся операционная система, включая даже компиляторы и графические программы, может размещаться в ПЗУ. Например, в микрокомпьютере Macintosh значительная часть системного программного обеспечения записана в ПЗУ, и почти все 256 Кбайт ОЗУ отдаются пользователю. Однако такой «ПЗУ-ориентированный» подход используется в микрокомпьютерах относительно редко ввиду его негибкости; заметьте, однако, что исправление ошибок и умеренные усовершенствования программного обеспечения могут осуществляться с помощью заплат, размещаемых в ОЗУ.

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

РПЗУ. Стираемые программируемые постоянные запоминающие устройства выполняются в виде больших микросхем с кварцевым окном. Это, несомненно, самый популярный тип энергонезависимой памяти для компьютеров. РПЗУ используют КМОП- и МОП-технологию и состоят из больших матриц полевых и МОП-транзисторов с плавающим затвором, которые можно зарядить с помощью «лавинной инжекции» — процесса пробоя слоя, изолирующего затвор, при приложении напряжения свыше 20 В. Данные хранятся в РПЗУ неограниченно долго в виде ничтожного заряда (около 106 электронов) изолированных «погребенных» затворов, которые можно рассматривать как конденсаторы с постоянной времени порядка столетий. Чтобы прочитать состояние отдельного конденсатора, ему надо выступить в качестве затвора канала полевого МОП-транзистора. Поскольку затвор электрически недоступен, стереть заряд можно лишь облучая микросхему интенсивным потоком ультрафиолетовых лучей в течение 10–30 мин, отчего запасенный заряд стекает за счет явления фотопроводимости. В результате отдельные байты РПЗУ выборочно стереть нельзя.

В первом издании этой книги мы упоминали «классическую» микросхему 2716, РПЗУ 2Кx8, стоившую 25 долл. Теперь она стала такой классической, что ее уже нигде не достанешь! Типичные РПЗУ нашего времени имеют емкость от 8Кx8 до 128Кx8 и цену несколько долларов. Время доступа обычно составляет 150–300 нc, хотя такие компании, как Cypress, предлагают ПЗУ небольшого объема с быстродействием 25 нc. Чтобы запрограммировать РПЗУ, к нему надо просто приложить повышенное напряжение (обычно 12,5 или 21 В), устанавливая при этом требуемые значения байтов.

Исходные алгоритмы требовали 50 мс на программирование каждого байта (что дает 100 с для микросхемы 2716, но для РПЗУ умеренного объема 32Кx8 превращается в полчаса). Выпуск больших ПЗУ потребовал от разработчиков изобретения более совершенных алгоритмов, в которых каждый байт программируется последовательностью импульсов длительностью 1 мс, причем после каждой записи делается попытка чтения; когда байт считывается правильно, выполняется окончательная запись, равная по длительности утроенной сумме всех предыдущих. Большая часть байтов программируется первым же импульсом, в результате на каждый байт тратится около 4 мс, а на все ПЗУ объемом 32Кx8 — 2 мин.

РПЗУ очень удобны при разработке опытных образцов, так как после стирания их можно использовать повторно. Они также применяются при выпуске небольших партий приборов. В продаже имеются более дешевые варианты РПЗУ без кварцевого окна, иногда называемые «РПЗУ однократного программирования». Хотя эти микросхемы не следовало бы называть РПЗУ, инженеры не желают изменять привычное название. Консервативные производители РПЗУ гарантируют сохранение в них информации в течение лишь 10 лет. Эта величина предполагает наихудшие условия (в частности, высокую температуру, которая приводит к утечке заряда); в действительности РПЗУ, похоже, не теряют данные, если только вам не попалась дефектная партия.

Для РПЗУ характерно ограниченное число циклов репрограммирования, т. е. стирания и программирования заново. Производители неохотно называют это число, хотя вы можете считать, что микросхема заметно ухудшит свои характеристики лишь после 100 или около того циклов стирания / программирования.

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

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



Рис. 11.33. Микроконтроллер с РПЗУ. а — 8-разрядный микроконтроллер с контактами для установки РПЗУ; б — 8-разрядный микроконтроллер со встроенным РПЗУ.


Это дает возможность при разработке прибора использовать вариант с РПЗУ (или внешним ПЗУ), куда можно записать программу, при подготовке же партии приборов обратиться к более дешевым контроллерам с масочным программированием. Другим типом ПЗУ с однократным программированием являются ПЗУ с плавкими перемычками. При выпуске в них все биты установлены, и для сброса требуемых бит ПЗУ надо подвергнуть действию электрического тока. В качестве типичного примера можно привести микросхему Harris НМ6617, КМОП ППЗУ (программируемое постоянное запоминающее устройство) объемом 2Кx8. ППЗУ с плавкими перемычками выпускаются также на базе биполярной (ТТЛ) технологии.

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

Первые ЭРПЗУ требовали повышенных напряжений и длительной процедуры программирования. Современные микросхемы используют одно напряжение питания +5 В и работают практически так же, как и статические ОЗУ-другими словами, вы можете репрограммировать любой байт с помощью одного цикла записи на магистрали. В микросхеме ЭРПЗУ предусмотрены внутренние цепи для генерации повышенного программирующего напряжения, а внутренняя логика фиксирует данные и генерирует программирующую последовательность длительностью несколько миллисекунд, в которой на время процесса устанавливается флаг BUSY' или в цикле чтения образуются инвертированные данные, чтобы показать, что идет процесс записи. Некоторые ЭРПЗУ реализуют оба этих протокола, обычно называемые "RDY-BUSY" и "DATA'-опрос". Сопряжение с этими ПЗУ осуществляется просто - достаточно подключить их так же, как обычные ОЗУ и использовать линию BUSY' для возбуждения прерываний (либо считывать состояние BUSY' или данных, и использовать его как флаг состояния) (см. рис. 11.34).



Рис. 11.34. ЭРПЗУ.


Протокол DATA' — опроса удобен тем, что ЭРПЗУ можно вставить в стандартный разъем для ОЗУ без каких-либо схемных изменений (разумеется, в ваши программы придется включить строки анализа считываемых назад данных и ожидания их совпадения с тем, что вы записываете). Поскольку запись в ЭРПЗУ выполняется относительно редко, фактически в прерываниях по линии RDY/BUSY' необходимости не возникает.

КМОП ЭРПЗУ выпускаются в виде микросхем с емкостью 2Кx8, 8Кx8 и 32Кx8 по цене примерно 10–50 долл. Время доступа (200–300 нc) и время программирования (2 мс/байт при использовании внутреннего усовершенствования алгоритма) сравнимы с показателями стандартного РПЗУ. ЭРПЗУ, как и РПЗУ, допускают ограниченное число циклов чтения/записи. Хотя производители избегают называть конкретные цифры, можно встретить упоминание о 100000 циклах чтения/записи при 25 °C.

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

Имеются два любопытных варианта ЭРПЗУ. Фирмы National, Xicor и др. выпускают маленькие микросхемы ЭРПЗУ в мини-DIP-кopпycax с 8 выводами. Емкость этих схем может составлять от 16x16 до 2Кx8 бит; они работают в режиме последовательного доступа и оснащаются тактовым входом и единственной линией данных. Эти микросхемы трудно использовать без микропроцессора; однако в приборах с микропроцессорным управлением они очень удобны для хранения небольшого количества установочных параметров и проч. Та же фирма Xicor выпускает «электрически стираемый потенциометр (ЕЕРОТ)», остроумное применение электрически стираемой памяти, в которой хранится положение «цифрового контакта». В эту микросхему встроена цепочка из 99 равных по величине резисторов, причем положение отвода от них, устанавливаемое программно, сохраняется в энергонезависимой памяти, входящей в ту же микросхему. Нетрудно представить себе прикладные задачи, в которых желательна автоматическая или дистанционная калибровка некоторого инструмента без механической настройки ручек управления.

Недавно появившаяся модификация ЭРПЗУ, называемая моментальной (flash), сочетает высокую плотность РПЗУ с репрограммированием в рабочей схеме, присущим ЭРПЗУ. Однако моментальные РПЗУ, как правило, не позволяют стирать отдельные байты, как это можно делать с обычными ЭРПЗУ. Так, моментальное ЭРПЗУ Intel допускает только полное стирание (как и РПЗУ), в то время как в микросхеме фирмы Seeq предусмотрено стирание либо посекторное (512 байт), либо целиком. Далее, большинство доступных сейчас моментальных ЭРПЗУ требуют дополнительного отключаемого источника питания +12 В на время стирания/записи, что является слишком дорогой ценой, если вспомнить, что обычные ЭРПЗУ питаются от единственного источника +5 В. Моментальные ЭРПЗУ могут выдерживать от 100 до 10000 программных циклов. Технология производства ППЗУ продолжает развиваться, и мы с любопытством ожидаем, что она нам еще преподнесет; ждите и вы!

Энергонезависимые ОЗУ. РПЗУ удобны для применения в качестве энергонезависимых ПЗУ, однако часто возникает необходимость иметь энергонезависимую оперативную память. Для этого можно использовать ЭРПЗУ, однако для них характерен очень длинный (10 мс) цикл записи (и ограниченное число циклов чтения/записи). Имеются две возможности достичь характерного для ОЗУ времени чтения/записи (100 нc) при неограниченном числе циклов чтения/записи: использовать либо статическое КМОП ОЗУ с резервным батарейным питанием, либо необычную микросхему "NOVRAM" фирмы Xicor, в которой объединены статическое ОЗУ и ЭРПЗУ.

Ранее уже обсуждался вопрос о резервном батарейном питании ОЗУ, которое убивает двух зайцев разом: низкая цена и высокая скорость чтения/записи ОЗУ сочетаются с энергонезависимостью ПЗУ. Разумеется, в этом случае следует использовать КМОП ОЗУ с известным значением критического тока. Некоторые фирмы выпускают «энергонезависимые ОЗУ», размещая в обычном DIP-корпусе вместе с микросхемой КМОП ПЗУ литиевую батарейку и логические схемы переключения питания. В качестве примера можно указать микросхемы фирмы Dallas Semiconductor DS1225 (8Кx8) и DS1230 (32Кx8); эта фирма также выпускает линейку «интеллектуальных разъемов», содержащих батарейку и логические схемы, с помощью которых обычные ОЗУ как по мановению волшебной палочки становятся энергонезависимыми. Учтите, что образованное таким образом энергонезависимое ОЗУ, строго говоря, не бессмертно; срок службы батарейки, а следовательно, и данных, около 10 лет. Как и для обычного статического ОЗУ, здесь нет ограничений на выдерживаемое памятью число циклов чтения/записи.

NO VRAM (NOnVolatile RAM-энергонезависимое ОЗУ) фирмы Xicor сочетает обычное статическое ОЗУ с «теневым» ЭРПЗУ в том же кристалле. Входной сигнал STORE' переносит содержимое ОЗУ в ЭРПЗУ при полной длительности цикла записи 10 мс; извлекаются данные быстрее, за время около 1 мкс. При наличии микросхемы контроля питающих напряжений из серии МАХ690 вы заблаговременно получаете предупреждение и можете сохранить содержимое ОЗУ еще до того, как напряжение +5 В упадет до критического значения. Объявлено, что NO VRAM выдерживают 10000 операций сохранения и, подобно обычным ОЗУ, неограниченное число операций чтения/записи в ОЗУ.

Если сравнивать два описанных варианта энергонезависимых ОЗУ, то вариант с резервной батарейкой представляется в общем предпочтительным, поскольку позволяет использовать любое наличное ОЗУ, если только в нем предусмотрен режим отключения при нулевом токе. Это значит, что вы можете использовать большие ОЗУ последних выпусков, а также, например, выбрать наиболее быстродействующие ОЗУ, если это для вас важно. Хотя батарейки имеют конечный срок эксплуатации, для большинства приложений он достаточен. Для кратковременного (сутки или менее) хранения информации вы можете заменить литиевую батарейку двухслойным конденсатором большой емкости; такие конденсаторы в очень маленьких корпусах с емкостью до фарады и более предлагаются фирмами Panasonic, Sohio и др.

Запоминающие устройства: общая сводка. Рис. 11.35 подытоживает важнейшие характеристики различных типов ЗУ.



Рис. 11.35. Типы запоминающих устройств.


Из показанных на рисунке мы рекомендуем динамические ОЗУ шириной 1 бит для больших матриц памяти с возможностью чтения и записи, статические ОЗУ шириной 1 байт для небольших матриц памяти микропроцессорных систем, РПЗУ для хранения программ и параметров, не требующих перезаписи, и либо ЭРПЗУ (если длительность процесса записи не имеет значения), либо статические ОЗУ с резервным батарейным питанием (для достижения максимального быстродействия по чтению/записи) для энергонезависимого хранения модифицируемых данных.


11.13. Другие микропроцессоры

Как и любой дарвиновский процесс, эволюция микропроцессоров протекала в нескольких расходящихся направлениях. В борьбе за выживание менее приспособленным угрожает опасность вымирания. Примером различающихся эволюционных путей являются процессоры с отдельными командами ввода-вывода и с «вводом-выводом, отображаемым на память». В последнем случае регистры периферийных устройств выглядят просто как ячейки памяти (представителем первого направления является МП 8086, второго - МП 68000)[2]. Далее, можно выделить машины, использующие для большинства арифметических операций не регистры, а память. Другая альтернатива в конструировании микропроцессоров касается использования выводов микросхемы: в некоторых ЦП выводы являются многофункциональными, что позволяет повысить гибкость микросхемы. Различаться могут размеры слов (4, 8, 16 или 32 бит) и стеков, а также элегантность (или полнота) системы команд. Каждое семейство микропроцессоров имеет собственный язык ассемблера (вечный камень преткновения для начинающих). Микропроцессоры обычно выполняются по КМОП-технологии, но можно найти и такие, которые используют nМОП-технологию или биполярную логику.

Еще большие различия можно обнаружить у микропроцессоров, предназначенных для решения разных задач. С одной стороны, имеются «однокристальные» процессоры со встроенными ОЗУ и ПЗУ, параллельными портами, УСАПП, таймерами и даже аналого-цифровыми преобразователями. Другая крайность представлена мощными 32-разрядными ЦП 80486, 68040 и АМ29000, которые перекрывают вычислительные возможности больших компьютеров, но для полной реализации своих совершенных качеств требуют обширного аппаратного и программного обеспечения. Микросхемы повышенной степени интеграции занимают золотую середину; например, микросхема Н16 представляет собой комбинацию в одном кристалле ЦП 68000 с двумя УСАПП, таймерами и каналами прямого доступа.

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


11.14. Эмуляторы, системы проектирования, логические анализаторы и макетные платы

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

«Прожги и ломай». Это красочное название описывает простейший способ разработки программы для микропроцессорной аппаратуры. Заключается он в следующем. Сначала с помощью ассемблера или компилятора на компьютере общего назначения (возможно вашей настольной машине) вы получаете коды выполнимой программы, которые можно записать в РПЗУ. Если процессор-мишень, т. е. микропроцессор разрабатываемого прибора отличается от процессора использованного компьютера, вам понадобится «кросс-ассемблер»; в противном случае можно воспользоваться «родным» ассемблером компьютера. Теперь можете запрограммировать РПЗУ (это «прожги») и испытать программу в вашем приборе (это «ломай»). Дальнейшая отладка заключается в обнаружении неправильностей, вызванных ошибками в программе (или в аппаратуре), исправлении программы или включении в нее диагностических тестов, и повторных испытаниях. Поиск ошибок — широкое поле для остроумных приемов. Например, вставив в отлаживаемую программу соответствующие строки, вы можете использовать ЭЛД-индикаторы или другие порты в диагностических целях, выводя информацию о том, что происходит в программе. Не забывайте и о традиционных инструментах мира электроники — логическом пробнике, осциллографе, а также (в минуту отчаяния) о логическом анализаторе (см. ниже).

Заменители ПЗУ. Методика «прожги и ломай», описанная выше, является медленной процедурой. Хотя иногда она адекватна стоящей перед вами задаче, вам, скорее всего, быстро надоест повторение одних и тех же операций стирания РПЗУ под ультрафиолетовой лампой и программирования его в программаторе. Можно предложить способы ускорения этой процедуры: (а) Вместо РПЗУ используйте ЭРПЗУ. Программируются они не быстрее, но зато не надо тратить столько времени на стирание, (б) Используйте на время разработки не РПЗУ, а КМОП ОЗУ с резервным батарейным питанием (энергонезависимое). Эти микросхемы столь же быстры, как и обычные ОЗУ (т. е. «программируются» мгновенно) и имеют выводы, совместимые с РПЗУ, так что их можно вставлять в панельку разрабатываемого вами прибора, предназначенного для установки ПЗУ с программой. ОЗУ с резервным батарейным питанием поставляют многие фирмы (Dallas, Thomson-Mostek и др.); можно их сделать и самим, (в) Используйте «эмулятор ПЗУ». Это небольшая коробочка с кабелем и 28-контактным разъемом DIP на конце. Разъем вставляется в панельку для РПЗУ в вашем приборе, и коробочка эмулирует ПЗУ. Фактически, однако, она содержит двухпортовое ОЗУ, которое вы загружаете из вашего компьютера через последовательный порт. Использование эмулятора ПЗУ обеспечивает максимальную скорость отладки; так как для изменения программы вам не надо каждый раз вынимать и вставлять микросхемы памяти — вы просто загружаете новую программу в эмулятор, который остается включенным в налаживаемый прибор. Эмуляторы ПЗУ выпускаются под названиями "Memulator" или "Romulator" (последний поставляется фирмой Onset Computer Corp., Норт-Фалмут, Миннесота).

ПЗУ-монитор. Если в вашем приборе имеется последовательный порт, можно упростить процедуру разработки программного обеспечения, запрограммировав небольшое РПЗУ — «монитор», задачей которого является не управление прибором, а лишь обеспечение связи между памятью и портом. Простейший монитор позволяет загрузить в ОЗУ программу и запустить ее выполнение. Это заметно ускоряет разработку программного обеспечения, потому что пробные программы можно загружать в ОЗУ прибора непосредственно из компьютера. Не составляет особого труда расширить функции монитора, например, чтобы он мог считывать содержимое указанных ячеек ОЗУ. С таким добавлением пробные программы получают возможность сообщать о том, что происходит, например, путем засылки чисел в определенные ячейки ОЗУ перед возвратом управления монитору (через который компьютер может проанализировать содержимое этих ячеек). Такой монитор позволяет включить в пробную программу «программные точки останова», в которых содержимое требуемых регистров или ячеек памяти копируется в неиспользуемую область ОЗУ, откуда затем считывается через монитор в компьютер. ПЗУ-монитор заметно сокращает длительность разработки, так как помогает вам быстро находить причину неправильной работы программы.

Аппаратный эмулятор. Способ «прожги и ломай», как и его усовершенствования, описанные выше, часто позволяют решить поставленную задачу. Однако этот способ не идеален. Во-первых, он требует использования дополнительных ресурсов, таких, как последовательный порт. Во-вторых, и это более важно, он не обеспечивает обнаружения ошибочных операций на аппаратном уровне. Чтобы понять это последнее утверждение, представьте себе, что в вашем приборе возникает отказ, потому что он неправильно пытается записывать в РПЗУ. Это вы уже поняли, однако дальше дело застопорилось, так как трудно с помощью программной точки останова локализовать ошибку, обнаруживаемую только аппаратно. В нашем примере ошибка могла заключаться в затирании содержимого регистра. Это весьма неприятная ошибка: сбой происходит спустя значительное время после инициировавшего затирание события, и понять, в чем дело, изучая текст программы, нельзя. В таких случаях вам требуется поставить «аппаратную точку останова».

Решение лежит в использовании аппаратного эмулятора. Это коробка (или вставляемая плата) с аппаратными средствами, эмулирующая на этот раз микропроцессор вашего прибора. Она подсоединяется к налаживаемому прибору посредством кабеля, имеющего на конце разъем, имитирующий ЦП. Аппаратный эмулятор может выполнять как программу, находящуюся в памяти налаживаемого прибора (РПЗУ или ОЗУ), так и программу, загружаемую вами в эмулятор. В любом случае эмулятор осведомлен обо всем, что происходит в ЦП; он может следить за содержимым регистров, а также устанавливать аппаратные точки останова. Например, для решения нашей гипотетической проблемы можно потребовать от эмулятора, чтобы он фиксировал циклы записи в адресное пространство, занимаемое РПЗУ, и выдавал дамп регистров и листинг последних 100 команд, выполнявшихся перед неправильной записью в РПЗУ.

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

Системы разработки. «Система разработки» — это обобщенный термин для комбинации кросс-ассемблера, программатора РПЗУ и аппаратного эмулятора. Традиционно такие средства выпускались в виде внушительных автономных систем, однако в настоящее время большую популярность завоевывают вставные платы, использующие компьютер в качестве вычислительной базы, и, возможно, управляющие внешним блоком, содержащим дополнительные схемы. Как бы они не выглядели, вам необходимо приобрести такого рода систему, если вы специализируетесь на разработке микропроцессорных устройств, ориентированных на конкретный микропроцессор. Обычно системы разработки предлагаются фирмами, выпускающими микропроцессорные семейства. Некоторые фирмы, кроме того, изготавливают «универсальные эмуляторы», в которые можно вставлять платы с микропроцессорами разных типов. Системы разработки выпускаются, в частности, фирмами Hewlett-Packard, Tektronix, Microcosm, Applied Microsystems.

Логические анализаторы. Логические анализаторы можно назвать «супер-осциллографами» для разработки цифровой аппаратуры. Логический анализатор выступал в качестве главного действующего лица в книге Трейси Киддера «Душа новой машины». Эти замечательные устройства выглядят, как странные осциллографы, но в действительности включают в себя десятки каналов, большие объемы памяти, сложную логику «распознавания слов», а также средства деассемблирования выполняемых команд и представления их на экране. Логический анализатор может работать в двух режимах: анализа состояний и временного анализа. Вот как вы их должны использовать.

Анализ состояний. В этом режиме на вход статического анализатора подается синхронизирующий тактовый сигнал от вашей схемы (обычно тактовый сигнал ЦП), а сонм выводов (торчащих из анализатора) подключается к линиям данных и адреса, а также к другим интересующим вас сигналам. Хороший логический анализатор обслуживает 60–80 каналов при тактовой частоте до 25 МГц или больше. Затем вы устанавливаете сигнал запуска так, чтобы зафиксировать интересующее вас программное событие. Обычно в анализаторе имеется несколько регистров распознавания слов, в которые вы можете вводить любую последовательность 0,1 и X (произвольное состояние); это, разумеется, биты адреса и данных. В хорошем логическом анализаторе предусматривается возможность комбинирования выходов регистров распознавания слов в виде булевых выражений и функций состояния; например, можно образовать сигнал запуска от десятого прохода некоторой подпрограммы.

Логический анализатор ожидает сигнала запуска, затем запоминает последовательность состояний всех входных линий. Их можно наблюдать в виде цифрового сигнала или как последовательность нулей и единиц (либо шестнадцатеричных или восьмеричных чисел), рядом с которыми приводятся результаты деассемблирования. Вы можете просматривать массив запомненных состояний (обычно 4К или больше) и, что особенно важно, двигаться по нему от сигнала запуска «назад во времени». Это дает возможность проанализировать несколько тысяч состояний, предшествующих сигналу запуска, что, как правило, позволяет найти источник неприятностей.

Временной анализ. В режиме временного анализа логический анализатор работает от асинхронного тактового сигнала высокой частоты, обычно 100 МГц, который фиксирует логические состояния меньшего числа входных линий (чаще всего 16). Логика запуска поневоле проще и допускает обычно лишь одно слово распознавания. Анализатор ожидает установленного условия запуска, после чего заполняет свою память быстрыми выборками. В режиме временного анализа вы можете наблюдать кратковременные выбросы и другие искажения формы сигнала, которые незаметны в режиме анализа состояний. Можно перейти в режим «обнаружения выбросов», когда анализатор ищет два перепада, возникающих в течение 10 нc — периода дискретизации.

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

Логические анализаторы с перекрестным запуском образуют расщепленный информационный кадр, что дает возможность, просматривая состояния, наблюдать также и форму сигналов. В области логических анализаторов наиболее известны имена Gould, Hewlett-Packard, Philips и Tektronix.

Макетные платы. В 70-х гг., когда широкую популярность стали завоевывать 8-разрядные микропроцессоры, такие, как 6800 и Z80, для каждого нового микропроцессора выпускалась макетная плата. Это был набор аппаратуры, куда входили небольшая клавиатура, шестнадцатеричный дисплей, ПЗУ, РПЗУ-монитор, несколько параллельных и последовательных портов, а также собственно плата для монтажа на ней схем, добавляемых пользователем. Вы могли, выполнив ручное ассемблирование небольшой программы, ввести ее посредством клавиатуры и наслаждаться результатом. Для инженерного мира, начинающего осваивать микропроцессоры, макетные платы предоставляли простой способ приобретения знаний и навыков.

Теперь инженерный мир стал более искушенным, и макетные платы почти вымерли. Однако и сейчас можно встретить в продаже макетные платы для специализированных процессоров, например БИС обработки сигналов или сложных видеопроцессоров. Такие платы содержат сам процессор, окруженный «склеивающей» логикой и аналоговыми компонентами для обработки сигналов, а часто и обычный микропроцессор, используемый для управления. Современные макетные платы обычно выполняются в виде вставных плат для персональных компьютеров и комплектуются необходимым программным обеспечением. Если принять во внимание сложность современных процессоров специального назначения, макетные платы экономят массу времени и вполне оправдывают свое существование.

Глава 12 КОНСТРУИРОВАНИЕ ЭЛЕКТРОННЫХ СХЕМ

Перевод И. И. Короткевич


Прежде чем приступить к испытанию готового изделия после завершения разработки схемы, необходимо решить еще несколько вопросов: будет ли прибор иметь настольное оформление, размещаться в стойке с выдвижными каркасами или же устанавливаться в какой-либо другой тип шкафа? Будет ли схема монтироваться на плате пайкой проводов от точки к точке или соединениями накруткой или же это будет печатная плата? Как будет осуществляться подсоединение к этой плате: через колодку для распайки, плоскими ленточными жгутами или с помощью печатного разъема? Будут ли отдельные смонтированные платы помещаться в блок-каркас для плат, устанавливаться на сборочной «материнской» плате или еще куда-нибудь? Будут ли они встраиваться в печатную схему на «материнской» плате или будут вручную подсоединяться к задней панели? Какие приспособления будут на самой схемной плате, а какие на передней (или задней) панели?

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

Метод прототипов

12.01. Макетные платы («самолеты»)

Это необычное название говорит о том, что оно возникло от прежней практики создания радиоприемников из прекрасных лакированных деревянных досок на лампах, катушках, конденсаторах и т. д., где все соединительные провода выводились на верхнюю сторону панели. Позже делали приемники, более совершенные и элегантные (для использования в гостиных «дамами в кринолинах»). В них отверстия располагались вблизи каждого узла, и таким образом проводку можно было спрятать под ближайшую панель. Практика испытания схем с помощью построения макетов в виде панелей с тех пор называется конструированием по «самолету». Деревянные «самолеты» больше не используются (за исключением кухни). Для монтажа макетов электронных схем удобны пластиковые платы, в которых имеется ряд отверстий для ИМС или других компонентов и несколько рядов лепестков, в том числе для распределения напряжения питания. Комплекты таких плат поставляют фирмы АР и Global Specialties, более тщательно выполненные наборы плат с корпусами изготовляются Е&L Instrument и многими другими фирмами. Они предназначены для испытания схем, но не для построения постоянно действующих вариантов.


12.02. Прототипы платы печатной схемы (ПС)

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

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

Такие платы выпускаются фирмами Douglas Electronics, Atronics, Vector, Triad, Radio Shack и др. Они имеют печатный разъем с контактами-ламелями по краю — в виде медных полосок с позолоченными краями с фиксатором для установки ПС в гнездо разъема.

Конфигурации разъемов в некоторой степени стандартизированы. Чаще других распространены платы с 22 контактами на каждой стороне с шагом 3,9 мм (бывают также и 3,2 и 2,5 мм). Разъем, соответствующий такой плате, называется двусторонним 44-контактным печатным разъемом. Платы-макеты могут быть различных размеров и вмещают от 12 до 36 и более ИМС. Несколько большей совместимостью с конструкциями компьютеров обладают платы, рассчитанные на 100 или более ИМС. Такие платы могут непосредственно использоваться в головном образце небольшой вычислительной машины. Некоторые из этих плат — с односторонней печатью, другие — с двусторонней, со сквозными отверстиями. Этот вопрос еще будет обсуждаться ниже в связи с обычно используемыми ПС. На рис. 12.1 приведена фотография небольшой платы-макета печатной схемы (Douglas Electronics 11-DE-3), вставляемой в 44-контактное двустороннее гнездо и встраиваемой в рамку с направляющими (Elco 6022), поддерживающими платы ПС.



Рис. 12.1. Плата «самолет» для макетирования пайкой, широко используемая при монтаже небольших схем, особенно содержащих как дискретные элементы, так и ИМС. Такая плата приспособлена для монтажа 12 ИМС в двухрядных (DIP) корпусах. Она имеет шины разводки заземления и питания. Металлизированный печатный разъем стандартизован, поэтому плата может вставляться в общий каркас или разъем с обоймой, как показано на рисунке. В данной схеме помимо транзистора и ИМС содержатся различные компоненты: одно- и многооборотные подстроечные индуктивности, потенциометры, кварцевый резонатор, размещенные в корпусе DIP ключи, миниатюрные реле и световой индикатор логических состояний.


Для разработки прототипов ПС широко используется и другая форма экспериментальных плат — так называемые платы с перфорацией. Это тонкий лист из слоистого изоляционного материала с отверстиями, сделанными через равные промежутки (чаще всего ~ 5 мм) под маленькие металлические штырьки. При разводке схемы вы вставляете дюжину маленьких штырьков, куда найдете нужным, укрепляете на них компоненты и по завершении монтажа припаиваете провода от штырька к штырьку. Платы с перфорацией очень хороши для работы, но они становятся неудобными в случаях плотного расположения ИМС, когда расстояние между штырьками получается меньше 2,5 мм. Пример платы с перфорацией приведен на рис. 12.2.



Рис. 12.2. Плата типа перфокарты. Удобная для построения макетов на дискретных компонентах, но для ИМС она не очень хороша. Штырьки плотно вставлены в отверстия (или развальцованы специальным инструментом), а разводка делается снизу.


12.03. Платы под монтаж накруткой

Разновидностью плат ПС являются платы под монтаж накруткой (Gardner-Denver). Они представляют собой схемные карты с цепочками гнезд (или контактных площадок) под ИМС со штырьками, соединенными с каждым из контактных гнезд и имеющими длину от 7,5 до 15 мм (рис. 12.3).



Рис. 12.3. Большая панель с монтажем «накруткой» и ее нижняя сторона (вид в зеркале). Проволочный монтаж микрокомпьютерной схемы выполнен машинным способом (см. разд. 12.08. «САПР/АСУП»). На этой универсальной панели размещены чипы разных размеров, переходники-держатели элементов, а также участки для подсоединения внешних плат с помощью ленточных кабелей с двухрядными 14 штырьковыми разъемами.


Штырьки в поперечном сечении представляют собой обычно квадраты со стороной 0,625 мм и сделаны из твердого металла с острыми кромками, покрытого золотом или оловом. Провод не припаивается к этим штырькам, а плотно накручивается на них с помощью электрического пистолета для накрутки (существует недорогой вариант его, известный как «ручной инструмент для накрутки проволоки»). Накрутка — очень быстрый способ. Вы просто вставляете зачищенный конец провода в инструмент, устанавливаете инструмент на штырек — свистящий звук и работа готова. Для этих целей используется стандартная посеребренная медная проволока калибра 26 или 30[3] с кайнаровой изоляцией. Существует специальный инструмент и для зачистки без зазубрин тонких проводов от изоляции. В процессе накрутки проволока плотно натягивается на острые углы, образуя несколько дюжин швов холодной сварки, непроницаемых для газов. В результате соединение накруткой получается таким же надежным, как и соединение пайкой, причем делается оно очень легко и быстро. Для логических схем, содержащих немного дискретных компонентов, монтаж накруткой, вероятно, лучший способ монтажа при изготовлении одной или двух схем средней сложности. Так как панели с контактами накруткой выпускаются в первую очередь для корпусов с ИМС, такой монтаж меньше подходит для схем с множеством резисторов, конденсаторов и других дискретных элементов. Для таких схем монтаж пайкой предпочтительнее.

Для установки на платы с накруткой дискретных компонентов используются специальные переходники, которые вставляются в гнезда ИМС, и затем производится накрутка проводов с использованием соединительных штырьков. Некоторые панели с накруткой имеют сверхлегкоплавкие контактные площадки (а не гнезда для ИМС), очень удобные для установки дискретных компонентов. Особенно приятный вид имеют платы с накруткой, в которых штырьки располагаются на той же стороне, что и компоненты (обычно штырьки выводятся на другую сторону). Хотя на этом типе плат плотность монтажа (т. е. число ИМС на единицу площади) меньше, они удобны для работы с дискретными компонентами, так как компоненты можно видеть в процессе накрутки. Кроме того, имеется возможность уменьшить промежутки между соседними платами, поскольку и компоненты, и штырьки располагаются на одной и той же стороне. Этот тип плат без гнезд практически полностью подходит для конструирования и линейных, и цифровых схем. Пример такой платы приведен на рис. 12.4.



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


На рис. 12.5 для сравнения показаны монтаж макета схемы на плате с накруткой и окончательный вариант печатной схемы, используемой в производстве.



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


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

Печатные платы

12.04. Изготовление плат печатного монтажа

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

«Майлар» или фоточертеж. Изготовление платы ПС начинают с того, что имея комплект плакатов рабочего размера, вычерчивают непрозрачный рисунок из треков и контактных площадок, требуемых по схеме (рис. 12.6).



Рис 12.6. Чертеж металлизации для простой односторонней платы ПС. Этот «позитивный слой» выполнен фотографическим уменьшением майларового рисунка, сделанного вручную в масштабе 2:1. Схемная плата размером 82,15x87,5 мм содержит 4 ИМС, 24 резистора, 11 конденсаторов, 5 диодов, 1 триммер и 1 пьезозуммер.


На этой стадии работы существует тьма правил и хитрых уловок, но основное — это сообразить, как сделать все нужные межсоединения с помощью линий, протянутых по панели. Как будет коротко описано в разд. 12.08, эти плакаты обычно выполняют непосредственно на пленке, используя фотографопостроитель, управляемый ЭВМ, или лазерный графопостроитель, работающие по описанию схемы, разработанной с помощью САПР (системы автоматизированного проектирования). Однако для простых схем нанесение рисунка можно выполнять вручную, наклеивая непрозрачные полоски и шаблоны на чистую майларовую пленку. В этом случае ленточный майларовый шаблон делают в удвоенном масштабе, с которого фотографическим путем получают плакат рабочего размера.

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

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

Изготовление. Обе стороны платы ПС (обычно это пластина толщиной 1,55 мм из так называемого FR-4, огнеупорного стекловолокна, пропитанного эпоксидной смолой) покрываются медью (стандарт — «две унции», т. е. слой меди толщиной 0,0675 мм). На первой стадии сверлятся отверстия либо про трафарету, либо на автоматическом сверлильном станке, настроенном точно по размерам фотопозитива, полученного с помощью фотоплоттера, или по размерам майларового плаката. Отверстия затем металлизируются насквозь путем комбинированного многослойного осаждения меди, благодаря чему создаются непрерывные проводящие соединения с одной стороны платы на другую.

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

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

Затем ламели разъемных контактов покрываются золотом гальваническим методом. Конечный процесс изготовления платы заключается в нанесении «паяльной маски». Маска наносится сплошным слоем на всю плату и закрывает все участки с фольгой, кроме контактных площадок. В процессе последующей распайки это сильно снижает тенденцию к растеканию припоя и образованию мостиков между близко расположенными проводящими дорожками. Это также делает плату устойчивой к влажности и механическим повреждениям. Материалы для паяльной маски могут применяться в трафаретной печати («жидкая маска») или в вышеупомянутом методе с фоторезистом, используемым для создания схемного рисунка из фольги («сухая маска»). Распознать паяльную маску можно по темно-зеленому цвету и по тому факту, что ее практически невозможно снять. При промышленном изготовлении платы могут затем заполняться компонентами автоматически, причем с помощью устройства для пайки волной все соединения паяются за несколько секунд. Но можно паять и компоновать панели вручную.

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


12.05. Проектирование плат с печатным монтажом

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

Чертеж платы ПС. Чтобы изготовить плату ПС, вы должны принципиальную электрическую схему преобразовать в соответствующий рисунок требуемых линий соединений из медной фольги, которые составят конечный вариант платы. Это можно сделать двумя способами: (а) Работая с эскизом схемы, нарисованной от руки, вы выделяете требуемые межсоединения («трассы»), пользуясь карандашом, бумагой (и комплектом ластиков!); затем на чистую полиэстерную пленку аккуратно накладываете непрозрачные полоски, заранее изготовленные шаблоны соединений и получаете окончательный эталонный майларовый плакат. (б) Вы составляете для схемы, нарисованной вручную, таблицу соединений ("netlist"), а затем, используя программу САПР для вычерчивания трасс, вы сразу получаете комплект точных «фотоплакатов» в машинном исполнении. Еще лучше, если можно вместо ручного изготовления эскиза схемы использовать пакет программ САПР для ввода описания. При этом с помощью графического планшета или «мышки» вы создаете схему непосредственно на графическом автоматизированном рабочем месте (АРМ).

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

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

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

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

Предварительный эскиз. Первоначальный чертеж схемы расположения лучше делать карандашом на специальной бумаге для плакатов с нанесенной сеткой (2 лин./см) двумя цветами, чтобы различить верхнюю и нижнюю стороны платы (это касается, естественно, только двусторонних плат). Мы обычно пользуемся черным карандашом для вычерчивания линий на нижней стороне и красным или зеленым - для верхней стороны (компонентной). Очевидно, что вам придется делать множество подтирок, поэтому лучше пользоваться специальной веленевой разграфленной бумагой. Расстояние между линиями в 5 мм соответствует основному шагу 2,5 мм — принятому стандарту для расстояний между ножками ИМС, выводами транзисторов, контактами разъемов и т. д. Ваш рисунок должен соответствовать виду компонентной стороны (вид сверху), т. е. эскиз плаката фольги компонентной стороны должен смотреться так же, как и законченный плакат. Эскиз нижнего плаката должен быть таким, будто вы разглядываете его сквозь законченную плату с помощью рентгеновских лучей. Когда вы рисуете расположение компонентов, контуры их обозначайте карандашом третьего цвета. В процессе всей этой работы вы должны обладать свободой действий. Не тратьте время на вычерчивание по линейке: пользуйтесь линиями сетки при вычерчивании межсоединений и выводов ИМС и элементов схемы.

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

Размеры плаката и некоторые рекомендации. Старайтесь расположить все ИМС в одном направлении, лучше по прямой. Точно так же резисторы должны быть расположены ровными рядами, а не криво. Для сигнальных линий мы пользуемся черной лентой 0,75 или 1 мм, для шин питания линии шире (1,25 или 1,55) и очень широкие для земляных шин (2,5–5,0 мм или даже шире: общепринято для уширения земляной шины использовать многожильные ленты). Обязательно надо включать в схему множество шунтирующих конденсаторов емкостью 0,1 мкФ по одному на каждые два или четыре ИМС. Пытаясь справиться с запутанной сетью межсоединений, не забывайте, что элементы можно использовать как «перемычки» — они могут располагаться над линиями на плате.

Размеры и пространственное расположение: на плате ПС, имеющей рабочие размеры, мы советуем отверстия под пайку резисторов сверлить на расстоянии 10 мм (для 0,25 Вт), а расстояние между резисторами должно быть 2,5 или 3,75 мм (при расстоянии 3,75 мм вы можете провести проводник между соседними контактными площадками). Мы предпочитаем керамические конденсаторы типа СКО5 и СКО6 с расстоянием между выводами, равным 5 мм или 7,5 мм, как в корпусе "DIP" (AVX типа MD01 и Kemet C630C104M5U); они также могут располагаться на расстоянии 2,5 мм от других конденсаторов или резисторов. Оставьте некоторое пространство вокруг ИМС для логических соединений: минимум 5 мм до контактных площадок соседней ИМС и минимум 3,75 мм до ближайших контактных площадок резистора или конденсатора. Между ленточными проводниками следует оставлять 0,75 мм, и все линии должны отстоять от края платы на расстояние не меньше, чем 6,25 мм. Это пространство отводится на крепление ручки для установки платы, для направляющих, для креплений и т. д. Если нет особой необходимости, то избегайте прокладывать проводники в промежутках 2,5 мм между контактными площадками ИМС. Вы можете поместить 6 ленточных проводников между рядами контактных площадок плаката стандартного двухрядного корпуса ИМС (DIP) (они разнесены на 7,5 мм).

Для современных плат ПС обычно предпочитают более высокую плотность линий (за счет их утоньшения и более тесного расположения), чем рекомендуется выше; позже мы будем называть это нормой проектирования «15–15», обозначающей, что минимальная ширина линии 0,375 мм (0,015 дюйма) и минимальное расстояние между проводниками 0,375 мм (0,015 дюйма). В промышленных платах ПС норма «15–15» считается довольно слабой по сравнению с более часто встречающейся нормой 12–12 (0,3 мм ширина линии и 0,3 мм зазор). При проектировании по норме 12–12 можно провести один трек между соседними контактными площадками ИМС, расстояние между центрами которых 2,5 мм (для себя вы должны помнить, что это допускается, если диаметр самой площадки не более 1,6 мм). В высокоплотных платах часто пользуются нормой 10–10 или 8–8. В таких платах можно вместить две дорожки между соседними контактными площадками ИМС (максимальный диаметр площадок 1,25 или 1,5 мм соответственно). В исключительных случаях можно встретить платы с шириной дорожек 0,15 мм и еще тоньше. Разработчикам таких плат ради высокой плотности (три дорожки между контактными площадками, 20 — между центральными каналами!) приходится идти на некоторые уступки, например уменьшать размеры металлизированных отверстий. В результате производственный выход таких плат невелик и они недостаточно надежны.

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

Очень часто можно встретить шаблон печатного разъема и на другом конце карты, используемого для плоского ленточного жгута и служащего для подачи некоторых внешних сигналов на плату или передачи их на другую плату. Для снятия сигнала можно использовать плоский ленточный кабель, заканчивающийся во вставке DIP; такой кабель вставляется непосредственно в гнездо ИМС на плате. Эти кабели выпускаются различной длины, или же их можно сделать самим с помощью комплекта, в который входят плоский кабель, неприсоединенная вставка DIP и инструмент для навивки. Плоский кабель можно также подсоединять к плате через входную шину или многоконтактный разъем, в котором один или два ряда штырьков расположены через 2,5 мм.

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



Рис. 12.7. Печатная плата цифрового магнитного регистратора, на которой осуществлено несколько видов внешних соединений. Магнитная головка присоединена через однорядный разъем (который соответствует ряду штырьков для накрутки), а другие цепи — с помощью многоконтактных разъемов и разъема с двухрядной вставкой DIP (впаивается на место ИМС). Щуп показан подсоединенным к выводу контрольной точки. На примере этой платы можно видеть установку элемента с теплоотводом (слева вверху), индикатора логических состояний (справа вверху), миниатюрных однооборотных потенциометров и монтаж резисторов «в линию».


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

Основные правила: при нанесении на чертеж ленточных дорожек делайте плавные закругления или повороты на 45°, а не прямоугольные. Проводники, ведущие к контактным площадкам, должны идти прямо по направлению к центру контакта, а не под косым углом. Не монтируйте на плате тяжелые элементы (вес не должен превышать 60 г); предположите, что прибор будет периодически в течение работы сбрасываться с высоты ~2 м на твердую поверхность! На компонентной стороне указывайте полярность диодов и электролитических конденсаторов, а также номера ИМС и локализацию 1-го штырька (если есть место). Всегда удобно, когда обозначены контрольные точки, функции подстроечных элементов (например, «ОРЕГ»), входы и выходы, функции световой индикации, если, конечно, позволяет место.

Нанесение линий на майлар. Основной совет: пользуйтесь специальным столом с подсветкой, работая с майларовой пленкой с прецизионной сеткой. Не путайте майлар с дешевой пластиковой пленкой с нанесенной сеткой, которая не обладает ни точностью, ни стабильными размерами; кусок прецизионной пленки остановит вас, во всяком случае, ценой (около 20 долларов!). Положите майлар чистой стороной кверху и точно нанесите на него контактные площадки ИМС. Используйте карандашный эскиз в качестве руководства при разводке схемы. Тщательно вымойте руки, чтобы на майларе не оставить жирных пятен, или, если они возникли, воспользуйтесь спиртом для их удаления. Для разрезания лент и контуров пользуйтесь ножом с кривым лезвием и научитесь не делать сквозные порезы на майларе. После установки клейкой ленты крепко придавите ее, иначе она в конце концов начнет скручиваться. Обеспечьте хорошее перекрытие на участках, где проводник должен пройти через контактную площадку или через что-либо другое. В процессе разводки ленты держите в свободном, а не натянутом состоянии, иначе лента будет отскакивать и тянуться назад от контакта. Используйте предварительно нарезанные колена и кружки для увеличения ширины ленты (1,55 мм или шире), когда при проведении приходится делать крутые повороты. После того, как нанесение линий на майлар закончено, оно сверяется со схемой, при этом красным карандашом отмечайте каждое пройденное соединение на принципиальной схеме. Если все окажется в порядке, замазываются возможные щели на майларе несмываемым черным фламастером.

Предварительно разрезанные шаблоны для ПС поставляют несколько фирм. В табл. 12.1 приведены некоторые рекомендуемые типы. Каталог Bishop Graphics (5388 Sterling Center Drive, Westiake Village, CA 91359) содержит обширную информацию о платах ПС.


Таблица 12.1. Некоторые шаблоны для проектирования ПС

Шаблоны1) · Bishop · Datak

____________________________ 

Малые контактные площадки (3,75 мм) · D203 · JD-145

Средние контактные площадки (4,675 мм) · D104 · JD-146

Большие контактные площадки (6,25 мм) · D108 · JD-150

«Гигантские» контактные площадки · D293 · JD-343

Терморельефы — позитив. (3,75 мм) · 5272 · JDS-532

Терморельефы — негатив. (3,75 мм) · 5278 · -

Терморельефы — позитив. (4,675 мм) · 5232 · -

Терморельефы — негатив. (4,675 мм) · 5238 · -

16-штырьковый DIP · 6109 · JD-64

16-штырьковый DIP с внутренними зазорами · 6946 · JD-179

20-штырьковый DIP · 6999 · JD-575

20-штырьковый DIP с внутренними зазорами · — · JD-585

28-штырьковый DIP · 6904 · JDS-398

28-штырьковый DIP с внутренними зазорами · — · JDS-591

Транзистор ТО-5 · 6077 · —

Транзистор ТО-18 · 6274 · JD-88

Транзистор ТО-92 · — · JD-91

Впаиваемый разъем с контактными площадками через 2,5 мм · 5004 · JD-145

Печатный разъем с шагом между ламелями 2,5 мм · 6714 · JD-123

Печатный разъем с шагом между ламелями 3,9 мм · 6722 · JD-121

Черная лента 0,8 мм · 201-031-11 · -

Черная лента 1,0 мм · 201-040-11 · -

Черная лента 1,2 мм · 201-050-11 · -

Черная лента 1,5 мм · 201-062-11 · -

Черная лента 2,5 мм · 201-100-11 · -

Черная лента 5,0 мм · 201-200-11 · -

Универсальные уголки 1,5 мм · CU601 · -

Универсальные уголки 2,5 мм · CU607 · -

Универсальные уголки 5,0 мм · CU609 · -

___________

1) В масштабе 2:1 к оригиналу.


12.06. Монтаж плат ПС

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

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

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

Мы считаем, что гнездо для ИМС с коническими штырьками (предлагаемое Augat серии 5xx-AG) обладает хорошими показателями надежности, но оно дороже по сравнению с другими типами гнезд.

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

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

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

Изготовители коммерческих панелей очищают свои платы с помощью установки для обезжиривания паром, в которой горячий пар от ванны с кипящим растворителем конденсируется на плату (подвешенную над ванной), растворяет флюс и капает обратно в ванну. Этот метод работает хорошо главным образом потому, что благодаря процессу дистилляции, происходит непрерывное омывание платы чистым (и горячим) растворителем. Поскольку органические растворители достаточно вредны для здоровья, были проведены опыты по использованию для очистки растворителей на основе воды. В одном из таких методов применяют воднорастворимые «омылители», переводящие канифоль в эмульсионное состояние, после чего ее можно смыть. В другом используют флюс, растворимый в воде (в отличие от обычного флюса, который изготовляется из нерастворимой древесной канифоли). Эти методы приятны и надежны и не требуют особого умения. Но очистку нужно проводить тщательно, иначе могут иметь место коррозийные остатки, что приведет со временем к разрушению платы. Чтобы обезопасить себя от этого, мы рекомендуем очистку органическим растворителем; только старайтесь не вдыхать его пары и беречь руки.

Очищая плату от флюса, имейте в виду, что недостаточно просто удалить остатки канифоли. Вы должны избавиться также от «ионных активаторов». Некачественная очистка может принести больше вреда, чем пользы, поскольку это способствует высвобождению активаторов из области паяных соединений и разнесению их по всей плате. Заметим также, что поступающая в продажу паяльная жидкость до некоторой степени агрессивна. Мы, как правило, пользуемся маркой RA (канифоль активированная), которая является наиболее активным флюсом, и поэтому паяные соединения получаются очень хорошими даже, если имеет место поверхностное окисление. Остатки флюса RA нужно тщательно удалять после пайки. Другой флюс — RMA (канифоль среднеактивированная) — менее активен и часто указывается при выполнении правительственных заказов и для применения там, где очистка от флюса невозможна.


12.07. Несколько дополнительных соображений по поводу плат ПС

Из-за образования окисной пленки платы с печатным монтажом со временем становится труднее паять. Поэтому монтировать их лучше сразу после изготовления. В противном случае вы должны хранить незаполненную плату в пластиковом мешочке подальше от коррозирующих испарений. Хорошие платы получаются на основе материала типа FR-4 толщиной 1,6 мм (иногда подходит «эпоксидное стекловолокно») с покрытием ~0,05 г/см2 меди. Помните, что печатная схема в основном смонтирована на куске проклеенного наполнителя; плата может поглощать влагу, что приводит к появлению электрических утечек. Другой патологией Материала плат ПС являются «крючки», или «усики», изменение диэлектрических констант с частотой; вызываемое последним изменение паразитной емкости может стать очень существенным при построении, например усилителя с плоской частотной характеристикой. Изготовители осциллоскопов очень хорошо знают этот причудливый эффект.

Проводники печатной схемы, через которые проходит большой ток, должны быть шире, чтобы предотвратить перегрев и падение напряжения. Как грубое руководство приводим здесь таблицу приблизительной ширины (в мм) проводников платы ПС с покрытием 0,0675 мм, при которых температура повышается на 10–30 °C для различных токов. Для фольги другой толщины ширина изменяется соответственно.



Для проводников ПС, находящихся под высоким напряжением, следует отводить большее пространство — надлежащая норма: 5 В на 0,025 мм. Следует также избегать острых углов и мест, предпочитая закругленные контуры.

Инструменты. Для начала назовем наиболее часто используемые в нашей практике инструменты и расположим их в порядке значимости:

Утконосы — Егет II d, Utica 321-4 1/2, С. К. 3772Н, 2 Xcelite 72CG

Ножницы-кусачки — Erem 90Е, С. К. 3786HF

Паяльник — Weller WCTP-N, Ungar "Ungarmatic"

Припой — Ersin Multicore 22ga, сплав Sn63, флюс RA

Приспособление для установки ИМС — Solder Removal 880

Устройство для загибания выводов — Production Device PD801

Дозатор растворителя — Menda 613

Приспособление для отсасывания припоя - Edsyn Soldapullt DS017

Для более эффективного демонтажа плат ПС стоит приобрести демонтирующую установку с контролируемым вакуумом. Она хорошо себя проявляет даже на металлизированных отверстиях, заполненных припоем. При этом не разрушается тонкая фольга контактных площадок (в отличие от действия простых пружинных плунжеров). Однако на практике эти демонтирующие установки имеют тенденцию засоряться припоем. Изготавливают их несколько фирм, а именно, Edsyn, OK, Расе, Ungar и Weller. Очень много полезных приспособлений для сборки ПС указано в каталоге Contact East (335 Willow Street South, N. Andover, MA 01845) и в каталоге Marschall Claude Michael (9674 Telstar Avenue, El Monte, CA 91731).


12.08. Передовая техника

Карандашный эскиз схемы, вручную преобразованный сначала в монтажную схему платы ПС и затем в ленточный майларовый транспарант - традиционная техника конструирования плат ПС, которая применялась почти повсеместно в середине 70-х годов. При изготовлении простых плат этот путь пока еще определяющий и, в частности, если вы не делаете попыток устанавливать новые рекорды по плотности компонентов на плате. Имея небольшой набор шаблонов для двусторонних плат, несколько непрозрачных полосок, координатный стол с нанесенной сеткой и несколько чистых майларов, вы можете приступать к делу. И вам не нужно покупать дорогостоящее программное обеспечение САПР (и учиться им пользоваться!), затрачивать средства на графопостроитель и т. п.

Однако как только вы пожелаете конструировать высокоплотные платы и начнете размещать вплотную друг к другу 50 или 100 ИМС, для чего вам потребуется выстилать 4 или 6 слоев с нормой проектирования 10–10, хорошая жизнь для вас закончится. Даже приложив невероятные усилия и четырехкратное увеличение размера майлара, вам трудно будет достичь требуемой точности в межслойной подгонке. К тому же, вам необходим будет месячный отпуск, чтобы восстановить силы, затраченные при выполнении трассировки. Первая же изготовленная плата наверняка будет содержать ошибки, а любое изменение в ленточном майларе — сущий ад. Оно часто требует большого количества операций по установке и снятию проволочных соединений (что обычно приводит к новым ошибкам). Мы в этом не сомневаемся.

САПР/АСУП. Решением проблемы является САПР/АСУП (система автоматизированного проектирования и производства). Пакеты программного обеспечения этих систем мощны, а с появлением настольных терминалов, подключенных к главной ЭВМ, с памятью несколько мегабайт, с блестящей графикой и быстродействием десятки миллионов операций в секунду, вы можете работать и без специальных аппаратных средств. До некоторой степени популярны системы автоматизированного проектирования ПС, поставляемые фирмами Valid Logic, Mentor Graphic и Daisy System. Они недешевы, но и не становятся более дорогими. Здесь мы кратко ознакомим вас с конструированием плат с помощью САПР/АСУП.

Ввод описания схемы. Работа начинается с ввода описания вашей схемы непосредственно на графическую рабочую станцию. Вы можете чертить и редактировать схему, используя стандартные электронные символы из «библиотеки». Также, как и в текстовом редакторе, вы можете привлечь старые работы, выделить в них фрагменты, которые вам нужно воспроизвести (например, схема управления динамического ОЗУ, активный фильтр и т. п.). Используя «мышь» (или другие дистанционные манипуляторы такие как джойстик, трэкбол или графический планшет), можно перемещать фрагменты вместе с линиями соединений, которые тянутся вслед за движущимся фрагментом (не всегда успешно!). Вы присваиваете имена сигналам, нумеруете части ИС и т. д. Хорошие САПР иерархичны: например, вы можете сделать высший уровень, в котором основные узлы схемы указываются в виде больших блоков, каждый блок открывается для показа его субблоков и, наконец, низший (элементный) уровень описания. На любом этапе можно получить на руки копии, отпечатанные с помощью лазерного принтера. Смотрите Приложение Д, в котором приводятся некоторые дополнительные соображения.

Контроль и моделирование. По окончании ввода описания схемы вы будете иметь комплект чертежей (рис. 12.8) и таблицу соединений, в которой просто перечислены сигналы в узловых точках («кодах») с указанием всех выводов компонентов, соединенных с ними.




Рис. 12.8. Часть сложной схемы, по которой сделана плата ПС, изображенная на рис. 12.11 а — выполнено вручную чернилами на чертежном столе; б — машинный чертеж, выполненный с использованием программ ввода описания принципиальной схемы в фирме Case Technologies.


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

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

Размещение и трассировка. На этом этапе вы устанавливаете компоненты и формируете разводку соединений. Одним из самых больших достоинств комплексной САПР/АСУП является то, что она автоматически выделяет таблицу соединений в соответствии с представлением вашей схемы — и, если схема правильна, то конечная плата также будет верной. Хотя с помощью некоторых САПР можно добиться почти идеального размещения компонентов, все же лучше это делать вручную. Также, как и при вводе описания схемы здесь используют мышь, джойстик или графический планшет. Сначала устанавливаются контуры платы, в пределах которых вы теперь располагаете части схемы. Поскольку в библиотеке компонентов содержится информация о контурах и выводах, вы подбираете характеристики ИМС и форму компонентов. Если вы допустили ошибки в нормах проектирования, то в хороших САПР они высвечиваются, и вы можете видеть, например, что части расположены слишком близко друг к другу и т. п.

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

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



Рис. 12.9. Фотография системы проектирования платы ПС (Racal-Redac), показывающая ручную «правку» треков маршрутизации. Курсор, управляемый через иголки графического планшета, указывает схемный трек, который следует модифицировать. Дисплей цветной, изменяя цвет и интенсивность, обозначают различные слои, контуры элементов, надписи и т. п.


В сложных цифровых схемах вы можете значительно упростить трассировку, придавая новое назначение вентилям или секциям внутри чипов и даже заменяя вентили между корпусами ИМС. Например, у вас шина данных в 1 байт связана с восьмеричным регистром D. Исходное назначение битов шин и битов соответствующего регистра таково, что каждая линия должна перескакивать через соседнюю, в то время как при обращении в регистре порядка битов пересечений не должно быть. САПР делает это автоматически (библиотечная спецификация каждого чипа идентифицирует дублированные функции) и даже сообщает об изменениях в схематике («обратное аннотирование») модифицируя таблицу соединений. Конечный этап заключается в проверке предложенной трассировки на нарушение норм проектирования, а также на точность соответствия схеме. Это важно, так как вы можете сами внести изменения в таблицу соединений в соответствии с переделанной схемой. На этой стадии все САПР выдают выполненный на бумаге чертеж маршрутизации, на котором конструкционные сочетания компонентов, проволочные соединения, обозначения и т. п., сделаны ошеломляющей гаммой цветов.

Фоточертеж: и «лента сверлений». Если все прошло хорошо, то в заключение составляется описание платы на машинном языке специально для изготовителя ПС. Для этого необходимы две вещи: лента с инструкцией фотоплоттеру как чертить точный «оригинал» (отдельно рисунок металлизированных дорожек для каждого слоя, рисунок для паяльной маски, рисунок маскирующих экранов для печатных обозначений и пояснений) и лента сверлений, в которой указывается размер каждого отверстия и его точное местоположение. Лента оригинала обычно записана в «Gerber формате». Название формата соответствует марке фотоплоттера, в котором экспонирование пленки осуществляется под неподвижным проектором, а оригиналодержатель перемещается в соответствии с командами, записанными на ленте. (В новейших фотоплоттерах используется лазерное сканирование, благодаря чему за минуту получают большее количество чертежей, чем за час работы машины Gerber.) Некоторые изготовители плат ПС просят поставлять конечные фоточертежи (рис. 12.10), в то время как другие запрашивают саму ленту для Gerber. Как это ни странно, но некоторые фирмы отказываются от лент сверлений и предпочитают собственноручную разметку отверстий, оцифровывая оригинал фотошаблона. Они при этом утверждают, что поставляемые заказчиком ленты сверлений содержат иногда такие невероятные сбои в командах, что в сверлах разрушаются режущие кромки. Ленты сверлений — это не магнитные, а бумажные ленты!



Рис. 12.10. Фоточертеж для двусторонней платы, изображенной на рис. 12.11. Фотография сделана, как это принято, с компонентной стороны, но чертеж нижнего слоя также виден.


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



Рис. 12.11. Законченная двусторонняя плата микропроцессора. При проектировании следовали норме 12–12. Более высокую плотность элементов можно достичь, только ужесточая норму проектирования или, лучше, увеличивая число слоев.


Некоторые фирмы специализируются на изготовлении малых партий, быстро изменяющихся прототипов, а другие могут делать только производственные количества. Ваша первая задача выяснить, какие фирмы выпускают высококачественные изделия. Это не так-то легко, как кажется. Телефонные переговоры здесь не помогут, так как можно знать как изготовить хорошую плату и при этом сделать плохую. Предлагаем вам некоторые приемы, которые можно испробовать, (а) Рассмотрите маркировку на хороших платах, имеющихся у вас в наличии (например, такие платы можно найти в устройствах или в компьютерах ведущих фирм, которые подобно вам, обычно приобретают платы для себя у внешних изготовителей) — компании такие, как IBM и Apple весьма осторожны в выборе поставщика плат, (б) Опросите знакомых - кто обычно делает для них платы? (в) Поезжайте, нанесите визит в фирму, изготовляющую платы. Будучи там, обратите внимание на работников, на их уровень опрятности, нравственности, природной интеллигентности, тщательности исполнения и гордости мастера. Попросите посмотреть несколько плат, (г) И наконец, если вы знаете кого- нибудь из работающих в отделе испытаний еще не закрытых плат, уговорите его подсказать вам, кто делает хорошие платы. Работающие там - неплохие ребята и реально знают все, что вам нужно, но совсем необязательно, что они будут разговаривать с вами!

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

1. Размеры платы?

2. Число слоев (сторон)?

3. Нормы проектирования (минимальные ширина проводящих дорожек и зазор между ними)?

4. Каковы печатные разъемы с позолоченными ламелями?

5. Какие форму и внешний вид платы вы предпочитаете?

6. Паяльная маска? Жидкая или сухая? Закрывать межслойные переходы или нет?

7. Толщина платы и медной металлизации?

8. Число отверстий?

9. Размеры отверстий?

10. Маскирующие экраны для 2-х сторон, 1-й стороны или без них?

11. Какие нестандартные операции, например, «сухая маска по открытой меди»?

В соответствии с договоренностью, вы должны предоставить фирме следующее:

1) шаблоны рисунков в рабочем масштабе с фотопозитивным слоем (т. е. непрозрачное = медь);

2) рисунок(ки) паяльной маски;

3) рисунок(ки) маскирующих экранов;

4) чертеж сверления (рисунок отверстий, кодированных по размерам);

5) механический чертеж (точный контур, подогнанный под специальные отверстия);

6) лента сверлений (бумажная лента; часто необязательно);

7) дополнительные спецификации и замечания.

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

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

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

Во время испытаний отмечайте на вашем чертеже все изменения в электрической схеме для последующего учета их при вводе описания (или при черчении схемы от руки). Повторное испытание на САПР проходит уже легко и быстро; но нужно быть очень внимательным, поскольку вы, вероятно, перейдете непосредственно к рабочему прогону и любые неисправленные ошибки должны быть зафиксированы на каждом блоке. При необходимости можно использовать ту же процедуру разрезания и изготовления навесных перемычек, как и выше. При этом надо побеспокоиться о защите проволочного соединения (по-видимому, хороший эффект обеспечит пистолет с горячим воском). Эти дополнительные проволочные включения иногда называют «тараканьими проводниками»; официальный термин — ECO (Engineering Change Order).

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



Рис. 12.12. Часть 4-слойной платы, выполненной в соответствии с нормой проектирования 10–10. Устройства с поверхностным монтажем. Расстояние между контактными площадками — 1,25 мм, что позволяет сделать плотность элементов высокой. Видны также компоненты со сквозь-платным монтажем. В разъеме расстояние между центрами контактов равно 2,5 мм.


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

Монтаж накруткой с помощью САПР. Таблица соединений, составляемая в конце ввода описания схемы, содержит в себе все необходимое для создания схемы. Многие САПР предлагают выходные форматы, совместимые с устройством автоматического проведения монтажа накруткой. Вы начинаете с выбора местоположений компонентов на стандартной плате под монтаж накруткой (см. каталог образцов Augat), после чего САПР составляет специальную форму таблицы соединений, называемую "From-To" — список. В каждом входном сообщении содержатся координаты двух выводов, соединяемых проводами, и уровень накрутки (высота над платой) в законченном виде. По вашим лентам платы с машинной накруткой изготавливают такие фирмы, как DataCon и др. Обычно это занимает несколько недель и стоит около 6 центов за одно проволочное соединение плюс стоимость самой платы под монтаж накруткой (около 2 долл. за каждую позицию ИС). Как и в платах печатного монтажа, в платах под монтаж накруткой могут иметь место дефекты. По нашему опыту почти в каждой плате обнаруживается один или два случая, обычно в виде оборванного провода, который отлично просматривается со стороны.

Серьезные проблемы возникают с прототипом плат с монтажом накруткой. Если ваша цель-изготовить плату ПС, то вы в конечном счете обязательно сделаете на ней трассировку. Так почему бы не использовать их в качестве прототипов для плат с монтажом накруткой. К тому же платы с накруткой ведут себя в работе не так, как платы ПС, вследствие индуктивности выводов, различий в длине соединения с земляным выводом и индуктивности земляного слоя. Это сильнее проявляется в быстродействующих логических схемах, таких, как 74F, 74AS или 74АС (Т), или в матрицах элементов памяти с широкими сигнальными шинами. Обычно хорошие многослойные платы ПС имеют гораздо лучшие показатели, чем сравнимые с ними платы с монтажом накруткой. Поэтому для вас предпочтительнее создавать прототип с помощью платы ПС.

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

Многопроводный монтаж с помощью САПР. Многопроводный монтаж - продукт фирмы Kollmorgen Corporation, которая изготавливает искусные гибридные схемы на платах ПС с заказной маршрутизацией. Базовые платы имеют контактные площадки (как стандартные, так и заказные), которые служат для фиксации ваших ИМС и подводки питания и земли. Сигнальные межсоединения делаются, однако, не из дорожек печатного монтажа, а из тонких изолированных проводов (34 или 38), которые машинным способом укладываются в липкий слой на плате. Концы проводов присоединяются к контактным площадкам ИС в процессе металлизации отверстий.

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

САПР для ИС специального назначения (ИС СИ). Мы заканчиваем повествование о САПР и полагаем, что теперь у вас и в мыслях не появится конструировать заказные или полузаказные (матрицы вентилей) ИС вручную (рис. 12.13). Они входят в общий класс «интегральных схем специального назначения» (ASIC-Application-Specific IС).



Рис. 12.13. При таком уровне проектирования чипов системы САПР/АСУП — не роскошь, а необходимость.

(С любезного разрешения Performance Semiconductor Corporation, Sunnyvale, California.)


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

Конструирование приборов

12.09. Установка схемных плат в приборы

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

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

Если в системе несколько схемных плат, то лучше всего вставить их в какого-либо рода блок-каркасы для ПС в виде жестких комплектов с направляющими для каждой платы, по которым они вставляются и выравниваются по тыльной стороне так, что обеспечивается попадание печатных разъемов в гнезда. Ширина, пространственное расположение, количество плат, которые. можно вместить в блок-каркас, — в этом нет никаких особых ограничений. Больше всего подходят платы шириной 112,5 мм, имеющие 44-штырьковый двусторонний (22 штырька на каждой стороне) печатный разъем с шагом печатных ламелей, равным 3,9 мм. Имеется множество других форматов, часто с более плотным расположением штырьков (шаг 2,5 мм), с большим числом разъемов на одной плате или с более надежным разъемом, состоящим из двух сопрягающихся частей, одна из которых припаивается к плате как компонент. Из последних широко распространены так называемые VME-разъемы с 64 или 96 штырьками. Промежутки между платами можно сделать равными 12,5 мм, если необходимо, но расстояние в 15 мм удобнее. Если пространственный фактор для промежутка между платами не играет особой роли, то расстояние в 18,75 мм предоставляет тот запас, который нужен для схем с соединениями накруткой или с громоздкими компонентами. Лучше просмотреть несколько каталогов и подобрать каркас из имеющихся в наличии. Вы можете приобрести варианты с пластиковыми направляющими для плат или просто сделать в металлических стенках углубления для их выравнивания. Имеются также различные ручки, монтируемые непосредственно на платах ПС, с помощью которых платы вынимаются из каркаса.

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

Предостережение: приборы, в которых единая схема спроектирована на нескольких вставленных платах, имеют прекрасную модульность и удобны для ремонта. Но этот способ конструирования может вызвать трудности в схемах с низким уровнем сигналов (меньше милливольта) и в схемах с высокочастотными сигналами (выше нескольких мегагерц). В этих случаях основная проблема заключается в невозможности обеспечить удовлетворительную стабильность и низкую индуктивность заземляющих систем, подключаемых к комплекту плат через разъемы на их концах. Особо опасно сочетание низкоуровневых аналоговых цепей с цифровыми сигналами переключения. Эта проблема усугубляется из-за задней панели с ручной проводкой, в которой распределение земли зависит от нескольких проводов, пролегающих между разъемами. Типичные симптомы - низкоуровневая (60 или 120 Гц) наводка, смешение ("fuzz") при уровне в доли милливольта, взаимодействие радиочастотных сигналов между контурами, которые должны быть изолированными. Если в плате земляной слой открыт и она вставляется в металлический блок-каркас, то симптомы часто изменяются в зависимости от силы, с которой вы давите на плату при ее вставлении, так как появляются неконтролируемые контакты с землей.

Мы сталкивались с такими проблемами не один раз и предлагаем некоторые советы. Первое — лучше полностью избегать связанных между собой небольших плат и строить все критические схемы на одной большой плате с общим земляным слоем. В этих платах для соединений между отдельными частями схемы следует использовать коаксиальные линии или кабель в виде витой пары проводов. Второе — если вы должны использовать соединенные между собой платы, то более хорошее распределение земли можно получить, если взять материнскую плату ПС, в которой земляные шины более широкие, чем на задней панели с ручной проводкой. В радиочастотных системах можно встретить металлические столбики на пружинах, располагаемые вдоль направляющих, по которым движется карта. Эти столбики обеспечивают непрерывное и стабильное соединение с землей. Третье - использование коаксиальной линии или витой пары в сочетании с дифференциальными входами (или «псевдодифференциальными» входами с заземленным экраном, см. рис. 7.70) часто является лучшим способом управлять микровольтными сигналами, которые иначе реагируют на паразитный контур с замыканием через землю и на помеху. И наконец, за исключением «псевдо дифференциального» варианта, мы предлагаем делать как можно больше дополнительных соединений с землей (множественные соединения с шасси, сдвоенный соединитель штырьков и проводов и т. п.), чтобы уменьшить индуктивность, из-за которой могут возникнуть токи утечки на землю. Не тревожьтесь о паразитных контурах с замыканием на землю в цифровых и ВЧ-схемах; они выпускаются как микровольтные аудио-схемы. Отсылаем вас в разд. 7.24, где изложены дополнительные сведения о заземлении.

Монтаж задней панели блок-каркаса. Гнезда «печатных» разъемов бывают либо с лепестками под пайку, либо со штырьками для монтажа накруткой, либо же с небольшими штырьками для установки на плату ПС. Во многих случаях разводку межплатных соединений лучше делать пайкой от точки к точке, используя лепестки разъемов. Чтобы работа была качественной, нужно объединить провода в несколько жгутов, прокладываемых по прямой вдоль блок-каркаса. Иногда предпочтение отдают соединениям накруткой, особенно если между штырьками разъемов на задней панели требуется много соединений, а количество проводов, идущих к другим точкам прибора, сравнительно мало и нет необходимости использовать при монтаже экранированные кабели.

Третьей возможностью является использование в качестве задней панели материнской платы — печатной платы, на которой монтируются гнезда печатных разъемов. Материнские платы широко применяются в системах с передачей сигналов по шинам (почти всегда в компьютерах), — и в любом случае нельзя забывать о возможности их использования, если прибор предназначен для серийного производства. Двусторонние материнские платы обладают тем преимуществом, что дают возможность иметь земляную плоскость (пониженная индуктивность и связь сигнальных шин) или использовать обе стороны как сигнальные, если межплатный монтаж достаточно сложен. В «шинных» системах монтаж между платами обычно упрощается благодаря наличию сквозных соединении между соответствующими «шинными» выводами на всех платах. Задние панели в компьютерах иногда выполняются в виде материнских плат со сквозными выступающими штырьками для соединений накруткой. Это очень удобно, особенно если вам нужна материнская плата, чтобы по ней провести все шины и подводку питания, а нешинные штырьки оставить свободными для монтажа требуемой схемы накруткой. На рис. 12.14 изображена фотография простой материнской печатной платы.



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


12.10. Оформление

В зависимости от назначения электронная аппаратура размещается в настольных корпусах (комплектуемых с резиновыми опорами и имеющих откидную лицевую панель на петлях) и в корпусах или панелях, вставляющихся в стандартную «релейную стойку» шириной 475 мм (блоки либо привинчиваются непосредственно к боковым стенкам стойки, идущим вертикально от пола, либо монтируются на шарикоподшипниках, скользящих по полозьям стойки для облегчения доступа). Модули приборов конструируются так, чтобы они могли вставляться в более крупные монтажные единицы — «бункер», «обойму» или «крейт» (в последнем случае подключение к источнику питания обычно осуществляется сзади через стандартный разъем). Возможны и другие виды корпусов приборов, например, такие, как передвижные (в том числе по вертикали) подставки-лафеты.

Как при настольном оформлении, так и при использовании напольных стоек имеется возможность разнообразить формы корпусов. Наиболее распространены корпуса шириной 425 мм различной высоты (всегда кратной 43,75 мм) и глубины. При этом можно подобрать наиболее удобные размеры фланцев и полозьев монтажных стоек (в стойках шириной 475 мм расстояние между фланцами составляет примерно 437,5 мм). Таким образом, путем небольших изменений в механической конструкции прибора вы можете переделать корпус из монтируемого на стойках в настольный вариант или наоборот. Следует отметить, что для некоторых корпусов при переделке требуется удалять внешний кожух, для других можно оставить его без изменений.

Что касается модульных приборов, то NIM-бункеры распространены в ядерной и атомной измерительной аппаратуре, а крейт КАМАС используется для компьютерных интерфейсов. Несколько фирм ограничиваются выпуском модулей и бункеров, например Tektronix-серий ТМ500, Vector-серией пустых модулей EFP. В каждом типе оформления имеются пустые шасси в комплекте с задними разъемами, согласующимися с розетками источника постоянного тока материнского бункера.


12.11. Замечания по конструкции

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

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



Рис. 12.15. В этом приборе задняя панель служит теплоотводом для мощных транзисторов. На ней крепятся ручки управления, которыми редко пользуются, и разъемы. Чтобы обеспечить доступ к девяти схемным платам, размещенным в блок-каркасе, передняя панель сделана съемной.


Традиционным является придавать профессиональный вид фронтальной панели путем трафаретного экранирования надписей под окраску или анодирование алюминием поверхности. Результат смотрится неплохо, но тенденция к корродированию при частом грубом обращении остается (хотя прозрачное защитное покрытие значительно улучшит ситуацию). Если вы посмотрите на последние приборы Fluke, Tektronix или Hewlett-Packard, вы увидите новый вариант — панель с приклеенной пленкой Lexan, обладающей приятным внешним видом и невероятной прочностью. Надписи делаются методом трафаретного экранирования на обратной стороне матово-текстурированной пленки Lexan толщиной 0,25 мм, на которую затем наносится клей, обеспечивающий прочное сцепление. Можно применить тиснение или рисование несколькими цветами, а также использовать специальные цветные пластиковые окошки или вырезы. Есть много мест, где вы можете заказать панели кожухов с прессованными оттисками: вы должны для этого предоставить точный шаблон оригинала (обычно позитив или негатив рабочего размера). Оригинал можно изготовить с помощью сухого переноса при натирании тиснения или, еще лучше, используя некоторые настольные издательские пакеты программ и лазерный принтер.

По-видимому, наиболее важно при размещении прибора помнить о необходимости обеспечения хорошего доступа к схемным платам и ручкам управления. Добивайтесь, чтобы вставлять компоненты в прибор можно было без больших усилий. Это значит, что нужно очень хорошо развести кабельные соединения, чтобы модульные блоки извлекались без применения паяльника. Кроме того, нужна точная планировка, чтобы можно было в процессе работы прибора проверять схемные платы. Например, если в блок-каркасе платы смонтированы вертикально, то для того, чтобы добраться до платы, надо снять крышку корпуса, а затем вставить переходник для работы с выдвинутой платой. Только тогда схема будет доступна. Если платы смонтированы горизонтально, то можно обеспечить доступ, сделав переднюю панель съемной или откидной. Вообще, следует сопротивляться соблазну укладывать схемы слоями, когда одна схема полностью закрыта другой. На рис. 12.16 показан образец удобной съемной передней панели, связанной с корпусом кабелем.



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


12.12. Охлаждение

Приборы, потребляющие более нескольких ватт, обычно нуждаются в принудительном воздушном охлаждении. По приближенным подсчетам небольшие приборы, выделяющие более 10 Вт, или более крупные узлы, расходующие более чем 25 Вт, работают, вероятно, лучше, если их обдувать вентилятором. Важно помнить, что в корпусе, заполненном схемами, будет прекрасный температурный режим, если корпус установлен на стенде, а его крышка снята. Но если схема помещена в стойке вместе с тепловыделяющими приборами (когда окружающая температура может достигать 50 °C) и закрыта крышкой, то она будет сильно перегреваться. Это приводит не только к быстрому разрушению компонентов, сколько главным образом к неудовлетворительной работе.

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

Обычный вытяжной вентилятор со скоростью потока в открытом пространстве 3 куб. м/мин будет вполне удовлетворительно охлаждать приборы, потребляющие 100 Вт и больше. Здесь мы проводим соответствующую формулу:


Возрастание температуры воздуха, °С = 1,6·Р (Вт)/Поток воздуха (куб. м/мин)

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



Рис. 12.17. Поток воздуха в зависимости от обратного перепада давления для вытяжных вентиляторов, перечисленных в табл. 12.2.

1 — стандартный, сечение 112,5 мм; 2 — мини-вентилятор сечением 75 мм; 3 — бесшумный, сечение 112,5 мм; 4 — особо тихий сечением 112,5 мм.


Кроме традиционных вентиляторов, работающих от сети переменного тока, все изготовители теперь выпускают и бесщеточные вентиляторы, рассчитанные на постоянное напряжение. Работа вентиляторов от низкого постоянного напряжения (обычно 12 или 24 В) делает их удобными для электронного управления скоростью вращения в зависимости от рабочей температуры внутри прибора. Вы можете либо осуществить считывание температуры и собственную обратную связь управления скоростью (возможно использование внеплатного модуля типа регуляторов "SmartFan", изготовляемых фирмой Control Resources) или приобрести вентилятор с встроенным терморегулятором скорости (например серии "Therma-Pro-V" Rotron). Другой путь, который хорошо себя зарекомендовал, это использование вентиляторов с изменяющейся скоростью вращения лопастей, так как чаще бывают такие условия, когда шум вентилятора может быть гораздо меньше, чем в наихудших условиях (максимальные обороты), которые возникают только при максимальной для прибора температуре окружающей среды.

При размещении приборов, требующих принудительного воздушного охлаждения, попытайтесь так расположить компоненты, чтобы воздух поступал в корпус с одного края, обтекал компоненты и выходил из противоположного края. Например, в приборах с горизонтальным расположением шасси вы должны просверлить несколько впускных отверстий в нижней части панели, а также на внутренних шасси вблизи лицевой панели и установить вытяжной вентилятор в верхней части задней панели. Таким образом воздушный поток принудительно будет проходить через все детали прибора. Не забывайте, что схемная плата является преградой для воздушного потока, — при планировке прибора следует это учитывать. Если сопротивление потоку значительное (высокое обратное давление), то центрифужный обдув будет работать лучше, чем пропеллерный. Лопасти пропеллерного вентилятора, если обратное давление превышает 7,5 мм вод. ст., переходят в состояние «срыв потока», делая тем самым вентилятор полностью неэффективным.

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



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

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


12.13. Полезные советы

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

Радиочастотные линейные фильтры. Как мы упоминали выше, на входах питания от сети переменного тока очень полезно ставить высокочастотные фильтры. Они изготовляются рядом фирм, среди которых можно отметить Corcom, Cornell-Dubilier, а также Sprague. Фильтры выпускаются в виде простых модулей, имеющих клеммы с ламелями для пайки, или же включаются в общий блок с вилкой для включения в сеть переменного тока, соединяемый со стандартным кордовым шнуром IEC. Такие фильтры обеспечивают превосходную фильтрацию напряжения питания от ВЧ-сигналов (а также предотвращают излучение их самим прибором), и, кроме того, они довольно эффективно подавляют переходные процессы сетевого напряжения. Так, например, фильтр 3R-1 Corcom (рассчитан на 3 А, 115 В) имеет ослабление 50 дБ для сигналов частоты 200 кГц и более 70 дБ для сигналов с частотой, превышающей 0,5 МГц (разд. 6.11 и табл. 6.3).

Подавление переходных процессов. В любых приборах, чтобы предотвратить сбой в работе (или даже выход из строя), вызываемый случайными выбросами напряжения сети от 1 до 5 кВ, которые имеют место практически на всех линиях переменного тока, полезно ставить устройство для подавления переходных процессов. Эти устройства можно просто подключать параллельно зажимам сетевого питания после предохранителя; они действуют как двунаправленные стабилитроны и обладают способностью выдерживать огромные пиковые значения тока. Выпускаются они в корпусах, аналогичных дисковым конденсаторам или мощным диодам. Небольшие и дешевые GE V130LA10A (стоят около 1 долл.), например переходят в проводящее состояние при напряжении 185 В и могут пропускать импульсные токи с максимальной амплитудой 4000 А (подробнее см. разд. 6.11 и табл. 6.2).

Предохранители. В каждой без исключения силовой шине электронного прибора наличие плавкого предохранителя обязательно. Как мы указывали в разд. 6.11, настенный предохранитель плавится при токах 15–20 А, тем самым предотвращая опасность воспламенения стенной проводки. Если не предусмотреть такие возможные неисправности, как, например, пробой конденсатора источника питания, то от сети в прибор пойдет ток 10 А (т. е. в силовом трансформаторе будет рассеиваться мощность более 1 кВт). Важное замечание (момент, к сожалению, не сразу понятый авторами): сетевой конец должен присоединяться к внутренней клемме держателя предохранителя, чтобы при смене предохранителя вы не могли коснуться пальцами «горячей» клеммы. Используйте легкоплавкие предохранители, выбирая их на ток в 1,5–2 раза больший, чем наибольший ток потребления прибора.

Принцип «холодного управления». Всегда, когда только возможно, полезно избегать прохождения логического или аналогового сигнала через панель управления; это нужно, чтобы предотвратить возникновение перекрестных связей и затухание сигнала, которые в противном случае могут иметь место. Взамен выведения сигналов на переднюю панель, можно подать в схему управляющие сигналы постоянного тока от потенциометров, переключателей и т. п. оборудования, расположенного на передней панели. Это особенно важно при шумах, высокоскоростных сигналах или сигналах низкого уровня, поскольку сигналы управления постоянного тока могут быть отфильтрованы шунтирующими конденсаторами, в то время как для быстроменяющихся сигналов это недопустимо. Например, лучше использовать дополнительные вентили (мультиплексор), чем прогонять логический сигнал через переключатель, или для управления частотой с лицевой панели лучше использовать генератор, управляемый напряжением, чем перестраиваемый RC-генератор. Чтобы осуществить такое «холодное управление», понадобится незначительное дополнительное высококачественное оборудование, но будут обеспечены повышенная надежность и простота монтажа (не нужен будет, например, экранированный кабель).


12.14. Где доставать компоненты

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

Многие поставщики неохотно продают малые партии, поэтому покупатель тратит много сил на приобретение компонентов в количестве 5—10 штук. Добавим к этому, что поставщики обычно имеют только часть нужного вам ассортимента, и вы сталкиваетесь с необходимостью иметь дело с множеством кустарных поделок. На складах электронного оборудования (Radio Shack и др.) организована продажа небольшими партиями, но там имеется в наличии очень ограниченная номенклатура. Система оптовой торговли ориентирована в основном на крупных промышленных потребителей. Фирмы-изготовители предпочитают иметь дело с оптовиками, которые тесно с ними связаны, дают им расширенные каталоги и справочники и могут оказать влияние на цены.

Особая осторожность необходима при покупке ИМС. Многие типы ИМС выпускаются без 100 %-ной проверки. Вместо этого проверяется один образец из каждой партии, и вся партия бракуется, если образец не отвечает стандарту. В результате вы можете случайно приобрести неисправный кристалл, выпущенный фирмой с хорошей репутацией. Как правило, следует ожидать, что примерно 0,1 % новых ИМС окажется непригодным. Это не очень страшно, так как в случае необходимости для обеспечения большей надежности вы всегда можете проверить все ИМС. Все изготовители испытывают свои ИМС, а некоторые (AMD, например) проводят 100 %-ную проверку всех ИМС.

Более серьезная проблема возникает, когда забракованные партии попадают в руки мелких торговцев. Очень часто встречаются подделки, так как машины, выпускающие ярлыки, стоят недорого. По нашему опыту, крупные поставщики (такие, как Arrow, Hamilton/Avnet, Newark, Schweber и Wyle) надежны, по крайней мере если судить по изделиям, действительно ими поставленным. Большинство торговых точек, по-видимому распространяют хорошие товары, но здесь есть элемент риска. Будьте подозрительны по отношению к ИМС без даты выпуска. Поскольку отыскание неисправных ИМС в схеме требует много сил и времени, рекомендуем вам покупать все ИМС у одного и того же поставщика, даже если цены будут относительно высоки. Тем не менее, две ведущие фирмы, чьими изделиями мы с успехом пользуемся, — то Digi-Кеу (богатый каталог; Thief River Falles, MN) и Microprocessors UnUmited (компьютерные чипы; Beggs, OK).

Глава 13 ВЫСОКОЧАСТОТНЫЕ И БЫСТРОДЕЙСТВУЮЩИЕ ПРИБОРЫ

Высокочастотные усилители

Перевод И. И. Короткевич


В этой главе обсуждаются важные особенности техники высоких и радиочастот, в том числе эквивалентные схемы для высоких частот и быстродействующие ключи. Высокочастотные приборы находят широкое применение в области связи и радиовещания, а также в лабораторных установках для проведения радиочастотных измерений (резонансные явления, плазма, ускорители частиц и т. п.). Быстродействующие ключи являются неотъемлемыми элементами вычислительных машин и других цифровых устройств. Высокочастотные и быстродействующие приборы — это линейные и цифровые устройства, работающие в той области частот, где работа схем начинает определяться эффектами межэлектродных емкостей, индуктивностями проводов, накоплением зарядов и длинами волн. Благодаря таким причудливым конструкциям, как полосковые выводы, волноводы или приборы вроде диодов Ганна, клистронов и ламп бегущей волны, схемотехника в этой области частот существенно отличается от техники низких частот. Чтобы представить уровень наших возможностей, скажем, что промышленностью выпускаются цифровые ИМС (счетчики и т. п.), которые работают с импульсами частотой 3 ГГц и выше, а также элементы линейных схем (усилители и т. п.), которые работают на частотах выше 100 ГГц.

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


13.01. Транзисторный усилитель на высоких частотах в первом приближении

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



Рис. 13.1.


Эффективная емкость между коллектором и землей Сн в сочетании с коллекторной нагрузкой Rн образует фильтр низких частот с постоянной времени RнСн. Эта эквивалентная схема приведена с учетом того, что для сигнала U+ то же самое, что и земля. В Сн входят емкости между коллектором и эмиттером, между коллектором и базой, а также емкость нагрузки: На частотах, приближающихся к f = 1/RнСн, усиление начинает быстро падать.

Уменьшение влияния емкости нагрузки. Простейшие методы уменьшения емкостной нагрузки заключаются в учете и уменьшении произведения RнСн, например:

1. Выбираются биполярные или полевые транзисторы с малой емкостью между электродами (как самих p-n-переходов, так и между внешними выводами); такие транзисторы обычно обозначаются как радиочастотные или ключевые транзисторы.

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

3. Уменьшается Rн. Если при этом Iк поддерживать постоянным, то коэффициент усиления падает из-за уменьшения gmRн. Вспомним, что для транзисторов gm =1/rэ или Iк (мА)/25 для усилителей с заземленным эмиттером. Чтобы сохранить коэффициент усиления постоянным при уменьшении Rн, необходимо увеличить ток коллектора, сохраняя Uпостоянным. Таким образом, fмакс ~= 1/RнСн и прямо пропорционально Iк/Сн, что вполне справедливо для больших токов, часто используемых в высокочастотных схемах.


13.02. Высокочастотные усилители: модели для переменного тока

Емкость нагрузки не только уменьшает коэффициент усиления усилителя на высоких частотах. Как мы упоминали выше (см. обсуждение эффекта Миллера в гл. 2), емкость обратной связи (Скб), будучи включенной между выходом и входом, может доминировать в спаде усиления на высоких частотах, особенно если полное сопротивление источника входного сигнала высоко. Чтобы определить, на каких частотах усиление начнет падать и как этого избежать, можно использовать относительно простую модель транзистора или ПТ. Как это делается, покажем на примере высокочастотного усилителя.

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



Рис. 13.2. Эквивалентные схемы для ВЧ биполярного (а) и полевого (б) транзисторов.


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



Рис. 13.3. Зависимость емкости коллектор — база от напряжения для нескольких распространенных биполярных транзисторов.


Емкость изменяется с напряжением приблизительно как С = k(UU0)n, где n лежит в диапазоне от —1/2 до —1/3 для транзисторов, a U0 — постоянное напряжение, равное ~ 0,6 В.

Входная емкость Свх.э имеет другой характер, поскольку вы имеете дело с прямосмещенным переходом. В этом случае эффективная емкость резко растет с увеличением тока базы, так как U близко U0 и имеет мало общего с указанным в паспорте транзистора значением Свх.э. Однако оказывается, что эффективная емкость Свх.э увеличивается с ростом Iэ (и, следовательно, с уменьшением rэ), так что произведение RC(rбСвх.э) остается почти постоянным. В результате усиление транзистора на определенных частотах зависит в первую очередь от соотношения между током, «теряемым» на Свх.э, и током, который «действительно» идет в базу и несильно зависит от тока коллектора. Поэтому вместо того, чтобы задавать значение Свх.э, изготовители транзисторов обычно указывают fT — частоту, при которой усиление тока (h21э) падает до 1. Легко показать, что fT определяется выражением


fT = 1/2πСвх.эrэ, или Свх.э = 1/2π/fTrэ

для значений Свх.э и rэ, данных при некотором токе коллектора. Транзисторы, предназначенные для работы в диапазоне высоких частот, имеют fT от 500 МГц до 10 ГГц, в то время как у транзисторов общего назначения fT бывает от 50 до 250 МГц. На рис. 13.4 приведены кривые изменения fT в зависимости от тока коллектора для типичных транзисторов.



Рис. 13.4. Зависимость произведения усиления на ширину полосы (граничную частоту) fT от коллекторного тока для нескольких распространенных биполярных транзисторов.


13.03. Пример высокочастотных расчетов

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



Рис. 13.5.


Предполагается, что он является частью целой усилительной схемы с обратной связью по постоянному току, обеспечивающей стабилизацию точки покоя на уровне 1/2UКК; показанное на рисунке смещение не обеспечивает само по себе стабилизации. Поскольку нас интересуют высокочастотные характеристики, мы не будем в дальнейшем беспокоиться о том, как осуществляется смещение на самом деле. Заметим, что дифференциальный каскад имеет небольшую допустимую величину синфазного входного сигнала — приблизительно от +0,25 В до отрицательного напряжения, ограниченного рабочим диапазоном источника эмиттерного тока.

Анализ факторов, вызывающих снижение усиления на высоких частотах. Для дифференциального каскада коэффициент усиления и выходное сопротивление поддаются расчету, что дает возможность подробно проанализировать снижение усиления в выходном каскаде. Анализ коэффициента усиления усилительного каскада на Т3 будет состоять в следующем:

1. Находим усиление на низких частотах при нулевом сопротивлении источника. Затем определяем частоту, при которой усиление падает на 3 дБ (т. е. сопрягающую частоту), причем это снижение связано с влиянием входной емкости, емкости обратной связи и сопротивления нагрузки:

f-3 дБ = 1/2πRн(Сн + Скб).

2. Определяем входной импеданс как сочетание полного входного сопротивления базы (rб и Свх.э) и эффективной емкости обратной связи (КUСкб).

3. Рассчитываем сопрягающую частоту, при которой падение усиления на 3 дБ связано с нагружением источника входным импедансом; сравнивая ее с «выходной частотой 3 дБ», вычисленной в п. 1, находим «узкое место» с точки зрения высоких частот.

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

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

Рассмотрим в соответствии со сказанным эквивалентную схему включения транзистора 2N4124 с параметрами Скб = 2,4 пФ при 2,5 В, h21э ~= 250 и fT = 300 МГц (рис. 13.6).



Рис. 13.6.


1. Предположим, что Т3 работает от источника напряжения, его коэффициент усиления по напряжению на низкой частоте равен 100, поскольку rэ = 10 Ом при токе коллектора 2,5 мА. Частота —3 дБ, вычисленная по выходной емкости, приблизительно равна 40 МГц (2,4 пФ параллельно 2 пФ шунтируют 1,0 кОм). Заметим, что в этом простом расчете мы не учитываем емкость нагрузки и паразитную емкость проводов.

2. Входное сопротивление, параллельное емкости Миллера (240 пФ) и Свх.э, приблизительно равно 2,5 кОм (h21эrэ); емкость Свх.э находится по формуле, приведенной выше, и равна ~ 53 пФ.

3. Верхняя сопрягающая частота, связанная с входной емкостью, при грубом расчете получается равной 280 кГц (R = 8,2 кОм параллельно 2,5 кОм; С = 240 пФ + 53 пФ) и определяется емкостью эффекта Миллера КUСкб в комбинации с относительно высоким сопротивлением цепи базы. Заметим, что усиление фактически на низкой частоте меньше 100, если считать, что входной сигнал равен сигналу на ненагруженном выходе дифференциального каскада, так как предварительный каскад работает на низкое входное сопротивление; с учетом этого эффекта усиление на низких частотах фактически получается равным 100·2,5/(2,5 + 8,2), т. е. приблизительно 23.

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


13.04. Примеры высокочастотных усилителей

Как видно из сказанного выше, в высокочастотных усилителях, работающих от источника с умеренно высоким импедансом, доминировать может эффект Миллера. В этих случаях частота fT = 300 МГц и вычисленная для выходного каскада постоянная времени, соответствующая сопрягающей частоте 40 МГц, не влияют на характеристики схемы, которые определяются постоянной времени входной цепи, соответствующей сопрягающей частоте 280 кГц.

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



Рис. 13.7. Упрощенные схемы высокочастотных усилителей, а — повторитель плюс усилитель с общим эмиттером; б — усилитель с общим эмиттером плюс усилитель с общей базой (каскодная схема); в — повторитель плюс усилитель с общей базой (дифференциальный усилитель).


В схеме а эмиттерный повторитель снижает выходное сопротивление источника, подключенного ко входу усилителя с общим эмиттером. Это значительно ослабляет отрицательное действие fT и КUСкб. В схеме б, известной как каскодное включение, каскад с общим эмиттером управляет каскадом с общей базой, тем самым сводя на нет эффект Миллера КUСкб (эмиттер Т4 имеет потенциал, фиксированный напряжением базы; он просто передает ток коллектора Т3 на Rн). В схеме в повторитель управляет каскадом с общей базой, причем эффект Миллера полностью отсутствует, и в то же время уменьшается выходное сопротивление управляющей цепи; это, по существу, обычная схема дифференциального усилителя с несбалансированными коллекторными резисторами и одним заземленным входом.

Другие приемы. Кроме этих схемных конфигураций имеются два других подхода к проблеме входной емкости и емкости обратной связи, а именно: а) использование одного простого усилителя с заземленной базой, если полное выходное сопротивление источника сигнала достаточно низко, и б) использование «настраиваемых» цепей на входе и выходе усилителя с общим эмиттером (или другой схемы) для «расстройки» эффектов межэлектродных емкостей. Заметим, что такие настраиваемые усилители не бывают широкополосными, а усиливают сигналы только в узкой области частот (что может быть весьма выгодно для некоторых применений). Кроме того, в таком усилителе может быть необходима нейтрализация. Узкополосные настраиваемые усилители будут обсуждаться в последних разделах этой главы. В качестве компромиссного «среднего» решения может использоваться корректирующая «пиковая» индуктивность в несколько микрогенри, включенная последовательно сопротивлению нагрузки коллектора для подавления емкостных эффектов и подъема усиления на частотах, несколько превышающих «естественную» частоту высокочастотного спада (рис. 13.8).



Рис. 13.8.


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



Рис. 13.9. Эквивалентные схемы, а — каскад с общей базой, б — эмиттерный повторитель.


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


13.05. Пример проектирования широкополосной схемы

В качестве примера улучшенной модификации широкополосного усилителя рассмотрим схему на рис. 13.10, построенную так, чтобы снижение усиления, вызываемое эффектом Миллера, было полностью устранено. В ней используются эмиттерные повторители на входах (высокий входной импеданс) дифференциального усилителя; выходная нагрузка изолирована эмиттерным повторителем от каскадного выходного узла дифференциального усилителя. Схемное решение основано на использовании хорошего высокочастотного транзистора 2N5179 с fT = 1000 МГц (по паспорту h21э = 10 при 100 МГц) и Скб = 0,5 пФ при 2 В.



Рис. 13.10. Широкополосный дифференциальный усилитель.


Приближенная эквивалентная схема усилителя с обозначением p-n-переходов и паразитных емкостей приведена на рис. 13.11.



Рис. 13.11. Эквивалентная схема по переменному току для усилителя, изображенного на рис. 13.10. Низкая частота: Zвх ~= 40 кОм, КU = 300/10 = 30, Zвых = 8 Ом; для 2N5179: h21э ~= 70, Скб (2 В) = 0,5 пФ, Скэ = 0,2 пФ, h21э (100 МГц, 5 мА) = 10, Спар = 0,3 пФ.


Чтобы определить точку начала высокочастотного спада, надо рассмотреть каждый каскад, анализируя различные RC, используя соответствующие эквивалентные схемы. Обычно имеется один каскад, который имеет самую низкую граничную частоту, и часто интуитивно можно правильно угадать, какой именно. В данной схеме ограничивающим фактором является конечное полное сопротивление цепи базы каскада на Т7 (300 Ом) в сочетании с собственной емкостью Т7 и емкостью нагрузки Сн, частично шунтирующей базу Т7 (помните, что h21э изменяется приблизительно как 1/f, так что при высоких частотах развязывающее действие эмиттерного повторителя всерьез ослабляется).

Упрощенный метод расчета точки спада —3 дБ, который мы применим, будет состоять в следующем. Взяв эквивалентную схему эмиттерного повторителя на Т7, определим импеданс цепи базы при известных емкостях нагрузки, переходов и проводов (полагаем, что Скб = 0,5 пФ, Скэ = 0,2 пФ и Сп = 0,3 пФ).

Поскольку полное сопротивление цепи базы при известных емкостях нагрузки зависит от h21э, следовало бы рассчитать его как функцию частоты (положив h21э ~= 1/f на высоких частотах); но вместо этого оценим его при нескольких значениях частоты, предполагая, что точка — 3 дБ должна лежать где-то вблизи нескольких сот мегагерц. На рис. 13.12 дан итог этого процесса.



Рис. 13.12. Эквивалентные схемы для расчета верхней сопрягающей частоты схемы рис. 13.10.


Полное сопротивление нагрузки было рассчитано на частотах 100, 200 и 400 МГц, далее умножено на коэффициент усиления транзистора по току (учитывается, что h21э ~= 1/f), скомбинировано с другими импедансами, которые всегда имеются в цепи базы, а затем определялось результирующее значение импеданса, чтобы получить относительные значения выхода в функции частоты. Как можно видеть, выходное напряжение снижается на —3 дБ на частоте, равной приблизительно 180 МГц.

Теперь, используя эту оценку граничной частоты, следует посмотреть, будут ли другие RС-цепи давать значительное ослабление на этой частоте. Например, для каскада на Т4 коллекторная цепь должна вызывать снижение усиления на — 3 дБ вблизи 1000 МГц, если в качестве расчетного значения h21э принять усиление транзистора на 180 МГц (h21э ~= 5). Другими словами, каскадная часть схемы не ухудшает общую характеристику.

Этим простым способом можно непосредственно удостовериться, что другие цепи схемы не вносят более низких частот ослабления —3 дБ. При рассмотрении входного каскада следует задаться определенным значением сопротивления источника сигнала. При Zн = 1000 Ом (довольно высокое сопротивление для видеосхем, подобных этой) окажется, что сочетание сопротивления источника и входной емкости (1,0 кОм, 0,8 пФ) даст точку ослабления — 3 дБ вблизи 200 МГц. Таким образом, характеристика этой схемы значительно лучше, чем у рассмотренной выше.


13.06. Уточненные модели схем по переменному току

Объемное («распределенное») сопротивление базы. Стоит отметить, что модели, которыми мы пользовались, в некотором смысле упрощены, в них не учитываются некоторые важные эффекты, как, например, конечное сопротивление базы r'Б. Для высокочастотных транзисторов указывается параметр r'БСкб — постоянная времени коллектор-база. Для 2N5179 она равна 3,5 пс (ном.), эта величина определяется объемным сопротивлением базы, равным приблизительно 7 Ом. При анализе характеристик на очень высоких частотах такие эффекты необходимо включать в расчет; в этом примере они отсутствуют и не влияют на выводы, сделанные нами ранее.

Расщепление полюсов. Другим упрощением в предыдущих рассуждениях было допущение, что каждое RС-звено вызывает спад усиления независимо от других. То, что здесь должно быть некоторое взаимодействие, легко видеть по следующим соображениям: эффект Миллера сам по себе является формой высокочастотной отрицательной обратной связи. Поскольку он определяется выходным напряжением, то он должен снижать полное сопротивление выходной цепи транзисторного каскада, в особенности на высоких частотах, где его «петлевое усиление» велико (конечно, при этом он вызывает уменьшение усиления по напряжению, которое является проблемой в целом). В результате уменьшение сопротивления цепи коллектора сдвигает спад, связанный с RнСн, в область более высоких частот, поскольку выходное сопротивление цепи коллектора параллельно Rн. Таким образом, снижение сопрягающей частоты, связанной с эффектом Миллера (за счет возрастания KU или Скб), вызывает подъем сопрягающей частоты, связанной с емкостью коллектора и нагрузки. Это явление известно как «расщепление полюса».


13.07.Последовательно-параллельные пары

В широкополосных усилителях с низким коэффициентом усиления распространены схемы на последовательно-параллельных парах транзисторов (рис. 13.13).



Рис. 13.13. Последовательно-параллельные пары.


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

В схеме рис. 13.13 оба каскада, T1 и Т2, работают как усилители с низким коэффициентом усиления по напряжению, так как их эмиттерные резисторы не зашунтированы. R6 обеспечивает обратную связь, охватывающую только T1, так как T2 работает как повторитель в этой цепи. Благодаря тому, что полное усиление по напряжению для каскада на T1 определяется отношением (R6/R1), R4 может подбираться в соответствии с необходимым усилением (R4/R5) незамкнутого контура Т2. И наконец, обратная связь к эмиттеру Т1 добавляется для уменьшения усиления до его расчетной величины.

Последовательно-параллельные пары удобны для блочного построения усилителей, так как они чрезвычайно стабильны и просты по конструкции. С их использованием легко строить усилители с шириной полосы до 300 МГц или более. Коэффициент усиления на одну пару составляет обычно от 10 до 20 дБ, а при необходимости получить большее усиление ставят несколько каскадов.

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


13.08. Модульные усилители

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

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




Рис. 13.14. а — Усилительный каскад для области 10-200 МГц. б — Гибридная схема на керамической подложке.

Видны чипы конденсаторов, тонкопленочные индуктивности и резисторы, транзисторы и проволочные соединения (Watkins-Johnson Соmр.).


Два штырька являются выводами входной и выходной цепей с общепринятым полным сопротивлением 50 Ом, а остальные штырьки предназначены для заземления и соединения с источником постоянного тока. В продажу поступают различные усилители: одни из них отличаются низким уровнем шумов, другие — большой мощностью или большим динамическим диапазоном. Усилители могут предназначаться либо для работы в очень широкой области частот, либо для определенной полосы частот, используемой в связи. Например, UTO-514 фирмы Avantek имеет усиление 15 дБ в полосе частот от 30 до 200 МГц, коэффициент шума 2 дБ (максимум) и неравномерность усиления в полосе частот ±0,75 дБ. Устройство размещается в 4-штырьковом корпусе транзистора ТО-8.

Серии Avantek UTO и А-серии Watkins-Johnson модульных усилителей, состоящие каждая из почти сотни моделей, обладают высокими эксплуатационными характеристиками в полосе частот до 2 ГГц. Модули GPD-серий Avantek (или ЕА-серий Watkins-Johnson) менее дорогие, удобные и более доступны. Например, приборы GPD-201 работают в области 5-200 МГц с коэффициентом усиления 30 дБ (минимум) и коэффициентом шума 3,5 дБ (тип.) и стоят 29 долларов.

Гибридные усилители могут использоваться как сами по себе, так и в качестве каскада усиления, обычно их включают в полосковые линии (разд. 13.21). Чтобы еще больше облегчить жизнь, изготовители решили выпускать усилители в блочном исполнении в виде специальных модулей. Эти «зверюшки» обычно представляют собой небольшие металлические коробочки размером 5x5x2,5 см с высокочастотными коаксиальными разъемами типа SMA на входе и выходе. Вы можете выбрать из списка стандартный усилитель с разъемами или же заказать каскад усиления с указанными вами параметрами. Avantek пришлет вам маленькие коробочки и платы ПС, на которые можно установить до 4-х модульных усилителей (если вы пожелаете сделать это сами) (рис. 13.15).



Рис. 13.15. Плата-«микрополоска» (полосковая линия) для модульных ВЧ-элементов.

(Avantek, Inc.)


Чтобы дать вам представление о том, что вы можете приобрести, мы пролистали весь каталог фирмы Avantek и пришли к следующему выводу: AMG-1020 — прекрасный малошумящий усилитель, с усилением 34 дБ и коэффициентом шума 2,7 дБ в полосе частот от 50 до 1000 МГц. Более широкую полосу имеет UTC20-211, который работает в полосе от 10 до 2000 МГц с коэффициентом шума 5 дБ и усилением 26 дБ. Выпускаемые широкополосные усилители перекрывают область частот до 18 ГГц и выше, и при их построении использовались полевые транзисторы на GaAs (а также транзисторы с высокой электронной подвижностью, ВЭПТ).

Усилители, работающие в узкой полосе частот, могут быть оптимизированы с целью снизить уровень шума; имеются высокочастотные усилители такого рода, предназначенные для систем связи. Например, приемник сигналов от спутников Avantek АМ-4285 с усилением 50 дБ (±0,5 дБ) в полосе 3,7–4,2 ГГц с феноменальным коэффициентом шума 1,5 дБ (Тш = 120 К) или АМ-7724, работающий в полосе 7,25-7,75 ГГц, имеющий усиление 35 дБ (±0,25 дБ) при коэффициенте шума 1,8 дБ.

Заказная сборка и настройка позволили значительно улучшить эксплуатационные характеристики этих удивительных коммерческих усилителей. Например, радиоастрономы, как правило, добиваются снижения уровня шумов до 0,7 дБ для заказных усилителей в диапазоне L (1–2 ГГц), построенных с использованием полевых транзисторов на GaAs, и до 0,15 дБ, работая при температуре жидкого азота, (соответствующие шумовые температуры -50 К и 10 К; см. разд. 7.12). Новейшие разработки, использующие полевые транзисторы с высокой подвижностью электронов, достигают при 8,5 ГГц уровня шума, соответствующего 8 К. Наиболее знаменитым производителем этих удивительных устройств является Sandy Weinreb при National Radio Astronomy Observatory (Charlottesville, VA). Есть и небольшие фирмы такие, как Berkshire Thechnologies (Oakland, СА), которые изготовят для вас заказные усилители с такими ошеломляющими характеристиками; как правило, их охлаждаемые усилители имеют уровень шума, соответствующий температуре 5 К в L-диапазоне и 15 К при 8,5 ГГц. Для измерения уровня шума (шумовой температуры) усилителей, работающих в микроволновой области, неизменно используйте метод горячей/холодной нагрузки. Чтобы вспомнить, как это делается, вернитесь назад и просмотрите разд. 7.19.

Коммерческая конкуренция в отношении усилительных модулей столь же сильна, как и для других ВЧ-модульных компонентов. Законченные усилительные модули выпускают Aertech/TRW, Avantek, Aydin Vector, Hewlett-Packard, Narda, Scientific Communications и Watkins-Johnson. Если требуется построить ВЧ-систему, вы должны хорошо проштудировать каталог и выбрать модули для компоновки системы (рис. 13.16). Потом остается лишь закрепить их все на плате и соединить между собой коаксиальным кабелем.



Рис. 13.16. Высокочастотные модули различного исполнения: с разъемами, с выводами для сквозь-платного монтажа, с контактными площадками для поверхностного монтажа.

(Avantek, Inc.)


Широкополосные операционные усилители. Обычно считают, что операционные усилители — низкочастотные устройства, и они недостаточно хороши для работы в области выше 100 кГц или даже 1 МГц. Это в основном верно для того многообразия выпускаемых ОУ, у которых типичная величина fT лежит в области от 1 до 5 МГц (см. табл. 4.1). Однако как видно из табл. 7.3, имеется класс точных ОУ, у которых произведение усиления на ширину полосы достигает значения 100 МГц или около того. Реально, если допускается смещение напряжения на входе порядка 10 мВ, то можно получить ОУ с величиной fT, достигающей 1 ГГц.

Несколько отличаются ИМС «видеоусилителя», у которых вход и выход заземлены, а усиление постоянно. Это правильные операционные усилители (для определения конфигурации и усиления вы используете внешнюю обратную связь), и их можно использовать как усилители с замкнутым контуром для работы при частоте 100 МГц и более. Для получения хороших характеристик при построении многих таких широкополосных усилителей использовалась технология вертикальных pnp-процессов. В отличие от нормальных ОУ, часто встречаются усилители с несимметричным входным импедансом, вызываемым током обратной связи. В табл. 13.2 приведены некоторые из таких быстродействующих устройств.

Элементы высокочастотных схем

13.09. Соединительные линии

Прежде чем приступать к рассмотрению соединений между схемами, необходимо кратко коснуться вопросов линий передач. Ранее, в главе 9, обсуждались волновое сопротивление и проблема концов линии в связи с передачей цифровых сигналов. Линии передач играют важную роль и в радиочастотных схемах, где они используются как путепровод для сигналов от одного участка к другому внутри схемы и часто к антенному комплексу. Линии передачи представляют собой одно из важных исключений по отношению к основному принципу (см. гл. 1), согласно которому полное сопротивление источника сигналов в идеале должно быть малым по сравнению с сопротивлением нагрузки, создаваемым возбуждаемой цепью, а нагрузка должна иметь входное сопротивление, большее по сравнению с сопротивлением источника, на нее включенного. Эквивалентное правило для линий передач заключается в том, что нагрузка (и, возможно, источник) должна иметь сопротивление, равное волновому сопротивлению линии. Линия в этом случае «согласована».

Линии передач для сигналов не слишком высоких частот (скажем, до 1000 МГц) бывают в основном двух типов: параллельные проводники и коаксиальные линии. Первые обычно представляют собой недорогой облитый «двужильный» провод с волновым сопротивлением 300 Ом, используемый для передачи сигнала от телевизионной антенны к приемнику, а вторые широко используются в виде коротких отрезков с разъемами BNC для передачи сигналов между приборами (рис. 13.17).



Рис. 13.17.


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

Волновое сопротивление и согласование. Линия передачи, в любой своей форме, имеет «волновое сопротивление» Z0, означающее, что волна, бегущая вдоль линии, имеет соотношение напряжение/ток, равное Z0. В линиях без потерь Z0 чисто активное и равно √(L/C), где L — индуктивность, а С — емкость на единицу длины. Полное сопротивление типичной коаксиальной линии лежит в пределах 50-100 Ом, в то время как линии с параллельными проводниками имеют диапазон сопротивлений 300-1000 Ом.

При работе с сигналами высокой частоты (или с короткими временами нарастания) важно «согласовать» нагрузку с волновым сопротивлением линии. Основными моментами являются следующие: а) линия передачи, заканчивающаяся нагрузкой, имеющей сопротивление, равное волновому сопротивлению линии, будет передавать импульс в оконечное устройство без искажений; б) сопротивление такой линии конечной длины на любой частоте с любого ее конца равно ее волновому сопротивлению (рис. 13.18).



Рис. 13.18.


Это является неожиданным, во-первых, потому, что на низких частотах вы привыкли думать о длинном коаксиальном кабеле как о небольшой емкостной нагрузке, в основном с достаточно высоким (емкостным) импедансом. Кроме того, на низких частотах (длина волны много больше длины кабеля) отсутствует необходимость в согласовании сопротивления линии при условии, что вы можете обеспечить перезаряд ее емкости (обычно 100 пФ на метр длины). Во-вторых, если кабель заканчивается резистором, то он вдруг непонятным образом становится чисто активным сопротивлением при всех частотах.

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

Эти свойства закороченного кабеля иногда используют для генерации коротких импульсов ступенчатой формы. Ступенька напряжения подается на вход кабеля через сопротивление, равное Z0, причем с другого конца кабель закорочен. На входе кабеля образуется прямоугольный импульс, так как отраженная ступенька гасит входной сигнал; при этом длительность импульса равна времени прохода ступеньки туда и обратно (рис. 13.19).



Рис. 13.19. Генерация импульсов с помощью короткозамкнутой линии передач (инвертированное отражение).


В кабелях конечной длины с сопротивлением R не равно Z0 также формируется отраженная волна, хотя и меньшей амплитуды. Если R < Z0, то отраженная волна инвертируется, если R > Z0, то не инвертируется. Отношение амплитуды отраженной волны к амплитуде падающей волны определяется выражением

Aотр/Aпад = (RZ0)/(R + Z0).

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

Так, например, входной импеданс линии, длина которой равна нечетному числу λ/4 и которая заканчивается на дальнем конце нагрузкой с импедансом Zн, равен Zвх = Z20/Zн. Если нагрузка активная, то и входной импеданс будет активным. С другой стороны, линия, длина которой равна целому числу полуволн, имеет входное сопротивление, равное сопротивлению на ее конце (рис. 13.20).



Рис. 13.20.


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


13.10. Отрезки линий, согласующие устройства и трансформаторы

Есть несколько интересных применений линий передач, в которых либо используются свойства несогласованных отрезков, либо необычным образом используются секции линий общего пользования. Например, четвертьволновые согласующие отрезки, для которых выполняется соотношение Zвх = Z20/Zн. Это выражение можно представить как Z0 = √(ZвхZн). Другими словами, с помощью четвертьволновых отрезков можно согласовать любые два импеданса путем подбора согласующей секции с подходящим волновым сопротивлением.

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



Рис. 13.21. а — четвертьволновая согласующая секция; б — согласующие отрезки.


Секции линии передач (или трансформатор из нескольких соединенных между собой обмоток) можно использовать для построения "baluns"-устройств, согласующих несбалансированную линию (коаксиальную) со сбалансированной нагрузкой (например, антенной). Есть простые конфигурации, которые создают согласование одновременно с фиксированным преобразованием импеданса (обычно 1:1 или 4:1). Вероятно, самыми удачными схемными элементами, построенными из линий, являются широкополосные преобразователи. Эти устройства представляют собой либо просто несколько витков миниатюрного коаксиального кабеля, либо это пара скрученных проводов, намотанная на ферритовый стержень с соответствующими соединениями. В них отсутствуют высокочастотные ограничения, присущие обычным трансформаторам (вызываемые резонансным сочетанием паразитной емкости и индуктивности обмотки), так как катушка устроена таким образом, что емкость и индуктивность обмотки образуют линию передач, свободную от резонансов. Они могут обеспечивать различные коэффициенты преобразования полного сопротивления с поражающими широкополосными характеристиками (например, от 0,1 до 500 МГц потери составляют меньше 1 дБ) — свойство, не присущее преобразователям, сконструированным на основе простой катушки с индуктивной связью.

Преобразователи на отрезках линий в виде модулей выпускаются Vari-L Co., Mini-Circuits Laboratory и многими другими изготовителями. На рис. 13.22 показано несколько примеров преобразователей и трансформаторов, используемых в линиях.



Рис. 13.22. Трансформаторы на линиях передач. а — резонансный волновод; б — резонансная петля; в — трансформатор.


13.11. Резонансные усилители

В высокочастотных схемах, предназначенных для связи или других применений, где рабочая частота ограничена узкой областью, принято использовать настроенные LC-цепи в качестве нагрузки коллектора или стока. Это дает несколько преимуществ: а) большее усиление в одном каскаде, поскольку нагрузка представляет собой высокое полное сопротивление на частоте сигнала (КU = gmZн) и в то же время допускается произвольный ток покоя; б) исключаются нежелательные эффекты емкостной нагрузки, так как контур LC «встраивает» любую емкость, — она становится частью настраиваемой емкости схемы; в) упрощается межкаскадная связь, поскольку от LC-цепи можно делать ответвления или организовывать трансформаторную связь и даже строить резонансные согласованные цепи, как, например, П-образные четырехполюсные фильтры, чтобы получить любое желаемое согласование сопротивлений; г) благодаря частотной селективности настраиваемого контура отсутствуют шумы и сигналы с частотами, не входящими в полосу.

Примеры настраиваемых схем ВЧ. При обсуждении схем связи мы рассмотрим

резонансный ВЧ-усилитель в его «естественном окружении». Здесь же мы просто приведем несколько примеров применения настраиваемых контуров в генераторах и усилителях. На рис. 13.23 изображена схема классического резонансного усилителя.



Рис. 13.23. Резонансный усилитель (каскодный) на полевом МОП-транзисторе с двумя затворами.


Полевой транзистор с двумя затворами обедненного типа позволяет избавиться от эффекта Миллера благодаря использованию нижнего затвора в качестве входного. Когда нижний затвор заземлен по постоянному току, через каскад идет ток Ico. Параллельный LC-контур настраивается на центральную частоту усиления, причем выход отделен от нагрузки с помощью повторителя на Т2. Поскольку на стоке +10 В, выходной повторитель требует большего коллекторного напряжения. Этот тип схемы имеет очень большое усиление в резонансе, ограничиваемое добротностью Q LC-контура и нагрузкой в виде повторителя.

В схеме, приведенной на рис. 13.24, частота генератора устанавливается с помощью тщательно сконструированного перестраиваемого LC-контура.



Рис. 13.24. LC-генератор на полевом транзисторе с p-n-переходом.


Эта схема ГПЧ (генератора переменной частоты) применяется в качестве настроечного элемента в некоторых передатчиках и приемниках, а также как источник радиочастотных сигналов изменяемой частоты. В этом генераторе ПТ с p-n-переходом обеспечивает необходимое усиление мощности благодаря положительной обратной связи от истока через L1. L1 имеет несколько меньшее число витков во вторичной обмотке, обеспечивая усиление по напряжению и, следовательно, генерацию. Добавив варикапный диод, который работает как конденсатор с управляемой напряжением емкостью (см. рис. 5.44), вы можете создать такой генератор перестраиваемой частоты. Отметим, что использование на выводах источника питания проходного конденсатора и развязывающего ВЧ-дросселя практикуется почти во всех радиочастотных схемах.

На рис. 13.25 приведена схема усилительного каскада на 200 МГц на транзисторе с общим эмиттером.



Рис. 13.25. Резонансный ВЧ-усилитель на 200 МГц с нейтрализацией. L1 — 3 витка на каркасе № 18; внутренний диаметр 6 мм; длина 5 мм; L2 — 5 1/2 витка на каркасе № 16; внутренний диаметр 8 мм, длина 12 мм.


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

Последняя схема (рис. 13.26) представляет собой ВЧ-усилитель на 25 кВт, в котором используется триод с нулевым смещением на заземленной сетке.



Рис. 13.26. Мощный ВЧ-усилитель (25 кВт на выходе) на триоде с заземленной сеткой.


До сих пор в высокомощных радиочастотных усилителях используются вакуумные лампы, так как полупроводниковые приборы не обладают необходимыми характеристиками (например, триод 8973 имеет выходную мощность 1,5 МВт при 50 МГц!). Конфигурация с заземленной сеткой не требует компенсации. Выходная цепь представляет собой известный П-образный четырехполюсник, подключенный через блокирующий конденсатор С8, С9, L4 и С10 образуют четырехполюсник, причем их значения определяются желаемой резонансной частотой, необходимой трансформацией полного сопротивления и добротностью Q нагрузки (Q, или добротность, является мерой остроты резонанса, см. разд. 1.22). ВЧ-дроссель в анодной цепи используется для задания анодного напряжения в соответствии с амплитудой сигнала на рабочей частоте.


13.12. Элементы ВЧ-схем

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

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

Так же как и усилительные модули, о которых говорилось в разд. 13.08, легкодоступны герметизированные модули генераторов с прекрасными параметрами. В модулях настраиваемых генераторов для управления рабочей частотой от внешнего постоянного напряжения используются варикапы (диоды с емкостью, зависящей от напряжения). В любительском варианте перестраиваемого генератора для частот в области гигагерц в качестве магнитно настраиваемой в резонанс полости используется сфера из железоиттриевого граната (YIG-ЖИГ); ЖИГ — перестраиваемые генераторы обеспечивают высокую спектральную чистоту и линейность настройки. В последнее время при изготовлении недорогих генераторов, обладающих хорошей стабильностью в области гигагерц, используют резонатор в виде диэлектрического шарика, который служит элементом обратной связи для генераторов на полевых транзисторах из GaAs (или биполярных транзисторах). Генераторы с такой «диэлектрической» стабилизацией просты, стабильны и имеют низкий уровень шума.


Высокой стабильностью обладают генераторы, в которых для установки рабочей частоты используются кристаллы кварца. Различные кристаллические резонаторы, свойства которых определяются условиями выращивания, могут обеспечить стабильность порядка 10-6 с температурным коэффициентом около 10-6 град-1. Температурностабильный кварцевый генератор (ТСКГ), в котором для компенсации сдвига частоты колебаний кристалла используется конденсатор с известным температурным коэффициентом, обеспечивает стабильность частоты порядка 10-6 в области температур от 0 до +50 °C и больше. Предельными параметрами обладают генераторы, у которых кристалл термостатируется. Стабильность по времени и температуре у них достигает приблизительно 10-12. Даже в так называемых атомных стандартах частоты (цезий, рубидий) фактически используют кварц в качестве основного осциллирующего элемента, причем его частота при необходимости регулируется для совмещения с собственными частотами атомных переходов.

Генераторы на кристаллических резонаторах, выпускаемые промышленностью, охватывают область частот от 10 кГц до 100 МГц, т. е. весь диапазон, о котором здесь упоминалось. Имеются даже генераторы в малых корпусах DIP (двухрядные корпуса ИМС) и в корпусах транзисторов типа ТО-5 с логическими выходами. Для кварцованных генераторов возможна лишь незначительная электрическая перестройка, поэтому при заказе генератора или кристаллического резонатора необходимо указывать частоту.

Если требуется одновременно и возможность перестройки, и высокая стабильность, то лучше использовать синтезатор частот. Если приложить некоторые усилия, то он будет генерировать любую нужную частоту при единственном опорном источнике стабильной частоты, обычно кварцевом резонаторе на 10 МГц. Синтезатор, управляемый от рубидиевого эталонного элемента (стабильностью ~= 10-12), является превосходным источником сигналов.

Смесители/модуляторы. Схемы, которые формируют на своем выходе произведение двух входных аналоговых сигналов, широко используются в радиотехнике и называются модулятором, смесителем, синхронным детектором или фазовым детектором. Простейшей формой модуляции, как вы скоро увидите, является амплитудная модуляция (AM), при которой несущий сигнал высокой частоты изменяется по амплитуде в соответствии с медленно меняющимся модулирующим сигналом. Перемножитель сигналов, очевидно, выполняет при этом свою прямую функцию. С помощью таких схем можно и управлять коэффициентом усиления, если на один из входов подавать управляющее постоянное напряжение. Для этой цели применимы некоторые ИМС, например МС1495 и МС1496.

Смесители — это схемы, которые, имея на входах два сигнала, формируют на выходе сигнал суммы или разности частот этих сигналов. Из тригонометрического уравнения

cos ω1t cos ω2t = 0,5·(cos ω1 + cos ω2)t + 0,5·(cos ω1cos ω2)t

видно, что четырехквадратный перемножитель — устройство, выполняющее функцию умножения двух входных сигналов любой полярности, — фактически является смесителем. Если подать на его вход два сигнала с частотами f1 и f2, то на выходе появятся сигналы с частотами, равными f2 + f2, и f2 — f2. Смеситель, на один вход которого подается сигнал частотой f0, а на другой — сигнал с полосой, расположенной вблизи нулевой частоты (полоса, ограниченная частотой fмакс), будет формировать на выходе сигналы с полосой частот, симметричной относительно f0, меняющиеся от f0 — fмакс до f0fмакс (спектр амплитудной модуляции см. в разд. 13.15).

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

(cos ω1t + cos ω2t)2 = 1 + 0,5·cos 2ω1t + 0,5·cos 2ω2t + cos (ω1 + ω2)+ cos (ω1ω2)t

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

Для построения смесителей используют: а) просто нелинейные свойства транзисторов или диодов, обычно диодов Шоттки; б) полевые транзисторы с двумя затворами, причем на каждый затвор подается один сигнал; в) ИМС аналоговых перемножителей типа МС1495, МС1496, SL640 или AD630; г) балансные смесители на трансформаторах и диодных матрицах (выпускаются обычно в виде герметизированных модулей под названием «смесители с двойной балансировкой»). Типичными примерами последних являются распространенные смесители с двойной балансировкой серий MI фирмы Watkins-Johnson, работающие в области частот до 4000 МГц с разделением сигнала от 20 до 50 дБ, или дешевый смеситель (1-500 МГц) SBL-1 Mini-Circuits Lab. Смесители широко используются для генерации радиочастотных сигналов с произвольной частотой; в них допускается сдвиг сигнала вверх или вниз по частоте без изменения его спектра. Кратко опишем их работу.

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

Умножители частоты. Для генерации сигналов с частотой, кратной входному сигналу, часто применяют нелинейные схемы. Это особенно удобно, если требуется получить очень стабильный высокочастотный сигнал с частотой, превышающей область хороших кварцевых генераторов. Самый распространенный метод — сместить усилительный каскад в область сильной нелинейности, а затем использовать на выходе LC-контур, настраиваемый на частоту, кратную входному сигналу. Это можно осуществить, применив биполярные транзисторы, ПТ и даже туннельные диоды. Перемножители типа 1496 на низких частотах могут использоваться как эффективные удвоители, если подать входной сигнал на оба входа и таким образом получить квадрат входного напряжения. Квадрат синусоидальной волны содержит только частоту второй гармоники. Выпускаются и модули удвоителей частоты, в которых использованы балансные смесители; они весьма широкополосны (например, FD25 фирмы Watkins-Johnson принимают сигналы с частотами от 5 до 2400 МГц), так как хорошо подавляют как входную частоту («основную»), так и нежелательные гармоники (обычно 30 дБ). В качестве умножителей используются и такие экзотические приборы, как SNAP-диоды и варикапы. Схемы умножителей частоты должны иметь на выходе настраиваемый контур или же после них должны следовать резонансные усилители, так как обычно в нелинейных схемах генерируется много гармоник входного сигнала.

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

Простейшим из них является аттенюатор — прибор, предназначенный уменьшать амплитуду сигнала. Аттенюаторы изготовляются либо с большой ручкой управления и точно калиброванными ступеньками ослабления, либо управляемые напряжением. Последние представляют собой просто балансный смеситель, у которого ток управления подается на один из перемножаемых входов. Фиксированные аттенюаторы (рис. 13.27) удобны для снижения уровня сигналов между элементами, смонтированными в виде модулей радиочастотной системы с 50-омным трактом; они также уменьшают любое возможное рассогласование сопротивления.



Рис. 13.27. Фиксированные аттенюаторы. (С разр. Merrimac Industries. Inc.) A — BNC. Б — mN. В — SMA.


Волноводные тройники (также известные как «разгоны», магические Т, 3-дБ ответвители, равносторонние или ИЗО-Т) — искусно построенная линия передачи с 4 портами (входами-выходами). Сигнал, подаваемый на любой порт, на двух ближайших портах имеет определенный сдвиг фаз (обычно 0 или 180°). Ответвитель, у которого один порт нагружен на волновое сопротивление, называется 3-портовым «разветвителем (собирателем) мощности».

Чтобы сделать разветвитель/собиратель многопортовым, его строят каскадами. Ближайшим родственником ответвителей является устройство связи направленного действия — трехпортовый прибор, в котором небольшая часть проходящей на выход волны ответвляется в третий порт. В идеальном случае на третьем порту нет выхода для волны, идущей в противоположном направлении.

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

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

Если необходимо иметь фильтр, пропускающий очень узкую полосу частот без ослабления сигнала с резкими спадами на границах полосы, то такой полосовой фильтр с превосходными свойствами можно создать, используя пьезоэлектрический (керамический или на кристалле кварца) или механический резонатор. Промышленностью выпускаются 8- и 16-полюсные кристаллические фильтры с центральной частотой в пределах от 1 до 50 МГц и шириной полосы от самой маленькой, в несколько сотен герц, до нескольких килогерц. Эти фильтры чрезвычайно полезны для получения высокой избирательности приемников и для высококачественной генерации модулированных сигналов. Фильтры с поверхностными акустическими волнами (ПАВ) стали популярными и дешевыми недавно. Они тоже могут иметь плоскую характеристику пропускания с очень крутыми краями. Этот очень важный параметр обычно выражается в виде «фактора формы»; например, отношение ширины полосы для —3 дБ к ширине полосы для —40 дБ может достигать величины 1,1. Чаще всего фильтры ПАВ используются в телевизионных приемниках и кабельных системах для ограничения полосы пропускания приемника.

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

Детекторы. Извлечение информации из модулированного радиочастотного сигнала основано на детектировании — процессе выделения модулирующего сигнала на фоне «несущей». В зависимости от вида модуляции (AM, ЧМ, на одной боковой полосе и др.) имеется несколько методов детектирования. Обсуждение этой важной темы мы будем проводить вместе с вопросами организации связи.


13.13. Измерение амплитуды и мощности

Как мы скоро увидим, детектирование АМ-сигнала является просто генерацией напряжения, пропорционального мгновенной амплитуде модулируемого ВЧ-сигнала. Во многих других применениях (радиоастрономия, лабораторные ВЧ-измерения, «нивелировка» сигналов генератора, проектирование фильтров, наблюдения и т. д.), очень важно бывает иметь возможность измерять амплитуду и мощность ВЧ-сигналов. Поэтому, прежде чем переходить к обсуждению организации связи, рассмотрим некоторые касающиеся этого вопроса схемы и методы.

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

Каждая из таких схем не лишена проблем. Преимуществом простых диодных детекторов является работа в аномально широкой области частот (до ГГц, если правильно подобрать диоды), но они нелинейны при низких уровнях сигналов. Использование диодов Шоттки (основные носители) в некоторой степени помогает, так как прямое напряжение для них ниже. Вы можете значительно улучшить ситуацию, если перед выпрямлением пропустите сигнал через предусилитель (это используется, например, в «детекторе уровня» усилитель/диод UTD-1000 Avantek); однако этот путь ограничивает динамическую область из-за насыщения усилителя (UTD-1000 имеет область 30 дБ и работает на частотах от 10 до 1000 МГц). Активный выпрямитель, наоборот, высоко линеен; но он хорошо работает только в области относительно низких частот и совместно со схемами операционных усилителей. Можно, конечно, использовать быстродействующие ОУ, но все равно вы будете ограничены частотой 10 МГц или около этого.

Синхронное (гомодин) детектирование. Интересным методом, в котором сочетаются динамическая область, точность и быстродействие, является синхронное детектирование, также называемое «гомодинным детектированием». В этом методе (рис. 13.28) выходной сигнал выпрямляется путем инвертирования во время какой-либо половины цикла. Это, очевидно, требует чистого сигнала той же частоты, что и детектируемый сигнал, который либо подают извне, либо вырабатывают внутри с помощью системы фазовой автоматической подстройки частоты (ФАПЧ) (разд. 9.27). Наконец, синхронное детектирование хорошо работает вплоть до нескольких мегагерц; большой недостаток — это нужда в когерентном опорном сигнале. Можно видеть, что это та же схема, что и в разд. 15.15, где она выступает в роли фазового детектора (форма, которой мы кратко касались также в разд. 9.27).



Рис. 13.28. Синхронный («гомодинный») детектор.


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



Рис. 13.29.


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



Рис. 13.30. Широкополосный линейный детектор с источником тока.

[Proc. IEE, 122. 3, 249 (1975).]



Рис. 13.31. Характеристики широкополосного детектора.


Работу ее можно истолковать и так: в отсутствии входного сигнала выход усилителя развязывается от выпрямительной цепи, имеющей очень высокое усиление по напряжению (из-за его нагрузки, потребляющей ток); таким образом, чтобы открыть диод, достаточно очень небольшого входного сигнала. Здесь, усиление по напряжению падает до величины KU = Rн/(RЭrэ) (в данном случае, KU ~= 3), предотвращая насыщение. Благодаря широкополосному усилителю и быстродействующему диоду, эта схема будет работать в области до 100 МГц и выше.

Диодная компенсация пост-детектированием. Фирма Hewlett-Packard (HP Journal, 10/80) поставляет схемы, показанные на рис. 13.32, в которых так умно используют согласованные диоды Шоттки, что на каждый диод поступает один и тот же сигнал. Поскольку операционные усилители работают на выпрямленных (низкочастотных) сигналах, ширина полосы ограничивается только диодной цепью. Проектировщики этой схемы заслуживают высокой похвалы (они, можно сказать, «трижды молодцы»).



Рис. 13.32. Диодный детектор с самокомпенсацией; указаны падения напряжения и потенциалы в контрольных точках.


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



Рис. 13.33. Детектор с амплитудным слежением.


Детектирование мощности. Все вышеописанные методы касаются измерений амплитуды высокочастотного сигнала. Но часто бывает, когда нужно реально знать величину мощности. Конечно, для синусоидальной волны имеется простое соотношение, связывающее две величины, Р = U2сp.кв/Rн, т. е. по измеренной амплитуде вы можете рассчитать мощность. Однако, для волны несинусоидальной формы правильное измерение мощности может быть сделано только усреднением квадрата фактической формы сигнала напряжения. В языке радиочастотных измерений это означает, что вам необходим «квадратичный детектор».

Существуют некоторые пригодные для этого цифровые методы. Для сигналов с частотой ниже средних хорошо использовать «функциональные модули», например, монолитный преобразователь среднеквадратичного напряжения в постоянное AD637 Analog Devices. В этих устройствах экспоненциальная характеристика диода в цепи обратной связи используется для формирования квадрата входного сигнала, который затем проходит через низкочастотный фильтр и поступает на аналоговую схему, извлекающую квадратный корень. Схема характеризуется прекрасной линейностью, динамической областью и хорошей шириной полосы. Например, AD637 имеет полную ширину полосы 8 МГц, нелинейность 0,02 % и динамическую область 60 дБ; у него даже есть логарифмический (дБ) выход.

При частотах выше нескольких мегагерц методы «квадрат/квадратный корень» преобразования среднеквадратичного сигнала не работают из-за неадекватности полосы в цепи операционного усилителя. Однако можно использовать другие методы. На рис. 13.34 представлена простая схема квадратичного детектора с обращенным диодом, который есть не что иное, как туннельный диод (разд. 1.06), используемый в нетуннельном направлении (где он имеет нулевое прямое падение напряжения).



Рис. 13.34. Квадратичный детектор на обращенном диоде.

(С разр. Alan Rogers, Haystack Observatory.)


Мы получили эту схему от радиоастрономов Haystack Observatory и были поражены ее экстраординарной линейностью по мощности (рис. 13.35).



Рис. 13.35. Характеристика квадратичного детектора.


В значительной мере эта квадратичная техника произошла от болометрических методов, где входной сигнал (предварительно усиленный) подается на мощный омический нагреватель, температура которого затем измеряется. Поскольку мощность нагревателя точно пропорциональна U2, этот метод является чисто квадратичным. Примером болометрического модуля может служить LT1088 Linear Technology. В нем согласованная пара омических нагревателей связана с согласованной парой диодов, измеряющих температуру. Входной сигнал подается на один из нагревателей, а обратная связь подключается к опорному нагревателю, диод которого находится при той же температуре. Управляющее напряжение опорного нагревателя является выходным напряжением (рис. 13.36).



Рис. 13.36. Точный среднеквадратичный детектор LT1088. Uвых - пропорциональное точному среднеквадратичному входному напряжению.


Болометрической технике присущи широкополосность и точная квадратичность. Однако динамическая область у болометров ограничена, так как микроскопические количества тепла трудно измерить, а большие нагревы приводят к перегоранию устройства! Например, типовой LT1088 работает от постоянного тока до 300 МГц, но имеет динамическую область всего 25 дБ. Тщательное проектирование болометра дает возможность расширить полосу до СВЧ и увеличить динамическую область. Серии 432–438 болометрических измерителей мощности Hewlett-Packard с использованием набора взаимозаменяемых болометрических датчиков перекрывают область частот от 100 кГц до 50 ГГц. Динамическая область составляет 114 дБ (фактор мощности 2,5·1011), от +44 дБ (25 Вт) до -70 дБ (100 пВт), хотя любой отдельный болометр в большинстве случаев имеет область 50 дБ.

Радиосвязь: AM

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


13.14. Некоторые принципы связи

В теории связи мы говорим о «каналах» связи, т. е. о способе передачи информации от А к Б. Например, каналы могут быть кабельными или в виде линий из оптического волокна. Радиочастотный канал связи охватывает спектр электромагнитных колебаний, который, грубо говоря, начинается с очень низких частот (НЧ) в несколько килогерц, проходит область коротких волн от нескольких мегагерц до нескольких десятков мегагерц (ВЧ), область очень высоких частот (СВЧ) и сверхвысоких (ультравысоких) частот (УВЧ), доходящих до нескольких сотен мегагерц, и микроволновую область, начинающуюся около 1 ГГц.

Сигнал, содержащий речь, переносится радиочастотным каналом благодаря тому, что он модулирует несущую частоту радиодиапазона. Важно понять, почему вообще это делается так, а не осуществляется прямая передача речи. Для этого имеются две основные причины. Во-первых, если бы информация передавалась в ее естественной полосе радиоволнами очень низких частот (НЧ), то любые два сигнала стали бы перекрываться и служить помехой друг другу; т. е. кодируя информацию несущими частотами, находящимися в разных частях спектра, мы получаем сигналы на многих частотах и, таким образом, устанавливаем одновременно много каналов связи. Во-вторых, одни длины волн более пригодны для генерации и распространения, другие менее. Например, в области от 5 до 30 МГц сигналы обходят Землю вокруг за счет многократных отражений от ионосферы, а в микроволновой области узкие направленные пучки можно формировать с помощью антенн умеренных размеров. Поэтому область ВЧ (коротких волн) используется для связи за линией горизонта, в то время как микроволновая область используется с ретрансляторами в пределах прямой видимости и в радиолокации.

Модуляцию несущего сигнала можно осуществить несколькими путями. Грубо говоря, все методы имеют общее свойство, а именно модулированный сигнал занимает полосу частот, по крайней мере сравнимую с полосой модулирующего сигнала, т. е. полосой посылаемой информации. Таким образом, высокая точность воспроизведения при передаче звука получается при полосе не менее 20–40 кГц безотносительно к несущей частоте. Совершенно смодулированный сигнал имеет нулевую ширину полосы и не передает информацию. Передача низкоинформатированного содержания, как, например, телеграфная связь, занимает относительно узкую часть спектра (возможно, 50-100 Гц), в то время как передача телевизионного изображения требует уже нескольких мегагерц. Следует отметить, что большая информация может переноситься каналом с данной шириной полосы, если отношение сигнал/шум (С/Ш) достаточно высоко. Такое «частотное сжатие» основывается на том, что «емкость канала» равна ширине полосы, умноженной на log2 (С/Ш).


13.15. Амплитудная модуляция

Начнем с простейшей формы модуляции (AM), обращая внимание на ее частотный спектр и способы детектирования. Представим простой несущий сигнал, cos ωн, изменяемый по амплитуде под действием модулирующего сигнала более низкой частоты, cos ωм, в следующем виде:


сигнал = (1 + m·cos ωмtcos ωнt,

где p-n-индекс модуляции», меньший или равный 1. Раскрыв произведение, вы получите

сигнал cos ωн + 0,5·m·cos (ωн + ωм)t + 0,5·m·cos (ωн - ωм)t

т. е. энергия модулированного несущего сигнала сосредоточена на частоте ωн и на частотах, отстоящих по обе стороны от ωн и ωм. На рис. 13.37 изображены такой сигнал и его спектр. Здесь глубина (или индекс) модуляции m равна 50 %, а две боковые частоты несут каждая по 1/16 доли от энергии, содержащейся в несущем сигнале.



Рис. 13.37. Амплитудная модуляция.


Если моделирующий сигнал имеет сложную форму волны [f(t)], как, например, речь, то амплитудно-модулированная волна определяется выражением сигнал = [А + f(t)]cos ωнt,

где постоянная величина А должна быть настолько большой, чтобы Af(t) всегда было положительным. Тогда спектр будет просто симметричной функцией относительно несущей частоты (рис. 13.38).



Рис. 13.38. Спектр AM и полоса частот модуляции (речь). а — модулирующий сигнал. б — несущая после AM.


АМ-генерация и детектирование. Генерация амплитудно-модулированных сигналов радиодиапазона легко осуществляется любым методом, при котором амплитуда сигнала управляется напряжением по линейному закону. Обычно изменяют напряжение питания ВЧ-усилителя (если модуляция осуществляется в выходном каскаде) или используют ИМС переумножителя, например 1496. Если модуляция происходит на каскаде с низшим уровнем сигнала, то все последующие каскады должны быть линейными. Заметим, что при амплитудной модуляции модулирующий сигнал должен иметь постоянное смещение, чтобы он никогда не принимал отрицательное значение. Графически это показано на рис. 13.39.



Рис. 13.39. а — 50 %-ная модуляция; б — 100 %-ная модуляция; в — перемодуляция.


Простейший приемник AM (прямого усиления) состоит из нескольких перестраиваемых резонансных ВЧ-каскадов усиления, за которыми следует диодный детектор (рис. 13.40).



Рис. 13.40.


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


13.16. Супергетеродинный приемник

Приемники, состоящие из последовательно включенных ВЧ-усилителей, неудобны по нескольким причинам. Во-первых, отдельные каскады должны быть настроены на одну и ту же частоту, что требует либо очень большой координированности в работе с большим количеством ручек или же чрезвычайно точного согласования набора одновременно настраиваемых LC-контуров. Во-вторых, поскольку общая частотная избирательность определяется характеристиками всех усилителей в совокупности, форма полосы пропускания будет зависеть от точности настройки каждого усилителя; отдельные усилители не могут иметь столь узкополосную характеристику, как это хотелось бы, так как настройка в этом случае была бы практически невозможна. И поскольку принимаемый сигнал может быть любой частоты в пределах области настройки усилителей, нельзя использовать пьезофильтры для получения плоской полосы пропускания с резкими спадами по краям (крутые «фронты»), что обычно очень нежелательно.

Прекрасное решение этих проблем дает применение супергетеродинного приемника («супергетеродина»), показанного на рис. 13.41.



Рис. 13.41. Супергетеродинный приемник.


Поступающий сигнал усиливается одним каскадом ВЧ-усилителя, смешивается с сигналом локального генератора (ЛГ), и при этом получается сигнал фиксированной промежуточной частоты (ПЧ), в данном случае равной 455 кГц. После этого следует набор резонансных усилителей с фиксированной настройкой на ПЧ, в которые входят селективные элементы, такие, как пьезокристаллические или механические фильтры. Схема заканчивается детектором и усилителем звуковых частот. Приемник настраивают, изменяя частоту ЛГ, так как любая входная частота смешивается с ней и преобразуется в промежуточную частоту (с точностью до полосы пропускания ПЧ). Вход ВЧ-усилителя должен настраиваться в соответствии и одновременно с ЛГ, но точность настройки не очень существенна. Это делается с целью а) улучшить чувствительность путем усиления на ВЧ с малыми шумами перед смешением и б) отсечь сигналы «зеркальной» частоты. В данном случае зеркальный — это входной сигнал с частотой на 455 кГц выше частоты Л Г (вспомним, что смеситель вырабатывает сумму и разность частот). Другими словами, в супергетеродинном приемнике смеситель и локальный генератор (гетеродин) используются для сдвига входной (перестраиваемой) частоты сигнала в область фиксированной промежуточной частоты, где усиление и чувствительность максимальны.

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

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

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

Смесители с подавлением зеркальной частоты. В супергетеродинных приемниках резонансный ВЧ-усилитель служит для подавления сигналов «зеркальной» частоты, которые отделены от нужных сигналов входной ВЧ-полосы удвоением промежуточной частоты (ПЧ). ВЧ-усилитель должен достаточно селективно подавлять зеркальную полосу (т. е. чувствительность его к сигналам этой полосы должна быть много меньше, чем к сигналам входной полосы). Он должен быть настроен, чтобы его полоса пропускания постоянной ПЧ поддерживалась на удалении от полосы ЛГ, поскольку последний служит для настройки приемника.

Есть и другие способы подавления чувствительности к зеркальным частотам, без использования резонансных ВЧ-усилителей. На рис. 13.42 показан смеситель с подавлением зеркальной частоты.



Рис. 13.42. Смеситель с подавлением зеркальной частоты.


Сначала сигнал поступает на пару смесителей, управляемых квадратурными ЛГ («квадратурные» означает, что они сдвигают фазу на 90°); затем сочетание выходных сигналов ПЧ вновь подвергают фазовому сдвигу на 90° в том же направлении. Двойной сдвиг на 90° приводит к сложению для одной стороны полосы и к вычитанию для другой, и таким образом, к аннулированию зеркальной полосы. Изменение полярности на противоположную в результате последнего сдвига фазы на 90° приводит к взаимной замене зеркальной и сигнальной полос. На практике обычно для сдвига фазы и резистивного нагружения неиспользуемого выхода в каждом случае используют «4-портовые квадратурные волноводные тройники».

Если скомплектовать смеситель с подавлением зеркальной частоты из стандартных широкополосных элементов, то можно ожидать подавления зеркальной стороны полосы примерно на 20 дБ, если работать через одну или две октавы по частоте. Иногда важно иметь возможность быстрого продвижения по частоте (так называемое «частотное сканирование») без настройки ВЧ-усилителя со слежением; в этом случае смеситель с подавлением сигналов зеркальной частоты получается как раз таким, как нужно.

Интересная тонкость: как мы отмечали в разд. 13.12, смеситель может быть выполнен как модулятор и наоборот. Это зависит от того, используете ли вы устройство для преобразования низкочастотной полосы модулирующих сигналов, несущих информацию, в высокие частоты (в этом случае его называют «модулятором») или для перевода модулированной ВЧ-полосы вниз к полосе частот модулирующих сигналов (или по пути предварительно к ПЧ-полосе), где вы демодулируете ее, чтобы выделить исходный модулирующий сигнал (в этом случае называют «смеситель»). Когда осуществляется полный оборот по этому пути, то мы говорим, что сигналы зеркальной полосы приходят с другого бока полосы. Наши два метода подавления зеркальной частоты (ВЧ-фильтр и смеситель с подавлением) становятся двумя классическими методами модуляции одной боковой полосы, называемыми методами «фильтра» и «фазировки». Это может стать более ясным, после прочтения вами следующего раздела (не беспокойтесь, если вы и не сделаете этого, но мы не можем отказаться от попытки разъяснить эту объединяющую идею).

Передовые методы модуляции

13.17. Метод одной боковой полосы (SSB)

Из рассмотрения спектра АМ-сигнала с очевидностью вытекает, что можно добиться некоторого улучшения параметров. Большая часть энергии (67 % при 100 %-ной модуляции) содержится в несущей частоте, не участвующей в переносе информации. Эффективность AM достигает 33 % и то только, если индекс модуляции равен 100 %. Поскольку форма импульса голоса обычно имеет большое отношение максимальной амплитуды к средней амплитуде, индекс модуляции АМ-сигнала, передающего речь, чаще всего значительно меньше 100 %, хотя можно использовать «компрессию» речевого сигнала для увеличения энергии в боковых полосах). Кроме того, при симметричном расположении боковых полос перенос идентичной информации приводит к возникновению сигнала, занимающего полосу, в два раза превышающую практически необходимую.

Путем небольших ухищрений можно исключить несущую частоту [используем балансный смеситель; напоминаем, что

cos A cos B = 0.5·cos(А + В) + 0,5·cos(АВ)

и получить так называемый «сигнал с двумя боковыми полосами и подавленной несущей», или DSBSC. (То же самое получите, если звуковой сигнал умножить непосредственно на несущую частоту, не задавая начального смещения, обеспечивающего постоянное присутствие несущей, как в обычной AM). Далее, использовав либо пьезокристаллический фильтр с крутыми спадами, либо метод, известный как «фазировка», одну боковую полосу спектра сигнала можно подавить. В «однобоковой» полосе (SSB) сигнал эффективно повторяет спектр речи, сдвинутый в область высоких частот, и этот метод связи широко используется радиолюбителями и промышленными потребителями для создания высокочастотных радиотелефонных каналов. Когда нет речи, то передача сигнала не осуществляется. Чтобы принимать SSB, вам нужны гетеродин и «умножающий детектор», как показано на последней блок-схеме, чтобы вновь получить исчезнувшую несущую частоту.

Спектры модуляции. На рис. 13.43 приведен типичный спектр речевого сигнала при модуляции AM, DSBSC и SSB.



Рис. 13.43. Спектры, при различных типах AM.


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

Следует отметить, что смеситель (модулятор) всегда рассматривается как схема сдвига частоты, особенно когда он сочетается с соответствующим фильтром для подавления нежелательных выходных сигналов. Когда он используется в качестве модулятора, полоса низкочастотного сигнала сдвигается вверх на частоту несущего сигнала и образуется полоса, симметричная к fн. Если он используется как смеситель, то частотная зона вокруг fн сдвигается под действием высокой частоты ЛГ вниз до звуковых частот («основной полосы») или до зоны, симметричной к промежуточной частоте (ПЧ).


13.18. Частотная модуляция

Вместо модуляции по амплитуде, как в AM, DSBSC и SSB, можно передавать информацию, модулируя частоту или фазу несущего сигнала:

сигнал = cos [ωн + kf(t)]t — частотная модуляция (ЧМ),

сигнал = cos [ωнt + kf(t)] — фазовая модуляция (ФМ).

ЧМ и ФМ тесно связаны и иногда их вместе относят к так называемой «угловой модуляции». ЧМ хорошо известна как тип модуляции, используемый в СВЧ радиовещательном диапазоне 88-108 МГц (диапазон УКВ), тогда как AM используют в полосе 0,06–30 МГц радиовещательного диапазона. Тот, у кого есть настраиваемый ЧМ-приемник, вероятно, обратил внимание на «успокоение» фонового шума при ЧМ-приеме. Это свойство (возрастание отношения С/Ш или увеличение С/Ш канала) и делает широкополосную ЧМ предпочтительнее AM для высококачественных передач.

Еще о ЧМ: если девиация частоты kf(t)/2π велика по сравнению с модулирующей частотой (в f(t) сохранены самые верхние частоты), вы имеете «широкополосную ЧМ», как в УКВ радиовещательном диапазоне. Индекс модуляции m/f равный отношению девиации частоты к модулирующей частоте, в этом случае больше единицы. Широкополосная ЧМ предпочтительнее, так как при правильных условиях приема С/Ш возрастает на 6 дБ при каждом удвоении девиации ЧМ. Правда, при этом увеличивается ширина полосы канала, поскольку сигнал при широкополосной ЧМ занимает приблизительно 2fдев, где fдев — максимальное отклонение несущей частоты. ЧМ-радиовещание в полосе 88-108 МГц использует максимальное отклонение fдев = ± 75 кГц, т. е. каждая станция занимает полосу около 150 кГц. Этим объясняется, почему широкополосная ЧМ не используется, например в АМ-диапазоне средних волн (0,06–30 МГц): в этом случае во всем диапазоне могли бы работать только шесть станций данной радиовещательной зоны.


Спектр ЧМ. Спектр несущего колебания, частотно-модулированного синусоидальной волной, подобен приведенному на рис. 13.44.



Рис. 13.44. Спектр широкополосной ЧМ.


Многочисленные боковые частоты отстоят от несущей частоты на расстояниях, кратных модулирующей частоте, а их амплитуды определяются функциями Бесселя. Число значащих боковых полос, грубо говоря, соответствует индексу модуляции. Для узкополосной ЧМ (индекс модуляции m < 1) имеется только по одной боковой с каждой стороны от несущей частоты. Внешне это похоже на спектр AM, но если учесть фазу боковых полос, то окажется, что эти волны имеют постоянную амплитуду и переменную частоту, а не постоянную частоту и переменную амплитуду (AM). При широкополосной ЧМ амплитуда несущей может быть очень малой, что обусловливает высокую эффективность ЧМ; это значит, что большая часть передаваемой энергии содержится в боковых частотах, несущих информацию.

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

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

1. «Детектор наклона» — это всего лишь параллельный контур LC, настроенный со сдвигом в одну сторону по отношению к промежуточной частоте; в результате у него получается нарастающая кривая чувствительности в зависимости от частоты во всей полосе ПЧ; при этом ЧМ преобразуется в AM, а обычный детектор преобразует потом AM в звуковые частоты. В улучшенных детекторах наклона используется сбалансированная пара LC-цепей, настроенных симметрично относительно центральной ПЧ.

2. Детектор Foster-Seely или его вариант «детектор отношений» состоит из одного резонансного контура, подключенного к дьявольски хитроумному диодному устройству для получения на выходе линейной зависимости амплитуды от частоты во всей полосе пропускания ПЧ. Такие дискриминаторы лучше простых детекторов наклона (рис. 13.45).



Рис. 13.45. ЧМ-дискриминаторы. а — дробный детектор; б — балансный квадратурный детектор.


3. Фазовая автоподстройка частоты (ФАПЧ). Это устройство изменяет частоту внутреннего генератора, управляемого напряжением, так, чтобы согласовать ее с частотой выходного сигнала; оно было описано в разд. 9.31. Если на входе его действует сигнал ПЧ, то управляющее генератором напряжение в контуре ФАПЧ линейно зависит от частоты входного сигнала, т. е. его можно использовать как выход звуковой частоты.

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

5. «Балансный квадратурный детектор» является комбинацией фазового детектора (см. разд. 9.27 и 9.31) и фазосдвигающей цепи. Сигнал ПЧ пропускается через контур, в котором сдвиг фазы меняется линейно с частотой в полосе пропускания ПЧ (LC-цепи прекрасно выполняют эти функции). Сдвинутый по фазе и первичный сигналы подаются на фазовый детектор, на выходе которого сигнал изменяется пропорционально относительному сдвигу фаз. Этот выход и является искомым звуковым сигналом (рис. 13.45).

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


13.19. Частотная манипуляция

Передача цифровых сигналов (радиотелетайп, RTTY) обычно осуществляется посредством сдвига по частоте непрерывного несущего сигнала в промежутке между двумя близкорасположенными частотами, соответствующими передаваемым 1 и 0; сдвиг на 850 Гц является типичным значением. Применение частотной манипуляции, в отличие от модуляции типа включен — выключен, чрезвычайно эффективно при большом затухании сигнала, вызываемом изменением условий распространения (радиоволн). Для демодуляции при частотной манипуляции обычно используется дифференциальный усилитель, имеющий на выходах пару фильтров, настроенных на две детектируемые звуковые частоты. Частотную манипуляцию можно представить как цифровую ЧМ. Узкий сдвиг следует применять, чтобы не допустить селективное затухание между двумя частотами сигнала. Однако этот сдвиг не может быть меньше, чем информационная полоса пропускания, необходимая для самого переключаемого сигнала, т. е. меньше скорости передачи в бодах (число битов в секунду), или приблизительно 100 Гц для обычного радиотелетайпа.


13.20. Схемы импульсной модуляции

Имеется несколько методов передачи аналогового сигнала в виде импульсов. Основной принцип, на котором основана дискретная передача аналогового сигнала, выражен в теореме о выборке Шеннона. Согласно этой теореме, форма сигнала с ограниченным спектром полностью описывается выборкой его амплитуд, производимой со скоростью, равной удвоенной максимальной частоте сигнала. Таким образом, можно передавать значения амплитуды сигнала (цифровым или другим способом) только в моменты времени, разделенные интервалами 0,5·fмакс непрерывной модуляции. Несколько методов импульсной модуляции показаны на рис. 13.46.



Рис. 13.46. Виды импульсной модуляции.


В амплитудно-импульсной модуляции (АИМ) последовательность импульсов с амплитудами, пропорциональными сигналу, передается через регулярные промежутки времени. Эта схема полезна для временного разделения нескольких сигналов при передаче их по одному каналу связи, так как время между выборками может быть использовано для передачи выборки другого сигнала (конечно, при увеличении полосы пропускания). При широтно-импульсной модуляции (ШИМ) ширина (длительность) импульса постоянной амплитуды пропорциональна мгновенной амплитуде сигнала. ШИМ легко декодируется простым усреднением.

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

Имеются и другие варианты КИМ (известные как кодируемые КИМ), в которых для кодирования квантованных выборок используются другие методы в отличие от простой двоичной последовательности; например, в приведенном примере можно было использовать передачу одного из 16 тонов. Благодаря отсутствию искажений КИМ обычно используется в телеметрии для передачи изображений с космических кораблей. Их также используют для «компакт-дисков» с цифровой записью звука, где выборка каждого стереоканала и преобразование его в 16-разрядное число осуществляются со скоростью 44100 операций в секунду. В любом применении КИМ скорость передачи бита должна подбираться достаточно низкой, чтобы быть уверенным в малой вероятности ошибки при опознавании бита. Обычно это ограничивает скорость передачи по данному каналу по сравнению с прямой аналоговой модуляцией.

Специфические особенности радиочастотных схем

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


13.21. Специальные методы конструирования

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

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

При построении схем, рассчитанных на особо высокие частоты, абсолютно необходимо выводы компонентов делать как можно короче. Это значит, что выводы резисторов и конденсаторов должны обрезаться почти под самый корень и припаиваться так, чтобы они почти не были видны (компоненты при пайке сильно нагреваются, но они обычно это выдерживают). В области СВЧ и УВЧ часто пользуются керамическими «чипами» конденсаторов, припаиваемых прямо на полоски печатных схем и т. п. вообще без выводов. Если вы используете обычные конденсаторы, то их внутренняя индуктивность может вызывать саморезонансные явления даже при таких низких частотах, как мегагерцы. Для СВЧ вообще более предпочтительно пользоваться широкими проводящими полосами и металлическими лентами, а не обычными проводами, так как при этом уменьшается индуктивность соединений. В этом диапазоне используются полосковые линии и микрополоски, где каждый вывод является сам по себе линией передачи с согласованным импедансом. Действительно, полоски листового металла могут быть использованы как части настраиваемых контуров; для примера посмотрим описание индуктивностей в цепи на 440 МГц (ARRL handbook): «L1 - L3 включительно - полоска латуни 65x6 мм, припаиваемая одним концом к корпусу, а другим — к конденсатору. Отводы входа и выхода отстоят на 12,5 мм от заземленного конца». Конечно, все основные методы в микроволновой технике сводятся к использованию в схемах волноводов и полых цепей с такими экзотическими компонентами, как циркуляторы и «магические Т» (разветвители — см. рис. 13.47).



Рис. 13.47. Волноводный ответвитель «магическое Т».


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


13.22. Экзотические ВЧ-усилители и устройства

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



Рис. 13.48.


Параметрические усилители. В этих устройствах усиление осуществляется изменением параметра перестраиваемого контура. Это очень похоже на маятник с грузом, подвешенным на длинной веревке. Предположим, что движение груза представляет собой выходной сигнал. Вы можете создать колебания, мягко толкая груз с резонансной частотой; в обычных усилителях эти «толчки» производятся транзисторами или другими активными приборами. Но имеется другой, совершенно отличающийся метод раскачки, а именно путем подъема и опускания веревки (изменяется ее длина, параметр системы) с частотой, удвоенной по сравнению с естественной резонансной частотой. Попробуйте его (рис. 13.49).



Рис. 13.49. Маятник — аналог параметрического усилителя.


Маятник является точным аналогом параметрического усилителя Адлера. В параметрическом усилителе изменяют емкость настраиваемого контура, используя варикап (емкость, управляемую напряжением), который управляется сигналами «накачки». Эти усилители используются в схемах с низким уровнем шума.

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

Полевые транзисторы на GaAs (арсенид галлия). Последнее слово в области микроволновых усилителей. Без особых усилий достигаются такие же характеристики, что и в параметрических усилителях. В настоящее время промышленные ПТ на GaAs выпускаются с усилением 28 дБ при 10 ГГц и с коэффициентом шума 2 дБ. В последнее время появились ПТ на GaAs с низким уровнем шумов — так называемые транзисторы с высокой подвижностью электронов (ВПЭТ). В экспериментальных охлаждаемых усилителях они имеют удивительную характеристику шума (например, 0,12 дБ (Тш = 8 К) при 8,5 ГГЦ).

Клистроны и лампы бегущей волны (ЛЕВ). Работа усилительных вакуумных ламп, используемых в микроволновой области частот, клистронов и ЛБВ, основана на эффектах, связанных с временем пролета электронов внутри лампы. Разновидность, называемая отражательным клистроном, работает обычно только в качестве генератора благодаря тому, что в нем электронный пучок отражается обратно в сторону источника электронов. Существуют клистроны с непрерывной мощностью 0,5 МВт на выходную частоту до 2000 МГц.

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

Диоды Ганна, лавинно-пролетные диоды (ЛПД или IMPATT) и p-i-n-диоды. Эти экзотические диоды весьма широко используются в СВЧ и микроволновой области. Диоды Ганна - маломощные генераторы частот в пределах 5-100 ГГц, дающие выходную мощность 100 МВт или около этого. ЛПД-диоды, аналогичные по назначению клистронам с мощностью до нескольких ватт при нескольких гигагерцах. Диоды p-i-n-типа ведут себя как сопротивления, зависящие от напряжения, и используются для включения и выключения микроволновых сигналов путем закорачивания волноводов.

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

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

Быстродействующие ключи

Те же самые эффекты, которые ограничивают возможности линейных высокочастотных усилителей (ёмкости переходов, ёмкость обратной связи (проходная) с её эффектом Миллера, а также паразитные емкости в комбинации с конечными сопротивлениями источника и нагрузки), налагают ограничения по скорости и на быстродействующие цифровых схемы. Многие из этих проблем непосредственно конструктора не касаются, поскольку они удачно разрешены при построении самой цифровой ИМС. Трудности возникают при использовании схем ТТЛ, например, только если в конструкции требуются дискретные транзисторы. Тем не менее часто необходимо знать, как работают быстродействующие переключающие схемы. Например, при работе на внешнюю высоковольтную или сильноточную нагрузку (или нагрузку, требующую ток противоположной полярности) от логического выхода очень легко может ухудшиться быстродействие (например, раз в 100), если при конструировании допустить небрежность. Более того, бывают ситуации, когда используются бескорпусные цифровые логические схемы и вам приходится все делать самому.

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


13.23. Модель транзистора и ее уравнения

На рис. 13.50 изображена ключевая схема на насыщенном транзисторе, включенном инвертором, сигнал на которую подается от источника импульсов с чрезвычайно короткими временами нарастания и спада, ^-сопротивление источника, r'б — относительно небольшое внутреннее распределенное сопротивление базы транзистора (около 5 Ом), Скб — наиважнейшая емкость обратной связи (проходная) и RK — сопротивление нагрузки, имеющей емкость Сн.



Рис. 13.50.


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

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



Рис. 13.51. Форма импульса на выходе транзисторного ключа.


Время нарастания tнap определяется как промежуток между моментами времени, когда значение сигнала равно соответственно 10 и 90 % конечного значения. Так же определяется и время спада tсп. Особо отметим относительно длительный период рассасывания неосновных носителей в базе tрасс, который требуется, чтобы транзистор из насыщения перешел в линейное состояние проводимости, по сравнению с соответствующим более коротким временем задержки t3, требующимся для выхода из состояния отсечки. Эти параметры общепринято брать между 10 %- и 90 %-ными точками. В цифровой логике более полезно знать времена распространения tр.нар и tр.сп, определяемые как времена от момента изменения состояния входа до момента, когда выходной сигнал проходит через логический порог (соответственно на нарастающем и спадающем фронтах). Для этих величин обычно пользуются другими обозначениями, например, t1.0з.др и t0,1з.др.

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

Определение времени нарастания. После перехода входного сигнала в состояние низкого уровня и окончания — времени tрасс  напряжение на коллекторе начинает возрастать. Два эффекта ограничивают скорость нарастания: a) RK в сочетании с Скб и Сн дают постоянную времени, определяющую экспоненциальный рост напряжения до UKK, но б) если скорость этого роста достаточно велика, получающийся в результате ток через Скб, выделяясь на сопротивлении источника (Rиr'б), вызывает прямое смещение базы, и оно может возбуждать базу, что тормозит рост коллекторного напряжения (отрицательная обратная связь). Если это происходит, то схема оказывается интегратором, а сигнал на коллекторе — линейно нарастающим. В целом (в зависимости от параметров схемы и самого транзистора) импульс на коллекторе сначала имеет линейное нарастание, переходящее затем в экспоненту, как показано на рис. 13.51.

На рис. 13.52 приведены осциллограммы этих эффектов.



Рис. 13.52. Импульсы переключения напряжений затвора и стока. а — сопротивление стока 10 кОм; б — сопротивление стока 200 кОм. Видно, как с источником, имеющим преувеличенное сопротивление 100 кОм, динамический эффект Миллера способствует фиксации уровня. Цена деления по вертикали 2 В/дел.; частота сигнала 6 кГц.


Вместо n-p-n-транзистора мы воспользовались n-канальным полевым МОП-транзистором, работающим в режиме обогащения. Он ведет себя также, но большее напряжение отпирания затвора существенно улучшает форму импульсов. Кроме того, полевые МОП-транзисторы не имеют эффектов, связанных с временами рассасывания носителей и задержки, и у них отсутствует постоянный входной ток, при котором все упрощается. На рис. 13.53 приведена схема, в которой импеданс источника сигналов нами намеренно сделан преувеличенным.



Рис. 13.53.


Заметьте, как емкость обратной связи поддерживает напряжение затвора на уровне порога отпирания во время переключения стока. Обратите внимание также на то, что нарастание сигнала стока изменяется экспоненциально, если Rc велико.

Простой способ расчета поведения схемы состоит в следующем:

1. Рассчитывается скорость нарастания напряжения на коллекторе для «ограничения вследствие интегрирования» с использованием уравнения


где Uвх.н.у — низкий уровень входного напряжения.

2. Определяется коллекторное напряжение Ux, при котором выходное напряжение переходит от линейного нарастания к экспоненте из уравнения


С помощью этих двух уравнений можно вычислить форму переднего фронта коллекторного импульса и время нарастания. Если Ux окажется отрицательным, то это означает, что нарастание коллекторного напряжения носит чисто экспоненциальный характер: емкостная нагрузка преобладает и ток через емкость обратной связи вообще не возбуждает базу. Величина r'б обычно незначительна.

Упражнение 13.1. Выведите две предшествующие формулы. Указание: для вывода второй формулы приравняйте ток обратной связи, текущий в базу, к току коллекторного резистора за вычетом тока, ответвляющегося в емкостную нагрузку.


Определение времени спада. По истечении короткого времени задержки t3 после перехода входного сигнала в состояние высокого уровня Uвх.н. у коллекторное напряжение начинает падать к уровню насыщения транзистора. Произведя несложные расчеты, легко увидеть, что ток коллектора определяется выражением


где первое выражение — это ток базы, умноженной на h21э, а второе — ток коллектора, определяемый как ток через RK минус ток, отбираемый зарядом емкости, подключенной к коллектору.

Напоминаем, что dUK/dt отрицательно. После преобразования получим


где первый член в скобках соответствует току управления в цепи базы, умноженному на h21э, а второй — току через коллекторный резистор. Теперь вы можете попробовать рассчитать некоторые схемы; вы сможете определить времена нарастания и спада, а также какая емкость доминирует. Сначала, однако, рассмотрим времена рассасывания носителей и задержки.

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

Т ~ (Rиr'б)(Скб + Сбэ).

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


где обратный ток базы Iб. выкл отрицателен при токах базы, обеспечивающих «разряд» заряда в базе. Коэффициент К определяется «временем жизни неосновных носителей», которое сильно уменьшается при легировании золотом. Однако такое легирование уменьшает h21э и увеличивает ток утечки. Этим объясняется высокое быстродействие ТТЛ, а также их низкое напряжение пробоя (порядка 7 В). Времена рассасывания могут быть очень большими и составлять несколько сотен наносекунд, что примерно на порядок превышает времена задержки при включении. Так, например, распространенный прибор общего назначения 2N3904 имеет максимальное время задержки 35 нc, а время рассасывания 200 нc при стандартных условиях проверки, когда на базу подается отрицательное смещение, равное падению напряжения на двух прямосмещенных диодах. Поскольку времена рассасывания существенно ограничивают быстродействие переключательных схем, приходится применять меры для решения проблемы насыщения.

Один из способов заключается в том, чтобы исключить вовсе состояние насыщения у транзистора. Включенный в обратную связь диод Шоттки («связь Ваker'a») между базой и коллектором прекрасно выполнит эту задачу, отбирая избыточный ток базы, когда транзистор близок к насыщению и потенциал коллектора ниже, чем у базы. Это предотвращает насыщение транзистора, так как напряжение прямосмещенного диода Шоттки меньше напряжения прямосмещенного перехода коллектор-база. Этот метод использован в ТТЛ-логических схемах с диодами Шоттки (ТТЛ-Ш). Часто небольшой «ускоряющий» конденсатор (25-100 пФ), параллельный резистору в цепи базы, хорошо дополняет этот прием, поскольку способствует уменьшению времени рассасывания, обеспечивая дополнительные импульсы тока, способствующие «разряду» базы, когда транзистор насыщен, а также быстрому нарастанию тока базы, когда транзистор включается. Эти схемы показаны на рис. 13.54.



Рис. 13.54. Схемы ключей с повышенным быстродействием. а — с диодом Шоттки; б — с ускоряющим конденсатором.


13.24. Устройства аналогового моделирования

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

Приятные разработки получаются с использованием уже развитых систем автоматического аналогового моделирования, в частности программы, называемой "SPICE" и ее некоторых коммерческих расширений. SPICE (автор L. W. Nagel) моделирует работу вашего опытного варианта схемы (используя библиотеку усложненных моделей элементов), предсказывает коэффициент усиления, искажения, шумы, частотный отклик и т. д. Вы можете попросить систему показать форму сигнала (напряжения и тока) в любой точке схемы — компьютерный осциллограф! Таким образом, вы можете проигрывать различные варианты вашей гипотетической схемы, увеличить быстродействие конденсаторов, проводить испытания элементов, делать замены в схеме и т. д. Фактически, при хорошем моделировании можно исследовать влияние допустимых отклонений параметров элементов путем либо обычного анализа сбоев, либо проводя более сложную статистическую обработку методом «Монте-Карло». Некоторые программы моделирования выполняют также анализ «чувствительности», который указывает вам элементы, в наибольшей степени определяющие характеристики схемы.

Программы автоматического моделирования недороги и приспособлены для настольных компьютеров так же как и для любой большой вычислительной системы (например, IsSpice фирмы Intusoft или PSpice Microsim). Наибольшее признание получили таблицы соединений ("netlist") — продукт программ создания чертежа схемы ("Schematic capture") (разд. 12.08). Программы моделирования не ограничены проектированием высокочастотных схем. Они применимы и к моделям операционных усилителей, цифровых схем и внутренностей самой ИМС. Хотя SPICE пока доминирует, но уже появилось около дюжины программ моделирования, оптимизированных под конкретные применения.

Несколько примеров бустродействующих переключательных схем

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


13.25. Высоковольтный усилитель

Начнем со схемы, изображенной на рис. 13.55.



Это простой инвертирующий каскад, предназначенный для возбуждения пьезоэлектрического кристалла импульсами 100 В, первоначально генерируемыми ТТЛ-логикой. Параметры выхода ТТЛ и, следовательно, сигнала, подаваемого на базу, приблизительно равны указанным на рисунке величинам. В этих расчетах мы не будем учитывать r'б, которое мало по сравнению с сопротивлением источника.

Время нарастания. Начнем с определения скорости роста коллекторного напряжения на выходе из-за «интегрирования»:



Теперь найдем напряжение на коллекторе, при котором процесс напряжения на выходе из линейного переходит к экспоненте:



Это означает, что нарастание коллекторного импульса происходит только экспоненциально, так как ток обратной связи (CкбdUК/dt) недостаточен, чтобы задержать переход базы в состояние проводимости, задаваемое состоянием источника. Постоянная времени для коллекторной цепи равна RК(Сн + Скб), или 0,33 мкс, а время нарастания (по уровню от 10 до 90 %) равно 2,2 постоянной времени, т. е. 0,73 мкс. Отсюда ясно, что преобладающим в нарастании оказывается влияние коллекторного сопротивления и ёмкости нагрузки.

Время спада. Для анализа спада используем формулу, полученную ранее, и найдем:



Последний член зависит от UK, но он незначителен по сравнению с первым членом в скобках. Если это не так, то вам придется оценивать эту величину при нескольких значениях коллекторного напряжения, чтобы получить правильную картину формы спада. Здесь следует отметить, что рассчитанное время спада соответствует частоте около 3 МГц и, следовательно, используемая нами величина h21э = 100 вполне реальна (fT = 300 МГц).

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

Форма выходного импульса. Для этой схемы форма коллекторного сигнала соответствует приведенной на рис. 13.56.



Рис. 13.56.


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

В наших допущениях мы всюду считали, что фронты импульса на выходе ТТЛ много короче, чем на выходе нашей схемы. Обычно времена нарастания и спада ТТЛ равны ~ 5 нc, что соответствует нашему предположению.


13.26. Усилитель с «открытым коллектором» при работе на шину

Предположим, мы хотим организовать с помощью схем с открытым коллектором управление шиной ТТЛ с выхода nМОП-схемы. Это можно осуществить, используя n-p-n-инвертирующий каскад, как показано на рис. 13.57.



nМОП-прибор, работающий от 4–5 В (см. разд. 9.09), имеет малую нагрузочную способность, поэтому необходимо, чтобы резистор базы был велик. Для того, чтобы подчеркнуть эффекты, связанные с наличием параметров, подобных Скб, мы выбрали два очень распространенных транзистора.

Время нарастания рассчитывается по приведенной выше методике. Для линейного нарастания вследствие интегрирования имеем:



Выбор транзистора. Ситуация видна из рис. 13.58.



Рис. 13.58.


Параметры, полученные для 2N5137, полностью определяются действием емкости обратной связи, усиливающимся из-за относительно высокого сопротивления источника сигнала. Переходные процессы для 2N4124, вероятно, оценены чуть-чуть оптимистично, поскольку они соответствуют частоте около 10 МГц, при которой h21э, скорее всего, несколько ниже предполагаемого значения.

Интересно измерить время достижения напряжения порога ТТЛ (~1,3 В) как основной параметр системы с запуском вентилей ТТЛ шинными сигналами. Если не учитывать времена рассасывания и задержки, то времена достижения порогов ТТЛ будут следующие:



Времена нарастания и спада, измеренные нами, находятся в разумном согласии с предсказанными по нашей несколько упрощенной модели, за исключением, пожалуй, лишь времени нарастания для 2N4124. Имеется несколько возможных объяснений, почему рассчитанное время нарастания в этом случае получилось слишком малым. В расчетах значение h21э бралось при 10 МГц, в то время как время нарастания 17 нс не соответствует более высоким частотам и, следовательно, более низким значениям h21э. Кроме того, практические измерения для этого транзистора дают Скб = 2,2 нФ при 10 В и Скб = 3 пФ при 2 В. Любопытно, что использовавшийся нами 2N5137 имел реально гораздо меньшее значение Скб (~5 пФ), чем указанное в паспорте, и поэтому нам пришлось добавить небольшой конденсатор в схему, чтобы «довести» Скб до «паспортной величины». Это, скорее всего, означает, что технологический процесс изменился уже после публикации данных о параметрах транзистора.

Упражнение 13.2 Проверьте результаты расчётов для dU/dt (нарастание и спад) и Uк.


Снижение питания до +3 В. Заметим, что время достижения порога ТТЛ при переходе из состояния ВЫСОКОГО уровня к НИЗКОМУ гораздо больше, чем при обратном переходе, даже если скорости нарастания и спада выходного сигнала (в случае схемы на 2N4124) почти одинаковы. Это связано с тем, что пороговое напряжение ТТЛ расположено несимметрично между +5 В и землей, и поэтому коллекторное напряжение на спаде для достижения порога должно измениться на большую величину. По этой причине шины ТТЛ часто подключаются к источнику +3 В (для этого иногда используют пару последовательно соединённых диодов, подключенных к +5 В), или каждая линия шины может быть подключена к делителю напряжения, как показано на рис. 13.59.



Рис. 13.59.

Упражнение 13.3. Рассчитайте время нарастания и спада и время задержки распространения для 2N4124, управляющего описанной выше шиной с Сн = 100 пФ. Результат изобразите графически.


13.27. Пример схемы: предусилитель для фотоумножителя

В гл. 15 будут рассмотрены так называемые фотоэлектронные умножители (ФЭУ), устройства, широко используемые в качестве детекторов света, сочетающих высокую чувствительность с высоким быстродействием. Фотоумножители находят применение и там, где измеряется не собственно световое излучение, как, например, в качестве детекторов частиц высоких энергий, в которых кристалл сцинтиллятора при бомбардировке его частицами дает световые вспышки. Чтобы полностью использовать все возможности фотоумножителей, необходим зарядово-чувствительный быстродействующий дискриминатор — схема, которая генерирует выходной импульс при условии, что импульс заряда на входе превышает некоторый порог, соответствующий детектируемым световым фотонам.

На рис. 13.60 приведена схема быстродействующего предусилителя для фотоумножителя и дискриминатора, в которую входит ряд высокочастотных и переключательных устройств, обсуждаемых в этой главе.



Рис. 13.60. Быстродействующий зарядный усилитель для счета фотонов на фотоумножителе. Входная цепь должна иметь внешнюю «паразитную» емкость по крайней мере 10 пФ; для низкоемкостных входов (< 20 пФ) используют Ct = 0,5 пФ; при емкостях источника, достигающих 100 пФ, используют для С, от 1,0 до 1,5 пФ. Фотонный дискриминатор (используется для ФЭУ с высоким усилением); выход для ТТЛ: импульсы 20 нc; 50 Ом; порог 0,1–1,5 пКл, регулируемый; задержка 10 нc, разрешение двух импульсов 30 нc, 100 нc при перегрузке.


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

Описание схемы. Схема начинается с инвертирующего выходного усилителя (ТА—ТС), у которого обратная связь по току (и заряду) осуществляется через R1 и С1. Входной повторитель имеет малое выходное сопротивление и возбуждает ТВ (каскад усиления по напряжению), тем самым снижается влияние емкости обратной связи ТВ (Скб). Повторитель на выходе блока усиления ТС обеспечивает низкое выходное сопротивление, а ТВ — достаточное значение коэффициента усиления. Небольшой положительный импульс на эмиттере ТС соответствует отрицательному заряду, поступившему на вход с ФЭУ; обратная связь по постоянному току стабилизирует выход ТС примерно на уровне 2Uбэ. Т1 смещен как эмиттерный повторитель класса А и обеспечивает низкоомный «мониторный» выход для наблюдения усиленных импульсов с фотоумножителя, поступающих на дискриминатор.

Дифференциальный усилитель на Т2 и Т3 образует дискриминатор: порог сравнения устанавливается потенциометром R22, подключенным к источнику опорного напряжения (Те, работающий в режиме «диодного стабилизатора»), которое изменяется одинаково с входным напряжением покоя 2Uбэ усилителя. Такое «слежение» за диодным падением напряжения обеспечивается за счет того, что транзисторы ТА—ТE представляют собой монолитную транзисторную матрицу (СА3046) и все находятся при одной температуре. Транзистор Т4 вместе с Т3 образуют инверсную каскодную схему, обеспечивающую необходимые быстродействие и сдвиг уровня. Два каскада выходных повторителей, построенные на транзисторах с противоположной полярностью Т5 и Т6, чтобы компенсировать смещение Uбэ, завершают схему.

В этой схеме следует отметить некоторые интересные особенности. Чтобы получить хорошие характеристики по быстродействию, статические токи транзисторов выбираются сравнительно большими (дифференциальная пара Т2, Т3 имеет эмиттерный ток 11 мА, ток покоя Т5 равен 20 мА, а выходной транзистор потребляет 120 мА, чтобы обеспечить возбуждение нагрузки в 50 Ом). Заметим, что база каскодного каскада (Т4) шунтирована на U+, а не на землю, так как его входной сигнал связан с U+ через R17.

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

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



Рис. 13.61. Характеристика импульсов усилителя на рис. 13.60.


СХЕМЫ, НЕ ТРЕБУЮЩИЕ ПОЯСНЕНИЙ

13.28. Удачные схемы

Несколько удачных широкополосных схем изображены на рис. 13.62.




Рис. 13.62. Удачные схемы. а — широкополосный повторитель: высокое Z, малая входная емкость; б — усилитель: высокое Z, малая входная С; в — малошумящий видеоусилитель с малой входной емкостью (инвертирующий каскод).


Дополнительные упражнения. (1) Проработайте детально высокочастотный режим схемы (рис. 13.10), которая кратко описана в разд. 13.05. (а) Начните с повторения расчета частотных характеристик стыка предварительного усилителя и выходного каскада, эквивалентная схема которого изображена на рис. 13.12. Будьте внимательны при определении эквивалентных комплексных сопротивлений. Напишите одному из авторов, если вы обнаружите ошибку! (б) Теперь обратите внимание на то, что высокочастотный спад предварительного каскада начинается на существенно более высокой частоте, чем сопрягающая частота 180 МГц выходного каскада и его возбудителя. Особенно проверьте следующие точки: выходное (эмиттерное) сопротивление каскада T1, подключенное к емкостной нагрузке (см. рис. 13.11); выход Т2, работающий на почти такую же емкостную нагрузку (поскольку коллектор Т4 не заземлен); эмиттеры Т3 и Т4 и их емкостную нагрузку; коллектор Т4 с его емкостной нагрузкой.

(2) Чему равно сопротивление на входе отрезка коаксиального кабеля, когда (а) на дальнем конце цепь разомкнута и длина составляет 1/4 длины волны при заданной частоте, (б) на дальнем конце цепь короткозамкнута и длина та же при заданной частоте, (в) то же, что и в п. (а), но длина составляет 1/2 длины волны, (г) то же, как и в п. (б), но длина составляет 1/2 длины волны? На результатах, полученных в п. (г), основана так называемая «заглушка», используемая в волноводах.

(3) Подробно решите задачу определения времен нарастания и спада для высоковольтной переключательной схемы (рис. 13.55), которая описывалась в разд. 13.24. Примите для Uбэ величину 0,7 В.

(4) Нарастание и спад в шинном возбудителе: рассчитайте времена нарастания и спада для ТТЛ-схемы шинного возбудителя на рис. 13.57, как описывалось в разд. 13.25. Примите Uбэ = 0,7 В.

(5) Постройте видеоусилитель с коэффициентом усиления +5 и спадом частотной характеристики на 20 МГц или выше. Входное сопротивление должно быть 75 Ом, а выходное должно обеспечивать работу на нагрузку 75 Ом при размахе напряжения 1 В от пика к пику. Здесь хорошо для построения неинвертирующего усилителя использовать на входе каскад с общей базой и эмиттерный повторитель на выходе, как предлагается на рис. 13.63. Если ваша схема подобна этой, то закончите построение схемы выбором рабочих токов, номиналов резисторов и элементов цепей смещения. Конечно, можно использовать, если вы хотите, нечто подобное комбинации дифференциального усилителя с каскодной схемой и повторителем. Помните, что усиление должно быть неинвертирующим, иначе изображение будет обратным.



Рис. 13.63.

Глава 14 ПРОЕКТИРОВАНИЕ МАЛОМОЩНЫХ УСТРОЙСТВ

Введение

Перевод М.Н. Микшиса


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

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

Батареи — это не единственные источники питания, которые мы будем рассматривать, далее перейдем к изучению тех «включаемых в розетку» небольших черных пластмассовых модулей, которые поставляются совместно с покупаемыми электронными изделиями. Эти включаемые в розетку блоки замечательны своей дешевизной и представляют собой простые трансформаторы или нестабилизированные источники постоянного тока (трансформатор — выпрямитель — конденсатор) или могут быть полностью законченными стабилизированными источниками постоянного тока; они также могут иметь два или три номинала выходного напряжения. Солнечные элементы полезны в некоторых необычных прикладных задачах, так что мы их также рассмотрим. Наконец, следует упомянуть и об использовании сигнальных токов; для примера укажем протекающий в телефонной линии постоянный ток или переменный ток через реле, обеспечивающее подключение термостата или дверного звонка, от которых можно питать микромощное оборудование.

Затем мы приступим к рассмотрению вопросов разработки маломощных устройств при той же глубине проработки, как и в остальных частях этой книги, сохраняя сходный порядок изучения предмета, а именно, стабилизаторы и эталонные источники, затем линейная схемотехника (на дискретных элементах и ОУ), цифровые схемы и методы преобразования, и наконец, микропроцессоры и память. Известны, кроме того, технические приемы, которые не применяются при типовом проектировании, как, например, «переключение мощности», когда обычная схема выводится из микромощного режима при подаче постоянного тока в течение крайне коротких интервалов времени; например, на регистратор данных с микропроцессора должно подаваться питание в течение 20 мс через интервалы в 60 с. Мы рассмотрим некоторые из таких приемов и укажем странные ловушки, которые ожидают непосвященных.

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

Нам неприятно говорить об этом, но при первом чтении главу можно опустить.


14.01. Прикладные задачи с малым потреблением мощности

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

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

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

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

Изоляция. Приборы, питание которых производится от сети переменного тока, не пригодны для некоторых видов «плавающих» измерений при высоких потенциалах. В качестве примера можно привести следующее: вы хотите измерить микроамперные токи пучка заряженных частиц на зажиме + 100 кВ ускорителя частиц. Считайте, что вам повезло, если вы не сможете провести это измерение при обрыве низковольтового конца от земли (как на рис. 4.79), поскольку сетевой трансформатор высоковольтного источника питания является причиной существенного тока частоты 60 Гц, который с этого трансформатора через емкостную связь попадает в источник высоковольтного напряжения (или возможно из-за коронного разряда или других высоковольтовых эффектов утечки, которые добавляют ложный ток, измеряемый на возвратной шине земли). Если вы попытаетесь создать прибор для измерения тока, питание которого осуществляется от сети переменного тока, скажем, на базе дифференциального усилителя, подсоединяемого через прецизионный резистор в высоковольтный проводник, то сам источник питания вашего прибора должен будет иметь специальный сетевой трансформатор питания с номинальным напряжением пробоя изоляционного материала 100 кВ, так что измерительная схема (ОУ, выводы считывания) может находиться под взвешенным потенциалом 100 кВ. Поскольку такой трансформатор практически невозможно найти, то в этом случае хорошо применить прибор, питание которого производится от батареи (или от солнечных элементов, облучаемых потоком света через зазор) и по сути изолированного и от сети питания, и от шины заземления.

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

Использование маломощных источников. Наборные устройства, модемы, дистанционные системы сбора данных, которые пересылаются через телефонную линию — это примеры конструкций приборов, которые могут получать питание от тока удержания самой телефонной линии (это постоянное напряжение приблизительно 50 В для режима холостого хода, подаваемое через полное сопротивление 600 Ом; при этом вы должны нагрузить линию таким образом, чтобы постоянное напряжение стало ниже 6 В, а телефонная компания подумала, что вы «подняли трубку» и, следовательно, поддерживала соединение). Подобным же образом в «умных» термостатах систем нагревания часто используют NiCd подзаряжаемые элементы для обеспечения их мощностью постоянного тока, заряд же элементов проводится в течение интервалов времени, когда само реле не активированно имеющимся тогда малым переменным током (обычно трансформатор на переменное напряжение 24 В включается последовательно с катушкой реле с сопротивлением в несколько сотен ом). Тот же самый трюк питания вашей схемы от сигнальных переменных токов можно также использовать в схемах включения дверного звонка и вообще в любом другом случае, где применяются низковольтовые реле переменного тока. Другой пример отбора мощности из сигнального тока представляет использование «тока контура промышленных систем сигнализации», в которых постоянный ток в диапазоне от 4 до 20 мА (или иногда от 10 до 50 мА) применяется как носитель измерений аналогового датчика в двухпроводной системе. Модули, использующие такой стандарт, в типовом случае допускают падение напряжения от 5 до 10 В; следовательно, это удобный способ питания удаленной контрольно-измерительной аппаратуры от самого сигнального тока.

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

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

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

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

Минимизация выделения тепла. Схемы, построенные на цифровых элементах серий с технологией ЭСЛ или Шоттки, могут легко рассеивать 10 или более ватт на плату, и аппаратура, состоящая из нескольких таких плат, требует интенсивного воздушного охлаждения. Но с другой стороны, более современные высокоскоростные семейства логических КМОП-схем (с такими названиями, как 14АСхх и 74АСТхх) предлагают рабочие характеристики, сравнимые с их продвинутыми аналогами по Шоттки — технологии, но при незначительном потреблении мощности в статическом режиме и значительно пониженной мощностью потребления в динамическом режиме (рис. 8.19 и 9.2). Это означает возможность применения источников питания меньшего размера, герметичных корпусов, свободных от грязи (так как нет вентилятора), а также большую долговременную надежность. Те же самые соображения применимы и при проектировании линейных схем, при этом малое потребление мощности всегда желательно и об этом помнят почти в любой прикладной задаче, даже когда в распоряжении имеется достаточно мощности.

Непрерываемость. Мгновенное прерывание в подаче питающей мощности часто вызывает начальный перезапуск построенных на микропроцессорах приборов, повреждение компьютеров и др. Чудесным решением этой задачи является использование непрерываемых источников питания (НИП), обычно в виде питаемого от батареи инвертора постоянного тока в переменный с выходным напряжением 115 В и частотой 60 Гц, который способен автоматически подключаться на те несколько миллисекунд прерывания мощности. Имеются в наличии непрерываемые источники питания с номинальными значениями мощности много киловатт. Большие источники дороги и объемисты; однако имеются и компактные блоки, питаемые от небольшой батареи свинцово-кислотных гельных элементов (см. разд. 14.02), предназначенные для систем, которые используют меньше киловатта мощности переменного тока. Для действительно маломощных систем небольшой НИП, который инвертирует или непосредственно использует резервную батарею постоянного тока (как на рис. 1.83), является обычным и хорошим подспорьем при практическом проектировании маломощных устройств.

Источники питания

14.02. Типы батарей

Обширное руководство по батареям ("Comprehensive Battery Guide") фирмы Duracell дает перечень из 133 батарей с описаниями таких их типов, как цинко-угольные, щелочно-марганцевые, литиевые, ртутные, серебряные, воздушно-цинковые и никель-кадмиевые. Включены даже их подклассы, как, например, Li/FeS2, Li/Mn02, LiS02, LiSOCl2 и «литиевые полупроводниковые». Другие фирмы-изготовители предлагают герметизированные свинцово-кислотные батареи и батареи гельного типа. Для действительно экзотической прикладной задачи вы могли бы даже принять во внимание топливные элементы или радиоактивные термальные формирователи. Что представляют собой все эти батареи? Как вам выбрать оптимальную для вашей портативной штуковины?

Предлагаемый перечень делится на так называемые гальванические элементы и аккумуляторы. Гальванические элементы спроектированы только для единственного цикла разряда, т. е. они неперезаряжаемые. Аккумуляторы (NiCd, свинцово-кислотные и гельного типа в вышеприведенном перечне) сконструированы так, чтобы быть подзаряжаемыми, в типовом случае от 200 до 1000 раз. Выбор гальванических элементов вы обычно делаете исходя из их химического состава и компромисса между такими параметрами, как цена, плотность энергии, долговечность при хранении, постоянство напряжения в течение разряда, производительность по пиковому току, температурный диапазон и популярность. Поскольку вы уже выбрали правильно батарею по химическому составу, то теперь надо вычислить какая батарея (или последовательное включение батарей) содержит достаточное количество энергии для вашего прибора.

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

Гальванические элементы. Теперь подробности. В табл. 14.1 сравниваются характеристики различных гальванических элементов, а в табл. 14.2 и на рис. 14.1 даны реальные параметры наиболее популярных элементов. Старомодный «сухой гальванический элемент» с эмблемой в виде кошки — это элемент LeClanche. Внутренняя его конструкция, как это можно предположить, является достаточно примитивной, а именно состоит из угольного стержня, вставленного в катодную смесь из двуокиси марганца, угля, аммония и хлористо-цинкового электролита. Имеется цилиндрическая прокладка, сделанная из пасты на основе порошкового крахмала, затем цинковый анод, отдаленный от жестяной банки. Верхняя его часть замазана парафином и битумным уплотнителем и сконструирована таким образом, чтобы давать выход газам, если слишком повышается их давление. Эти элементы являются наиболее дешевыми из тех, которые можно купить, но вы не сможете получить многого за ваши деньги. В частности, их напряжение падает, а полное сопротивление постоянно возрастает по мере Проектирование маломощных устройств 187 использования батареи; кроме того, емкость батареи резко снижается, если необходимо обеспечить высокие токи.


Таблица 14.1. Гальванические элементы

Тип · Достоинства · Недостатки

_____________________________________

Т: Цинко-угольный (LeClanche) (стандартный «сухой гальванический элемент»)

Д: Самый дешевый; широко выпускается

Н: Наименьшая плотность энергии (1–2 Вт·ч/дюйм3); спадающая кривая разряда; плох при работе с высоким током; при разряде увеличивается полное сопротивление; плохие рабочие характеристики на низкой температуре

* * *

Т: Цинко-угольный (хлорид цинка) («мощный» сухой гальванический элемент)

Д: Менее дорогой, чем щелочной); лучше LeClanche при высоком токе и низкой температуре

Н: Малая плотность энергии; спадающая кривая разряда

* * *

Т: Щелочно-марганцевый («щелочной» сухой гальванический элемент)

Д: Средняя стоимость; лучше, чем хлористо-цинковый при большом токе и низкой температуре; при разряде сохраняет низкое значение полного сопротивления; среднее значение плотности энергии (3,5 Вт·ч/дюйм3); широко выпускается

Н: Спадающая кривая разряда

* * *

Т: Ртутный

Д: Высокая плотность энергии (7 Вт·ч/дюйм3); плоская кривая разряда; хорош при высоких температурах; большая длительность хранения; низкое и постоянное значение полного сопротивления; напряжение холостого хода 1,35 В + 1 %

Н: Дорогой; плох при низкой температуре (0 °C)

* * *

Т: Оксид серебра

Д: Высокая плотность энергии (6 Вт·ч/дюйм3); плоская кривая разряда; хорош при высоких и низких температурах (до —20 °C); превосходная длительность хранения

Н: Дорогой

* * *

Т: Оксигалогенид лития

Д: Высокая плотность энергии (8 Вт·ч/дюйм3); наивысшая плотность энергии на единицу веса: плоская кривая разряда, превосходен при высоких и низких температурах (до —55 °C); чрезвычайно длительное время хранения (5-10 лет при 70 °C); легкий; высокое напряжение элемента (3 В)

Н: Дорогой

* * *

Т: Литиевый полупроводниковый

Д: Высокая плотность энергии (5–8 Вт·ч/дюйм3); превосходен при высоких и низких температурах (от —40 до 120 °C); невероятно длительный срок хранения (20 лет при 70 °C); легкий

Н: Дорогой; только для малого тока питания


«Мощные» сухие элементы построены аналогичным образом, но при более высоком процентном содержании хлористого цинка и соответственно различными механическими приспособлениями для еще большего выделения газа. Хотя у них общее содержание энергии лишь немного меньше, чем у элементов LeClanche, эти элементы значительно лучше по номинальной производительности даже при работе с высокими токами. Например, D-элемент LeClanche вырабатывает 4,2 ампер-часа (А·ч) на нагрузке 150 Ом, 1,2 А ч — на нагрузке 15 Ом и 0,15 А·ч — на нагрузке 1,5 Ом; аналогичный хлористо-цинковый элемент вырабатывает соответственно 5,6, 5,4 и 1,4 А·ч. Сам хлористо-цинковый элемент также демонстрирует меньшее падение емкости при низких температурах.

Щелочно-марганцевый элемент, как правило именуемый как просто «щелочной», при высоких токах разряда и на низких температурах работает еще лучше. Вывернутый наизнанку, для сравнения с угольно-цинковым элементом, он имеет в середине отрицательный анод из порошкового цинка и электролит из гидроокиси калия, окруженные отдаленным положительным катодом из двуокиси марганца и угля. Для сравнения с вышеприведенными параметрами можно указать, что щелочной D-элемент вырабатывает 10 А·ч на нагрузке 150 Ом, 8 А·ч — на нагрузке 15 Ом и 4 Ач — на нагрузке 1,5 Ом. Вследствие своего особого химического состава, щелочные батареи при разряде обеспечивают малое и медленно увеличивающееся внутреннее сопротивление по сравнению с быстро возрастающим внутренним сопротивлением обоих типов цинко-угольных элементов. Они также лучше работают при низких температурах.

Щелочные батареи имеют большую долговечность при хранении, чем элементы LeClanche или хлористо-цинковые. Как следует из рис. 14.1, кривая зависимости напряжения от степени разряда для всех трех типов батарей дает вам их простую сравнительную оценку. На рис. 14.2 представлены в сравнении рабочие характеристики этих трех типов «сухих гальванических элементов».



Рис. 14.1. Кривые разряда гальванических элементов.

(Эти и последующие рисунки в этой главе взяты из технической литературы по электрическим батареям следующих фирм: Агсо Solar, Duracell, Electrochem Industries, Evercady, Gates, Kodak. PowerSonio, Solavolt и Yuasa.)







Рис. 14.2. Сравнение рабочих характеристик цинковых «сухих гальванических элементов», а — зависимость емкости D-элемента от тока нагрузки; б — изменение напряжения и внутреннего сопротивления D-элемента в процессе разряда; в — зависимость емкости D-элемента от параметров рабочего цикла; г — зависимость емкости от температуры; д — зависимость длительности хранения (10 % потери емкости) от температуры.


Ртутные, окись-серебряные, литиевые — это пользующиеся подлинно большим спросом элементы с особенно высококачественными параметрами по сравнению с щелочными и цинко-угольными. В ртутном элементе используются амальгамированный цинковый анод, катод, состоящий из окиси двухвалентной ртути плюс уголь, и электролит из гидроокиси натрия или калия. Он превосходен с точки зрения стабильности напряжения холостого хода (1,35 В, стабильность порядка 1 %), а также постоянства напряжения в процессе разряда («плоская кривая разряда»); см. рис. 14.1. Он хорошо работает при температуре вплоть до 60 °C, но его рабочие параметры серьезно ухудшаются при температуре ниже —10 °C. Элемент на окиси серебра аналогичен ртутному элементу, но при замене окиси двухвалентной ртути на окись серебра. Он также обладает очень плоской кривой разряда, но обеспечивает более высокое напряжение холостого хода (1,6 В) и обладает улучшенными рабочими характеристиками на низких температурах (до -20 °C).

Литиевые элементы представляют собой новейшую разработку в ряду имеющихся на рынке гальванических элементов, но с несколько отличным химическим составом. Они обладают наивысшей плотностью энергии на единицу веса. Они имеют лучшее исполнение с точки зрения работы на высоких и низких температуpax, а также обладают исключительной долговечностью при хранении при всех температурах. Например, гальванический элемент D-типа с составом литийтионилхлорид (Li/SOCl2) вырабатывает почти в три раза больше энергии (10 А·ч при напряжении на зажимах 3,5 В), чем щелочной D-элемент сравнимых размеров и веса. Литиевые батареи могут работать на температурах, достигающих —50 °C и 70 °C (см. рис. 14.3), при температуре —40 °C они сохраняют 50 % своих возможностей при нормальной температуре, а это температура, при которой другие гальванические батареи вообще прекращают работать.



Рис. 14.3. Зависимость плотности энергии гальванических элементов от температуры.


Литиевые батареи имеют время сохраняемости от 5 до 20 лет при комнатной температуре и могут храниться на складе в течение 1–2 лет при температуре 70 °C, что приводит к высыханию всех других батарей. Они обладают плоской монотонной кривой разряда. Их продолжительное время хранения и напряжение 3–3,5 В делают литиевые батареи идеальным элементом для батарейной поддержки (резервный элемент питания), расположенной на плате КМОП-памяти.

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

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

Аккумуляторы. Для электронного оборудования рекомендуем применять следующие типы аккумуляторов: а) никель-кадмиевые (NiCd) или б) герметизированные свинцово-кислотные. Оба типа аккумуляторов имеют меньшее содержание энергии, чем гальванические элементы (табл. 14.2), но они являются перезаряжаемыми. Никель-кадмиевые элементы выдают напряжение 1,2 В и, как правило, имеют емкость в диапазоне от 100 мА·ч до 5 А·ч и работают при температурах до —20 °C (и вплоть до +45 °C); свинцово-кислотные батареи вырабатывают напряжение 2 В на элемент и, как правило, созданы для обеспечения от 1 до 20 А·ч и могут работать при температурах до -65 °C (и вплоть до +65 °C). Оба типа батарей обладают относительно плоскими характеристиками разряда. Свинцово-кислотные батареи имеют низкие скорости саморазряда и претендуют на сохранение двух третей от начального заряда после годичного хранения при комнатной температуре (хотя наш опыт позволяет быть более скептически настроенными); никель-кадмиевые батареи имеют относительно плохие характеристики по сохранению заряда, в типовом случае теряя половину имеющегося заряда за 4 мес. (вот в это мы верим!) (см. рис. 14.4).



Рис. 14.4. Сохранение заряда в батарее аккумулятора.


Никель-кадмиевый D-элемент обеспечивает 5 А·ч (при напряжении 1,2 В), в то время как свинцово-кислотный D-элемент дает 2,5 А ч (при напряжении 2 В); сравнимый щелочной элемент дает 10 А·ч при 1,5 В.

Как никель-кадмиевые, так и герметизированные свинцово-кислотные батареи претендуют быть хорошими при 250-1000 циклах заряд/разряд (большее значение, если они каждый раз разряжены только частично; и меньшее при полном разряде или быстром проведении цикла заряд/разряд). Никель-кадмиевые батареи имеют общую ожидаемую долговечность хранения 2–4 года, если хранить их при постоянном капельном токе заряда (смотри ниже); долговечность герметизированных свинцово-кислотных батарей поддерживается при постоянном «подзаряживающем» напряжении и составляет 5-10 лет.

Стоит подчеркнуть, что эти перезаряжаемые батареи действительно являются герметичными; они не будут капать или таинственно подтекать ужасными химикалиями. Хотя, как правило, наименование «свинцово-кислотные» вызывает в воображении картины шершавых автомобильных аккумуляторов с разъеденными зажимами и подтекающей кислотой, герметизированные же их разновидности в действительности являются чистыми батареями: вы можете ставить их в любом положении, они не капают и не подтекают и, как правило, ведут себя хорошо. На практике на их основе можно разработать реальные электронные приборы без опасения, что ваша печатная плата превратится в «белую чуму» или дно корпуса, вашего дорогого корпуса, будет покрыто отвратительно пахнущей жидкостью.

Аккумуляторы умирают молодыми, если их не заряжать надлежащим образом. Эти процедуры отличны для никель- кадмиевых и кислотно-свинцовых аккумуляторов. Традиционно определяют скорости заряда через емкость самой батареи в ампер-часах; например, заряд при «С/10» означает подачу тока заряда, равного одной десятой емкости полно заряженной батареи в ампер-часах. Для вышеупомянутого никель-кадмиевого D-элемента он составит 500 мА.

Никель-кадмиевые элементы спроектированы таким образом, что они заряжаются при постоянном токе и выдерживают длительную подзарядку при С/10. Вследствие неэффективностей в цикле заряд/разряд вы должны заряжать при этой скорости в течение 14 ч, с тем чтобы гарантировать полную зарядку; вы можете подумать об этом как о подзарядке самой батареи на 140 %.

Хотя это и хорошо перезаряжать никель-кадмиевые батареи бесконечно при токе С/10, но лучше переключиться на «капельный» заряд в типовом случае при токе от С/30 до С/50. Однако никель-кадмиевые аккумуляторы являются «забавными», а именно обладают эффектом «памяти», так что капельной скорости заряда может и не хватить для восстановления полностью разряженного аккумулятора; в этом случае рекомендуется ток С/20.

Имеются прикладные задачи, когда вы не можете ждать целый день, пока это никель-кадмиевые аккумуляторы подзарядятся. В литературе по таким аккумуляторам дается разрешение заряжать нормальные элементы с более «высокой скоростью» от С/30 до С/10, если вы не делаете это слишком долго. При токе С/3 этим пределом является срок приблизительно в три дня. При таких условиях заряда нужно предусмотреть некоторый отвод газов в отличие от «нормального» режима подзарядки при токе С/10, когда выделяющийся кислород рекомбинирует внутри самого элемента. Существуют специальные «быстро заряжаемые» никель-кадмиевые элементы, спроектированные для заряда при токах от С/1 до С/3 в специальных зарядных устройствах, которые чувствуют условия полного заряда, используя текущий контроль температуры элемента (они имеют такой внутренний химический состав, что при достижении требуемого заряда быстро нагреваются). В отличие от ситуации со свинцово-кислотными батареями вы не можете надежно определить, когда никель-кадмиевый аккумулятор полностью зарядится, используя текущий контроль за напряжением на зажимах, поскольку оно меняется при бесконечно повторяемых циклах, температуре и скорости. Никель-кадмиевые аккумуляторы не должны заряжаться при постоянном напряжении, ни сохраняться «подзаряжаемыми» при фиксированном напряжении.

Вы можете приобрести удобные маленькие зарядные устройства никель-кадмиевых аккумуляторов у нескольких компаний, включая также и самих производителей батарей. Они, как правило, используются для заряда аккумуляторов всех популярных типов (D, С, АА и 9 В). Все никель-кадмиевые аккумуляторы имеют свои собственные патологии. Если вы похожи на нас, то, вероятно, возьмете с собой зарядное устройство для подстраховки от того, что ваш подзаряжаемый калькулятор неожиданно умрет при проведении, скажем, ревизии уплаты налогов. Как показывают графики (рис. 14.5), никель-кадмиевые аккумуляторы имеют эффекты «памяти», так что первый разряд после длительного периода подзарядки может быть плохим. Они являются критичными к подаче напряжения обратной полярности; таким образом, первый элемент, который заряжается, страшно страдает, если их последовательность полностью разряжена. Также никель-кадмиевые аккумуляторы не должны соединяться параллельно. Вы должны найти людей, помогающих различными «змеиными снадобьями», такими, как периодический «глубокий разряд» или ударная терапия в виде электролитического конденсатора большой емкости, разряжающегося через умирающий никель-кадмиевый аккумулятор. Хотя мы и скептически относимся к последнему средству, но периодический глубокий разряд полезен для здоровья никель-кадмиевого аккумулятора.



Рис. 14.5. «Глубокий разряд» восстанавливает «хорошее здоровье» никель-кадмиевой батареи.


Свинцово-кислотные. Эти многоцелевые батареи могут быть заряжены при приложении постоянного напряжения, при условии ограничения тока, постоянным током или используя что-нибудь среднее. При подзарядке ограниченным током и при постоянном напряжении вы подаете фиксированное напряжение (в типовом случае от 2,3 до 2,6 В на элемент); сама батарея первоначально получает высокий ток (вплоть до 2С), который затем падает, по мере того как она заряжается, окончательно достигая значения капельного тока, который и поддерживает саму батарею в полностью заряженном состоянии. Более высокое приложенное напряжение дает вам более быстрый заряд, но ценой большего зарядного тока и уменьшения общего времени жизни батареи. В наиболее простой реализации этого процесса можно использовать 3-контактный стабилизатор, такой, как 317, который обеспечивает питание ограниченным током при фиксированном напряжении. Заряд батареи можно поддерживать бесконечно при сохранении фиксированного «подзаряжающего» напряжения между 2,3 и 2,4 В на элемент (что соответствует капельному току от С/1000 до С/500). На рис. 14.6 показаны характеристики этих режимов. Эти заряжающие и подзаряжающие напряжения имеют мягкую температурную зависимость, которая должна быть отрегулирована на значение — 4 мВ/°С при работе на краях температурного диапазона.



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


При подзарядке постоянным током (который не так часто используется) вы подаете фиксированный ток, как правило, от С/5 до С/20; напряжение на батарее по мере ее заряда постепенно возрастает, затем при достижении полного заряда наблюдается резкий его рост. В этой точке (соответствующей напряжению на зажимах 2,5 В/элемент) необходимо уменьшить ток, в типовом случае до фиксированного значения С/500, при котором будет поддерживаться полный заряд батареи бесконечно долго. Герметизированные свинцово-кислотные батареи будут иметь срок службы в течение 8-10 лет, когда их заряд производится при скорости С/500.

Прекрасный метод подзарядки свинцово-кислотных аккумуляторов предлагает так называемая двухшаговая процедура (рис. 14.7).




Рис. 14.7. Рекомендуемый цикл подзарядки батареи свинцово-кислотного аккумулятора («двухшаговый»).


После предварительного «капельного» заряда вы начинаете при высоком токе фазу «объемного заряда», при этом подавая высокий фиксированный ток Iмакс до тех пор, пока напряжение на батарее не достигнет «избыточного» значения, Uизб. Затем это напряжение поддерживается на постоянном уровне Uизб при проведении текущего контроля (падающего) тока, до тех пор пока этот ток не достигнет значения «избыточного переходного тока» Iизб-перех. После этого вы поддерживаете постоянным «подзаряжающее напряжение» Uподзар, которое меньше, чем напряжение Uизб. Для 12-вольтовой свинцово-кислотной батареи с емкостью 2,5 А·ч типовые значения составляют: Iмакс = 0,5 А, Uизб = 14,8 В, Iизб-перех = 0,05А и U = 14,0 В. Хотя смысл этой процедуры не очевиден, она приводит к быстрому и без повреждения подзаряду батареи. Фирма Unitrode изготавливает прекрасную ИС, а именно UC3906, которая имеет как раз все то, что необходимо для реализации этого процесса. Она даже включает в себя внутренний источник эталонного напряжения, который следит за температурными характеристиками, свинцово-кислотных элементов и требуется только внешний проходной р-n-р-транзистор и четыре устанавливающих параметры резистора.

Перспективность батарей и основные рекомендации. Как мы и утверждали вначале, это действительно хорошая идея проектировать прибор, используя популярную и легко доступную батарею. В верхней части перечня располагаются 9-вольтовые «транзисторные» батареи, известные под общим обозначением NEDA 1604 (1604 — LeClanche; 1604D — мощные; 1604А — щелочные; 1604М — ртутные; 1604LC — литиевые; 1604NC — никель-кадмиевые). Во всем мире вы можете купить 9-вольтовые щелочные батареи даже в любом отделе продуктового магазина (или открытого рынка).

Операционные усилители хорошо работают при напряжении питания +9 В; вы можете даже использовать ±4,5 В, если применить резистивный делитель и повторитель для формирования потенциала взвешенной «земли» (рис. 14.8; рассматривается дальше в разд. 14.08).



Рис. 14.8. Способ формирования с помощью единственной батареи источника питания с биполярным напряжением.


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

Новая литиевая батарея "Ultralife" фирмы Kodak с напряжением 9 В, которая выглядит как реальный победитель, имеет емкость 100 мА·ч, большую долговечность при хранении (сохраняя 80 % энергии после 10 лет хранения) и плоскую характеристику разряда (рис. 14.9). Разработчики в ней мудро используют 3 элемента, а не 2, так что напряжение на зажимах близко к 9 В, т. е. так же, как и у щелочной батареи. Наши предварительные измерения на ранних выборках показали, однако, в некоторой степени высокое внутреннее полное сопротивление.



Рис. 14.9. Кривые разряда 9-вольт батареи: «литиевая» — 3-элементная батарея "Ultralife" фирмы Kodak.


Семейство щелочных элементов типов АА, С и D имеет большую энергетическую емкость (и соответственно меньшее внутреннее полное сопротивление), чем 500 мА·ч батареи 1604А (в 3, 9 и 20 раз соответственно) и к тому же их легко получить. Но они отчасти менее удобны из-за проблем с хранением и с надежностью соединения при последовательном включении элементов. Каждый из нас замечал, что если потрясти тусклый карманный фонарь, то он обычно начинает светить ярче. Эта проблема связана с тенденцией некоторых разновидностей батарей (щелочных, ртутных) выращивать белый налет на своих зажимах (официально это называется «засаливание»).

Никель-кадмиевые батареи также продаются (хотя и не в каждой аптеке) в стандартных конфигурациях (АА, С, D и 9 В) для тех применений, где с точки здравого смысла обосновано использование аккумуляторов. Но при этом вы получите только около 25–50 % энергетической емкости и уменьшенное напряжение батареи (1,2 В против 1,5 В на элемент у щелочных).

Литиевые батареи имеются в наличии в тех же самых стандартных модификациях, хотя они обеспечивают 3 или более вольта на элемент. Большинство фирм-изготовителей также снабжает их залуженными выводами с целью обеспечения более надежного соединения; это имеет смысл, учитывая их продолжительный срок службы. Литиевые элементы также выпускаются в виде плоской «таблетки» с лужеными выводами, для использования в качестве батарейной поддержки КМОП-памяти или для питания календаря часов. Литиевая батарея на напряжение 9 В имеет прекрасную особенность, а именно позолоченные защелкивающиеся выводы, обеспечивающие более надежное соединение. Посмотрите наши предостережения о склонности литиевой батареи к взрывам.

В большинстве магазинов фототоваров даже маленьких городов вы можете найти широкий подбор ртутных, серебряных и литиевых элементов. Они используются в фотокамерах (и калькуляторах, и часах) и отличаются, как правило, разнообразием «таблеток». В качестве примера можно привести популярный ртутный элемент типа 625, едва ли больше, чем пуговица на куртке, при этом свежий элемент имеет емкость 250 мА·ч. Еще меньший по размеру элемент 76 на окиси серебра (а энергетически он эквивалентен ртутному элементу типа 675) имеет интересную особенность, а именно — это аналог литиевого 3-вольтового элемента (NEDA 5008L) того же диаметра и удвоенного веса, предназначенный для замены пары 1,5-вольтовых элементов. При этом напряжении можно непосредственно обеспечить работу КМОП логических схем, а также питать низковольтовые операционные усилители, такие, как LM10, серии ICL7610 и многофункциональные серии «Линейных КМОП» операционных усилителей фирмы TI (серии TLC251-254) и компараторы (TLC372/4, TLC339/393 и TLC3702/4).

Если же для вашей прикладной задачи требуется подзаряжаемость и высокий пиковый ток герметизированных свинцово-кислотных батарей или какой-либо экзотический вид гальванического элемента, вы должны, как правило, связаться с фирмами-изготовителями этих батарей или их дистрибьюторами. Что касается названий, то такие фирмы, как Gates, Powersonic и Yuasa специализируются по свинцово-кислотным аккумуляторам. Фирмы Duracell и Everyday доминируют на рынке гальванических элементов. Все эти компании предлагают полезные и обширные руководства по применению батарей.

В следующих разделах мы рассмотрим альтернативные источники питания маломощного оборудования, а именно, включаемые в розетку блоки питания, солнечные элементы и сигнальные токи. Важно напомнить, что каждый из этих источников питания можно использовать для зарядки аккумуляторов. Например, популярные «установленные сзади» термостаты, которые на ночь выключают свой нагреватель, используют высокоимпедансный сигнальный переменный ток через реле на напряжение 24 В для зарядки никель-кадмиевых батарей, которые поддерживают работу тактового генератора в течение того периода, когда реле включено (рис. 14.10).



Рис. 14.10. «Устанавливаемый сзади» термостат.


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



14.03. Включаемые в розетку блоки питания

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



Рис. 14.11. Включаемые в розетку источники питания.

(С любезного разрешения фирмы Ault, Inc.)


Хотя маркировка на них обычно предупреждает, что их можно включать только с теми приборами, для которых они предназначены, вы можете приобрести эти блоки (с разнообразными техническими характеристиками) как в крупных, так и в небольших партиях (дистрибьюторы типа фирмы Radio Shack и Digi-Key; каждая имеет на своих складах несколько типов). Лучшие новинки обладают невероятно низкой стоимостью: включаемый в розетку блок питания (9 В нестабилизированного постоянного напряжения, ток 500 мА) стоит в больших партиях приблизительно 2,5 долл.

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

Включаемые в розетку блоки питания выпускаются в трех разновидностях: простые понижающие трансформаторы, нестабилизированные источники постоянного тока с фильтрами и качественные стабилизированные источники питания (как линейного, так и импульсного типа). Все они выпускаются с широкой номенклатурой напряжений и токов, а стабилизированные источники питания имеют даже полезные сочетания выходных напряжений, например, +5В(1 А)и +15 В (250 мА). Они имеют, кроме того, и обычные свойства интегральных стабилизаторов, а именно ограничение тока и защиту от перегрева. Вы можете заказать их в виде включаемого в розетку блока с тремя штырями (один заземляющий) и различными выходными разъемами; многие из более крупных блоков также выпускаются в виде автономных настольных блоков с кабелем питания от сети переменного тока. Одно слово о предосторожности: имеются нестандартизированные типы разъемов и значения номинальных значений напряжений. Действительно не существует даже стандартизации полярности! Таким образом, без всяких усилий можно сжечь прибор при ошибочном подключении блока к нему. Берегитесь!

Большую серию таких высококачественных включаемых в розетку блоков питания выпускает фирма Ault (Minneapolis, MN). По недорогим блокам питания посмотрите каталоги Condor (Sunnyvale, СА) или Multi Products International (Cedar Grove, NJ). Отметьте галочкой EEM (см. библиографию) адреса и другие фирмы-изготовители.


14.04. Солнечные элементы

Сочетание свинцово-кислотной или никель-кадмиевой батареи с кремниевыми солнечными элементами образует хороший источник питания для приборов с умеренным потреблением мощности, которые должны быть развернуты в удаленных местах и в течение продолжительного периода времени. Например, вы могли бы захотеть использовать бакен, который производит измерения в океане и периодически их передает. Если средняя мощность потребления составляет 1 Вт, то гальванические элементы становятся недопустимо громоздкими (вы должны иметь для употребления 500 щелочных D-элементов в течение года). Полный солнечный свет после прохождения атмосферы доставляет на землю приблизительно 1 кВт мощности на квадратный метр площади; после учета коэффициента полезного действия солнечных элементов (они имеют КПД приблизительно 10 % при работе на надлежащую нагрузку), длительности светового дня и цикличности погоды в средне-северных широтах (где среднее значение 100 Вт/м2 зимой и 250 Вт/м2 летом) вы можете получить среднюю мощность 25 Вт (в июле) или 10 Вт (в январе) на квадратный метр с высококачественных солнечных элементов, которые стоили в 1986 г. приблизительно 800 долл. При ярком солнечном свете такие солнечные модули вырабатывают до 100 Вт на согласованную нагрузку.

С блоком аккумуляторов для хранения энергии (свинцово-кислотные лучше, чем никель-кадмиевые, поскольку они имеют больший срок службы и рабочий диапазон температур) вы можете снимать среднюю мощность почти непрерывно; свинцово-цинковые элементы обладают в типовом случае КПД 70–80 %, и поскольку все факторы (включая погоду) учтены, то вы можете снимать мощность около 8 Вт на квадратный метр (зимой) и до 20 Вт на квадратный метр (летом), в среднем до 24 часов в сутки.

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

Вольт-амперные характеристики. Кремниевые солнечные элементы имеют простую и очень полезную вольт-амперную характеристику. Она показывает, что напряжение холостого хода практически не зависит от уровня света и в среднем составляет 0,5 В на элемент; сама же кривая UI — это просто перевернутая характеристика диода (рис. 14.12).



Рис. 14.12. Зависимость выходного напряжения солнечного элемента от тока нагрузки представляет собой просто перевернутую кривую U-I диода.


Типовые солнечные панели состоят из 36 последовательно соединенных элементов при напряжении холостого хода около 18 В. Напряжение на зажимах остается практически постоянным пока ток нагрузки увеличивается вплоть до своего максимального значения, при котором солнечный модуль становится источником постоянного тока, коим и остается при дальнейшем уменьшении полного сопротивления нагрузки. Этот максимальный ток изменяется в линейном масштабе пропорционально уровню света, давая набор характеристических кривых, как это изображено на рис. 14.13.



Рис. 14.13. Зависимость выходных параметров солнечного элемента от освещенности.

(MSVM4011 фирмы Solavolt)


Солнечные элементы работают хорошо при пониженных температурах, поскольку напряжение холостого хода падает при увеличении температуры (рис. 14.14).



Рис. 14.14. Зависимость выходных параметров солнечного элемента от температуры.

(MSVM4011 фирмы Solavolt)


При фиксированном уровне светового потока вырабатывается максимальная мощность, когда в рабочей точке обеспечивается максимальное произведение UI; другими словами, это точка, где кривая UI касается семейства гипербол (постоянное произведение UI), вычерченных на тех же осях. Проще говоря, это излом кривой UI. Поскольку полное сопротивление нагрузки, которое соответствует этому излому, быстро меняется в соответствии с уровнем светового потока, вы не можете надеяться сохранить оптимальное значение нагрузки (которое могло бы быть полным сопротивлением нагрузки, увеличивающимся обратно пропорционально уровню светового потока или другими словами нагрузка, которая отбирает ток пропорционально уровню светового потока при примерно постоянном напряжении). Однако в случае маломощных прикладных задач это не так существенно, что нагрузка отбирает максимальную мощность — собственно говоря это означает, что сама нагрузка записывается при нормальных условиях по световому потоку. Это, например, случай питаемых от солнечных батарей калькуляторов, в которых КМОП-схемы потребляют такой незначительный ток, что имеется резерв мощности, кроме случаев очень низких уровней светового потока. Из-за широкого диапазона напряжений питания «высоковольтной» КМОП ИС 740/4000В (от 3 до 18 В) и того факта, что солнечные элементы имеют напряжение холостого хода, которое относительно независимо от уровня светового потока, вам нет необходимости использовать любые стабилизаторы напряжения; питая КМОП-схему непосредственно от самого солнечного модуля, конечно через шунтирующий конденсатор. Типовой небольшой солнечный модуль, такой, как, например, Solarex SX-2, обеспечивает ток 290 мА при напряжении 8,5 В при солнечном свете и имеет напряжение холостого хода 11В; его можно использовать нестабилизированным для питания высоковольтных КМОП-схем или совместно со стабилизатором для любого семейства логических схем с напряжением питания +5 В.

В любом случае тогда используются аккумуляторы для хранения электрической энергии, при этом стоит отметить довольно хорошее согласование UI характеристик солнечного элемента с требованиями по заряду свинцово-кислотных элементов. Солнечный модуль обеспечивает примерно постоянный ток заряда в разряженной батарее, переходя к режиму постоянного «подзаряжающего» напряжения в конце цикла заряда батареи. Температурный коэффициент напряжения холостого хода (—0,5 %/°С) является приемлемо согласованным с рекомендованным температурным коэффициентом напряжения подзарядки свинцово-кислотных аккумуляторов (—0,18 %/°С). Итак, некоторые изготовители источников питания выпускают солнечные модули, которые предназначены непосредственно для подзарядки свинцово-кислотных аккумуляторов, например М65 фирмы Агсо (2,9 А, 14,5 В). Более же обычный путь — это согласовать солнечные модули с зарядами/подзарядными характеристиками свинцово-кислотных аккумуляторов с помощью схемы последовательного или параллельного стабилизатора, спроектированного специально для этих целей.

Многие солнечные модули и спроектированы для работы в таком режиме, с 20 В напряжения холостого хода и модулем согласующего стабилизатора для зарядки 12-вольтовых аккумуляторов. Стабилизатор переключает режим с зарядки на температурно-компенсированную подзарядку при автоматическом отключении нагрузки, если напряжение на батарее падает слишком низко. Эти системы выпускаются и на напряжения кратные 12 В (24 В, 36 В, 48 В и т. д.), и вы можете приобрести к ним дополнительные принадлежности, такие, как инверторы на 60 Гц (для получения переменного тока) или питаемые от постоянного тока криостаты, чердачные вентиляторы и др.

Некоторые из наиболее известных имен фирм — изготовителей солнечных модулей и систем на них — это Агсо Solar (Chatsworth, СА), Mobil Solar (Waltham, MA), Solarex (Rockville, MD) и Solavolt (Phoenix, AZ).


14.05. Сигнальные токи

He следует забывать и о возможности применения сигнальных токов для питания микромощных приборов. Четыре из наиболее общих благоприятных возможностей осуществления этого (см. рис. 14.15): а) постоянный ток удержания, протекающий в телефонной цепи, т. е. в режиме «поднятой трубки» (ответ абонента), б) напряжение переменного или постоянного тока, поступающее с релейной схемы, когда она не потребляет энергию, в) постоянный ток 4-20 мА, используемый в промышленной системе сигнализации с токовым контуром и г) последовательный порт RS-232 с биполярными сигналами «квитирования установления связи» (RTS, DSR и др.).






Рис. 14.15. Питание прибора от сигнальных токов: четыре структурные схемы, а — ток удержания телефонной линии; б — ток через катушку реле; в — ток контура от 4 до 20 мА; г — сигналы интерфейса стыка RS-232.


В первых двух структурах ваш источник мощности присутствует только часть времени - мощность пропадает, когда телефонная трубка повешена (режим «опущенной трубки») или когда релейная схема питается от вашего прибора. Если же вам мощность требуется постоянно, необходимо использовать перезаряжаемые аккумуляторы, заряд которых происходит только в течение периода присутствия мощности; для очень маломощных по току нагрузок альтернативой является использование «двухслойного» конденсатора с высоким значением емкости (вплоть до 5 Ф), аналогичный тип конденсатора используется и для сохранения содержимого КМОП-памяти.

Каждый из этих источников мощности имеет довольно строгие ограничения по податливости напряжения или по максимальному току. Далее приводятся их характеристики и некоторые рекомендации по поводу такого паразитного использования этих источников питания.

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



Рис. 14.16. Режимы функционирования и испытания телефонных систем.


В незанятом состоянии линии центральная станция телефонной компании прикладывает —48 (±6) В постоянного напряжения, подаваемого через последовательный резистор с сопротивлением от 500 до 2500 Ом в контакт «кольцо», и нагружает линию через контакт «штырь» на землю через резистор с сопротивлением от 0 до 710 Ом. Кроме того, в типовом случае имеется вплоть до 1300 Ом внешнего линейного сопротивления между центральной телефонной станцией и вами («абонентом»). Когда вы поднимаете трубку, центральная телефонная станция переходит в режим набора номера, при этом вырабатывается тональный сигнал готовности, прикладывается постоянное напряжение от —43 до —79 В через последовательно включенный резистор 200 ±50 Ом к контакту «кольцо» и производится замыкание контакта «штырь» на землю через такое же полное сопротивление. Аналогичные постоянное напряжение и полные сопротивления источника присутствуют и в разговорном режиме (т. е после того, как соединение установлено), хотя телефонная компания может, и это их право, изменить полярность прикладываемого к контакту «кольцо» постоянного напряжения. Естественно, в режиме переговоров в линии также присутствуют накладываемые на это постоянное напряжение звуковые сигналы, передача которых и является основной задачей телефонии!

Существуют два других состояния линии. Во время звонка (вызова) телефонная компания подает сигнал частотой 20 Гц и среднеквадратичным значением 86 ± 2 В, сверх обычных —48 В постоянного смещения. Как и это постоянное напряжение вызывающий сигнал переменного тока прикладывается к контакту «кольцо». Официальные требования по вызову следующие: тональные посылки длительностью 2 с с интервалами 6 с. Во время режима испытания телефонная компания подает различные сигналы постоянного и переменного тока, с тем чтобы иметь уверенность, что линия функционирует надлежащим образом. Они могут подавать постоянные напряжения в диапазоне —165 + +202 В и переменные напряжения вплоть до 45 В среднеквадратичного значения между любой парой жил (кольцо, штырь, земля) в режиме положенной трубки и вплоть до 54 В постоянного тока от источника с полным сопротивлением 10 Ом в режиме снятой трубки.

Телефонная компания также регламентирует диапазон наводимых грозовыми разрядами «высоковольтных выбросов напряжения», которые вы можете обнаружить на своих телефонных линиях. В типовом случае они достигают нескольких тысяч вольт при токе в несколько сотен ампер; оборудование, подключенное к телефонной линии, должно иметь устройства подавления этих переходных процессов, так чтобы пережить эти импульсы. Кроме того, телефонная компания точно обозначает и «очень высоковольтные выбросы напряжения», которые могут возникнуть при очень близком ударе молнии. При этом могут наводиться напряжения до 10 кВ и токи до 1000 А и идея защиты состоит в том, чтобы, даже если ваше оборудование поджарится, никто не должен пострадать. Таким образом, технические требования устанавливают, что само оборудование не должно разлетаться в куски, вызывать возгорание или убивать кого-нибудь током.

Допустимые нагрузки точно устанавливаются в терминах «индекса эквивалентности вызывного звонка» (REN). Обычные телефонные аппараты имеют REN порядка 1,0 А, что соответствует следующим параметрам: а) в режиме опущенной трубки сопротивление по постоянному току 50 МОм, а полное сопротивление по переменному току устанавливается выше заданной кривой зависимости полного сопротивления от частоты (соответствует поддержанию |Z| > 125 кОм в диапазоне частот от 4 Гц до 3,2 кГц, хотя оно и может быть существенно ниже на определенных частотах и напряжениях), б) в режиме поднятой трубки характеристике по постоянному току, которая задается внутри приемлемого диапазона, указанного на рис. 14.17 (или которое измеряется как 200 Ом или меньше), и в) импеданс в режиме поднятой трубки, который составляет приблизительно 600 Ом в диапазоне частот от 200 Гц до 3,2 кГц (что, как правило, определяется через коэффициент отражения, при условии подачи сигнала от источника с внутренним сопротивлением 600 Ом и составляет по крайней мере 3,5 дВ в диапазоне от 200 Гц до 3,2 кГц и 7 дБ — в диапазоне от 500 Гц до 2,5 кГц).



Рис. 14.17. Допустимые условия по нагрузке в телефонной линии в режиме «поднятой» трубки. Незаштрихованная область доступа, спустя 1 с после поднятия трубки.

(Из Bell System Tech. Ref., Pub. 47001.)


Подключаемые к телефонной линии нагрузки должны быть по постоянному току изолированы от шины земли (50 МОм в режиме опущенной трубки и 250 кОм в режиме поднятой трубки). Общий REN допускается в пределах вплоть до 5,0 А, т. е. полное сопротивление нагрузки составляет 1/5 от выше приведенных значений. Сама телефонная компания требует уведомлять ее о вашем общем увеличении REN нагрузки. Из предварительно приведенных данных следует, что абонент не должен претендовать на получение тока в режиме опущенной трубки и минимальное мостовое сопротивление по постоянному току 50 МОм (для REN равного 1,0 А) является существенным техническим требованием по утечке - 50 МОм соответствуют току 1 мкА. Тем не менее при тщательном проектировании и подборе элементов вы можете поддержать КМОП-схемотехнику (цифровую или аналоговую) в состоянии покоя при токе в несколько микроампер, и иметь ее «проснувшейся» при снятии телефонной трубки. Используйте небольшой танталовый электролитический конденсатор (или «двухслойный» конденсатор энергетической поддержки памяти, имеющийся в крошечных корпусах и с емкостью до 5 Ф), для сохранения состояний, в течение набора номера или других переходных процессов. В разговорном режиме при поднятой трубке вам гарантируется постоянное напряжение 6 В (7,8 В спустя несколько секунд) при минимальном токе в 26 мА (см. рис. 14.17), который достаточен для функционирования большинства из микромощных схем; это вполне сравнимо с питания от батареи на 9 В.

С помощью микромощного стабилизатора с низким падением напряжения на нем, такой, как LP2950 (80 мкА ток покоя, 0,4 В падения напряжения при 100 мА тока в нагрузке), вы можете обеспечить питание цифровых схем от стабилизированного источника питания напряжением 5 В, как это показано на рис. 14.18. Если вы можете быть уверены в получении регулярных циклов функционирования в режиме поднятой трубки, то можно использовать имеющийся избыточный ток для поддержания подзаряжаемых батарей в заряженном состоянии. Например, если у вас имеется час режима поднятой трубки в течение дня, вы постоянно можете отбирать приблизительно миллиампер тока.



Рис. 14.18. Стабилизированный источник питания на сигнальном токе в режиме поднятой трубке (элементы защиты не показаны).


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

Релейные схемы. Те популярные «установленные сзади» термостаты, которые убавляют нагрев ночью и включают его снова за полчаса до вашего подъема, используют небольшую мощность переменного тока, которую можно отвести от релейной схемы без замыкания самого реле. Типовые механические реле управления потребляют ток в 100 мА или более при номинальном переменном напряжении на катушке 24 В и можно рассчитывать, что они останутся в разомкнутом состоянии при 10 % от этого нормального тока через катушку. Таким образом, вы можете получить 10 мА или около того при почти 24 В переменного напряжения для питания вашего прибора. Не забудьте включить подзаряжаемые элементы (или возможно конденсатор для сохранения содержимого памяти, если это все, что требуется), поскольку источник питания пропадает, когда замыкаются контакты подключения реле к источнику питания. На рис. 14.10 дана иллюстрация этой идеи.

Промышленные токовые контуры. В промышленных условиях существует стандарт для токовых контуров системы сигнализации, в которых удаленный датчик (скажем, термопара; см. разд. 15.01) передает свои измерения посредством преобразования их в аналоговый ток, который тогда протекает в контуре.

Постоянное смещение этого контура обычно обеспечивается на приемном конце (рис. 14.15, в). Существуют два стандарта, а именно полномасштабные диапазоны от 4 до 20 мА и от 10 до 50 мА. Стандарт 4-20 мА является более популярным и обычно использует постоянное смещение в 24 В (хотя иногда и выше). Для упрощения часто желательно использовать ток сигнализации для питания расположенных на удаленном конце электронных схем. С этой целью вы можете использовать напряжение смещения в контуре для организации системы питания.

Имеющиеся коммерческие модули для системы токовых контуров, как правило, требуют, чтобы получатель данных обеспечивал максимальное сопротивление нагрузки R и минимальное постоянное смещение Uсм, такие чтобы (Uсм — 12 B)/Rсм было равно полномасштабному току. Другими словами, удаленный модуль может давать падение напряжения на себе вплоть до 12 В несмотря на то, что прикладывается полномасштабный ток контура. Конечно, сам модуль должен сохранять работоспособность, когда посылается в контур ток, соответствующий минимальному выходному сигналу. Итак, нижней границей является то, что вы уже имеете в наличии, т. е. по крайней мере напряжение 12 В при токе 4 мА для питания вашего оборудования; вы можете получить и больше, но не следует рассчитывать на это. Это избыток для даже более сложных схем, если вы тщательно проведете практическое микромощное проектирование.

Сигналы последовательного порта RS-232. Сам стандарт RS-232C/D определяет двухполярные сигналы данных и управления с существенной нагрузочной способностью (см. разд. 10.19); вы можете использовать один из сигналов управления (или даже сигнал данных) для питания маломощной схемы.

Официально выходной сигнал должен быть способен формировать уровни напряжения от ±5 до ±15 В на сопротивлении нагрузки от 3 до 7 кОм. Формирователи сигналов стыка RS-232 в общем случае, как правило, имеют выходное полное сопротивление в несколько сотен ом при ограничении по току в пределах от 5 до 15 мА. Для того чтобы подключить паразитное устройство к этому источнику питания, вы должны модифицировать свое программное обеспечение так, чтобы поддерживать заданную линию управления в известном (и стабильном) состоянии. Вы можете использовать даже пару управляющих линий, если они доступны, для получения двухполярного источника питания (+5 В, мин.). Напомним, что сигналы управления (RTS, DTR и др.) поддерживаются на ВЫСОКОМ уровне, который является обратным по отношению к сигналам данных.

Поскольку имеется обычно изобилие коммерческих источников переменного тока вокруг компьютера, вам по существу не следует делать любые сверхестественные ухищрения для высасывания «жизненных сил» из 25-контактного D разъема стыка. Однако для простой схемы последовательного порта — это элегантный источник питания. Вы можете приобрести коммерческие интерфейсы и модемы, которые работают таким образом.

Выключение источника питания и микромощные стабилизаторы

14.06. Выключение источника питания

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

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

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

Существует несколько приемов проведения такого выключения питания (рис. 14.19):

1. Если отключаемые элементы потребляют ток меньше чем 5 мА или около того, вы можете питать их непосредственно с выходов логических КМОП-схем. Серии НС/НСТ могут обеспечивать ток питания 5 мА, при этом падение напряжения составит только 0,5 В относительно положительного напряжения питания; для формирования более высоких токов можно включать несколько выходов параллельно. AC/ACT серии КМОП хороши при токах до 24 мА.



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



3. Используйте мощный полевой МОП-транзистор. Как и в случае биполярных транзисторов, он используется в качестве ключа, а не повторителя (таким образом, при положительном напряжении питания это транзистор с p-каналом). Полевыми МОП-транзисторами легко управлять и в любом состоянии у них отсутствует ток затвора.



4. Большинство маломощных стабилизаторов имеют вход «выключения»; этот опорный режим характеризуется очень низким током покоя (см. разд. 14.07). Вы можете провести включение источника питания, переведя такой стабилизатор в активное состояние.



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



Рис. 14.19. Методы выключения источника питания.


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



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


Некоторые подходы к решению этой проблемы показаны на рис. 14.21.




Рис. 14.21. Четыре способа борьбы с переходным процессом пускового тока.


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

Другой способ заключается в использовании предварительного ограничения тока, т. е. до выключения (вариант 4), в этом случае при ограничении тока на уровне 150 мА предотвращается резкий спад напряжения Uбат.


14.07. Микромощные стабилизаторы

Вплоть до последнего времени было трудно найти интегральный стабилизатор напряжения, который бы при токах покоя микроамперного диапазона обеспечивал существенные выходные токи. Была альтернатива: либо а) стабилизатор 7663/4 фирмы Intersil, либо б) строить свой собственный! К счастью, ситуация улучшается. Далее приводится обзор текущего состояния дел: ICL7663/4; МАХ663/4/6 (фирма Intersil; вторичные изготовители фирма Maxim и другие). Это — многополюсные стабилизаторы на положительное и отрицательное напряжения с рабочим диапазоном напряжений 1,5-16 В и максимальным током покоя 10 мкА. Неприятная их особенность — это то, что они медленно действующие (вследствие «заморенного» сервоусилителя и использования множества шунтирующих емкостей) и хороши только при токах в нагрузке порядка нескольких миллиампер (будучи КМОП-приборами, они плохо действуют при более высоком входном напряжении); например, при входном напряжении +9 В их выходное полное сопротивление составляет, как правило, 70 Ом.

LP2950/1 (фирма National). Это — стабилизаторы положительного напряжения, которые выпускаются в 3-контактном корпусе на напряжение +5 В (2950) и в 8-контактном корпусе с регулируемым напряжением (2951). Ток покоя составляет 80 мкА (при отсутствии тока в нагрузке) и возрастает до 80 мА — при токе нагрузки 100 мА. В этих стабилизаторах используются проходные p-n-p-транзисторы, которые обеспечивают низкий перепад напряжения (80 мВ макс, при токе 100 мкА; 450 мВ макс, при токе 100 мА) и спроектированы таким образом, что ток покоя не повышается стремительно, когда входное напряжение опускается ниже этого перепада напряжения (общая болезнь стабилизаторов на крутизне биполярного транзистора). Эта последняя их особенность, в частности, полезна для питаемых от батареи приборов, которые могут продолжать функционировать и при низком напряжении батареи. В стабилизаторе 2951 имеется вход выключения и выход детектора перепада напряжения.

LT1020 (фирма Linear Technology). Это — многополюсной стабилизатор положительного напряжения с током покоя 40 мкА, диапазоном выходного напряжения 2,5-35 В и максимальным током 125 мА. Проходной транзистор p-n-p-типа дает низкий перепад напряжения (20 мВ тип. при 100 мкА; 500 мВ тип. при 125 мА). Имеется вход выключения и выход детектора перепада напряжения.

TL58 °C (фирма Texas Instruments). Это — сдвоенный микромощный импульсный стабилизатор с диапазоном выходного напряжения 2,5-24 В и током покоя 140 мкА. Как и все импульсные стабилизаторы, он обладает высоким КПД (вплоть до 80 %) во всем диапазоне напряжений батарей и гибкостью, а именно возможностью формирования выходных напряжений, превышающих само нестабилизированное входное напряжение.

Серия МАХ630 (фирма Maxim). Это — микромощные импульсные стабилизаторы с прекрасными возможностями по выбору параметров. Стабилизатор МАХ630 представляет собой регулируемый (от 2 до 18 В) повышающий стабилизатор положительного напряжения (т. е. UвыхUвх), в то время как ИС МАХ634 является инвертирующим импульсным стабилизатором (т. е. положительное входное напряжение и отрицательное выходное напряжение). Стабилизаторы М АХ631-3 — это повышающие импульсные стабилизаторы на фиксированное положительное напряжение (5, 12 и 15 В), при этом стабилизаторы МАХ635-7 его инвертирующие эквиваленты. Стабилизатор МАХ638 представляет собой регулируемый понижающий импульсный стабилизатор на положительное напряжение (Uвых < Uвх). Все они способны обеспечивать выходные токи в несколько сотен миллиампер, токи покоя приблизительно 100 мкА и КПД приблизительно 80 %.

Серия МАХ644 (фирма Maxim). Эти микромощные импульсные стабилизаторы спроектированы для формирования выходного напряжения +5 В при питании от одно- или двухэлементной батареи. Его умные конструкторы используют как состоящий из двух частей импульсный повышающий преобразователь: одна секция функционирует непрерывно, обеспечивая выходное напряжение +5 В с малым значением тока (0,5 мА); он также вырабатывает постоянное напряжение +12 В, необходимое для переключения полевого МОП-транзистора, используемого для формирования выходного напряжения +5 В, но с высоким значением тока (вплоть до 50 мА). В опорном режиме (только низкий уровень выходного тока) ток покоя составляет 80 мкА. Сам стабилизатор МАХ644 спроектирован для работы при номинальном входном напряжении 1,5 В и функционирует при падении входных напряжений до 0,9 В.

Кроме того, существуют особые «маломощные» стабилизаторы (78L05, LM330, LM317L, LM2930/1), которые характеризуются токами покоя в несколько миллиампер. Они полезны для приборов с внешними источниками питания, такими, как, например, солнечные элементы или на токе удержания телефонной линии. Также нельзя не указать на возможность использования микромощного источника эталонного напряжения, а не стабилизатора, если его напряжения вас устраивают. Например, микросхема REF-43 фирмы PMI представляет собой трехконтактный источник эталонного напряжения 2,5 В с током покоя 250 мкА и прекрасными характеристиками.

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

Источники питания на отрицательное напряжение. За исключением стабилизаторов ICL7664/MAX664, все остальные линейные микромощные стабилизаторы рассчитаны только на напряжения положительной полярности (хотя стабилизатор LT1020 можно использовать для создания биполярного источника питания). Если же вам необходимы источники отрицательного напряжения, то существует (кроме хилого 7664) несколько возможностей, а именно: а) кристалл конвертера напряжения с «летающим конденсатором» типа 7662; б) дискретная реализация конвертера напряжения с летающим конденсатором, где используются комплементарные мощные МОП-транзисторы; в) конвертер напряжения, использующий кристалл КМОП-генератора типа 7555 (это КМОП 555) или выходной сигнал любого КМОП логического вентиля, на который подается прямоугольное колебание; г) импульсный источник питания, с индуктивным хранением энергии или д) использование единственного источника положительного напряжения, где с помощью операционного усилителя формируется опорное напряжение шины взвешенной земли между шиной земли и самим положительным напряжением питания. Давайте рассмотрим их по очереди:

1. Интегральная схема 7662 (и ее предшественник 7660) представляет собой КМОП-схему, выпускаемую фирмой Intersil и еще более широко вторичными фирмами-изготовителями (см. разд. 6.22). В ее состав входят генератор и КМОП-ключи (рис. 6.58) и с помощью нескольких внешних конденсаторов вы можете сформировать напряжения либо — Uпит, либо +2Uпит при питании от положительного напряжения Uпит. Подобно большинству КМОП-приборов, она имеет ограниченный диапазон напряжений питания; для схемы 7662 напряжение Uпит может лежать только в диапазоне от 4,5 до 20 В (от 1,5 до 10 В — схема 7660). Ее выходной сигнал нестабилизированный и он значительно падает при токах нагрузки больше чем несколько миллиампер.

Несмотря на эти недостатки, она может быть очень полезной в специальных условиях, например для организации на плате местного питания формирователей сигналов стыка RS-232C, которые в этом случае работают на единственном источнике питания 4–5 В. Схемы МАХ680 и LT1026 представляют собой биполярные источники питания, которые формируют напряжения ±10 В (вплоть до 10 мА) из напряжения +5 В (рис. 6.60). Существует также комбинация из конвертера напряжения и формирователей/приемников сигналов стыка RS-232, выполненная в виде единственной интегральной схемы, а именно серии LT1080 и МАХ-239. Если для вашей прикладной задачи требуется стык RS-232, то вы можете использовать для питания ваших аналоговых электронных приборов источник биполярных напряжений, формируемый одним из этих интегральных формирователей стыка RS-232.

2. Для формирования большего отрицательного напряжения вы можете применить дискретные МОП-транзисторы в схеме с летающим конденсатором (рис. 14.22). Этот частный пример характеризуется током холостого хода в несколько микроампер и максимальным током вплоть до 30 мА.



Рис. 14.22. Диcкретный конвертер на отрицательное напряжение с летающим конденсатором.


3. На рис. 14.23 показан более простой метод, снова отчасти ограниченный по диапазону напряжений, основанный на использовании КМОП-кристалла таймера 7555. Вы можете питать схему 7555 от источника положительного напряжения в диапазоне от 2 до 18 В, таким образом формируя напряжения вплоть до —15 В или около того. С помощью умножителя напряжения (см. разд. 1.28) вы можете, конечно, формировать и более высокие напряжения с соответственно худшей стабилизацией. Если в вашей схеме имеется несколько логических КМОП-схем, то можно использовать выходной сигнал КМОП-вентиля, а не схему 7555. Однако если используются высококачественные семейства КМОП-схем, такие, как НС/НСТ или AC/ACT, то вы ограничены в размахе логического сигнала напряжением 5 В, в то время как более старые схемы серий 4000 или 74С допускают размах напряжений 15 В, хотя и при меньших токах.

4. Как мы объяснили в гл. 5, с помощью индуктивного накопления энергии, вы можете построить импульсные источники питания, у которых выходное напряжение больше входного или гораздо меньше, или даже может быть отрицательным, при этом обеспечивается КПД в 75 % или около того независимо от входного напряжения. Это очевидно полезно при проектировании микромощных устройств, где само нестабилизированное постоянное напряжение может сниматься с батарей, напряжение которых падает по мере их использования. Микромощные импульсные источники питания могут быть спроектированы таким образом, что они сохраняют высокий КПД даже при снятой нагрузке (в отличие от обычных импульсных источников с высокими значениями тока), при этом используется цепь, которая перекрывает генератор до тех пор, пока выходное напряжение не упадет, в этой точке он вырабатывает единственный заряжающий импульс, затем засыпает снова. На рис. 14.24 изображен источник питания с напряжением +5 В, сконструированный на маломощной интегральной схеме МАХ631.



Рис. 14.23. Формирователь отрицательного напряжения из положительного прямоугольного колебания.


5. Вам может и не потребоваться отдельный источник отрицательного напряжения, даже если вы и используете операционные усилители с биполярным размахом выходного сигнала и др. Например, вы могли бы сформировать опорное напряжение земли +4,5 В (используя резистивный делитель и микромощный повторитель на ОУ) для схемы, построенной на операционных усилителях при питании ее от единственной батареи 9 В. Давайте рассмотрим этот метод более подробно.


14.08. Опорное напряжение земли

Для питания большинства из рассмотренных с гл. 3 схем на операционных усилителях обычно используются источники с симметричным напряжением 15 В, что связано с гибкостью обработки сигналов, близких к потенциалу земли. Однако, как мы уже установили в разд. 4.22, можно использовать только единственный источник питания, формируя некоторое опорное напряжение, которое подается вместо потенциала земли обычных биполярных источников питания схем на ОУ. Если же в качестве источника питания используется батарея, то появляется дополнительный стимул упрощения ситуации, когда предпочтительнее использовать единственную батарею с напряжением 9 В.

Наиболее легкий способ формирования аналоговой «общей» шины состоит в том, чтобы расщепить напряжение батареи с помощью резистивного делителя напряжения, а затем использовать микромощный повторитель на ОУ, который обеспечит низкое полное сопротивление этой общей шины. Для внешнего мира эта общая шина представляет собой «землю» с плавающими обоими концами самой батареи, см. рис. 14.8.

Для поясняющей эту идею схемы мы выбрали программируемый КМОП операционный усилитель 3440, работающий при токе покоя 5 мкА. Необычно большие номиналы резисторов в делителе дают малый вклад в ток потребления, емкостное шунтирование делителя позволяет поддерживать низкое значение полного сопротивления в средней точке, которая в противном случае была бы чувствительна к фону переменного тока и перекрестным помехам из-за частотной интерференции других сигналов. Схема 3440 — это хороший выбор для этой прикладной задачи, поскольку позволяет формировать значительные втекающие и вытекающие токи (вплоть до нескольких миллиампер), даже когда ее смещение составляет 1 мкА; это свойство присуще не всем программируемым ОУ, многие из которых имеют плохие характеристики по вытекающему току, когда они функционируют на микромощных уровнях. Например, интегральная схема LM346, функционирующая при токе 5 мкА, может выдавать ток только 0,1 мА, хотя втекающий ток может достигать 20 мА (посмотрите рис. 14.32).



Рис. 14.24. Маломощный импульсный стабилизатор на напряжение 5 В (КПД = 74 %).

(Из технических данных на ИС МАХ631 фирмы Maxim)


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

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

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