DevioLab CRYPTO TRADING AUTOMATION
LIVE
AUTOMATED CRYPTO TRADING • BINANCE
Автоматизуйте свій криптопортфель
Торгові боти DevioLab аналізують крипторинок, автоматично відкривають і закривають позиції та керують вашим портфелем на Binance 24/7.
CRYPTO 80 Bots
BINANCE Spot Trading
TRADING 24 / 7
Спробувати DevioLab
deviolab.com

Вивчення основних принципів роботи в середовищі схемного редактора САПР ПЛІС Xilinx Foundation Series

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
КН
Кафедра:
Автоматики і телемеханіки

Інформація про роботу

Рік:
2013
Тип роботи:
Звіт про виконання лабораторної роботи
Предмет:
Обчислювальна техніка

Частина тексту файла (без зображень, графіків і формул):

Міністерство освіти і науки України Національний університет “Львівська політехніка” Кафедра автоматики і телемеханіки ЗВІТ про виконання лабораторної роботи №5 з курсу “Обчислювальна техніка” “Вивчення основних принципів роботи в середовищі схемного редактора САПР ПЛІС Xilinx Foundation Series” Варіант №14 Мета роботи: вивчення схемних різновидів регістрів, методів їх аналізу і синтезу. Завдання: Ознайомитися з основними відомостями. Визначити свій варіант завдання. Для цього необхідно номер варіанта (задає викладач) перевести в двійкову систему числення і за Таблицями 11, 12 (тут 1 - молодший розряд двійкового номера варіанту) визначити свої варіанти мікрооперацій і типів логічних елементів для виконання наступного завдання: На логічних елементах з Таблиці 11 побудувати оптимальні з точки зору складності схеми трьох основних типів регістрів для виконання мікрооперацій, заданих Таблицею 12, а саме: а) синхронний регістр на синхронних D -, T -, або JK - тригерах; б) синхронний регістр на асинхронних RS- або JK- тригерах; в) асинхронний регістр на асинхронних T-, або JK- тригерах. Зауваження: під умовними позначеннями мікрооперацій в Таблиці 12 слід розуміти наступне: y1 - зсув вліво на один розряд; y2 - зсув вправо на один розряд; y3 - запис слова паралельним кодом; y4 - диз’юнкція; y5 - кон’юнкція; y6 - нерівнозначність; y7 - рівнозначність; y8 - інвертування значень розрядів регістра. Таблиця 11   Логічні елементи     Пункт завдання     а) б) в)  0 0 0 І,АБО,НЕ 2І-НЕ 2АБО-НЕ  0 0 1 3І-НЕ І,АБО,НЕ 2АБО-НЕ  0 1 0 3АБО-НЕ 3АБО-НЕ І,АБО,НЕ  0 1 1 І,АБО,НЕ 2АБО-НЕ 2І-НЕ  1 0 0 3І-НЕ 2АБО-НЕ І,АБО,НЕ  1 0 1 І,АБО,НЕ 3АБО-НЕ 2АБО-НЕ  1 1 0 І,АБО,НЕ 2І-НЕ 3І-НЕ  1 1 1 3І-НЕ І,АБО,НЕ І,АБО,НЕ  Таблиця 12   Мікрооперації     Пункт завдання     а) б) в)  0 0 0 y1, y3, y4 y3, y8 y3, y7  0 0 1 y2, y3, y5 y3, y7 y3, y8  0 1 0 y1, y3, y6 y3, y5 y3, y4  0 1 1 y2, y3, y7 y3, y4 y3, y5  1 0 0 y1, y3, y4 y3, y6 y3, y4  1 0 1 y2, y3, y5 y3, y8 y3, y7  1 1 0 y1, y3, y6 y3, y7 y3, y8  1 1 1 y2, y3, y7 y3, y6 y3, y5   2.2. Експериментальна частина Схему регістра, синтезовану в межах пункту 2а теоретичної частини завдання, побудувати в схемному редакторі САПР Foundation Series. Проконтролювати правильність функціонування регістра за допомогою моделювальника САПР, визначивши значення наступних станів розряду регістра для всіх наборів значень вхідних змінних і попередніх станів розряду регістра. Замалювати часові діаграми роботи схеми. Логічні елементи: а) 3І-НЕ;б) І,АБО,НЕ;в) 2АБО-НЕ Мікро операції: а)у1,у3,у6; б) у3,у7; в) у3,у8 Регістри, на яких виконуються мікрооперації зсуву, називаються регістрами зсуву. Зсув слова може бути здійснено вліво (тобто в бік старших розрядів), або вправо (тобто в бік молодших розрядів) на задану кількість розрядів. Регістри, які мають кола як лівого, так і правого зсуву, називають реверсивними. Мікрооперацію зсуву слова на один розряд вліво описують рівнянням:  (за умови, якщо індекс старшого розряду має більше значення, ніж індекс молодшого розряду регістра). За цієї ж умови мікрооперацію зсуву слова на один розряд вправо описують рівнянням: . Встановлення початкового стану регістра (зокрема нульового) здійснюються як правило через асинхронні установчі входи тригерів. За допомогою регістрів виконують також інші перетворення інформації, наприклад порозрядні логічні операції: кон’юнкція (); диз’юнкція (); нерівнозначність (); рівнозначність (); інвертування розрядів (); тощо. Переважно порозрядні логічні операції здійснюють над двома аргументами: станом розряду регістра і значенням інформаційного сигналу цього розряду.    00 01 10 11 0 1 0 1     00 01 10 11 0 1 1 0      00 01 10 11 * 0 1 0 0 1 0 *      00 01 10 11 0 1 * * * * 1 0   1-ий етап. Схеми розрядів регістра з заданими властивостями будемо будувати за структурою, поданою на Рис.3а - адже саме ця структура відображає принцип побудови розрядів синхронного регістра на синхронних тригерах. У відповідності з цією структурою мікрооперації кодуємо позиційним двійковим кодом, кількість розрядів якого (виходячи з кількості мікрооперацій, яка в нашому прикладі дорівнює трьом) дорівнює: . Отже, щоб закодувати різними двійковими кодами всі три задані мікрооперації, нам достатньо двох двійкових розрядів. Назвемо ці розряди s1, s2 і перейдемо до складання таблиці кодування (Таблиця 5). При складанні цієї таблиці кожній мікрооперації ставимо у відповідність довільний код мікрооперації, слідкуючи лише за тим, щоб різним мікроопераціям відповідали різні коди. В таблиці кодування вказуємо також логічні рівняння заданих мікрооперацій. Таблиця 5  Мікро- операція Код мікро- операції Рівняння мікрооперації   s1 s2      0 0 1 0 1 0      2-ий етап. Складаємо таблицю функціонування (таблицю переходів) i - го розряду регістра -Таблиця 6. Таблиця 6             0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 0 1 0 0 1 1 0 1 1 0 0 0 1 1 0 * 1 * * 1 * 0  0 0 0 0 0 0 0 0 1 1 1 1 0 0 1 1 0 1 0 1 0 0 1 1 0 1 1 0 0 0 1 1 0 * 1 * * 1 * 0  0 0 0 0 1 1 1 1 0 0 0 0 0 0 1 1 0 1 0 1 0 0 0 0 0 1 0 1 0 0 0 1 0 * 0 * * 1 * 1  0 0 0 0 1 1 1 1 1 1 1 1 0 0 1 1 0 1 0 1 1 1 1 1 1 0 1 0 1 1 1 1 1 * 1 * * 0 * 0  1 1 1 1 0 0 0 0 0 0 0 0 0 0 1 1 0 1 0 1 0 1 0 1 0 0 0 0 0 1 0 1 0 * 0 * * 0 * 0  1 1 1 1 0 0 0 0 1 1 1 1 0 0 1 1 0 1 0 1 1 0 1 0 1 1 1 1 1 0 1 0 1 * 1 * * 1 * 1  1 1 1 1 1 1 1 1 0 0 0 0 0 0 1 1 0 1 0 1 * * * * * * * * * * * * * * * * * * * *  1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 0 1 0 1 * * * * * * * * * * * * * * * * * * * *   2-ій етап. Мінімізуємо функції збудження всіх типів тригерів, які враховані в Таблиці 6. Для цього скористаємося методом карт Карно. Враховуємо, що кожна з функцій збудження залежить від тих сигналів, які фігурують в першій частині Таблиці 6. В першій частині таблиці функціонування в нашому прикладі є п’ять стовпчиків - отже кожна функція збудження залежить від п’яти аргументів і тому саме карти Карно на п’ять змінних ми використовуємо при мінімізації.   ` Після мінімізації отримаємо:  (1)  (2) ;  (3) Комбінаційну схему потрібно побудувати на елементах 3І-НЕ, тому переводимо рівняння в базис І-НЕ з врахуванням кількості входів логічних елементів:  Схема на елементах 3I-НЕ  Результат роботи схеми на елементах 3І-НЕ  Приклад 2. Побудувати 4-розрядний синхронний регістр для виконання мікрооперацій: y3 - занесення слова паралельним кодом; y1 - зсув вліво на один розряд. Для побудови схеми серед асинхронних RS- , JK- тригерів вибрати такий тригер, застосування якого забезпечить мінімальні апаратні затрати при побудові регістра. При побудові схем можна використовувати логічні елементи І, АБО, НЕ. 1-ий етап: Мікрооперації кодуємо позиційним кодом. Кількість розрядів:  ( - задана кількість мікрооперацій). Назвемо розряд коду мікрооперації s і складемо таблицю кодування (Таблиця 7). Таблиця 7  Мікро- операція Код мікро- операції Рівняння мікрооперації   s     0 1    Таблиця 8             0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 0 1 0 1 0 1 * 0 * 0 0 * 0 * 0 * 0 * * 0 * 0  0 0 0 0 0 0 0 0 1 1 1 1 0 0 1 1 0 1 0 1 0 1 0 1 * 0 * 0 0 * 0 * 0 * 0 * * 0 * 0  0 0 0 0 1 1 1 1 0 0 0 0 0 0 1 1 0 1 0 1 0 1 0 1 * 0 * 0 0 * 0 * 0 * 0 * * 0 * 0  0 0 0 0 1 1 1 1 1 1 1 1 0 0 1 1 0 1 0 1 0 1 0 1 * 0 * 0 0 * 0 * 0 * 0 * * 0 * 0  1 1 1 1 0 0 0 0 0 0 0 0 0 0 1 1 0 1 0 1 0 0 0 0 * 1 * 1 0 0 0 0 0 * 0 * * 1 * 1  1 1 1 1 0 0 0 0 1 1 1 1 0 0 1 1 0 1 0 1 1 1 1 1 0 0 0 0 1 * 1 * 1 * 1 * * 0 * 0  1 1 1 1 1 1 1 1 0 0 0 0 0 0 1 1 0 1 0 1 1 0 1 0 0 1 0 1 1 0 1 0 1 * 1 * * 1 * 1  1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 0 1 0 1 0 1 0 1 * 0 * 0 0 * 0 * 0 * 0 * * 0 * 0   2-ий етап. Складаємо таблицю функціонування розряду регістра (Таблиця 8) В першій частині таблиці передбачаємо стовпчик для тактового сигналу, адже згідно вибраної базової структури ми подаємо тактовий сигнал регістра на комбінаційну схему, тобто тактовий сигнал є аргументом функцій збудження тригерів регістра. 3-ій етап. Мінімізуємо методом Карно функції збудження всіх тригерів з Таблиці 8. При цьому враховуємо, що кожна з функцій збудження залежить від п’яти аргументів - при мінімізації використовуємо карти Карно на п’ять змінних   Після мінімізації отримаємо: ;  (7)  У відповідності з завданням ми можемо будувати комбінаційну схему на логічних елементах І, АБО, НЕ - отже рівняння (7) додаткових перетворень не потребує. З (7) також випливає, що з точки зору складності обидва варіанти побудови схеми регістра - на JK- і RS- тригерах - є рівноцінними. Приклад 3. Побудувати чотирирозрядний асинхронний регістр для виконання мікрооперацій: y3 - занесення слова паралельним кодом; y4 - диз’юнкція. Для побудови схеми серед асинхронних T- , JK- тригерів вибрати такий тип тригера, застосування якого забезпечить мінімальні апаратні затрати при побудові регістра. При побудові комбінаційних схем можна використовувати логічні елементи 2АБО-НЕ. Таблиця 9  Мікро- операція Код мікро- операції Рівняння мікрооперації   y3 y4     1 0 0 1     1-ий етап. Схеми розрядів регістра будуємо за структурою, поданою на Рис.4б - ця структура відображає принцип побудови розрядів асинхронного регістра на асинхрон-них тригерах. Мікрооперації кодуємо дворозрядним (за кількістю мікрооперацій) унітарним кодом - Таблиця 9. 2-ий етап. Складаємо таблицю функціонування i - го розряду регістра (Таблиця 10). Таблицю заповнюємо за тими ж правилами, що і в двох попередніх прикладах. При цьому тактовий сигнал не використовуємо, а при заповненні другої та третьої частин Таблиці 10 користуємося даними відповідно Таблиці 9 і Таблиць 2, 4. Зауважимо, що в тих рядках, в яких , в стовпчик  переписуємо значення з стовпчика  (забезпечується збереження інформації). Код  є забороненим - у відповідних рядках Таблиці 10 можуть бути будь-які значення. 3-ій етап. Мінімізуємо методом Карно функції збудження всіх тригерів з Таблиці 10. При цьому враховуємо, що кожна функція збудження залежить від чотирьох аргументів - при мінімізації використовуємо карти Карно на чотири змінних.    Після мінімізації отримаємо: ; ;  (8) З (8) очевидно, що простішою буде схема регістра, побудована на JK- тригерах. Отже саме рівняння для функцій збудження J, K перетворюємо в базис 2АБО-НЕ: Таблиця 10           0 0 0 0 0 0 0 0 0 0 1 1 0 1 0 1 0 1 0 1 0 0 0 0 0 * 0 * * 0 * 0  0 0 0 0 1 1 1 1 0 0 1 1 0 1 0 1 1 0 1 0 1 1 1 1 1 * 1 * * 1 * 1  1 1 1 1 0 0 0 0 0 0 1 1 0 1 0 1 0 0 1 1 0 1 1 0 0 * 1 * * 1 * 0  1 1 1 1 1 1 1 1 0 0 1 1 0 1 0 1 * * * * * * * * * * * * * * * *     (9)  Висновок: я вивчив схеми різновидів регістрів, методів їх аналізу і синтезу.
Антиботан аватар за замовчуванням

31.03.2013 16:28

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Нічого не вибрано
0%

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!