
- •Архитектура вычислительных систем. Вычислительные машины, системы и сети
- •1. Основные понятия вычислительной техники и принципы организации вычислительных систем
- •1.1. Основные понятия и определения
- •1.2. Принципы организации вычислительных машин и систем
- •1.3. Основные характеристики вычислительных машин и систем
- •1.4. Многоуровневая организация вычислительных процессов
- •Вопросы для самопроверки
- •2. Простейшие типовые элементы вычислительных машин
- •2.1. Комбинационные схемы
- •1. Конъюнкция (логическое умножение) .
- •2. Дизъюнкция (логическое сложение) .
- •3. Отрицание (инверсия) .
- •4. Конъюнкция и инверсия (Штрих Шеффера) .
- •5. Дизъюнкция и инверсия (Стрелка Пирса) .
- •6. Эквивалентность .
- •7. Отрицание эквивалентности .
- •2.2. Автоматы с памятью
- •2.3. Триггеры
- •2.4. Проблемы и перспективы развития элементной базы вычислительных машин
- •Вопросы для самопроверки
- •3. Функциональные узлы комбинационного и последовательного типов
- •3.1. Функциональные узлы последовательного типа
- •3.1.1. Регистры
- •3.1.2. Счётчики
- •3.1. Функциональные узлы комбинационного типа
- •3.2.1 Шифраторы и дешифраторы
- •3.2.2 Компараторы
- •3.2.3 Сумматоры
- •Вопросы для самопроверки
- •4. Функциональная организация процессора
- •4.1. Основные характеристики и классификация процессоров
- •4.2. Физическая и функциональная структура процессора
- •4.2.1 Операционное устройство процессора
- •4.2.2 Шинный интерфейс процессора
- •4.3. Архитектурные принципы организации risc-процессоров
- •4.4. Производительность процессоров и архитектурные способы её повышения
- •Вопросы для самопроверки
- •5. Организация работы процессора
- •5.1 Классификация и структура команд процессора
- •5.2. Способы адресации данных и команд
- •5.2.1 Способы адресации данных
- •5.2.2 Способы адресации команд
- •5.3. Поток управления и механизм прерываний
- •Вопросы для самопроверки
- •6 Современное состояние и тенденции развития процессоров
- •6.1. Архитектурные особенности процессоров Pentium
- •6.2. Программная модель процессоров Pentium
- •6.2.1. Прикладная программная модель процессоров Pentium
- •6.2.2. Системная программная модель процессоров Pentium
- •6.2.3. Система команд и режимы адресации процессоров
- •6.3. Аппаратная организация защиты в процессорах Pentium
- •6.4. Аппаратные средства поддержки многозадачности
- •6.5. Перспективы развития процессоров
- •Вопросы для самопроверки
- •7. Память. Организация памяти
- •7.1. Иерархическая организация памяти
- •7.2. Классификация запоминающих устройств
- •7.3. Структура основной памяти
- •7.4. Память с последовательным доступом
- •7.5. Ассоциативная память
- •7.6. Организация флэш-памяти
- •7.7. Архитектурные способы повышения скорости обмена между процессором и памятью
- •Вопросы для самопроверки
- •8. Управление памятью. Виртуальная память
- •8.1. Динамическое распределение памяти
- •8.2. Сегментная организация памяти
- •8.3. Страничная организация памяти
- •8.4. Сегментно-страничная организация памяти
- •Вопросы для самопроверки
- •9. Организация ввода-вывода информации. Системная шина
- •9.1. Организация шин. Системная шина
- •9.1.1. Структура системной шины
- •9.1.2. Протокол шины
- •9.1.3. Иерархия шин
- •9.2 Организация взаимодействия между периферийными устройствами и процессором и памятью вычислительных машин
- •9.3. Внешние интерфейсы вычислительных машин
- •9.3.1. Параллельный порт lpt и интерфейс Centronics
- •9.3.1. Последовательный порт com и интерфейс rs-232c
- •9.3.3. Универсальная последовательная шина usb
- •9.3.4. Беспроводные интерфейсы
- •Вопросы для самопроверки
- •Модуль 2. Вычислительные системы
- •10. Вычислительные системы параллельной обработки. Многопроцессорные и многоядерные системы
- •10.1. Параллельная обработка информации
- •10.2. Классификация систем параллельной обработки данных
- •10.2.1 Классификация Флинна
- •10.2.2. Классификация Головкина
- •10.2.3. Классификация многопроцессорных систем по
- •10.3. Вычислительные системы на кристалле. Многоядерные системы
- •10.4. Тенденции развития вс
- •Вопросы для самопроверки
- •11. Организация микроконтроллеров и микроконтроллерных систем
- •11.1. Общие сведения о системах управления
- •11.2. Организация микроконтроллеров и микроконтроллерных систем
- •11.3. Области применения и тенденции развития мк
- •Вопросы для самопроверки
- •Модуль 3. Телекоммуникационные сети
- •12. Организация компьютерных сетей
- •12.1. Обобщённая структура компьютерных сетей
- •12.2. Классификация компьютерных сетей
- •Вопросы для самопроверки
- •13. Стандартизация компьютерных сетей. Эталонная модель взаимодействия открытых систем
- •13.1. Понятие «открытой системы». Взаимодействие открытых систем
- •13.2. Эталонная модель взаимодействия открытых систем
- •13.3. Структура блоков информации
- •7. Прикладной6. Представительный5. Сеансовый4. Транспортный3. Сетевой2. Канальный1. Физический
- •Вопросы для самопроверки
- •Литература
- •Архитектура вычислительных систем. Вычислительные машины, системы и сети
Вопросы для самопроверки
1. Что такое память? Перечислите основные характеристики памяти. В чём заключается суть иерархической структуры памяти?
2. Приведите условное изображение простейшего ЗУ и поясните его основные сигналы.
3. Поясните особенности адресных ЗУ. На какие подвиды подразделяются адресные ЗУ? Дайте характеристику последовательным ЗУ, укажите их особенности. В чём заключаются характерные особенности ассоциативных ЗУ? Назовите виды перспективных на сегодняшний день ЗУ.
4. Приведите структуру модуля основной памяти, поясните принципы работы. Какие типы конструктивных модулей памяти существуют в настоящее время?
5. Что представляет собой стек? В чём заключается логика работы стековой памяти? Приведите схему организации стека на примере процессора Intel 8086. Что такое вершина стека? Какие основные команды используются для работы со стеком, и как изменяется при этом состояние стека? Приведите примеры.
6. В чём заключаются принципы построения ассоциативной памяти? Приведите структурную схему ассоциативной памяти и поясните особенности её работы.
7. Что такое флэш-память? Какие различают микросхемы флэш-памяти по способу организации массива запоминающих элементов? В чём заключаются особенности флэш-памяти с ячейками NOR и с ячейками NAND? Перечислите особенности флэш-памяти с ячейками MLC.
8. Что такое кэш-память? Какие выделяют уровни кэш-памяти? Поясните принципы работы кэш-памяти.
9. Что представляет собой структура оперативной памяти с пакетным доступом и чередованием банков, с конвейерным доступом и чередованием банков? За счёт чего достигается повышение скорости обмена данными между процессором и памятью? Каким образом осуществляется обмен данными при сочетании пакетного и конвейерного методов доступа?
8. Управление памятью. Виртуальная память
8.1. Динамическое распределение памяти
Согласно [2 – 4], непосредственно адресуемая процессором оперативная память (ОП) имеет сравнительно небольшой объём, что в большинстве случаев не позволяет её вместить все команды и данные исполняемых программ. Обычно в памяти содержатся только их фрагменты. Все программы и данные хранятся в относительно дешёвой внешней памяти – ВЗУ. Поскольку процессор не имеет прямого доступа к ВЗУ, команды и данные исполняемой программы предварительно надо переписать в ОП. Ещё больше трудностей возникает в многозадачном режиме работы ВМ, когда в ОП одновременно должны храниться команды и данные нескольких задач. На ОС возлагаются функции по распределению ресурса ОП между отдельными программами. Так как заранее неизвестно, какие программы и в какой комбинации могут выполняться, распределение памяти между программами должно осуществляться динамически в ходе вычислений. Процедура, при которой ОС активным частям программ выделяет определённые области ОП и осуществляет привязку адресов загружаемым программам к конкретным адресам физикой ОП, называется динамическим распределением памяти.
В основе всех известных методов динамического распределения памяти лежат два положения: 1) каждому заданию (процессу) необходимо выделять непрерывную и перемещаемую область памяти; 2) должна обеспечиваться возможность попеременной загрузки заданий в ОП.
Для организации обменов между ВЗУ и ОП внешняя память представляется в виде набора частей (блоков) отдельных программ. Если требуемый фрагмент программы отсутствует в ОП, процессор обращается к ОС, которая, используя специальные процедуры, считывает из внешней памяти в ОП соответствующий блок. Если для требуемого фрагмента в ОП недостаточно места, то ОС предварительно освобождает такое место, пересылая неиспользуемые блоки из ОП в ВЗУ. Перемещаемость программ при их размещении в ОП можно обеспечить, если для адресации операндов внутри каждого блока использовать метод базирования (см. относительные режимы адресации в гл. 5). Этот метод предполагает, что все программы представлены в относительных адресах с началом в нулевой ячейке. Тогда адрес операнда определяется базовым адресом (сохраняется в одном из сегментных регистров процессора) и смещением относительно этого базового адреса (указывается или вычисляется в команде). Путём изменения содержимого сегментных регистров программы можно перемещать в ОП, не нарушая их внутренней адресации.
Попеременная загрузка заданий (программ) в современных ВМ осуществляется путём свопинга (от англ. swap – обмен) между ОП и ВЗУ. В мультипрограммных системах такой обмен осуществляется автоматически (без участия программиста), с помощью специальных программно-аппаратных средств под управлением ОС.
Динамическое распределение памяти тесно связано с понятием виртуальной памяти. Согласно [3], под виртуализацией памяти понимается метод автоматического управления иерархической памятью, при котором программисту кажется, что он имеет дело с единой памятью большой ёмкости и высокого быстродействия. Эту память называют виртуальной (кажущейся). Впервые идея виртуализации памяти появилась в 1959 году.
В соответствии с [2, 3], использование виртуальной памяти позволяет писать программы, размер которых превосходит имеющуюся ОП. При этом с помощью виртуальных (логических) адресов обеспечивается адресация всего адресного пространства ВМ, которая, напомним, зависит от разрядности шины адреса. Систему виртуальной памяти можно представить в виде одноуровневой логической и двухуровневой (ОП и ВЗУ) физической памяти. Адреса, к которым программа может обратиться, образуют виртуальное адресное пространство системы, а реальные адреса – физическое адресное пространство, причём линейное, состоящее из N ячеек разрядностью n. Программа пишется в виртуальных адресах, но для её выполнения требуется, чтобы обрабатываемые команды и данные находились в ОП. Для этого необходимо, чтобы каждому виртуальному адресу соответствовал физический адрес.
Все операции по управлению виртуальной памятью, динамическому распределению памяти и преобразованию адресов в ВМ выполняются автоматически. В современных процессорах некоторые из указанных функций реализуются с помощью специального контроллера управления памятью MMU (Memory Management Unit).
Среди моделей виртуальной памяти можно выделить сегментную, страничную и сегментно-страничную организацию виртуальной памяти.