Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсач.docx
Скачиваний:
50
Добавлен:
02.09.2019
Размер:
694 Кб
Скачать
☆
  1. Выбор архитектуры вычислительной системы

2.1 Спецификация интерфейсов с ВУ

Рисунок – Общая схема архитектуры вычислительной системы, спецификации интерфейсов с ВУ

Интерфейс — это средство сопряжения двух устройств, в котором все физические и логические параметры согласуются между собой.

Каждый из функциональных элементов (память, монитор или другое устройство) связан с шиной определённого типа — адресной, управляющей или шиной данных.

Контроллеры и адаптеры представляют собой наборы электронных цепей, которыми снабжаются устройства компьютера с целью совместимости их интерфейсов. Контроллеры, кроме этого, осуществляют непосредственное управление периферийными устройствами по запросам микропроцессора.

Порты устройств представляют собой некие электронные схемы, содержащие один или несколько регистров ввода-вывода и позволяющие подключать периферийные устройства компьютера к внешним шинам микропроцессора.

Портами также называют устройства стандартного интерфейса: последовательный, параллельный и игровой порты (или интерфейсы).

Последовательный порт обменивается данными с процессором побайтно, а с внешними устройствами — побитно. Параллельный порт получает и посылает данные побайтно.

К последовательному порту обычно подсоединяют медленно действующие или достаточно удалённые устройства, такие, как мышь и модем. К параллельному порту подсоединяют более "быстрые" устройства — принтер и сканер. Через игровой порт подсоединяется джойстик. Клавиатура и монитор подключаются к своим специализированным портам, которые представляют собой просто разъёмы.

Основные электронные компоненты, определяющие архитектуру процессора, размещаются на основной плате ПК, которая называется системной или материнской (MotherBoard). А контроллеры и адаптеры дополнительных устройств, либо сами эти устройства, выполняются в виде плат расширения (DаughterBoard — дочерняя плата) и подключаются к шине с помощью разъёмов расширения, называемых также слотами расширения (англ. slot — щель, паз).

Вычислительная система - объединение программных и аппаратных средств, которые предоставляют услуги пользователю.

Структура организации вычислительной системы (ВС):

Прикладные программы

С истемы программирования

Управление логическими устройствами

Управление физическими устройствами

Аппаратные средства

Рисунок – Структура организации вычислительной системы

  1. Аппаратные средства.

Ресурсы ВС разделяются на два типа:

  • не участвующие в управлении программой (объем винчестера и т.д.).

  • участвующие в управлении программой (размер ячейки памяти, объем оперативной памяти, скорость выполнения команд).

Ресурсы второго типа называются физическими ресурсами аппаратуры.

  1. Управление физическими устройствами.

Управление физическими устройствами осуществляют программы, ориентированные на аппаратуру, взаимодействующие с аппаратными структурами, знающие "язык" аппаратуры.

  1. Управление логическими устройствами.

Этот уровень ориентирован на пользователя. Команды данного уровня не зависят от физических устройств, они обращены к предыдущему уровню. На базе этого уровня могут создаваться новые логические ресурсы.

  1. Системы программирования.

Система программирования - это комплекс программ для поддержки всего технологического цикла разработки программного обеспечения.

  1. Прикладное программное обеспечение.

Прикладное программное обеспечение необходимо для решения задач из конкретных областей.

Операционная система (ОС) - программа, обеспечивающая взаимодействие пользователя с ВС, а также управляющая ресурсами ВС (логическими и физическими). К ОС относится второй и третий уровень пирамиды.

Структурная схема ПК представлена на рисунке .

Рисунок - Структурная схема ПК

Для связи основных устройств между собой используется специальная информационная магистраль, обычно называемая инженерами шиной. Шина состоит из трех частей:

- шина адреса, на которой устанавливается адрес требуемой ячейки памяти или устройства, с которым будет происходить обмен информацией;

- шина данных, по которой собственно и будет передана необходимая информация;

