Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Kandaurova_N_Vychislitelnye_sistemy_seti_i_telekommunikatsii

.pdf
Скачиваний:
245
Добавлен:
12.03.2016
Размер:
6.64 Mб
Скачать

относительного адреса (сегмент 1, смещение 15000) будет получен абсолютный адрес ОП 90000=75000+15000, где 75000 – адрес начала 1-го сегмента.

РНТС

 

 

Относительный адрес

 

 

 

s

 

i

 

 

 

 

 

 

 

 

 

 

 

68000

 

 

 

 

 

1

 

15000

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Таблица сегментов программы D

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

№ сегмента

Адрес

 

 

 

 

 

 

 

 

 

 

1

075000

 

 

 

 

 

 

 

 

 

 

 

2

125000

 

 

 

 

 

 

 

 

 

 

 

3

205000

 

 

 

 

 

 

Абсолютный адрес: 075000+15000=090000

Рисунок 4.9. Технология динамической трансляции адресов

Если сегменты разделить на несколько страниц, то неиспользуемые фрагменты ОП значительно сокращаются (сохранится фрагментация внутри страниц).

Сегментно-страничная организация. Адресное пространство программы дробится на сегменты, внутри сегментов – на страницы, а внутри страниц – на адреса байтов. Структура адреса: (s, р, i) – рисунок 4.10, где s – имя сегмента внутри адресного пространства программы; р – имя внутри страницы; i – адрес внутри страницы.

№ сегмента (s)

№ страницы (p)

 

 

Смещение

 

 

 

 

 

 

 

 

1

 

2

 

 

1500

 

31 8 разрядов 24 23

12 разрядов

12 11

12 разрядов

0

(256 сегментов)

(4096 страниц

 

 

(4096 байт

 

 

 

в сегменте)

 

 

в странице)

 

Рисунок 4.10 – Адресная структура при сегментно-страничной организации памяти

Формирование сегментно-страничной структуры выполняется автоматически с помощью ОС. Для динамической трансляции адресов каждому сегменту необходима одна таблица сегментов и несколько таблиц страниц. Специальные программы во время загрузки строят таблицы сегментов и страниц. Средства ДТА автоматически транслируют адрес в процессе выполнения программы.

Виртуальная память – теоретически доступная пользователю основная память, которая не существует в действительности.

60

Виртуальная память имеет сегментно-страничную или страничную организацию и реализована в иерархической системе памяти компьютера.

Часть ее размещается в страничных блоках основной памяти, а часть – в

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

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

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

Максимальный размер виртуальной памяти определяется только длиной физического адреса (32 бита): 232 = 4 Гбайта. Размер страницы фиксирован – 4 Кбайта, при этом для адресации байтов внутри страницы необходимо 12 бит. Поэтому адрес виртуальной памяти состоит из двух

частей: номера страницы 20 бит (220=1Мбайт) и смещения 12 бит

(212=22×210=4 Кбайта).

4.5. Система прерываний компьютеров

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

Система прерываний позволяет микропроцессору выполнять основную работу, не отвлекаясь на проверку состояния сложных систем при отсутствии такой необходимости, или прервать выполняемую работу и переключ иться на анализ возникшей ситуации сразу после ее появления [23, 24, 25].

В зависимости от места нахождения источника прерываний они могут быть разделены на: внутренние (программные и аппаратные) и внешние прерывания.

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

61

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

Совокупность значений наиболее существенных информационных элементов называется вектором состояния или словом состояния процессора.

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

Наборы информационных элементов, образующих векторы состояния: содержимое счетчика команд, сегментных регистров, регистра флагов и аккумулятора (регистра АХ).

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

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

Запросы на прерывание могут возникать из-за сбоев в аппаратуре (зафиксированных схемами контроля), переполнения разрядной сетки, деления на нуль, выхода за установленные для данной программы области памяти, из-за требования периферийным устройством операции вводавывода, завершения операции ввода-вывода или возникновения при этой операции особых условий и т.п.

Некоторые из этих запросов порождаются самой программой, но время их возникновения невозможно предсказать заранее.

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

ПК могут выполнять 256 различных прерываний, каждое из которых имеет свой номер (двухразрядное шестнадцатеричное число , 28=256).

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

