Лекции - Аппаратная реализация алгоритмов - файл n1.doc

Лекции - Аппаратная реализация алгоритмов
скачать (513.5 kb.)
Доступные файлы (1):
n1.doc514kb.31.05.2012 20:01скачать

n1.doc

Литература:

Шелл «Популярные цифровые устройства»

Полячков А.В. «ПЛИС»


      1. Системы проектирования и отладки.


САПР используемые при работе с программируемыми схемами образуют систему в общей системе проектирования CAD/CAM/CAE.

САПР можно разделить на общесистемные и специализированные. Моделирование цифровых устройств и аналоговых – общесистемные. Цифровое – функциональное (исп. абстрактные параметры), моделирование реальных компонентов (учитывает реальные параметры).

Существуют системы моделирования как общесистемные и специализированные. ViewLogic – система функционального моделирования; WorkViewOffice, DRCAD, Motorola, Inter, Altera – собственно системы моделирования. Все эти фирмы производят программируемые схемы. Разработчик лучше знает особенности собственных пордуктов и предлагает наиболее оптимальные средства. Системы позволяют подключать библиотеки реальных компонентов.

Методы описания модели:

  1. Текстовое;

  2. Графическое;

  3. Графы;

  4. Временные диаграммы.

Языки описания программируемых БИС: Существую низкоуровневые описания структуры и высокоуровневые средства: Ассемблеры и компиляторы. Низкоуровневые – на основе логических элементов. Используют логическое описание.

Для компонентов используют высокоуровневые языки: ABEL, CUPL, VHDL,AHDL.
Системы проектирования ALTERA.
Последовательное развитие систем проектирования. Для первых систем предлагался продукт A-PLUS. Потом предложили MAX-PLUS, MAX-PLUSII.

Основные блоки:

  1. Подготовка проекта (текстовой, графич., символьный редакторы, редактор диаграмм, редактор внутр. компоновки);

  2. Процессор (компилятор, блок-преобраз., сборщик, разделитель);

  3. Моделирование;

  4. Программирование.

20.02.01. Для новых компонентов Altera предлагает новый продукт – система Quartus.

Xilinx – известный производитель ПЛИС.

XFS – Xilinx Fondation Series

XDS – Xilinx Development System

XDS тогоже уровня, что и MAX+.

С
труктура:
HDL Editor – текстовый редактор.

Xilinx система в качестве основного поддерживает язык ABEL, и еще различные версии VHDL.

Shematic Editor – редактор схем.

FSM Editor – редактор диаграмм состояний (д.с.)

Это машинное средство, позволяющее создавать д.с. в обычной форме:
Редактор символов (компонентов) – позволяет сгенерировать новый символ (новый компонент из схемы).

Simulate – этап функционального моделирования (не привязано к конкретным микросхемам).

Implementation – перенос модели на реальный компонент.

Verif – проверка (верификация) 2-е части:

1. моделирование с учетом реальных параметров микросхем (реальные задержки, гонки).

2. анализатор временных параметров (задержек).

Prog – программирование. Этот этап непосредственно связан с реальными микросхемами.

Далее подключаются к устройству прототипу (отладочному модулю).

Для схем Xilinx используется программирование при подаче питания.

Новое направление в развитии систем моделирования:

  1. ведущие производители электронных компонентов предлагают воспользоваться Internet – моделированием, т.е. используются средства и ресурсы головной компании, она имеет порт, на который можно выйти, зарегистрироваться и работать.

  2. возможно использование следующего механизма: компиляция на ПК пользователя, при этом будет подгружаться с основного сайта производителя

  3. на ПК пользователя выполняется специализированная операция.

Развивается направление настраиваемых программных средств. Используется язык Java, выпускаются компиляторы с языка Java на язык программирования схемы (ПЛИС).

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

О
дна из фирм (Signetics Co) предложила структуру: ProgrLogicArray – программруемая логическая матрица.

Структура PLA:
Есть вх. буфер Fi на который подается входной сигнал Inp (n).

Н
азначение: формирование инверсных сигналов (n исходных и n инверсных). Эти сигналы поступают на матрицу And, число строк – удвоенное значение вх. сигналов (2n), число столбцов – m. Pm – выходы произведений (термы), всего их m. Каждый терм определяется логической функцией.
OR – матрица «или», реализуется функция или.

Окончательный результат:

Jm – перемычка в матрице OR.

F
o – вых. буфер управляет выходными сигналами и программирует инверсию.

Получилась схема и-или-не, для каждого сигнала можно получить свое логическое выражение.

