Правильная ссылка на эту страницу
http://az-design.ru/Support/HardWare/Intel/D19900125Elc012.shtml

Использование ПЛИС для организации интерфейса встроенного RISC- контроллера

УДК 621.3.049.771.14+681.327.8

Том Баунс (Thorn Bowns)
Редакция Electronics

Thorn Bowns. Simplify a RISC embedded controller interface using a PLD, ED, 1990, No.2, pp.69—72,74,76,78.

Компания Intel предлагает программируемую логическую интегральную схему (ПЛИС) 85С960, которая позволяет реализовать логику управления пакетно-монопольным режимом обмена, синхронизацию, анализ временных параметров, предусматривает возможности перепроектирования и программирования логики и благодаря этому существенно упрощает применение RISC-процессора в качестве встроенного контроллера.

Разработчики в настоящее время все чаще обращаются к процессорам с RISC-архитектурой, таким как 80960КВ, для реализации функций встроенного управления, поскольку эти процессоры характеризуются необходимым быстродействием и высоким качеством работы. Однако при применении RISC-процессоров возникают определенные проблемы проектирования. Например, эти процессоры предъявляют более сложные требования к интерфейсу, чем традиционные менее быстродействующие встроенные контроллеры.

Для разработчиков, ориентирующихся на микропроцессор 80960KB, компания Intel предлагает программируемую логическую ИС (ПЛИС) 85C960, которая реализует наиболее сложные функции интерфейса и позволяет достаточно легко строить соответствующую программируемую логику. Данная специализированная ПЛИС предназначается для построения логики управления пакетно-монопольным режимом обмена и управления синхронизацией — со всеми таблицами состояния, средствами анализа временных параметров и возможностями перепроектирования логики. Предлагаемая ПЛИС предусматривает гибкую дешифрацию адресов и полный набор вариантов включения периодов ожидания в цикл обращения к периферийным устройствам.

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

Базовая схема интерфейса микропроцессора 80960KB состоит из нескольких отдельных блоков, в число которых входят регистры фиксации адреса, дешифратор адресов, приемопередатчики данных, логика управления шиной пакетно-монопольного обмена, блок управления временной диаграммой и блок синхронизации тактовых сигналов и сброса (рис.1). Блоки, не зависящие от конкретного применения,— регистры фиксации адреса, буферы данных, блок синхронизации тактовых сигналов и сброса и логика управления шиной пакетно-монопольного режима обмена — требуют логики высокого быстродействия и высокой степени интеграции. Эти части интерфейса вряд ли будут затрагиваться в случае замены периферийных устройств или каких-либо других изменений с целью специализации или уточнения структуры системы. Для построения регистра фиксации адреса используются четыре 1-байт защелки, а для формирования сигнала разрешения приема адреса ALE — инвертор.

Базовый интерфейс RISC-процессора 80960KB состоит из блоков, часть которых не зависит, а часть зависит от конкретного применения. В число блоков, кото
Рис.1 Базовый интерфейс RISC-процессора 80960KB состоит из блоков, часть которых не зависит, а часть зависит от конкретного применения. В число блоков, которые работают независимо от применения, входят регистры фиксации адресов, приемопередатчики-буферы данных, блок синхронизации тактовых сигналов и сброса, а также логика управления пакетно-монопольным режимом шины.

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

Остальные блоки интерфейса строятся как специализированные, они определяются конкретным применением. В число таких блоков входит дешифратор адресов (или дешифратор сигналов выбора кристалла), генератор периодов ожидания и факультативная схема для формирования таких сигналов, как синхросигнал записи W̅C̅L̅K̅ и сигнал последнего цикла пакетно-монопольного обмена B̅l̅a̅s̅t̅, используемый при работе с устройствами памяти, которые предусматривают такой режим. Дешифратор адресов, который программируется в соответствии с требованиями карты памяти разрабатываемой системы, формирует на своих выходных триггерах-защелках сигналы выбора кристалла CS для различных периферийных схем. Генератор периодов ожидания, на который поступают сигналы CS, определяет по этим сигналам, какое число периодов ожидания необходимо задавать, а затем ждет сигнала «пуск» от схемы слежения за состоянием шины, чтобы начать отсчитывать это число периодов ожидания. Сигналы B̅l̅a̅s̅t̅ и W̅C̅Y̅K̅ вырабатываются при помощи конечных автоматов, тесно взаимодействующих с логикой управления пакетно-монопольным режимом обмена.

