12826

Моделювання режимів роботи логічних функцій

Курсовая

Математика и математический анализ

Настав час електроніки та електроенергетики яка відіграє досить важливу роль в житті людства та сучасному суспільстві. Саме розвиток енергетики сприяв розвитку електроніки та багатьох інших невід’ємних частин сучасного суспільства...

Украинкский

2014-06-10

1.77 MB

59 чел.

PAGE   \* MERGEFORMAT 42


EMBED Equation.DSMT4  

ЗМІСТ

ПЕРЕЛІК СКОРОЧЕНЬ...............................................................................................5

ВСТУП……………………………………………………………………………….6

  1.   Аналіз завдання та вибір методу синтезу………………………………………7
  2.   Мінімізація логічних функцій……………………………………………………11

 2.1 Мінімізація логічних функцій за законами алгебри логіки………...…11

 2.2 Мінімізація логічних функцій за діаграмою Вейча………………....…11

  1.   Подання логічних функцій в базисах……………………………………………11

 3.1 Приведення логічної функцій до базису І – НІ…………………………...…13

 3.2 Приведення логічної функції до базису АБО – НІ………………………….13

  1.   Побудова таблиць істинності…………………………………………………….15
  2.   Синтез цифрових схем……………………………………………………………16

 5.1 Побудова комбінаційної схеми заданої логічної функції…………………..17

5.2 Побудова комбінаційної схеми мінімізованої логічної функції………..…..18

 5.3 Синтез логічної схеми в базис І – НІ………………………………….....….18

 5.4 Синтез логічної схеми в базис АБО – НІ………………………………..…19

  1.   Моделювання роботи цифрових схем засобами ЕОМ……………………...21

 6.1 Аналіз особливостей моделювання схем в ППП OrCAD, PROTEUS........21

 6.1.1 Робота з програмою Proteus……………………………………............21

 6.1.2 Робота з програмою OrCAD…………………………………...........….21

  1.  Моделювання схем логічних функцій в ППП………….......................…22

 6.2.1 Моделювання схеми мінімізованої функції засобами Proteus…..............22

 6.2.2 Моделювання логічних схем в ППП OrCAD………………..............….23

  1.   Апаратна реалізація логічної функції…………………………………….….….24

 7.1 Приведення логічної функції до ДКНФ……………………………..….….24

 7.2 Приведення логічної функції до ДДНФ……………………………..…..…24

  1.   Розробка програми моделювання режимів роботи схем……………….……..26

 8.1 Розробка алгоритму роботи Блок-схеми та опис її роботи………………..26

 8.2 Програмна реалізація алгоритму………………………………....………..27

  1.   Тестування результатів роботи…………………………………………………..28

 9.1 Перевірка схем по тактах…………………………………………....………28

 9.2 Порівняння моделювання схем та результатів розрахунків……….....…..29

ВИСНОВОК………………………………………………………………….……..31

ПЕРЕЛІК ПОСИЛАНЬ……………………………………………………………32

ДОДАТКИ

А)………………………………… .… .……… …………………………………33

Б)………………………………………………………… . . . .…….……………35

В)……..…………………………… …………… ………………...……………..38


ПЕРЕЛІК СКОРОЧЕНЬ

В курсовій роботі присутні такі скорочення:

АЛ – алгебра логіки;

ДДНФ – досконала диз’юнктивна нормальна форма;

ДКНФ – досконала кон’юнктивна нормальна форма;

ЛФ – логічна функція;

MS – мультиплексор ;

ППП – пакет прикладних програм.

ВСТУП

Настав час електроніки та електроенергетики яка відіграє досить важливу роль в житті людства та сучасному суспільстві. Саме розвиток енергетики сприяв розвитку електроніки та багатьох інших невід’ємних частин сучасного суспільства та цивілізації. Енергетика є одна з базових галузей будь якої держави, на прикладі цього можна було спостерігати при створені СССР Ленінську електрофікацию. Потім вже мала місце електроніка якої невід’ємною складовою є цифрові схеми. Вони базуються на булевій алгебрі. Початок алгебри логіки поклали праці англійського математика  Дж. Буля. Математичний апарат алгебри логіки дуже зручний для опису того, як функціонують апаратні засоби комп’ютера, оскільки основною системою обчислень в комп’ютері є двійкова система, в якій використовується цифри 1 та 0, а значень логічних змінних теж  два: «1» та «0». На етапі конструювання апаратних засобів алгебра логіки дозволяє значно спростити логічні функції, які описують функціонування схеми комп’ютера, що в подальшому зменшують число елементарних логічних елементів, із десятки тисяч яких складаються основні вузли комп’ютера. Виготовлення комп’ютерів здійснюється з використанням цифрових технологій. Сучасна комп’ютерна техніка широко застосовується в галузі електроенергетики. Технологічні процеси в електроенергетиці автоматизуються за допомогою створених на ЕОМ схем та процесів. Алгебра логіки складає основу будь-якого управління, в тому числі технологічними процесами. Саме це стало основним питанням, яке розглядається більш детально в даній роботі.

Також для моделювання логічних схем використовуються демонстраційні версії таких программ як:

  •  OrCAD - пакет прикладних програм(ППП), що дозволяє вирішувати задачі, які виникають у процесі проектування;
  •  Proteus – ППП який дозволяє моделювати та досліджувати електричні схеми, а також дає можливість створювати малюнок друкованої плати).

Для графічного зображення комбінаційних схем логічних функцій використовується додаток «Visio» пакету «Microsoft Office».

Для створення програм моделювання режимів роботи логічних функцій використовуються додатками «Excel» та «Visual Basik for Application» пакету «MicrosoftOffice».