Область применения: реализация комбинационных устройств, преобразователь кода, простой умножитель, можно проектировать последовательные схемы, если ввести ОС.
Эта схема была в дальнейшем развита в цифровой автомат Sequeser.

Fn – буфер ОС.

RGe – внутренний.

RGo – регистры.

В
нутри схемы ОС. Используется регистры чтобы исключить гонки. Количество возможных состояний определяется


27.02.01. Программируемые логические схемы.
Рассмотренная структура – удачное средство для проектирования цифровых автоматов.

PLS – предложена фирмой Signetics.

M
MI предложила несколько иную структуру:

Fi – буфер на вход.

And – матрица И.

Or – логические элементы ИЛИ.

Out – выходной блок. Может быть:

  1. Обыкновенный буфер на выход с возможным 3-им состоянием.

  2. Триггер + выходной буфер.

В выходном блоке возможно формирование обратной связи feedback. Следовательно, наличие обратной связи позволяет проектировать последовательностные схемы.

PLA – программируемая логическая матрица.

PAL – программируемая матричная логика.

В
этой новой структуре появилась новая терминология – макроячейка.

Макроячейка состоит из логической области И, логичекого элемента ИЛИ, триггера, выходного буфера. Такая структура позволяет разрабатывать и использовать различные типы ячееек. Ячейки могут быть с обратной связью и без нее.

Макроячейки могут тактироваться сигналом CLK. Триггеры могут сбрасываться сигналом Res. Выходной буфер может управляться сигналом OЕ. Эти сигналы могут подводиться отдельным выходом. Микросхемы:

P16L8 – 8 логических схем.

P16R8 – 8 логических блоков с триггерами.

P22V10 – универсальная логическая ячейка.

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

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





Оба логических блока соединяются с PIА – программируемая матрица внутренних связей. Она обеспечивает соединение входных сигналов с матрицей И, логических блоков, а также соединение части столбцов матрицы И одного логического блока со столбцами матрицы И другого логического блока.

PIA позволяет гибко передавать сигналы от одного функционального устройства к другому.

Такую структуру предложила Altera. Altera в своих разработках стала стала использовать именно такие логические блоки:  по 216 макроячеек, при чем макроячейки универсальны.

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

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

Имеются 4 варианта коммутации(как минимум) :

1) для АЛУ.

2) для схемы памяти.

  1. для счетчика.

  2. ще для чего-то.

Для организации каскадирования используются дополнительные сигналы переноса Pi-1 от предудущих макроячеек на следующие макроячейки. Входные сигналы поступают с матрицы И 16 с PIA.

Для элементов серии MAX7000В - логических блоках может быть до 16 макроячеек. Возможности серии MAX7000:
EPM 7032 – 2 логическиз блока по 16 макроячеек.

EPM 7256 – 256 макроячеек и 7 логических блоков.
С появлением сложных ПЛИС с большим количеством элементов стали появляться проблемы:

  1. Некоторые функциональные узлы (ФУ) внутренние, сигналы с них не нужны на выходе элемента (микросхемы).

  2. Много ФУ и уже существенна проблема связи между ФУ.

Вывод: нужны подходы, отличные от рассмотренных.

Возникает вопрос – какими должны быть макроячейки ? Сколько требуется входных переменных 8,16, .. ? В среднем используется 4 входных переменных. Но триггер нужен макроячейке и может быть не один.

Можно все логические ячейки по функциональному назначению разделить на 2 группы:

  1. Ячейки, формирующие сигналы ввода/вывода (порта ввода/вывода).

  2. Основная часть, которая формирует функциональные узлы.

Особое внимание к внутренним проводникам.


      1. VHDL.


Это язык описания аппаратуры. На него можно посмотреть как программисту так и схемотехнику. Язык включает в себя:

Данные: integer, real, boolean, bit, time, пользовательские (type TTT is range 0 to 19), составные типы данных, массивы, bit_vector, string, record, file.

Классы объектов: константы, переменные, сигналы.

Операторы: присвоение :=, назначение <=, условия if then else, case, loop, next, утверждение assert, ожидание wait, process, block, ganerate.

Пакеты: описание и тело.

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

Аппаратный взгляд: описание временных параметров, описание архитектуры, описание поведения.

Объявление конфигурации:

library IEEE

use IEEE std logic_1164.all

use IEEE std logic_arith.all (возможно использование пользовательских библиотек)

Объявление проекта:

Entity ABC is

Generic …

Port(A,B : in bit; C : out std_logic; inout; buffer)

End ABC

Описание структуры объекта:

Architecture Behavior

Of name_Entity is

Constant …

Signal …
Begin

(описание процессов)

A1: process;