Возможные компромиссы и ловушки при проектировании

При проектировании интерфейсной схемы, осуществляющей связь RISC-процессора 80960KB с его периферийными устройствами, разработчики должны находить ряд взвешенных компромиссных решений, от которых зависит эффективность интерфейса. Например, дешифратор адресов должен быть гибким, чтобы соответствовать требованиям выбранной разработчиком карты памяти, и при этом достаточно быстродействующим, чтобы при выборе периферийных устройств не вносить дополнительных задержек в цикл доступа к подобным устройствам. Если дешифратор располагается после регистров фиксации адреса, то расчетная временная цепочка будет включать интервал от синхросигнала до сигнала A̅L̅E̅ (Tco), задержку на регистре, задержку на дешифраторе, время доступа к периферийному устройству, задержку на приемопередатчиках данных и интервал от момента установления до фронта стробирования в течение периода данных (Тсо) (рис.2,а). Накопленная задержка ТАСС составляет четыре периода тактовой частоты CLK2 за вычетом Тсо и Tsu. В системе с тактовой частотой 20 МГц, работающей без периодов ожидания, это означало бы 100 нс минус 23 нс, так что на задержку на регистре фиксации, дешифраторе, на доступ к периферийному устройству и задержку на приемопередатчике остается не более 77 нс.


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

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

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

Генерация сигнала B̅l̅a̅s̅t̅ для устройств памяти с пакетно-монопольным режимом обмена представляет довольно сложную задачу, поскольку этот сигнал должен возникать в течение периода данных последнего цикла обмена. Схема, вырабатывающая этот сигнал, должна считывать информацию о процессе прохождения пакетно-монопольного обмена из блока логики пакетно-монопольного обмена, а затем выдавать сигнал во время периода данных. Единственный способ определить, будет ли текущее состояние периодом данных или периодом ожидания.— это «заглянуть в будущее» для генератора сигнала готовности и опередить выдачу этого сигнала на один такт CLK2 (рис.2,в).

Для выполнения операций записи индивидуальных байтов в статическое ЗУПВ (СЗУПВ) сигнал W̅C̅L̅K̅ должен «квалифицироваться» (подтверждаться, поддерживаться) сигналами разрешения приема байтов LBE. Поскольку это приведет к определенной задержке WCLK, необходимо будет задержать сигналы А2 и А3 по отношению к W̅C̅L̅K̅, чтобы обеспечить правильное временное соотношение между этими сигналами (рис.2,г). В основе рассматриваемого интерфейса лежит блок логики управления пакетно-монопольным режимом обмена. Он содержит несколько счетчиков и конечных автоматов, в том числе счетчик количества информации, передаваемой в пакетно-монопольном режиме, счетчик адресов (А2 и А3) и генератор сигналов Blast. Блок логики управления пакетно-монопольным режимом должен опознавать начало доступа в этом режиме, загружать в счетчик обратного типа значение количества информации в пакете обмена (это значение поступает с локальных адресных линий LAD0 и LAD1), а также хранить начальные значения младших разрядов адреса, считанные с линий LAD2 и LAD3 в счетчик адресов.

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

Программируемая логика

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

Большинство независимых от конкретного приложения блоков интерфейса можно реализовать при помощи высокоскоростных ТТЛ ИС. Для построения регистров фиксации адреса и приемопередатчиков данных, вероятнее всего, будут использоваться такие высокоскоростные ТТЛ ИС, как 74F373 и 74F245 соответственно, а для обращения сигнала A̅L̅E̅ — инвертор 74F00. Прибор 74F138 может вырабатывать сигналы выбора кристалла, декодируя старшие разряды адресов. При помощи нескольких быстродействующих логических вентилей и регистров можно формировать тактовые сигналы максимальной и половинной частоты для синхронизации сброса, а также выдавать эти и другие синхросигналы на остальные блоки системы, где это необходимо.

