Техническая диагностика средств вычислительной техники
Методическое пособие - Компьютеры, программирование
Другие методички по предмету Компьютеры, программирование
?амяти. Адрес, шириной в 1 Мбайт, может быть разбит на 256 страниц по 4 Кбайт каждая и размещен в физическом адресном пространстве до 4 Гбайт. В этом объеме адресов ОЗУ можно, в окнах (frame) по 1 Мбайт, расположить множество копий MS DOS, или других ОС и пользовательских программ, представляющих отдельные виртуальные машины, работающие в многозадачном режиме.
Вход и выход в режим VM86 возможен следующими способами:
- загрузкой регистра флагов EFLAGS [17];
- переключением с задачи на задачу с использованием сегмента состояния задачи (TSS);
- в процедуре прерывания (команда IRET);
- ассемблерной командой POPF.
4. РРМ режим страничной адресации. Это режим управления памятью, позволяющий разделить большие объемы информации на компактные блоки по 4 Кбайт.
Для реализации режима РРМ в CPU i386 дополнительно включается страничный механизм, транслирующий линейный адрес в физический.
Переход из RM в РРМ программный, командами LMSW, SMSW, MOV CR0, MOV CR3. Обратный переход осуществляется либо перезагрузкой, либо программно, с помощью бита 31 в регистре CR0.
Контрольные вопросы.
1. Что представляет собой и для чего предназначен режим RM CPU i386?
2. Что такое виртуальная адресация в режиме РМ CPU i386?
3. Для чего предназначен режим VM86 CPU i386?
4. Какой режим устанавливается при включении CPU i386?
5. Как можно перейти из режимов РМ, РРМ в режим RM?
1.4.4 Математический сопроцессор
Равнозначны следующие аббревиатуры обозначения математического сопроцессора:
NDP (Numeral Data Processor),
MCP (Math Co-Processor),
FPU (Floating Point Unit),
APU (Accelerate Processor Unit).
Для однозначности примем обозначение FPU.
FPU выполняет следующие функции:
- операции с плавающей точкой;
- вычисление тригонометрических функций;
- логарифмирование;
- работу с двоично-десятичными числами.
Эти операции выполняются FPU по собственной микропрограмме, значительно (до 150 раз) быстрее, чем CPU, хотя CPU может их выполнять и сам, при наличии программ-эмуляторов режима совместимой с FPU работы, но медленнее. Так что FPU необязателен, и целесообразен только при больших объемах вычислений с плавающей точкой и т.п. Впрочем, успехи технологии СБИС позволяют интегрировать FPU прямо в кристалл CPU, так что современные CPU, начиная с i486 и Pentium, имеют встроенный в CPU математический сопроцессор.
FPU поддерживает вещественные, целые и двоично-десятичные числа, представленные в формате с плавающей точкой:
(-1)S[1.f1 f(23,52,63)]*2[E (127,1023,16383)]
где
S = 0 знак мантиссы "+",
S = 1 знак мантиссы "",
f мантисса,
Е экспонента,
(23, 52, 63) размеры поля дробной части мантиссы действительных данных в коротком, длинном и временном формате операндов с FP, соответственно,
(127, 1023, 16383) величины смещения, вычитаемые из характеристики (характеристика включает в себя знак порядка) для представления истинного порядка.
Имеются два поколения FPU:
- 8087, 80287 - имеют неполное соответствие существующему стандарту IEEE-75-4-1985;
- 80387, 80387DX ,80387SX ,80287A ,80287XL, 80C187, 80487SX стандартизованы и их скоростные характеристики выше.
FPU i387 может работать с CPU синхронно или асинхронно, поэтому FPU подбирается для совместной работы с CPU на частотах, равных, или выше рабочей частоты CPU.
FPU i287 тоже может использоваться в РС 386, но имеет асинхронный интерфейс с CPU.
FPU i387, для выравнивания скорости интерфейса FPU и скорости работы локальной шины данных CPU, имеет буфер данных (DB), стек типа FIFO и, в отличие от i287, работает без тактов ожидания. Обобщенная структурная схема FPU приведена на рисунке 1.5. Фирма WEITEK Corp. производит сопроцессоры WTL3167, WTL4167 (для CPU 386 и 486 соответственно) самые скоростные модели, однако несовместимые с FPU классической архитектуры, как по системе команд, так и по способу их загрузки. Для их работы требуются специальные программные средства поддержки, фирм Metaware или Microway.
Фирма Cyrix производит менее скоростные, но самые точные FPU 83D87 (для i386DX), 83S87 (для i386SX), 82S87 (для i286). Это FPU классической архитектуры, но их производительность на 25% выше, чем i387, так как все критичные по времени процессы реализованы жесткой логикой (аппаратные умножитель и АЛУ мантиссы, 90-разрядные регистры и т. д.). Энергопотребление их втрое ниже, чем i387.
При объединении CPU i386 c FPU i387, в адресное пространство CPU добавляются адреса портов ввода-вывода регистров данных FPU i387: 800000F8800000FFh (адреса портов FPU F8FFh).
1.4.4.1) Структурная схема математического сопроцессора
Обобщенная структурная схема FPU приведена на рисунке 1.5.
-- - - - - - - - T - - - - - - - - - - - - - - - - - - - - - ¬
32 Exp Bus 64 Fraction Bus
¦ -------------¬ ¦ -----------¬ ¦¦ ¦¦ ---------¬ ¦
¦ CWR ¦ ¦ EM ¦¦ PS ¦
¦ +------------+ ¦ L----------- ¦¦ ¦¦ L--------- ¦
¦ SWR ¦ ¦¦ ¦¦ ---------¬
¦ L-----T------- ¦ -----------¬ ¦¦ ¦¦¦ AM ¦ ¦
¦ ¦ MCU ¦ ¦¦¦¦ L---------
D[31------+------¬---->¦ ¦ ¦¦ ¦¦ ---------¬ ¦
/00]¦ ¦ ¦ L----------- ¦¦In-¦¦¦ TR ¦
--->¦ DB ¦ -----------¬ t32 ¦¦ter¦¦ L--------- ¦
¦ ¦ ¦---->¦ OQ ¦¦¦fa-¦¦
L-----T------- ¦ ¦ ¦¦ce ¦¦ ¦
¦ ¦ ¦ L----------- ¦¦ ¦¦
sta- ¦------?/p>