МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА”
АРХІТЕКТУРА ПРОЕКТУ НА МОВІ VHDL В ПОВЕДІНКОВІЙ ФОРМІ.
СИНТЕЗ КОМБІНАЦІЙНИХ СХЕМ З ОДНИМ ВИХОДОМ.
МЕТОДИЧНІ ВКАЗІВКИ
до лабораторної роботи № 2
з курсу «Комп’ютерні методи аналізу та проектування електронних засобів»
для студентів спеціальностей:
7.160102 “Захист інформації з обмеженим доступом та автоматизація її обробки”, 7.160103 “Системи захисту від несанкціонованого доступу”, 7.160104 “Адміністративний менеджмент в сфері захисту інформації з обмеженим доступом”, 7.160105“Захист інформації і комп'ютерних системах і мережах”, 8.160102 “Захист інформації з обмеженим доступом та автоматизація її обробки”, 8.160103 “ Системи захисту від несанкціонованого доступу”, 8.160104 “Адміністративний менеджмент в сфері захисту інформації з обмеженим доступом”, 8.160105“Захист інформації і комп'ютерних системах і мережах”.
Затверджено
на засiданнi кафедри
“Захист інформації”
Протокол № ___ від __ ________ 2010 р.
Львів 2010
Архітектура проекту на мові VHDL в поведінковій формі. Синтез комбінаційних схем з одним виходом. Інструкція до лабораторної роботи № 2 з курсу “ Комп’ютерні методи аналізу та проектування електронних засобів.” для студентів спеціальностей 7.160102 “Захист інформації з обмеженим доступом та автоматизація її обробки”, 7.160103 “Системи захисту від несанкціонованого доступу”, 7.160104 “Адміністративний менеджмент в сфері захисту інформації з обмеженим доступом”, 7.160105“Захист інформації і комп'ютерних системах і мережах”, 8.160102 “Захист інформації з обмеженим доступом та автоматизація її обробки”, 8.160103 “ Системи захисту від несанкціонованого доступу”, 8.160104 “Адміністративний менеджмент в сфері захисту інформації з обмеженим доступом”, 8.160105“Захист інформації і комп'ютерних системах і мережах” / Укл.: Горпенюк А.Я., Будз Б.Д. – Львів: НУЛП, 2010.- 14 с.
Укладачі: Горпенюк А.Я., к.т.н, доцент,
Будз Б.Д., асистент
Мета роботи: - Ознайомитись з представленням проекту на мові VHDL. Реалізація комбінаційної логічної схеми з одним виходом в поведінковій формі проекту на мові VHDL.
1. ОСНОВНІ ВІДОМОСТІ
Логічний елемент - це електронний пристрій, який реалізує певну логічну (перемикальну) функцію. Сукупність логічних елементів і зв’язків між ними, призначену для перетворення двійкових змінних, називають логічною схемою. Логічні схеми поділяють на послідовнісні і комбінаційні.
Комбінаційною називають схему, m вихідних сигналів якої в кожний момент часу повністю визначаються сукупністю n її вхідних сигналів в цей самий момент часу. Тобто вихідні сигнали комбінаційної схеми в даний момент часу не залежать від вхідних сигналів, які діяли в попередні моменти часу (схема не має пам’яті). Кажуть, що така схема має один стан.
Поведінка комбінаційної схеми описується системою логічних функцій. Виділяють задачі аналізу та синтезу комбінаційних схем.
Задача аналізу комбінаційної схеми полягає в знаходженні системи логічних функцій, що відображають логіку роботи такої схеми. В процесі аналізу з схеми вилучають елементи, що не впливають на логіку її роботи (формувачі, елементи узгодження і т.д.), після чого визначають згадану систему логічних функцій.
Задача синтезу є оберненою до задачі аналізу.
1.1. Базова структура VHDL файлу.
Проект будь-якого цифрового пристрою (ЦП) – це програма, яка містить ключові і зарезервовані слова. Ці слова не можуть бути використані як імена сигналів або як ідентифікатори. В мові VHDL ключові слова, зарезервовані слова і користувацькі ідентифікатори не є чутливими до регістру.
Рядки з коментарями починаються з двох дефісів підряд (--) і при компіляції програми ігноруються так само, як символи кінця рядка і пробіли.
VHDL – є строго типізована мова. Це означає, що всі програмні елементи даних (константа, змінна, сигнал) повинні бути явно оголошені з обов’язковим визначенням типу елементу. Тип, вказаний в оголошенні програмного елементу даних, визначає інформаційні характеристики цього елементу, діапазон допустимих числових значень, які може приймати цей програмний елемент, а також операції, які можуть над ним виконуватись. Крім того в мові VHDL не допускаються операції над різнотипними елементами без попереднього перетворення типів.
В мові VHDL із ключових, зарезервованих слів і інших лексичних елементів будуються утворення, які називають операторами. Оператором в мові VHDL вважається будь-який запис, який починається з ключового слова і закінчується символом крапка з комою (;).
З точки зору функціонального програмного призначення оператори мови VHDL поділяють на дві групи:
- оператори оголошення програмних елементів даних і їх типів, компонентів ЦП що проектуються, їх інтерфейсів і архітектур, користувацьких типів, а також функцій і процедур;
- виконавчі оператори.
Крім основних операторів в мові VHDL прийнято виділяти ще одну групу операторів, яку називають допоміжні оператори передачі управління.
З конструктивної точки зору, оператори обох груп поділяють на два класи:
- прості оператори;
- складені оператори.
Прості оператори складаються з текстового запису, який розташований, як правило, в одному рядку і не містить інших операторів. Складені оператори мають текстовий запис, який, як правило, займає декілька рядків і містить інші оператори.
В структурі мови VHDL є два фундаментальних оператори, які підтримують принцип системного програмування. Принцип системного програмування передбачає, що будь-який ЦП розглядається як автономна підсистема, яка повинна мати:
ідентифікатор (тобто бути оголошена):
здатність взаємодіяти з іншими проетктуючими підсистемами за допомогою свого інтерфейсу (вхідних/вихідних портів);
описувати внутрішні структури або алгоритми функціонування.
Такими фундаментальними операторами в мові VHDL є оператори:
entity ... end entity ...;
architecture ... end architecture ...;
Проект ЦП, або його компонент, описаний мовою VHDL, зберігається у файлі, з розширенням VHD.
1.2. Оголошення інтерфейсу
Згідно синтаксису мови VHDL оголошення інтерфейсу компоненту що проектується починається з ключового слова entity і визначає ім’я компоненту, а також містить оголошення вхідних і вихідних портів. Синтаксис оголошення інтерфейсу має наступний вигляд:
entity ім’я_компоненту is [generic(загальні_оголошення);]
port (сигнал1: режим тип;
сигнал2: режим тип;
...
сигналN: режим тип);
end [entity] [ім’я_компоненту];
Як бачимо, оголошення інтерфейсу завжди починається з ключового слова entity, після якого вказується ім’я компоненту що проектується і ключове слово is. Дальше в оголошені інтерфейсу за допомогою ключового слова port розміщується оголошення портів. Оголошення інтерфейсу завжди закінчується ключовим словом end, після якого можуть вказуватись ключове слово entity, а також ім’я компоненту.
Елементи, які входять в конструкцію оголошення інтерфейсу мають наступні значення:
ім’я_компоненту – ідентифікатор проекту, який визначається користувачем;
сигнал – список ідентифікаторів, які розділяються комою, і які представляють зовнішні інтерфейсні сигнали;
режим – ключове слово, яке показує напрямок дії сигналу (порта):
in – ключове слово, для оголошення вхідних сигналів;
out – ключове слово, для оголошення вихідних сигналів (читається іншими проектами);
buffer – ключове слово, для оголошення внутрішніх сигналів (читається лише всередині архітектури);
inout – ключове слово, для оголошення сигналів, які можуть бути як вхідними так і вихідними.
тип – зарезервоване слово, яке використовується для оголошення типу сигналу визначеного користувачем або константи. Типи даних визначених в пакеті std.standard наведені в таблиці 1.
Таблиця 1.
Тип
Множина допустимих значень
Приклад
bit
Приймає значення ‘0’, ‘1’
signal A : bit := ‘1’;
bit_vector
Масив елементів типу bit
signal INBUS : bit_vector (7 downto 0);
boolean
Приймає значення FALSE, TRUE
variable TEST : boolean := FALSE;
character
Будь-який допустимий символ VHDL (друковані символи повинні розміщу-ватись в одинарних лапках, пр. ‘#’)
variable VAR : character := ‘$’;
integer
Діапазон допустимих значень залежить від реалізації, але не менше ніж від –(231-1) до +(231-1)
constant CONST1 : integer := 129;
natural
Цілочисельне значення від 0 максимального додатнього значення цілих чисел (залежить від реалізації)
variable VAR1 : natural := 2;
positive
Цілочисельне значення від 1 до максимального додатнього значення цілих чисел (залежить від реалізації)
variable VAR2 : positive := 2;
real
Число з плаваючою комою в діапазоні від -1.0×1038 до +1.0×1038 (діапазон залежить від реалізації)
variable VAR3 : real := +64.2E12;
string
Масив, кожен елемент якого є одиничним символом
variable VAR4 : string (1 to 12 ) := “$@!ABC*()_%Z”;
time
Цілочисельне значення, діапазон якого залежить від конкретної реалізації; час може задаватись в секундах (sec), мілісекундах (ms), мікросекундах (us), наносекундах (ns), пікосекундах (ps) і фемосекундах (fs), а також в хвилинах (min) і годинах (hr)
variable DELAY : time := 5 ns;
generic(загальні_оголошення); – оголошення generic є факультативним і визначає локальні константи, які використовуються для задання тимчасових параметрів і розрядності (розрядність шини) ЦП що проектується. В оголошенні generic можуть вказуватись значення, які використовуються по замовчуванню. Синтаксис для оголошення generic наступний:
generic (
ім’я_константи1: тип [:=значення];
ім’я_константи2: тип [:=значення];
...
ім’я_константиN: тип [:=значення]);
Для прикладу, нехай потрібно спроектувати пристрій, наведений на рис. 1.
Оголошення інтерфейсу для ЦП наведеного на рис. 1 матиме наступний вигляд:
-- Приклад оголошення інтерфейсу для ЦП (рис.1)
entity SIREN is
port (in1, in2, in3: in std_logic;
out1: out std_logic);
end SIREN;
Як бачимо з оголошення, інтерфейс має ідентифікатор SIREN, містить три вхідних порти (in1, in2, in3) і один вихідний (out1). В оголошенні кожного порту є вказівка на його інформаційний тип. Тип визначає набір значень, які можуть присвоюватись об’єкту (сигналу). В цьому проекту ми використали тип std_logic. Це найбажаніший тип для цифрових сигналів, адже на відміну від типу bit , який підтримує лише бінарні значення ‘1’ або ‘0’, типи std_logic і std_ulogic дозволяють присвоювати відповідним елементам даних одне з дев’яти значень, яке може приймати сигнал у фізичній цифровій схемі, а це:
‘U’ – невизначений;
‘X’ – сильний невідомий (або ‘0’, або ‘1’);
‘0’ – сильний нуль;
‘1’ – сильна одиниця;
‘Z’ – високий імпеданс;
‘W’ – слабий невідомий;
‘L’ – слабий нуль;
‘H’ – слаба одиниця;
‘-’ – байдужий стан.
1.2. Архітектура проекту в поведінковій формі
Архітектура проекту визначає логіку роботи схеми цифрового пристрою, тобто встановлює алгоритм роботи цифрового пристрою і форму її реалізації (поведінкову або структурну). Первинна і найвища форма абстракції – поведінкова (behavioral) форма, яка дозволяє описувати систему в термінах того, що вона робить (або як себе веде), а не в термінах її елементів чи компонентів і з’єднань між ними. Поведінкова форма може бути булевим виразом чи більш абстрактним описом, наприклад описом міжрегістрових пересилок або описом в алгоритмічній формі.
Синтаксис оголошення архітектури проекту має наступний вигляд:
architecture ім’я_проекту of ім’я_компоненту is
Оголошення: компонентів, сигналів, констант, функцій, процедур, типів, …
begin
Виконання операторів паралельної обробки …
end [architecture] ім’я_архітектури;
Поведінкова форма архітектури проекту, наведеного на рис. 1 має наступний вигляд:
architecture behav of SIREN is
begin
out1<= (not in1 and in2) or (not in3 and in2);
end behav;
В рядку заголовку архітектури проекту є ідентифікатор архітектури (behav), який відіграє роль імені архітектури і зв’язує цю архітектуру з оголошенням інтерфейсу SIREN. Як ім’я архітектури може бути будь-який ідентифікатор, який вибере користувач, при умові відповідності його синтаксису вимогам мови VHDL.
Як зазначалось вище, поведінкова форма проекту може бути описана декількома способами. В цьому проекті основна частина архітектури проекту містить один простий оператор встановлення значення сигналу. В цьому операторі є символ “<=”, який означає що сигналу, який стоїть зліва від символу “<=”, встановлюється результат обчислення виразу, який стоїть справа від символу “<=”.
Потрібно наголосити, що оператори встановлення значення сигналу є операторами паралельної обробки. Такі оператори виконуються паралельно, коли один чи більше сигналів, які входять в склад виразів, які розташовані в правій частині оператора, змінюють своє значення. Відповідно до цього, порядок розташування операторів в основні частині архітектури може буди довільним. Цей принцип є основною відмінністю мови VHDL від мов програмування, де оператори виконуються послідовно чи шляхом виклику процедур.
2. Синтез комбінаційної схеми з одним виходом
Синтез комбінаційної схеми можна поділити на три етапи.
Перший етап:
- Складають таблицю істинності, в якій фіксується склад і значення вхідних та вихідних логічних змінних і яка відображає задану логіку роботи комбінаційної схеми: - в такій таблиці для кожного можливого набору значень (далі просто набору) вхідних логічних змінних вказують значення логічної функції: «1», «0», або «*» (в останньому випадку значення функції невизначене). Можна також задати логічну функцію в іншій формі, наприклад в досконалій диз’юнктивній нормальній формі (ДДНФ).
- На основі таблиці істинності, застосовуючи ті чи інші методи мінімізації логічних функцій, знаходять логічне рівняння в мінімальній диз’юнктивній нормальній формі (МДНФ). При цьому якщо логічна функція визначена не на всіх наборах вхідних змінних, здійснюють її оптимальне довизначення (таке довизначення, при якому функція буде мати простішу МДНФ).
Другий етап:
Отримане на першому етапі логічне рівняння заданої функції (у МДНФ) записують в операторній формі, тобто у вигляді суперпозиції операторів логічних елементів (оператором логічного елемента називають функцію, яку реалізує цей елемент). Якщо обмежитися операторами І, АБО, І-НЕ, АБО-НЕ і припустити, що число входів відповідних логічних елементів є достатньо великим, то операторний запис функції зводиться до її подання в одній із восьми стандартних канонічних нормальних форм (див. Приклад). Нормальні форми дозволяють будувати комбінаційні схеми з двома рівнями (каскадами) логічних елементів.
Якщо число входів p логічних елементів менше, ніж вимагається для реалізації рівняння в нормальній формі, то змінні об’єднуються в групи (не більше p змінних в кожній). Причому число таких груп також не повинне перевищувати p, інакше така сукупність груп в свою чергу розбивається на групи по p елементів і так далі. Такі перетворення дозволяють подати задану функцію в операторній формі з врахуванням числа входів елементів. Але в цьому випадку операторна форма не буде нормальною, бо за рахунок додаткового каскадування елементів комбінаційна схема буде мати більше ніж два рівні.
Третій етап:
На основі операторного представлення логічної функції будують комбінаційну схему. При цьому враховують задану систему логічних елементів. Якщо задана система логічних елементів дозволяє реалізувати (або взяти за основу при реалізації з врахуванням числа входів елементів) декілька нормальних операторних форм, всі можливі варіанти реалізації комбінаційної схеми порівнюють за заданими параметрами і вибирають оптимальний варіант реалізації. Найчастіше такими параметрами є складність і швидкодія схеми. Розглянемо зміст етапів синтезу схеми на прикладі.
1.2. Приклад
Нехай потрібно побудувати комбінаційну схему, яка реалізує логічну функцію y. Причому , якщо мають місце дві з чотирьох можливих подій. Якщо ж одночасно мають місце три події, логічна функція y може мати будь-яке значення. В інших випадках .
Перший етап:
Позначимо згадані в умові задачі чотири події як вхідні логічні змінні . Домовимося, що коли деяка i-та подія має місце, то . Інакше .
За словесним описом заданої логічної функції складаємо таблицю істинності (Таблиця 2). В першому стовпчику таблиці вказуємо номер набору вхідних логічних змінних. В наступних чотирьох стовпчиках - власне набір вхідних логічних змінних. Іншими словами в рядках Таблиці 1 (в межах стовпчиків ) перебираємо поєднання можливих подій: - починаючи від випадку коли не має місця жодна з подій і закінчуючи випадком коли одразу всі чотири події мають місце. Останній стовпчик таблиці (значення логічної функції y) заповнюємо у відповідності з заданим словесним описом цієї функції. Тобто значення функції будь-яке (*) в тих рядках таблиці, в яких є три одиниці в межах стовпчиків - (набори 7, 11, 13, 14). Значення функції дорівнює одиниці в тих рядках таблиці, в яких є дві одиниці в межах стовпчиків - (набори 3, 5, 6, 9, 10, 12). Для інших наборів значення функції дорівнює нулю.
Далі мінімізуємо логічну функцію, задану Таблицею 1, методом карт Карно. Причому використовуємо карту Карно для чотирьох змінних (Рис. 1.). У відповідності з таблицею істинності наносимо одиничні і невизначені значення логічної функції на карту Карно (Рис. 1) і здійснюємо їх накриття мінімальним числом правильних прямокутників (контурів склеювання) максимальної площі. При цьому невизначені значення функції довизначаємо так, щоб отримана внаслідок мінімізації МДНФ була якомога простішою (в нашому прикладі невизначені значення функції, які відповідають наборам 7,11,13 ми визначаємо як одиничні, а значення функції, яке відповідає 14-ому набору довизначаємо як нульове). Кожному контуру склеювання в МДНФ функції відповідає одна кон’юнкція. Причому в цю кон’юнкцію входять ті змінні, які в однаковій формі (прямій або інверсній) входять в ті мінтерми, чиї клітинки охоплені даним контуром. Наприклад, значення функції, охоплені крайнім лівим контуром на рис. 2, будуть представлені в МДНФ кон’юнкцією , оскільки клітинкам карти Карно, охопленим даним контуром, відповідають мінтерми і , які відрізняються тільки формою входження в них змінної .
Аналогічно мінімізуємо заперечення функції y ( - рис. 3). При заповненні цієї карти (порівняно з Рис.1) невизначені значення функції так і залишаються невизначеними, одиниці заміняються нулями, а нулі - одиницями.
Результатом мінімізації є МДНФ функції та її заперечення :
(1)
(2)
Другий етап:
Знаходимо представлення логічної функції y у восьми стандартних канонічних нормальних формах. Позначаються нормальні форми вказівкою на внутрішні та зовнішні функції розкладу. Наприклад, для МДНФ (1) внутрішньою логічною функцією є функція І (тобто кон’юнкції, що відповідають контурам склеювання). Зовнішньою функцією розкладу є функція АБО. Отже МДНФ (1) логічної функції y є формою І/АБО:
(форма І/АБО)
Наступну форму знаходимо, два рази проінвертувавши форму І/АБО і застосувавши один раз правило де Моргана:
(форма І-НЕ/І-НЕ)
Застосувавши правило де Моргана до кожної з внутрішніх функцій розкладу форми І-НЕ/І-НЕ, отримують форму АБО/І-НЕ:
(форма АБО/І-НЕ)
Нарешті, застосувавши правило де Моргана до зовнішньої функції розкладу форми АБО/І-НЕ, отримують форму АБО-НЕ/АБО:
(форма АБО-НЕ/АБО)
Для отримання наступних чотирьох нормальних форм за основу беруть МДНФ заперечення функції y (2). Тоді форму І/АБО-НЕ можна отримати, проінвертувавши (2):
(форма І/АБО-НЕ)
Застосувавши до зовнішньої функції розкладу попередньої форми правило де Моргана, отримаємо форму І-НЕ/І:
(форма І-НЕ/І)
Далі застосовуємо правило де Моргана до внутрішніх функцій розкладу попередньої форми - отримуємо форму АБО/І:
(форма АБО/І)
Проінвертувавши форму АБО/І два рази і застосувавши один раз правило де Моргана, отримаємо восьму нормальну форму - АБО-НЕ/АБО-НЕ:
(форма АБО-НЕ/АБО-НЕ)
Третій етап:
За операторними представленнями функції, з врахуванням наявних логічних елементів, будують комбінаційну схему. Наприклад, якщо в нашому розпорядженні є логічні елементи І та АБО, ми можемо побудувати дворівневі комбінаційні схеми тільки на основі форм І/АБО, АБО/І. Порівнюючи ці дві схеми, приходимо до висновку, що схема за формою АБО/І буде простішою, бо вимагає менше тривходових елементів на першому рівні і елемента з меншою кількістю входів на другому рівні. Комбінаційну схему, побудовану за формою АБО/І у відповідності з Прикладом, подано на рис. 4.
Якщо ж наявна бібліотека логічних елементів дозволяє реалізувати не одну, а декілька нормальних форм логічної функції, необхідно порівняти можливі варіанти реалізації з метою вибору оптимального. Таке порівняння здійснюється, як правило, за двома показниками: складністю та швидкодією.
3. ЗАВДАННЯ
1. Ознайомитись з базовою структурою VHDL-файлу.
2. Ознайомитись з синтаксисом оголошення інтерфейсу і архітектури проекту ЦП в мові VHDL.
3. Синтезувати комбінаційну схему з одним виходом. Дані для роботи беруться з таблиці 3 згідно варіанту який видає викладач.
Таблиця 3.
№ набору
X1
X2
X3
X4
Y (номер варіанту видає викладач)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
0
0
0
0
0
1
1
0
0
*
0
1
*
*
0
1
1
0
1
1
1
0
0
0
1
1
0
0
1
0
0
*
1
1
*
0
*
0
0
0
2
0
0
1
0
1
1
1
*
1
1
1
0
0
0
0
1
*
0
1
3
0
0
1
1
0
*
0
1
0
0
0
*
1
0
0
0
0
0
1
4
0
1
0
0
*
0
*
0
0
0
1
1
1
0
1
1
1
0
1
5
0
1
0
1
1
1
1
1
0
0
0
0
1
0
0
1
0
0
*
6
0
1
1
0
0
0
0
1
*
*
*
0
1
1
1
0
0
0
0
7
0
1
1
1
0
0
0
1
0
0
1
1
1
0
1
0
1
1
1
8
1
0
0
0
1
*
1
0
0
0
0
0
0
*
0
1
0
0
1
9
1
0
0
1
1
0
0
0
1
1
1
0
0
1
*
0
0
*
0
10
1
0
1
0
0
1
*
0
0
0
1
0
1
1
1
0
1
1
0
11
1
0
1
1
0
0
0
1
0
1
0
0
0
0
*
0
0
0
0
12
1
1
0
0
*
0
1
0
0
1
0
1
1
1
0
0
0
0
1
13
1
1
0
1
*
1
0
1
1
0
0
1
0
0
0
0
0
1
0
14
1
1
1
0
0
1
*
1
1
1
0
0
0
0
1
1
1
1
0
15
1
1
1
1
1
1
0
*
1
1
0
0
1
1
1
0
0
1
0
4. Скласти і відкомпілювати програму на мові VHDL, яка моделює роботу синтезованої схеми.
5. Промоделювати роботу даного пристрою в редакторі часових діаграм і отримати часові діаграми.
4. ЗМІСТ ЗВІТУ*
1. Назва і мета роботи.
2. Теоретичні відомості, необхідні для написання програми на мові VHDL які описують роботу розробленого блоку чи вузла (рівняння, структурні схеми, тощо.), згідно із завдання лабораторної роботи або вимог викладача.
3. Програма на мові VHDL, яка описує роботу розробленого блоку чи вузла.
4. Часові діаграми роботи пристрою.
5. Короткі висновки за результатами роботи.
*Зразок оформлення звіту наведений в методичних рекомендаціях до лабораторної роботи № 1.
Навчальне видання
АРХІТЕКТУРА ПРОЕКТУ НА МОВІ VHDL В ПОВЕДІНКОВІЙ ФОРМІ.
СИНТЕЗ КОМБІНАЦІЙНИХ СХЕМ З ОДНИМ ВИХОДОМ.
ІНСТРУКЦІЯ ДО ЛАБОРАТОРНОЇ РОБОТИ № 2
З КУРСУ “ КОМП’ЮТЕРНІ МЕТОДИ АНАЛІЗУ ТА ПРОЕКТУВАННЯ ЕЛЕКТРОННИХ ЗАСОБІВ”
та студентів спеціальностей:
7.160102 “Захист інформації з обмеженим доступом та автоматизація її обробки”, 7.160103 “Системи захисту від несанкціонованого доступу”, 7.160104 “Адміністративний менеджмент в сфері захисту інформації з обмеженим доступом”, 7.160105“Захист інформації і комп'ютерних системах і мережах”, 8.160102 “Захист інформації з обмеженим доступом та автоматизація її обробки”, 8.160103 “ Системи захисту від несанкціонованого доступу”, 8.160104 “Адміністративний менеджмент в сфері захисту інформації з обмеженим доступом”, 8.160105“Захист інформації і комп'ютерних системах і мережах”.
Укладачі: Горпенюк А.Я., к.т.н, доцент,
Будз Б.Д., асистент
Львів: Національний університет “Львівська політехніка”