1
АНАЛІЗ ЗАВДАННЯ ТА ВИБІР МЕТОДУ СИНТЕЗУ

Із завданням задано логічну функцію (1.1), яку потрібно про мінімізувати:

                                                                                                     .                             (1.1)    

Мінімізовувати функцію будемо з використанням методу законів та аксіом алгебри логіки та методу діаграм Вейча. Згодом перевірку змодельованої функції проведемо моделювання засобами ЕОМ.

Алгебра логіки - розділ математичної логіки, в якому вивчаються логічні операції над висловлюваннями. Найчастіше передбачається, що висловлювання можуть бути тільки істинними або помилковими.

Під мінімізацією функцій алгебри логіки розуміють перетворення її алгебраїчного виразу з метою отримання найпростішого виду функції. В інженерній практиці для мінімізації найширше застосування отримали наступні методи та закони: Метод законів та аксіом алгебри логіки, метод мінімізації на основі карт Карно, метод Діаграм Вейча, метод Квайка Мак Класкі, метод – Блейка Порецького, метод об’єднання та поглинання кубів.

Метод мінімізації за законами та аксіомами алгебри логіки використовується для мінімізації логічних функцій п’яти та більше змінних. Правильність розв’язання логічної функції за законами та аксіомами алгебри логіки перевіряється з таблиці істинності. Даний метод базується на законах алгебри логіки які подані у табл. 1.1.

Таблиця 1.1 – Закони алгебри логіки

Комутативний закон

;

Асоціативний закон

або

Закон повторення

Закон обертання

якщо  то

Закон подвійної інверсії:

Закон нульової множини

;

Закон універсальної множини

;

Доповняльний закон

;

Дистрибутивний закон

або

Закон поглинання

або

Закон склеювання

або

Закон інерції (Правило Де Моргана)

 

Зараз розглянемо  альтернативний метод, а точніше мінімізація функцій алгебри логіки за допомогою діаграм Вейча. Метод базується на табличному представленні функції. Широко застосовується при ручній, без застосування ЕОМ, мінімізації функції алгебри логіки, число змінних в якій зазвичай не перевищує п’яти. Діаграма Вейча – прямокутна таблиця, кількість клітин в якій для функції алгебри логіки n-змінних дорівнює 2n. Стовбці і рядки карти розмічаються таким чином, щоб у поряд розташованих стовбцях і рядках знаходилися сумісні терми. У клітинах карти записуються значення функції при відповідних наборах змінних. Кожна клітинка діаграми відповідає набору змінних функції в її таблиці істинності. В клітинці діаграми Вейча ставиться одиниця, якщо функція набуває одиничного значення на відповідному наборі. Нульові значення функції в діаграмі Вейча не проставляються. Мінімізація за даним методом полягає в  охопленні клітинок з одиничним значенням функції на діаграмі спеціальними контурами у вигляді прямокутника або квадрата. В мінімізовану функцію отримані вирази входять як окремі доданки. На діаграмі Вейча область з однієї клітинки кодується чотирма змінними, з двох – трьома, чотирьох – вісьма [3].

Приклад діаграми Вейча зображено на рис. 1.1:

Рисунок 1.1 – Діаграма Вейча для функцій чотирьох змінних

Після виконання мінімізації та приведення до базисів будемо моделювати функцію за допомогою ППП. ППП  для моделювання функцій засобами ЕОМ, які будуть використовуватись в курсовій роботі:

PROTEUS – пакет програм для автоматизованого проектування електронних схем. Розробка компанії Labcenter Electronics. Пакет являє собою систему схемотехнічного моделювання, що базується на основі моделей електронних компонентів прийнятих в PSpice. Пакет додатково включає в себе дві програми ISIS і ARES, Перша з яких дозволяє моделювати і досліджувати електричні схеми. Друга дає можливість створювати малюнок друкованої плати на основі схеми створеної в програмі ISIS.

 OrCAD – пакет комп'ютерних програм, призначений для автоматизації проектування електроніки. Використовується в основному для створення електронних версій друкованих плат для виробництва друкованих плат, а також для виробництва електронних схем та їх моделювання.

 

 

2 МІНІМІЗАЦІЯ ЛОГІЧНИХ ФУНКЦІЙ

Нам потрібно мінімізувати логічну функцію (1.1) , яку нам видали згідно варіанту. Функцію ми мінімізуємо за законами та аксіомами алгебри логіки та за діаграмою Вейча.

Промінімізувавши логічну функцію отримаємо спрощення логічної функції, що практично дає змогу реалізувати оптимальний розв’язок математичної задачі.

2.1 Мінімізація логічних функцій за законами алгебри логіки

Промінімізуємо функцію (1.1).  Для мінімізації даної функції буде доцільним використання  дистрибутивного закону (див. табл. 1.1), згідно з яким ми виносимо спільні множники за дужки. В даному випадку в першому, другому, третьому доданках функції зустрічається спільний аргумент Х2. В четвертому та п’ятому -   , тому, маємо:

                 

                                   .                                (2.1)

         Після винесення за дужки згідно із законом поглинання отримаємо:

                                                      ,                                                             (2.2)

2.2 Мінімізація логічних функцій за діаграмою Вейча

Метод полягає в представленні логічної функції в комірках діаграми. Якщо функція є визначена на наборі змінних, то у відповідній комірці проставляється «1». Якщо значення функції є нульовим, то на діаграмі нічого не проставляється.

Отже, заносимо задану за завданням логічну функцію (1.1) в діаграму Вейча, як це показано на рис. 2.1.

Рисунок 2.1 – Діаграма Вейча заданої логічної функції

 Далі проводимо об’єднання комірок діаграми. Заповнені одиницями в контури, при чому в контури об’єднуються лише сусідні комірки та за формолою «2 в степені n». Результат проілюстровано на рис. 2.2.