End process A1;
Пример:

Entity RAM is

Ganeric (N: integer :=10);

(K: integer:=08);

Port(AB, in std_logic_vector(0 to N-1); DE, in std_logic_vector(0 to K-1))

Architecture Simpl of RAM

Constant NW: integer:=2**N;

Type MEM: array(0 to NW-1)

Of std_logic_vector(0 to K-1)

Signal M: MEM.

Function value (BV: in std_logic_vector)

Return natural is variable E: natural:=0

13.03.01. Begin

For i BV’Low to BV’Hogh Loop

E:=E*2;

If BV(I) = ‘1’ Then E:=E+1; End If;

End Loop;

Return E;

End Value;

Begin M:Process

(cs, …)

If cs = ‘0’ and not cs’Stable Then

If A’Stable (ta_cs) and WR ‘0’ and WR’Stable (tWR_cs) and DI’Stable(tDI_cs)

Then NEN (Value(A));

<= DI after Tcs;

End If;

Else

If A’Stable (ta_cs) and RD’Stable (tRD_cs) and …

Then DO ,= M (Value(A))

End If;

End If;

End Process M; End Simple;

ПЛИС с матричной архитектурой.
(Не все выходы макроячейки имеют внешние контакты.)

Б
лочная организация имеет проблемы с комутацией. Нужна структура позволяющая иметь множество внутренних блоков и разветвленные каналы связи – это матрица.
Все элементы объеденены матрицей соединений. Это 2х координатная сетка. Вместах пересечения функциональные устройства – программируемые переключатели.
20.03.01. Фирма Motorola предложила свою технологию MPA (Motorola Programmable Array). В основе всей логики – статические запоминаящие ячейки.

Ч
то представляет собой эта структура ?
4 области, каждая из которых состоит из матрицы логических ячеек. Ячейки проще, чем у Xilinx. Ячейки меньше, но их больше, чем у Xilinx. Внутри квадратов – коммутируемая сетка. Часть сигналов выходят за пределы квадратов. Вокруг проходят глобальные шины (глобальные линии связи), у которым эти квадраты могут подключаться (на рисунке – жирная линия). По периметру – IOC блоки ввода/вывода программируемые как и в Xilinx.

Э
ти квадраты неоднородны. Они состоят из как бы из зон. По периметру элементы одного типа (порты). Внутри другие (триггеры).
Ф
ирма Atmel, все их продукты обозначены AT. Логика матричной структуры.
Кроме основной коммутационной матрицы имеется еще один коммутационный слой.

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

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

Для Atmel можно переконфигурировать устройство, не выключая его, т.е. в процессе работы. Это же есть в ьXilinx и Altera.

Функциональный узел памяти часто используется при проектировании. В схемах обработки информации используется память 2-х портового типа. В Atmel, в Xilinx, в Altera реализуются блоки памяти. На основе стандартных логических ячеек можно организовать накопитель – триггер 1 бит информации. Но это не эффективно, т.к. занимает слишком много места на кристалле.

Одно из направлений: между обычными логическими блоками вмещаются блоки памяти, блоки ОЗУ. Каждый из этих блоков памяти (2-х портовый) имеет шину адреса, шину данных (Din и Dout раздельны). Все это подключается к внутренней матрице. Эти блоки памяти объемом 32 – 512 бит информации.

Программа упаковки позволяет их использовать совместно, объединять. В этом объединении может менятся разрядность накопителя. Эффективность использования этого блока выше, чем у обычного накопителя.
ПЛИС фирмы Altera.
Отличие от Xilinx – ПЛИС Altera дешевле. Altera – для широкого применения. У Altera тоже есть военные разработки, но их меньше. Xilinx в этом больше продвинут.

Altera имеет классические ПЛИС, но вслед за Xilinx они стали разрабатывать свои устройства матричной структуры. Они несколько отличаются.





Каждый из логических блоков (LAB) состоит из нескольких макроячеек = 8,10,12,16 ...

Каждый LAB имеет внутреннюю матрицу И и внутренние цепи переноса (счетчики). LUT тоже есть, то есть каждая макроячейка внутри может переконфигурироваться.

Между собой LAB соединяются глобальной коммутационной матрицей (КМ).

Особенность КМ – это матрица с нормируемыми параметрами. Здесь тоже используются встроенные блоки памяти. В Altera они универсальные. Память может быть сконфигурирована как 2-х портовая, 1-но портовая. Она наращиваемая. Блок памяти может использоваться как умножитель. По периметру матрицы (кристалла) – блоки ввода/вывода.

