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