Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Методичка ЛР

.pdf
Скачиваний:
49
Добавлен:
28.03.2015
Размер:
2 Мб
Скачать
☆

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

Атрибути інструментів

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

Наприклад припустимо, що ми хочемо створювати маленькі елементи І. Зараз, кожен раз, коли ми вибираємо інструмент елемент І, він створює великий елемент І. Але якщо ми змінюємо атрибут «Розмір елемента» відразу після вибору інструменту (до розміщення елемента І в схемі), то ми змінюємо атрибути для інструментів, так що надалі елементи І, додані за допомогою цього інструменту, будуть вузькими, а не широкими.

Тепер ми можемо вилучити два існуючих елементи І, і додати два нові елементи І на їхньому місці. На цей раз вони будуть вузькими. (Якщо Ви вирішили зменшити число входів до 3, то елемент І не буде мати вертикальне розширення на лівій стороні. Але Ви також повинні перемонтувати схему так, щоб дроти підходили до лівої сторони елемента І.)

11

Для деяких інструментів значок інструменту відображає деякі із значень атрибутів. Одним з таких прикладів є інструмент Контакт, чий значок розташований так, як зазначено в його атрибуті «Напрямок».

Хід виконання роботи (описується у звіті).

1.Вивчити теоретичну частину методичних вказівок.

2.Запустити програму Logisim.

3.Ознайомитись з інтерфейсом.

4.Побудувати схему «Виключне АБО» користуючись інструкцією, що міститься в теоретичних відомостях. У звіті відобразити роздруковану схему.

5.Самостійно побудувати схему за логічним рівнянням XY+ Y = 1. У звіт помістити роздруковану схему.

6.Дати відповіді на контрольні запитання та оформити звіт.

Контрольні запитання

1.В чому призначення програми Logisim?

2.Як роздрукувати готову схему?

3.У файлах з яким розширенням зберігаються проекти Logisim?

4.Як реалізується затримка в логічних елементах?

12

Лабораторна робота 2

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

Мета: Дослідити можливості проектування комбінаційних логічних схем у середовищі

Logisim.

Зміст роботи: Ознайомлення з основними методами та прийомами проектування, проектування тригерів.

Організаційні та методичні вказівки: Виконується в два етапи:

1-й етап – необхідно вивчити теоретичні відомості щодо основних прийомів проектування в Logisim, розібрати та спробувати методи автоматизації проектування. Результати описати у звіті.

2-й етап – виконати завдання.

Технічне забезпечення: ПК під ОС Windows, Logisim.

Час: 2 академічні години

Теоретичні відомості

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

Відкриття вікна комбінаційний аналіз

До основної частини модуля комбінаційний аналіз можна отримати доступ через єдине вікно з таким же ім'ям, воно дозволяє переглядати таблиці істинності та логічні вирази. Це вікно можна відкрити двома способами.

1) Через меню Вікно

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

проектів відкрито. Немає ніякого способу одночасно мати відкритими дві різні вікна аналізу.

2)Через меню Проект

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

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

При складанні логічних виразів, відповідних схемі, Logisim спочатку спробує побудувати логічні вирази, відповідні елементам на схемі. Але якщо схема використовує якісь компоненти, відмінні від логічних елементів (такі як мультиплексор), або якщо схема має більше ста рівнів в глибину (малоймовірно), то спливе діалогове вікно, яке повідомить Вам, що складання логічних виразів неможливе, і замість цього Logisim становитиме висловлювання на основі таблиці істинності, яка буде складена перебором всіх комбінацій значень на входах і зчитуванням значень з виходів.

Після аналізу схеми не залишається жодного постійного зв'язку між схемою і вікном «Комбінаційний аналіз». Тобто, зміни схеми не будуть відображені у вікні, і зміни в логічних виразах і/або таблиці істинності, зроблені у вікні, не будуть відображені в схемі.

13

Обмеження

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

комбінаційного аналізу не повинна використовуватися без розбору: використовуйте її тільки коли Ви впевнені, що схема, яку Ви аналізуєте, дійсно комбінаційна!

