Партнерка на США и Канаду по недвижимости, выплаты в крипто

  • 30% recurring commission
  • Выплаты в USDT
  • Вывод каждую неделю
  • Комиссия до 5 лет за каждого referral

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

Как отмечалось в разделе 1, максимальный объем адресуемой памяти определяется разрядностью шины адреса и составляет для 32-разрядных микропроцессоров 4 Гбайт и более. В современных микропроцессорных системах ОЗУ имеет емкость до нескольких сотен Мбайт, занимая часть адресного пространства. При этом в ряде типов систем (персональных компьютерах, рабочих станциях, серверах) предусмотрена модульная реализация ОЗУ, которая позволяет увеличивать его объем путем подключения дополнительных модулей статической или динамической памяти. Типичными примерами таких модулей являются стандартные модули динамической памяти - SIMM (Single In-line Memory Module) и DIMM (Double In-line Memory Module), используемые во многих системах для реализации ОЗУ необходимой емкости.

Для чтения и записи данных процессор реализует циклы обращения к ОЗУ по системной шине. Типичный цикл обращения к ОЗУ содержит следующие фазы:

·  установка на шине адреса необходимого адреса и выдача на шину управления адресного строба (AS или ALE) - сигнала, инициализирующего обмен,

·  выдача на шину управления сигналов, определяющих тип цикла обращения: чтение (сигнал RD) или запись (сигнал WR),

·  получение от ОЗУ по шине управления сигнала готовности к обмену (READY или DTACK),

НЕ нашли? Не то? Что вы ищете?

·  прием-передача считываемых или записываемых данных (команд) по шине данных.

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

В зависимости от способа организации обмена реализация цикла обращения занимает от 2 до 4 тактов системной шины. Тактовая частота системной шины может существенно отличаться от тактовой частоты микропроцессора (см. раздел 1.1). При современном уровне микроэлектронной технологии тактовые частоты микропроцессоров могут превышать 1 ГГц, а возможности технологии изготовления печатных плат обеспечивают возможности передачи данных с частотой до 133 Мгц. Поэтому обращение к ОЗУ требует значительно большего времени, чем выборка данных из РЗУ.

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

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

В системах, оперирующих с 8-, 16- и 32-разрядными данными, часто организуются отдельные разделы ОЗУ (банки) для хранения младших, старших или промежуточных байтов. Поэтому в ряде микропроцессоров формируются отдельные сигналы разрешения выдачи данных BE (Byte Enable) для выборки в ОЗУ тех или иных байтов. При адресации 16-разрядных данных используется два сигнала BE1-0 (выборка младшего или старшего байта), при адресации 32-разрядных данных – четыре сигнала BE3-0, при 64-разрядной системной шине – восемь сигналов BE7-0. Фактически, сигналы BE заменяют младшие 1, 2 или 3 разряда адреса, обеспечивая их дешифрацию в отдельные сигналы разрешения выборки для каждого байтового банка. Сигналы BE выдаются на шину адреса вместе с остальными (старшими) разрядами адреса.

Наряду с ОЗУ память микропроцессорных систем обычно включает ПЗУ, которое занимает определенные разделы адресуемого пространства. Содержимое ПЗУ сохраняется при отключении напряжения питания и поэтому может быть использовано сразу при включении системы. В зависимости от назначения системы включенное в нее ПЗУ может выполнять различные функции и, соответственно, иметь разную емкость памяти и варианты реализации. В большинстве систем ПЗУ служит для хранения программы начальной инициализации (загрузки) систем (Bootstrap ROM), программ тестирования и диагностики, а также некоторых других служебных программ. В ряде специализированных систем ПЗУ используется для хранения таблиц постоянных коэффициентов и констант, используемых при обработке данных, или для хранения подпрограмм, обеспечивающих стандартные процедуры обработки. Имеется также большой класс специализированных микропроцессоров - микроконтроллеров, ориентированных на реализацию определенных алгоритмов управления различными объектами. Программа, обеспечивающая реализацию этих алгоритмов, обычно записывается в ПЗУ, и в процессе работы микроконтроллера производится только ее считывание. В зависимости от назначения в микропроцессорных системах используются различные типы ПЗУ.

