Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Astra.doc
Скачиваний:
3
Добавлен:
01.03.2025
Размер:
11 Мб
Скачать
☆

§ 2.6. Интерфейс jtag. Периферийное сканирование. Программирование в системе (isp). Конфигурирование сбис пл

Интерфейс JTAG и периферийное сканирование

Термином JTAG обозначают совокупность средств и операций, позволяю­щих проводить тестирование БИС/СБИС без физического доступа к каждо­му ее выводу. Аббревиатура JTAG возникла по наименованию разработчи­ка — объединенной группы по тестам Joint Test Action Group. Термином "периферийное сканирование" (ПС) или по-английски Boundary Scan Testing (BST) называют тестирование по JTAG стандарту (IEEE Std 1149.1). Такое тестирование возможно только для микросхем, внутри которых имеется набор специальных элементов — ячеек периферийного сканирования (ячеек ПС), в английской терминологии BSC (Boundary Scan Cells) и схем управления их работой.

Ячейки BSC размещены между каждым внешним выводом микросхемы и схемами кристалла, образующими само проверяемое устройство. Все боль­шее число современных микросхем снабжается интерфейсом JTAG, т. е. возможностями периферийного сканирования.

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

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

Схема BSC (рис. 2.24, б) содержит два мультиплексора и два D-триггера. В зависимости от адресного входа "Режим" выходного мультиплексора, ячейка либо свободно пропускает сигнал со входа на выход, либо передает на выход состояние второго триггера. Адресный сигнал входного мультиплексора "Сдвиг" управляет подачей на первый триггер входного сигнала (от логических входов микросхемы) или же сигнала от предыдущей ячейки. Таким образом, по синхросигналу для первых триггеров и при передаче через входной муль­типлексор сигнала "Вход" осуществляется параллельная загрузка этих тригге­ров во всех ячейках. При передаче через входной мультиплексор сигнала от предыдущей ячейки тактовый сигнал производит сдвиг на один разряд в реги­стре, образованном последовательным соединением ячеек.

По синхросигналу "Обновление" текущее содержимое регистра, составлен­ного из цепочки первых триггеров, переписывается в статический регистр, составленный из вторых триггеров. Сдвиги в регистре на триггерах 1 не бу­дут влиять на содержимое регистра на триггерах 2.

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

Рис. 2.24. Структура аппаратных средств интерфейса JTAG (а) и схема ячейки периферийного сканирования (б)

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

Порт тестирования ПТ (ТАР, Test Access Port)— это 4 (иногда 5) специально выделенных выводов микросхемы. Функциональное назначение этих линий:

TDI (вход тестовых данных) — вход последовательных данных периферийного сканирования. Команды и данные вдвигаются в микросхему с этого вывода г:

переднему фронту сигнала ТСК;

ТОО (выход тестовых данных) — выход последовательных данных. Команды данные выдвигаются из микросхемы с этого вывода по заднему фронту сигнала ТСК;

ТСК (вход тестового тактирования) — тактирует работу встроенного автомата управления периферийным сканированием. Максимальная частота сканирова­ния периферийных ячеек равна 8 МГц;

TMS (вход управления тестированием) — обеспечивает выбор режима тестирования.

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

Работа средств обеспечения интерфейса JTAG подчиняется сигналам автома­та управления, встроенного в микросхему. Состояния автомата определяются сигналами TDI и TMS порта тестирования. Определенное сочетание сигналов TMS и ТСК обеспечивает ввод команды для автомата и ее исполнение.

Порядок операций при периферийном сканировании: загрузка кода коман­ды, загрузка данных, исполнение команды, считывание результата. Подроб­нее о работе средств управления интерфейсом JTAG говорится, например, в работе [30].

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

Программирование в системе

Реконфигурация (программирование) в системе — одно из важнейших дос­тоинств СБИС ПЛ, позволяющее легко производить изменения в логике их работы. Потребности в изменениях возникают как для устранения не выяв­ленных при первоначальном тестировании ошибок, так и при модернизации системы (Upgrade). Свойство программируемости непосредственно в систе­ме обозначается аббревиатурой ISP (In System Programmable).

Создание хорошо приспособленной к программированию в системе БИС/СБИС предъявляет определенные требования к ее архитектуре и программному обеспечению средств проектирования. Задача изменения функционирования БИС/СБИС легче решается при использовании в ней мелкозернистых логических блоков (см. §8.2), наличии схем-разделения термов в CPLD, управлений инверсиями, гибких вариантов установок и тактирования триггеров и т. д.

