Программируемые аналоговые интегральные схемы Anadigm. Часть 1.1. Структура и характеристики
Мы начинаем серию статей, посвященных новому для российского рынка продукту — программируемым аналоговым интегральным схемам (ПАИС). В данной статье рассмотрены структура и принципы работы аналоговой части ПАИС.
Все статьи цикла:
- Программируемые аналоговые интегральные схемы Anadigm. Часть 1.1. Структура и характеристики
- Программируемые аналоговые интегральные схемы Anadigm. Часть 1.2. Структура и характеристики
- Программируемые аналоговые интегральные схемы Anadigm. Часть 2. Загрузка конфигурации
Введение
В последние годы интегральные микросхемы с программируемой пользователем внутренней конфигурацией прочно вошли в современную электронику.
Прежде всего это относится к изделиям цифровой техники, таким как ПЛИС, микроконтроллеры и сигнальные процессоры. Однако на практике в большинстве случаев приходится иметь дело с реальными аналоговыми сигналами, которые нужно усиливать, фильтровать, оцифровывать и т. д. Поэтому аналоговая электроника в современных системах занимает не менее важное место, чем цифровая. В первую очередь это относится к системам промышленной автоматики и управления, медицинскому оборудованию, контрольно-измерительной аппаратуре и аудиотехнике.
Традиционно схемы аналоговой обработки сигналов выполняются на дискретных компонентах операционных усилителях, компараторах, мультиплексорах и т. п. При этом в ряде случаев аналого-
вая часть занимает большую часть площади печатной платы, имеет высокую стоимость и требует сложной настройки. Решить проблему создания разнообразных аналоговых устройств, кардинально снизив стоимость и габариты, позволяет использование программируемых аналоговых интегральных схем — ПАИС (FPAA), одним из крупнейших производителей которых является компания Anadigm. Она производит два типа ПАИС — динамически и статически конфигурируемые FPAA. Различие их заключается в том, что динамически конфигурируемая схема позволяет изменять полностью или частично функциональную структуру в реальном времени в работающем устройстве, что дает возможность создавать никальные схемы аналоговой обработки сигналов.
1. Обобщенная архитектура FPAA
Структурная схема FPAA показана на рис. 1 (на примере динамически конфигурируемой ПАИС AN221E04).
Ее основу составляют конфигурируемые аналоговые блоки (КАБ), которые содержат наборы элементов для реализации стандартных устройств — операционных усилителей, компараторов, источников образцового напряжения, АЦП, а также конфигурационную память (Look-Up Table) и специальный интерфейс. Входные аналоговые сигналы подаются в КАБ через конфигурируемые двунаправленные I/O ячейки. Ячейки I/O_Cell_1 — I/O_Cell_3 осуществляют передачу сигнала напрямую в один из блоков. Ячейка I/O_Cell_4 содержит специальный мультиплексор, который позволяет подключать до четырех дифференциальных или несимметричных входных сигналов или нагрузок (в режиме выходов). Каждый вход-выход ячейки может епосредственно подключаться к одному из блоков или предварительно обрабатываться с помощью набора стандартных устройств в любой комбинации: буферный усилитель, усилитель с программируемым коэффициентом усиления, программируемый
фильтр, прецизионный усилитель со стабилизацией прерыванием. Последний специально разработан для усиления сигналов, требующих ультранизкого входного напряжения смещения и высокостабильного коэффициента усиления.
Выходные сигналы могут быть выведены из блоков непосредственно на выводы I/O_Cell.
Кроме того выходные сигналы могут быть выведены напрямую через специальные выходные ячейки Output_Cell_1 и Output_Cell_2, которые также содержат программируемые
фильтры и преобразователи дифференциальных сигналов в несимметричные. Эти ячейки можно использовать и для вывода цифровых сигналов с выходов компараторов.
Синхронизация в ПАИС может осуществляться с помощью внешнего источника или т собственного тактового генератора с внешним кварцевым резонатором. Частота внутреннего генератора может быть поделена четырьмя синхронными программируемыми делителями, а каждая из частот — выведена на внешний выход.
Режимы работы КАБ, значения тактовых частот, направления передачи сигналов, назначения и конфигурация I/O_Cell, Output_Cell хранятся в так называемой конфигурационной памяти (Configuration SRAM). Копия содержимого
конфигурационной памяти хранится в теневом ОЗУ (Shadow SRAM), которое может перезаписываться без нарушения процесса обработки сигнала. Это позволяет динамически изменять конфигурацию ПАИС в работающем устройстве во время работы предыдущей версии.
После загрузки в теневое ОЗУ новых данных конфигурация устройства изменяется за один цикл тактовой синхронизации.
Все конфигурируемые аналоговые блоки (КАБ) имеют доступ к общей таблице коэффициентов передачи (Look-Up Table, LUT), в которой хранится информация о передаточных характеристиках устройств, необходимых для реализации таких функций, как сжатие динамического диапазона, линеаризация сигналов датчиков, формирование сигналов произвольной формы, управляемая фильтрация.
Генератор опорного напряжения (Voltage Reference Generator) формирует сигналы для каждого из блоков и имеет внешние выходы для подключения фильтрующих конденсаторов.
Архитектура ПАИС включает в себя простой и гибкий конфигурационный интерфейс. Он предназначен для работы как в автономном режиме, так и для связи с внешними интерфейсами SPI или FPGA EPROM. В режиме FPGA EPROM после включения питания конфигурация из EPROM будет автоматически загружена в FPAA и устройство мгновенно начнет работать.
Конфигурационный интерфейс так же выполняет функцию связи FPAA с внешним микроконтроллером через порт SPI в режиме ведомого устройства. С его помощью возможно
наращивание количества ПАИС для создания больших систем аналоговой обработки.
В конфигурируемом аналоговом блоке может быть реализован 8-разрядный АЦП последовательного приближения. Его выход можно подключить к любому выводу ячейки Output_Cell, который должен быть сконфигурирован как цифровой выход.
2. Архитектура аналоговой части ПАИС
2.1. Конфигурируемые двунаправленные ячейки входа-выхода
Каждая конфигурируемая ячейка I/O_Cell (рис. 2) содержит набор ресурсов, позволяющих подключать внешние приемники и источники сигналов без дополнительных внешних компонентов. Для обеспечения максимальной точности все сигналы внутри ячеек обрабатываются в полностью дифференциальной форме. Вход/выход каждой ячейки
также является дифференциальным. При необходимости ячейка может быть сконфигурирована в режиме несимметричного входа, при этом второй (инверсный) вход соединяется внутри ячейки с источником опорного напряжения VMR +2 В (он является опорным для внутренних аналоговых устройств).
Для многих применений, таких как обработка сигналов постоянного тока, бывает необходимо использовать на входе фильтр нижних частот для очистки сигнала от помех.
Входная часть ячейки I/O_Cell содержит ФНЧ второго порядка с программируемой частотой среза. При его использовании рекомендуется выбирать соотношение частоты среза и максимальной частоты сигнала не более 30.
Другим уникальным ресурсом I/O_Cell является наличие усилителей с программируемым коэффициентом усиления и прецизионного со стабилизацией напряжения смещения прерыванием. Это очень полезно при
усилении слабого низкочастотного сигнала. Величина его усиления может быть установлена из ряда 2n, где n=4…7. Усилитель с программируемым коэффициентом усиления
способен также выполнять функцию входного буфера. Сигнал с усилителей подается в КАБ как напрямую, так и через сглаживающий ФНЧ. Несимметричный входной сигнал также может подаваться непосредственно на усилитель или ФНЧ, что обеспечивает его преобразование в дифференциальную форму
внутри ячейки. Необходимо отметить, что перечисленные ресурсы могут использоваться только при конфигурации ячейки в режиме входа. В режиме выхода выводы ячейки непосредственно соединяются с соответствующим аналоговым блоком.
Важные замечания: во-первых, поскольку операционные усилители внутри аналоговых
блоков не обладают высокой нагрузочной способностью, при использовании ячеек I/O_Cell в качестве выходов сопротивление нагрузки
должно быть более 100 кОм, а емкость — менее 100 пФ, в иных случаях необходимо использовать специальные выходные ячейки Output_Cell; во-вторых, не рекомендуется использование ячеек I/O_Cell в качестве непосредственных входов аналоговых блоков —
лучше сконфигурировать их как входные буферные усилители с Ку=1.
2.2. Конфигурируемая мультиплексированная ячейка входа-выхода
Эта ячейка содержит на входе двунаправленный мультиплексор, который подключает один из четырех дифференциальных или несимметричных сигналов к ячейке I/O_Cell, аналогичной по структуре и ресурсам описанным выше (рис. 3). При использовании несимметричных входов другие (инверсные) входы соединяется внутри ячейки с источником опорного напряжения VMR.
2.3. Конфигурируемые выходные ячейки
Так же, как и входные I/O_Cell, выходные ячейки Output_Cell разработаны с учетом обеспечения максимальной точности обработки
и позволяют выводить из ПАИС как дифференциальные аналоговые сигналы, так и логические уровни. Сигналы из различных аналоговых
блоков подаются на вход ячейки через программируемый входной мультиплексор (рис. 4).
Каждая выходная ячейка содержит программируемый ФНЧ, аналогичный описанному в п. 2.1. Фильтр может быть отключен или активирован с установленной частотой среза. После ФНЧ установлены преобразователи дифференциальных сигналов в несимметричные, преобразователи смещены относительно нуля на величину опорного напряжения VMR.
С выходов Output_Cell можно снимать как несимметричные, так и дифференциальные сигналы. Необходимо отметить, что амплитуда несимметричного сигнала будет равна половине амплитуды дифференциального сигнала.
В некоторых случаях может потребоваться вывести сигнал через Output_Cell, минуя фильтр и выходные буферы. Это можно осуществить, сконфигурировав ячейку соответствующим образом, однако необходимо учесть требования к нагрузке, отмеченные в п. 2.1.
Несколько элементов из стандартной библиотеки конфигурируемых аналоговых модулей требуют вывода сигнала в цифровой форме (логическими уровнями), например выходы данных и синхронизации АЦП или компараторов. В этом случае ячейка Output_Cell может быть сконфигурирована в режиме цифрового выхода.
2.4. Конфигурируемый аналоговый блок (КАБ)
Anadigm выпускает два варианта ПАИС: с двумя и четырьмя КАБ. Все функции, доступные в библиотеке конфигурируемых аналоговых модулей (КАМ), отображаются в КАБ в виде программируемых аналоговых схем.
На рис. 5 показана обобщенная структура одной из ячеек матрицы КАБ. Ячейки содержат статические и динамические ключи. Динамические ключи управляются входными и тактовыми сигналами, а также логикой регистра последовательного приближения. Статические ключи определяют общие схемы коммутации блоков, значения емкости конденсаторов, подключение входов. Независимо от назначения, все ключи управляются с помощью конфигурационной памяти (SRAM).
При включении питания микросхемы SRAM очищается, после этого с помощью конфигурационной логики данные загружаются из внешнего EPROM в теневое ОЗУ, а из него копируются в конфигурационное ОЗУ. Во время работы ПАИС теневое ОЗУ может быть перезагружено новыми данными, которые впоследствии могут использоваться для перепрограммирования структуры ПАИС. В этом случае содержимое теневого ОЗУ копируется в конфигурационную память и с приходом
очередного такта синхронизации микросхема начинает работать в новой конфигурации без прерывания процесса обработки сигнала.
Аналоговые сигналы направляются в ближайший блок по кратчайшему пути с помощью матрицы первой группы входных аналоговых ключей. На эту же матрицу выводятся обратные связи двух внутренних операционных усилителей и компаратора.
Конфигурируемый аналоговый блок содержит также группу из восьми программируемых конденсаторов, каждый из которых может иметь относительное значение емкости от 0 до 255 единиц. Для элементов КАМ важно не абсолютное значение емкости, а соотношение между ними, которое выдерживается с точностью не хуже 0,1%.
Вторая матрица ключей предназначена для организации внутренней топологии и выполняет соответствующие внутренние коммутации цепей. Основу ячейки КАБ составляют два операционных усилителя и компаратор. Их выходы заводятся обратно в матрицу входных ключей для организации обратных связей, а также в соседнюю ячейку КАБ.
Обработка сигнала внутри КАБ осуществляется схемами на переключаемых конденсаторах. Для корректной работы такие схемы нуждаются в так называемой не перекрывающейся синхронизации (non-overlapping clocks, NOL). Такой тактовый генератор является частью КАБ и вырабатывает все необходимые NOL-сигналы для его функционирования.
При инициализации логики регистра последовательного приближения для реализации 8-разрядного АЦП используется внутренний компаратор КАБ. К АЦП может подключаться таблица коэффициентов передачи (Look-Up Table, LUT) для реализации нелинейных аналоговых функций, таких как перемножение, сжатие, линеаризация, автоматическая регулировка усиления.
2.5. Таблица коэффициентов передачи
ПАИС содержит специальную область памяти объемом 256 байт, называемую таблицей коэффициентов передачи (ТКП). Ее 8-разрядный адресный вход может подключаться к выходу АЦП или специальному LUT-счетчику. В этом случае каждое новое значение счетчика представляет собой адрес в таблице коэффициентов передачи. Данные, находящиеся по этому адресу, считываются из таблицы и записываются в теневое ОЗУ в ячейку, где хранится информация о конфигурации соответствующего аналогового компонента. После загрузки в конфигурационное ОЗУ они используются для формирования передаточной функции устройства. Синхронизация LUTсчетчика осуществляется от одного из четырех аналоговых тактовых генераторов.
Загрузка данных таблицы коэффициентов передачи из теневого в конфигурационное ОЗУ может производиться с приходом байта
данных конфигурации, а также по сигналу от внутреннего детектора пересечения нуля, компаратора или внешнего сигнала EXECUTE.
Комбинируя конфигурации ТКП/КАБ, можно осуществлять модуляцию стандартных сигналов или формировать сигналы произвольной формы.
2.6. АЦП последовательного приближения
Конфигурируемый аналоговый блок включает в себя все необходимые компоненты для создания 8-разрядного АЦП последовательного приближения. Для его работы требуются два тактовых сигнала с соотношением частот 1 к 16. Низкочастотный сигнал, называемый CLOCKA, определяет скорость преобразования и не должен превышать 250 кГц. Высокочастотный сигнал,называемый CLOCKB, используется непосредственно для преобразования (тактовая синхронизация АЦП). Оба сигнала формируются схемой деления основной тактовой частоты.
Результат преобразования представляется в формате знак (1 бит) + значение (7 бит). Входное напряжение АЦП должно быть ограничено величиной ±1,5 В относительно системного нуля (опорного напряжения VMR).
Результат преобразования может подаваться на адресный порт ТКП или возвращаться обратно в КАБ, на базе которого создан АЦП. В большинстве случаев АЦП используется как генератор адресов таблицы коэффициентов передачи. В конце каждого цикла преобразования 8-разрядный результат воспринимается ТКП как новый адрес. Конфигурационная схема считывает содержимое таблицы, находящееся по этому адресу и загружает его в соответствующую область теневого ОЗУ.
Типовое использование совместной работы АЦП и ТКП — линеаризация и калибровка входного сигнала. Сигнал подается через
входную ячейку в КАБ, в котором сконфигурирован усилитель с функцией линеаризации, и преобразуется с помощью АЦП в 8-разрядный код. Результат преобразования поступает на адресную шину таблицы, в которой хранится массив значений функции линеаризации. Используя механизм, аналогичный описанному в предыдущем параграфе, конфигурационная схема загружает содержимое таблицы, находящееся по данному адресу, в соответствующую область теневого ОЗУ.
При этом устанавливается текущий коэффициент передачи усилителя, требуемый для осуществления линеаризации.
В случае использования АЦП как самостоятельного устройства результат преобразования возвращается в конфигурационную память КАБ. На выходе АЦП формируются последовательный поток данных и синхросигнал, которые можно вывести через выходные ячейки, сконфигурированные как цифровые выходы.
2.7. Формирователи опорного напряжения и тока смещения
В качестве системного нуля, относительно которого передаются и обрабатываются аналоговые сигналы внутри ПАИС, используется шина +2 В опорного напряжения VMR.
Этот сигнал вырабатывается прецизионным термокомпенсированным источником образцового напряжения (рис. 6), который так же формирует сигналы VREF+ (VMR+ 1,5 В)
и VREF– (VMR– 1,5 В). Напряжение VMR внутри КАБ подается на две группы, различных по характеру потребителей. Оно поступает на все цепи заряда переключаемых конденсаторов, где требования к его уровню шумов не высоки. В то же время VMR используется
операционными усилителями в качестве виртуальной земли для улучшения времени установления, что требует малого уровня его шумов. Для компромиссного удовлетворения требований к шумам используются внешние
фильтрующие конденсаторы, подключаемые к выводам VREFPC, VMRC и VREFMC. Рекомендуемое значение емкости этих конденсаторов находится в диапазоне 75…100 нФ. Более высокое значение может ухудшить характеристики времени установления, более низкое—
снизить устойчивость схемы. Используемые конденсаторы должны иметь малое значение собственной индуктивности. Источники VREF+ и VREF– могут использоваться в качестве элементов библиотеки конфигурируемых аналоговых модулей, например в качестве опорных напряжений для компараторов. Диапазон VREF–…VREF+ рекомендуется так же в качестве ограничения уровня входного сигнала библиотечного АЦП.
2.8. Системные генераторы
На рис. 7 показана структурная схема системных тактовых и функциональных генераторов. Более подробно об их инициализации
и возможностях будет рассказано в следующем номере. Тактовая частота конфигурационной логики формируется на выводе DCLK, к которому можно подключить как внешний кварцевый резонатор, так и генератор с частотой
до 40 МГц. Все аналоговые сигналы формируются от единого источника ACLK или DCLK. Какой из сигналов будет использоваться в качестве основного, определяется конфигурацией изделия. Этот сигнал делится на 5 независимых сигналов. Первый из них используется
только для усилителей со стабилизацией прерыванием в ячейках I/O_Cell, остальные четыре формируются с помощью предварительного делителя частоты и подаются на четыре делителя, программируемых пользователем.
Каждый из них может использоваться для логики регистра последовательного приближения или схем на переключаемых конденсаторах внутри КАБ. Схемотехника системы генераторов гарантирует полную синхронность
всех производных сигналов и основной тактовой частоты. Это особенно важно, когда используется наращивание производительности схемы за счет использования совместной работы нескольких ПАИС.