Вы находитесь на странице: 1из 17

МИНИСТЕРСТВО НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ РОССИЙСКОЙ

ФЕДЕРАЦИИ
Федеральное государственное автономное образовательное учреждение высшего
образования
«Дальневосточный федеральный университет»
(ДВФУ)

Институт математики и компьютерных технологий


Департамент информационных и компьютерных систем

ОТЧЕТ
по лабораторной работе номер №7
по дисциплине «Архитектура вычислительных систем»
Тема: «Устройства ввода и вывода»

Выполнил студент группы Б9122-


09.03.03пиэ
А. Р. Клименко

Проверил ст. преподаватель


Д. А. Бушко

зачтено/не зачтено

г. Владивосток
2023
Постановка задачи
Задание 1. Спроектировать в виде отдельной схемы комбинационное
устройство, принимающее на входе 4-битное значение, и имеющее семь
однобитных выходов. При подключении к выходам 7-сегментного
индикатора, он должен отображать шестнадцатеричное представление
значения на входе. Допустимо реализовать устройство на логических
элементах или на основе ПЗУ. Отредактируйте в Logisim внешний вид
подсхемы (в частности, расположение выходных контактов) таким образом,
чтобы 7-сегментный индикатор мог подключаться к выходам подсхемы
вообще без проводов, но при этом индикатор и подсхема не должны
перекрываться.
Задание 2. Спроектировать комбинационное устройство,
принимающее на входе беззнаковое 16-разрядное значение, и выводящее его
десятичное представление на пять 7-сегментных индикаторов, каждый из
которых подключен с помощью устройства из задания 1.
Задание 3. Спроектировать устройство для реализации следующей
ситуации. Имеется два 16-разрядных регистра. Пользователь имеет в
распоряжении четыре кнопки. Нажимая на первую или вторую, пользователь
уменьшает или увеличивает значение первого регистра на значение второго
регистра. Нажимая на третью или четвёртую кнопки, пользователь
уменьшает или увеличивает значение второго регистра в 10 раз. Начальное
значение второго регистра — 1, и оно не может опуститься ниже этого
значения. Кнопки должны иметь осмысленные метки. Содержимое регистров
отображается с помощью устройств из задания 2. Для арифметических
действий допустимо использовать любые компоненты из библиотеки
Logisim. Обратите внимание, что это устройство не требует наличия
тактового генератора — тактовые импульсы для регистров генерируются
нажатием кнопок.
Задание 4. Спроектировать устройство, выводящее на светодиодную
матрицу размером 32x32 какое-либо осмысленное изображение,
предварительно записанное в ПЗУ.
Задание 5. Спроектировать устройство, выводящее на светодиодную
матрицу размером 32x32 «белый шум» — случайные значения с выхода
компонента «Генератор случайных чисел» из библиотеки «Память».
Задание 6. Спроектировать устройство, реализующее совместный
доступ устройств ввода и вывода к ОЗУ. Разрядность адреса ОЗУ — 5 битов,
разрядность данных — 7 битов. По нечётным тактам в ячейку ОЗУ со
случайным адресом (сгенерированным генератором случайных чисел)
записывается ASCII код символа из буфера компонента
«Клавиатура», причём если буфер пуст (на выходе компонента —
значение «0»), то запись не происходит. По чётным тактам происходит

вывод содержимого ОЗУ на светодиодную матрицу размером 7x32 с


помощью развёртки, то есть каждый чётный такт — следующая строка точек.
Задание 7. Спроектировать устройство, принимающее вводимые
пользователем с клавиатуры символы, определённым образом
обрабатывающее их, и выводящее на терминал. Алгоритм обработки указан в
таблице 3.10. Вариант определяется по последней цифре номера студента в
списке группы. Подразумевается, что символы, для которых таблицей не
предусмотрена обработка, выводятся без изменений.
Выполнение работы

Задание 1. Спроектировать в виде отдельной схемы комбинационное