Остальные функции интерфейса можно реализовать с использованием высокоскоростной биполярной программируемой логики. Логика управления пакетно-монопольным режимом обмена, зависящая от требований конкретного приложения, может содержаться в одной высокоскоростной ПЛИС. Однако требуемое число регистров и комбинационных логических схем для построения счетчиков и конечных автоматов логического блока управления пакетно-монопольным режимом может превосходить возможности одной ПЛИС. Блок управления временной диаграммой, содержащий генератор периодов ожидания и генератор синхросигналов записи W̅C̅L̅K̅, может строиться несколькими различными способами. В зависимости от заданной степени сложности алгоритма включения периодов ожидания число ПЛИС, требуемых для реализации этой функции, может составлять от одного до более чем семи приборов.

В качестве одного из наиболее надежных способов включения периодов ожидания в цикл обращения можно было бы порекомендовать использование основной ПЛИС — генератора сигналов готовности R̅D̅Y̅ и синхросигналов записи W̅C̅L̅K̅ и связанных с нею нескольких индивидуальных ПЛИС, по одной для каждого периферийного устройства. При появлении сигнала выбора кристалла для периферийного устройства соответствующая ПЛИС активизируется и выдает значение числа необходимых периодов ожидания на основной генератор сигналов R̅D̅Y̅, реализованный при помощи программируемой матричной логики (ПМЛ). Эта ПМЛ затем производит в обратном порядке отсчет полученного значения и выдает сигнал готовности R̅D̅Y̅ в конце счета. При этом каждую индивидуальную ПЛИС можно запрограммировать таким образом, чтобы она различала первый и последующий циклы обмена в рамках текущей операции пакетно-монопольного режима, а также выполнение операций чтения или записи. Получая указанную информацию, программируемая логическая ИС может обеспечить включение необходимого числа периодов ожидания в цикл обращения.

Самый простой способ создания логики для реализации пакетно-монопольного режима обмена заключается в том, чтобы определить различные необходимые для этого элементы — счетчик размера пакета и схему слежения за состояниями шины, счетчик адресов и логику управления пакетно-монопольным режимом — и представить каждый элемент в виде диаграммы состояний. Чтобы правильно разработать схему слежения за состояниями шины и связать ее с другими конечными автоматами, необходимо четко представлять себе состояния шины процессора. Блок управления временной диаграммой состоит из индивидуальных ПЛИС, которые учитывают число периодов ожидания, и основной ПЛИС с обратным счетчиком для генерации сигналов R̅D̅Y̅ и W̅C̅L̅K̅.

Рассматриваемый проект системы на базе процессора 80960KB требует, чтобы генератор сигналов W̅C̅L̅K̅ описывался как конечный автомат, хотя генератор сигналов R̅D̅Y̅ представляет собой не что иное, как предварительно загружаемый обратный счетчик с дополнительной логикой пуска, останова и сброса. Составив полное описание логики управления пакетно-монопольным режимом и логики управления временной диаграммой в виде множества взаимосвязанных конечных автоматов, разработчик может определить необходимое количество ресурсов ПЛИС. Описания конечных автоматов транслируются на исходный язык ПЛИС, причем либо непосредственно в формат языка конечных автоматов или другого языка высокого уровня, либо как булевы уравнения-формулы с минимизацией.

Разбиение

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

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

Предлагаемая компанией Intel ПЛИС 85C960 — это усовершенствованная специализированная КМОП ПЛИС, реализующая основные интерфейсные функции для систем, которые строятся на базе процессоров 80960KA/KB. Эта ПЛИС реализует не весь интерфейс 80960KA/KB, а содержит дешифратор сигналов выбора кристаллов, логик} управления временной диаграммой и логику управления пакетно-монопольным режимом обмена в одном 28-контактном корпусе. ПЛИС 85C960 разрабатывалась с целью обеспечения высокоскоростного управления операциями пакетно-монопольного обмена без ущерба для гибкости конфигурации. Специализированные ПЛИС — единственные программируемые приборы, которые содержат быстродействующую логику высокой степени интеграции и удовлетворительной гибкости.

