Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ПЛИС_Ответы_к_экзамену_8110.doc
Скачиваний:
16
Добавлен:
24.04.2019
Размер:
2.35 Mб
Скачать

Вопрос 10 - Структурная схема логического блока и логического элемента плис семейства flex10k. Назначение элементов структурной схемы.

Структура логического блока:

  • ЛПМС – локальная программируемая матрица соединений;

  • ЛЭ – логический элемент;

  • ГПМС – глобальная программируемая матрица соединений;

  • УС – управляющие сигналы;

Структура логического элемента:

Вопрос 11 - Репрограммируемый модуль памяти ПЛИС семейства FLEX10K. Использование параметризированной мегафункции lpm_rom для проектирования синхронного и асинхронного постоянного запоминающего устройства.

Параметризированная мегафункция lpm_rom:

FUNCTION lpm_rom (

address[LPM_WIDTHAD-1..0], -- адресная шина; обязателен

inclock, -- тактовые импульсы входных регистров; необязателен

outclock, -- тактовые импульсы выходного регистра данных; необязателен

memenab -- разрешение выхода (memenab=1: выход разрешен;необязателен

) -- memenab=0: Z-состояние выхода)

WITH ( --Жирным шрифтом выделены параметры по-умолчанию

LPM_WIDTH, -- число разрядов шины данных; integer, обязателен

LPM_WIDTHAD, --число разрядов шины адреса; integer, обязателен

LPM_NUMWORDS, --число ячеек памяти; integer, необязателен

LPM_FILE, -- имя файла инициализации памяти; string обязателен

LPM_ADDRESS_CONTROL, --конфигурация порта адреса; string необязателен

--значения: "REGISTERED", "UNREGISTERED", и "UNUSED"

LPM_OUTDATA -- конфигурация порта данных; string необязателен

--значения: "REGISTERED", "UNREGISTERED", и "UNUSED"

)

RETURNS (q[LPM_WIDTH-1..0]); --выход модуля lpm_rom

INCLUDE "lpm_rom.inc";

SUBDESIGN rom8

(

addr[3..0], memenab : INPUT;

data[7..0] : OUTPUT;

)

BEGIN

data[] = lpm_rom(addr[], , , memenab)

WITH (

LPM_WIDTH= 8,

LPM_WIDTHAD= 4,

--LPM_NUMWORDS

LPM_FILE= "rom8.mif“,

LPM_ADDRESS_CONTROL = "UNREGISTERED",

LPM_OUTDATA = "UNREGISTERED"

);

END;

Вопрос 12 - Организация процесса обработки информации. Основные характеристики последовательного и потокового (конвейерного) стилей обработки.

Вопрос 13 - Трехстабильный порт. Назначение, область применения. Использование примитивы tri для проектирования трехстабильного порта.

FUNCTION TRI (in, oe)

RETURNS (out);

Примитивы TRI, которые управляют портами OUTPUT или BIDIR, имеют вход разрешения выхода (Output Enable), который переводит выход в высокоимпедансное состояние.

Вы можете создать тристабильную шину путем соединения примитивов TRI и портов OUTPUT или BIDIR вместе с помощью узла TRI_STATE_NODE типа. Схема управления должна обеспечивать разрешение не более одного выхода в одно и тоже время.

Файл tri_bus.tdf, приведенный ниже, реализует тристабильную шину, используя узел TRI_STATE_NODE типа, созданный в объявлении Node.

SUBDESIGN tri_bus

(

in[3..1], oe[3..1] : INPUT;

out1 : OUTPUT;

)

VARIABLE

tnode : TRI_STATE_NODE;

BEGIN

tnode = TRI(in1, oe1);

tnode = TRI(in2, oe2);

tnode = TRI(in3, oe3);

out1 = tnode;

END;

В этом примере несколько присваиваний узлу tnode, связывают сигналы вместе. Для реализации тристабильной шины требуется тип TRI_STATE_NODE, вместо типа NODE: для типа NODE сигналы связываются вместе с помощью проводного И или проводного ИЛИ, тогда как для типа TRI_STATE_NODE сигналы соединяются с тем же самым узлом. Однако, если только одна переменная присваивается узлу TRI_STATE_NODE, то она трактуется как переменная обычного типа NODE.