Как уже отмечалось во второй лекции, цифро-аналоговые преобразователи (ЦАП, DAC — "Digital-to-Analog Converter") и аналого-цифровые преобразователи (АЦП, ADC — "Analog-to-Digital Converter") главным образом применяются для сопряжения цифровых устройств и систем с внешними аналоговыми сигналами, с реальным миром. При этом АЦП преобразует аналоговые сигналы во входные цифровые сигналы, поступающие на цифровые устройства для дальнейшей обработки или хранения, а ЦАП преобразует выходные цифровые сигналы цифровых устройств в аналоговые сигналы (см.рис. 2.12).
ЦАП и АЦП применяются в измерительной технике (цифровые осциллографы, вольтметры, генераторы сигналов и т.д.), в бытовой аппаратуре (телевизоры, музыкальные центры, автомобильная электроника и т.д.), в компьютерной технике (ввод и вывод звука в компьютерах, видеомониторы, принтеры и т.д.), в медицинской технике, в радиолокационных устройствах, в телефонии и во многих других областях. Применение ЦАП и АЦП постоянно расширяется по мере перехода от аналоговых к цифровым устройствам.
В качестве ЦАП и АЦП обычно применяются специализированные микросхемы, выпускаемые многими отечественными и зарубежными фирмами.
Сразу же надо отметить, что для грамотного и профессионального использования микросхем ЦАП и АЦП совершенно не достаточно знания цифровой схемотехники. Эти микросхемы относятся к аналого-цифровым, поэтому они требуют также знания аналоговой схемотехники, существенно отличающейся от цифровой. Практическое применение ЦАП и АЦП требует расчета аналоговых цепей, учета многочисленных погрешностей преобразования (как статических, так и динамических), знания характеристик и особенностей аналоговых микросхем (в первую очередь, операционных усилителей) и многого другого, что далеко выходит за рамки этой книги. Существует обширная литература, специально посвященная именно вопросам применения ЦАП и АЦП. Поэтому в данной лекции мы не будем говорить о специфике выбора и принципах включения конкретных микросхем ЦАП и АЦП мы будем рассматривать только основные особенности методов соединения ЦАП и АЦП с цифровыми узлами. Нас будет в первую очередь интересовать организация цифровых узлов, предназначенных для соединения с ЦАП и АЦП.
Применение ЦАП
В общем случае микросхему ЦАП можно представить в виде блока (рис. 13.1), имеющего несколько цифровых входов и один аналоговый вход, а также аналоговый выход.
Рис. 13.1. Микросхема ЦАП
На цифровые входы ЦАП подается n-разрядный код N, на аналоговый вход — опорное напряжение Uоп (другое распространенное обозначение — UREF). Выходным сигналом является напряжение Uвых (другое обозначение — UO) или ток Iвых (другое обозначение — IO). При этом выходной ток или выходное напряжение пропорциональны входному коду и опорному напряжению. Для некоторых микросхем опорное напряжение должно иметь строго заданный уровень, для других допускается менять его значение в широких пределах, в том числе и изменять его полярность (положительную на отрицательную и наоборот). ЦАП с большим диапазоном изменения опорного напряжения называется умножающим ЦАП, так как его можно легко использовать для умножения входного кода на любое опорное напряжение.
Кроме информационных сигналов, микросхемы ЦАП требуют также подключения одного или двух источников питания и общего провода. Обычно цифровые входы ЦАП обеспечивают совместимость со стандартными выходами микросхем ТТЛ.
Чаще всего в случае, если ЦАП имеет токовый выход, его выходной ток преобразуется в выходное напряжение с помощью внешнего операционного усилителя и встроенного в ЦАП резистора RОС, один из выводов которого выведен на внешний вывод микросхемы (рис. 13.2). Поэтому, если не оговорено иное, мы будем в дальнейшем считать, что выходной сигнал ЦАП — напряжение UO.
Рис. 13.2. Преобразование выходного тока ЦАП в выходное напряжение
Суть преобразования входного цифрового кода в выходной аналоговый сигнал довольно проста. Она состоит в суммировании нескольких токов (по числу разрядов входного кода), каждый последующий из которых вдвое больше предыдущего. Для получения этих токов используются или транзисторные источники тока, или резистивные матрицы, коммутируемые транзисторными ключами.
В качестве примера на рис. 13.3 показано 4-разрядное (n = 4) цифро-аналоговое преобразование на основе резистивной матрицы R–2R и ключей (в реальности используются ключи на основе транзисторов). Правому положению ключа соответствует единица в данном разряде входного кода N (разряды D0…D3). Операционный усилитель может быть как встроенным (в случае ЦАП с выходом по напряжению), так и внешним (в случае ЦАП с выходом по току).
Рис. 13.3. 4-разрядное цифро-аналоговое преобразование
Первым (левым по рисунку) ключом коммутируется ток величиной UREF/2R, вторым ключом — ток UREF/4R, третьим — ток UREF/8R, четвертым — ток UREF/16R. То есть токи, коммутируемые соседними ключами, различаются вдвое, как и веса разрядов двоичного кода. Токи, коммутируемые всеми ключами, суммируются и преобразуются в выходное напряжение с помощью операционного усилителя с сопротивлением RОС=R в цепи отрицательной обратной связи.
При правом положении каждого ключа (единица в соответствующем разряде входного кода ЦАП) ток, коммутируемый этим ключом, поступает на суммирование. При левом положении ключа (нуль в соответствующем разряде входного кода ЦАП) ток, коммутируемый этим ключом, на суммирование не поступает.
Суммарный ток IO от всех ключей создает на выходе операционного усилителя напряжение UO=IO RОС=IOR. То есть вклад первого ключа (старшего разряда кода) в выходное напряжение составляет UREF/2, второго — UREF/4, третьего — UREF/8, четвертого — UREF/16. Таким образом, при входном коде N = 0000 выходное напряжение схемы будет нулевым, а при входном коде N = 1111 оно будет равно –15UREF/16.
В общем случае выходное напряжение ЦАП при RОС = R будет связано со входным кодом N и опорным напряжением UREF простой формулой
UВЫХ = –N • UREF 2-n где n — количество разрядов входного кода. Знак минус получается из-за инверсии сигнала операционным усилителем. Эту связь можно проиллюстрировать также табл. 13.1.
Таблица 13.1. Преобразование ЦАП в однополярном режиме
| Входной код N
| Выходное напряжение UВЫХ
| 000…000
|
| 000…001
| -2-n UREF
| …
| …
| 100…000
| -2-1 UREF
| …
| …
| 111…111
| -(1-2-n) UREF
| Некоторые микросхемы ЦАП предусматривают возможность работы в биполярном режиме, при котором выходное напряжение изменяется не от нуля до UREF, а от –UREF до +UREF. При этом выходной сигнал ЦАП UВЫХ умножается на 2 и сдвигается на величину UREF. Связь между входным кодом N и выходным напряжением UВЫХ будет следующей:
UВЫХ=UREF(1–N•21–n) Это можно проиллюстрировать табл. 13.2. Такое биполярное преобразование при возможности смены знака опорного напряжения называется также четырехквадрантным умножением (То есть и опорное, и выходное напряжения могут быть в данном случае как положительными, так и отрицательными).
Таблица 13.2. Преобразование ЦАП в биполярном режиме
| Входной код N
| Выходное напряжение UВЫХ
| 000…000
| UREF
| …
| …
| 011…111
| 2-n UREF
| 100…000
|
| …
| …
| 111…111
| -(1-21-n) UREF
| Микросхемы ЦАП, имеющиеся на рынке, различаются количеством разрядов (от 8 до 24), величиной задержки преобразования (от единиц наносекунд до единиц микросекунд), допустимой величиной опорного напряжения (обычно — единицы вольт), величинами погрешностей преобразования и другими параметрами. Различаются они также технологией изготовления и особенностями внутренней структуры, что нередко накладывает ограничения на их использование. Поэтому выбирать микросхему ЦАП для конкретного применения необходимо с использованием подробной справочной информации, предоставляемой фирмами-изготовителями. Мы же будем говорить только об общих принципах включения ЦАП в цифровые схемы без учета их частных особенностей.
Иногда бывает необходимо уменьшить количество разрядов ЦАП. Для этого нужно подать сигналы логического нуля на нужное число младших разрядов ЦАП (но никак не старших разрядов). На рис. 13.4 показано, как из 10-разрядного ЦАП можно сделать 8-разрядный, подав нули на два младших разряда. Увеличение количества разрядов ЦАП представляет собой гораздо более сложную задачу, требующую построения сложных аналоговых схем, поэтому оно встречается довольно редко. Значительно проще подобрать микросхему с нужным или с большим, чем нужно, количеством разрядов.
Рис. 13.4. Уменьшение разрядности ЦАП
Рис. 13.5. Преобразование последовательности кодов в выходное напряжение
Основное применение микросхем ЦАП состоит в получении аналогового сигнала из последовательности цифровых кодов (рис. 13.5). Как правило, коды подаются на входы ЦАП через параллельный регистр, что позволяет обеспечить одновременность изменения всех разрядов входного кода ЦАП. При неодновременном изменении разрядов входного кода на выходе ЦАП появляются большие короткие импульсы напряжения, уровни которых не соответствуют ни одному из кодов.
Однако, даже при одновременном изменении всех разрядов входного кода ЦАП, уровень напряжения, соответствующий поданному коду, устанавливается не сразу, а за время установления ЦАП tуст, что связано с неидеальностью внутренних элементов ЦАП. Выходной ток ЦАП, как правило, устанавливается значительно быстрее выходного напряжения, так как он не зависит от инерционности операционного усилителя. Понятно, что условие правильной работы ЦАП состоит в том, чтобы длительность сохранения входного кода была больше, чем время установления ЦАП tуст, иначе выходной сигнал не успеет принять значение, соответствующее входному коду.
Если подавать коды на вход ЦАП редко, то приведенная на рис. 13.5 схема может использоваться, например, в управляемом источнике питания, выходное напряжение которого задается входным кодом. Правда, при этом необходимо еще обеспечить большой выходной ток источника питания, применив внешний усилитель тока.
Если же подавать коды на вход ЦАП с высокой частотой, то можно получить генератор (он же синтезатор) аналоговых сигналов произвольной формы. В этом случае коды, поступающие на ЦАП, называют кодами выборок (то есть мгновенных значений) генерируемого аналогового сигнала.
В простейшем случае в качестве источника входных кодов ЦАП можно использовать обычный двоичный счетчик (рис. 13.6). Выходное напряжение ЦАП будет нарастать при этом на величину 2-nUREF с каждым тактовым импульсом, формируя пилообразные выходные сигналы амплитудой UREF. Длительность каждой ступеньки равна периоду тактового генератора Т, а период всего выходного сигнала равен 2nТ. Количество ступенек в периоде выходного сигнала равно 2n. Если в данной схеме использовать синхронные счетчики с синхронным переносом, то входной регистр ЦАП не нужен, так как все разряды счетчика переключаются одновременно. Если же используются асинхронные счетчики или синхронные счетчики с асинхронным переносом, то входной регистр ЦАП необходим.
Рис. 13.6. Генератор пилообразного аналогового сигнала
В случае, когда нужно формировать аналоговые сигналы произвольной формы (синусоидальные, колоколообразные, шумовые, треугольные, импульсные и т.д.), в качестве источника кодов, поступающих на ЦАП, необходимо использовать память, работающую в режиме чтения (рис. 13.7).
Рис. 13.7. Генерация сигналов произвольной формы
Если память постоянная, то набор форм генерируемых сигналов задается раз и навсегда. Если же память оперативная, то строится однонаправленный информационный буфер с периодическим режимом работы, что позволит записывать в память коды для генерации самых разных сигналов. В обоих случаях входной регистр ЦАП необходим, информация в него записывается стробом чтения из памяти.
Как и в предыдущем случае, выходной сигнал ЦАП будет состоять из ступенек, высота которых кратна 2-nUREF. Амплитуда выходного сигнала не превышает UREF. Если адреса памяти перебираются счетчиком, то период выходного аналогового сигнала равен 2mT, где T — период тактового сигнала чтения из памяти "–Чт.", а m — количество адресных разрядов памяти.
Рис. 13.8. Вычисление кодов выборок периодического сигнала
Если надо вычислить коды выборок для генерации какого-то периодического сигнала, то необходимо его период разделить на 2m частей и вычислить соответствующие 2m значений этого сигнала Ui. Затем надо пересчитать значения сигнала в коды по формуле Ni =2nUi/A где A — амплитуда сигнала, и взять ближайшее целое значение кода. Нулевое значение сигнала даст при этом нулевой код 000…000, максимальное значение сигнала (равное амплитуде А) даст максимальный код 111…111. В результате подачи этих кодов на ЦАП с периодом Т будет генерироваться аналоговый сигнал требуемой формы с амплитудой, равной UREF и с периодом TВЫХ=2mТ. Пример такого вычисления проиллюстрирован рис. 13.8.
Подробнее задача проектирования генератора аналоговых сигналов произвольной формы будет рассмотрена в следующей лекции.
Преобразование цифровых кодов в аналоговый сигнал — это не единственное применение микросхем ЦАП. Они могут также использоваться для управляемой обработки аналоговых сигналов, например, для усиления и ослабления аналоговых сигналов в заданное число раз. Для этого лучше всего подходят умножающие ЦАП, которые допускают изменение уровня опорного напряжения в широких пределах, в том числе и с изменением его знака. Таких микросхем ЦАП выпускается сейчас достаточно много, с различным быстродействием и с различным количеством разрядов входного кода.
Самая простейшая схема — это цифровой аттенюатор (ослабитель) аналогового сигнала (рис. 13.9), применяемый часто для регулировки амплитуды выходного сигнала генератора на основе ЦАП.
Рис. 13.9. Аттенюатор аналогового сигнала на ЦАП
Схема практически ничем не отличается от схемы на рис. 13.5. Но два важных отличия все же имеются: вместо постоянного опорного напряжения подается переменный аналоговый сигнал, а ЦАП должен быть обязательно умножающим. Выходной сигнал связан со входным по простой формуле
UВЫХ=–UВХ•N2-n то есть выходной сигнал пропорционален входному (с инверсией), а коэффициент пропорциональности определяется входным цифровым кодом N. Коэффициент пропорциональности изменяется в данном случае от нуля и почти до единицы с шагом, равным 2-n.
Входной регистр ЦАП в данном случае также необходим, поскольку при неодновременном переключении разрядов входного кода на выходной сигнал ЦАП могут накладываться короткие импульсы значительной амплитуды. Требования к быстродействию ЦАП (к величине его времени установления) в данном включении не слишком высоки, так как амплитуду выходного сигнала обычно требуется менять нечасто. А частота входного аналогового сигнала может быть довольно большой, она никак не связана с временем установления ЦАП.
Рис. 13.10. Управляемый усилитель входного сигнала
Существует также схема включения ЦАП, которую можно использовать как управляемый усилитель аналогового сигнала с коэффициентом усиления, задаваемым входным кодом N (рис. 13.10).
В этом случае выходной ток ЦАП равен величине UВХ/RОС, а так как в качестве опорного напряжения используется выходное напряжение, то получается, что выходное напряжение связано со входным по формуле
UВЫХ=–UВХ•N2-n/N То есть коэффициент пропорциональности между выходным и входным напряжениями обратно пропорционален коду N. Код N может меняться в этом случае от 1 до (2n–1), что соответствует коэффициенту усиления от примерно единицы до 2n. Например, при 10-разрядном ЦАП коэффициент усиления схемы может достигать 1024.
Как и в предыдущем случае, скорость переключения ЦАП не очень важна, так как коэффициент усиления обычно не требуется переключать слишком часто. На схеме для простоты не показан входной регистр ЦАП, который опять же необходим, чтобы обеспечить одновременность переключения всех разрядов входного кода.
Рис. 13.11. Последовательное включение аттенюатора и усилителя
Используя последовательное включение схем рис. 13.9 и рис. 13.10, можно обеспечить приведение к стандартному уровню входного напряжения, изменяемого в очень широких пределах (рис. 13.11). Такая задача часто встречается в аналого-цифровых системах. Коэффициент передачи всей схемы будет равен отношению входных кодов обоих ЦАП N/M и может быть установлен с высокой точностью как в диапазоне от 0 до 1 (аттенюатор), так и в диапазоне от 1 до 2n (усилитель). На схеме не показаны входные регистры обоих ЦАП, но они также нужны.
Наконец, последняя схема с применением ЦАП, которую мы рассмотрим, — это схема сдвига аналогового сигнала на величину, задаваемую входным цифровым кодом. Сдвиг представляет собой, по сути, сложение аналогового сигнала с постоянным напряжением. Такая задача довольно часто встречается в аналого-цифровых системах.
Рис. 13.12. Схема управляемого сдвига аналогового сигнала
Схема сдвига (рис. 13.12) включает в себя преобразователь цифрового кода в выходное напряжение и аналоговый сумматор на операционном усилителе. Величина напряжения сдвига входного сигнала будет равна UREF•2-nN . Поскольку применяются два инвертирующих операционных усилителя, инверсии входного сигнала на выходе в данном случае не будет. Если нужен как положительный, так и отрицательный сдвиг, то необходимо применять ЦАП с биполярным выходным сигналом.
Применение АЦП
Микросхемы АЦП выполняют функцию, прямо противоположную функции ЦАП, — преобразуют входной аналоговый сигнал в последовательность цифровых кодов. В общем случае микросхему АЦП можно представить в виде блока, имеющего один аналоговый вход, один или два входа для подачи опорного (образцового) напряжения, а также цифровые выходы для выдачи кода, соответствующего текущему значению аналогового сигнала (рис. 13.13).
Часто микросхема АЦП имеет также вход для подачи тактового сигнала CLK, сигнал разрешения работы CS и сигнал, говорящий о готовности выходного цифрового кода RDY. На микросхему подается одно или два питающих напряжения и общий провод. В целом микросхемы АЦП сложнее, чем микросхемы ЦАП, их разнообразие заметно больше, и поэтому сформулировать для них общие принципы применения сложнее.
Рис. 13.13. Микросхема АЦП
Опорное напряжение АЦП задает диапазон входного напряжения, в котором производится преобразование. Оно может быть постоянным или же допускать изменение в некоторых пределах. Иногда предусматривается подача на АЦП двух опорных напряжений с разными знаками, тогда АЦП способен работать как с положительными, так и с отрицательными входными напряжениями.
Выходной цифровой код N (n-разрядный) однозначно соответствует уровню входного напряжения. Код может принимать 2n значений, то есть АЦП может различать 2n уровней входного напряжения. Количество разрядов выходного кода n представляет собой важнейшую характеристику АЦП. В момент готовности выходного кода выдается сигнал окончания преобразования RDY, по которому внешнее устройство может читать код N.
Управляется работа АЦП тактовым сигналом CLK, который задает частоту преобразования, то есть частоту выдачи выходных кодов. Предельная тактовая частота — второй важнейший параметр АЦП. В некоторых микросхемах имеется встроенный генератор тактовых сигналов, поэтому к их выводам подключается кварцевый генератор или конденсатор, задающий частоту преобразования. Сигнал CS разрешает работу микросхемы.
Выпускается множество самых разнообразных микросхем АЦП, различающихся скоростью работы (частота преобразования от сотен килогерц до сотен мегагерц), разрядностью (от 6 до 24), допустимыми диапазонами входного сигнала, величинами погрешностей, уровнями питающих напряжений, методами выдачи выходного кода (параллельный или последовательный), другими параметрами. Обычно микросхемы с большим количеством разрядов имеют невысокое быстродействие, а наиболее быстродействующие микросхемы имеют небольшое число разрядов. Область применения любой микросхемы АЦП во многом определяется использованным в ней принципом преобразования, поэтому необходимо знать особенности этих принципов. Для выбора и использования АЦП необходимо пользоваться подробными справочными данными от фирмы-производителя.
Рис. 13.14. Компаратор напряжения
В качестве базового элемента любого АЦП используется компаратор напряжения (рис. 13.14), который сравнивает два входных аналоговых напряжения и, в зависимости от результата сравнения, выдает выходной цифровой сигнал — нуль или единицу. Компаратор работает с большим диапазоном входных напряжений и имеет высокое быстродействие (задержка порядка единиц наносекунд).
Рис. 13.15. АЦП последовательного типа
Существует два основных принципа построения АЦП: последовательный и параллельный.
В последовательном АЦП входное напряжение последовательно сравнивается одним единственным компаратором с несколькими эталонными уровнями напряжения, и в зависимости от результатов этого сравнения формируется выходной код. Наибольшее распространение получили АЦП на основе так называемого регистра последовательных приближений (рис. 13.15).
Входное напряжение подается на вход компаратора, на другой вход которого подается эталонное напряжение, ступенчато изменяющееся во времени. Выходной сигнал компаратора подается на вход регистра последовательных приближений, тактируемого внешним тактовым сигналом. Выходной код регистра последовательных приближений поступает на ЦАП, которое из опорного напряжения формирует меняющееся эталонное напряжение.
Регистр последовательных приближений работает так, что в зависимости от результата предыдущего сравнения выбирается следующий уровень эталонного напряжения по следующему алгоритму:
- В первом такте входной сигнал сравнивается с половиной опорного напряжения.
- Если входной сигнал меньше половины опорного напряжения, то на следующем такте он сравнивается с четвертью опорного напряжения (то есть половина опорного напряжения уменьшается на четверть). Одновременно в регистр последовательных приближений записывается старший разряд выходного кода, равный нулю.
- Если же входной сигнал больше половины опорного напряжения, то на втором такте он сравнивается с 3/4 опорного напряжения (то есть половина увеличивается на четверть). Одновременно в регистр последовательных приближений записывается старший разряд выходного кода, равный единице.
- Затем эта последовательность сравнений повторяется нужное число раз с уменьшением на каждом такте вдвое ступени изменения эталонного напряжения (на третьем такте — 1/8 опорного напряжения, на четвертом — 1/16 и т.д.). В результате опорное напряжение в каждом такте приближается к входному напряжению. Всего преобразование занимает n тактов. В последнем такте вычисляется младший разряд.
Понятно, что процесс этот довольно медленный, требует нескольких тактов, причем в течение каждого такта должны успеть сработать компаратор, регистр последовательных приближений и ЦАП с выходом по напряжению. Поэтому последовательные АЦП довольно медленные, имеют сравнительно большое время преобразования и малую частоту преобразования.
Второй тип АЦП — АЦП параллельного типа — работает по более простому принципу. Все разряды выходного кода вычисляются в них одновременно (параллельно), поэтому они гораздо быстрее, чем последовательные АЦП. Правда, они требуют применения большого количества компараторов (2n–1), что вызывает чисто технологические трудности при большом количестве разрядов (например, при 12-разрядном АЦП требуется 4095 компараторов).
Схема такого АЦП (рис. 13.16) включает в себя резистивный делитель из 2n одинаковых резисторов, который делит опорное напряжение на (2n–1) уровней.
Рис. 13.16. 3-разрядный АЦП параллельного типа
Входное напряжение сравнивается с помощью компараторов с уровнями, формируемыми делителем напряжения. Выходные сигналы компараторов с помощью шифратора преобразуются в n-разрядный двоичный код. Шифратор выдает на выход номер последнего из сработавших (то есть выдавших сигнал логической единицы) компараторов. Например, в случае 3-разрядного АЦП (на рисунке) при величине входного напряжения от 0 до 1/8 опорного напряжения выходной код будет 000, при входном напряжении от 1/8 до 2/8 опорного напряжения сработает первый компаратор, что даст выходной код 001, при входном напряжении от 2/8 до 3/8 опорного напряжения сработают компараторы 1 и 2, что даст выходной код 010, и т.д. Процесс преобразования происходит в параллельном АЦП очень быстро, поэтому частота преобразования может достигать сотен мегагерц.
Для повышения быстродействия в параллельном АЦП иногда применяется конвейерный принцип: выходной код компараторов записывается в (2n–1)-разрядный параллельный регистр, показанный на рис. 13.16. Выходной код шифратора также записывается в n-разрядный параллельный регистр. Оба регистра в этом случае тактируются одним и тем же тактовым сигналом. Это снижает требования к быстродействию компараторов и шифратора. Правда, выходной код АЦП задерживается из-за таких регистров на два периода таковой частоты.
Громоздкость структуры параллельного АЦП приводит к тому, что в некоторых АЦП применяется смешанный параллельно-последовательный принцип. Это несколько снижает быстродействие подобного АЦП по сравнению с обычным параллельным АЦП, но зато позволяет получить большое число разрядов, не увеличивая количество компараторов до (2n–1).
Для того чтобы АЦП любого типа работал с использованием всех своих возможностей, необходимо обеспечить согласование диапазона изменения входного аналогового сигнала с допустимым диапазоном (динамическим диапазоном) входного напряжения АЦП.
На рис. 13.17 показано четыре возможных случая соотношения динамического диапазона АЦП (от 0 до UREF или от UREF1 до UREF2) и входного сигнала. В случаях а и б входной сигнал меньше динамического диапазона, поэтому АЦП будет работать правильно, но не будет использовать всех своих возможностей. В случае в входной сигнал слишком большой, поэтому часть его значений не будет преобразована. Только в случае г АЦП действительно будет работать как n-разрядный и будет преобразовывать все значения входного сигнала. Для согласования входного сигнала с динамическим диапазоном АЦП можно применять усилители, аттенюаторы, схемы сдвига. В некоторых случаях согласование может быть достигнуто простым выбором величин опорных напряжений.
Рис. 13.17. Соотношение входного сигнала и динамического диапазона АЦП
Рис. 13.18. Уменьшение количества разрядов выходного кода АЦП
Иногда бывает необходимо уменьшить количество разрядов АЦП. В этом случае нужное количество младших разрядов выходного кода микросхемы просто не используется. На рис. 13.18 показано использование 10-разрядного АЦП в качестве 8-разрядного.
Обратная задача — увеличение разрядности АЦП — встречается чаще. Существует ряд типичных схемотехнических решений по объединению нескольких микросхем АЦП для увеличения количества разрядов выходного кода, но большинство этих решений требует сложных расчетов результирующих погрешностей преобразования и применения аналоговых узлов. Мы не будем их здесь рассматривать. Отметим только, что при возникновении задачи увеличения разрядности надо прежде всего попытаться найти микросхему с нужным количеством разрядов, и только потом рассматривать возможности объединения нескольких микросхем АЦП.
Рассмотрим несколько типичных схем включения АЦП, используемых в аналого-цифровых системах.
Рис. 13.19. Фиксатор превышения входным сигналом установленного порога
Первая схема (рис. 13.19) предназначена для фиксации момента превышения входным аналоговым сигналом заданного порогового напряжения. Схема вырабатывает выходной сигнал (положительный фронт) тогда, когда входной аналоговый сигнал становится больше установленного уровня, причем уровень этот задается цифровым кодом порога. Код порога сравнивается с выходными кодами АЦП с помощью микросхемы компаратора кодов. Выходной сигнал компаратора кодов записывается в триггер по сигналу RDY с АЦП, что позволяет исключить влияние коротких импульсов, возникающих на выходе компаратора в момент изменения входных кодов. Применение этого триггера задерживает выходной сигнал на один такт.
Может показаться, что применение АЦП в данном случае не оправданно, избыточно. Но надо учитывать, что в аналого-цифровых системах АЦП, преобразующий входной сигнал в последовательность кодов, как правило, уже есть, поэтому дополнительного АЦП не требуется, достаточно только включить компаратор кодов и триггер.
АЦП также применяется в схемах вычисления амплитуды входного аналогового сигнала. Для такого вычисления можно использовать уже рассмотренную схему вычислителя экстремального значения входного кода (см. рис. 8.9). В качестве источника последовательности входных кодов в данном случае выступает АЦП (рис. 13.20).
Рис. 13.20. Вычислитель амплитуды аналогового сигнала
В регистр со входом разрешения записи записывается код с выхода АЦП по сигналу RDY в том случае, если текущее значение кода больше значения кода, записанного ранее в регистр. В результате уже после одного периода входного сигнала в регистре будет код амплитуды входного сигнала. За период преобразования АЦП должны успеть сработать компаратор кодов и регистр.
Если такой вычислитель амплитуды входного сигнала используется в составе сложной аналого-цифровой системы, в которой уже присутствует АЦП, непрерывно преобразующий входной сигнал в коды, то дополнительно требуются только цифровые микросхемы: компаратор кодов и регистр.
Рис. 13.21. Включение буферной памяти для запоминания кодов с выходов АЦП
Наиболее часто встречающееся использование АЦП — это преобразование входного сигнала в поток кодов, причем коды эти обычно записываются в буферную память. В данном случае наиболее подходящим является однонаправленный буфер с периодическим режимом работы. То есть сначала в буферную память заносится массив кодов выборок входного сигнала, а затем этот массив читается для дальнейшей обработки. Именно так, например, строится цифровой осциллограф, предназначенный для наблюдения аналоговых сигналов на экране.
Схема включения АЦП в этом случае показана на рис. 13.21. В качестве строба записи в буферную память используется сигнал RDY с АЦП. Подробнее организацию буфера мы уже рассматривали в предыдущей лекции.
Конечно, в реальных аналого-цифровых устройствах все гораздо сложнее, в них требуются схемы синхронизации процесса записи со входным сигналом, схемы предварительной обработки аналогового сигнала, но суть остается той же — буферная память, записывающая последовательность кодов с выхода АЦП. Чем больше объем памяти, тем больший фрагмент входного аналогового сигнала она может запомнить. Например, если память имеет организацию 64Кх8 и работает с 8-разрядным АЦП, то при частоте преобразования АЦП 10 МГц буфер сможет хранить в себе фрагмент аналогового сигнала длительностью 6,5536 мс.
Наконец, последняя схема, которую мы рассмотрим (рис. 13.22), позволяет вдвое повысить быстродействие АЦП, точнее, поднять вдвое частоту записи кодов выборок входного сигнала в буферную память.
Рис. 13.22. Увеличение вдвое частоты преобразования входного сигнала с помощью двух АЦПс буферами
Идея схемы очень проста: используется два АЦП и два буфера, которые работают по очереди, например, четные выборки входного сигнала обрабатывает один АЦП со своим буфером, а нечетные — другой АЦП со своим буфером. В результате запоминание кодов входного сигнала осуществляется с частотой вдвое больше частоты преобразования каждого из АЦП. Например, если каждый АЦП и каждый буфер работают с частотой 10 МГц, то результирующая частота преобразования составит 20 МГц.
Тактовые сигналы АЦП и сигналы RDY на выходах АЦП должны быть сдвинуты один относительно другого на половину периода тактового сигнала. Чтение зарегистрированных кодов из обоих буферов также должно быть организовано по очереди: первый код читается из первого буфера, второй — из второго, третий — опять из первого, четвертый — из второго и т.д. Объем обоих буферов в данном случае складывается. Например, при организации каждого буфера 64Кх8 результирующий буфер будет иметь организацию 128Кх8.
Пользуясь этим же принципом, можно повысить частоту обработки входного сигнала с помощью АЦП не только вдвое, но и втрое, в четыре раза и т.д. Необходимо только согласовать во времени работу соответственно трех, четырех и т.д. АЦП, у каждого из которых должна быть своя буферная память.
Помимо упомянутых здесь АЦП последовательно и параллельного типов существуют еще и АЦП с промежуточным преобразованием. В них входной аналоговый сигнал с помощью аналогового интегратора преобразуется во временной интервал между цифровыми импульсами или в частоту следования цифровых импульсов. Выходной цифровой код, соответствующий входному аналоговому сигналу формируется в результате измерения длительности временного интервала или частоты следования импульсов (рис. 13.23). Если используется выходная частота, то такой АЦП называется "преобразователем напряжение—частота" (ПНЧ).
Такой подход позволяет с помощью сравнительно простых аппаратных средств получить высокую точность преобразования, не зависящую от многих параметров используемых компонентов и от характеристик окружающей среды. Измерение временных интервалов и частоты следования импульсов осуществляется простейшими цифровыми схемами, примеры которых приведены в лекциях 9, 10. Измерения эти могут осуществляться с высокой точностью вследствие того, что существует очень хороший временной эталон — кварцевый генератор. Отметим, что достоинством ПНЧ является также возможность простой передачи его выходного цифрового сигнала на большие расстояния.
Рис. 13.23. АЦП с промежуточным преобразованием
В конце лекции надо еще раз отметить, что приведенные здесь схемы сильно упрощены. Для их практической реализации необходимо знание не только цифровой схемотехники, но и аналоговой и аналого-цифровой схемотехники, а также знание особенностей конкретных микросхем ЦАП и АЦП, что не является предметом данной книги. Однако рассмотренные ключевые принципы использования ЦАП и АЦП и их совместного включения с цифровыми схемами будут полезны любому разработчику.
|