Одна серия может быть выполнена в разных корпусах и количество выводов ввода/вывода для каждого корпуса различны.

Т. к. в Altera используются логические блоки, то подход к компановке элементов по блокам и трассировки отличаются от ХС. Возможно управлять размещением элементов.

Современные ПЛИС FLEX10K100, ее особенность – 5000 логических элементов, которые соединены в 624 блока 12х52, 12 встроенных блоков, которые могут конфигурироваться как ЗУ. Каждый логический блок может быть запрограммирован: 256х8, 512х4, 1024х2, 2048х1. Это может быть и оперативная память.


      1. Программируемые ПЛИС.


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

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

FLASH состоит как бы из 2-х частей, которые могут программироваться по очереди или вместе. Когда вместе - схема не работает.

  1. Запись из ОЗУ;

  2. Запись с последовательным доступом.

Б
ольшие ПЛИС имеют стандартный порт JTAG (Join Test Action Group), назначение: разработка средств тестирования и настройки элементов. JTAG.1149.1 данный стандарт описывает интерфейс (тестовый) для электрических элементов. Подключение производиться с помощью COM порта Test Access Port (TAP). Четыре основные сигнала: TDI, TCK, TMS, TDO. Иногда допускают TRST.
Передача осуществляется в синхронном режиме. Существует контроль и своя система команд передачи по цепочке:

EXTEST – ТЕСТИРОВАНИЕ СВЯЗИ;

BYPASS – ПРОПУСК НАСКВОЗЬ;

SEMPLES/RELOADED – ПРОВЕРКА/ЗАГРУЗКА;

IDCODE – ЧТЕНИЕ ИДЕНТИФИКАЦИОННОГО КОДА;

USERCODE – ОПРЕДЕЛЕНИЕ ПОЛЬЗОВАТЕЛЯ.

СПЕЦИАЛЬНЫЕ КОМАНДЫ ТЕСТИРОВАНИЯ.

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

Одним из путей формирования порта ТАР - подключение к стандартному LPT порту.
03.04.01. Настройка. (Конфигурация ПЛИС). Загрузка конфигурации из памяти конфигурации.
С
уществует ПЗУ с произвольным доступом. Сущ-ет ПЗУ с последовательным портом (Sereal ПЗУ). Это ПЗУ большой емкости, несколько десятков бит информации. Считывание идет последовательно. Корпуса маленькие. Сигналов мало.

Использование такой ПЗУ возможно в режиме последовательной загрузки файла конфигурации.

Все современные матричные ПЛИС имеют возможность загрузки. Режим загрузки задается специальными кодами MODE.

П
ри вкл-ии питания, внешними схемами формируется задержка импульсов управления (сигналы RESet и Program).

Загрузка с файла конфигурации. ПЛИС генерирует сигналы CS, CLCK и формирует чтение данных из последовательных ПЗУ. Файл конфигурации имеет свой формат. ПЛИС должны запускаться от внешнего генератора. Автомат в ПЛИС считывает файл конфигурации и производит загрузку.
Р
ежим «мастер» – ПЛИС сама загружает себя из ПЗУ. Когда несколько ПЛИС, их загрузка производится из одного ПЗУ.

Режим параллельной загрузки. Могут использоваться ПЗУ с произвольным доступом.

Режим Mode определяет, что загрузка параллельная, внутри ПЛИС есть счетчик адреса для АВ. Один файл конфигурации будет последовательно записан во все ПЛИС.

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

Достоинства: если используется 1-на ПЗУ, то загрузка будет быстрее.

Иногда для загрузки используют FLASH ячейки, они не теряют свой файл конфигурации.
Типы БИС. Программируемая логика.




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

Сравнения по этапам проектирования:

ПЗ СЭ БМК ПЛИС

Системное: + + + +

Логическое: + + + +

Схемотехническое: + - - -

Изгот. Шаблона: + + -+ -

Изгот ИС: + + + -

Тестир ИС: + + + +

Для всех подходов нужны системы проектирования. Они могут охватывать различные этапы.
10.04.01. БМК.
С
труктура:

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

2 основные структуры (связанные с разводкой элементов):

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

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

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

Размещение линий связи.

  1. Канальный подход – обычно реализуется в программируемой логике. Каналы могут занимать до 30% кристалла.

  2. Когда линия связи в отдельных слоях размещается поверх ячеек с логическими элементами. (лишний слой => дороже, технология более сложная).

В настоящее время почти все производители предлагают систему проектирования матричных кристаллов, и предлагают заготовки этих кристаллов.