устройство, принимающее на входе 4-битное значение, и имеющее семь
однобитных выходов. При подключении к выходам 7-сегментного
индикатора, он должен отображать шестнадцатеричное представление
значения на входе. Допустимо реализовать устройство на логических
элементах или на основе ПЗУ. Отредактируйте в Logisim внешний вид
подсхемы (в частности, расположение выходных контактов) таким образом,
чтобы 7-сегментный индикатор мог подключаться к выходам подсхемы
вообще без проводов, но при этом индикатор и подсхема не должны
перекрываться.

В ходе выполнения задания было создано комбинационное устройство,


предназначенное для преобразования 4-битного значения в
шестнадцатеричное представление для отображения на 7-сегментном
индикаторе. Для достижения этой цели были предприняты следующие шаги:
1. Создание комбинационного устройства:
 В Logisim был создан новый проект, в который было добавлено
комбинационное устройство.
 Входы для 4-битного значения были добавлены и подключены к
комбинационному блоку.
2. Реализация логики преобразования:
 Внутри комбинационного блока была реализована логика
преобразования 4-битного значения в шестнадцатеричное
представление. Использовались логические элементы, такие как
AND, OR, NOT, для достижения необходимого функционала.
3. Добавление выходов для 7-сегментного индикатора:
 Создано восемь однобитных выходов, соответствующих
сегментам 7-сегментного индикатора.
4. Подключение к 7-сегментному индикатору:
 Размещен 7-сегментный индикатор на схеме, и выходы
комбинационного блока были подключены к соответствующим
входам индикатора.
5. Тестирование:
 Схема была протестирована, подавая различные 4-битные
значения на вход и наблюдая за соответствующим отображением
на 7-сегментном индикаторе.
Часть комбинационного устройства для задания 1 представлена на
рисунке 1.

Рисунок 1 – Часть комбинационного устройства для задания 1


Полученная схема представлена на рисунке 2.

Рисунок 2 – Схема из задания 1

Задание 2. Спроектировать комбинационное устройство,


принимающее на входе беззнаковое 16-разрядное значение, и выводящее его
десятичное представление на пять 7-сегментных индикаторов, каждый из
которых подключен с помощью устройства из задания 1.
1. Определение входов и выходов:
 Вход: 16-разрядное беззнаковое значение.
 Выход: Сигналы для управления пятью 7-сегментными
индикаторами.
2. Разработка алгоритма:
 Определен алгоритм преобразования 16-разрядного значения в
десятичное представление, включающий в себя операции
деления на 10 и извлечения остатка.
3. Проектирование логики:
 Использованы логические элементы для реализации алгоритма.
Процесс разбит на подзадачи, включая деление, извлечение
остатка и управление 7-сегментными индикаторами.
4. Проектирование схемы с 7-сегментными индикаторами:
 Для каждого из пяти 7-сегментных индикаторов применено
устройство, например, дешифратор из задания 1, для
отображения соответствующей цифры десятичной системы.
5. Сборка и подключение:
 Логические элементы собраны в единую схему. Входы и выходы
подключены так, чтобы обеспечить правильное
функционирование устройства.
6. Тестирование:
 Проведено тестирование на различных значениях входных
данных с целью подтверждения правильности преобразования.
Убедились в корректности работы устройства.

Полученное устройство показано на рисунке 7.

Рисунок 3 – Схема из задания 2


Задание 3. Спроектировать устройство для реализации следующей
ситуации. Имеется два 16-разрядных регистра. Пользователь имеет в
распоряжении четыре кнопки. Нажимая на первую или вторую, пользователь
уменьшает или увеличивает значение первого регистра на значение второго
регистра. Нажимая на третью или четвёртую кнопки, пользователь
уменьшает или увеличивает значение второго регистра в 10 раз. Начальное
значение второго регистра — 1, и оно не может опуститься ниже этого
значения. Кнопки должны иметь осмысленные метки. Содержимое регистров
отображается с помощью устройств из задания 2. Для арифметических
действий допустимо использовать любые компоненты из библиотеки
Logisim. Обратите внимание, что это устройство не требует наличия
тактового генератора — тактовые импульсы для регистров генерируются
нажатием кнопок.
Для реализации задания были использованы следующие компоненты и
этапы проектирования:
1. Выбор компонентов:
 В качестве основных элементов использовались два 16-