- шина управления, регулирующей этот процесс (например, один из сигналов на этой шине позволяет компьютеру различать между собой адреса памяти и устройств ввода/вывода).

Аппаратная часть ПК состоит из нескольких основных функциональных устройств, реализующих арифметико-логические операции, а также управление, запоминание, ввод и вывод данных.

Устройство центрального процессора.

Арифметико-логическое устройство (АЛУ) и устройство управления (УУ) объединены в одном кремниевом кристалле и образуют центральный процессор (ЦП), или микропроцессор. Большинство кристаллов микропроцессоров заключено в миниатюрные корпуса прямоугольной формы. Арифметико-логическое устройство выполняет основные арифметические операции, такие, как сложение и вычитание. Оно может также сравнивать два заданных операнда и индицировать результат.

Устройство управления координирует и синхронизирует взаимодействие микропроцессора и памяти ПК.

2.2 Архитектура процессора: регистры, способы адресации, система команд

2.2.1 Архитектура процессора

DAR

0 15

IR

0 3

ДШ

БУС

PC

0 15

C

Z

O

ША

8

8

C

O

Z

ШД

8

8

8

8

АЛУ

8

8

sd0

Acc0

0 15

8

Acc1

0 15

sd1

R0

0 15 15

R1

0 15

R2

0 15

R3

0 15

R4

0 15

R5

0 15

R6

0 15

R7

0 15

Рисунок - Структурно-логическая схема гипотетического микропроцессора

PC (IP) ­— счетчик команд. Содержит адрес текущей выполняемой команды, автоматически увеличивается на длину текущей команды (при переходе на следующую).

IR — регистр команд. Предназначен для приема из памяти и хранения кода команды.

DAR — регистр данных и адреса. При наличии операндов в команде после считывания кода операции в этот регистр считываются операнды (адрес, данные для загрузки регистров, а также номера регистров).

Aсс — регистр-аккумулятор.

RL0 .. RL15; RH0 .. RH15 — РОНы – регистры общего назначения.

Регистр флагов содержит биты признаков состояния микропроцессора. Данные признаки изменяют свое состояние в результате операций над данными (в основном, арифметических). Также они используются для организации условных переходов в программе. Используемые в данном процессоре:

1) Z – признак нуля. Устанавливается в том случае, если результат арифметической или логической операции равен 0.

2) C – перенос из старшего разряда.

4) O — Переполнение.

БУС — Блок управления и синхронизации. Служит для выработки управляющих сигналов и синхронизации устройств, необходимых для выполнения команды в соответствии с сигналами дешифратора команд.

      1. Режимы адресации

1. Прямая. Адрес исполнительный является частью команды. Дополнительных действий для вычисления адреса не требуется. Длина этой команды зависит от размера адресуемой памяти. Используется при записи данных в память и из памяти и для операций перехода

2. Непосредственная. Обрабатываемые данные являются частью команд. Наиболее быстрая. Наименее гибкая, т.к. адрес и данные имеют фиксированную длину. Операнд занимает одно из полей команды и, следовательно, выбирается из оперативной памяти одновременно с ней. Используется в арифметических командах и при загрузке конкретного значения в регистр;

3. Прямая регистровая. В команде указывается аккумулятор, в котором находится операнд. Используется для загрузки, при арифметических и логических операциях и операциях сравнения;

4. Косвенная регистровая. Адрес исполнительный находится в РОНе адресуемой команде, является более быстрой, чем косвенная адресация и позволяет сократить длину команды;

5. Базовая. Адрес исполнительный операнда формируется при сложении содержимого базового регистра с непосредственным смещением (адресом) из кода операции.

      1. Система команд

В соответствии с требованием функциональной полноты система команд включает следующие операции:

  • загрузку регистров и запись в память;

  • сложение и вычитание целых чисел;

  • поразрядные логические операции;

  • условные и безусловные переходы;

  • изменение содержимого разрядов регистра кода условия (флажков);

  • ввод и вывод;

  • останов, вызов подпрограмм и возврат из них.

