Архитектура ЭВМ Лекция 11: Организация ввода вывода. Интерфейсы передачи данных.
Введение в Ввод-Вывод
Обзор раздела: В данном разделе рассматривается важность ввода-вывода для функционирования компьютера и необходимость устройств ввода-вывода для взаимодействия с внешним миром.
Роль устройств ввода-вывода
- Устройства ввода-вывода, такие как клавиатура, монитор, принтер, и жесткий диск, позволяют компьютеру взаимодействовать с окружающим миром через шины.
Взаимодействие с внешним миром
- Для общения с внешним миром компьютер использует два инструмента: выполнение инструкций процессором и чтение/запись данных из памяти.
Механизмы общения
- Процессор работает с памятью через шину адреса и шину данных, а для общения с устройствами использует механизм прерываний.
Физическая Организация Процессоров
Обзор раздела: Рассмотрены физические аспекты процессоров, интерфейсы работы с памятью и устройствами через прерывания.
Физическая структура процессоров
- Процессор представляет собой микросхему со множеством ног для подключения к питанию (VCC/GND), интерфейсам памяти (шине адреса/данных) и управлению устройствами через прерывания.
Использование прерываний
- Механизм прерываний позволяет процессору получать сигналы от устройств. При возникновении прерывания процессор обрабатывает соответствующее событие.
Управление Устройствами через Прерывания
Обзор раздела: Обсуждается использование контроллера прерываний для эффективного управления большим количеством устройств через систему прерываний.
Работа контроллера прерываний
- Контроллер прерываний является ключевым элементом для связи процессора с физическими устройствами. Он обеспечивает брокерскую функцию при возникновении нескольких одновременных прерываний от различных устройств.
Управление большим количеством устройств
- Система прерываний позволяет эффективно подключать и контролировать большое количество устройств. Каждое устройство может генерировать свое прерывание, которое будет обработано контроллером.
Роль Чипсетов в Управлении Устройствами
Обзор раздела: Обсуждается роль чипсетов как ключевых компонентов системы для эффективного контроля за различными периферийными устройствами.
Функциональность чипсетов
Прерывания и контроллеры прерываний
Обзор раздела: В этом разделе обсуждается процесс работы с прерываниями и контроллерами прерываний в компьютерных системах.
Проблемы с типами прерываний
- Проблема неопределенности типов прерываний.
- Необходимость определения обработчика прерывания при генерации клавиатурного прерывания.
Работа контроллера прерываний
- Контроллер прерываний может быть источником данных на шине.
- Контроллер выставляет номер устройства для обработки прерывания.
Инструкции архитектуры x86
Обзор раздела: Здесь рассматриваются инструкции архитектуры x86 и их влияние на обработку прерываний.
Инструкции стыка
- Обсуждение инструкций стыка в архитектуре x86.
- Значение флагов интерактивности для процессора.
Управление контроллера прерываний
Обзор раздела: Этот раздел посвящен управлению контроллера прерываний и его взаимодействию с устройствами.
Управление через ноги
- Введение ног "inter" и "int_a" для управления контроллера.
- Описание последовательности действий при работе с контроллером.
Шина данных и ее функциональность
Обзор раздела: Разбор понятия шины данных, её роли и функциональности в компьютерных системах.
Шина как аппаратный интерфейс
- Определение шины как аппаратного интерфейса.
- Роль контроллера шины в координации устройств друг с другом.
Работа с клавиатурой и буфером
Обзор раздела: Анализ работы с клавиатурой, буфером, и передачей информации о нажатых клавишах через систему обработки прерываний.
Обработка нажатий клавиш
- Описание буфера клавиатуры для хранения состояния клавиш.
Обработчики прерываний и адресное пространство
Обзор раздела: В данном разделе рассматривается работа обработчиков прерываний и адресного пространства в контексте взаимодействия процессора с устройствами.
Работа обработчиков прерываний
- Процессы имеют свой набор обработчиков, каждый процесс имеет свой.
- Обработка прерывания: специальный возврат, остановка процессора, установка стекового фрейма.
- Обработчик прерывания получает управление, знает конфигурацию устройства и диапазон ввода-вывода.
Адресное пространство
- Взаимодействие с устройствами через memory maps.
- Дырка в адресах для ввода-вывода, отличная от памяти.
- Драйверы обслуживают доступ к памяти устройств через физическое адресное пространство.
Работа с физическими и виртуальными устройствами
Обзор раздела: Здесь рассматривается работа с драйверами как программами для работы с физическими или виртуальными устройствами.
Роль драйверов
- Драйвер - программа для работы с физическим или виртуальным устройством.
- Драйверы обеспечивают доступ к аппаратным ресурсам через адресное пространство.
Виртуальная память и мемориал яд
Обзор раздела: Здесь освещается концепция виртуальной памяти и мемориала яд операционной системы.
Важность виртуальной памяти
- Мемориал яд операционной системы отображает память процессов по определенным адресам.
Процессор и его функции
Обзор раздела: В этом разделе рассматривается процессор, его функции и влияние на управление сопротивлением.
Роль процессора
- Процессор - устройство, управляющее сопротивлением от нуля до бесконечности через линию.
- Сопротивление процессора изменяется от нуля до бесконечности в зависимости от напряжения на нем.
Управление сопротивлением
- Напряжение на процессоре соответствует уровням 0 и 1, что позволяет контролировать ток через него.
- Процессор может быть как проводником, так и изолятором в зависимости от установленного напряжения.
Взаимодействие между устройствами через UART
Обзор раздела: Рассматривается принцип работы UART для передачи данных между устройствами.
Основные концепции UART
- UART (Universal Asynchronous Receiver/Transmitter) - позволяет генерировать единицы и нули для обмена данными между устройствами.
- Для передачи данных между двумя устройствами необходимо соединить соответствующие ножки трансмиттера и ресивера.
Проблемы в работе UART
- Отсутствие общей частоты генераторов может вызвать проблемы при передаче данных через UART.
Объяснение протоколов передачи данных
Обзор раздела: В данном разделе рассматривается важность определения начала и конца байта при передаче данных, а также обсуждается использование контроля четности для обеспечения целостности передаваемой информации.
Определение начала и конца байта
- Подчеркивается значимость определения точного момента начала и конца байта при передаче данных.
- Различные схемы и инструменты используются для определения начала байта, включая контроль четности.
Контроль четности
- Контроль четности – дополнительный бит, гарантирующий целостность передаваемой информации.
- Цель контроля четности: обеспечить равное количество единиц в пакете данных для выявления ошибок.
Проблемы физического протокола
Обзор раздела: Здесь рассматриваются проблемы, возникающие при подключении устройств без знания физического протокола работы на определенных напряжениях.
Недостатки незнания физического протокола
- Подключение устройств без знания физического протокола может привести к повреждению портов или неисправностям.
- Устройства могут иметь разные виды сигналов, что требует знания спецификаций для корректного подключения.
Преобразование сигналов в аналоговые значения
Обзор раздела: Обсуждается процесс преобразования цифровых сигналов в аналоговые значения для управления устройствами, работающими на аналоговых сигналах.
Процесс модуляции цифровых сигналов
- Для управления аналоговыми устройствами используется модуляция цифровых сигналов.
- С помощью изменений ширины импульсов можно генерировать аналоговые сигналы на выходе.
Моделирование аналоговых значений
Обзор раздела: Здесь рассматривается процесс моделирования аналоговых значений на основе цифровых сигналов для создания сложных форм волн на выходе.
Моделирование сложных форм волн
- Используется изменение дьюти-цикла для создания сложных форм волн на выходе.
Интерфейс UART и его работа
Обзор раздела: В этом разделе рассматривается работа интерфейса UART и особенности взаимодействия устройств через него.
Работа с UART
- Проблемы с чистотой сигнала между устройствами без прямого контроля человека.
- Описание интерфейса из пяти контактов, где есть master и slave, определяющие параметры передачи данных.
- Мастер генерирует частоту на клоке, формируя сигнал для передачи данных slave устройству.
- Мастер задает частоту и передает биты данных по соответствующему проводу slave устройства.
Простой протокол обмена данными
Обзор раздела: Рассмотрение простого протокола обмена данными через две линии, представляющий эффективное решение для связи между устройствами.
Протокол обмена
- Сравнение использования трех линий в предыдущем протоколе и двух линий в новом для обмена данными.
- Устройства подключены к двум линиям serial data и serial clock для обмена информацией.
- Возможность каждого устройства генерировать 0 на линии данных без конфликтов.
Механика работы мастера и устройства
Обзор раздела: Объяснение процессов работы мастера и устройства при передаче данных через две линии связи.
Передача данных
- Мастер начинает передавать данные, опуская клок до ноля, а затем возвращая его после отправки битов информации.
- Устройство может задерживать клок для завершения операции чтения или записи данных.
Принцип работы устройств и протоколов связи
Обзор раздела: В данном разделе рассматривается работа устройств, расстояния между ними и протоколы связи.
Расстояния и Протоколы
- Устройства могут плавать, как гармошка, благодаря одинаковым расстояниям.
- Девайсы выбираются по протоколу, который указывает номер до следующего пакета.
- Каждый девайс может установить 0 или 1, обрабатывая биты.
- Сигнал остается неизменным до следующего клока на единицу.
Принцип работы аналого-цифровых преобразователей
Обзор раздела: Здесь рассматривается процесс аналого-цифрового преобразования сигналов.
Аналого-Цифровое Преобразование
- Необходимость оцифровки аналоговых сигналов для ввода в компьютер.
- АЦП работает через определение значений сигнала в заданный диапазон.
- Определение уровня напряжения физически через операционный усилитель.
Работа операционного усилителя в системе сравнения сигналов
Обзор раздела: Обсуждается функциональность операционного усилителя при сравнении двух сигналов.
Операционный Усилитель
- Операционный усилитель выдает максимальное значение напряжения при большем сигнале на входе A.
- Может быть использован для быстрого и точного определения отношения между двумя аналоговыми сигналами.
Определение значений через опорные напряжения
Обзор раздела: Рассмотрены методы определения значений через опорные напряжения.
Опорные Напряжения
- Установка опорных значений для получения конкретных результатов на выходе.
Обзор технологий и устройств
Обзор различных устройств и их функциональности.
Видеокарты и обработка данных
- Появление первых компьютеров и необходимость различных устройств для обработки данных.
- Роль видеокарт в выполнении примитивных операций быстро, но требование предварительной загрузки большого объема данных для эффективной работы.
Разнообразие устройств и скорости доступа к информации
- Различия в скоростях доступа к данным между устройствами, такими как модемы или жесткие диски, подчеркивают необходимость разнообразных шин.
- Введение множества шин с разными паттернами доступа к информации для оптимизации работы устройств.
Архитектура системной платы
Разделение на южный и северный мост.
Структура системной платы
- Деление чипсета на южный и северный мост для организации быстрых и медленных шин.
- Описание контроллера шины, способного организовывать взаимодействие с различными устройствами.
Протокол обмена данными
Эксклюзивное состояние кэш-памяти.
Управление состоянием кэшей
- Объяснение протокола эксклюзивного состояния кэшей для эффективного обмена данными без конфликтов.
- Четыре основных состояния кэш line: помещена в кэш, не модифицирована, модифицирована (грязная), эксклюзивная.
Управление процессором и памятью
Влияние внешних устройств на работу процессора.
Влияние внешних устройств
- Сложности возникающие при работе процессоров с внешними устройствами, такими как памятью.
- Управление кодом компьютера через BIOS и связь с операционной системой для эффективного функционирования всей системы.
Хранение данных на процессоре
Описание хранения данных на процессоре.
Хранение данных на процессоре
Микроконтроллер vs. Процессор
Обзор раздела: В данном разделе обсуждается различие между микроконтроллером и процессором, а также их функциональное назначение.
Различия между Микроконтроллером и Процессором
- Микроконтроллер - это микропроцессорное устройство, в то время как процессор - часть центрального процессора.
- При упоминании о процессоре речь идет о сепии, которую необходимо правильно подключить к соответствующему сокету, включая память устройства и периферийные устройства. В случае микроконтроллера или "м сию" говорим о законченном устройстве.
- Процессор может быть любым ядром, включая дополнительные real-time ядра, тогда как микросхемы контроллера представляют собой законченные устройства.
- Для работы с процессором необходимо правильно подключить его к соответствующему сокету и обеспечить соответствующее окружение для его функционирования.