МІНІСТЕРСТВО ОСВІТИ І НАУКИ, МОЛОДІ ТА СПОРТУ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА”
ВИВЧЕННЯ ОСНОВНИХ ПРИНЦИПІВ РОБОТИ
В СЕРЕДОВИЩІ СИСТЕМНОГО РЕДАКТОРА
САПР ПЛІС ALDEC RIVIERA 2004
МЕТОДИЧНІ ВКАЗІВКИ
до лабораторної роботи № 1
з курсу «Комп’ютерні методи аналізу та проектування електронних засобів»
для студентів спеціальностей:
8.17010201 “Системи технічного захисту інформації, автоматизація її обробки”, 8.17010302 “Адміністративний менеджмент у сфері захисту інформації”, 8.17010301 “Управління інформаційною безпекою”, 7.17010201 “Системи технічного захисту інформації, автоматизація її обробки”, 7.17010302 “Адміністративний менеджмент у сфері захисту інформації”.
Затверджено
на засiданнi кафедри
“Захист інформації”
Протокол № ___ від __ ________ 2012 р.
м. Львів 2012
Вивчення основних принципів роботи в середовищі системного редактора САПР ПЛІС Aldec Riviera 2004. Інструкція до лабораторної роботи № 1 з курсу “ Комп’ютерні методи аналізу та проектування електронних засобів.” для студентів спеціальностей 8.17010201 “Системи технічного захисту інформації, автоматизація її обробки”, 8.17010302 “Адміністративний менеджмент у сфері захисту інформації”, 8.17010301 “Управління інформаційною безпекою”, 7.17010201 “Системи технічного захисту інформації, автоматизація її обробки”, 7.17010302 “Адміністративний менеджмент у сфері захисту інформації” / Укл.: Горпенюк А.Я., Луковський Т.І., Будз Б.Д. – Львів: НУЛП, 2012.- 10 с.
Укладачі: к.т.н, доцент, Горпенюк Андрій Ярославович,
к.т.н., зав. лаб. Луковський Тарас Ігорович,
асистент Будз Богдан Дмитрович.
Відповідальний за випуск: д.т.н., доцент Пархуць Любомир Теодорович.
Рецензенти: к.т.н., доц. Гаранюк Петро Ігорович,
к.т.н., доц. Совин Ярослав Романович.
Мета роботи: - набуття основних навиків написання програм опису електронних вузлів і блоків на мові VHDL та їх функціонального моделювання засобами САПР Aldec Riviera 2004.
1. ОСНОВНІ ВІДОМОСТІ(
1.1. Коротка характеристика мови VHDL.
VHDL є абревіатурою від Very high speed integrated circuits Hardware Description Language, яку можна перекласти як мова опису пристроїв на надвеликих інтегральних схемах (НВІС). Спонсором розроблення цієї мови в середині 1980-х років було Міністерство оборони США і ІЕЕЕ. Метою розробки було отримання простого у використанні засобу проектування і моделювання логічних схем для всіх етапів розроблення електронних систем, починаючи від модулів мікросхем і завершуючи великими обчислювальними системами. На даний час діє стандарт VHDL, який описаний в документі ІЕЕЕ 1076-202 що є промисловим стандартом, який широко використовується для опису роботи цифрових систем.
Незважаючи на те, що мова VHDL нагадує інші мови програмування, вона володіє рядом важливих відмінностей, а саме:
- проекти цифрових пристроїв (ЦП), створені за допомогою мови VHDL, мають, як правило, ієрархічну структуру;
- специфікації модулів VHDL-проектів можуть використовувати або математичні алгоритми, які описують їх роботу, або опис апаратної структури. В залежності від цього, опис модуля може мати поведінкову або структурну форму;
- моделювання алгоритму роботи проекту базується на подієвому принципі управління;
- VHDL-проект дозволяє виконувати моделювання протікання паралельних процесів в електричних схемах, часовий аналіз сигналів і їх параметрів;
- VHDL підтримується інструментальними засобами синтезу і системами автоматизованого проектування (САПР) багатьох виробників програмного забезпечення, які можуть створювати прямо з опису VHDL-проекту його апаратну реалізацію;
- використовуючи VHDL можна проектувати, моделювати і синтезувати практично будь-який ЦП, від простої комбінаційної схеми до завершеної мікропроцесорної системи на НВІС.
1.2. Етапи проектування з використанням VHDL.
В більшості випадків апаратна реалізація проекту ЦП з використанням VHDL відбувається згідно наступних етапів:
Розроблення ієрархічної блок-схеми проекту. Вияснення базового конструктивно-технологічного методу і стандартних блоків на рівні структурної схеми. Оскільки великі логічні проекти є, як правило, ієрархічними, використання VHDL дозволяє легко розбити проект на модулі (субпроекти) і визначити їх інтерфейси.
Програмування. Запис VHDL-коду для модулів і їх інтерфейсів.
Компіляція. Аналіз програмного коду VHDL-проекту для виявлення синтаксичних помилок, а також перевірка його сумісності з іншими модулями. Під час компіляції також збирається внутрішня інформація про структуру проекту, яка необхідна для моделювання роботи ЦП, що проектується.
Моделювання. Визначення і застосування вхідних дій до відкомпільованого коду проекту і спостереження за вихідною реакцією. Моделювання може виконуватись як в формі функціонального контролю, тобто перевірка логіки роботи проекту без врахування часових співвідношень і затримок розповсюдження сигналу на логічних елементах, так і в якості одного з етапів верифікації завершеного проекту.
Синтез. Перетворення VHDL-опису в набір примітивів або логічних елементів, які можуть бути реалізовані з врахуванням конкретної технології.
Компоновка, монтаж і розводка. Відображення проекту на карті синтезуючих елементів, які містяться в НВІС.
Часовий аналіз. Отримання фактичних затримок реалізованої НВІС цифрової схеми проекту з врахуванням довжини з’єднань, електричних навантажень і інших відомих факторів.
1.3. Програмовані логічні інтегральні схеми.
Програмовані логічні інтегральні схеми (ПЛІС) з’явились півтора десятиліття тому як альтернатива програмованим логічним матрицям (ПЛМ). ПЛІС відрізняються від останніх як за архітектурою, так і за технологією виготовлення.
ПЛМ є матрицею багатовходових (більше десятка входів) логічних елементів з тригерами, в яких програмуються конституенти одиниць (мінтерми) диз’юнктивних нормальних форм функцій цих елементів. В перших ПЛМ програмування виконувалось перепалюванням перемичок між джерелами сигналів змінних і входами логічних елементів. Великі ПЛМ (CPLD) відрізняються лише тим, що декілька ПЛМ зібрані на одному кристалі і об’єднані програмуючим полем зв’язків.
ПЛІС є матрицею маловходових (від двох до п’яти) логічних елементів, тригерів, відрізків ліній зв’язку, які з’єднуються перемичками з польових транзисторів. Судячи з англійської назви – Field Programmable Gate Array (FPGA), ПЛІС програмуються зміною рівня електричного поля в затворах цих транзисторів. Затвори всіх «програмуючих» польових транзисторів підключені до виходів тригерів одного довгого регістра зсуву, який заповнюється при програмуванні ПЛІС. Деякі з ділянок цього регістру можуть також виконувати роль комірок ПЗП.
Прошивка зазвичай зберігається в ПЗП, який стоїть поруч з ПЛІС. Після ввімкнення живлення або за сигналом скиду вона автоматично переписується в програмуючий регістр зсуву ПЛІС. Так як основу ПЛІС складають тригери, які зберігають прошивку, яку називають конфігурацією, то ПЛІС виготовляється за технологією мікросхем статичного ОЗП.
В порівнянні з CLPD, ПЛІС виграють, по-перше, в необмеженій кількості перепрограмувань, по-друге, в логічній ємності, зокрема в питомій ємності вентилів на одиницю валюти, по-третє, в малому енергоживленню. Як правило, ПЛІС мають на два-три порядки більшу ємність в числі еквівалентних логічних вентилів, ніж CPLD, а також як статичний ОЗП, практично не споживають енергії при відсутності переключень. Оскільки топологія ПЛІС регулярна і масштабуюча, період розроблення і впровадження ПЛІС нових серій порівняно малий, і він виконується на найсучаснішій технології. Також, в ПЛІС на порядок вища надійність, ніж у CPLD.
2. ОПИС ПРОГРАМИ САПР Aldec Riviera 2004.
САПР Aldec Riviera 2004 завантажується за допомогою подвійного натискання кнопкою миші піктограми Riviera 2004.04 на Робочому столі комп’ютера або через системне меню Windows: Start → Programs → Aldec → Riviera. На моніторі з’явиться вікно, зображене на рис. 1.
Рис. 1. Загальний вигляд САПР Aldec Riviera 2004
Наступним кроком є створення нового VHDL проекту. Для цього необхідно вибрати команду File → New → VHDL Sourse (рис. 2.). При цьому відкривається текстове вікно, в якому вводять текст програми мовою VHDL. Перед введенням тексту необхідно створити або вибрати робочий каталог, в який записуватиметься інформація яка стосується даного проекту. Зробити це можна за допомогою команди File → Change Directory … . Слід пам’ятати що кожен проект потрібно розміщувати в новому каталозі. Після цього до проекту потрібно додати робочу бібліотеку (якщо робочої бібліотеки немає) в якій будуть зберігатись структурні програмні блоки. Для цього необхідно вибрати команду Library → Create Library … , а у вікні що відкрилось необхідно вказати назву бібліотеки (не змінюючи інші поля), і натиснути кнопку OK. Після цього можна почати вводити текст програми на мові VHDL.
Після завершення введення тексту, для виявлення можливих помилок, програму необхідно скомпілювати. Робиться це за допомогою команди Compilation → Compile. Якщо після компіляції помилок не виявлено, можна переходити до моделювання описаного вузла чи блоку на мові VHDL. Для цього необхідно ініціалізувати моделювання за допомогою команди Simulation → Initialize Simulation … . У вікні що відкривається потрібно вибрати робочу бібліотеку проекту (за замовчуванням вона вибирається автоматично), а також об’єкт для моделювання і натиснути кнопку OK. Для запуску редактора часових діаграм, необхідно клікнути на іконку (Waveform) (рис. 3). Для того щоб додати сигнали для перегляду потрібно за допомогою команди View → Structure Browser запустити браузер структури проекту і перетягнути вказівником миші сигнали які необхідні для відображення у вікно редактора часових діаграм.
Для того щоб задати початкові значення для вхідних сигналів, необхідно в браузері структури проекту клікнути правою клавішею миші по потрібному вхідному сигналові, і в контекстному меню яке з’явиться, вибрати Simulators … . При цьому з’явиться вікно задання значень сигналів (рис. 4), в якому можна вибрати необхідний тип сигналу, задати його параметри. Якщо все задано вірно, потрібно натиснути кнопки Apply та Close.
Для отримання часових діаграм необхідно скористатись наступними кнопками, які доступні на панелі інструментів редактора часових діаграм (рис. 5):
- Run. Ця кнопка запускає процес моделювання доки його не зупинить кнопка Stop Simulation.
- Run Until. Ця кнопка здійснює моделювання до часу, вказаного у вікні кроку моделювання.
- Run For. Ця кнопка здійснює моделювання до часу, вказаного у вікні кроку часу на панелі моделювання.
- Restart Simulation. Ця кнопка дозволяє повторити моделювання заново.
- Stop Simulation. Ця кнопка зупиняє процес моделювання.
Для зручного перегляду часової діаграми, на панелі перегляду часових діаграм доступні наступні кнопки:
- Zoom In (Ctrl++). Ця кнопка збільшує часове вікно в два рази.
- Zoom Out (Ctrl--). Ця кнопка зменшує часове вікно в два рази.
- Zoom To Fit. Ця кнопка розгортає часову діаграму по всій видимій області редактора часових діаграм.
- Zoom Range. Ця кнопка дозволяє показати часову діаграму на проміжку, вказаному у вікні діапазону відображення.
3. ЗАВДАННЯ
1. Ознайомитись з основними відомостями проектування і моделювання вузлів та блоків в середовищі САПР Aldec Riviera 2004 на мові VHDL.
2. Намалювати схему і скласти таблицю істинності для логічного елементу AND з двома входами.
2. Набрати в програмному редакторі програму, написану на мові VHDL, яка моделює роботу логічного елементу AND і відкомпілювати її.
library IEEE, std;
use IEEE.std_logic_1164.all,std.all;
entity my is
port(x1,x2:in std_logic; y:out std_logic:='0');
end entity;
architecture one of my is
begin
p:process(x1,x2)
begin
y <=x1 and x2;
end process;
end architecture one;
4. Промоделювати роботу даного пристрою в редакторі часових діаграм і замалювати часові діаграми.
4. ЗМІСТ ЗВІТУ
1. Назва і мета роботи.
2. Теоретичні відомості, необхідні для написання програми на мові VHDL які описують роботу розробленого блоку чи вузла (рівняння, структурні схеми, тощо.), згідно із завдання лабораторної роботи або вимог викладача.
3. Програма на мові VHDL, яка описує роботу розробленого блоку чи вузла.
4. Часові діаграми роботи пристрою.
5. Короткі висновки за результатами роботи.
Зразок оформлення звіту наведено в додатку 1.
Додаток 1
МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА»
ІКТА
кафедра ЗІ
З В І Т
до лабораторної роботи №1
з курсу: «Комп’ютерні методи аналізу та проектування електронних засобів»
на тему: «Вивчення основних принципів роботи в середовищі системного редактора САПР ПЛІС ALDEC RIVIERA 2004»
Варіант № 36
Виконав: ст. гр. СЗД-11
Коваль А.В.
Прийняв: Будз Б.Д.
Львів 2012
ЗАВДАННЯ
Ознайомитись з основними відомостями проектування і моделювання вузлів та блоків в середовищі САПР Aldec Riviera 2004 на мові VHDL. Намалювати схему і скласти таблицю істинності для логічного елементу OR з двома входами.
ТЕОРЕТИЧНІ ВІДОМОСТІ
- схема логічного елементу OR (y=x1+x2).
- таблиця істиностей логічного елемента OR.
ПРОГРАМА
library IEEE, std;
use IEEE.std_logic_1164.all,std.all;
entity my is
port(x1,x2:in std_logic; y:out std_logic:='0');
end entity;
architecture one of my is
begin
p:process(x1,x2)
begin
y <=x1 or x2;
end process;
end architecture one;
ЧАСОВІ ДІАГРАМИ
ВИСНОВКИ
В даній лабораторній роботі, на прикладі VHDL-програми для моделювання роботи логічного елементу OR я ознайомився з основними відомостями проектування і моделювання вузлів та блоків в середовищі САПР Aldec Riviera 2004.
Навчальне видання
ВИВЧЕННЯ ОСНОВНИХ ПРИНЦИПІВ РОБОТИ
В СЕРЕДОВИЩІ СИСТЕМНОГО РЕДАКТОРА
САПР ПЛІС ALDEC RIVIERA 2004
ІНСТРУКЦІЯ ДО ЛАБОРАТОРНОЇ РОБОТИ № 1
З КУРСУ “ КОМП’ЮТЕРНІ МЕТОДИ АНАЛІЗУ ТА ПРОЕКТУВАННЯ ЕЛЕКТРОННИХ ЗАСОБІВ”
для студентів спеціальностей:
8.17010201 “Системи технічного захисту інформації, автоматизація її обробки”, 8.17010302 “Адміністративний менеджмент у сфері захисту інформації”, 8.17010301 “Управління інформаційною безпекою”, 7.17010201 “Системи технічного захисту інформації, автоматизація її обробки”, 7.17010302 “Адміністративний менеджмент у сфері захисту інформації”.
Укладачі: к.т.н, доцент, Горпенюк Андрій Ярославович,
к.т.н., зав. лаб. Луковський Тарас Ігорович,
асистент Будз Богдан Дмитрович.