Масочно-программируемые ПЗУ (ROM – Read-Only Memory) содержат информацию, которая записывается в них в процессе изготовления микросхем и в дальнейшем не может изменяться. При производстве этих микросхем используется специально разрабатываемый комплект фотошаблонов (масок), определяющих содержание хранящейся в них информации. Поэтому выпуск микросхем с памятью ROM возможен только по соответствующему заказу, который производитель получает от пользователя. Производство и применение таких микросхем экономически эффективно только при значительном объеме их выпуска.

Программируемые пользователем ПЗУ содержат информацию, которую заносит в них пользователь с помощью специального программатора. При использовании однократно-программируемых ПЗУ (OTPROM – One-Time Programmable ROM) запись в них возможна только один раз. Репрограммируемые ПЗУ (EPROM –Electrically Programmable ROM) позволяют производить стирание ранее записанной информации путем облучения микросхемы ультрафиолетовым светом и затем записывать в них новую информацию с помощью программатора. Такие микросхемы помещаются в специальный корпус с окном из кварцевого стекла, пропускающего ультрафиолетовое излучение. В электрически репрограммируемых ПЗУ (EEPROM –Electrically Erased Programmable ROM) стирание и запись новой информации осуществляется с помощью электрических сигналов. Разновидностью EEPROM является флеш-память (Flash-memory), в которой электрическое стирание реализуется не в каждой отдельной ячейке памяти последовательно, а одновременно для всех ячеек или их блоков. Современные модификации флэш-памяти обеспечивают возможность ее репрограммирования без удаления из системы, а непосредственно на плате или на кристалле микроконтроллера (ISP – In-System Programming). При использовании программируемого ПЗУ пользователь может самостоятельно ввести в них необходимую информацию (программы или массивы постоянных данных). При включении в систему репрограммируемого ПЗУ можно, в случае необходимости, изменять хранящуюся в них информацию, поместив микросхему памяти в программатор или выполнив перепрограммирование в составе системы (в режиме ISP).

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

Кэш-память

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

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

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

В системах может использоваться общая кэш-память для команд и данных или две отдельных кэш-памяти для их хранения. В настоящее время на кристалле микропроцессора обычно размещаются две отдельные кэш-памяти для команд и данных, каждая из которых имеет объем до нескольких десятков Кбайт. Кроме этой внутренней кэш-памяти 1-го уровня (L1) часто используется дополнительная кэш-память 2-го уровня (L2) большей емкости (до нескольких Мбайт), в которой хранятся как команды, так и данные. Обычно эта память реализуется в виде отдельных микросхем, которые монтируются в общем корпусе с кристаллом микропроцессора. Однако достижения микроэлектронной технологии обеспечили возможность изготовления кэш-памяти 2-го уровня на общем кристалле с микропроцессором и кэш-памятью 1-го уровня.

Рис.1.8. Типовая структура кэш-памяти и реализация обращения к ней

Типовая структура кэш-памяти, реализуемой в современных микропроцессорах, показана на рис.1.8. Эта память ассоциативного типа, состоящая из строк длиной в несколько десятков байт (обычно16, 32 или 64 байта). Строки объединены в наборы, каждый из которых содержит несколько строк (обычно 2, 4 или 8). Число таких наборов зависит от емкости реализуемой кэш-памяти. Например, кэш-память емкостью 16 Кбайт, представленная на рис.1.8, содержит 128 наборов S127-0 по четыре строки L3-0 длиной 32 байта B31-0 каждая.

