- •Принципы построения и архитектура эвм История развития компьютеров – 2ч
- •Исторические предшественники компьютеров. Аналитическая машина Чарльза Бэббиджа.
- •Первые компьютеры
- •Компьютеры с хранимой в памяти программой
- •Развитие элементной базы компьютеров
- •Появление персональных компьютеров
- •Компьютеры фирмы ibm
- •Советские Компьютеры
- •Принцип открытой архитектуры ibm pc
- •Структурная схема эвм. Назначение основных блоков схемы. -1 ч
- •Джон фон Нейман – историческая справка Принципы фон Неймана
- •Гарвардская архитектура
- •История
- •Классическая гарвардская архитектура
- •Модифицированная гарвардская архитектура
- •Расширенная гарвардская архитектура
- •Гибридные модификации с архитектурой фон Неймана
- •Области применения эвм различных классов – 1ч
- •Основные характеристики эвм – 2 ч
- •Типизация по назначению
- •Процессор Архитектура набора команд
- •Процессоры x86
- •Сегментная организация памяти
- •Расширения
- •Процессоры Intel
- •Процессоры amd
- •Процессоры Cyrix
- •Процессоры idt
- •Процессоры oki
- •Процессоры Rise Technology
- •Процессоры via
- •Процессоры SiS
- •Процессоры, выпускавшиеся в ссср
- •Ч ипсет
- •Память динамического типа (англ. Dram (Dynamic ram))
- •Память статического типа (англ. Sram (Static ram))
- •Характеристики памяти dram
- •Физическая реализация dram
- •Типы dram Страничная память
- •Быстрая страничная память
- •Edo dram — память с усовершенствованным выходом
- •Sdram — синхронная dram
- •Пакетная edo ram
- •Модули памяти типа sdram
- •Модули so-dimm
- •Модули rimm
- •Шина адреса
- •Шина данных
- •Шина управления
- •История Первое поколение
- •Второе поколение
- •Третье поколение
- •Пропускная способность
- •Клавиатура
- •Принтеры
- •Плоттеры
Процессор Архитектура набора команд
Архитектура набора команд (англ. instruction set architecture, ISA) — часть архитектуры компьютера, определяющая программируемую часть ядра микропроцессора. На этом уровне определяются реализованные в микропроцессоре конкретного типа:
обработчики прерываний и исключительных состояний. |
Схема, иллюстрирующая место уровней микроархитектуры, архитектуры набора команд и микрокода в многоуровневой структуре компьютера |
Микроархитектура описывает модель, топологию и реализацию ISA на микросхеме микропроцессора. На этом уровне определяется:
конструкция и взаимосвязь основных блоков ЦП,
структура ядер, исполнительных устройств, АЛУ, а также их взаимодействия,
блоков предсказания переходов,
организация конвейеров,
организация кэш-памяти,
взаимодействие с внешними устройствами.
В рамках одного семейства микропроцессоров, микроархитектура со временем расширяется путем добавления новых усовершенствований и оптимизации существующих команд с целью повышения производительности, энергосбережения и функциональных возможностей микропроцессора. При этом сохраняется совместимость с предыдущей версией ISA.
Процессоры x86
x
86
(англ. Intel 80x86)
— архитектура процессора c
одноименным набором команд, впервые
реализованная в процессорах компании
Intel. Название образованно
от двух цифр, которыми заканчивались
названия процессоров Intel
ранних моделей — 8086, 80186, 80286 (i286),
80386 (i386), 80486 (i486).
За время своего существования набор
команд постоянно расширялся, сохраняя
совместимость с предыдущими поколениями.
Помимо Intel, архитектура
также была реализована в процессорах
других производителей: AMD,
VIA, Transmeta,
WinChip и др. В настоящее
время для этой архитектуры существует
еще одно название — IA-32
(Intel Architecture
— 32).
x86 — это CISC-архитектура.
Сегментная организация памяти
Реальный режим (real mode)
Классический режим адресации, использованный в первых моделях семейства. Использует сегментированную модель памяти, организованную следующим образом: адресное пространство в 1MiB разбивается на 16-байтовые блоки, называемые параграфами. Всего параграфов в 1 MiB — 65536, что позволяет пронумеровать их 16-разрядными числами. Сегменты памяти имеют размер 65536 байт, и всегда начинаются на границе параграфа. Адрес ячейки памяти состоит из двух частей: номера параграфа, с которого начинается сегмент и смещения внутри сегмента и обычно записывается как SSSS:OOOO, где S и O — шестнадцатеричные цифры. SSSS называется сегментной компонентой адреса, а OOOO — смещением.
Общий объем памяти, адресуемый в реальном режиме составляет 1048576 байт (0000:0000-F000:FFFF(00000-FFFFF)-логический адрес(физический адрес) в шестнадцатеричной системе счисления). Сегментный подход позволяет разделить всю память на 16 сегментов, начинающихся с адресов, кратных 64 Кбайт. Эти 16 сегментов называют страницами памяти.
Обычно деление на страницы используется для совместного функционирования устройств, интерфейсы которых отображены на адресное пространство памяти; тогда каждое такое устройство использует одну страницу памяти, и адрес ячейки в адресном пространстве устройства будет совпадать со смещением в сегменте памяти компьютера. Так в компьютерах IBM PC страницы c 11 по 15 используются как «видеопамять» (адресное пространство видеоадаптера), а 16-я страница (FFFF:0000 — FFFF:FFFF) получила название «области верхней памяти» (High Memory Area), которую впоследствии MS-DOS использовала для размещения своего ядра и буферов ввода-вывода, оставив больше «обычной» памяти прикладным программам. Таким образом реально доступная пользователю память составляет 640 Кбайт (первые 10 страниц).
В реальном режиме отсутствует защита памяти и разграничение прав доступа, поэтому он уже практически вышел из употребления. Является режимом по умолчанию для всех моделей процессоров семейства x86.
Защищённый режим (protected mode)
Более совершенный режим, впервые появившийся в процессоре 80286 и в дальнейшем многократно улучшавшийся. Имеет большое количество подрежимов, по которым можно проследить эволюцию семейства ЦП. В этом режиме поддерживается защита памяти, контексты задач и средства для организации виртуальной памяти. Аналогично реальному режиму, тут также используется сегментированная модель памяти, однако уже организованная по другому принципу: деление на параграфы отсутствует, а расположение сегментов описывается специальными структурами (таблицами дескрипторов), расположенными в оперативной памяти. Помимо базового адреса сегмента дескрипторы содержат размер сегмента (точнее, максимально доступное смещение) и различные атрибуты сегментов, использующиеся для защиты памяти и определения прав доступа к сегменту для различных программных модулей. Существует два типа дескрипторных таблиц: глобальная и локальная. Глобальная таблица описывает сегменты операционной системы и разделяемых структур данных. Локальная таблица может быть определена для каждой конкретной задачи (процесса). Сегменты памяти также выбираются все теми же сегментными регистрами; однако вместо номера параграфа сегментный регистр содержит специальную структуру (селектор), содержащую индекс дескриптора в таблице. Сам же дескриптор загружается из памяти во внутренний программно недоступный регистр (кеш), привязанный к каждому сегментному регистру и автоматически загружаемый в момент его модификации.
Каждый программный модуль, выполняемый в защищенном режиме определяется его сегментом кода, описываемым регистром CS, который и определяет его привилегии по доступу к данным и другим модулям. Существует 4 уровня привилегий 0,1,2 и 3, называемых кольцами защиты. Кольцо 0 наиболее привилегированное. Оно предназначено для модулей ядра операционной системы. Кольцо 3 — наименее привилегированное, и предназначено для пользовательских программ. Кольца 1 и 2 используются лишь некоторыми операционными системами. Сегменты данных также имеют атрибуты прав доступа, дающие доступ только коду, имеющему такие же или более высокие привилегии. Система колец позволяет гибко распределять доступ к коду и данным.
Процессор 80386, появившийся в 1985 году, в отличие от своих предшественников стал 32-битным. В нем появилась возможность адресовать до 4GiB памяти, что позволило создавать сегменты памяти размером во все адресное пространство. Поэтому новые операционные системы использовали вырожденную модель организации памяти, когда все сегменты начинаются с нулевого адреса. Такая модель получила название плоской (flat memory model), и адрес задается одним целым 32-разрядным числом (хотя, по сути, он является смещением внутри вырожденного сегмента), а сами сегменты используются исключительно для организации защиты по кольцам привилегий.
Страничная организация памяти
В процессорах начиная с 80386 появилось следущее. Используя трансляцию страниц, операционная система может создать собственное линейное адресное пространство для каждого процесса; также каждая страница имеет атрибуты прав доступа. Только в отличие от сегментов, таких уровней существует только 2: пользователь и супервизор. Но для большинства современных операционных систем этого вполне достаточно. Следует отметить, что страничная орг-я памяти доступно только в защищенном режиме.