На кристалле ПЛИС 85C960 размещается дешифратор адресов, или сигналов выбора кристаллов с восемью входами и восемью выходами, из которых четыре — внешних (рис.3). Каждый выход можно независимо программировать таким образом, чтобы сигнал на него выдавался в ответ на любой входной адресный код и фиксировался при помощи генерируемого внутри кристалла сигнала разрешения приема-фиксации LE. Рассматриваемый дешифратор адресов характеризуется не только гибкостью и полной программируемостью, но и вырабатывает сигналы выбора кристалла CS всего через 10 нс после поступления действительных адресов.

Однокристальная ПЛИС 85C960 компании Intel содержит как постоянную, так и программируемую логику. Эта специализированная ИС предусматривает реализацию
Рис.3. Однокристальная ПЛИС 85C960 компании Intel содержит как постоянную, так и программируемую логику. Эта специализированная ИС предусматривает реализацию многих интерфейсных функций процессора 80960KB.

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

На кристалле ПЛИС размещается также логика управления пакетно-монопольным режимом. Это схема слежения за состояниями шины, циклический счетчик адресов и другие логические схемы управления временной диаграммой, в частности вырабатывающие сигналы W̅C̅L̅K̅ и B̅l̅a̅s̅t̅. Во время операции пакетно-монопольного обмена схема слежения за состояниями шины вырабатывает внутренний сигнал разрешения приема-фиксации адреса A̅L̅E̅ для дешифратора сигналов выбора кристалла и загружает в генератор периодов ожидания соответствующее значение счетчика. Схема слежения считывает младшие адресные входные линии для определения размера пакета и начального адреса, а затем выдает значения А2 и А3 на шину адресов. В процессе пакетно-монопольного обмена эта схема следит за тем, сколько циклов осталось для передачи текущего пакета, обеспечивает циклическое формирование А2 и А3, стробирует сигнал W̅C̅L̅K̅ соответветствующим образом, перезапускает генератор периодов ожидания и выдает сигнал B̅l̅a̅s̅t̅ во время последнего цикла обмена.

Логика управления пакетно-монопольным режимом обмена

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

Вывод R̅D̅Y̅ рассматриваемой ПЛИС представляет собой усилитель с открытым стоком. При операциях доступа, когда ПЛИС не вырабатывает декодированный сигнал CS, она будет считывать состояние вывода R̅D̅Y̅ как входной сигнал, и логика управления пакетно-монопольным режимом обмена будет соответственно работать циклически, формируя действительные значения сигналов А2, А3 и W̅C̅L̅K̅ с нужными временными параметрами. Линии А2 и А3, которые имеют мощные выходные КМОП-усилители, способные управлять большими матрицами памяти, синхронизируются по сигналу W̅C̅L̅K̅, что позволяет квалифицировать этот сигнал сигналами разрешения приема байтов LBE при помощи внешних схем.

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

Удаленная система для метеорологических наблюдений строится на базе процессора 80960КВ, устройств памяти и ввода-вывода. Сопряжение между процессором
Рис.4. Удаленная система для метеорологических наблюдений строится на базе процессора 80960КВ, устройств памяти и ввода-вывода. Сопряжение между процессором и другими компонентами системы реализуется при помощи ПЛИС.

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

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

Проектирование интерфейса

Процессор сопрягается с четырьмя периферийными подсистемами при помощи ПЛИС и других схем. Локальная шина адресов/данных связывается через блок ТТЛ-приемоперадатчиков с системной шиной данных и через хранящие ТТЛ-регистры с системной шиной адресов. Сигналы разрешения приема байтов буферизуются в высокоскоростной ПЛИС и разводятся по тем периферийным устройствам, где они необходимы. Остальные функции интерфейса, в том числе дешифрацию адресов, генерацию периодов ожидания, управление пакетно-монопольным режимом обмена, а также генерацию сигналов W̅C̅L̅K̅ и B̅l̅a̅s̅t̅, реализует сам процессор.