При обращении к кэш-памяти сформированный микроконтроллером адрес представляется как в виде трех полей (рис.1.8): поле тега TAG, поле SET, указывающее номер набора, и поле BYTE, задающее номер байта в строке. При обращении к кэш-памяти содержимое поля SET определяет номер выбираемого набора. Значения старших разрядов адреса (поле TAG) сравниваются с содержимым полей тегов (tag0-tag3) в строках выбранного набора. Если значение TAG совпадает с содержимым тега одной из строк, то фиксируется кэш-попадание, и производится выборка из этой строки операнда, адресуемого полем BYTE. Если совпадение не обнаружено, то фиксируется кэш-промах. В этом случае из основной памяти выбирается строка (32 байт), адресуемая разрядами A31-5 адреса, которая размещается в одной из строк выбранного набора. Заполнение кэш-памяти производится построчно, то есть в случае кэш-пpомаха из основной памяти копируется целая строка, включающая адресованный операнд. Пpи этом обновляется строка в наборе, номер которого определяется полем SET сформированного физического адреса. Старшие разряды адреса (поле TAG) заносятся в поле tag соответствующей строки кэш-памяти и становится атрибутом данной строки.

Пересылка строк между кэш-памятью и ОЗУ выполняется по системной шине с помощью пакетных циклов, которые позволяют заполнить строку за минимальное количество тактов. Для ускорения обмена в системах с кэш-памятью обычно используется системная шина увеличенной разрядности: 64 или 128 бит. Использование пакетных циклов и системной шины повышенной разрядности обеспечивает достаточно быстрое обновление содержимого кэш-памяти.

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

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

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

запись.

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

Каждая кэш-память имеет собственную служебную память, где хранятся биты, характеризующие содержимое ее строк: биты обращения, используемые для определения строки, содержимое которой будет обновляться, и биты состояния (бит модификации M, бит достоверности V и другие), с помощью которых обеспечивается когерентность содержимого строки в кэш-памяти и ОЗУ.

Если при чтении произошел кэш-пpомах, и кэширование данной области памяти разрешено, то производится обновление содержимого одной из строк набора, заданного полем SET адреса, в которую вводится информация из основной памяти. Новая информация замещает ранее имевшуюся в данной строке. В первую очередь замещается содержимое незаполненной («пустой») строки или недостоверной строки, содержание которой было аннулировано специальной командой. Такие строки имеют значение бита достоверности V=0. Если в данном наборе нет недостоверной (“пустой”) строки, то производится удаление из кэш-памяти содержимого строки, которая дольше всего оставалась невостребованной.

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

Рис.1.9. Установка битов LRU при обращении к строкам кэш-памяти

При инициализации процессора и очистке кэш-памяти биты LRU всех наборов кэш-памяти сбрасываются в 0. В ходе работы процессора значения битов b0-b2 устанавливаются в соответствии с тем, к каким из строк набора производились последние обращения (рис.1.9). Если в данном наборе последнее обращение выполнялось к одной из пары строк L0 или L1, устанавливается b0=1, если к L3 или L4, то устанавливается b0=0. Биты b1 и b2 указывают, к какой из строк пары L1-L2 и L3-L4 осуществлялось последнее обращение. Значение b1=0 устанавливается при обращении к L0, значение b1=1 - при обращении к L1. Соответственно, значение b2=0 или 1 устанавливается при обращении к строке L2 или L3. В соответствии с алгоритмом LRU для замены выбирается пара строк, к которым не производилось последнее обращение, а в этой паре замене подлежит строка, к которой не производилось последнее обращение. Выбранная таким образом строка считается дольше всего неиспользуемой в данном наборе, поэтому ее содержимое замещается строкой, выбираемой из ОЗУ при кэш-промахе.

Данное описание соответствует использованию наборов из четырех строк, что чаще всего реализуется в кэш-памяти микропроцессоров. Для кэш-памяти, содержащей две строки в наборе, требуется только один бит LRU для каждого набора, который принимает значение b0=0 при обращении к строке L0, и b0=1 при обращении к L1.

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