Logisim буде вносити зміни у вихідну схему, можливо несподівані: система комбінаційного аналізу вимагає, щоб кожен вхід і вихід мав унікальне ім'я, яке задовольняє правила для ідентифікаторів Java. (Коротко, кожен символ має бути літерою або цифрою, і першим символом повинна бути буква. Пробіли не допускаються!) Logisim намагається використовувати існуючі мітки контактів, або список замовчувань, якщо міток немає. Якщо існуюча мітка не відповідає правилам для Java ідентифікаторів, то Logisim спробує виділити припустиме ім'я з мітки, якщо це взагалі можливо.

До речі, порядок входів у таблиці істинності буде відповідати їх розташуванню зверху вниз в оригінальній схемі, і ніяк не пов'язаний з порядком їх проходження зліва направо. (Те ж саме відноситься і до порядку виходів).

Редагування таблиці істинності

При відкритті вікна комбінаційного аналізу Ви побачите, що воно складається з п'яти вкладок.

Вкладки Входи і виходи

Вкладка Входи дозволяє Вам переглядати і редагувати список входів. Щоб додати новий вхід, введіть його в поле внизу вкладки, і натисніть кнопку Додати. Якщо Ви хочете перейменувати існуючий вхід, виберіть його в списку в лівій верхній області вкладки, а потім введіть назву та натисніть Перейменувати.

Щоб видалити вхід, виберіть його зі списку і натисніть кнопку Видалити. Ви також можете змінювати порядок входів (який впливає на порядок стовпців у таблиці істинності і в побудованій схемі), використовуючи кнопки «Зрушити вгору» або «Зрушити вниз» на вибраному вході.

Всі дії відбиваються на таблиці істинності негайно.

Вкладка Виходи працює в точності так само, як вкладка Входи; звичайно, за винятком того, що вона працює зі списком виходів.

Вкладка Таблиця

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

Ви можете змінювати поточні значення, що входять в стовпці з виходами, натискаючи на цікавить значення. Значення будуть перемикатися між 0, 1, і x (означає "не важливо"). Кожне значення "не важливо" надає обчисленню мінімізованих виразів деяку гнучкість.

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

14

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

Якщо таблиця істинності заснована на існуючій схемі, то Ви можете побачити кілька рожевих квадратів на шпальтах з виходами з позначкою "!" в них. Вони відповідають помилкам, які сталися при розрахунку значення для цього рядка – або схема порушується, або на виході було значення помилки (яке відображається у вигляді червоного проводу на схемі Logisim). При наведенні мишки на таке значення повинна з'явиться підказка, що описує, який це був тип помилки. Як тільки Ви натиснете на значення помилки, Ви увійдете в цикл 0-1-x; повернутися назад можливості немає.

Створення виразів

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

Ви можете переглядати та редагувати вирази, використовуючи дві останні вкладки: Вираз і Мінімізація.

Вкладка Вираз

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

Трохи нижче списку з'явиться вираз, відформатований в досить загальноприйнятих позначеннях, де АБО представляється у вигляді додавання, І - як множення, а НЕ позначається рисою над тією частиною, для якої обчислюється НЕ.

Текстове поле нижче відображає ту ж інформацію у вигляді ASCII послідовності. Тут НЕ представляється як тильда ('~').

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

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

На додаток до множення і додавання, що позначає І та АБО, вираз, який Ви набираєте, може містити будь-який з логічних операторів C/Java, а також просто англійські слова самі по собі.

15

вищий

 

 

пріоритет

~, !, '

НЕ

 

 

 

(Відсутність символу), &, & &, AND

І

 

 

 

^, XOR

ВИКЛЮЧНЕ АБО

 

 

нижчий

 

АБО

пріоритет

+, |, | |, OR

 

Всі наведені нижче приклади - допустимі уявлення одного і того ж вираження. Крім

того, можна змішувати оператори.

 

 

a '(b + c)

 

 

! A & & (b | | c)

 

 

NOT a AND (b OR c)

 

Дужки в послідовностях AND'ов (або OR'ов або XOR'ов) не мають значення.

Вкладка Мінімізація

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

Якщо входів чотири або менше, то нижче списку з'явиться карта Карно, відповідна вихідній змінній. Ви можете клацати на карті Карно для зміни відповідних значень таблиці істинності. Карта Карно буде також показувати обрані в даний момент для мінімізованого виразу терми у вигляді суцільних напівпрозорих округлених прямокутників.

