- •Методические указания
- •«Автоматизация проектирования микропроцессорных систем»
- •Введение
- •1 Вопросы для самостоятельной подготовки
- •Webpack ise - средство проектирования цифровых устройств
- •2.1 Начало работы с системой
- •1 Инструментальная панель («Toolbar»): 2 окно описания проекта («Source window»): 3 окно процессов («Process window»): 4 рабочий стол (« Workspace»): о окно отчётов («Transcript window»)
- •2.2 Создание нового проекта
- •2.3 Создание описания устройства
- •2.4 Тестовые модули и функциональное моделирование
- •2.5 Использование временных ограничений
- •2.6 Реализация устройства на базе плис
- •2.7 Переразмещение проекта и проверка соответствия выводов
- •2.8 Проверка проекта способом временного моделирования
- •Убедиться, что в выпадающем списке выбран пункт «Automatically connect to a cable and identify Boundary-Scan chain».
- •3 Цифровая схемотехника в системах на кристалле
- •Особенности реализации устройств с памятью
- •Особенности реализации подсистем реального времени
- •Проектирование простейших схем омбинационной логики
- •Порядок выполнения работы
- •Содержание отчёта
- •Контрольные вопросы
- •Проектирование устройства по заданной передаточной функции
- •Порядок выполнения работы
- •Содержание отчёта
- •Контрольные вопросы
- •Проектирование подсистемы реального времени
- •Порядок выполнения работы
- •Содержание отчёта
- •Контрольные вопросы
- •Проектирование контроллера последовательного порта
- •Порядок выполнения работы
- •Содержание отчёта
- •Контрольные вопросы
- •Проектирование арифметико-логического устройства
- •Содержание отчёта
- •Контрольные вопросы
- •Проектирование подсистемы памяти
- •Порядок выполнения работы
- •Содержание отчёта
- •Контрольные вопросы
Особенности реализации подсистем реального времени
Подсистемы реального времени в цифровых устройствах строятся на базе счётчиков и делителей частоты. Счётчики содержат в своём соста-
37
ве счётный регистр, хранящий состояние счётчика. По фронту тактовой частоты значение регистра увеличивается (инкрементный счётчик) или уменьшается (декрементный счётчик), причём в соответствии с отдельно задаваемым условием регистр может быть переведён в некоторое начальное состояние. Введение несложных дополнений превращает счётчик в делитель частоты.
Поскольку счётчик создаётся путём каскадного соединения триггеров, он в общем случае может иметь те же вспомогательные сигналы управления: вход разрешения счета, синхронного и асинхронного сброса или установки. Специфическим для счётчика является вход направления счета (инкремент или декремент). Кроме того, отдельные разряды счётчика могут устанавливаться независимо, что в конечном итоге может рассматриваться как начальная загрузка - запись в счётчик некоторой константы.
Пример простейшего счётчика с изменяющимся направлением счета приведён в разделе 2. Дополнительные управляющие входы могут быть реализованы в виде дополнительных условий с использованием конструкции IF.
Делитель частоты вместо многоразрядного выхода имеет единственный выход (обозначим его как q). Таким образом, выход счётчика преобразуется во внутренний сигнал, который можно объявить после ключевого слова architecture.
Для реализации делителя необходимо задать коэффициент деления частоты. Далее можно представить, что при делении на N счётчик состояний должен последовательно принимать значения от 0 до N — 1 и опять перейти к нулевому состоянию. В момент достижения максимального значения может быть сформирован выходной сигнал, который будет появляться в N раз реже, чем фронт тактового сигнала.
Ниже приведено ДОЬ-описание делителя частоты с коэффициентом деления 5:
process (elk) begin
if elk’event and elk = ’1’ then
st <= conv_std_logic_vector(0, 3);
else
st <= st + 1;
end if;
q <= ’1’ when conv_integer(st) = 4 else ’O’;
В приведённом примере увеличение значения счётчика производится только в том случае, если оно ещё не достигло четырёх. В противном случае переменной st присваивается нулевое значение и цикл счета повторяется. Проверка равенства st четырём производится вне блока process, поскольку выходной сигнал в данном случае формируется асинхронно.
Модифицируя условие формирования логической единицы на выходе, можно получить, например, делители с различной скважностью выходного сигнала (в приведённом примере логическая единица действует в течение только одного такта из пяти), а также сформировать дополнительные условия деления, продолжения счета и т. п.
Лабораторная работа №1
Проектирование простейших схем омбинационной логики
Цель работы. Изучить принципы работы с САПР Xilinx WebPACK и получить практические навыки проектирования простейших комбинационных схем на базе ПЛИС.
Порядок выполнения работы
Ознакомиться с требованиями методических указаний по выполнению лабораторной работы.
Изучить принципы работы в САПР Xilinx WebPACK и принципы разработки цифровых устройств на базе ПЛИС с архитектурой FPGA.
Согласно индивидуальному заданию составить таблицу истинности для набора функций, заданных преподавателем.
Сделать описание цифрового устройства в соответствии с индивидуальным заданием в схемотехническом редакторе и в виде HDL-описания.
Создать набор тестовых воздействий и проверить правильность работы обеих реализаций проектируемого устройства.
Сравнить RTL- и технологическое описание синтезированного устройства.
Выполнить размещение устройства на кристалле.
Сделать оценку потребляемой устройством мощности.
Сделать заключение по лабораторной работе.
