- •Глава 1. Предисловие Основные принципы построения вычислительных машин и систем
- •Пример современной многоуровневой вычислительной машины с шестью уровнями
- •Уровни детализации структуры вычислительной машины
- •Принципы построения вычислительной машины
- •Принцип двоичного кодирования
- •Принцип программного управления
- •Принцип однородности памяти
- •Принцип адресности
- •Структура фон-неймановской архитектуры вычислительной машины
- •Типы структур вычислительных машин и систем
- •Структуры вычислительных машин
- •Структуры вычислительных систем
- •Перспективы совершенствования архитектуры вм и вс
- •Технологические и экономические аспекты
- •Тенденции развития больших интегральных схем
- •Перспективные направления исследований в области архитектуры
- •Глава 2. Цифровой логический уровень
- •Представление информации в вычислительных системах
- •Представление числовых данных в вм.
- •Числа в форме с фиксированной точкой.
- •Числа в форме с плавающей точкой
- •Размещение числовых данных в памяти
- •Представление нечисловой информации в вм
- •Символьная информация
- •Видеоинформация
- •Аудиоинформация
- •Система кодирования чисел.
- •Прямой код.
- •Обратный код.
- •Модифицированные коды.
- •Код с исправлением ошибок
- •Коды Хемминга
- •Физическое представление информации в вм.
- •Вентили, интегральные схемы.
- •Основные элементы эвм
- •Триггер.
- •Сумматоры
- •Тактовые генераторы.
- •Микросхемы процессоров и шины
- •Микросхемы процессоров. Цоколевка типичного цп
- •Архитектура и набор команд.
- •Типы процессоров
- •Регистры процессора
- •Типы шин Системные шины. Локальные шины
- •Системные шины
- •Локальные шины
- •Иерархия шин
- •Вычислительная машина с одной шиной
- •Вычислительная машина с двумя видами шин.
- •Вычислительная машина с тремя видами шин
- •Арбитраж шин
- •Принципы работы шины
- •Глава 3 Функциональная организация фон - неймановской вычислительной машины
- •Функциональная схема фон-неймановской вычислительной машины
- •Узлы уу
- •Узлы алу
- •Основная память.
- •Модуль ввода/вывода
- •Цикл команды.
- •Пример выполнения программы.
- •Система прерываний.
- •Глава 4. Память.
- •Организация памяти.
- •Основные принципы.
- •Основные технические характеристики зу.
- •Иерархическая структура памяти.
- •Основная память.
- •Классификация устройств основной памяти.
- •Блочная организация основной памяти
- •Организация микросхем памяти
- •Режимы работы памяти.
- •Основные запоминающие устройства
- •Стековая память
- •Ассоциативная память
- •Полностью ассоциативная кэш-память.
- •Постоянное запоминающее устройство
- •Виртуальная память
- •Понятие виртуальной памяти
- •Страничная организация памяти
- •Сегментно-страничная организация памяти.
- •Внешняя память
- •Магнитные диски
- •Оптическая память
- •Магнитные ленты
- •Глава 5 Язык Ассемблер
- •Структура программы на языке Ассемблер
- •Основные типы операндов
- •Типы операторов
- •Режимы адресации
- •Директивы ассемблера
- •Инструкции пересылки данных и двоичной арифметики
- •Запись программ на языке Ассемблер
- •Пример вычисления арифметического выражения
- •Циклические и разветвляющиеся программы
- •Примеры использования операторов переходов и цикла при работе с массивами чисел
- •Применение логических инструкций
- •Логические инструкции
- •Примеры использования логических команд
- •Пример выполнения работы
- •Обработка символьной информации с помощью функций dos
- •Программные прерывания и системные вызовы
- •Описание функций работы с клавиатурой и дисплеем диспетчера функций ms dos
- •Функции 01н
- •Функции 02н
- •Функция 09н
- •Функция оан
- •Функция 0Bh
- •Пример выполнения работы
- •Глава 6 Типы вычислительных систем и их архитектурные особенности
- •Классификация вычислительных платформ и архитектур
- •Классификация Флинна.
- •Классификация Хокни
- •Классификация Хэндлера
- •Параллелизм и конвейеризация вычислений. Параллелизм на уровне команд
- •Конвейеры
- •6.2.2 Суперскалярная архитектура.
- •Мультипроцессоры с памятью совместного использования.
- •Основные классы вс
- •Машины класса simd
- •Машины класса mimd
- •Основные направления развитие архитектуры вычислительных машин
- •Суперспекулятивная архитектура
- •Трассирующая архитектура
- •Многопотоковый процессор
- •Многоядерная архитектура
- •«Плиточная» архитектура
- •Многоэтажная архитектура
- •Оптическая (фотонная) архитектура
- •Квантовая архитектура
- •Нейроархитектура
Классификация Хокни
Для детализации систематики Флинна Хокни предложил выделить три класса машин MIMD-архитектуры:
переключаемые — с общей памятью и с распределённой памятью Вычислительные машины, в которых каждый поток обрабатывается своим собственным устройством, Хокни назвал переключаемыми. Все ВМ, в которых возможна связь каждого процессора с каждым реализуется с помощью переключателей — машины с распределённой памятью. Если же память есть разделяемый ресурс, машина называется с общей памятью;
конвейерные - ВМ с одним конвейерным устройством обработки, работающим в режиме разделения времени для отдельных потоков;
сети — регулярные решётки, гиперкубы, иерархические структуры, изменяющие конфигурацию. При рассмотрении машин с сетевой структурой Хокни считал, что все они имеют распределённую память. Дальнейшую классификацию он проводил в соответствии с топологией сети.
Классификация Хэндлера
В основу классификации В.Хендлер закладывает явное описание возможностей параллельной и конвейерной обработки информации вычислительной системой. Предложенная классификация базируется на различии между тремя уровнями обработки данных в процессе выполнения программ:
уровень выполнения программы — опираясь на счетчик команд и некоторые другие регистры, устройство управления (УУ) производит выборку и дешифрацию команд программы;
уровень выполнения команд — арифметико-логическое устройство компьютера (АЛУ) исполняет команду, выданную ему устройством управления;
уровень битовой обработки — все элементарные логические схемы процессора (ЭЛС) разбиваются на группы, необходимые для выполнения операций над одним двоичным разрядом.
Подобная схема выделения уровней предполагает, что вычислительная система включает какое-то число процессоров каждый со своим устройством управления. Если на какое-то время не рассматривать возможность конвейеризации, то число устройств управления k, число арифметико-логических устройств d в каждом устройстве управления и число элементарных логических схем w в каждом АЛУ (число разрядов в слове, обрабатываемых в АЛУ параллельно) составят тройку для описания данной вычислительной системы C: (k, d, w).
Параллелизм и конвейеризация вычислений. Параллелизм на уровне команд
Основу любого процессора составляет полупроводниковый вентильный элемент - транзистор. Транзистор позволяет управлять электрическим сопротивлением проводника при помощи электрического тока, проходящего через базу (биполярный транзистор), или электрического напряжения, подаваемого на затвор (полевой транзистор). Если ввести обратную связь, то есть подать часть выходного сигнала транзистора на его вход, то можно заставить прибор работать в двух стабильных состояниях, которые соответствуют логическим 0 и 1.
Электрон - носитель электрического заряда и, как следствие, основной переносчик информации, хотя и является с точки зрения квантовой физики частицей легкой, все-таки имеет некоторую массу, а, следовательно, и инерционность. Его нельзя мгновенно остановить или мгновенно привести в движение. Скорость одного конкретного электрона неизвестна. Можно говорить только об общих статистических закономерностях поведения некоторой достаточно большой группы электронов. Большая группа - это еще большая масса, для разгона или остановки которой нужно время и энергия.
При движении любой заряженной частицы возникает электромагнитное поле. На создание этого поля также расходуется энергия, которая в конечном счете приводит к нагреванию кристалла.
Потребность в более быстрых, дешевых и универсальных процессорах вынуждает производителей постоянно наращивать число транзисторов в них. Однако этот процесс не бесконечен. Поддерживать экспоненциальный рост этого числа, предсказанный Гордоном Муром в 1973 году, становится все труднее. Специалисты утверждают, что этот закон перестанет действовать, как только затворы транзисторов, регулирующие потоки информации в чипе, станут соизмеримыми с длиной волны электрона (в кремнии, на котором сейчас строится производство, это порядка 10 нанометров). Произойдет это до 2020 годами. По мере приближения к физическому пределу архитектура компьютеров становится все более изощренной, возрастает стоимость проектирования, изготовления и тестирования чипов. Таким образом, этап эволюционного развития рано или поздно сменится революционными изменениями.
В результате гонки наращивания производительности возникает множество проблем:
перегрев в сверхплотной упаковке, вызванный существенно меньшей площадью теплоотдачи;
снижение надежности транзисторов из-за уменьшения их размеров и утоньшения изолирующего слоя. Данную проблему можно решить снижением управляющего напряжения, но лишь до определенных пределов;
снижение размеров транзисторов уменьшает скорость их срабатывания, она перестает соответствовать скорости распространения сигнала по внутрисхемным соединениям;
более тонкие проводники, соединяющие транзисторы, имеют и более высокое сопротивление и неприемлемо высокую задержку распространения сигнала. Эта проблема была отчасти решена путем использования многослойных соединений.
Возможности по совершенствованию элементной базы уже практически исчерпаны, дальнейшее повышение производительности ВМ лежит в плоскости архитектурных решений. На сегодняшний день основное условие повышения производительности процессоров - методы параллелизма. Как известно, микропроцессор обрабатывает последовательность инструкций (команд), составляющих ту или иную программу. Если организовать параллельное (то есть одновременное) выполнение инструкций, общая производительность существенно вырастет. Решается проблема параллелизма методами конвейеризации вычислений, применением суперскалярной архитектуры и предсказанием ветвлений.
Параллелизм на уровне команд
Параллелизм осуществляется в пределах отдельных команд и обеспечивает выполнение большого количества команд в секунду.