Технология – полевые транзисторы (в основном). Проблема – получить маленький размер полевого транзистора. В основном элементы кМОП – использование не кремния, а элементов на основе арсенида галлия. Это сверхбыстродействующие полевые транзисторы. Частота переключения  ГГц. В арсенид галлиевых элементах задержки 0.1 – 0.5 нс. Но в данных условиях энергопотребление велико.

Аналоговые БМК (требуется иметь комплементарный набор транзисторов).

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

Используются следующие подходы.

Аналоговая техника используется там, где цифровая техника не эффективна, либо в качестве преобразователя физического процесса в цифровой. Аналоговые БМК функционально зависимы (разработаны под специальные задачи), следовательно ограничения;

Подходы:


Схема синхронизации.
Тактирование цифровых схем.

Существуют комбинационные и последовательные схемы.

Комбинационные схемы (КС) – состояние схема прямо определяется входными воздействиями.

Последовательная схема (ПС) – функция выходов определяется состоянием входов и предыдущими состояниями (предыстория).

2 группы ПС:

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

td-c – время опережения сигналом D сигнала clock. tc-d – время удержания сигнала D относительно сигнала clock.

В
нутренняя структура может быть такой, что tc-d стремится к нулю. Может быть даже так:

Для синхронизации ПС существует понятие тактовая сетка. Это метки времени, которые определяют моменты синхронизации (это моменты переключения тактовых сигналов). Используется одно- или многофазная синхронизация.

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

Испрользуются многофазные методы тактирования (как минимум 2 тактовых сигнала).


      1. О
        днофазная синхронизация – тактирование уровнем.




t1 – переключение в новое состояние выхода Q;

t2 – очередная задержка переключения в момент импульса;

t3 – время опережения информационного сигнала;

t4 – время удержания данных.

Синхронизация не позволяет последовательно каскадировать схемы.


М
ногофазная синхронизация предполагает наличие нескольких тактовых сигналов.
Каскады тактируются разными фазами. Когда тактирование фронтом – частота в 2-а раза выше. Существует возможность повысить (умножить) тактовую частоту.





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

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

Подходы:

  1. Каждое устройство имеет свою систему тактирования, но они синхронизированы друг относительно друга. Всегда есть ведущее и ведомое устройство. Частоты кратные.

  2. Погрешность соответствует одной фазе.

  3. Абсолютно независимые и требуют согласования.

Требуется разработка устройств сопряжения:

  1. Чисто аппаратные способы организации.

  2. Аппаратно-программные средства.

Для реализации служат интерфейсы.
24.04.01. Пример. «Контроллер динамической памяти».

Эта схема м.б. выполнена на основе сдвигового регистра, либо это автомат.


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

Это сдвиг-ый регистр.



Достоинства устр-во управл-я на основе автомата:

  1. Тактировать устройство можно от генератора более высокой частоты.

  2. Проектирование устр-ва начинается с разраб-ки графа состояний.

Можно получить временные диограммы, которые не привязаны к sysclk.

Варировать параметрами можно в рамках сетки clockA.

  1. Можно реализовать алгоритмы скрытой регенерации.


Очередь.

Два типа очередей:

Стеки используются в качестве схем согласования, как программно, так и аппаратно.

Стеки позволяют обеспечить обмен информацией (сетевые стековые протоколы).

Организация очереди м.б.:



Это линия задержки, а не совсем очередь, т.к. сигнал на выходе появится через некоторое время.

Очередь имеет состояния:

  1. пуста;

  2. имеет информацию;

  3. полностью загружена;

Возможные схемы реализации:

  1. RG



4-ре регистра, счетчики – дешифраторы для записи и чтения.

Очередь без начала и конца (на запись), чтение идет вдогонку за записью.



Поэтому требуется устройство для формирования слов переполнения.



Это устройство должно определить, есть очередь или нет.

По сути это реверсивный счетчик, если была запись кода, то счетчик = +1, если чтение то –1. Макс-ый код это длинна очереди. Следовательно будет либо 0, либо переполнение.

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

  1. Очередь может быть реализована с использованием блока памяти.



В простейших случаях запись в очередь или чтение из нее должны быть разнесены во времени. Здесь эту проблему можно разрешить.

В качестве Din и Dout – регистр хранения. Запись в очередь – запись во входной регистр. Чтение из нее – чтение из вых-го регистра.

Внутренняя схема управления обеспечивает запись из входного регистра в память и чтение из памяти в выходной регистр. Т.о. глубина очереди есть емкость ОЗУ и регистр.

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



Можно реализовать схему на регистрах или ОЗУ. На ОЗУ проще.

Учебный материал
© nashaucheba.ru
При копировании укажите ссылку.
обратиться к администрации