Рисунок 2.2 – Діаграма Вейча для логічної функції з об’єднаними контурами

 Отже, промінімізувавши задану логічну функцію методом діаграм Вейча, маємо мінімізовану логічну функцію (2.3):

                                                          ,                                                   (2.3)

Функція (1.1) мінімізована двома методами. Отримані мінімізовані функції (2.2) та (2.3) – однакові. Отже для проведення мінімізації можна вибрати один з даних методів.

3 ПОДАННЯ ЛОГІЧНИХ ФУНКЦІЙ В БАЗИСАХ

Мінімізовану логічну функцію (2.2), яку необхідно привести до базисів    І-НІ та АБО-НІ.

Базисом прийнято називати набір логічних функцій, які дозволяють реалізувати будь-які інші функції. При моделюванні логічної функції, приведеної до певного базису можемо використовувати лише один логічний елемент із фіксованою кількістю входів. Тобто, приводячи логічну функцію до базису, скорочуємо елементну базу, необхідну для її реалізації, лише до одного елемента. Недоліком є те, що іноді схеми стають громіздкими.

 

3.1 Приведення логічної функції до базису І – НІ

Необхідно привести до базису І-НІ функцію (2.2). Даний базис містить тільки дві оперції: логічне множення та інверсію.

Під час приведення логічної  функції до базису використовуємо правило

де Моргана (див. табл. 1.1) , а також закон подвійної інверсії  (див. табл. 1.1).

Спочатку двічі проінвертуємо функцію:

                                                      ,                                                  (3.1)                                                               

Застосуємо правило де Моргана

                                                        .                                                    (3.2)                                              

Одержали логічну функцію, приведену до базису І-НІ.

3.2 Приведення логічної функції до базису АБО – НІ

Необхідно привести до базису АБО-НІ мінімізовану функцію (2.2). Даний базис також містить лише дві операції: логічне додавання та інверсію. Під час приведення до базису застосовуємо ті ж самі закони, що і в попередньому пункті, а саме правило де Моргана (див. табл. 1.1) та закон подвійної інверсії (див. табл. 1.1).

Провидемо подвійну інверсію над усією функцією, а також над тими доданками, що містять логічне множення:

                                                                                                            (3.3)                                                                        

Далі розбиваємо інверсію за правилом де Моргана (див. табл. 1.1) , замінюючи при цьому знак множення на знак логічного додавання:

                                                                                                          (3.4)

Отримали логічну функцію в базисі АБО-НІ.

Отже, логічну функцію (2.2) приведено  до базисів І-НІ (3.2) та АБО-НІ (3.4). При цьому використовували лише правило де Моргана (див. табл. 1.1) та закон подвійної інверсії (див. табл. 1.1). Отримані логічні функції можна реалізувати за допомогою типових елементів з фіксованою кількістю входів, що і є метою приведення функції до базису.

4 ПОБУДОВА ТАБЛИЦЬ ІСТИНОСТІ

У цьому розділі будемо проводити побудову таблиці істинності для мінімізованої функції. Таблиця істинності повністю визначає логічну функцію на усіх її наборах. Таблиця істинності надає можливість звірити, наприклад, значення немінімізованої функції зі значеннями функції, приведеної до базису. Якщо для певного з тактів значення функцій не збігається  – значить мало місце помилки в процесі мінімізації або під час приведення до базису.

Будуємо таблицю істинності для усіх 16 тактів мінімізованої функції табл. А.1, додаток А. Під час заповнення таблиці врахуємо, що змінна  міняє значення з 0 на 1 через 8 тактів, змінна  через 4 такти, змінна  через 2 такти, змінна  через 1 такт. Для кожного такту підставляємо у функцію відповідні значення аргументів, отримуємо результуюче значення функції для цього такту.

У цьому підрозділі було побудовано таблицю істинності для усіх 16 тактів мінімізованої функції. Також знайшли значення мінімізованої функції для кожного такту, порівняли їх з відповідними значеннями немінімізованої функції. За допомогою таблиці істинності з’ясували, що функція мінімізована правильно.

Побудуємо таблицю істинності для функцій, приведених до базисів, та виконаємо перевірку функції, мінімізованої за діаграмою Вейча. Отримані результати зведені до таблиці А.2, яка представлена у додаток А.

Значення мінімізованої функції, приведеної до базисів І-НІ та АБО-НІ, також дорівнює значенню немінімізованої функції на кожному такті. Отже, зробимо висновок, що функція приведена до базисів вірно. Після побудови таблиць істинності можемо приступити до побудови схем, що і буде виконано в наступному розділі.

5 СИНТЕЗ ЦИФРОВИХ СХЕМ

Логічну функцію будь-яку можна реалізувати за допомогою логічних схем. Логічною схемою прийнято називати сукупність логічних елементів і зв’язків між ними, призначених для перетворення двійкових змінних. Комбінаційними називають схеми, логічний стан виходів яких залежить тільки від комбінації сигналів на входах в певний момент часу. Тобто комбінаційні схеми не мають пам’яті.

Для реалізації будь-якої функції потрібно використати набір логічних елементів. Основні логічні елементи приведені на рисунках в підрозділі 5.1.

Диз’юнктор дозволяє отримати суму всіх параметрів на вході, та здійснює операцію логічного додавання (див. рис. 5.1). Кон’юнктор реалізує операцію логічного множення (див. рис. 5.2). Елемент АБО-НІ  здійснює інвертування суми вхідних сигналів (див. рис. 5.3). Елемент І-НІ здійснює інвертування логічного добутку вхідних сигналів (див. рис. 5.1). Інвертор, реалізований на базі кон’юнктора (див. рис. 5.3(А)) та інвертор, реалізований на базі диз’юнктора (див. рис. 5.3(Б)) здійснюють інвертування вхідного сигналу.