разрядных регистра для хранения значений, а также
арифметические блоки для выполнения операций уменьшения,
увеличения и умножения/деления на 10.
2. Подключение устройств из задания 2:
 Для отображения содержимого регистров были использованы
устройства из задания 2, спроектированные для вывода
десятичных значений на 7-сегментные индикаторы.
3. Добавление кнопок:
 Реализованы четыре кнопки с метками:
 "Прибавить".
 "Вычесть".
 "Умножить на 10".
 "Разделить на 10".
4. Проектирование логики:
 Нажатие на первую или вторую кнопку влечет выполнение
операций уменьшения или увеличения значения первого регистра
на значение второго.
 Нажатие на третью или четвертую кнопку приводит к
выполнению операций уменьшения или увеличения значения
второго регистра в 10 раз.
5. Управление регистрами:
 Для управления регистрами использовались соответствующие
блоки, обеспечивающие корректное выполнение арифметических
операций.
6. Проверка на минимальное значение:
 Внедрена логика, предотвращающая уменьшение значения
второго регистра ниже 1.
7. Тестирование:
 Устройство было подвергнуто тестированию с использованием
различных значений, чтобы удостовериться в его корректной
работе при нажатии каждой из кнопок.
Часть созданного устройства представлено на рисунке 4.
Рисунок 4 – Часть схемы из задания 3.

Задание 4. Спроектировать устройство, выводящее на светодиодную


матрицу размером 32x32 какое-либо осмысленное изображение,
предварительно записанное в ПЗУ.
1.
 Вход:
 ПЗУ с предварительно записанным изображением.
 Выход:
 Сигналы для управления светодиодной матрицей размером
32x32.
2. Подготовка ПЗУ:
 Запись осмысленного изображения в ПЗУ. Разбиение
изображения на данные для каждого светодиода.
3. Проектирование логики:
 Использование логических элементов для управления
светодиодной матрицей в соответствии с данными из ПЗУ.
4. Проектирование схемы с светодиодной матрицей:
 Использование устройства для светодиодной матрицы размером
32x32. Подключение каждого светодиода к соответствующему
биту данных из ПЗУ.
5. Сборка и подключение:
 Сборка логических элементов в единую схему. Подключение
входов (данные из ПЗУ) и выходов (светодиодная матрица) для
обеспечения правильной отрисовки изображения.
Полученная схема на рисунке 5.

Рисунок 5 – схема из задания 4

Задание 5. Спроектировать устройство, выводящее на светодиодную


матрицу размером 32x32 «белый шум» — случайные значения с выхода
компонента «Генератор случайных чисел» из библиотеки «Память».
1. Проектирование логики:
 Использование выходных случайных значений из генератора для
управления состоянием светодиодной матрицы. Каждое
светодиод принимает случайное значение, через декодер
получающий на вход случайные числа, создавая эффект "белого
шума".
2. Проектирование схемы с светодиодной матрицей:
 Использование устройства для светодиодной матрицы размером
32x32.
3. Сборка и подключение:
 Сборка логических элементов в единую схему. Подключение
входов (генератор случайных чисел) и выходов (светодиодная
матрица) для создания эффекта "белого шума".
Полученное устройство показано на рисунке 6.
Рисунок 6 – Схема из задания 6.
Задание 6. Спроектировать устройство, реализующее совместный
доступ устройств ввода и вывода к ОЗУ. Разрядность адреса ОЗУ — 5 битов,
разрядность данных — 7 битов. По нечётным тактам в ячейку ОЗУ со
случайным адресом (сгенерированным генератором случайных чисел)
записывается ASCII код символа из буфера компонента
«Клавиатура», причём если буфер пуст (на выходе компонента —
значение «0»), то запись не происходит. По чётным тактам происходит
вывод содержимого ОЗУ на светодиодную матрицу размером 7x32 с
помощью развёртки, то есть каждый чётный такт — следующая строка точек.

