Скачиваний:
196
Добавлен:
08.06.2016
Размер:
635.39 Кб
Скачать
    1. Управление логическим синтезом с помощью примитивов lcell & soft

Вы можете ограничить размер (масштаб) логического синтеза путем изменения переменных NODEнаSOFTиLCELLпримитивы.NODEпеременные иLCELLпримитивы обеспечивают наибольшее управление всем логическим синтезом.SOFTпримитивы не предусмотрены для управления всем логическим синтезом.

NODEпеременные, объявленные с помощью объявленияNodeв разделе Variable налагают несколько ограничений на логический синтез. Во время синтеза логический синтезатор заменяет каждый экземпляр переменнойNODEлогикой, которая представляет переменную. Затем он минимизирует логику для подгонки в одну логическую ячейку. Обычно этот метод дает самую большую скорость, но может приводить к слишком сложной логике.

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

LCELLпримитивы обеспечивают наибольшее управление. Логический синтезатор минимизирует всю логику, которая управляетLCELLпримитивом, так что она занимает только одну логическую ячейку.LCELLпримитивы всегда реализуются в логической ячейке и никогда не удаляются из проекту даже если они запитываются одним входом. В последнем случае Вы можете использоватьSOFTпримитив вместоLCELLпримитива, который будет удаляться во время логического синтеза.

MAX+PLUS II обеспечивает несколько логических опций, которые автоматически вставляют или удаляют SOFTиLCELLбуферы в соответствующих местах проекта.

Следующая иллюстрация демонстрирует два варианта TDF файла: один реализуется с помощью NODEпеременных, а другой сSOFTпримитивами. В nodevar переменная odd_parity объявлена какNODEи затем ей присвоено значение булева выражения d0 $ d1 $ ... $ d8. В softbuf компилятор замещает некоторыеSOFTпримитивы наLCELLпримитивы во время обработки для улучшения использования устройства.

TDF с NODE переменными: TDF с SOFT примитивами:

SUBDESIGN nodevar SUBDESIGN softbuf

( (

) )

VARIABLE VARIABLE

odd_parity : NODE; odd_parity : NODE;

BEGIN BEGIN

odd_parity = odd_parity =

d0 $ d1 $ d2$ SOFT(d0 $ d1 $ d2) $

d3 $ d4 $ d5$ SOFT(d3 $ d4 $ d5) $

d6 $ d7 $ d8; SOFT(d6 $ d7 $ d8);

END;END;

    1. Реализация комбинационной логики

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

      1. Реализация логических выражений и уравнений

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

Файл boole1.tdf, приведенный ниже, демонстрирует два простых булевых выражения, представляющие два логических вентиля.

SUBDESIGN boole1

(

a0, a1, b : INPUT;

out1, out2 : OUTPUT;

)

BEGIN

out1 = a1 & !a0;

out2 =out1 #b;

END;

В этом файле выход out1 является логическим И входов а1 и инверсии а0, а выход out2 логическим ИЛИ out1 и b. Порядок следования их в файле не важен.

Соседние файлы в папке Минина 2014
  • #
    08.06.2016338.77 Кб291113PV1.pdf
  • #
    08.06.2016635.39 Кб196ahdl.doc
  • #
    08.06.20167.32 Кб22Digital term.vi
  • #
    08.06.201651 б22L8.asv
  • #
    08.06.201645 б22L8.m
  • #
    08.06.201613.4 Кб24temp. analis.vi
  • #
    08.06.201616.62 Кб23temp. control.vi