Сигналы локальных (небуферизованных) линий адресов/данных LAD31-24 и LAD3-0 поступают в ПЛИС вместе с процессорными сигналами управления шиной ADS , DEN , CLK2 (высокоскоростной синхросигнал), сброса и записи/чтения W/R. Выходная линия готовности R̅D̅Y̅ имеет согласующую цепь из нагрузочного резистора и резистора утечки, и ее сигнал поступает на вход готовности Ready процессора, а также на блок разрешения приема байтов. Чтобы упростить управление пакетно-монопольным режимом обмена, сигналы А2 и А3 поступают на периферийные устройства, не предусматривающие такого режима, с ПЛИС, а не с регистров фиксации адреса. Выходная линия записи/чтения W/R процессора соединяется непосредственно с входами разрешения выхода QE для всех периферийных устройств, а синхросигнал записи W̅C̅L̅K̅ с ПЛИС поступает на линии разрешения записи W̅E̅ тех периферийных устройств, которым этот сигнал требуется. Сигнал B̅l̅a̅s̅t̅ поступает с ПЛИС в блок СППЗУ с пакетно-монопольным режимом обмена — так же как и сигналы ADS и CLK2.

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

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

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

Число периодов ожидания при обращении к периферийным устройствам

Устройство

Первое чтение

Последующие чтения

Первая запись

Последующие записи

ЭСППЗУ с параллельным стиранием

2

2

5

5

СППЗУ с пакетно-монопольным режимом обмена

1

0

Статическое ЗУПВ

1

1

1

1

ВВ

3

3

4

4

Указания по проектированию

Существует ряд важных соображений, которые следует учитывать при проектировании с применением ПЛИС 85C960. Прежде всего следует соблюдать стандартные правила проектирования КМОП-схем. Например, развязывающий конденсатор достаточно большой емкости — минимум 0,2 мкФ — необходимо устанавливать как можно ближе к контакту питания Vcc. Все незадействованные входы следует привязать к низкому уровню во избежание повышения мощности потребления. Кроме того, в процессе нормальной работы на линии питания Vcc должен быть обеспечен максимальный уровень напряжения до начала переключения входных сигналов — в противном случае прибор может перейти в неизвестное состояние.

Критическим фактором является временное соотношение между сигналом сброса Reset и синхросигналом CLK2. ПЛИС 85C960 работает от внутреннего синхросигнала, который должен находиться в фазе с синхросигналом шины. Первый положительный фронт синхросигнала CLK2 после отрицательного фронта сигнала сброса Reset ПЛИС рассматривает как фронт «а», т.е. обработку всех входов и выходов ПЛИС будет производить, используя этот фронт как начало отсчета времени. Временные параметры сигнала сброса соответствуют требованиям временной диаграммы для процессора 80960KB.

Хотя ПЛИС 85C960 декодирует восемь сигналов выбора кристаллов C̅S̅, только четыре из них выводятся как внешние. Это может оказаться недостатком для систем, содержащих пять или более периферийных устройств. Простейший способ обойти эту проблему состоит в том, чтобы использовать дополнительный внешний дешифратор адресов, например программируемый дешифратор адресов 85C508 компании Intel. Его можно было бы запрограммировать на выработку сигналов C̅S̅ в диапазонах адресов, соответствующих диапазонам одного или нескольких скрытых сигналов C̅S̅ для ПЛИС. Благодаря этому ПЛИС получила бы возможность обеспечивать управление шиной также и для этих периферийных устройств. Разработчики систем должны иметь в виду, что для декодирования сигналов C̅S̅ в ПЛИС используется один терм логического произведения. Это накладывает определенные ограничения на отображение периферийных устройств в карте памяти, поскольку, хотя и обеспечивается возможность использования любого диапазона адресов в пределах области для восьми входов, очень сложные схемы отображения могут оказаться нереализуемыми.

Согласование

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

Даже при правильной организации циклической работы логики управления пакетно-монопольным режимом обмена, если ПЛИС 85C960 не формирует сигналов C̅S̅ или R̅D̅Y̅, то сигнал B̅l̅a̅s̅t̅ не вырабатывается. Это определяется временными соотношениями между сигналами B̅l̅a̅s̅t̅ и входом стробирования R̅D̅Y̅ (рис.2,в). Сигнал B̅l̅a̅s̅t̅ должен выдаваться в начале последнего периода данных, и сигнал R̅D̅Y̅ будет становиться действительным, как правило, уже ближе к концу этого последнего периода данных. Одна ко, поскольку ПЛИС будет формировать сигнал B̅l̅a̅s̅t̅ во время операций, для которых она декодирует сигналы выбора кристалла CS, разработчикам необходимо только обеспечить, чтобы ПЛИС декодировала сигналы CS для памяти с пакетно-монопольным режимом обмена.

