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

Методичка ЛР

.pdf
Скачиваний:
37
Добавлен:
28.03.2015
Размер:
1.67 Mб
Скачать

3.Побудувати 16-входовий мультиплексор на базі п’яти 4-входових використовуючи каскадування.

Схему додати до звіту.

4.Дано: Чотири 4-бітних регістри вихідних значень та один 4-бітний регістр результату, за вмістом генератора випадкових чисел в регістр результату потрапляє значення одного з регістрів вихідних значень.

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

Схему додати до звіту.

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

Схему додати до звіту.

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

1.Дайте визначення мультиплексора.

2.Дайте визначення демультиплексора.

3.Поясніть каскадування демультиплексорів на прикладі.

31

Лабораторна робота 7

Тема: Використання елементів бібліотеки «Введення/виведення» Logisim при проектування комбінованих схем. Використання підсхем.

Мета: Дослідити можливості використання елементів бібліотеки «Введення/виведення» Logisim та підсхем при проектування комбінованих схем у середовищі Logisim.

Зміст роботи: Ознайомлення з основними елементами бібліотеки «Введення/виведення» та їх застосування в комбінованих схемах. Використання підсхем.

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

1-й етап – необхідно вивчити теоретичні відомості щодо основних елементів бібліотеки «Введення/виведення» та прийомів використання підсхем в

Logisim.

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

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

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

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

7-сегментний індикатор

Бібліотека: Введення/Виведення

Відображає значення восьми своїх однобітних входів. Сегменти або підсвічені кольором, або світло-сірого кольору залежно від вхідних даних. Відповідність така. (Виробники по-різному підводять входи до сегментів; відповідність, використане тут, засноване на індикаторі TIL321 від Texas Instruments.)

Контакти:

Північний край, перший зліва (вхід, розрядність дорівнює 1). Управляє середнім горизонтальним сегментом.

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

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

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

Південний край, перший зліва (вхід, розрядність дорівнює 1). Управляє нижнім вертикальним сегментом на лівій стороні.

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

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

32

Південний край, четвертий зліва (вхід, розрядність дорівнює 1). Управляє десятковою крапкою.

Світлодіодна матриця

Бібліотека: Введення/Виведення

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

Контакти

Інтерфейс доступу до компоненту варіюється залежно від значення атрибута Формат входу. Він має три можливі значення.

Стовпці входу розташовані уздовж південного краю компонента, один багатобітний вхід для кожного стовпця матриці. Кожен вхід має стільки бітів, скільки рядків у матриці; молодший біт відповідає південному пікселю стовпця. 1 вказує підсвітити відповідний піксель, а 0 - залишити його не підсвіченим. Якщо які-небудь біти в стовпці мають плаваюче значення, чи значення помилки, то всі пікселі в стовпці горять. Рядки входу розташовані уздовж західного краю компонента, один багатобітний вхід для кожного рядка матриці. Кожен вхід має стільки бітів, скільки стовпців у матриці; молодший біт відповідає правому пікселю рядка. 1 вказує підсвітити відповідний піксель, а 0 - залишити його не підсвічується. Якщо якінебудь біти в рядку мають плаваюче значення чи значення помилки, то всі пікселі в рядку горять.

Вибір Рядки/Стовпці. Два входи на західному краї компонента. Верхній багатобітний вхід має стільки бітів, скільки стовпців у матриці; молодший біт відповідає правому стовпчику. Нижній багатобітний вхід має стільки бітів, скільки рядків у матриці; молодший біт відповідає нижньому рядку. Якщо які-небудь біти будь-якого входу мають плаваюче значення чи значення помилки, то всі пікселі матриці горять. У нормальній ситуації піксель на перетині визначених рядка і стовпця горить, якщо значення біта відповідного стовпця на верхньому вході дорівнює 1, і значення біта відповідного рядка на нижньому вході дорівнює 1. Наприклад, для матриці 5x7, якщо на першому вході 01010, а на другому 0111010, то другий і четвертий стовпець горить для другого, третього, четвертого та шостого рядка; результат буде виглядати як пара знаків оклику.

Термінал

Бібліотека: Введення/Виведення

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

Підтримуються наступні керуючі послідовності:

Backspace (ASCII 8), яка видаляє останній символ в останньому рядку, якщо він не порожній;

перехід на наступний рядок (ASCII 10), яка переміщує курсор в початок наступного рядка, прокручуючи рядок, якщо необхідно;