Аппаратные прерывания вырабатываются устройствами, требующими внимания микропроцессора: отказ питания; от таймера; от клавиатуры; от адаптера связи; от НМД; от устройства печати и др.

62

Запросы на логические прерывания вырабатываются внутри микропроцессора при появлении «нештатных» ситуаций: деление на 0; переполнение разрядной сетки АЛУ; перевод микропроцессора в пошаговый режим работы; достижение программой одной из контрольных точек. Последние два прерывания используются отладчиками программ для организации пошагового режима выполнения программ (трассировка) и для остановки программы в заранее намеченных контрольных точках.

Запрос на программное прерывание формируется по команде «INT n», где n – номер вызываемого прерывания. Запрос на аппаратное или логическое прерывание вырабатывается в виде специального электрического сигнала.

Литература

Список основной литературы

1.Бройдо В.Л., Ильина О.П. Вычислительные системы, сети и телекоммуникации. – 3-е изд. – СПб.: Питер, 2008.

2.Истомин Е.П., Неклюдов С.В., Чертков А.А. Вычислительные системы, сети и телекоммуникации: учебник. – СПб.: Андреевский издательский дом, 2007.

3.Поветкин С.Н. Вычислительные системы, сети и телекоммуникации (краткий курс): учеб. пособие. – СПб.: Андреевский издательский дом,

2005.

4.Пятибратов А.П. Вычислительные системы, сети и телекоммуникации: учебник / А.П. Пятибратов, Л.П. Гудыно, А.А. Кириченко; под ред. А.П. Пятибратова. – 4-е изд., перераб. и доп. – М.: Финансы и статистика; ИНФРА-М, 2008.

Список дополнительной литературы

1.Аппаратные средства IBM PC: энциклопедия / М. Гук. – СПб.: Питер, 2003.

2.Аппаратные средства и организация персонального компьютера: учеб. пособие / Г.А. Дудкин, Д.Д. Кондратьев, С.Ю. Неклюдов; под ред. С.Ю. Неклюдова. – СПб.: СПбГУВК, 2004.

3.Архитектура IBM-совместимых персональных компьютеров: учеб. пособие / Г.А. Дудкин, Д.Д. Кондратьев, С.Ю. Неклюдов; под ред. С.Ю. Неклюдова. – СПб.: СПбГУВК, 2001.

4.Бройдо В.Л. Вычислительные системы, сети и телекоммуникации: учебник. – 2-е изд. – СПб.: Питер, 2005.

5.Информатика: учебник / под ред. Н.В. Макаровой. – М.: Финансы и статистика, 2004.

6.Основы современных компьютерных технологий: учебник / под ред. проф. А.Д. Хомоненко. – СПб.: КОРОНА принт, 2005.

63

7.Пятибратов А.П. Вычислительные системы, сети и телекоммуникации: учебник / А.П. Пятибратов, Л.П. Гудыно, А.А. Кириченко; под ред. А.П. Пятибратова. – 3-е изд., перераб. и доп. – М.: Финансы и статистика, 2005.

8.Пятибратов А.П. и др. Вычислительные системы, сети и телекоммуникации: учебник / А.П. Пятибратов, Л.П. Гудыно, А.А. Кириченко; под ред. А.П. Пятибратова. – 2-е изд., перераб. и доп. – М.: Финансы и статистика, 2002.

Лекция № 5. ЦЕНТРАЛЬНЫЕ УСТРОЙСТВА КОМПЬЮТЕРОВ

5.1. Основная память компьютеров

Комплекс технических средств, реализующих функцию памяти, называется запоминающим устройством (ЗУ). ЗУ необходимы для размещения в них программ и данных. Они обеспечивают центральному процессору доступ к информации [6, 9, 10, 21, 23].

Запоминающие устройства делятся на основную память (ОП), сверхоперативные ЗУ (СОЗУ) и внешние запоминающие устройства (ВЗУ).

Основная память включает два типа устройств: оперативное запоминающее устройство (ОЗУ или RAM – Random Access Memory) и постоянное запоминающее устройство (ПЗУ или ROM – Read Only Memory).

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

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