Нижче – саме мінімізований вираз, відформатований так само, як у вкладці Вираз. Якщо виходів більше чотирьох, то карта Карно не з'явиться, але мінімізований вираз все одно буде обчислено. (Logisim використовує метод Куайна - Мак-Класки для обчислення

16

мінімізованого вираження. Він еквівалентний карті Карно, але застосуємо до будь-якого числа вхідних змінних.)

Кнопка Встановити як вираз дозволяє Вам вибрати мінімізований вираз як вираз, що відповідає змінній.

Створення схеми

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

Коли Ви натиснете кнопку Побудувати схему, з'явиться діалогове вікно із запрошенням вибрати, в якому проекті і з якою назвою Ви хочете побудувати схему.

Якщо введете ім'я існуючої схеми, то ця схема буде замінена (після того, як Logisim попросить вас підтвердити, що Ви дійсно хочете це зробити).

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

Logisim не може побудувати використовує тільки І-НЕ схему для виразів, що містять будь-які оператори ВИКЛЮЧНЕ АБО. Ця опція буде відключена, якщо будь-які вихідні висловлювання містять ВИКЛЮЧНЕ АБО.

Хід виконання,

1. Вивчити теоретичний матеріал.

17

2. Створити новий проект під назвою Проект1. Розробити карту Карно, логічне рівняння та схему JK-тригеру відповідно до наступної таблиці істинності:

K

J

Qt

Qt+1

0

0

0

0

0

0

1

1

0

1

0

1

0

1

1

1

1

0

0

0

1

0

1

0

1

1

0

1

1

1

1

0

Поряд з логічною схемою помістити елемент JK-тригер. Перевірити і порівняти їхню роботу. Висновки, карту Карно, логічне рівняння і роздруківку схеми відобразити у звіті.

3. Створити новий проект під назвою Проект2. Розробити карту Карно, логічне рівняння та схему D-тригеру та його логічне рівняння відповідно до наступної таблиці істинності:

D

Qt

Qt+1

0

0

0

0

1

1

1

0

1

1

1

0

Поряд з логічною схемою помістити елемент D-тригер. Перевірити і порівняти їхню роботу. Висновки, карту Карно, логічне рівняння і роздруківку схеми відобразити у звіті.

Контрольні питання:

1.Як працює тригер?

2.В чому полягає різниця між JK-тригером та RS-тригером.

3.Побудуйте схему синхронного RS-тригера.

18

Лабораторна робота 3

Тема: Проектування та дослідження дешифраторів.

Мета: Дослідити можливості проектування лінійних, пірамідальних та прямокутних дешифраторів у середовищі Logisim.

Зміст роботи: Ознайомлення з основними методами та прийомами проектування дешифраторів. Візуалізація результатів проектування.

Організаційні та методичні вказівки: Виконується в два етапи:

1-й етап – необхідно вивчити теоретичні відомості, щодо основних прийомів проектування дешифраторів в Logisim.

2-й етап – виконати завдання.

Технічне забезпечення: ПК під ОС Windows, Logisim.

Час: 2 академічні години

Теоретичні відомості

1. Регістр

Поведінка:

Регістр зберігає одне багатобітне значення, яке відображається в шістнадцятковому коді всередині його прямокутника і видається на його вихід Q. Коли вказує тактовий вхід (зазначений трикутником на південному краї), значення, що зберігається в регістрі, змінюється в цей момент на значення на вході D. Коли конкретно тактовий вхід вказує цьому статися, настроюється атрибутом Спрацювання.

Вхід Скидання асинхронно скидає значення регістра на 0 (всі нулі), крім того, поки на вході Скидання 1, значення фіксоване на 0, незалежно від тактового входу.

Контакти:

Східний край, відзначений Q (вихід, розрядність відповідає атрибуту Біти даних) Видає значення, що зберігається в даний момент в регістрі.

Західний край, відзначений D (вхід, розрядність відповідає атрибуту Біти даних)

Вхід даних: у момент, коли значення на тактовій вході змінюється з 0 на 1, значення регістра змінюється на значення входу D.