1. Определение входов и выходов:


 Вход:
 Генератор случайных чисел.
 Клавиатура (буфер компонента "Клавиатура").
 Выход:
 ОЗУ (память) с адресами длиной 5 бит и данными длиной 7
бит.
 Сигналы для управления светодиодной матрицей размером
7x32.
2. Проектирование логики:
 На нечётных тактах проверка буфера клавиатуры. Если буфер не
пуст (не равен 0), то записывается ASCII код символа в
случайную ячейку ОЗУ сгенерированным адресом.
 На чётных тактах происходит вывод содержимого ОЗУ на
светодиодную матрицу, используя развёртку (каждый чётный
такт — следующая строка точек).
3. Проектирование схемы:
 Использование устройства ОЗУ с 5-битными адресами и 7-
битными данными.
 Светодиодная матрица размером 7x32 с развёрткой.
4. Сборка и подключение:
 Сборка логических элементов в единую схему. Подключение
входов (генератор случайных чисел, буфер клавиатуры) и
выходов (ОЗУ, светодиодная матрица) для обеспечения
корректной работы устройства.
5. Тестирование:
 Тестирование записи в ОЗУ при наличии данных в буфере
клавиатуры и вывода содержимого ОЗУ на светодиодную
матрицу.
Полученное устройство представлено на рисунке 7.

Рисунок 7 – Схема из задания 7.

Задание 7. Спроектировать устройство, принимающее вводимые


пользователем с клавиатуры символы, определённым образом
обрабатывающее их, и выводящее на терминал. Алгоритм обработки указан в
таблице 3.10. Вариант определяется по последней цифре номера студента в
списке группы. Подразумевается, что символы, для которых таблицей не
предусмотрена обработка, выводятся без изменений
Вариант 4: не пропускать все символы.
1. Определение входов и выходов:
 Вход:
 Клавиатура (ввод символов от пользователя).
 Выход:
 Терминал (вывод обработанных символов).
2. Проектирование логики:
 Использование компонента "Компаратор" для определения
принадлежности введенного символа к определенной группе
(прописные и строчные буквы, цифры, специальные символы) на
основе таблицы 3.10.
3. Проектирование схемы с компаратором:
 Использование компонента "Компаратор" для сравнения 7-
битных ASCII кодов символов с определенными диапазонами,
соответствующими различным группам символов.
4. Сборка и подключение:
 Сборка логических элементов в единую схему. Подключение
входа (Клавиатура) и выхода (Терминал) для обработки и вывода
символов.
5. Тестирование:
 Тестирование наличия связи между Клавиатурой и Терминалом,
а также проверка корректной обработки и вывода символов.
Часть схемы комбинационного устройства, которое обрабатывает
семибайтные значения показана на рисунке 8.
Рисунок 8 – Часть комбинационного устройства для задания 7.
В итоге получили устройство, которое обрабатывает значения из
клавиатуры. Устройство показано на рисунке 9.

Рисунок 9 – Устройство из задания 7


Вывод
Тема устройства ввода-вывода охватывает разнообразные компоненты,
обеспечивающие взаимодействие между компьютером и внешними
устройствами. В ходе наших исследований мы ознакомились со следующими
ключевыми элементами:
1. Клавиатура:
 Устройство ввода, позволяющее пользователям вводить символы
и команды.
 Используется для написания текста, управления приложениями и
ввода различных команд.
2. Светодиодная матрица:
 Устройство вывода, представляющее собой сетку светодиодов.
 Применяется для отображения графической информации,
включая текст, изображения или визуализацию данных.
3. Терминал:
 Устройство вывода, предназначенное для отображения текстовой
информации.
 Используется для вывода результатов обработки данных и
взаимодействия с пользователем через текстовый интерфейс.
4. Кнопка:
 Устройство ввода, представляющее собой механическую кнопку.
 Используется для передачи сигнала о нажатии, что может
служить событием в программе или интерфейсе.
Такие устройства обеспечивают разностороннюю функциональность и
позволяют пользователям эффективно взаимодействовать с компьютерными
системами. Комбинированное применение этих устройств обеспечивает
богатый опыт использования и поддерживает различные сценарии ввода и
вывода данных.

Вам также может понравиться