Единственные блоки ПЛИС 85C960, требующие задания конфигурации,— это дешифратор адресов и просмотровая таблица числа периодов ожидания. Дешифратор адресов считывает восемь входных адресов, запоминает и декодирует их, определяя диапазон адресов в соответствии с логической формулой, запрограммированной в виде терма произведения для каждого индивидуального выхода C̅S̅. А сигналы C̅S̅ затем участвуют в определении тех значений справочной таблицы, которые будут загружаться в счетчик R̅D̅Y̅.

Но прежде всего необходимо составить логические формулы для декодирования сигналов выбора кристалла C̅S̅. Для рассматриваемого примера проекта формулы сигналов можно вывести из информации, содержащейся в карте памяти (рис.5). Поскольку на дешифратор сигналов C̅S̅ поступают восемь линий адресов, самый широкий диапазон декодируемых адресов можно обеспечить при использовании старших восьми разрядов адреса процессора 80960КВ.

Составление логических формул

Формулы для конкретных сигналов C̅S̅ представляются логическим произведением прямых или обратных значений разрядов адреса, которые должны в результате декодирования обеспечить обращение к данному блоку памяти. Например, начальный адрес СППЗУ с пакетно-монопольным режимом обмена — это шестнадцатеричное значение 00000000. Здесь самый старший байт имеет значение 00, т.е. старшие разряды адреса — LAD31-24 — будут иметь двоичное значение 00000000. При этом получается логическая формула с меткой EPROMCS. Блок памяти для ЭСППЗУ с параллельным стиранием требует вдвое большего диапазона декодируемых адресов, чем блок СППЗУ с пакетно-монопольным режимом обмена. Поскольку ПЛИС 85С960 предусматривает только один терм произведения на вывод, блок ЭСППЗУ с параллельным стиранием начинается с ячейки, следующей за резервной областью после блока СППЗУ с пакетно-монопольным режимом обмена. В формуле для декодирования выбора кристалла для ЭСППЗУ с параллельным стиранием (FLASHCS) младшие разряды поступающего адреса не учитываются.

Число периодов ожидания для каждого периферийного устройства определяется путем сравнения требований по времени доступа для устройства с предусмотренным временем в каждом периоде передачи данных. Предположим, например, что предусмотренное время доступа (с учетом задержек на дешифраторе, регистрах фиксации и приемопередатчиках) для случая отсутствия периодов ожидания составляет 55 нс. Если время доступа для СЗУПВ, применяемого в проектируемой схеме, составляет 60 нс, то потребуется по меньшей мере один период ожидания. А включение одного периода ожидания в цикл обращения дает дополнительные 50 не, так что появляется возможность применять микросхемы СЗУПВ с циклом доступа до 105 нс.

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

Об авторе

Том Баунс, специалист по технической поддержке в группе программируемых логических ИС в компании Intel, окончил Америкен-Риверс колледж (Кармайкл, шт.Клифорния) по специальности цифровая и СВЧ-электроника.

Выходные данные:

Журнал "Электроника" том 63, No.03 (832), 1990г - пер. с англ. М.: Мир, 1990, стр.34

Electronics Design Vol.38 No.1 January 11, 1990 A Penton Publication

Electronics Design Vol.38 No.2 January 25, 1990 A Penton Publication

Thorn Bowns. Simplify a RISC embedded controller interface using a PLD, ED, 1990, No.2, pp.69—72,74,76,78.

Раздел: МЕТОДЫ, СХЕМЫ, АППАРАТУРА

Тема:     Программируемые ИС





Дата последнего изменения:
Thursday, 21-Aug-2014 09:10:44 MSK


Постоянный адрес статьи:
http://az-design.ru/Support/HardWare/Intel/D19900125Elc012.shtml