Если выполняется захват системной шины другим процессором (активным устройством) в мультипроцессорной системе, то отключаемый от шины процессор продолжает выполнение команд и обработку данных, содержащихся в кэш-памяти. Активный процессор может обратиться к данным, копии которых уже находятся в кэш-памяти процессора, отключенного от системной шины. Поэтому необходимо принять меры для обеспечения идентичности копий данных, используемых различными процессорами. Такие меры реализуются с помощью специальных средств, выполняющих снуппинг (snoop) - слежение за содержимым кэш-памяти разных процессоров, входящих в систему. При этом отключенный от системной шины процессор принимает адреса, выдаваемые на адресные линии активным процессором. Если этот адрес совпадает с адресом данных, хранящихся в одной из заполненных строк кэш-памяти данных отключенного процессора, то выполняются следующие процедуры. Если активный процессор производил запись по данному адресу, то содержимое соответствующей строки в отключенном от шине процессоре аннулируется (устанавливается значение бита V=0). Если активный процессор производил чтение по адресу модифицированной строки, имеющей значение бита модификации M=1, то отключенный процессор выполняет специальный цикл выдачи адресованных данных на внешнюю шину, чтобы активный процессор получил их модифицированный вариант.

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

достоверности V=0. При этом для обеспечения когерентности содержимое модифицированных строк переписывается в ОЗУ.

Организация памяти

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

·  линейная,

·  сегментная (блочная),

·  страничная.

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

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

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

Рис.1.10. Реализация доступа при сегментной адресации памяти

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

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

Страничная организация. Этот способ организации памяти предполагает разбиение адресуемых массивов данных или команд на относительно мелкие фрагменты – страницы. Типичный объем страницы составляет 4 Кбайт, хотя в ряде микропроцессоров обеспечивается возможность работы со страницами разного размера - от 256 байт до 4 Мбайт. Страницы могут размещаться в различных местах адресуемого пространства памяти, а их расположение определяется специальными таблицами адресов, которые обычно хранятся в ОЗУ. Страничная организация позволяет наиболее полно использовать имеющийся объем памяти, так как обеспечивает разбиение информации и ее размещение в любом свободном фрагменте памяти размером не менее одной страницы.

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

Рис.1.11. Реализация доступа при страничной организации памяти

При страничной организации памяти формируемый процессором линейный адрес используется для получения физического адреса, который образуется путем трансляции (преобразования) с помощью обращения к соответствующим таблицам адресов. На рис. 1.11 иллюстрируется процесс страничной трансляции 32-разрядного линейного адреса, выполняемый в процессорах i486 и Pentium. При этом линейный адрес обеспечивает выбор одного из 1024 разделов, каждый из которых может содержать 1024 страницы емкостью 4 Кбайт. Каталог разделов и таблицы адресов страниц хранятся в ОЗУ системы. Поле “Раздел” линейного адреса задает номер выбираемого раздела в каталоге, базовый адрес которого обычно хранится в специальном регистре страничной адресации. При этом из каталога разделов выбирается базовый адрес одной из 1024 таблиц, в которых хранятся базовые адреса страниц, входящих в соответствующий раздел. Поле “Страница” указывает в этой таблице базовый адрес страницы раздела, к которой производится обращение. Поле «Смещение» определяет позицию выбираемого операнда или команды на данной странице. Таким образом, их физический адрес формируется после процесса трансляции путем суммирования базового адреса страницы, полученного из соответствующей таблицы, и смещения, задаваемого 12 младшими разрядами линейного адреса.

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

памяти.

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

Внешние ЗУ.

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

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

Основным типом внешних ЗУ для современных микропроцессорных систем являются накопители на жестких магнитных дисках (“винчестер”), которые имеют емкость до нескольких десятков Гбайт. Они служат для постоянного хранения используемой информации – операционной системы, пакетов прикладных программ, массивов данных, разнообразных служебных программ. Время обращения к этим ЗУ составляет несколько миллисекунд, скорость записи-чтения – десятки Мбайт/с. Контроллеры этих накопителей используют специальные протоколы обмена – IDE (применяется в большинстве персональных компьютеров) или SCSI (применяется в серверах, рабочих станциях и других высокопроизводительных системах).

