Предисловие ко второму изданию......................................................13
Введение..........................................................................................16
Благодарности.................................................................................................................................19
Глава 1. Становление и эволюция цифровой вычислительной техники...20
Определение понятий "организация" и "архитектура"...................................................21
Уровни детализации структуры вычислительной машины.............................................22
Эволюция средств автоматизации вычислений...................................................................24
Нулевое поколение (1492-1945)...........................................................................................25
Первое поколение (1937-1953).............................................................................................28
Второе поколение (1954-1962)..............................................................................................30
Третье поколение (1963-1972)...............................................................................................32
Четвертое поколение (1972-1984)........................................................................................33
Пятое поколение (1984-1990)................................................................................................34
Шестое поколение (1990-).......................................................................................................35
Концепция машины с хранимой в памяти программой....................................................36
Принцип двоичного кодирования.........................................................................................38
Принцип программного управления....................................................................................38
Принцип однородности памяти.............................................................................................38
Принцип адресуемости памяти..............................................................................................39
Фон-неймановская архитектура............................................................................................39
Типы структур вычислительных машин и систем..............................................................42
Структуры вычислительных машин....................................................................................42
Структуры вычислительных систем....................................................................................43
Основные показатели вычислительных машин...................................................................44
Быстродействие..........................................................................................................................45
Критерии эффективности вычислительных машин..........................................................47
Способы построения критериев эффективности.............................................................47
Нормализация частных показателей....................................................................................49
Учет приоритета частных показателей................................................................................50
Перспективы совершенствования архитектуры ВМ и ВС...............................................50
Тенденции развития больших интегральных схем..........................................................51
Перспективные направления исследований в области архитектуры
вычислительных машин и систем.......................................................................................53
Контрольные вопросы...................................................................................................................53
Глава 2. Архитектура системы команд.................................................55
Классификация архитектур системы команд.......................................................................56
Классификация по составу и сложности команд.............................................................57
Классификация по месту хранения операндов.................................................................59
Регистровая архитектура..........................................................................................................64
Архитектура с выделенным доступом к памяти...............................................................66
Типы и форматы операндов........................................................................................................67
Числовая информация..............................................................................................................67
Символьная информация.........................................................................................................82
Логические данные.....................................................................................................................86
Строки............................................................................................................................................86
Прочие виды информации.......................................................................................................86
Типы команд....................................................................................................................................90
Команды пересылки данных...................................................................................................91
Команды арифметической и логической обработки......................................................91
SIMD-команды...........................................................................................................................93
Команды для работы со строками.........................................................................................94
Команды преобразования.........................................................................................................95
Команды ввода/вывода.............................................................................................................95
Команды управления системой..............................................................................................95
Команды управления потоком команд................................................................................95
Форматы команд............................................................................................................................97
Длина команды...........................................................................................................................97
Разрядность полей команды....................................................................................................98
Количество адресов в команде...............................................................................................99
Выбор адресности команд......................................................................................................101
Способы адресации операндов.............................................................................................103
Способы адресации в командах управления потоком команд..................................113
Система операций.....................................................................................................................114
Контрольные вопросы.................................................................................................................116
Глава 3. Функциональная организация фон-неймановской ВМ........... 118
Функциональная схема фон-неймановской вычислительной машины....................118
Устройство управления...........................................................................................................118
Арифметико-логическое устройство..................................................................................122
Основная память.......................................................................................................................123
Модуль ввода/вывода..............................................................................................................123
Микрооперации и микропрограммы.....................................................................................124
Способы записи микропрограмм.........................................................................................125
Совместимость микроопераций...........................................................................................130
Цикл команды...............................................................................................................................131
Стандартный цикл команды..................................................................................................131
Описание стандартных циклов команды для гипотетической машины................134
Машинный цикл с косвенной адресацией.......................................................................137
Контрольные вопросы.................................................................................................................137
Глава 4. Устройства управления........................................................ 139
Функции и структура устройства управления...................................................................139
Микропрограммный автомат....................................................................................................141
Микропрограммный автомат с аппаратной логикой.......................................................143
Микропрограммный автомат с программируемой логикой..........................................145
Кодирование микрокоманд...................................................................................................148
Обеспечение порядка следования микрокоманд...........................................................152
Организация памяти микропрограмм...............................................................................154
Система прерывания программ...............................................................................................155
Цикл команды с учетом прерываний.................................................................................156
Характеристики систем прерывания.................................................................................157
Допустимые моменты прерывания программ.................................................................159
Дисциплины обслуживания множественных прерываний........................................159
Система приоритетов...............................................................................................................164
Запоминание состояния процессора при прерываниях .............................................165
Вычислительные машины с опросом внешних запросов............................................166
Контрольные вопросы.................................................................................................................166
Глава 5. Операционные устройства .................................................. 168
Структуры операционных устройств....................................................................................169
Операционные устройства с жесткой структурой.........................................................169
Операционные устройства с магистральной структурой...........................................171
Вспомогательные системы счисления, используемые
в операционных устройствах..................................................................................................177
Избыточные системы счисления.........................................................................................177
Системы счисления с основанием, кратным целой степени 2..................................178
Избыточные системы счисления с основанием, кратным целой степени 2.........178
Операционные устройства для чисел в форме с фиксированной запятой...............178
Сложение и вычитание...........................................................................................................179
Умножение..................................................................................................................................181
Ускорение операции умножения.........................................................................................187
Умножение с использованием избыточных систем счисления................................187
Аппаратные методы ускорения умножения....................................................................192
Деление........................................................................................................................................209
Ускорение целочисленного деления...................................................................................214
Операционные устройства для чисел в форме с плавающей запятой........................220
Подготовительный этап..........................................................................................................221
Заключительный этап..............................................................................................................222
Сложение и вычитание...........................................................................................................223
Умножение..................................................................................................................................226
Деление........................................................................................................................................227
Реализация логических операций...........................................................................................227
Контрольные вопросы.................................................................................................................228
Глава 6. Память............................................................................... 230
Характеристики запоминающих устройств внутренней памяти.................................230
Иерархия запоминающих устройств.....................................................................................232
Основная память..........................................................................................................................235
Блочная организация основной памяти............................................................................236
Синхронные и асинхронные запоминающие устройства...........................................239
Организация микросхем памяти.........................................................................................240
Оперативные запоминающие устройства.........................................................................246
Постоянные запоминающие устройства...........................................................................259
Энергонезависимые оперативные запоминающие устройства.................................264
Обнаружение и исправление ошибок....................................................................................265
Стековая память...........................................................................................................................271
Ассоциативная память................................................................................................................272
Кэш-память....................................................................................................................................277
Емкость кэш-памяти................................................................................................................278
Размер блока..............................................................................................................................279
Способы отображения оперативной памяти на кэш-память.....................................279
Алгоритмы замещения информации в заполненной кэш-памяти...........................284
Алгоритмы согласования содержимого кэш-памяти и основной памяти.............285
Смешанная и разделенная кэш-память.............................................................................286
Одноуровневая и многоуровневая кэш-память..............................................................287
Понятие виртуальной памяти..................................................................................................288
Страничная организация памяти........................................................................................290
Сегментно-страничная организация памяти...................................................................293
Организация защиты памяти................................................................................................295
Внешняя память...........................................................................................................................299
Характеристики ЗУ внешней памяти................................................................................299
Запоминающие устройства на основе магнитных дисков..........................................300
Массивы магнитных дисков с избыточностью...............................................................306
Запоминающие устройства на основе твердотельных дисков..................................316
Дисковая кэш-память..............................................................................................................318
Запоминающие устройства на основе оптических дисков.........................................319
Запоминающие устройства на основе магнитных лент...............................................326
Контрольные вопросы.................................................................................................................329
Глава 7. Организация шин ............................................................... 332
Типы шин........................................................................................................................................334
Шины "процессор-память"...................................................................................................334
Шина ввода/вывода.................................................................................................................335
Системная шина........................................................................................................................335
Иерархия шин...............................................................................................................................339
Вычислительная машина с одной шиной.........................................................................339
Вычислительная машина с двумя видами шин..............................................................340
Вычислительная машина с тремя видами шин..............................................................340
Арбитраж шин...............................................................................................................................340
Алгоритмы арбитража.............................................................................................................340
Схемы арбитража......................................................................................................................342
Протокол шины............................................................................................................................346
Синхронный протокол............................................................................................................347
Асинхронный протокол..........................................................................................................348
Методы повышения эффективности шин............................................................................350
Пакетный режим пересылки информации.......................................................................350
Конвейеризация транзакций.................................................................................................350
Протокол с расщеплением транзакций.............................................................................351
Ускорение транзакций.............................................................................................................352
Увеличение полосы пропускания шины...........................................................................352
Стандартизация шин...................................................................................................................353
Шины "большого" интерфейса............................................................................................353
Шины "малого" интерфейса.................................................................................................360
Контрольные вопросы.................................................................................................................362
Глава 8. Системы ввода/вывода........................................................ 364
Адресное пространство системы ввода/вывода.................................................................365
Периферийные устройства........................................................................................................367
Модули ввода/вывода.................................................................................................................368
Функции модуля.......................................................................................................................368
Структура модуля.....................................................................................................................372
Методы управления вводом/выводом..................................................................................374
Ввод/вывод с опросом.............................................................................................................374
Ввод/вывод по прерываниям................................................................................................376
Прямой доступ к памяти........................................................................................................377
Каналы и процессоры ввода/вывода.....................................................................................380
Канальная подсистема.............................................................................................................384
Контрольные вопросы.................................................................................................................385
Глава 9. Процессоры........................................................................ 386
Конвейеризация вычислений...................................................................................................386
Синхронные линейные конвейеры.....................................................................................387
Метрики эффективности конвейеров................................................................................388
Нелинейные конвейеры..........................................................................................................389
Конвейер команд.......................................................................................................................389
Конфликты в конвейере команд..........................................................................................390
Выборка команды из точки перехода.................................................................................394
Методы решения проблемы условного перехода..........................................................396
Предсказание переходов.........................................................................................................396
Суперконвейерные процессоры...........................................................................................412
Суперскалярные процессоры...................................................................................................414
Особенности реализации суперскалярных процессоров............................................418
Аппаратная поддержка суперскалярных операций......................................................421
Гиперпотоковая обработка.....................................................................................................430
Архитектура процессоров..........................................................................................................434
Процессоры с архитектурой CISC......................................................................................435
Процессоры с архитектурой RISC......................................................................................436
Процессоры с архитектурой VLIW ...................................................................................442
Процессоры с архитектурой EPIC......................................................................................443
Архитектура многоядерных процессоров.........................................................................446
Контрольные вопросы.................................................................................................................448
Глава 10. Параллельные вычисления................................................. 450
Уровни параллелизма..................................................................................................................450
Метрики параллельных вычислений.....................................................................................452
Профиль параллелизма программы...................................................................................452
Основные метрики....................................................................................................................453
Закономерности параллельных вычислений......................................................................455
Закон Амдала.............................................................................................................................457
Закон Густафсона.....................................................................................................................459
Закон Сана-Ная........................................................................................................................460
Метрика Карпа-Флэтта.........................................................................................................462
Классификация параллельных вычислительных систем...............................................463
Классификация Флинна.........................................................................................................463
Контрольные вопросы.................................................................................................................465
Глава 11. Память вычислительных систем......................................... 466
Архитектура памяти вычислительных систем...................................................................467
Физически разделяемая память...........................................................................................467
Физически распределенная разделяемая память..........................................................470
Распределенная память...........................................................................................................472
Мультипроцессорная когерентность кэш-памяти.............................................................473
Программные способы решения проблемы когерентности.......................................475
Аппаратные способы решения проблемы когерентности...........................................475
Контрольные вопросы.................................................................................................................492
Глава 12. Топология вычислительных систем..................................... 494
Классификация коммуникационных сетей ........................................................................494
Классификация по стратегии синхронизации................................................................494
Классификация по стратегии коммутации......................................................................495
Классификация по стратегии управления.......................................................................495
Классификация по топологии..............................................................................................496
Метрики сетевых соединений..................................................................................................497
Функции маршрутизации данных..........................................................................................499
Кубическая перестановка.......................................................................................................500
Тасующая подстановка............................................................................................................500
Баттерфляй.................................................................................................................................501
Реверсирование битов.............................................................................................................501
Базисная линия..........................................................................................................................502
Статические топологии...............................................................................................................502
Линейная топология................................................................................................................503
Кольцевые топологии..............................................................................................................503
Звездообразная топология.....................................................................................................504
Древовидные топологии.........................................................................................................505
Решетчатые топологии............................................................................................................506
Полносвязная топология........................................................................................................508
Топология гиперкуба...............................................................................................................509
Динамические топологии...........................................................................................................511
Одношинная топология..........................................................................................................511
Многошинная топология.......................................................................................................511
Блокирующие, неблокирующие и реконфигурируемые топологии.......................512
Топология полносвязной коммутационной матрицы ("кроссбар").......................514
Коммутирующие элементы сетей с динамической топологией...............................516
Многоступенчатые динамические сети.............................................................................517
Блокирующие многоступенчатые сети..............................................................................518
Неблокирующие многоступенчатые сети ........................................................................521
Реконфигурируемые многоступенчатые сети.................................................................524
Контрольные вопросы.................................................................................................................525
Глава 13. Вычислительные системы класса SIMD.............................. 526
Векторные вычислительные системы....................................................................................527
Понятие вектора и размещение данных в памяти.........................................................527
Понятие векторного процессора..........................................................................................528
Архитектуры векторной обработки "память-память" и "регистр-регистр"........529
Структура векторного процессора......................................................................................531
Структура векторной вычислительной системы...........................................................533
Ускорение векторных вычислений.....................................................................................534
Матричные вычислительные системы..................................................................................535
Фронтальная ВМ......................................................................................................................537
Контроллер массива процессорных элементов..............................................................537
Массив процессорных элементов........................................................................................538
Ассоциативные вычислительные системы..........................................................................543
Ассоциативные процессоры .................................................................................................543
Ассоциативные многопроцессорные системы................................................................546
Вычислительные системы с систолической структурой................................................547
Классификация систолических структур.........................................................................549
Топология систолических структур...................................................................................550
Структура процессорных элементов..................................................................................553
Пример вычислений с помощью систолического процессора..................................553
Контрольные вопросы.................................................................................................................555
Глава 14. Вычислительные системы класса MIMD............................. 557
MIMD-системы с разделяемой памятью..............................................................................558
Симметричные мультипроцессорные системы..............................................................558
Параллельные векторные системы.....................................................................................562
Вычислительные системы с неоднородным доступом к памяти..............................563
MIMD-системы с распределенной памятью.......................................................................565
Системы с массовой параллельной обработкой (MPP)..............................................566
Кластерные вычислительные системы..............................................................................569
Кластеры больших SMP-систем..........................................................................................572
Вычислительные системы на базе транспьютеров........................................................573
Тенденции развития высокопроизводительных вычислительных систем...............575
Контрольные вопросы.................................................................................................................577
Глава 15. Вычислительные системы с нетрадиционным
управлением вычислениями............................................... 579
Вычислительные системы с управлением от потока данных........................................580
Вычислительная модель потоковой обработки..............................................................580
Архитектура потоковых вычислительных систем.........................................................582
Статические потоковые вычислительные системы......................................................583
Динамические потоковые вычислительные системы..................................................585
Мультипотоковые вычислительные системы.................................................................589
Вычислительные системы волнового фронта.................................................................591
Вычислительные системы с управлением по запросу.....................................................593
Контрольные вопросы.................................................................................................................596
Заключение.................................................................................... 598
Приложение А. Арифметические основы вычислительных машин...... 599
Системы счисления......................................................................................................................599
Двоичная система счисления................................................................................................600
Восьмеричная и шестнадцатеричная системы счисления..........................................601
Двоично-десятичная система счисления..........................................................................602
Преобразование позиционных систем счисления.............................................................602
Перевод целых чисел...............................................................................................................603
Перевод правильных дробей.................................................................................................604
Перевод правильных дробей, у которых знаменатель кратен степени
нового основания системы счисления.............................................................................605
Кодирование отрицательных чисел в ВМ............................................................................605
Прямой код двоичного числа................................................................................................606
Представление чисел в форме дополнения......................................................................607
Обратный код двоичного числа...........................................................................................607
Дополнительный код двоичного числа.............................................................................608
Сложение и вычитание чисел в обратном и дополнительном кодах......................609
Приложение Б. Логические основы вычислительных машин.............. 611
Логические функции...................................................................................................................611
Элементарные функции алгебры логики.............................................................................614
Элементарные функции одной переменной....................................................................614
Элементарные функции двух переменных......................................................................614
Правила алгебры логики............................................................................................................616
Аксиомы алгебры логики.......................................................................................................616
Теоремы алгебры логики........................................................................................................617
Законы алгебры логики..........................................................................................................617
Дополнительные тождества алгебры логики..................................................................618
Логический базис..........................................................................................................................619
Аналитическое представление булевых функций.............................................................619
Минимизация логических функций......................................................................................622
Минимизация методом непосредственных преобразований ...................................624
Минимизация по методу Квайна.........................................................................................626
Минимизация по методу Квайна-Мак-Класски...........................................................631
Минимизация по методу Петрика......................................................................................634
Минимизация табличным методом....................................................................................635
Минимизация частично определенных функций..........................................................640
Минимизация совокупности логических функций..........................................................642
Приложение В. Схемотехнические основы вычислительных машин.... 646
Сигналы в цифровой схемотехнике.......................................................................................646
Логические элементы..................................................................................................................647
Основные обозначения на схемах.......................................................................................647
Логический элемент "НЕ".....................................................................................................647
Логический элемент "И"........................................................................................................648
Логический элемент "ИЛИ".................................................................................................649
Логический элемент "И-НЕ"...............................................................................................649
Элемент "ИЛИ-НЕ"................................................................................................................650
Логический элемент "Исключающее ИЛИ"...................................................................651
Логический элемент "Эквивалентность".........................................................................651
Положительная и отрицательная логика.............................................................................652
Элементы памяти.........................................................................................................................654
Триггеры..........................................................................................................................................654
Выходы триггеров.....................................................................................................................654
Входы триггеров.......................................................................................................................655
Классификация триггеров.....................................................................................................655
RS-триггеры...............................................................................................................................656
JK-триггеры................................................................................................................................657
D-триггеры.................................................................................................................................658
DV-триггеры..............................................................................................................................658
Т-триггеры..................................................................................................................................659
TV-триггеры...............................................................................................................................659
Двухступенчатые триггеры....................................................................................................660
Приложение Г. Синтез и анализ комбинационных схем...................... 661
Синтез комбинационных схем.................................................................................................661
Синтез логических устройств в булевом базисе ...........................................................661
Синтез логических устройств в заданном базисе..........................................................662
Анализ комбинационных схем.................................................................................................663
Список литературы.......................................................................... 665
Алфавитный указатель.................................................................... 673