З використанням даних елементів можна реалізувати будь-яку логічну функцію.

5.1 Побудова комбінаційної схеми заданої логічної функції

Побудуємо реалізаційну схему немінімізованої функції (1.1). Для цього  необхідно використати:

  •  1 диз’юнктор (див. рис. 5.1)
  •  5 кон’юнкторів (див. рис. 5.2)
  •  3 інвертори (див. рис. 5.3)

Схема реалізації логічної функції представлена на рисунку 5.4

 

Рисунок 5.2 -  Коню’нктор     Рисунок 5.1 – Дизюнткор

  

Інвертори зображені на рис.  5.3:

Рисунок 5.3 – Інвертори:

Рисунок 5.4 – Комбінаційна схема заданої логічної функції

За даною схемою здійснена перевірка для нульового такту. Як результат на виході схеми отримаємо результуючу функцію Y = 0, а це означає, що побудова здійснена правильно.

 

5.2 Побудова комбінаційної схеми мінімізованої логічної функції

Функція складається з двох доданків. Побудова фрагменту схеми за першим доданком здійснюється таким чином: кон’юнктор (див. рис. 5.2)  з двома вхідними контактами підключається до відповідних шин аргументів Х1 та Х3. Вихідний контакт подається на диз’юнктор (див. рис. 5.1).  Другий доданок являє собою змінну, тому подаєм сигнал прямо з шини на диз’юнктор. Вихідний контакт диз’юнктора представляє результуючу функцію Y. При побудові комбінаційної схеми мінімізованої логічної функції використовуємо: 1 кон’юнктор (рис. 5.1), 1 дизюнктор. Логічна схема цієї функції показана на рис. 5.5

Рисунок 5.5 – Комбінаційна схема мінімізованої логічної функції

Перевірка виконана для 7го такту за таблицею істинності, побудованою в попередньому розділі.

5.3 Синтез логічної схеми в базис І – НІ

Логічний елемент І – НІ  - здійснює інвертування логічного добутку вхідних сигналів. Зображення елементу подане на рис. 5.6.

Рисунок 5.6 – Елемент І - НІ

Функція складається з двох доданків. Опишемо побудову схеми для першого доданку: елемент І - НІ (рис. 5.6) з двома вхідними контактами підключається до відповідних шин. Так само повторюємо процедуру для другого доданку. Вихідний контакт логічного елемента І – НІ (рис. 5.6) представляє  результуючу функцію Y.

Рисунок 5.7 – Логічна схема в базисі І – НІ

Перевірка на правильність роботи схеми виконана для 4-го такту.

5.4 Синтез логічної схеми в базис АБО – НІ

Логічний елемент АБО – НІ (рис 5.8) – здійснює інвертування суми вхідних сигналів.

Рисунок 5.8 – Логічний елемент АБО - НІ

Для синтезу логічної схеми в базисі або ні використовуємо: 3 елемента АБО – НІ (рис. 5.8), 3 інвертора (рис. 5.3)

Рисунок 5.9 – Логічна схема в базисі АБО – НІ

Перевірку працездатності схеми у базисі АБО – НІ виконано для 0го такту. Дана перевірка підтвердила правильність побудови схеми [5].


6 МОДЕЛЮВАННЯ РОБОТИ ЦИФРОВИХ СХЕМ ЗАСОБАМИ ЕОМ

В цьому розділі використовуємо пакети прикладних програм: OrCAD та PROTEUS, які в свою чергу використовуються для моделювання логічних функцій. Мета логічного моделювання полягає у виконані функції проектованої схеми без її фізичної реалізації. Перевірка на правильність моделювання може бути різною в залежності від рівня подання цифрової схеми в ЕОМ. Якщо, здійснюємо перевірку тільки значень логічної функції на виході схеми, то досить представити схему на рівні логічних елементів.

 

6.1 Аналіз особливостей моделювання схем в пакетах прикладних програм OrCAD, PROTEUS.

6.1.1 Робота з програмою Proteus.