Західний край, відзначений «en» (вхід, розрядність дорівнює 1). Включення: коли на цьому вході 0, спрацьовування тактового входу ігноруються. Поточне значення, як і раніше надходить на вихід. Спрацьовування тактового входу включаються, коли значення цього входу 1 або не визначено.

Південний край, відзначений трикутником (вхід, розрядність дорівнює 1). Тактовий вхід: у момент, коли значення на цьому вході змінюється з 0 на 1 (передній фронт), значення регістра оновлюється на значення входу D.

Південний край, відзначений 0 (вхід, розрядність дорівнює 1). Асинхронне скидання: якщо на цьому вході 0 або невизначене значення, то він не має ефекту. Поки на ньому 1, значення регістра фіксується на 0. Це відбувається асинхронно - тобто незалежно від поточного значення на тактовій вході. Поки на ньому 1, інші входи не мають ефекту.

Атрибути:

Коли компонент обраний, або вже доданий, комбінації від Alt-0 до Alt-9 змінюють його

атрибут Біти даних.

 

 

 

Біти даних

Розрядність значення, що зберігається в регістрі.

 

Спрацювання

Визначає, як обробляється

тактовий вхід. Значення Передній

 

 

фронт означає, що регістр

має оновлюватися в момент, коли

 

 

 

19

 

значення на тактовій вході змінюється з 0 на 1. Значення Задній

 

фронт означає, що він повинен оновлюватися, коли значення на

 

тактовій вході змінюється з 1 на 0. Значення Високий рівень

 

означає, що регістр має оновлюватися безперервно, поки на

 

тактовій вході 1. І значення Низький рівень означає, що він

 

повинен оновлюватися безперервно, поки на тактовій вході 0.

Мітка

Текст усередині мітки, прив'язаний до регістру.

Шрифт мітки

Шрифт, яким виконується мітка.

Поведінка Інструменту «Натискання»:

Натискання на регістрі переводить фокус введення клавіатури на регістр (це відображається червоним прямокутником), і введення шістнадцяткових цифр буде міняти значення, що зберігається в регістрі.

2. Дешифратор

Поведінка:

Видає 1 строго на одному з виходів (на якому з виходів буде 1, залежить від значення, прийнятого в даний момент на вході).

Контакти: (передбачається, що компонент спрямований на схід, положення вибираючого входу - знизу/ліворуч).

Східний край, змінна кількість (виходи, розрядність дорівнює 1). Виходи, пронумеровані з 0 починаючи з півночі. Кожен з виходів може нести 1, якщо його номер збігається зі значенням, прийнятим в даний момент на вибираючому вході на півдні, в іншому випадку значення на його виході буде або нульове, або плаваюче, залежно від значення атрибута «Три стану». Якщо вибираючий вхід містить невизначені біти, то значення на всіх виходах будуть плаваючими.

Південний край, ліва сторона (вхід, розрядність дорівнює 1). Дозволити: коли 0, на всіх виходах плаваючі біти (або нулі), незалежно від значення на вибираючому вході.

Південний край, права сторона, відзначений сірим колом (вхід, розрядність відповідає атрибуту «вибираючі біти»). Вибираючий вхід: значення на даному вході визначає, на якому з виходів буде 1.

Атрибути:

Коли компонент обраний, або вже доданий, клавіші від 1 до 4 змінюють його атрибут вибираючі біти, а клавіші зі стрілками змінюють його атрибут Напрямок.

Напрямок Напрямок компонента (що визначає, на якій стороні виходи).

Положення

 

вибираючого входу

Положення вибирає і дозволяє входи щодо компонента.

Вибираючі біти

Розрядність вибирає входи компонента на його південному

 

краї. Кількість виходів для декодера буде дорівнює 2n, де n

 

= Вибіраючі біти.

Три стани?

Визначає, повинні значення на невибраних виходах бути

 

плаваючими (Так) або нулями (Ні).

На відключеному

 

виході

Визначає, яким повинен бути кожен біт виходів, коли

 

компонент вимкнений (тобто коли на контакті Дозволити -

 

0). Існують варіанти "нуль" і "плаваюче"; в останньому

 

випадку виходи фактично відключені від усіх інших

 

контактів.

 

20