| Оглавление | Содержание | 1 |
| Введение | 15 |
| Благодарности | 18 |
| От издательства | 18 |
| Глава 1. Становление и эволюция цифровой вычислительной техники | 19 |
| Определение понятия «архитектура» | 20 |
| Уровни детализации структуры вычислительной машины | 21 |
| Эволюция средств автоматизации вычислений | 23 |
| Нулевое поколение (1492-1945) | 25 |
| Первое поколение (1937-1953) | 27 |
| Второе поколение (1954-1962) | 30 |
| Третье поколение (1963-1972) | 31 |
| Четвертое поколение (1972-1984) | 32 |
| Пятое поколение (1984-1990) | 33 |
| Шестое поколение (1990-) | 34 |
| Концепция машины с хранимой в памяти программой | 35 |
| Принцип двоичного кодирования | 36 |
| Принцип программного управления | 37 |
| Принцип однородности памяти | 37 |
| Принцип адресности | 38 |
| Фон-неймановская архитектура | 38 |
| Типы структур вычислительных машин и систем | 40 |
| Структуры вычислительных машин | 40 |
| Структуры вычислительных систем | 41 |
| Перспективы совершенствования архитектуры ВМ и ВС | 42 |
| Тенденции развития больших интегральных схем | 43 |
| Перспективные направления исследований в области архитектуры | 50 |
| Контрольные вопросы | 50 |
| Глава 2. Архитектура системы команд | 52 |
| Классификация архитектур системы команд | 54 |
| Классификация по составу и сложности команд | 54 |
| Классификация по месту хранения операндов | 56 |
| Регистровая архитектура | 61 |
| Архитектура с выделенным доступом к памяти | 63 |
| Типы и форматы операндов | 64 |
| Числовая информация | 65 |
| Символьная информация | 80 |
| Логические данные | 83 |
| Строки | 84 |
| Прочие виды информации | 84 |
| Типы команд | 87 |
| Команды пересылки данных | 88 |
| Команды арифметической и логической обработки | 88 |
| SIMD-команды | 90 |
| Команды для работы со строками | 92 |
| Команды преобразования | 92 |
| Команды ввода/вывода | 92 |
| Команды управления системой | 93 |
| Команды управления потоком команд | 93 |
| Форматы команд | 96 |
| Длина команды | 96 |
| Разрядность полей команды | 97 |
| Количество адресов в команде | 98 |
| Выбор адресности команд | 100 |
| Способы адресации операндов | 102 |
| Способы адресации в командах управления потоком команд | 115 |
| Система операций | 116 |
| Контрольные вопросы | 123 |
| Глава 3. Функциональная организация фон-неймановской ВМ | 126 |
| Функциональная схема фон-неймановской вычислительной машины | 126 |
| Устройство управления | 127 |
| Арифметико-логическое устройство | 129 |
| Основная память...: | 130 |
| М одул ь в во да/вы во да | 131 |
| Микрооперации и микропрограммы | 131 |
| Способы записи микропрограмм | 132 |
| Совместимость микроопераций | 138 |
| Цикл команды | 138 |
| Стандартный цикл команды | 139 |
| Описание стандартных циклов команды для гипотетической машины | 141 |
| Машинный цикл с косвенной адресацией | 144 |
| Машинный цикл с прерыванием | 144 |
| Диаграмма состояний цикла команды | 146 |
| Основные показатели вычислительных машин | 148 |
| Быстродействие | 148 |
| Критерии эффективности вычислительных машин | 150 |
| Способы построения критериев эффективности | 150 |
| Нормализация частных показателей | 152 |
| Учет приоритета частных показателей | 153 |
| Контрольные вопросы | 153 |
| Глава 4. Организация шин | 155 |
| Типы шин | 158 |
| Шина «процессор-память» | 158 |
| Шина ввода/вывода | 158 |
| Системная шина | 159 |
| Иерархия шин | 160 |
| Вычислительная машина с одной шиной | 160 |
| Вычислительная машина с двумя видами шин | 160 |
| Вычислительная машина с тремя видами шин | 161 |
| Физическая реализация шин | 161 |
| Механические аспекты | 161 |
| Электрические аспекты | 162 |
| Распределение линий шины | 166 |
| Выделенные и мультиплексируемые линии | 170 |
| Арбитраж шин | 171 |
| Схемы приоритетов | 171 |
| Схемы арбитража | 173 |
| Протокол шины | 180 |
| Синхронный протокол | 181 |
| Асинхронный протокол | 182 |
| Особенности синхронного и асинхронного протоколов | 185 |
| Методы повышения эффективности шин | 187 |
| Пакетный режим пересылки информации | 187 |
| Конвейеризация транзакций | 188 |
| Протокол с расщеплением транзакций | 188 |
| Увеличение полосы пропускания шины | 189 |
| Ускорение транзакций | 190 |
| Повышение эффективности шине множеством ведущих | 190 |
| Надежность и отказоустойчивость | 191 |
| Стандартизация шин | 192 |
| Контрольные вопросы | 195 |
| Глава 5. Память | 197 |
| Характеристики систем памяти | 197 |
| Иерархия запоминающих устройств | 199 |
| Основная память | 203 |
| Блочная организация основной памяти | 204 |
| Организация микросхем памяти | 207 |
| Синхронные и асинхронные запоминающие устройства | 213 |
| Оперативные запоминающие устройства | 213 |
| Постоянные запоминающие устройства | 225 |
| Энергонезависимые оперативные запоминающие устройства | 229 |
| Специальные типы оперативной памяти | 230 |
| Обнаружение и исправление ошибок | 236 |
| Стековая память | 244 |
| Ассоциативная память | 245 |
| Кэш-память | 249 |
| Емкость кэш-памяти | 251 |
| Размер строки | 252 |
| Способы отображения оперативной памяти на кэш-память | 252 |
| Алгоритмы замещения информации в заполненной кэш-памяти | 257 |
| Алгоритмы согласования содержимого кэш-памяти и основной памяти | 259 |
| Смешанная и разделенная кэш-память | 260 |
| Одноуровневая и многоуровневая кэш-память | 261 |
| Дисковая кэш-память | 262 |
| Понятие виртуальной памяти | 263 |
| Страничная организация памяти | 264 |
| Сегментно-страничная организация памяти | 268 |
| Организация защиты памяти | 269 |
| Внешняя память | 271 |
| Магнитные диски | 271 |
| Массивы магнитных дисков с избыточностью | 275 |
| Оптическая память | 286 |
| Магнитные ленты | 290 |
| Контрольные вопросы | 291 |
| Глава 6. Устройства управления | 293 |
| Функции центрального устройства управления | 293 |
| Модель устройства управления | 295 |
| Структура устройства управления | 296 |
| Микропрограммный автомат с жесткой логикой | 300 |
| Микропрограммный автомате программируемой логикой | 302 |
| Принцип управления по хранимой в памяти микропрограмме | 303 |
| Кодирование микрокоманд | 304 |
| Обеспечение последовательности выполнения микрокоманд | 309 |
| Организация памяти микропрограмм | 315 |
| Пути повышения быстродействия автоматов микропрограммного управления | 323 |
| Контрольные вопросы | 325 |
| Глава 7. Операционные устройства вычислительных машин | 327 |
| Структуры операционных устройств | 329 |
| Операционные устройства с жесткой структурой | 329 |
| Операционные устройства с магистральной структурой | 331 |
| Базис целочисленных операционных устройств | 337 |
| Сложение и вычитание | 337 |
| Целочисленное умножение | 339 |
| Умножение чисел без знака | 340 |
| Умножение чисел со знаком | 343 |
| Умножение целых чисел и правильных дробей | 346 |
| Ускорение целочисленного умножения | 347 |
| Логические методы ускорения умножения | 347 |
| Аппаратные методы ускорения умножения | 351 |
| Целочисленное деление | 370 |
| Деление с восстановлением остатка | 371 |
| Деление без восстановления остатка | 371 |
| Деление чисел со знаком | 372 |
| Ускорение целочисленного деления | 376 |
| Замена деления умножением на обратную величину | 376 |
| Ускорение вычисления частичных остатков | 377 |
| Алгоритм SRT | 377 |
| Деление в избыточных системах счисления | 380 |
| Операционные устройства с плавающей запятой | 380 |
| Подготовительный этап | 381 |
| Заключительный этап | 382 |
| Сложение и вычитание | 382 |
| Умножение | 383 |
| Деление | 384 |
| Реализация логических операций | 384 |
| Контрольные вопросы | 385 |
| Глава 8. Системы ввода/вывода | 387 |
| Адресное пространство системы ввода/вывода | 388 |
| Внешние устройства | 390 |
| Модули ввода/вывода | 392 |
| Функции модуля | 392 |
| Структура модуля | 396 |
| Методы управления вводом/выводом | 398 |
| Программно управляемый ввод/вывод | 399 |
| Ввод/вывод по прерываниям | 400 |
| Прямой доступ к памяти | 403 |
| Каналы и процессоры ввода/вывода | 407 |
| Канальная подсистема | 410 |
| Контрольные вопросы | 411 |
| Глава 9. Основные направления в архитектуре процессоров | 413 |
| Конвейеризация вычислений | 413 |
| Синхронные линейные конвейеры | 414 |
| Метрики эффективности конвейеров | 415 |
| Нелинейные конвейеры | 416 |
| Конвейер команд | 417 |
| Конфликты в конвейере команд | 418 |
| Методы решения проблемы условного перехода | 423 |
| Предсказание переходов | 425 |
| Суперконвейерные процессоры | 445 |
| Архитектуры с полным и сокращенным набором команд | 447 |
| Основные черты RISC-архитектуры | 448 |
| Регистры в RISC-процессорах | 449 |
| Преимущества и недостатки RISC | 452 |
| Суперскалярные процессоры | 453 |
| Особенности реализации суперскалярных процессоров | 458 |
| Аппаратная поддержка суперскалярных операций | 461 |
| Контрольные вопросы | 474 |
| Глава 10. Параллелизм как основа высокопроизводительных вычислений | 477 |
| Уровни параллелизма | 477 |
| Параллелизм уровня задания | 478 |
| Параллелизм уровня программ | 480 |
| Параллелизм уровня команд | 481 |
| Метрики параллельных вычислений | 481 |
| Профиль параллелизма программы | 481 |
| Ускорение, эффективность, загрузка и качество | 483 |
| Закон Амдала | 486 |
| Закон Густафсона | 488 |
| Классификация параллельных вычислительных систем | 490 |
| Классификация Флинна | 490 |
| Контрольные вопросы | 492 |
| Глава 11. Организация памяти вычислительных систем | 493 |
| Память с чередованием адресов | 494 |
| Модели архитектуры памяти вычислительных систем | 495 |
| Модели архитектур совместно используемой памяти | 496 |
| Модели архитектур распределенной памяти | 499 |
| Мультипроцессорная когерентность кэш-памяти | 501 |
| Программные способы решения проблемы когерентности | 501 |
| Аппаратные способы решения проблемы когерентности | 502 |
| Контрольные вопросы | 522 |
| Глава 12. Топологии вычислительных систем | 524 |
| Метрики сетевых соединений | 527 |
| Функции маршрутизации данных | 528 |
| Перестановка | 529 |
| Тасование | 529 |
| Баттерфляй | 530 |
| Реверсирование битов | 531 |
| Сдвиг | 531 |
| CeTblLLIACIV | 531 |
| Циклический сдвиг | 532 |
| Статические топологии | 532 |
| Линейная топология | 533 |
| Кольцевые топологии | 533 |
| Звездообразная топология | 534 |
| Древовидные топологии | 535 |
| Решетчатые топологии | 536 |
| Полносвязная топология | 537 |
| Топология гиперкуба | 537 |
| Топология k-ичного п-куба | 539 |
| Динамические топологии | 540 |
| Блокирующие и неблокирующие многоуровневые сети | 540 |
| Шинная топология | 541 |
| Топология перекрестной коммутации («кроссбар») | 542 |
| Коммутирующие элементы сетей с динамической топологией | 543 |
| Топология «Баньян» | 544 |
| Топология «Омега» | 545 |
| Топология «Дельта» | 546 |
| Топология Бенеша | 547 |
| Топология Клоша | 548 |
| Топология двоичной n-кубической сети с косвенными связями | 549 |
| Топология базовой линии | 549 |
| Контрольные вопросы | 550 |
| Глава 13. Вычислительные системы класса SIMD | 552 |
| Векторные и векторно-конвейерные вычислительные системы | 553 |
| Понятие вектора и размещение данных в памяти | 553 |
| Понятие векторного процессора | 554 |
| Структура векторного процессора | 556 |
| Структуры типа «память-память» и «регистр-регистр» | 560 |
| Обработка длинных векторов и матриц | 561 |
| Ускорение вычислений | 561 |
| Матричные вычислительные системы | 563 |
| Интерфейсная ВМ | 565 |
| Контроллер массива процессоров | 565 |
| Массив процессоров | 566 |
| Ассоциативные вычислительные системы | 571 |
| Вычислительные системы с систолической структурой | 572 |
| Классификация систолических структур | 574 |
| Топология систолических структур | 575 |
| Структура процессорных элементов | 577 |
| Пример вычислений с помощью систолического процессора | 578 |
| Вычислительные системы с командными словами сверхбольшой длины (VLIW) | 580 |
| Вычислительные системы с явным параллелизмом команд (EPIC) | 582 |
| Контрольные вопросы | 585 |
| Глава 14. Вычислительные системы класса MIMD | 586 |
| Симметричные мультипроцессорные системы | 587 |
| АрхитектураSMP-системы | 589 |
| Кластерные вычислительные системы | 593 |
| Классификация архитектур кластерных систем | 594 |
| Топологии кластеров | 597 |
| Системы с массовой параллельной обработкой (МРР) | 600 |
| Вычислительные системы с неоднородным доступом к памяти | 603 |
| Вычислительные системы на базе транспьютеров | 606 |
| Архитектура транспьютера | 607 |
| Вычислительные системы с обработкой по принципу волнового фронта 609 Контрольные вопросы | 611 |
| Глава 15. Потоковые и редукционные вычислительные системы | 613 |
| Вычислительные системы с управлением вычислениями от потока данных | 614 |
| Вычислительная модель потоковой обработки | 614 |
| Архитектура потоковых вычислительных систем | 618 |
| Статические потоковые вычислительные системы | 620 |
| Динамические потоковые вычислительные системы | 622 |
| Макропотоковые вычислительные системы | 628 |
| Гиперпотоковая обработка | 629 |
| Вычислительные системы с управлением вычислениями по запросу | 632 |
| Контрольные вопросы | 635 |
| Заключение | 637 |
| Список литературы | 638 |
| Алфавитный указатель | 653 |