Програма «Proteus»  - це потужний стимулятор електронних пристроїв. Пакет являє собою систему схемо технічного моделювання, яка базується на основі моделей електронних компонентів. Пакет складається з двох частин підпрограм ISISпрограма синтеза і моделювання електронних схем та ARES – програма розробки печатних плат. Моделювання є сильною стороною Proteus`a. Особливістю є те, що в ARES можна побачити 3D модель печатної плати, що надає можливість оцінити пристрій на стадії розробки.

6.1.2 Робота з програмою OrCAD

«OrCAD» – пакет прикладних програм для автоматизації  процесу проектування електронних схем, для створення електричних плат, а також для виробництва електронних схем та моделювання їх роботи. В OrCAD використовуються пакети прикладних програм: Capture, OrCAD Capture CIS, OrCAD Pspice, OrCAD Layout. Всі компоненти об'єднуються в бібліотеки, які входять до складу пакета. Вони називаються системними. Користувач може створювати нові описи компонентів і включати їх у вже існуючі бібліотеки. За бажанням можна організувати і свої власні бібліотеки. Вони називаються призначеними для користувача. До особливостей можна віднести закінченість окремих складових, які стали самостійними пакетами. 

6.2 Моделювання схем логічних функцій в пакетах прикладних програм

  1.  Моделювання схеми мінімізованої функції засобами Proteus

 

Будуємо схему логічної функції в базисі І – НІ. Для цього розташовуємо на робочому полі необхідні елементи шляхом вибору потрібних елементів у списку «DEVICES».  Для даного базису вибираємо елемент «NAND». Після розташування елементів потрібно їх з’єднати провідниками. Після з’єднання схеми потрібно приєднати генератор сигналів для перевірки схеми. В даній програмі він називається «Pattern Generator».  Щоб побачити результат роботи схеми потрібно встановити на кожний провідник давачі потенціалів. Вигляд схеми зображено на рисунку Б.1 (додаток Б).

Щоб задати параметри вхідних сигналів необхідно задати параметри елемента схеми Pattern Generator натиснувши на ньому лівою кнопкою миші після цього відкриється вікно параметрів даного елемента. У рядку «Clock Rate» встановлюємо частоту 1кГц (1kHz), а в рядку «Reset Rate» 16мс (16msec) і натискаємо ОК. Операція зображена на рисунку Б.2 (додаток Б).

Потім запускаємо моделювання схеми на виконання  та призупиняємо його. Таким чином у нас з’явиться вікно, що відображатиме роботу генератора імпульсів (Pattern Generator). Щоб створити сигнали,  які «Pattern Generator» буде подавати на схему потрібно поставити позначки у відповідних квадратиках. Результат проведеної даної операції проілюстровано на рисунку Б.3 (додаток Б).

Побачити результат, а саме графіки напруг на виводах схеми потрібно змоделювати графік часової діаграми. Для відображення графіків певних сигналів потрібно додати їх в список відображення. Для цього переходимо у головне меною програми в пункт «Graph» і вибираємо у випадаючому вікні «Add Trace» (додати графік). Щоб побачити змодельований графік потрібно перейти в головне меню GraphSimulate Graph, після цього в області відображення графіків отримаємо діаграму потенціалів, яка зображена на рисунку Б.4 (додаток Б).

Змоделюємо схему в базисі АБО – НІ. Алгоритм побудови, реалізації та перевірки схеми буде такий як і для базису І – НІ. Подамо схему логічної функції в базисі АБО – НІ (рис. Б.5, додаток Б).

Параметри генератора виставляємо,  як зображено на рисунку Б.2 (додаток Б). Сигнали, які «Pattern Generator»  буде подавати на схему виставляємо як зображено на рисунку Б.3 (додаток Б). Далі змоделюємо графік часової діаграми. Результат зображено на рисунку Б.6 (додаток Б).

Часові діаграми змодельовані завдяки базисам І – НІ та АБО – НІ збігаються, а це означає що, розрахунок проведений вірно.

6.2.2 Моделювання логічних схем в пакеті прикладних програм OrCAD

Змоделюємо мінімізовану логічну схему в ППП «OrCAD». Для цього створимо новий проект. З представлених нам проектів вибираємо «PC Board Wizard». Далі вибираєм бібліотеки з якими будемо працювати, а саме: ttl.olb та ttl.vhd. Далі в активному вікні схеми будуємо схему мінімізованої логічної функції (рис. 5.5). Побудову схеми здійснюємо шляхом вибору та розміщення елементів з бібліотеки на робочому листі. Далі з’єднуємо елементи за допомогою провідників. Для підключення схеми виставляємо вихідні і вхідні порти, та з’єднуємо їх з елементами схеми. Побудована схема мінімізованої логічної функції в «OrCAD» зображена на рисунку Б.9 (додаток Б).

Побудувавши схеми задаємо вхідні сигнали X1, X2, X3, X4 з таблиці істинності (табл. А.1, додаток А)  в діалоговому вікні «Interactive Stimulus». Задавши сигнали здійснюємо моделювання схеми. Для цього виконуємо команду «Run». Після цього як результат побачимо часову діаграму, яка показана на рис. Б.10 (додаток Б).

7 АПАРАТНА РЕАЛІЗАЦІЯ ЛОГІЧНОЇ ФУНКЦІЇ

В даному розділі мінімізовану логічну функцію (2.2) реалізуємо за допомогою мультиплксора. Для цього необхідно спчатку привести її до ДДНФ та ДКНФ.

7.1 Приведення логічної функції до досконалої кон’юнктивної нормальної форми

Логічну функцію приведемо до досконало-кон’юнктивної нормальної форми (ДКНФ). Для приведення до нормальних форм застосовуються два методи: метод розгортання та метод таблиць. [8] Приведемо функцію до ДКНФ за допомогою табличного методу.

Використаємо таблицю істинності заданої логічної функції (див. табл. А.1). У таблиці вибираємо ті такти, де логічна функція має значення «0». Записуємо ДКНФ як добуток елементарних сум, кожна з яких являє собою суму всіх аргументів, значення які  обираємо відповідно до їх значення на певному такті. Якщо елемент має значення «0», в суму записуємо його пряме значання, а якщо аргумент має значення «1» - в суму записується його інверсне значення. Функцію, приведену до ДКНФ зображено у формулі. 7.1:

7.2 Приведення логічної функції до досконалої диз’юнктивної нормальної форми

Приведемо логічну функцію до досконалої диз’юнктивної нормальної форми. В таблиці істинності (див. табл. А.1) вибираємо такти, де функція приймає значення «1».  Функцію записуєм як суму елементарних добутків аргументів для кожного такого такту, аргумент має пряме значення для даного такту, якщо він приймає значення 1, і навпаки інверсне значення аргумента записуємо для такту, де він приймає значення «0». Функцію, приведену до ДДНФ, зображено у формулі 7.2:

7.3  Реалізація логічної функції за допомогою мультиплексора

 Мультиплексор — пристрій, що має кілька сигнальних входів, один з яких вхід, а інший вихід. Дана програма дозволяє передати сигнал одного з входів на вихід. Реалізацію логічної функції за допомогою мультиплексора будем проводити у ППП.  

В нашому випадку позначимо адресні входи «А1», «А2», «А3», «А4», що відповідають змінним «Х1», «Х2»,«Х3»,«Х4». Та інформаційні входи «В1», «В2» ... «Вп».  Схема мультиплексора для немінімізованої функції (1.1) подана у додаток Г рисунку Г.1.

8 РОЗРОБКА ПРОГРАМИ МОДЕЛЮВАННЯ РЕЖИМІВ РОБОТИ СХЕМ

В цьому розділі виконується опис програми розрахунку значень логічної функції за аргументами. Проведено розрахунок логічної функції за складовими, мінімізованої функції та функцій в базисах І – НІ та АБО – НІ, використовуючи при цьому оператори мови Visual Basic for Applications.  Також виконується побудова алгоритму блок-схеми.

 

8.1 Розробка алгоритму блок-схеми та опис її роботи

 

В розділі виконується побудова алгоритму блок-схема. Для побудови блоку схеми «Sub raschet» виконуємо такі дії: задаємо початок, далі вказуємо такт по якому проведено розрахунок, потім записуємо змінні, після цього задаємо доданки, далі вказуємо Y та виконуємо мінімізацію функції і приведення її до базисів І – НІ та АБО – НІ та виводимо значення на екран.

Для побудови блок-схеми «Sub Макрос» задаємо початок, далі вводимо дані, описуємо цикли, умови, виводимо повідомлення. Вид побудованого алгоритму блок-схеми «Sub Sub Макрос» приведено на рисунку В.1 (додаток В).

          Алгоритм програми складається з таких блок-схем:

  Subпочаток алгоритму, тобто початок програми, відповідає за вхід у програму.

 B1:Q4діапазон вхідних даних, які містяться в діапазоні B1:Q4.

x=0  i=0 початкові значення для введення параметрів, задання сталих величин.  

i=i+1; b=b+1задається зовнішній і внутрішній цикл, до зовнішньго циклу присвоюється стовбець, який задається літерою «i», а до внутрішньго – рядок, який задається літерою «b». Внутрішній цикл вказує початкове значення, крок зміни значення параметра для кожного повторення.

Y<>Y2  ; x=0перший блок слугує для порівняння, а другий стосується умови виконання, та подальшої дії.  

B11:Q11діапазон вихідних даних, які містяться в комірці «B11:Q11».

End Subстосується завершення програми і закінчення алгоритму.

8.2  Програмна реалізація алгоритму

 

Представлення логічної функції використаємо завдяки редактору електронних таблиць Microsoft Excel та реалізуємо розв’язок функції за допомогою мови програмування VBA. Отже, на робочому листі  Excel задаємо набір значень для кожної змінної логічної функції у вигляді таблиці істинності. Результат проілюстровано на рисунку В.3 (додаток В).

Потім розробимо програму розрахунку вибраних значень логічної функції за аргументами з таблиці істинності. Запис програми «Макрос» виконується таким чином:  за допомогою оператора Sub записуємо назву, визначаючу процедуру.  Далі проводимо ввід даних. Після цього записуємо оператор While, в тілі циклу якого виставляємо умови. Якщо функція виконує умову «k = 1», то програма переходить до оператора, слідуючого за оператором «WendMsgBox», тобто виконується цикл. Якщо функція набирає значення «k = 0», то програма до даного значення додає одиницю і повторює цикл. Після цього подана команда «End Sub», яка означає завершення виконання програми. Результат запису «Макрос» зображено на рисунку В.4 (додаток В).

Потім проведемо розрахунок логічної функції заданого виразу за складовими, мінімізованої функції та функції в базисах І – НІ та АБО – НІ, використовуючи при цьому оператори мови VBA. Результат показано на рисунку В.5 (додаток В).

Розрахунки значень логічного виразу функції використовуються стандартні оператори мови VBA. З  результатів створеної програми та побудови таблиці істинності не мінімізованої, мінімізованої та функцій в базисах І – НІ та АБО – НІ видно, що значення логічної функції збігається на усіх 16 тактах 4 аргументів, а це свідчить про правильність роботи програми.


9
АНАЛІЗ РЕЗУЛЬТАТІВ РОБОТИ

Розглядаємо перевірку роботи схем по тактах, а також порівняння розрахунків проведених в попередніх розділах різними методами та засобами.

9.1 Перевірка схем по тактах

 

Щоб провести перевірку необхідно взяти відповідний такт з таблиці істинності (табл. А.1, додаток А), та подати дані сигнали на вхід схеми. Далі проводимо розрахунок через всі елементи схеми.

Рисунок 9.1 – Перевірка немінімізованої логічної функції по 0 такту

Рисунок 9.2 – Перевірка мінімізованої функції за 12 тактом

Рисунок 9.3 – Перевірка функції в базисі І – НІ за 4 тактом

Рисунок 9.4 – Перевірка функції в базисі АБО – НІ за 0 тактом

З отриманих результатів перевірки можемо спостерігати, що схеми працюють правильно, оскільки результати на виходах схеми збігаються із значеннями в таблиці істинності.

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

В курсовій роботі розглядається мінімізація логічних функцій за допомогою законів та аксіом алгебри логіки.  Для мінімізації за даним методом використовувались дистрибутивний закон та закон поглинання (див. табл. 1.1). Також як альтернативний метод розглядався метод мінімізації за допомогою діаграм Вейча. Далі розглядалися приведення логічних функцій до базисів І – НІ  та АБО – НІ. В даних приведеннях для перетворення застосовується правило  Де Моргана (див. табл. 1.1). Також окремо розглядались побудови таблиць істинності (див. табл. А1, А2 у додатку А) та синтез цифрових схем (див. рис.5.4, 5.5, 5.7, 5.9 в розділі 5). Попередні дії були потрібні для моделювання логічних функцій в пакетах прикладних програм. Зокрема моделювання виконувалось для таких ППП: Proteus (рис. Б.1, Б.2, Б.3, Б.4, Б.5, Б6, в додатку Б), OrCAD (рис. Б.7, Б.8, додаток Б). В середовищі Proteus виконувалось моделювання логічних функцій в базисах, отримані часові діаграми. В середовищі OrCAD проведена реалізація мінімізованої логічної функції з отриманням часових діаграм. В послідуючому розділі розглядалися приведення логічної функції до досконалої кон’юнктивної та диз’юнктивної нормальних форм. Приведення було здійснено за табличним методом. Потім була проведена реалізація логічної функції за допомогою мультиплексора. Побудовано схему підключення для мультиплексора (див. рис. 7.1). Потім було створено програму моделювання режимів роботи схем. В даній частині курсової роботи використовувалось середовище Microsoft Excel та була проведена робота в середовищі Visual Basic for Applications, а саме була створена програма розрахунку та макрос, побудовано алгоритм реалізації роботи програми Блок-схема (див. додаток В). В результаті ми отримали повністю проаналізовану логічну функцію.

10 ВИСНОВОК

Дана курсова робота надала можливість підтвердити знання які надали нам з курсу ОТ в ТП.
В даній курсовій роботі було ознайомлено з основними методами мінімізації логічних функцій, ознайомлено з перевагами та недоліками кожного з них. Здобуто навички роботи з такими програмами як OrCAD та Proteus. Оцінено переваги та недоліки кожної з них, а також особливості роботи з ними. Також було закріплено знання редактора електронних таблиць MS Excel та середовища Visual Basic for Ablications. Вміння працювати з цими програмами є дуже важливим, оскільки вони широко застосовуються в електроенергетиці.

Результатом даної курсової роботи є логічна функція, мінімізована за допомогою кількох методів, приведена до базисів. Логічні схеми роботи функції змодельовані за допомогою пакетів прикладних програм. Часові діаграми, отримані в усіх програмах зійшлися отже робимо висновок що функція змодельована вірно.


ПЕРЕЛІК ПОСИЛАНЬ

  1.  Каган, Б. М. Электронные вычислительные машины и системы : Учеб. пособие / Б. М. Каган. – 3-е изд., перераб. и доп. – М. : Энергоатомиздат, 1991. – 592 с. : ил.
  2.  Проектування дискретних пристроїв автоматики: Навч. посібник/ А. Ф. Кравчук, Л. Г. Віхрова. – К.: ІСДО, 1993. – 208 с.
  3.  Методи мінімізації логічних функцій. [Електронний ресурс]: Стаття. Режим доступу: http://referat.parta.ua/view/6234/.
  4.  Пакеты прикладных программ: Учеб. пособие для сред, проф. образования / Э. В. Фуфаев, Л. И. Фуфаева. –  М.:  Издательский центр «Академия», 2004. –352 с.
  5.  Малая математическая энциклопедия/ Э. Фрид., И. Пастор., И. Рейман., П. Ревес., И. Ружа. Издательсво академии наук Венгрии. Будапешт 1976 г. – 694 с.
  6.  А. Пєтух, Д. Обідник «Схемотехніка ЕОМ», Вінниця ВДТУ 1999.
  7.  Функціонально повні системи логічних елементів. [Електронний ресурс]. Режим доступу: http://my-system.ru/cyfrovaya-shemotehnika/page,2,112-funkcionalno-povni-sistemi-logichnix-elementiv.html.
  8.  Горбунов В. Л., Панфилов Д. И., Преонухин Д. А. Справочное пособие по микропроцессорам и микроЭВМ / Под ред. Л. Н. Преснухина. – М.: Высш. шк., 1988. – 272с.
  9.  Дослідження логічних елементів емітерно-зв’язаної логіки/ Мікросхемотехніка. [Електронний ресурс] – 2003. – 25 c. Режим доступу: http://www.bestreferat.ru/referat-57044.html.
  10.  Булеві функції [Електронний ресурс]: Стаття. Режим доступу: http://ptca.narod.ru/lec/lec4_4.html.
  11.  Лорд Н., Гирогосиан П.,Уэллетт Р. и др. Вычислительные машины будущего: Пер с. англ. 1987. – 193 с.
  12.  Бевз Світлана Володимирівна. Застосування  засобів інформаційної технології для дослідження роботи комбінаційних схем при вивченні дисципліни «Обчислювальна техніка в технологічних процесах»/ С.В. Бевз, В.В. Войтко, О.Є. Щелянська, В.І. Булега// Збірник праць міжнародної  науково-практичної  конференції «Інтернет-освіта –наука». – Вінниця, 1-5 жовтня 2012 р. – с. 83.


А

Таблиці істинності

Таблиця А.1 – Таблиця істинності

X1

X2

X3

X4

Y=X2+X1*

За діаграм. Вейча

0

0

0

0

0

0+0*1=0

0

1

0

0

0

1

0+0*1=0

0

2

0

0

1

0

0+0*0=0

0

3

0

0

1

1

0+0*0=0

0

4

0

1

0

0

1+0*1=1

1

5

0

1

0

1

1+0*1=1

1

6

0

1

1

0

1+0*0=1

1

7

0

1

1

1

1+0*0=1

1

8

1

0

0

0

0+1*1=1

1

9

1

0

0

1

0+1*1=1

1

10

1

0

1

0

0+1*0=0

0

11

1

0

1

1

0+1*0=0

0

12

1

1

0

0

1+1*1=1

1

13

1

1

0

1

1+1*1=1

1

14

1

1

1

0

1+1*0=1

1

15

1

1

1

1

1+1*0=1

1

Таблиця А.2 – Таблиця істинності для логічної функції у базисах І – НІ та АБО – НІ

X1

X2

X3

X4

Y=  (І-НІ)

Y=  (АБО-НІ)

0

0

0

0

0

=0

=0

1

0

0

0

1

=0

=0

2

0

0

1

0

=0

=0

3

0

0

1

1

=0

=0

4

0

1

0

0

=1

=1

5

0

1

0

1

=1

=1

6

0

1

1

0

=1

=1

7

0

1

1

1

=1

=1

8

1

0

0

0

=1

=1

9

1

0

0

1

=1

=1

10

1

0

1

0

=0

=0

11

1

0

1

1

=0

=0

12

1

1

0

0

=1

=1

13

1

1

0

1

=1

=1

14

1

1

1

0

=1

=1

15

1

1

1

1

=1

=1


Б

Моделювання цифрових схем

Рисунок Б.1 – Підключена схема в базисі І – НІ

Рисунок Б.2 – Встановлення параметрів елемента схеми Pattern Generator

Рисунок Б.3 – Вікно «VSM Pattern Generator»

Рисунок Б.4 – Повноекранний вид області графіків в базисі І- НІ

Рисунок Б.5 – Підключена схема в базисі АБО – НІ

Рисунок Б.6 – повно екранний вид області графіків в базисі АБО – НІ

Рисунок Б.7 – Схема реалізації мінімізованох логічної функції в пакеті прикладних програм OrCAD

Рисунок Б.8 – Часова діаграма мінімізованої логічнох функції

Часова діаграма схеми, що працює неправильно

В

Розробка програм моделювання

Рисунок В.1 – Блок-схема «Sub Макрос1»

Рисунок В.3 – Представлення логічних функцій в електронній таблиці MS - Excel

Рисунок В.4 – Розробка програми на мові VBA для моніторигну результатів розрахунку засобами функцій Excel

Рисунок В.5 – Розробка програми розрахунку логічного виразу на мові VBA

Г

Г.1 —Схема мультиплексора  для немінімізованої функції

Г.2  —  Схема часових діаграм


 

А также другие работы, которые могут Вас заинтересовать

11437. РЕАКЦИИ ОКИСЛЕНИЯ - ВОССТАНОВЛЕНИЯ 97.5 KB
  ЛАБОРАТОРНАЯ РАБОТА №8. РЕАКЦИИ ОКИСЛЕНИЯ ВОССТАНОВЛЕНИЯ Введение. Реакции связанные с изменением степени окисления атомов в молекулах реагирующих веществ называются окислительновосстановительными. Степень окисления условный электрический з
11438. ЭЛЕКТРОХИМИЧЕСКИЕ ПРОЦЕССЫ 108.5 KB
  ЛАБОРАТОРНАЯ РАБОТА №9 ЭЛЕКТРОХИМИЧЕСКИЕ ПРОЦЕССЫ Основные понятия Характерной особенностью окислительновосстановительных реакций является возможность пространственного разделения процессов окисления и восстановления т.е. проведения их на отдельных электр
11439. Знакомство с процессором командного языка ОС семейства Windows 106.5 KB
  Лабораторная работа № 1 : Знакомство с процессором командного языка ОС семейства Windows. Для того чтобы сдать лабораторную работу все примеры приводимые в теоретическом материале должны быть представлены преподавателю в виде созданных студентом bat – файлов. Вопросы: ...
11440. Командная консоль ОС семейства Windows 102 KB
  Лабораторная работа № 1 Командная консоль ОС семейства Windows Задания. Традиционно все имена идентификаторы объектов лабораторной работы должны содержать суффикс FIO например именование файла My_File_LAS.odt если ФИО студента – Луканов Алесандр Сергеевич. Оз...
11441. Форматирования текста 72 KB
  Лабораторная работа № 3 1.Форматирования текста Примеры форматирования текста приведены в файлах form_str.py и form_operat.py. 1Форматирование данных строкового типа производиться методами / функциями соответствующего модуля. Полное описание модуля можно вызвать командой ...
11442. Архитектура персонального компьютера. Классификация программного обеспечения 81.5 KB
  Лабораторная работа № 1 Тема: Архитектура персонального компьютера. Классификация программного обеспечения. Цель работы: изучить устройство персонального компьютера приобрести навыки в исследовании и описании аппаратного и программного обеспечения ЭВМ; изучить
11443. ИЗУЧЕНИЕ РАБОТЫ ТРЁХЭЛЕКТРОДНОЙ ЛАМПЫ 2.1 MB
  Лабораторная работа № 14 ИЗУЧЕНИЕ РАБОТЫ ТРЁХЭЛЕКТРОДНОЙ ЛАМПЫ ЦЕЛЬ РАБОТЫ: 1. Изучить практическое применение явления термоэлектронной эмиссии. 2. Овладеть методикой определения основных параметров трёхэлектродной лампы. ПРИБОРЫ: 1.Лампа 6Н7С или 6Н2П – 1 шт. ...
11444. Правила измерения физических величин и определение погрешностей измерений 61 KB
  Лабораторная работа №2 Правила измерения физических величин и определение погрешностей измерений Цель работы: изучить правила определения погрешностей измерений физических величин. Расчетные формулы ...
11445. Проверка закона сохранения энергии 109.5 KB
  Лабораторная работа №3 Проверка закона сохранения энергии Цель работы: проверка с помощью маятника Обербека закона сохранения энергии при поступательном и вращательном движении. Приборы и инструменты: маятник Обербека секундомер масштабная линейка штангенц