подача сторінки (ASCII 12, друкується як Control-L), яка очищає екран.

33

Контакти

Західний край, верхній контакт (вхід, розрядність дорівнює 7). Дані – ASCII значення наступного символу, що вводиться в термінал.

Західний край, нижній контакт, відзначений трикутником (вхід, розрядність дорівнює 1). Тактовий вхід – коли спрацьовує при ненульовому значенні на контакті «Дозвіл» запису, поточне ASCII значення на вході «Дані» обробляється терміналом.

Південний край, лівий контакт (вхід, розрядність дорівнює 1). Дозвіл запису - коли значення дорівнює 1 (або плаває, або помилка), спрацьовування тактового входу буде призводити до обробки нового символу з входу «Дані». Тактовий вхід і вхід «Дані» ігноруються, коли значення на вході «Дозвіл запису» – 0.

Південний край, другий контакт зліва (вхід, розрядність дорівнює 1). Очищення – коли значення дорівнює 1, термінал очищається від всіх даних, і всі інші входи ігноруються.

Створення схем з використанням підсхем.

Створення схем. Кожен проект Logisim – фактично бібліотека схем. У своїй простій формі кожен проект має тільки одну схему (за замовчуванням звану "main"), але легко можна додати більше: виберіть Додати схему ... з меню Проект, а потім введіть будь-яку назву для нової схеми, яку ви хочете створити. Припустимо, ми хочемо побудувати мультиплексор 2-в- 1 з назвою "2:1 MUX". Після додавання схеми Logisim буде виглядати наступним чином.

У панелі провідника ви можете бачити, що проект тепер містить дві схеми, "main" і "2:1 MUX". Logisim зображує збільшувальне скло поверх значка схеми, що розглядається в даний момент; назва цієї схеми з'являється в заголовку вікна. Відредагувавши схему так, щоб вона виглядала як мультиплексор 2:1, ми отримаємо таку схему.

Тепер припустимо, що ми хочемо побудувати мультиплексор 4-в-1, використовуючи екземпляри нашого мультиплексора 2-в-1. Звичайно, спочатку ми створимо нову схему, яку

34

ми назвемо "4:1 MUX". Щоб додати мультиплексори 2-в-1 в нашу схему, ми натиснемо один раз на схему 2:1 MUX в панелі провідника, щоб вибрати її як інструмент, і потім ми можемо додавати її копії, що подаються у вигляді коробок, клацаючи на полотні.

Якщо ви клацнули два рази на схемі 2:1 MUX в панелі провідника, то замість цього вікно переключиться на редагування схеми 2:1 MUX. Після створення схеми ми отримаємо наступне.

Наша схема для мультиплексора 4-в-1 використовує три копії мультиплексора 2-в-1, кожна з яких зображена у вигляді чотирикутника з контактами уздовж країв. Контакти на цьому чотирикутнику відповідають вхідним і вихідним контактам у схемі 2:1 MUX. Два контакту на західному краї чотирикутника відповідають двом контактам, спрямованим на схід у схемі 2:1 MUX; контакт на східній стороні чотирикутника відповідає контакту схеми 2:1 MUX, спрямованого на захід (який є вихідним контактом); а контакт на південній стороні чотирикутника відповідає контакту схеми 2:1 MUX, спрямованого на північ. Порядок контактів на західній стороні чотирикутника відповідає їх порядку зверху вниз на кресленні підсхеми.

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

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

35

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

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

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

2.Спроектувати схему, яка б дозволяла вивести на термінал фразу «Hello world» (можливі декілька варіантів).

Схеми додати до звіту.

3.Побудувати схему з використанням підсхеми. Спочатку створити підсхему, надати їй назву селектор, потім використати її в основній схемі.

Підсхема:

Основна схема:

36

Проаналізувати роботу основної схеми, опис алгоритму роботи помістити у звіт. Схеми додати до звіту.

4. Спроектувати схему на базі восьми 8-бітних регістрів, мультиплексора, розгалужувача та 7-сегментного індикатора таким чином, щоб при введенні на обираючий вхід мультиплексора двійкового числа (від 0 до 1112 включно) на індикаторі відображувався його десятковий еквівалент.

Як додаткове завдання (необов’язкове для виконання) необхідно реалізувати схему з тих самих елементів з додавання керуємих буферів.

Схему додати до звіту.

37

Таблиця відповідності символів систем числення та ASCII.

38