Система команд обеспечивает с помощью вышеприведенных команд организацию циклов, переход к подпрограмме и возврат. Модификация данных обеспечивается наличием команд загрузки, записи в память, арифметических и логических команд, изменяющих содержимое аккумуляторов и регистров общего назначения. Система команд микропроцессора представлена в таблице 1.

Таблица 1 – Система команд микропроцессора

Мнемокод операции

Наименование

Формат

Описание

Команды пересылок

MVI

Перемещение байта данных в аккумулятор

КОП D8

00000000 xxxxxxxx

D8 → Acc

непосредственная

MOVAR

Перемещение аккумулятора в регистр

КОП Ri

00000001 ^^^^ xxxx

Acc → Ri прямая регистр.

MOVRA

Перемещение регистра в аккумулятор

КОП Acc

00000010 ^^^^ xxxx

Ri → Acc прямая регистр.

MOVRR

Перемещение данных между регистрами

КОП Ri Rj

00000011 xxxx xxxx

Ri → Rj прямая регистр.

MOVMA

Перемещение данных из памяти в аккумулятор

КОП M(D8)

00000100 xxxxxxxx

M(D8) → Acc

прямая

Арифметические команды

ADDAR

Сложение аккумулятора с регистром

КОП Acc Ri

00000101 xxxx xxxx

Acc + Ri →Acc прямая регистр.

ADDRR

Сложение регистров

КОП Ri Rj

00000110 xxxx xxxx

Ri + Rj → Ri прямая регистр.

ADDAM

Сложение аккумулятора с адресом в памяти регистра

КОП Acc

00000111 ^^^^ xxxx

Acc + M[Ri] →Acc косвенная регистр.

SUBRA

Вычитание регистра из аккумулятора

КОП Acc RLi

00001000 xxxx xxxx

Acc – Ri → Acc

прямая регистр.

SUBRR

Вычитание регистров

КОП Ri Rj

00001001 xxxx xxxx

Ri – Rj → Ri прямая регистр.

INRR

Увеличение значения регистра на 1

КОП RLi

00001010 ^^^^ xxxx

Ri + 1 → Ri прямая регистр.

INRA

Увеличение значения аккумулятора на 1

КОП Acc

00001011 ^^^^ xxxx

Acc + 1 → Acc прямая регистр.

DCRR

Уменьшение значения регистра на 1

КОП Ri

00001100 ^^^^ xxxx

Ri - 1 → Ri прямая регистр.

DCRA

Уменьшение значения аккумулятора на 1

КОП Acc

00001101^^^^ xxxx

Acc - 1 → Acc прямая регистр.

MULTAR

Умножение аккумулятора на регистр

КОП Ri

00010010 ^^^^ xxxx

Acc * Ri → Acc прямая регистр.

MULTARI

Умножение аккумулятора на регистр с учетом знака

КОП Ri

00010011 ^^^^ xxxx

Acc * Ri → Acc прямая регистр.

DIVAR

Деление аккумулятора на регистр

КОП Ri

00010100 ^^^^ xxxx

Acc / Ri → Acc прямая регистр.

DIVARI

Деление аккумулятора на регистр с учетом знака

КОП Acc

00011101 ^^^^ xxxx

Acc / Ri → Acc прямая регистр.

Поразрядные логические операции

ANDRR

Конъюнкция регистров

КОП Ri Rj

00011110 xxxx xxxx

Ri and Rj → Ri прямая регистр.

ANDRA

Конъюнкция регистра и аккумулятора

КОП Ri Acc

00011111 xxxx xxxx

Ri and Acc → Ri прямая регистр.

ORRR

Дизъюнкция регистров

КОП RLi RLj

00100000 xxxx xxxx

Ri or Rj → Ri прямая регистр.

ORRA

Дизъюнкция регистра и аккумулятора

КОП Ri Acc

00100001 xxxx xxxx

Ri or Acc → Ri прямая регистр.

NOTR

Отрицание регистра

КОП Ri

