- •Вопросы к экзамену по дисциплине «программируемые цифровые устройства»
- •История появления микросхем программируемых цифровых устройств. Предшественники плис.
- •Микросхемы типа программируемая логическая матрица. Их основные параметры. Упрощенная схема.
- •Микросхемы типа программируемая матричная логика. Их основные параметры.
- •Функциональные разновидности плм и пмл.
- •Базовые матричные кристаллы. Их характеристики. Полузаказные и заказные ис.
- •Понятие эквивалентного вентиля цифровой схемы.
- •Базовая ячейка бмк.
- •Микросхемы типа «система на кристалле» (SoC).
- •Современные плис. Их разновидности, основные применения.
- •Программируемые цифровые устройства – микропроцессоры и плис. Их характерные особенности и отличия.
- •Память конфигурации плис, питание современных плис.
- •Сложные программируемые логические устройства. Обобщенная структура плис типа cpld.
- •Функциональные блоки плис типа cpld.
- •Программируемая матрица соединений плис типа cpld.
- •Матрица распределения термов плис типа cpld.
- •Макроячейка плис типа cpld.
- •Программируемые пользователем вентильные матрицы – плис типа fpga.
- •Функциональный блок плис типа fpga.
- •Блоки ввода-вывода плис типа fpga.
- •Система межсоединений плис типа fpga.
- •Плис с комбинированной архитектурой.
- •Современные направления развития плис.
- •Методы описания поведения цифровых схем. &&&
- •Язык описания схем vhdl, основные понятия.
- •Структура программы. Ход выполнения проекта на языке vhdl.
- •Ключевые слова и пользовательские идентификаторы языка vhdl.
- •Синтаксис объявления объекта на языке vhdl.
- •Состав архитектуры объекта на языке vhdl.
- •Типы данных языка vhdl – предопределенные и определяемые пользователем.
- •Скалярные и составные типы языка vhdl.
- •Скалярные типы языка vhdl. Атрибуты скалярных типов.
- •Физические типы языка vhdl. Атрибуты физических типов.
- •Преобразование скалярных типов языка vhdl.
- •Перечислимые типы языка vhdl.
- •Понятия базового типа и подтипа языка vhdl.
- •Составные типы. Массивы. Размерность массива.
- •Задание начальных значений массиву на языке vhdl. Ассоциирование.
- •Задание начальных значений массиву на языке vhdl. Агрегаты.
- •Атрибуты данных типа массив языка vhdl.
- •Массивы неограниченной длины на языке vhdl.
- •Предопределенные типы массивов языка vhdl. Битовые векторы и строки.
- •Операции над массивами на языке vhdl. Фрагменты массивов.
- •Записи, их описание, присвоение значений на языке vhdl.
- •Указательные типы данных языка vhdl.
- •Основные операторы языка vhdl.
- •Оператор условия языка vhdl. Пустой оператор.
- •Оператор case языка vhdl.
- •Циклы. Оператор Loop языка vhdl.
- •Циклы с условием. Оператор цикла while языка vhdl.
- •Операторы управления сбором информации о ходе моделирования языка vhdl.
- •Принцип событийного моделирования на языке vhdl.
- •Понятия сигнала, источника сигнала, временной диаграммы, порта на языке vhdl.
- •Атрибуты сигналов языка vhdl.
- •Различие между сигналами и переменными языка vhdl.
- •Разрешение неоднозначности установления сигнала на языке vhdl.
- •Процессы, их описание на языке vhdl. Список чувствительности.
- •Виды задержек и их описание на языке vhdl.
- •Оператор ожидания wait языка vhdl.
- •Компоненты. Декларация компонента на языке vhdl.
- •Структурное описание объекта моделирования на языке vhdl.
- •Описание переменных и констант на языке vhdl. Литералы.
- •Библиотеки, их описание на языке vhdl.
- •Пакеты, их описание на языке vhdl.
- •Оператор генерации generate языка vhdl.
- •Задание конфигурации компонентов на языке vhdl. Конфигурационная спецификация и конфигурационная декларация.
- •Задание конфигурации компонентов на языке vhdl. Правила связывания по умолчанию.
- •Описание переменных и констант на языке vhdl.
- •Последовательные операторы языка vhdl.
- •Синхронные и асинхронные процессы и их описание на языке vhdl.
- •Способы описания комбинационной логики на языке vhdl.
- •Описание триггерных схем на языке vhdl.
- •Описание регистровых схем на языке vhdl.
- •Вычисляемые сигналы языка vhdl.
- •История появления микросхем программируемых цифровых устройств. Предшественники плис.
- •Микросхемы типа программируемая логическая матрица. Их основные параметры. Упрощенная схема.
Задание начальных значений массиву на языке vhdl. Ассоциирование.
Начальные значения объектам типа массив могут задаваться тремя способами.
Прямое определение - начальные значения элементов могут задаваться списком, в котором первое значение соответствует первому элементу массива, а каждое последующее — последующему элементу.
Агрегатирование – агрегаты могут использоваться для задания значений нескольким переменным или сигналам одновременно. Это определение имеет следующий синтаксис:
(namel, name2,...,name_n)<=name_aggregate
Ассоциирование. Выполняется ассоциирование значения индекса со значением элемента, т. е. сопоставление элементу с указанным индексом заданного значения элемента. Это определение имеет следующий синтаксис: ({index_values=>element_value),...); где index_value — может представлять:
□ простое выражение;
□ интервал (в этом случае все элементы, индексы которых попадают в этот интервал, будут иметь одно и то же значение);
□ список значений индексов;
□ others (в этом случае все элементы, индексы которых не вошли ни в одно из предыдущих определений, будут иметь указанное значение), others должно быть последним в списке.
Если задается список значений индексов, то его элементы отделяются друг от друга вертикальной чертой.
Например:
type synbol is ( ‘а', 't', 'd', 'h', cr);
type state is range 0 to 2
type matrix is array (state, symbol) of state;
constant n_state:matrix:=(0=>( 'a'=>l, 'd'=> 2. others =>0),
l=>('a’|'h'=>2, others=>0),
2=>('a' to 'h"=>l, others=>2));
Задание начальных значений массиву на языке vhdl. Агрегаты.
Начальные значения объектам типа массив могут задаваться тремя способами:
Прямое определение - начальные значения элементов могут задаваться списком, в котором первое значение соответствует первому элементу массива, а каждое последующее — последующему элементу.
Ассоциирование. Выполняется ассоциирование значения индекса со значением элемента, т. е. сопоставление элементу с указанным индексом заданного значения элемента.
Агрегаты. Могут использоваться для задания значений нескольким переменным или сигналам одновременно. Это определение имеет следующий синтаксис:
(namel, name2.....name_n)<=name_aggregate
Например, пусть имеются четыре переменных типа bit и переменная типа bit_vector длины 4. Для того чтобы присвоить переменным значения элементов этого вектора, можно выполнить следующее действие: (z_flag, n_flag, v_flag, c_flag)<=flag_reg;
Атрибуты данных типа массив языка vhdl.
Язык VHDL поддерживает набор атрибутов, применимых к объектам типа массив и позволяющих получить информацию о типе. Для обращения к значениям этих атрибутов используется тот же синтаксис, что и для неструктурированных типов. Перечень атрибутов приведен ниже (А-имя типа массива или объекта массив)
А' left (N) - Левая граница массива по указанному измерению N
A' right (N) - Правая граница массива по указанному измерению N
A' low(N) - Нижняя граница массива по указанному измерению N
A'hight(N) - Верхняя граница массива по указанному измерению N
A'range(N) - Интервал индекса массива по указанному измерению N
A’reverse__range(N) - Интервал индекса массива по указанному измерению в обратном порядке
A'length(N) - Длина интервала индекса массива по указанному измерению N
Например:
type A is array( 1 to 4, 31 downto 0) оf boolean,
A'left(l)=l;
A’low(l)=l;
A'right(2)=0;
A'hight(2)=31;
A'range(l) is 1 to 4,
A'range(2) is 0 to 31;
A'length(1)=4; A'length(2)=32;