Функциональные возможности ОЗУ шире, но ПЗУ сохраняет информацию при отключении питания, т.е. является энергонезависимой памятью.

В современных компьютерах микросхемы памяти (ОП и СОЗУ) изготавливают из кремния по полупроводниковой технологии с высокой степенью интеграции элементов на кристалле, что позволяет сделать установку элементов памяти в кристалле (чипе) настолько плотной, что размеры элементов памяти становятся сопоставимыми с размерами отдельных атомов.

Основной составной частью микросхемы является массив элементов памяти (ЭП), объединенных в матрицу накопителя.

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

При матричной организации памяти реализуется координатный принцип адресации ЭП. В связи с этим адрес делится на две части (две координаты) – X и Y. На пересечении этих координат находится элемент памяти, в котором информация должна быть записана, прочитана или изменена [6, 10, 21, 23].

ОЗУ связано с остальным микропроцессорным комплектом компьютера через системную магистраль (СМ), состоящую из 3-х типов шин (рисунок

5.1).

65

По кодовой шине управления (КШУ) передается сигнал, определяющий, какую операцию необходимо выполнить.

По кодовой шине данных (КШД) передается информация, записываемая в память или считываемая из нее.

По кодовой шине адреса (КША) передается адрес элементов памяти, участвующих в обмене. Поскольку данные передаются машинными словами, а один ЭП может воспринять только один бит информации, блок элементов памяти состоит из n матриц ЭП, где n – количество разрядов в машинном слове. Максимальная емкость памяти определяется количеством линий в шине адреса системной магистрали. Если количество линий обозначить через m, то емкость памяти (т.е. количество элементов памяти, имеющих уникальные адреса) определяется как 2m. Так, в IBM РС ХТ шина адреса СМ содержит 20 линий. Поэтому максимальный объем ОП в этих машинах равен 220 = 1 Мбайт. В IBM РС АТ (с микропроцессором i80286) СМ содержит 24 линии, поэтому объем ОП может быть увеличен до 16 Мбайт. Начиная с МП i80386, шина адреса содержит 32 линии. Максимальный объем ОП увеличился до 232= 4 Гбайта.

Регистр X

Дешифратор X

Блок

элементов

памяти

Регистр данных

Регистр управления

Регистр адреса

Шина данных СМ

Шина управления СМ

Шина адреса СМ

Рисунок 5.1 – Структурная схема матричного ОЗУ

Микросхемы памяти могут строиться на статических (SRAM) и динамических (DRAM) ЭП. В качестве статического ЭП чаще всего выступает статический триггер. В качестве динамического ЭП может использоваться электрический конденсатор, сформированный внутри кремниевого кристалла.

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

66

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

Основными характеристиками ОЗУ являются объем и быстродействие. В современных ПК ОЗУ имеет модульную структуру. Сменные модули могут иметь различное конструктивное исполнение (SIP, ZIP, SIMM, DIMM и др.). Увеличение объема ОЗУ обычно связано с установкой дополнительных

модулей. Время доступа к модулям DRAM составляет 60-70 нс.

На производительность компьютера влияют не только время доступа, но и такие параметры (связанные с ОЗУ), как тактовая частота и разрядность шины данных системной магистрали. Если тактовая частота недостаточно высока, то ОЗУ простаивает в ожидании обращения. При тактовой частоте, превышающей возможности ОЗУ, в ожидании будет находиться системная магистраль, через которую поступил запрос в ОЗУ.

Разрядность шины данных (8, 16, 32 или 64 бита) определяет длину информационной единицы, которой можно обменяться с ОЗУ за одно обращение.

Микросхемы ПЗУ также построены по принципу матричной структуры накопителя. Функции элементов памяти в них выполняют перемычки в виде проводников, полупроводниковых диодов или транзисторов. В такой матрице наличие перемычки может означать «1», а ее отсутствие – «0». Занесение информации в микросхему ПЗУ называется ее программированием, а устройство, с помощью которого заносится информация, – программатором. Программирование ПЗУ заключается в устранении (прожигании) перемычек по тем адресам, где должен храниться «0». Обычно схемы ПЗУ допускают только одно программирование, но специальные микросхемы – репрограммируемые ПЗУ (РПЗУ) – допускают их многократное стирание и занесение новой информации. Этот вид микросхем также относится к энергонезависимым, т.е. может длительное время сохранять инфор мацию при выключенном питании. Cтирание микросхемы происходит либо за счет подачи специального стирающего напряжения, либо за счет воздействия на кристалл ультрафиолетового излучения.

