Студопедия

КАТЕГОРИИ:

АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Язык конфигурирования программируемых логических схем Verilog.




Логические функции (1,2,3 выводные). Законы де Моргана.

Нульарные функции

При n = 0 количество булевых функций сводится к двум 220 = 21 = 2, первая из них тождественно равна 0, а вторая 1. Их называют булевыми константами — тождественный нуль и тождественная единица.
Таблица значений и названий нульарных булевых функций:

  Значение Обозначение Название
  0 F0,0 = 0 тождественный ноль
  1 F0,1 = 1 тождественная единица, тавтология

Унарные функции

При n = 1 число булевых функций равно 221 = 22 = 4. Определение этих функций содержится в следующей таблице.

x0=x 1 0 Обозначение Название
0 0 0 F1,0 = 0 тождественный ноль
1 0 1 F1,1 = x = x = x' = NOT(x) отрицание, логическое "НЕТ", "НЕ", "НИ", инвертор, SWAP (обмен)
2 1 0 F1,2 = x тождественная функция, логическое "ДА", повторитель
3 1 1 F1,3 = 1 тождественная единица, тавтология

Бинарные функции

При n = 2 число булевых функций равно 222 = 24 = 16.

x1=x 1 1 0 0    
x0=y 1 0 1 0 Обозначение Название
0 0 0 0 0 F2,0 = 0 тождественный ноль, детектор 0
1 0 0 0 1 F2,1 = xy = x NOR y = NOR(x,y) = x НЕ-ИЛИ y= НЕ-ИЛИ(x,y) стрелка Пи́рса, НЕ-ИЛИ, 2ИЛИ-НЕ, антидизъюнкция, функция Да́ггера, функция Ве́бба, детектор 1
2 0 0 1 0 F2,2 = xy = x < y = x LT y = LT(x,y) инверсия обратной импликации, меньше, детектор 2
3 0 0 1 1 F2,3 = x = x' = x = NOT1(x,y) = НЕ1(x,y) отрицание (негация, инверсия) первого операнда
4 0 1 0 0 F2,4 = xy = x > y = x GT y = GT(x,y) инверсия прямой импликации, больше, детектор 4
5 0 1 0 1 F2,5 = y = y' = y = NOT2(x,y) = НЕ2(x,y) отрицание (негация, инверсия) второго операнда
6 0 1 1 0 F2,6 = xy = x XOR y = XOR(x,y) = x >< y = x<> y = x NE y = NE(x,y) сложение по модулю 2, исключающее «или», сумма Жегалкина[5], не равно
7 0 1 1 1 F2,7 = x | y = x NAND y = NAND(x,y) = x НЕ-И y = НЕ-И(x,y) штрих Ше́ффера, НЕ-И, 2И-НЕ, антиконъюнкция, пунктир Чулкова
8 1 0 0 0 F2,8 = xy = x · y = xy = x & y = x AND y = AND(x,y) = x И y = И(x,y) = min(x,y) конъюнкция, 2И, минимум, детектор 8
9 1 0 0 1 F2,9 = (xy) = x ~ y = xy = x EQV y = EQV(x,y) эквивалентность, равенство
10 1 0 1 0 F2,10 = YES2(x,y) = ДА2(x,y) = y второй операнд
11 1 0 1 1 F2,11 = xy = xy = xy = x LE y = LE(x,y) прямая (материальная) импликация (от первого аргумента ко второму), меньше или равно
12 1 1 0 0 F2,12 = YES1(x,y) = ДА1(x,y) = x первый операнд
13 1 1 0 1 F2,13 = xy = xy = xy = x GE y = GE(x,y) обратная импликация (от второго аргумента к первому), больше или равно
14 1 1 1 0 F2,14 = xy = x + y = x OR y = OR(x,y) = x ИЛИy = ИЛИ(x,y) = max(x,y) дизъюнкция, 2ИЛИ, максимум
15 1 1 1 1 F2,15 = 1 тождественная единица, тавтология

Законы де Мо́ргана (правила де Мо́ргана) — логические правила, связывающие пары дуальных логических операцийпри помощи логического отрицания. Открыты шотландским математиком Огастесом де Морганом.

Минимизация функций алгебры логики (ФАЛ). Разложение ФАЛ в различных базисах.

 

 

Язык конфигурирования программируемых логических схем Verilog.

Verilog, Verilog HDL (англ. Verilog Hardware Description Language) — это язык описания аппаратуры, используемый дляописания и моделирования электронных систем. Разработчики Verilog сделали его синтаксис очень похожим на синтаксис языка C, что упрощает его освоение. Verilog имеет препроцессор, очень похожий на препроцессор языка C, и основные управляющие конструкции «if», «while» также подобны одноимённым конструкциям языка C. Соглашения по форматированию вывода также очень похожи (см. printf).Следует отметить, что описание аппаратуры, написанное на языке Verilog (как и на других HDL-языках) принято называть программами, но в отличие от общепринятого понятия программы как последовательности инструкций, здесь программа задает структуру системы. Так же для языка Verilog не применим термин "выполнение программы".

Обзор:Существует подмножество инструкций языка Verilog, называемое синтезируемым. Модули, которые написаны на этом подмножестве, называют RTL (англ. register transfer level — Уровень регистровых передач). Они могут быть физически реализованы с использованием САПР синтеза. Данные САПР по определенным алгоритмам преобразуют абстрактный исходный код на Verilog в netlist — логически эквивалентное описание, состоящее из элементарных логических примитивов (например, AND, OR, NOT, триггеры), которые доступны в выбранной технологии производства СБИС или программирования БМК и ПЛИС. Дальнейшая обработка netlist в конечном итоге порождает фотошаблоны для литографии или прошивку для FPGA.

Создание

Verilog-95. Во время увеличивающейся популярности языка VHDL, Cadence приняла решение добиться стандартизации языка. Cadence передала Verilog в общественное достояние. Verilog был послан в IEEE и принят как стандарт IEEE 1364—1995 (часто называемый Verilog-95).

Verilog 2001. Дополнения к языку Verilog-95 были приняты как IEEE 1364—2001 (или Verilog-2001).Verilog-2001 является значительно обновленным по сравнению с Verilog-95. Во-первых, он добавил поддержку знаковых переменных (в формате дополнительного кода). Прежде авторам кода приходилось реализовывать знаковые операции с использованием большого количества битовых логических операций. Та же функциональность на Verilog-2001 описывается встроенными операторами языка: +, -, /, *, >>> Был улучшен файловый ввод-вывод. Для улучшения читаемости кодов был немного изменен синтаксис, например always @*, переопределение именованных параметров, объявление заголовков функций, задач и модулей в стиле Си.Verilog-2001 является самым часто используемым диалектом языка и поддерживается в большинстве коммерческих САПР для электроники (см. EDA).

Verilog 2005. Verilog 2005 (стандарт IEEE 1364—2005) добавил небольшие исправления, уточнения спецификаций и несколько новых синтаксических конструкций, например, ключевое слово uwire.Отдельная от стандарта часть, Verilog-AMS, позволяет моделировать аналоговые и аналого-цифровые устройства.

 

 










Последнее изменение этой страницы: 2018-04-12; просмотров: 814.

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