Архитектура ЭВМ и периферийные устройства Системная организация ЭВМ и периферийные устройства В.П. Маркова, М.Б. Остапкевич, В.А. Перепелкин ostap@ssd.sscc.ru 2013/09/11 Содержание ● Системная организация ЭВМ шины, прерывания ● Периферийные устройства устройства ввода-вывода, хранения данных, интерфейса с пользователем ● Перспективы Часть 1. Системная организация ЭВМ Архитектура фон Неймана До шин. PDP-1. Первая системная шина. DEC PDP-8 / Omnibus ● ● Транзакции – операции на шине Подключено несколько устройств, одно из которых ведущее, остальные – ведомые Шины Система взаимосвязей процессора должна объединять основные устройства ЭВМ: ● Центральный процессор ● Память ● Модули ввода-вывода В современных ЭВМ используются шины (англ. bus, от лат. omnibus, «для всего») Классификация ● Для медленных/быстрых устройств ● Последовательная/параллельная ● Асинхронная/синхронная ● С одним ведущим/с многими ведущими ● По расстоянию: от нескольких см. до км. Типы шин ● Внутренняя шина, шина «процессор-память» (Front Side Bus, FSB) ● ● ● Высокие требования к производительности Системная шина (общая для памяти и устройств) ● Несколько сотен линий ● Выделяют шины адреса, данных и управления Шина ввода/вывода ● Небольшое число линий, но большой длины Реализация шин ● Механические аспекты ● ● ● ● Тип проводника, его толщина, взаимное расположение Конструкция разъемов Форма платы Электрические аспекты ● ● ● Напряжение на линиях, их сопротивление Скорость распространения сигнала Перекос сигнала, перекрёстная помеха Типы линий шин ● ● ● ● ● ● Управление транзакциями Статус Арбитраж Прерывания Тактирование и синхронизация Питание и «земля» ISA — Industrial Standard Architecture 1981 Разрядность: 8/16 Назначение: Подсоединение Плат-расширений к системной плате. Частота: 4.77-8МГц Синхронная, параллельная PCI (Peripheral Component Interconnect) 1993 Назначение: подсоединение плат-расширений к системной плате. Разрядность: 32/64 Скорость передачи: 133МБ/c (32 бита, 33 МГц), 533МБ/c (64 бита, 66 МГц) Синхронная шина, параллельная шина, пакетный режим передачи данных PCI / сигналы Земля, питание +5В, питание +3.3В AD(X) - Шина адреса/данных — 32 или 64 разряда CLK - Тактовый сигнал INT(X) — Прерывание FRAME — текущий цикл — фаза адреса или данных? SERR - Ошибка системная, четности RST - Сброс, четность IRDY - инициатор готов, TRDY — цель готова DEVCEL - Выбор устройства LOCK — управление блокировкой ресурсов на шине C/BE(x) - Команда/разрешение байта PAR - четность Компьютер на базе PCI Использованы шины: 1) PCI — быстрая, 2) ISA — более медленная, для старых плат расширения PCI-E (Peripheral Component Interconnect Express) Назначение: подсоединение плат-расширений к системной плате. Разрядность: 1-32 Скорость передачи по одному проводу: до 2 ГБ/сек. «Медленные» шины SPI RS485 I2C/TWI 1-wire X10 — — — — — до 100 МБ/сек до 10 МБ/сек — до 1200 м до 5 МБ/сек — до 7.6 м 16.3 КБ/сек — до 300 м 50/60 Б/сек Шины / I2C Inter-Integrated Circuit data bus ● ● ● последовательная, для медленных устройств с несколькими ведущими устройствами Частота: 100КГц (1982) 5МГц (2012) Vdd — питание SDA — serial data line SCL — serial clock line Шины / I2C / Временная диаграмма FSCL — частота колебаний SCL tLOW — продолжительность фазы цикла с низким сигналом tHIGH — продолжительность фазы цикла с высоким сигналом tSU;DAT — время установки сигнала данных tHD;DAT — время удержания сигнала данных tLV;ACK — время подтверждения правильности данных Шины / SPI SCLK — serial clock MOSI — master output slave input MISO — master input slave output SS — slave select Классификация ● Для медленных/быстрых устройств ● Последовательная/параллельная ● Асинхронная/синхронная ● С одним ведущим/с многими ведущими ● По расстоянию: от нескольких см. до км. Арбитраж шин ● ● ● Арбитраж – механизм выбора ведущего устройства (если претендентов несколько) Арбитр – устройство, выделяющее шину одному из запросивших устройств Приоритеты – механизм регуляции доступа устройств к шине ● Статические приоритеты – ● Возможна полная блокировка низкоприоритетных устройств Динамические приоритеты Схемы арбитража ● Централизованный арбитраж ● ● ● Имеется выделенный арбитр (центральный контроллер шины) Последовательный и параллельный арбитраж Децентрализованный арбитраж ● ● Каждое устройство участвует в выборе Схема устойчива к отказу устройств После шин. ● ● ● ● Шина — узкое место ВС, когда к ней подключаются много активных устройств с высоким быстродействием. Возможный выход — переход к быстродействующим коммутаторам Матричный коммутатор в SGI Octane (1997) — 7 портов, скорость каждого 1.2-1.6 ГБ/сек. PCI-E Работа с внешними устройствами ● Раздельные адресные пространства Ячейки памяти ● Порты Общее адресное пространство Ячейки памяти и порты mov dx, rs232_base[si] add dx, 5 In al, dx mov bx, 0b800h mov es, bx mov bx,0 mov ah, 1 mov es:[bx], ah Прерывания Прерывания Как обслужить внешнее устройство? 1) циклически опрашивать все устройства, 2) устройство посылает сигнал процессору. Прерывание - прекращение выполнения текущей команды или текущей последовательности команд для обработки некоторого события специальной программой - обработчиком прерывания, с последующим возвратом к выполнению прерванной программы. Событие может быть вызвано особой ситуацией, сложившейся при выполнении программы, или сигналом от внешнего устройства. Прерывание используется для быстрой реакции процессора на особые ситуации, возникающие при выполнении программы и взаимодействии с внешними устройствами. Приоритеты (фиксированные, циклические) Назначение и виды прерываний ● Устройство требует внимания Аппаратное прерывание: устройство → процессор ● В программе возникла ошибка Исключение: ● процессор → процессор Прикладная программа запрашивает выполнение системной функции Программное прерывание: программа → процессор Фазы обработки прерываний ● ● ● ● Останов программы Запоминание информации остановленной программы Инициирование и исполнение программы обработки прерывания Восстановление информации остановленной программы и возврат к ней Прерывания в 8086 Обработка прерываний в реальном режиме x86 ● Таблица векторов прерываний ● Обработчики прерываний BIOS ● Обработчики прерываний DOS Обработка многократных прерываний ● Последующие прерывания регистрируются, их обработка откладывается ● Прерывание внутри прерывания ● Приоритетная обработка, ● циклическая обработка. Часть 2. Периферийные устройства Периферийные устройства Обеспечивают: ●хранение данных; ●связь с внешней средой (с пользователями, с другими ЭВМ, с датчиками, с актуаторами). Классификации: ●по применению; ●по интерфейсу (к какой подключаются шине?); ●по принципам реализации устройства. Периферийные устройства / Классификация по применению ● Интерфейс с пользователем ● Хранение данных ● ● ● ● Взаимодействие с другими ВС и устройствами Ввод данных с датчиков, сенсоров/измерение параметров окружающей среды Вывод данных на актуаторы/управление оборудованием Специализированная обработка данных Периферийные устройства / Классификация для изложения в этой лекции ● Устройства ввода данных ● Устройства вывода данных ● Сетевые и интерфейсные устройства ● Устройства хранения данных ● Устройства интерфейса с пользователем ● Сопроцессоры, спецвычислители Устройства ввода данных ● АЦП ● Термометр ● Акселерометр ● Датчик влажности ● Гироскоп ● Датчик влаги ● GPS/Glonass/Galileo/Beidu ● Датчик освещенности ● Компас ● Барометр ● Датчик качества воздуха ● Датчик приближения ● Датчик переменного тока ● Датчик излучения ● Датчик ультразвуковой ● ● ● Устройство ввода видеоданных Датчик цвета Устройство ввода аудиоданных ● Сенсор звука ● Часы реального времени АЦП — аналого-цифровой преобразователь Преобразует напряжение на входе в двоичный код. Главные параметры: 1) Количество измерений за единицу времени (до 1 млрд. отсчетов/сек) 2) Разрядность (6-24 бит) АЦП с последовательным приближением АЦП с прямым преобразованием АЦП ADC161S626 Разрядность: 16 бит Отсчетов/с: 50000-250000 Потребляемая мощность: 10 мкВт (сон), 240 мкВт (10000отсчетов/с), 5.8 мВт (250000 отсчетов/с) Шина: SPI акселерометр ADXL345 Назначение: измерение ускорений Количество осей: 3 Шина: I2C, SPI Потребляемый ток: 23мкА / 0.1мкА Разрешение: 10-13 бит Диапазон: 16g гироскоп ITG3200 Назначение: измерение угловых скоростей Количество осей: 3 Шина: I2C Потребляемый ток: 6 мА / 5 мкА Разрешение: 16 бит Диапазон: ±2000°/сек Макс. скорость передачи: 400КГц Отсчетов в сек: 3.9-8000 Технологии и принципы в основе: MEMS (Micro-electromechanical structures), Coriolis Effect Адрес устройства: b110100X гироскоп ITG3200 датчик давления BMP085 Назначение: измерение давления Диапазон: 300-1100ГПа (-500 — 9000м над уровнем моря) Шина: I2C Макс. скорость передачи: 3.4МГц Потребляемый ток: 5мкА (при 1 отсчете/сек.) Устройства ввода данных ● АЦП ● Термометр ● Акселерометр ● Датчик влажности ● Гироскоп ● Датчик влаги ● GPS/Glonass/Galileo/Beidu ● Датчик освещенности ● Компас ● Барометр ● Датчик качества воздуха ● Датчик приближения ● Датчик переменного тока ● Датчик излучения ● Датчик ультразвуковой ● ● ● Устройство ввода видеоданных Датчик цвета Устройство ввода аудиоданных ● Сенсор звука ● Часы реального времени Устройства вывода данных ● Цифро-аналоговый преобразователь ● Реле ● Драйвер DC двигателя ● Драйвер шагового двигателя ЦАП — цифро-аналоговый преобразователь Преобразует двоичный код на входе в напряжение. Главные параметры: 1) Количество измерений за единицу времени 2) Разрядность R-2R resistor ladder: ЦАП DAC0830/DAC0832 Разрядность: 8 бит Время установки: 1 мкс Рабочие температуры: 0-+70C,-55-+125C драйвер двигателя Назначение: управление двигателем Количество двигателей: 2 щеточных или 1 шаговый Шина: I2C Реле Макс. напряжение: 250 В Макс. ток: 10 А Шина: - устройства хранения данных ● Дисковод гибких дисков ● Жесткий диск ● Твердотельная память (SSD) ● Накопитель на магнитной ленте ● Оптический привод ● Магнито-оптический привод ● Память на цилиндрических магнитных доменах жесткий диск 1956 — IBM RAMAC Емкость: 1МБ Геометрия: 50 2-футовых дисках цена за 1 МБ: $10000 2007 - Seagate Barracuda 7200.10 Емкость: 750ГБ Геометрия: 8 головок, 4 3.5-дюймовых диска средняя задержка: 4.16 мс Периферийные устройства / твердотельная память 1950-e — память на магнитных сердечниках С 1990-х — Flash память Kingston SV100S2D/32G Размер: 2.5'' Емкость: 32 ГБ Интерфейс: SATA Скорость чтения: 160 МБ/сек. Скорость записи: 70 МБ/сек. Потребляемая мощность: 1 Вт / 6.4Вт Периферийные устройства / сетевые и интерфейсные устройства Обеспечивают связь между ЭВМ и связь ЭВМ с периферийными устройствами ● ● ● ● Адаптер проводной сети (Ethernet, Infiniband, Myrinet) Адаптер беспроводной сети (RFID, NFC; Infrared; Bluetooth; RF 433 MHz, WiFi; Zigbee; WiMAX, LTE) Модем (dial-up, ADSL) Контроллер интерфейса (IDE, SATA, SCSI; USB, FireWire, LightPeak; RS232, RS485; CAN) Bluetooth shield Назначение: передача данных Интерфейс: UART serial (TTL) Скорость передачи: до 460КБ/сек. Дальность связи: до 10 м Zigbee shield Назначение: передача данных Скорость передачи: 20-900 КБ/сек. Дальность связи: до 50 м Достоинства: Низкая стоимость, малое энергопотребеление Периферийные устройства интерфейса с пользователем ● Дисплей ● Клавитура, ● Плоттер ● Мышь, ● Принтер матричный ● Touchpad, ● Термопринтер ● трек-болл ● Принтер лазерный ● джойстик ● Принтер струйный ● Звуковая плата ● Kinect ● Принтер специализированный Схема клавиатуры для ввода 16-ричных цифр Дисплей 1959-1961 — DEC PDP-1 в MIT, 512x512, CRT 1990 — NeXT computer — 1120×832, CRT 1973 — XEROX PARC Alto, CRT 2000 — IBM T220 - 3840x2400, LED Технологии: CRT, LCD, LED, OLED, микрозеркала Kinect Датчики глубины RGB камера Линейка микрофонов Сопроцессоры, спецвычислители 1987 — CAM-6 Плата для моделирования клеточных автоматов 256x256, 4 бита на клетку 1989 - Intel i80170NX ETANN Моделирование нейронных сетей (акселератор) 64 нейрона, 16 млрд. оп./сек. 2000-e — GPU (NVIDIA, ATI/AMD, S3, ZiiLab) Часть 3. Перспективы 3D печать Устройства ввода, основанные на получении и интерпретации энцефалограммы Устойчивое распознавание речи, жестов, Высокая адаптивность ПО, настройка на контексты, ситуации Ubiquitous Computing, Nomadic environments, Continuity Литература Гилмор Ч. - Введение в микропроцессорную технику. - М. - Мир. - 1984 Таненбаум Э. - Архитектура компьютера. - 4 издание. - М. - Питер. - 2003