00100010 ^^^^ xxxx

not Ri → Ri прямая регистр.

NOTA

Отрицание аккумулятора

КОП Acc

00100011 ^^^^ xxxx

not Acc → Acc прямая регистр.

Сдвиг

RCLR

Циклический сдвиг значения регистра влево с переносом старшего бита во флаг C, а значения флажка — в младший бит

КОП Ri

00100100 ^^^^ xxxx

прямая регистр.

RCLA

Циклический сдвиг значения аккумулятора влево с переносом старшего бита во флаг C, а значения флажка — в младший бит

КОП Acc

00100101 ^^^^ xxxx

прямая регистр.

RCRR

Циклический сдвиг значения регистра вправо с переносом младшего бита во флаг CF, а значения флажка — в старший бит

КОП Ri

00100110 ^^^^ xxxx

прямая регистр.

RCRA

Циклический сдвиг значения аккумулятора вправо с переносом младшего бита во флаг CF, а значения флажка — в старший бит

КОП Acc

00100111 ^^^^ xxxx

прямая регистр.

Условные и безусловные переходы

CMPRR

Сравнение значения регистров

КОП Ri Rj

00101000 xxxx xxxx

Ri – Rj → изменение флагов

прямая регистр.

CMPRA

Сравнение значения регистра и аккумулятора

КОП Ri Acc

00101001 xxxx xxxx

Ri – Acc → изменение флагов

прямая регистр.

Изменение содержимого разрядов регистра кода условия

CLNZ

Установка флага Z в 0

КОП

00101010 ^^^^^^^^

Z = 0

SETZ

Установка флага Z в 1

КОП

00101011 ^^^^^^^^

Z = 1

CLNC

Установка флага C в 0

КОП

00101100 ^^^^^^^^

C = 0

SETC

Установка флага C в 1

КОП

00101101 ^^^^^^^^

C = 1

CLNO

Установка флага O в 0

КОП

00101110 ^^^^^^^^

O = 0

SETO

Установка флага O в 1

КОП

00101111 ^^^^^^^^

O = 1

Ввод и вывод

IN

Загрузка данных из порта устройства в аккумулятор

КОП Pn

00110000 xxxxxxxx

Pn → Acc

прямая

OUT

Загрузка данных из аккумулятора в порт

КОП Pn

00110001 xxxxxxxx

Acc → Pn

прямая

Останов

NOP

Команда не производит никаких действий

КОП

00110010 ^^^^^^^^

нет операций

HLT

Перевод процессора в состояние останова

КОП

00110011 ^^^^^^^^

остановка работы процессора

Команды переходов

JMPEQ

Переход, если получили равные числа

КОП S

00110100 xxxxxxxx

Z = 1 → переход по C прямая

JMPNEQ

Переход, если получили неравные числа

КОП S

00110101 xxxxxxxx

Z = 0 → переход по C прямая

JMPN

Переход, если получили ноль

КОП S

00110110 xxxxxxxx

Z = 1 → переход по C прямая

JMPNN

Переход, если не получили ноль

КОП S

00110111 xxxxxxxx

Z = 0 → переход по C прямая

JMPLS

Переход, если первый операнд меньше второго

КОП S

00111000 xxxxxxxx

O = 0, C = 1 или O = 1, C = 0 → переход по C прямая

JMPMR

Переход, если первый операнд больше второго

КОП S

00111001 xxxxxxxx

O = 0, C = 0, Z = 0 или O = 1, C = 1, Z = 0 → переход по C прямая

JMPLSEQ

Переход, если первый операнд меньше либо равен второму

КОП S

00111010 xxxxxxxx

O = 0, C = 1, Z = 1 или O = 1, C = 0, Z = 1 → переход по S прямая

JMPMREQ

Переход, если первый операнд больше, либо равен второму

КОП S

00111011 xxxxxxxx

O = 0, C = 0 или O = 1, C = 1 → переход по C прямая

JMP

Переход по метке

КОП S

00111100 xxxxxxxx