Возможности программирования в системе растут, если при проектирова­нии часть функциональных возможностей СБИС ПЛ оставлять свободной, имея в виду упрощение изменений проекта в будущем. При этом рекомен­дуется иметь запас по скорости, функциональным возможностям и ресурсам межсоединений. Если первоначальным вариантом проекта заняты более 90% емкости микросхемы и скорость ее работы близка к пределу, то для облег­чения последующих изменений целесообразно подумать о применении большей по уровню интеграции или более быстродействующей микросхемы, поскольку ожидать успешного "апгрейда" без запасов ресурсов рискованно.

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

Требования к числу допустимых для микросхемы циклов репрограммирования

Эти требования зависят от решаемых задач. Для отработки прототипа, рабо­та которого в дальнейшем будет неизменной, достаточным может быть чис­ло циклов репрограммирования порядка нескольких десятков, что обеспе­чивается даже схемами с УФ-стиранием данных. Для многих других приме­нений число допустимых циклов репрограммирования должно быть сущест­венно большим или даже практически неограниченным.

Настройка микросхем программируемой логики

Настройка на требуемый алгоритм функционирования производится с по­мощью программаторов (например, для PLD) либо непосредственно в сис­теме, что рассмотрено выше. Последнее характерно для СБИС ПЛ с триггерной памятью конфигурации.

Средства конфигурирования СБИС ПЛ с триггерной "теневой" памятью по­зволяют загружать ее от внешней памяти различными способами. Данные для конфигурирования могут поступать от разных источников (компьютера, ПЗУ, других СБИС ПЛ), форма их представления может быть последова­тельной или параллельной, роль конфигурируемой СБИС может быть ак­тивной или пассивной. В результате возникают несколько возможных режи­мов конфигурирования.

СБИС ПЛ, имеющие интерфейс JTAG, могут конфигурироваться с его ис­пользованием (расширенный интерфейс JTAG).

Для иллюстрации общих положений, касающихся конфигурирования СБИС ПЛ. рассмотрим несколько подробнее режимы конфигурирования на при­мере FPGA семейства ХС4000 [30].

Микросхемы семейства ХС4000 используют по несколько сотен битов кон­фигурации на каждый логический блок и его межсоединения. Каждый бит задает необходимое состояние элементу памяти в схеме логического блока, программируемого мультиплексора, программируемого ключа связи и т. д. Данные конфигурации вырабатываются средствами системы автоматизации проектирования.

Микросхемы имеют три вывода для задания одного из шести режимов кон­фигурирования. Три режима называются активными, в них СБИС ПЛ сама вырабатывает сигналы тактирования и управления для процесса обмена с источником данных конфигурации. В активном последовательном режиме данные конфигурации поступают от последовательной памяти PROM, спе­циально разработанной фирмой Xilinx для этой цели. В активных парал­лельных режимах данные конфигурации поступают от ПЗУ с восьмиразряд­ной (байтовой) организацией, а затем в самой FPGA преобразуются в по­следовательный битовый поток. Активных параллельных режимов два — в одном массив хранимых в ПЗУ данных начинается с нулевого адреса, в другом — с адреса 3FFFF.

В режимах, называемых пассивными, сигналы тактирования и управления обменом вырабатываются вне FPGA источником данных. Наиболее популя­рен режим "пассивный последовательный", в котором поступающие на FPGA данные вводятся в нее по фронтам внешнего тактирующего сигнала CCLK (Configuration Clock).

Два режима называются периферийными. В этом режиме FPGA играет роль внешнего устройства микропроцессорной системы, принимая восьмираз­рядные данные с шины и регулируя скорость обмена сигналами квитирова­ния RDY/BUSY. Самой FPGA присваивается адрес, и в системе имеется селектор адреса, подключенный к системной шине. Периферийный режим называется асинхронным, если внутренний генератор формирует сигналы тактирования для преобразования байтового потока в битовый, и синхрон­ным, если для этой цели применяются тактирующие сигналы от внешнего источника.

Несколько FPGA с различными конфигурациями можно связывать в после­довательную цепочку и использовать единый битовый поток для конфигу­рирования всей цепочки.

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

Инициализация СБИС ПЛ осуществляется автоматически при включении питания.

Литература к главе: [З], [30], [34], [38], [39], [46], [47], [48]. [51], [52], [53], [54], [55], [59].

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]