- •Вычислительные машины (конспект лекций) однопроцессорные эвм
- •Часть 3
- •8. Принципы организации ввода / вывода информации в микроэвм 5
- •8.1. Общие принципы организации вв
- •8.2. Программный вв
- •8.3. Вв по прерываниям
- •8.4. Вв в режиме пдп
- •8.4.1. Пдп с захватом цикла
- •8.4.2. Пдп с блокировкой процессора
- •8.5. Адаптер последовательного интерфейса
- •8.6. Адаптер параллельного интерфейса
- •Вопросы для самопроверки
- •Контрольные задания
- •9. Некоторые вопросы развития архитектуры эвм
- •9.1. Теги и дескрипторы. Самоопределяемые данные
- •9.2. Эвм risc-архитектуры
- •9.3. Методы оптимизации обмена процессор-память
- •9.3.1. Конвейер команд
- •9.3.2. Расслоение памяти
- •9.3.3. Буферизация памяти
- •9.4. Динамическое распределение памяти. Виртуальная память
- •9.4.1. Виртуальная память
- •9.4.2. Сегментно-страничная организация памяти
- •9.5. Защита памяти
- •9.5.1. Защита отдельных ячеек памяти
- •9.5.2. Метод граничных регистров
- •9.5.3. Метод ключей защиты
- •9.6. Алгоритмы управления многоуровневой памятью
- •9.7. Сопроцессоры
- •Вопросы для самопроверки
- •Контрольные задания
- •10. Эволюция шинной архитектурыibmpc
- •10.1. Локальная системная шина
- •10.2. Шина расширения
- •10.2.1. Шина расширенияisa
- •10.2.2. Шина расширения мса
- •10.2.3. Шина расширенияeisa
- •10.3. Локальные шины расширения
- •10.3.1. Локальная шинаvesa(vlb)
- •10.3.2. Локальная шинаpci
- •Компоненты материнской платы
- •Разновидности слотов
- •Типы разъемов оперативной памяти
- •Разъемы для подключения внешних устройств
- •Разъемы для подключения дисковых устройств
- •Разъемы процессоров
- •Вопросы для самопроверки
- •Контрольные задания
- •11. Принципы организации систем прямого доступа к памяти
- •11.1. Способы организации доступа к системной магистрали
- •11.2. Возможные структуры систем пдп
- •11.3. Организация обмена в режиме пдп
- •11.3.1. Инициализация средств пдп
- •11.3.2. Радиальная структура (slave dma)
- •11.3.3. Радиальная структура (bus master dma)
- •11.3.4. Цепочечная структура (bus master dma)
- •11.4. Принципы организации арбитража магистрали
- •Вопросы для самопроверки
- •Контрольные задания
9.7. Сопроцессоры
Расширение диапазона возможного применения процессоров с традиционной фон-неймановской архитектурой привело к тому, что наборы команд МП стали весьма громоздкими. Дальнейшее расширение наборов команд наталкивается на проблемы, связанные с поиском компромисса между добавлением команд, которые способствовали бы повышению производительности для конкретных областей применения, и усложнением кристалла ИС. Распространенный метод введения относительно более специализированных команд, применение которого не приводит к повышению сложности и стоимости базового МП, заключается в использовании сопроцессоров. Сопроцессоры– это дополнительные процессорные устройства, обеспечивающие выполнение дополнительных команд, в которых нуждается тот или иной пользователь.
Наиболее распространенной разновидностью дополнительного процессорного устройства (ДПУ) является сопроцессор для обработки чисел с плавающей запятой. Это достаточно сложное устройство. Его сложность сопоставима со сложностью самого процессорного устройства. Однако использование таких ДПУ позволяет примерно в 100 раз увеличить скорость выполнения команд обработки чисел с плавающей запятой и значительно повысить точность получаемых результатов. Особенности технической реализации ДПУ различны у различных изготовителей, но многие основные принципы их построения не зависят от конкретной реализации.
Для использования команд, реализуемых сопроцессором в современных процессорах (в частности, 32-разрядных), предусматривается командная маска. Она представляет собой группу резервных кодов операции, которая идентифицируется процессором по заданному набору значений определенных битов кода. В остальных битах кода операции определяется конкретная дополнительная операция.
Обычно ДПУ подключается к линиям адресов и данных процессора и в нужный момент декодирует масочный код операции. Однако возможен и другой подход, при котором для работы с отдельным кодовым пространством ДПУ необходимы внешние логические схемы, так как ДПУ не способно само декодировать масочные коды операции. Некоторые сопроцессоры имеют возможность брать на себя управление процессорной шиной для прямого обращения к памяти. Другие же прибегают к услугам основного процессора, который предоставляет им адреса для чтения или записи данных в память. Последний вариант характерен для однокристальныхДПУ (в частности, 32-разрядных). Возможность непосредственного обращения к памяти предусмотрена в некоторыходноплатныхсопроцессорах, предназначенных для обработки матриц и ВВ аналоговой информации.
В системе, где сопроцессор не установлен, его функции должен иметь возможность эмулировать центральный процессор. В его управляющем регистре может быть предусмотрен бит, который устанавливается в состояние 1 при наличии сопроцессора. Если этот бит не установлен в состояние 1, то для реализации масочной операции, входящей в расширенный набор команд, центральный процессор переходит к определенной подпрограмме, при выполнении которой эмулируются соответствующие действия ДПУ.
Некоторые сопроцессоры работают в непараллельном (синхронном) режиме, при котором центральный процессор вынужден дожидаться завершения ДПУ-команды сопроцессором, для того чтобы начать выполнение очередной команды. Другие сопроцессоры работают в параллельном (асинхронном) режиме, позволяющем центральному процессору выполнять другие команды одновременно с реализацией ДПУ-команды сопроцессором. Очевидно, что параллельная работа сопроцессора и процессора позволяет повысить производительность системы в целом. Однако при этом возникают проблемы, связанные с изменением содержимого памяти центральным процессором до того, как соответствующие данные считаны сопроцессором, а также изменением содержимого памяти сопроцессором без уведомления об этом центрального процессора. Одним из путей решения этих проблем является запрещение прямого доступа к памяти со стороны сопроцессора при работе в параллельном режиме.
Для микропроцессора I80386 ДПУ, выполняющего действия над ЧПЗ, является сопроцессор I80387, имеющий быстродействие 1.8106операций в секунду и функционирующий параллельно с центральным процессором (I80386) в асинхронном режиме.