прямая

    1. Система прерываний

Прерывание - это прекращение выполнения текущей команды или текущей последовательности команд для обработки некоторого события специальной программой - обработчиком прерывания, с последующим возвратом к выполнению прерванной программы. Событие может быть вызвано особой ситуацией, сложившейся при выполнении программы, или сигналом от внешнего устройства. Прерывание используется для быстрой реакции процессора на особые ситуации, возникающие при выполнении программы и взаимодействии с внешними устройствами.

Прерывания делятся на аппаратные и программные.

Аппаратные прерывания используются для организации взаимодействия с внешними устройствами. Запросы аппаратных прерываний поступают на специальные входы микропроцессора. Они бывают:

- маскируемые, которые могут быть замаскированы программными средствами компьютера;

- немаскируемые, запрос от которых таким образом замаскирован быть не может.

Программные прерывания вызываются следующими ситуациями:

- особый случай, возникший при выполнении команды и препятствующий нормальному продолжению программы (переполнение, нарушение защиты памяти, отсутствие нужной страницы в оперативной памяти и т.п.);

- наличие в программе специальной команды прерывания INT n, используемой обычно программистом при обращениях к специальным функциям операционной системы для ввода-вывода информации.

При поступлении запроса прерывания компьютер выполняет следующую последовательность действий:

1) определение наиболее приоритетного незамаскированного запроса на прерывание (если одновременно поступило несколько запросов);

2) определение типа выбранного запроса;

3) сохранение текущего состояния счетчика команд и регистра флагов;

4) определение адреса обработчика прерывания по типу прерывания и передача управления первой команде этого обработчика;

5) выполнение программы - обработчика прерывания;

6) восстановление сохраненных значений счетчика команд и регистра флагов прерванной программы;

7) продолжение выполнения прерванной программы.

Этапы 1-4 выполняются аппаратными средствами ПК автоматически при появлении запроса прерывания. Этап 6 также выполняется аппаратно по команде возврата из обработчика прерывания.

Таблица 2 – Список прерываний

№ прерывания

Тип прерывания

Наименование

Условие возникновения

IRQ 1

программное

Деление на 0

Деление на 0

IRQ 2

программное

Переполнение

Переполнение стека

IRQ 3

программное

Память

Неправильное обращение к памяти – выход за пределы сегмента

IRQ 4

программное

Память

Неправильное обращение к памяти – нарушение уровня доступа

IRQ 5

аппаратное

Клавиатура

Нажатие клавиши

IRQ 6

аппаратное

ЖД

Прерывания жесткого диска

IRQ 7

аппаратное

Принтер

Прерывания принтера

IRQ 8

аппаратное

Мышь

Прерывания мыши

IRQ 9

аппаратное

Сетевая карта

Прерывания сетевой карты

IRQ 10

аппаратное

ожидание

Приостановка выполнения задачи

2.4 Аппаратные средства обеспечения защиты

Под аппаратными средствами защиты понимаются специальные средства, непосредственно входящие в состав технического обеспечения и выполняющие функции защиты как самостоятельно, так и в комплексе с другими средствами, например с программными. Можно выделить некоторые наиболее важные элементы аппаратной защиты:

  • защита от сбоев в электропитании;

  • защита от сбоев серверов, рабочих станций и локальных компьютеров;

  • защита от сбоев устройств для хранения информации;

  • защита от утечек информации электромагнитных излучений.

2.4.1 Защита от сбоев в электропитании.

