- •Раздел 1 Архитектура и структура пэвм ibm pc и их клонов
- •1.1 Блок-схема эвм по фон-Нейману и ее реализация в пк
- •1.2 Структурная схема pc/at
- •1.3 Конструкция и аппаратный состав ibm pc
- •1.4 Системная плата pc-i386dx
- •1.4.1 Структурная схема системной платы рс i386dx
- •1.4.2 Архитектура шин чип-сета группы 8230
- •1.4.3 Микропроцессор
- •1.4.3.1) Архитектура и типы микропроцессоров
- •1.4.3.2). Структурная схема и функциональный набор сигналов управления cpu i386.
- •1.4.3.3) Конвейерная обработка команд в cpu
- •1.4.3.4) Режимы работы микропроцессора i386
- •1.4.4 Математический сопроцессор
- •1.4.4.1) Структурная схема математического сопроцессора
- •1.4.4.2) Работа и связь fpu с cpu.
- •1.4.5 Подсистемы системной платы
- •1.4.5.1) Подсистема оперативной памяти
- •1.4.5.2) Буферная кэш-память озу
- •1.4.5.3) Подсистема rom bios
- •1.4.5.4) Подсистема cmos-памяти и часов реального времени rtc
- •1.5 Периферийные устройства рс
- •1.5.1 Система ввода-вывода оперативной информации
- •1.5.1.1) Средства ввода оперативной информации
- •1.5.1.2) Средства вывода оперативной информации
- •1.5.2 Система внешней памяти
- •1.5.2.1) Накопители на гибких магнитных дисках
- •1.5.2.2) Накопители на жестких магнитных дисках
- •1.5.2.3) Устройства массовой памяти на сменных носителях
- •1.5.3 Средства коммуникации компьютера
- •1.5.3.1) Коммуникационные порты сом и lpt
- •1.5.3.2) Сетевые средства связи
- •1.5.4 Средства вывода аудиоинформации
- •1.5.4.1) Вывод звука на встроенный динамик
- •1.5.4.2) Вывод звука на акустические системы
- •Раздел 2 Средства и методы диагностики апс
- •2.1 Классификация неисправностей апс
- •2.2 Этапы и процесс устранения неисправностей рс
- •2.3 Конструкция, разборка и сборка рс клонов ibm
- •2.3.1 Конструктивное оформление рс
- •2.3.2 Разборка и сборка компьютера
- •2.3.3 Инструментарий
- •2.3.3.1) Ручные инструменты для демонтажа/монтажа
- •2.3.3.2) Принадлежности пайки-отпайки
- •2.4 Аппаратный и программный аспекты диагностики апс
- •2.4.1 Аппаратные средства диагностики рс
- •2.4.1.1) Стандартная контрольно-измерительная аппаратура
- •2.4.1.2) Специальная контрольно-измерительная аппаратура
- •2.4.1.3) Сервисные платы и комплексы
- •2.4.2 Программные средства диагностики рс
- •2.4.2.1) Четыре уровня взаимодействия средств рс
- •2.4.2.2) Понятие о функциональном контроле рс
- •2.4.2.3) Контроль функционирования апс с использованием встроенных диагностических средств.
- •2.4.2.4) Внешние программы общего тестирования.
- •2.5 Принципы локализации неисправностей в персональных компьютерах
- •2.5.1 Системные ошибки при загрузке ос
- •2.5.2 Ошибки при прогоне прикладных программ
- •1. Один из дисководов нгмд не читает или не пишет.
- •2. Неуверенное чтение данных с fdd.
- •3. Ни один из дисководов не читает.
- •2.6 Номенклатура и особенности работы тест-программ
- •2.6.1 Тест-программы в среде dos
- •2.6.2 Тест-программы в среде Windows
- •Раздел 3. Автономная и комплексная проверка функционирования и диагностика свт, апс и апк
- •3.1 Функциональный контроль апс
- •3.1.1. Контроль и диагностика компонент системной платы.
- •3.1.1.1) Контроль работы cpu и fpu.
- •3.1.1.2) Контроль средств системной поддержки cpu
- •3.1.1.3) Контроль и диагностика dram
- •3.1.1.4) Контроль работы системной шины
- •3.1.1.5) Контроль rom bios и cmos-памяти
- •3.1.2 Контроль и диагностика периферийных устройств апс
- •3.1.2.1) Контроль и диагностика средств ввода оперативной информации.
- •3.1.2.2) Контроль и диагностика средств вывода оперативной информации
- •3.1.2.3) Функциональный контроль и диагностика нжмд
- •3.1.2.4) Контроль и диагностика неисправностей устройств вывода аудиоинформации
- •3.1.2.5) Функциональный контроль других периферийных устройств ввода и вывода информации апс.
- •3.1.3 Контроль и диагностика неисправностей средств коммуникации рс.
- •3.1.3.1) Контроль и диагностика неисправностей сом-портов
- •3.1.3.2) Контроль и диагностика lpt-портов
- •3.1.3.3) Диагностика неисправностей средств сетевых коммуникаций апс
- •3.1.4 Контроль и диагностика устройств на сменных носителях
- •3.1.4.1) Контроль и диагностика накопителей на гибких магнитных дисках
- •3.1.4.2) Контроль и диагностика других накопителей на съемных носителях
- •3.2 Контроль функционирования аппаратно-программных комплексов
- •Список использованной литературы.
- •Раздел 1 Архитектура и структура пэвм ibm pc и их клонов 4
- •Раздел 2 Средства и методы диагностики апс 56
- •Раздел 3 Автономная и комплексная проверка функционирования и диагностика свт, апс и апк 91
1.4.3.2). Структурная схема и функциональный набор сигналов управления cpu i386.
Структурная схема микропроцессора i386 приведена на рисунке 1.4.
сигналы сигналы адресов и данных: управления шиной:
/BE[3/0] A[31/02] D[31/00] W/R#, D/C#, M/IO#,/LOCK ^ /\ /\ /ADS,/NA,/BS16,/READY │ ││ ││ ^ │ ││ ││ │ ┌─────────────┐ ┌──┴────────┴┴───────┴┴────────────────┴──┐ │ P U │ │ │──>├─────────────┤ │ B I U │ │ очередь │ │ │ │ команд 16б │ └──────────────────────────┬──────────────┘ └──────┬──────┘ │ ┌──────┴──────┐ ┌ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ │ ─ ─ ─ ─┐ │ I D U │ ┌────────────────────┐ │ ├─────────────┤ │ │ ┌──────────────┐│ │<───────│────────>│ очередь МкК ├──┐ │PAG │КЭШ стр.дескр.││<───┤ │ 31x100 бит │ │ │ │ └──────────────┘│ │ │ └─────────────┘ │ └───────────┬────────┘ │ ┌──────────────┐ │ │ │ │<───────│────────>│ E U │ │ ┌────┴─────────────┴───┐ ├──────────────┤ │ │ │ ┌────────────────┐│ │ │┌────────────┐│ │ MMU │ SU │ КЭШ сегм. дескр.│ ││файл 32р Рг ││ │ │ │ └────────────────┘│ │ │└────────────┘│ │ └──────────────────┬───┘ │┌────────────┐│ │ └ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ │ ─ ─ ─ ─┘ ││ А Л У 32р ││ │ ┌──────────────┐ │ │└────────────┘│ │ │ устройство │<──────┴─────────────────>│┌────────────┐│ │ │ защиты памяти│ ││сдвигат. 64р││ │ └──────────────┘ │└────────────┘│ │ микрооперации └──────────────┘ │ ^ ^ ^ ^ ^ ^ │ ┌────────────┴──┴──┴──┴──┴──┴────────────┐ │ │ управление микропроцессором │<───────────────┘ └──────────────────────────────────────┬─┘ ^ ^ ^ ^ ^ ^ ^ │ │ │ │ │ │ │ │ │ PE REQ │ /ERROR │ NMI │ │ v /BUSY /RESET INTR HOLD HLDA └─────────────────────────────┘ └─────────┘
сигналы управления сигналы микропроцессором арбитража
Рисунок 1.4. Структурная схема микропроцессора i386.
*) Термин ДЕСКРИПТОР в блоке MMU означает ключевое слово, описатель адреса страницы или сегмента и содержит физический адрес – эквивалент логического (математического) адреса в команде.
Описание функций блоков микропроцессора.
1. BIU (Bus Interface Unit) – устройство сопряжения с шиной. Системная шина осуществляет обмен информацией между CPU и подсистемами ВС.
2. PU (Prefetch Unit) – устройство предварительной выборки команд, представлено узлом управления конвейером команд и 16-битовым стеком команд дисциплины FIFO (First Input – First Output: первым пришел – первым вышел).
3. IDU (Instruction Decode Unit) – устройство декодирования команд, состоит из:
- декодера команд, осуществляющего дешифрацию полей команд первой ступени (определение типа и формата команды) и
- стековой памяти из 31-го 100-битовых полей, дисциплины FIFO, определяющих собственно набор микроопераций выполняемых команд. Стеки PU и IDU программно недоступны.
4. EU (Execution Unit) – устройство обработки данных, предназначено для хранения и обработки данных, выполнения команд и формирования кодов состояний CPU. EU включает в себя группу (файл) 32-битовых регистров:
1) EAX – аккумулятор;
2) EBX – адресный регистр базы данных;
3) ECX – счетчик операций цикла;
4) EDX – 64-Кбайтный адрес порта ПУ, либо адрес хранения старшей половины операнда в командах умножения и деления;
5) AX, BX, CX, DX – регистры хранения адресов 16-битовых операндов;
6) AL, AH, BL, BH, CL, CH, DL, DH – регистры хранения адресов 8-битовых операндов;
7) ESP и EBP – группа 32-битовых регистров указателей стеков для работы со стековыми сегментами;
8) ESI и EDI – регистры индексов, для хранения смещения адреса относительно базы при чтении или записи в память;
9) SP, BP, SI, DI – регистры для хранения 16-битовой информации,
10) EFLAGS – 32-битовый регистр флагов, включающий в себя:
- 6 статусных флагов (устанавливаются по результатам выполнения соответствующих операций);
- 2 управляющих флага, разрешающих включение режима VM86 и игнорирования (блокировки) ошибок при отладке программы по шагам;
- 2 системных флага, используемых в режиме РМ,
11) EIP (Instrucktion Pointer) – 32-битовый регистр счетчика команд (IP – 16-битовая секция счетчика команд). Счетчик команд программно недоступен.
12) CR0 – СR3 – три 32-разрядных регистра управления, которые, совместно с системными регистрами, сохраняют информацию о состоянии CPU во время выполнении задачи. СR1 не используется.
Механизм отладки программ в микропроцессоре i386 позволяет:
1) введение в программу точек разрыва;
2) пошаговый (покомандный) режим выполнения программы;
3) программирование четырех адресных контрольных точек останова (DR0 – DR3). В реализации режима останова участвуют также регистры состояний DR6 (статусный) и DR7 (управляющий) из регистра EFLAGS. Оба регистра – TR6 и TR7 используются также для самодиагностики CPU. Режим самодиагностики запускается по заднему фронту сигнала RESET при условии, что сигнал /BUSY = L (Low – нижний уровень).
5. SU (Segmentation Unit) – блок сегментации, осуществляет первую ступень преобразования адресов, и состоит из 16-битовых регистров для хранения базовых текущих адресов, или сегментов в RM, либо селекторов в РМ и содержит:
1) CS (Code Segment) – селектор или сегмент кода;
2) SS (Stack Segment) – начало стекового сегмента;
3) DS, ES, FS, GS (Data Segments) – регистры сегментов данных.
Для организации режима виртуальной памяти в CPU i386 имеется механизм, включающий системные регистры:
1) GDTR (Global Descriptor Table Register) – регистр глобальной дескрипторной таблицы,
2) LDTR (Local Descriptor Table Register) – регистр локальной дескрипторной таблицы,
3) IDTR (Interrupt Descriptor Table Register) – регистр таблицы дескрипторов прерываний,
4) TR (Task Register) – регистр селектора сегмента состояния задачи (TSS).
6. PAG (Paging Unit) – блок страничной организации памяти. Это вторая ступень (первая – SU) для доступа к страничным ячейкам при виртуальном преобразовании адреса. SU и PAG входят как независимые узлы в MMU (Мemory Managment Unit).
ПРИМЕЧАНИЯ по тексту:
1) полярность активности логического сигнала может быть прямой (положительной) или инверсной (отрицательной).
ПРЯМЫЕ активные сигналы в таблицах и на схемах обычно не имеют особых отметок или, в исключительных случаях, имеют индекс high перед именем сигнала.
ИНВЕРСНЫЕ активные сигналы имеют равносильные обозначения:
- минус перед именем сигнала,
- знак "/" (слэж) перед именем сигнала (например, /ERROR),
- надчеркивание,
- знак # после имени (например, BUSY#), или
- индекс L (Low) после имени;
2) для принятой системы счисления за цифровым обозначением следует буквенный указатель:
- h (hex) - шестнадцатеричная,
- d (decimal) - десятичная, или
- b (binare) - двоичная система счисления;
3) размещение байтов в регистрах различно: обычно информация о составе байтов, заключенных в ячейки памяти, разделяется двоеточием, а при акцентировании конкретного бита, входящего в состав регистров или шин, принято обозначение бита (разряда) – его номером в квадратных скобках (например, EFLAGS[17]).
Назначение линий и сигналы интерфейса CPU.
D[31/00] (Data) – двунаправленная шина данных с тремя состояниями. Сигналы шины синхронные.
BS16# (Bus Size 16) – вход, связывающий CPU с 16-битовой шиной (режим i286). Если операнд – двойное слово, то BIU переключается на трансляцию в линию D[15/00] двух слов за два цикла обмена. Сигнал синхронный.
ВЕ0# - ВЕ3# – выходные стробы данных, линии с тремя состояниями. Сигналы показывают, какие байты 32-разрядной шины используются в текущей передаче. Вырабатываются при внутренней дешифрации двух младших разрядов адреса А[01/00] (см. Таблицу 1,2. Коды передачи байтов по системной шине).
А31-А0 – выходные адресные линии с Z-состоянием, обеспечивающие физическую адресацию памяти или УВВ.
W/R# (Write/Read) выходные линии с Z-состоянием, определяющие
D/C# (Data/Control) тип цикла шины. Сигналы действительны только
M/IO# (Memory/Input-Output) при активном уровне /ADS=L.
ADS# (Address Strobe) – выход строба адреса. Линия с Z-состоянием, по которой поступает сигнал к ВУ, о том, что начался цикл шины, определяемый сигналами управления W/R#, M/IO#, D/C#, /BE0- /BE3 и адресными линиями A[31/02] и адрес на них достоверен.
RESET (сброс) – асинхронный вход, останавливающий выполнение любой операции в CPU и переводящий его в состояние сброса. Сигнал определяется CPU по уровню и имеет наивысший приоритет. Это состояние реализуется на 15 и более периодов CLK2, но за 78 и более периодов CLK2 до запуска самодиагностики. На время действия RESET сигналы на входах CPU игнорируются, а выходы переводятся в пассивное состояние: /ADS=H, D[31/00]=Z, A[31/02]=H, /BE0-/BE3=L, W/R#=H, M/IO#=L, /LOCK=H, HLDA=L.
READY (готов) – синхронный сигнал, указывающий, что текущий ЦИКЛ ШИНЫ завершен, байты, определяемые сигналами /ВЕ0-/ВЕ3, /BS16, приняты или переданы. В первом такте цикла сигнал игнорируется, в остальных – анализируется, пока не станет активным. Внешнее оборудование, не способное закончить обмен за 2 такта, продлевает цикл, удерживая CPU в состоянии Time Out.
/NA (Next Addres) – синхронный сигнал для запроса следующего адреса, сообщает CPU, что система готова принять от него новые значения адресов и сигналов управления циклом обмена, даже если завершение текущего цикла шины не подтверждено сигналом /READY.
CLK – внутрипроцессорная частота CPU i386. Она вдвое ниже подводимой к входу CLK CPU от генератора тактовых импульсов. Для каждого периода CLK2 есть две фазы – Ф1 и Ф2, внутренней синхронизации микроопераций в CPU, но они могут быть синхронизированы с задним фронтом RESET. Различаются такты Ts и Tc, составляющие цикл обмена.
/LOCK – выходная шина с Z-состоянием, определяет тип цикла шины с блокировкой. Активизируется установкой /ADS=L в начале цикла шины с конвейеризацией адресов, или в циклах INTA. Применяется в мультипроцессорных системах и сигнализирует о том, что CPU выполняет операцию с несколькими циклами шины, которая не должна прерываться. Сигнал вырабатывается автоматически, при выполнении префикса /LOCK в циклах INTA и при смене страничных таблиц.
HOLD (Bus Hold Request) – запрос захвата шины. Синхронный входной сигнал, устанавливаемый другим CPU, или интеллектуальным УВВ для работы с шиной. Анализируется фронтом CLK2 и, пока HOLD активен, CPU следит за его уровнем, устанавливая в конце цикла обмена ответный сигнал HLDA.
HLDA (Bus Hold Asknowlege) – синхронный выход подтверждения передачи управления шиной другому, активному CPU или УВВ. В ответ на запрос HOLD, CPU переходит в состояние подтверждения захвата. На входе NMI возможно появление только одного запроса, запоминающегося в CPU для обработки его после снятия сигнала HOLD.
INTR (Interrupt – прерывание) – асинхронный вход, инициирующий последовательность прерывания в CPU, аналогичен для любого i80x86 CPU.
NMI (Non Maskable Interrupt) – немаскируемое прерывание, сигнализирует CPU о появлении критической ошибки в ВС, не позволяющей правильно продолжить операцию (например, – ошибка адресов или данных в ОЗУ). Текущая программа прерывается и ситуация обрабатывается специальной программой для принятия решения (перезапрос данных, повторное выполнение операции, или сигнализация о неработоспособности ВС).
PE REQ (Co-processor Request) – запрос прерывания от FPU. Асинхронный вход, указывающий, что FPU нужен обмен с памятью (сам FPU обменом не управляет). CPU отвечает сигналом синхронизации, после чего FPU выполняет циклы обмена между локальной шиной и портами регистров данных FPU.
/BUSY (занят) – асинхронный вход, анализируемый по уровню командой WAIT, автоматически выдаваемой CPU, при обнаружении активного входа /BUSY=L (признак наличия ошибки, особой ситуации, или выполнения FPU очередной операции). На время активизации сигнала /BUSY, CPU выполняет такты ожидания. Если во время среза RESET сигнал /BUSY=L, то CPU выполняет процедуру самодиагностики.
ERROR (ошибка), – асинхронный вход, анализируемый по уровню. Указывает, что при выполнении команды в FPU сформирован незамаскированный в регистре состояния FPU код ошибки. CPU вырабатывает прерывание типа 10h, но чаще – аппаратное прерывание типа 75h по линии IRQ13.
Какие именно байты (A, B, C или D), из четырех возможных, машинного слова будет передаваться по системной шине ISA за один цикл обмена, определяются кодами управляющих сигналов ВЕ3# - BE0#. Коды передачи байтов по системной шине приведены в таблице 1.2.
Возможные типы циклов шины приведены в таблице 1.3. Символ #, стоящий после названия сигнала означает, что активный уровень сигнала – нижний. Сигнал М означает обмен с DRAM, IO – обмен с портом, D – передача данных, С – передача команды, W – запись, R – чтение DRAM или порта соответственно.
Таблица 1.2. Коды передачи байтов по системной шине.
/BЕ3 /ВЕ2 /ВЕ1 /ВЕ0 БАЙТЫ В 32-БИТОВОМ СЛОВЕ ДАННЫХ D(D24/31) C(D16/23) B(D8/15) A(D0/7) 1 1 1 0 - - - A 1 1 0 1 - - B - 1 0 1 1 - C - C 0 1 1 1 D - D - 1 1 0 0 - - B A 1 0 0 1 - C B - 0 0 1 1 D C D C 1 0 0 0 - C B A 0 0 0 1 D C B A 0 0 0 0 D C B A
Таблица 1.3. Типы циклов шины.
M/IO# D/C# W/R# 0 0 0 - подтверждение прерывания 0 0 1 - не используется 0 1 0 - чтение данных из УВВ 0 1 1 - запись данных в УВВ 1 0 0 - чтение команды из ОЗУ 1 0 1 - 1) останов: Addr=2, /BE0-/BE3=1101, A[31/2]=0 - 2) отключение: Addr=0, /BE0-BE3=1111,A[31/2]=0 1 1 0 - чтение данных из ОЗУ 1 1 1 - запись данных в ОЗУ
Из таблицы типов циклов шины видно, что циклов шины может быть восемь:
1) чтение ОЗУ без блокировки шины (/LOCK=H),
2) чтение ОЗУ с блокировкой шины (/LOCK=L),
3) запись в ОЗУ без блокировки шины (/LOCK=H),
4) запись в ОЗУ с блокировкой шины (/LOCK=L),
5) чтение из УВВ или регистров FPU,
6) запись в УВВ или в регистры FPU,
7) подтверждение прерывания,
8) цикл останова или выключения.
Но основных, обменных циклов, – четыре: чтение ОЗУ, запись в ОЗУ, чтение порта ввода-вывода и запись в порт ввода-вывода. Остальные циклы шины либо варианты основных (с блокировкой или без блокировки), либо служебные, а не обменные.