Сверхоперативные ЗУ используются для хранения небольших объемов информации и имеют значительно меньшее (в 2-10 раз) время считывания/записи; чем основная память. СОЗУ обычно строятся на регистрах и регистровых структурах.

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

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

67

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

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

Регистры могут быть объединены в единую структуру. Возможности такой структуры определяются способом доступа и адресации регистров.

Если к любому регистру можно обратиться для записи/чтения по его адресу, такая регистровая структура образует СОЗУ с произвольным доступом.

Безадресные регистровые структуры [23, 24, 25] могут образовывать два вида устройств памяти: магазинного типа и память с выборкой по содержанию (ассоциативные ЗУ).

Память магазинного типа образуется из последовательно соединенных регистров (рисунок 5.2).

Регистр 1

Регистр 1

Регистр 2

Регистр 2

Запись

Чтение

в стек

из стека

Регистр К

Регистр К

а

б

Рисунок 5.2 – Регистровая структура магазинного типа: а – типа FIFO; б – типа FILO

Если запись в регистровую структуру (рисунок 5.2, а) производится через один регистр, а считывание – через другой, то такая память является аналогом линии задержки и работает по принципу «первым вошел – первым вышел» (FIFO – first input, first output).

Если же запись и чтение осуществляются через один и тот же регистр (рисунок 5.2, б), такое устройство называется стековой памятью, работающей по принципу «первым вошел – последним вышел» (FILO – first input, last output). При записи числа в стековую память сначала содержимое стека сдвигается в сторону последнего К-того регистра, а затем число заносится в вершину стека – регистр 1. Если стек был полностью заполнен, то число из К- того регистра теряется. Чтение осуществляется тожечерез вершину стека, после того как число из вершины прочитано, стек сдвигается в сторону регистра 1.

Стековая память получила широкое распространение. Для ее реализации в компьютерах разработаны специальные микросхемы. Но часто работа стековой памяти эмулируется в основной памяти компьютера. Для этого операционная систем выделяет часть памяти под стек (в IBM PC для этой цели выделяется 64 Кбайта). Специальный регистр микропроцессора

68

(указатель стека) постоянно хранит адрес ячейки ОП, выполняющей функции вершины стека. Чтение числа всегда производится из вершины стека, после чего указатель стека изменяется и указывает на очередную ячейку стековой памяти. То есть фактически стек остается неподвижным, а перемещается вершина стека. При записи числа в стек сначала номер ячейки в указателе стека модифицируется так, чтобы он указывал на очередную свободную ячейку, после чего производится запись числа по этому адресу. Такая работа указателя стека позволяет реализовать принцип «первым вошел – последним вышел».

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

В микропроцессорах ассоциативные ЗУ используются в составе кэшпамяти для хранения адресной части команд и операндов исполняемой программы. При этом нет необходимости обращаться к ОП за следующей командой или требуемым операндом. Достаточно поместить в маску необходимый адрес, если искомая информация имеется в СОЗУ, то она будет сразу выдана. Обращение к ОП будет необходимо лишь при отсутствии требуемой информации в СОЗУ. За счет такого использования СОЗУ сокращается число обращений к ОП, а это позволяет экономить время, т.к. обращение к СОЗУ требует в 2-10 раз меньше времени, чем обращение к ОП.

Кэш-память имеет несколько уровней [6, 9, 10]. Уровни LI, L2 и L3 – это регистровая кэш-память, высокоскоростная память сравнительно большой емкости, являющаяся буфером между ОП и МП и позволяющая увеличить скорость выполнения операций. Регистры кэш-памяти недоступны для пользователя, отсюда и название кэш (cache), что в переводе с английского означает «тайник».

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

По принципу записи результатов в оперативную память различают два типа кэш-памяти:

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

кэш-память «со сквозной записью» – результаты операций одновременно, параллельно записываются и в кэш-память, и в ОП.

69

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]