Наиболее надежным средством предотвращения потерь информации при кратковременном отключении электроэнергии в настоящее время является установка источников бесперебойного питания (UPS). Различные по своим техническим и потребительским характеристикам, подобные устройства могут обеспечить питание всей локальной сети или отдельной компьютера в течение какого-то промежутка времени, достаточного для восстановления подачи напряжения или для сохранения информации на магнитные носители. В противном случае используется следующая функция подобных устройств – компьютер получает сигнал, что UPS перешел на работу от собственных аккумуляторов и время такой автономной работы ограничено. Тогда компьютер выполняет действия по корректному завершению всех выполняющихся программ и отключается (команда SHUTDOWN). Большинство источников бесперебойного питания одновременно выполняет функции и стабилизатора напряжения, является дополнительной защитой от скачков напряжения в сети. Многие современные сетевые устройства - серверы, концентраторы, мосты и т.д. - оснащены собственными дублированными системами электропитания. Крупные организации имеют собственные аварийные электрогенераторы или резервные линии электропитания. Эти линии подключены к разным подстанциям, и при выходе из строя одной них электроснабжение осуществляется с резервной подстанции.

2.4.2 Защита от сбоев процессоров

Один из методов такой защиты - это резервирование особо важных компьютерных подсистем. Пример – симметричное мультипроцессирование. В системе используется более двух процессоров, и в случае сбоя одного из них, второй продолжает работу так, что пользователи вычислительной системы даже ничего не замечают. Естественно на такую защиту требуется гораздо больше средств.

2.4.3 Защита от сбоев устройств для хранения информации

Организация надежной и эффективной системы резервного копирования и дублирования данных является одной из важнейших задач по обеспечению сохранности информации. В небольших сетях, где установлены один-два сервера, чаще всего применяется установка системы резервного копирования непосредственно в свободные слоты серверов. Это могут быть устройства записи на магнитные ленты (стример), на компакт-диски многоразового использования, на оптические диски и т.д. В крупных корпоративных сетях наиболее предпочтительно организовать выделенный специализированный архивационный сервер. Специалисты рекомендуют хранить дубликаты архивов наиболее ценных данных в другом здании, на случай пожара или стихийного бедствия. В некоторых случаях, когда подобные сбои и потеря информации могут привести к неприемлемой остановке работы - применяются система зеркальных винчестеров. Резервная копия информации формируется в реальном времени, то есть в любой момент времени при выходе из строя одного винчестера система сразу же начинает работать с другим.

В месте с тем, кроме аппаратных средств резервного копирования данных существуют и чисто программные средства архивации.

2.4.4 Защита от утечек информации электромагнитных излучений

Прохождение электрических сигналов по цепям ПК и соединительным кабелям сопровождается возникновением побочных электромагнитных излучений (ПЭМИ) в окружающей среде. Распространение побочных электромагнитных излучений за пределы контролируемой территории на десятки, сотни, а иногда и тысячи метров, создает предпосылки для утечки информации, так как возможен ее перехват с помощью специальных технических средств контроля. В персональном компьютере кроме проводных линий связи также основными источниками электромагнитных излучений являются мониторы, принтеры, накопители на магнитных дисках, а также центральный процессор. Исследования показывают, что излучение видеосигнала монитора является достаточно мощным, широкополосным и охватывает диапазон метровых и дециметровых волн. Для уменьшения уровня побочных электромагнитных излучений применяют специальные средства защиты информации: экранирование, фильтрацию, заземление, электромагнитное зашумление, а также средства ослабления уровней нежелательных электромагнитных излучений и наводок при помощи различных резистивных и поглощающих согласованных нагрузок.

При контроле защиты информации ПК используются специально разработанные тестовые программы, а также специальная аппаратура контроля уровня излучения, которые определяют режим работы ПК, обеспечивающий совместно с другими техническими средствами скрытый режим работы для различных средств разведки.

Используется аппаратное запрещение доступа к винчестеру с терминала. Этот достигается с помощью ключа пользователя, которым он замыкает свой винчестер. При этом происходит запрещение доступа к контроллеру дисков и не обрабатывается не один сигнал поступающих от других устройств, кроме определенного сигнала, который генерируется при отмыкании винчестера ключом пользователя. Используется программно-аппаратное запрещение доступа на запуск ПК на уровне BIOS (паролирование); использование привилегированных команд; разделение сегментов по типам (например, кодовый сегмент или сегмент данных); введение прав доступа к сегментам и страницам (например, право только чтения или только исполнения).