Для временного хранения и переноса информации с одной системы на другую служат дискеты емкостью 1,44 Мбайт (диаметр 3,5 дюйма), которые вставляются в дисковод, работающих под управлением контроллера. Накопители на магнитных лентах - стримеры производят запись информации на кассеты емкостью до нескольких десятков Гбайт и обычно служат для создания резервных копий.

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

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

4. Классификация микропроцессоров, основные варианты их архитектуры и структуры

Микропроцессор является универсальным устройством для выполнения программной обработки информации, которое может использоваться в самых разнообразных сферах человеческой деятельности. Десятки компаний-производителей выпускают несколько тысяч типов микропроцессоров, имеющих разные характеристики и предназначенных для различных областей применения. Выпускаемые микропроцессоры делятся на отдельные классы в соответствии с их архитектурой, структурой и функциональным назначением. В данном разделе дается обзор основных архитектурных и структурных вариантов реализации современных микропроцессоров, используемых в различных сферах применения. Основными направлениями развития микропроцессоров является увеличение их производительности и расширение функциональных возможностей, что достигается как повышением уровня микроэлектронной технологии, используемой для производства микропроцессоров, так и применением новых архитектурных и структурных вариантов их реализации. Развитие микроэлектронной технологии обеспечивает непрерывное уменьшение размеров полупроводниковых компонентов, размещаемых на кристалле микропроцессора. При этом уменьшаются паразитные емкости, определяющие задержку переключения логических элементов, и увеличивается число элементов, размещаемых на кристалле. В настоящее время разрешающая способность промышленной технологии изготовления микросхем обеспечивает создание компонентов с минимальными размерами 0,13-0,18 мкм. При этом обеспечивается создание микропроцессоров, работающих с тактовой частотой до 1-2 ГГц и содержащих на кристалле десятки миллионов транзисторов. В соответствии с эмпирическим правилом, которое сформулировал Гордон Мур, один из основателей компании Intel, степень интеграции микросхем удваивается каждые 1,5 – 2 года. Это правило выполнялось в течении 40 лет развития микроэлектроники, и можно прогнозировать, что оно будет выполняться и в близком будущем. Поэтому можно ожидать последующего быстрого прогресса технологии и связанного с ним повышения характеристик микропроцессоров.

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

Архитектурой процессора называется комплекс его аппаратных и программных средств, предоставляемых пользователю. В это общее понятие входит набор программно-доступных регистров и исполнительных (операционных) устройств, система основных команд и способов адресации, объем и структура адресуемой памяти, виды и способы обработки прерываний. Например, все модификации процессоров Pentium, Celeron, i486 и i386 имеют архитектуру IA-32 (Intel Architecture – 32 bit), которая характеризуется стандартным набором регистров, предоставляемых пользователю, общей системой основных команд и способов организации и адресации памяти, одинаковой реализацией защиты памяти и обслуживания прерываний.

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

Регистры общего назначения образуют РЗУ – внутреннюю регистровую память процессора (см. раздел 1.3). Состав и количество служебных регистров определяется архитектурой микропроцессора. Обычно в их состав входят:

-  программный счетчик PC (или CS + IP в архитектуре микропроцессоров Intel),

-  регистр состояния SR (или EFLAGS),

-  регистры управления режимом работы процессора CR (Control Register),

-  регистры, реализующие сегментную и страничную организацию памяти,

-  регистры, обеспечивающие отладку программ и тестирование процессора.

Кроме того различные модели микропроцессоров содержат ряд других специализированных регистров.

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

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

Структура микропроцессора определяет состав и взаимодействие основных устройств и блоков, размещенных на его кристалле. В эту структуру входят:

-  центральный процессор (процессорное ядро), состоящее из устройства управления (УУ), одного или нескольких операционных устройств (ОУ),

-  внутренняя память (РЗУ, кэш-память, в микроконтроллерах - блоки оперативной и постоянной памяти),

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

-  периферийные устройства (таймерные модули, аналого-цифровые преобразователи, специализированные контроллеры),

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

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

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4