
- •Введение
- •Цели и задачи курса
- •1. Общие сведения о вычислительных машинах и вычислительных системах
- •1.1. Основные понятия и определения
- •1.2. Классификация эвм по назначению и типу
- •1.3. Типы эвм
- •1.4. Основные принципы организации вычислительных машин и систем
- •1.5. Основные характеристики вычислительных машин и систем
- •1.5.1 Стоимость и цена аппаратного обеспечения
- •1.5.2. Производительность вычислительных машин и систем
- •Контрольные вопросы
- •2. Фукциональный состав и назначение основных устройств вм
- •2.2. Назначение шин, шина с тремя состояниями
- •2.3. Назначение устройств ввода-вывода, способы информационного обмена
- •Контрольные вопросы
- •3. Организация процессоров
- •3.1. Введение в функциональную организацию процессора
- •3.2. Операционный блок
- •3.3. Блок управления
- •3.4. Устройства управления процессора
- •3.4.1. Классификация уу
- •3.4.2. Аппаратные уу
- •3.4.3. Микропрограммные уу
- •3.5. Интерфейсный блок
- •3.6. Назначение стека
- •Контрольные вопросы
- •4. Система команд и адресация данных
- •4.1. Группы команд
- •4.2. Адресация операндов
- •4.3. Методы адресации
- •5. Память вычислительных машин
- •5.1. Иерархическая организация системы памяти
- •5.2. Иерархическая структура зу
- •5.3. Основные характеристики зу
- •5.4. Организация связи оп с процессором
- •5.5. Ассоциативные зу
- •Контрольные вопросы
- •6. Принципы обмена данными в вычислительных машинах. Интерфейсы вычислительных машин, организация прерываний
- •6.1. Шины
- •6.1.1. Синхронная шина
- •6.1.2. Пересылка данных за несколько тактов
- •6.1.3. Асинхронные шины
- •6.1.4. Заключительные замечания
- •6.2. Назначение и классификация шинных интерфейсов
- •6.3. Организация и обмен данными между периферийными устройствами и вычислительным ядром системы
- •6.4. Организация прерываний
- •6.4.1. Программные прерывания
- •Команда int
- •6.4.2. Обработка прерываний
- •6.4.3 Таблица векторов прерываний
- •6.4.4. Запуск обработчиков прерываний
- •6.5. Последовательная передача данных
- •7. Вычислительные системы параллельной обработки данных
- •7.1. Параллельная обработка как архитектурный способ повышения производительности
- •7.2. Параллелизм и конвейеризация – способы параллельной обработки данных
- •7.2.1. Параллельная обработка данных (параллелизм)
- •7.2.2. Конвейеризация
- •7.3. Классификация архитектур вычислительных систем
- •7.4. Мультипроцессоры и мультикомпьютеры
- •7.5. Классификация мультипроцессорных систем по способу организации основной памяти
- •7.6. Закон Амдала (эффективность параллельных программ)
- •8. Компьютер ibm pc и операционная система ms dos
- •8.1.Архитектурные особенности процессоров семейства ia-32
- •8.2. Организация памяти компьютера ibm pc, работающего под управлением ms dos
- •Видеопамять
- •Пзу bios
- •Системные ресурсы компьютера
- •8.3. Основы программирования на языке Ассемблера
- •8.3.1. Выполнение программ
- •8.3.2. Написание, компиляция и отладка программы
- •8.3.3. Дополнительные средства ассемблера
- •9. Темы заданий для контрольной работы
- •Тема 1. Архитектура процессора Intel 8086.
- •Контрольные вопросы
- •9.1. Аппаратная модель процессора 8086
- •Программная модель процессора
- •Тема 2. Структура ехе- и сом- программы. Вывод на экран.
- •9.2. Структура программы на языке Ассемблера.
- •9.3. Вывод информации на экран
- •Тема 3. Циклы, ввод с клавиатуры.
- •Тема 4. Ввод чисел. Перевод чисел в различные системы счисления.
- •9.4. Перевод чисел в различные системы счисления
- •Тема 5. Работа с прерываниями: перехват и восстановление.
- •Варианты задания
- •Контрольные вопросы
- •Тема 6. Программирование таймера 8254 и генерация звука
- •Программирование звукового канала таймера.
- •9.7. Инициализация таймера
- •9.8. Назначение каналов таймера в ibm pc
- •9 .9. Генерация тона.
- •9.10. Варианты задания
- •Тема 7. Ответы на контрольные вопросы по лекционному курсу
- •Вариантов заданий Таблица 9.4
- •Литература
7. Вычислительные системы параллельной обработки данных
7.1. Параллельная обработка как архитектурный способ повышения производительности
Производительность - важнейший показатель ВС. Увеличение требований к производительности постоянно опережает возможности вычислительных систем. Поэтому задачи повышения производительности находятся в центре внимания исследователей и разработчиков средств и систем вычислительной техники.
Имеются три метода, обеспечивающих увеличение производительности систем: совершенствование элементной базы, структурные и математические методы. Совершенствование элементной базы позволяет увеличивать тактовую частоту работы устройств и систем, интегрировать в одном кристалле процессор, память и часть устройств ввода-вывода, увеличивать разрядность шин, памяти и операционных устройств, использовать внутри кристалла более совершенные структуры устройств. Структурные методы направлены на использование методов параллельной обработки данных, что требует такой организации ВС, когда параллельно (одновременно) выполняется большое число преобразований. Математические методы связаны с созданием новых вычислительных методов решения классов задач, допускающих распараллеливание вычислительных процессов. Для реализации потенциально достижимого уровня производительности требуются согласованные усилия математиков и разработчиков аппаратного обеспечения, системного ПО, интегральных микросхем.
Параллельная обработка может быть организована на нескольких уровнях организации ВС, но в первую очередь она связана с применением архитектур с несколькими процессорами. Применение мультипроцессорных архитектур - это единственный способ построения наиболее высокопроизводительных ВС. Построив даже самый мощный процессор для данного уровня развития вычислительной техники, можно еще более увеличить производительность, объединив в единую систему несколько процессоров.
7.2. Параллелизм и конвейеризация – способы параллельной обработки данных
Параллельная обработка данных, подразумевающая выполнение несколько действий одновременно, имеет 2 разновидности:
Конвейерность
Параллелизм.
Разработчики архитектур прибегали к методам проектирования, известным под названием «совмещение операций», при котором аппаратура компьютера в любой момент времени может выполнять более одной базовой операции. Это метод включает в себя понятия конвейеризация и параллелизм. Хотя эти методы имеют много общего и их трудно различить на практике, но эти термины отражают 2 различных подхода.
7.2.1. Параллельная обработка данных (параллелизм)
Если некоторые устройства выполняют одну операцию за единицу времени t, то 1000 операций они выполнят за 1000 t. Если предположить, что имеются 5 независимых устройств, способных работать одновременно и независимо, то те же 1000 операций система из 5 устройств сможет выполнить за 200 t. Т.о. при параллельной обработке совмещение операций производится путем воспроизведения в нескольких копиях аппаратной структуры.
7.2.2. Конвейеризация
Конвейеризация основана на разделении подлежащей исполнению функции на более мелкие части, называемые ступенями, и выделении для каждой ступени отдельного блока аппаратуры. Так, обработку любой машинной команды можно разбить на несколько ступеней (этапов), организовав передачу данных от одного этапа к следующему. При этом конвейерную обработку используют для совмещения этапов выполнения различных команд. Производительность при этом возрастает благодаря тому, что одновременно на разных ступенях конвейера выполняется несколько команд. Конвейерная обработка такого рода широко применяется во всех современных МП. Разделение команды на более чем 5 ступеней называется суперконвееризацией. Начиная с МП-ов шестого поколения, появился двойной конвейер (стало возможным выполнять более одной команды за 1 такт). Если в МП есть два или более конвейера, то такой МП называется суперскалярным.