<< Пред. стр. 4 (из 12) След. >>
Запоминающий элемент динамической памяти состоит из одного миниатюрного конденсатора, управляемого одним или двумя транзисторами. Значение бита информации (0 или 1) в таком элементе определяется наличием или отсутствием заряда на конденсаторе. Простота схемы позволяет достичь высокой плотности размещения запоминающих элементов на микросхеме памяти и, в итоге, снизить ее стоимость. Главный недостаток подобной технологии связан с тем, что накапливаемый на конденсаторе заряд со временем теряется. Поэтому требуется периодическое восстановление заряда, которое называется регенерацией. Время срабатывания триггера в современных микросхемах составляет единицы наносекунд. Быстродействие динамической памяти ниже из-за необходимости ожидания накопления (стекания) заряда на пластинах конденсатора. Однако плотность компоновки ячеек DRAM по сравнению с ячейками SRAM существенно выше, а стоимость производства ниже.Энергонезависимые способы хранения информации на основе электронных микросхем прошли значительную эволюцию своего развития и совершенствования. Микросхемы энергонезависимой памяти относят к классу микросхем типа ROM (Read-Only Memory – «память только для чтения»). Однако, как будет следовать из дальнейшего изложения, название такой памяти – «память только для чтения» – также не является полностью корректным, потому что современные типы микросхем типа ROM допускают достаточно простые способы записи и изменения хранящейся информации. Микросхемы типа ROM по возможностям и способу программирования разделяют на программируемые при изготовлении, однократно программируемые после изготовления и многократно программируемые.
К микросхемам, программируемым при изготовлении, относятся микросхемы, часто именуемые MROM (MaskProgrammable ROM – «память только для чтения, программируемая с помощью маски»). Занесение информации в масочные микросхемы составляет часть производственного процесса и заключается в подключении или неподключении запоминающего элемента к разрядной линии считывания. В зависимости от этого из запоминающего элемента будет извлекаться 1 или 0. В роли перемычки выступает транзистор, расположенный на пересечении адресной и разрядной линий. Какие именно запоминающие элементы должны быть подключены к выходной линии, определяет маска, «закрывающая» определенные участки кристалла. В настоящее время масочные микросхемы – это один из наиболее дешевых видов ROM. Для них характерна высокая плотность упаковки запоминающих элементов на кристалле и высокие скорости считывания информации. Основной сферой применения масочных микросхем являются устройства, требующие хранения фиксированной информации. Например, они часто используют для хранения шрифтов в печатающих устройствах.
Среди микросхем, однократно программируемых после изготовления, исторически первыми и наиболее распространенными стали микросхемы памяти PROM (Programmable ROM – «программируемая память только для чтения») на базе плавких предохранителей. В исходной микросхеме во всех узлах адресные линии соединены с разрядными. Занесение информации в PROM производится электрически, путем пережигания отдельных перемычек, и может быть выполнено поставщиком или потребителем спустя какое-то время после изготовления микросхемы. Позже появились микросхемы, в которых в перемычку входили два диода, соединенные навстречу. В процессе программирования удалить перемычку можно было с помощью электрического пробоя одного из этих диодов. В любом варианте для записи информации требуется специальное оборудование – программаторы.
Класс многократно программируемых микросхем состоит из нескольких групп устройств. Обычно выделяют группы микросхем EPROM, UV-EPROM, EEPROM и так называемую флэш-память.
Микросхема памяти EPROM (Erasable Programmable ROM – «многократно программируемая память только для чтения») была основана на транзисторах типа МОП (металл – оксид – полупроводник). Запись данных в ячейки такого транзистора производилась путем облучения рентгеновскими лучами, который давал возможность неоднократно перезаписывать данные памяти, хотя количество циклов было ограниченным.
В микросхемах UV-EPROM (Ultra-Violet Erasable Programmable ROM – «программируемая память только для чтения, стираемая ультрафиолетовыми лучами») запись информации производится электрическими сигналами, однако перед операцией записи содержимое всех ячеек должно быть приведено к одинаковому состоянию (стерто) путем воздействия на микросхему ультрафиолетовым облучением. Микросхема помещается в керамический корпус, имеющий кварцевое окно, через которое и производится ультрафиолетовое облучение. Чтобы предотвратить случайное стирание информации, после облучения кварцевое окно заклеивают непрозрачной пленкой. Процесс стирания может выполняться многократно. Заряженный запоминающий элемент соответствует двоичному нулю, а разряженный – единице. Цикл программирования занимает несколько сотен миллисекунд. По сравнению с PROM микросхемы EPROM дороже, но возможность многократного перепрограммирования часто является определяющей.
Более привлекательным вариантом многократно программируемой памяти является электрически стираемая программируемая постоянная память EEPROM (Electrically Erasable Programmable ROM – «электрически стираемая программируемая память только для чтения»). Стирание и запись информации в эту память производятся побайтово, причем стирание – не отдельный процесс, а лишь этап, происходящий автоматически при записи. Операция записи занимает существенно больше времени, чем считывание – несколько сотен микросекунд на байт. В микросхеме используется тот же принцип хранения информации, что и в EPROM. Программирование EEPROM не требует специального программатора и реализуется средствами самой микросхемы. Выпускаются два варианта микросхем: с последовательным и параллельным доступом, причем на долю первых приходится 90% всего выпуска микросхем этого типа. В EEPROM с доступом по последовательному каналу (SEEPROM – Serial EEPROM) адреса, данные и управляющие команды передаются по одному проводу и синхронизируются импульсами на тактовом входе. Преимуществом SEEPROM являются малые габариты и минимальное число линий ввода/вывода, а недостатком – большое время доступа. В целом EEPROM дороже, чем UV-EPROM, а микросхемы имеют менее плотную упаковку ячеек, то есть меньшую емкость.
Флэш-память – разновидность энергонезависимой перезаписываемой памяти на электронных микросхемах. Она впервые анонсирована в середине 1980-х годов корпорацией Toshiba, а затем и корпорация Intel выпустила свой вариант флэш-памяти, после чего начался интенсивный процесс развития этого вида памяти.
В настоящее время выпускается два основных типа флэш-памяти: NOR (логика ячеек NOT OR) и NAND (логика ячеек NOT AND). В качестве элементарных запоминающих ячеек во флэш-памяти используются транзисторы (один или два), которые подключены к разрядным шинам в памяти типа NOR параллельно, а в памяти типа NAND – последовательно. Идея хранения данных основана на том, что такой транзистор способен сохранять заряд, соответственно позволяя определить его наличие или отсутствие и таким образом кодировать двоичную информацию. При записи заряд помещается на управляющий затвор транзистора (посредством переноса электронов или с использованием квантово-механических эффектов туннелирования – это зависит от типа памяти). Слово «флэш» (flash) в названии памяти скорее всего возникло из-за того, что операция записи требует подачи на сток и управляющий затвор транзистора высокого напряжения (отсюда flash, которое можно перевести как «молния», «вспышка»). Электроны с энергией, достаточной для преодоления потенциального барьера, создаваемого пленкой диэлектрика, переносятся на затвор, тем самым изменяя вольт-амперные характеристики транзистора. Аналогично, при стирании высокое напряжение подается на исток.
При организации логической схемы типа NOR требуется контакт на каждом транзисторе, а в схеме NAND используется контактная матрица. Благодаря этому схема NAND позволяет определить не только наличие или отсутствие заряда в ячейке, но и допускает измерение его величины, что дает возможность хранения двух битов информации в одном транзисторе (так называемые многоуровневые ячейки). Teoретически возможно хранение даже трех и более битов (известны образцы схем, хранящие до 8 бит), но на практике изготовление таких микросхем сопряжено с рядом технологических сложностей. Кроме того, хотя такой подход дает возможность снизить удельную стоимость хранения данных, он требует усложнения контроллеров и памяти. Память типа NOR обеспечивает возможность произвольного чтения-записи данных (вплоть до отдельных байтов) и быстрое считывание, но при этом относительно медленные схемы записи и стирания. Кроме того, такая память имеет довольно крупные ячейки (так как к каждой необходимо подвести контакт), что вызывает закономерные сложности в изготовлении и повышении емкости. Память типа NAND обеспечивает блочный доступ, быстрые процедуры стирания и записи, дешевизну и простоту наращивания емкости модулей. Данные на флэш-памяти NAND считываются поблочно. Размер единичного блока варьируется от 256 байт до 256 Кбайт, практически все современные микросхемы позволяют работать с блоками разного размера. Эта схема значительно снижает скорость записи небольших объемов данных в произвольные области памяти, но в то же время и увеличивает быстродействие при последовательной записи больших массивов данных. Благодаря блочной организации флэш-памяти NAND она дешевле сопоставимой по емкости памяти других типов.
Процедуры записи-стирания вызывают интенсивный износ ячейки флэш-памяти, именно поэтому у таких микросхем ограничен ресурс циклов перезаписи (хотя он и относительно значительный – порядка миллионов циклов). Однако технологии производства флэш-памяти постоянно совершенствуются, внедряются оптимизирующие способы записи микросхемы, а также алгоритмы, направленные на равномерное использование всех ячеек в процессе работы. С учетом того, что во флэш-памяти достигается более высокая плотность размещения информации на кристалле, чем в памяти типа DRAM (на 30% и более), при достижении более высоких сроков службы флэш-память может заменить память DRAM во многих сферах применения последней.
Хотя флэш-память и лидирует на компьютерном рынке, ее могут вытеснить другие новые технологии, например, новейшая память на кремниевых нанокристаллах с повышенной степенью надежности.
В запоминающих устройствах на магнитных носителях информация записывается и считывается с поверхности специального носителя (диска, ленты, карты), покрытого магнитным слоем. Запись и чтение производятся так называемыми магнитными головками, представляющими собой электромагниты с сердечником и обмоткой, по которой пропускается электрический ток. До записи информации ориентация на носителе элементарных магнитных участков (диполей или доменов) хаотичная, усредненное значение магнитной индукции на всех участках носителя близко к нулю. Информация записывается на магнитный слой с помощью электромагнитных импульсов нужной полярности, генерируемых током в обмотке головки. Головка намагничивает находящийся непосредственно под ней участок магнитного слоя носителя, изменяя таким образом вектор его намагниченности. После записи ориентация диполей становится упорядоченной. Диполи с противоположными направлениями векторов намагниченности интерпретируются соответственно как 0 или 1. Эта же головка используется и для чтения информации. В этом случае изменение магнитного поля вблизи головки, вызываемое движением носителя информации, индуцирует напряжение в обмотке. Управляющие схемы фиксируют полярность этого напряжения, определяют состояние магнитного покрытия диска и декодируют ранее записанную информацию. В штатном режиме считывание происходит без разрушения информации и может выполняться многократно. Перемагничивание участков магнитного слоя может происходить лишь в том случае, если магнитное поле в них преодолеет некоторый порог (так называемую коэрцитивную силу), свойственный данному носителю. Этот режим обеспечивается при новой записи или при намеренном удалении («стирании») информации. Информация на магнитных носителях сохраняется энергонезависимо и долговременно.
Следует отметить, что при чтении данных фиксируются только изменения магнитного поля под головкой. Если двоичные значения 0 и 1 представлены двумя противоположными состояниями намагниченности, то напряжение в головке индуцируется только при переходе от 0 к 1 или от 1 к 0. Однако если на носителе хранится строка последовательных нулей или единиц, напряжение индуцируете только в начале и конце этой строки. Для определения количества последовательно расположенных нулей или единиц используется специальная синхронизирующая информация, позволяющая отсчитать количество позиций, которые имеют одинаковое направление намагниченности. На практике применяются различные по сложности и эффективности схемы кодирования, синхронизации и декодирования информации при чтении. Их рассмотрение выходит за рамки данного учебного пособия.
В запоминающих устройствах на оптических носителях информация записывается и считывается лазерным лучом с поверхности так называемого оптического диска. Информация в двоичном представлении трактуется как изменения геометрических или структурных характеристик рабочей поверхности диска, а именно наличия участков поверхности с углублениями – «питами» (от «pits» – «впадины») или оптически более темных и оптически более светлых участков поверхности. При записи информации такие участки специально формируются лазерным лучом высокой интенсивности. При чтении на поверхность диска направляется менее интенсивный лазерный луч, который по-разному отражается при сканировании непрерывных участков поверхности диска и границ между этими участками. Отраженный луч фокусируется в фотодетекторе, который и фиксирует записанные на диске двоичные данные. Информация на оптических носителях хранится энергонезависимо в течение относительно продолжительного этапа времени.
3.2. Иерархия запоминающих устройств
Быстродействие процессоров на протяжении всей истории эволюции ВМ существенно превышало быстродействие запоминающих устройств. Причем разница в быстродействии процессоров и памяти постоянно увеличивается. Поэтому для разработчиков ВМ всегда было и остается актуальным решение задач повышения скорости функционирования ЗУ. Однако при повышении быстродействия памяти до сих пор явно отслеживается в общем-то естественная физическая закономерность: чем выше быстродействие памяти (меньше параметр «время доступа»), тем выше удельная стоимость хранения информации, и наоборот, чем ниже удельная стоимость хранения информации, а соответственно экономически оправданно построение запоминающих устройств с большой емкостью, тем ниже их быстродействие.
Важными характерными свойствами большинства практически реализуемых вычислительных процессов являются свойства пространственной и временной локальности команд и данных программы.
Под пространственной локальностью команд и данных понимаются следующие характерные особенности программ: при их выполнении с очень высокой вероятностью адрес очередной команды программы либо следует непосредственно за адресом, по которому была считана текущая команда, либо расположен вблизи него, а обрабатываемые данные, как правило, структуированы и хранятся в последовательных ячейках памяти, поэтому после обращения к данным по некоторому адресу также с высокой степенью вероятности в ближайшее время произойдет обращение к соседним адресам.
Под временной локальностью команд и данных подразумевается наибольшая вероятность обращения по одному и тому же адресу в ближайшее время. Эта особенность объясняется тем, что большинство программ содержит множество циклов и вызовов подпрограмм, поэтому небольшие наборы команд могут многократно повторяться в течение некоторого интервала времени, а итерационные данные заноситься в одни и те же ячейки памяти.
Опираясь на накопленные статистические сведения, иногда свойства локальности выражают в численной форме в виде так называемого правила «90/10»: 90% времени работы программы связано с доступом к 10% адресного пространства этой программы.
Из свойства локальности вытекает, что программу разумно представить в виде последовательно обрабатываемых фрагментов – компактных групп команд и данных. Помещая такие фрагменты в более быструю память, можно существенно снизить общие задержки на обращение, поскольку команды и данные, будучи один раз переданы из медленного ЗУ в быстрое, затем могут использоваться многократно, и среднее время доступа к ним в этом случае определяется уже более быстрым ЗУ. Это позволяет хранить большие программы и массивы данных в более медленных и дешевых, но больших по емкости ЗУ, а в процессе обработки активно использовать сравнительно небольшую быструю память.
Все вышесказанное подтверждает необходимость решения компромиссной задачи иерархического размещения разных типов ЗУ в зависимости от их быстродействия, емкости и удельной стоимости хранения информации. Для увеличения эффективности работы системы «процессор – память» более быстродействующая память должна быть расположена ближе к процессору. Другими словами, чем выше тот или иной тип ЗУ в иерархии (ближе к процессору), тем выше должно быть его быстродействие.
Центральное место в иерархии памяти ВМ занимает основное ЗУ (основная или внутренняя память). С точки зрения структурной организации ВМ (см. подраздел 1.2) основное ЗУ является определяющим и минимально необходимым запоминающим устройством. Основное ЗУ включает в себя два типа устройств: оперативные запоминающие устройства (ОЗУ) и постоянные запоминающие устройства (ПЗУ).
ОЗУ (или оперативная память) образует преимущественную долю основной памяти и называется оперативным, потому что используется для временного оперативного хранения информации (программ и данных) и оперативного обмена этой информацией с процессором, внешней памятью и периферийными подсистемами ВМ. В ОЗУ допускается как запись, так и считывание информации, причем обе операции выполняются однотипно, практически с одной и той же скоростью, и производятся с помощью электрических сигналов. Оперативная память в подавляющем большинстве практических случаев строится на базе микросхем динамической памяти DRAM. Хотя и предлагаются другие механизмы оперативного сохранения информации (например, микросхемы памяти типов MRAM и FeRRAM), ни одному из них пока не удалось даже приблизиться к тому соотношению емкости, стоимости и скорости работы, которое обеспечивают микросхемы на основе традиционного механизма DRAM. Известные и широко применяемые для других типов памяти быстродействующие микросхемы SRAM занимают относительно большую площадь и не позволяют получить недорогие микросхемы высокой емкости. Существующие менее дорогостоящие технологии не обеспечивают достаточного быстродействия, а недорогие и сравнительно быстрые технологии (например, флэш-память) пока имеют ограниченный для условий работы ОЗУ срок службы. То есть, элементарная ячейка DRAM до сих пор остается практически единственным вариантом фундамента, на котором строятся все массовые типы современной оперативной памяти.
Вторую группу полупроводниковых ЗУ основной памяти образуют энергонезависимые микросхемы ПЗУ, которые главным образом обеспечивают только хранение и считывание информации. Термин «постоянные» в данном случае характеризует этот тип ЗУ прежде всего с точки зрения энергонезависимости, а не «постоянства» хранимой информации в смысле невозможности ее изменения. В настоящее время все шире используются такие физические типы ПЗУ и такие программные средства, которые при необходимости позволяют достаточно просто производить запись информации в ПЗУ и таким образом изменять содержимое ПЗУ. Указание же на то, что этот тип ЗУ предназначен в основном только для хранения и считывания информации отражает принципиально важную характеристику такой памяти в большинстве штатных случаев ее функционирования.
ПЗУ строится на основе различных вариантов микросхем класса ROM и используется для энергонезависимого хранения постоянной или, по-другому, неизменной (точнее редко изменяемой) программной и справочной информации – комплекта программ базовой системы ввода/вывода (BIOS – Basic Input Output System), драйверов постоянно используемых устройств, программ тестирования аппаратных средств, таблиц знакогенераторов, стандартных справочных сообщений и т. п.
BIOS реализует следующие основные функции:
1) выполнение при включении компьютера так называемой проверки POST (Power On Self Test) – тестовой проверки всех важнейших компонентов системы;
запуск загрузчика операционной системы – Bootstrap Loader;
обслуживание аппаратных прерываний от системных устройств – BIOS Hardware Interrupts;
предоставление операционной системе аппаратных драйверов и осуществление сопряжения между системной платой и компонентами компьютера – ROM BIOS Services;
предоставление для настройки специальной программы установки параметров BIOS и аппаратной конфигурации компьютера – программы CMOS Setup.
В момент включения компьютера в его ОЗУ нет ни данных, ни программ, но процессору для работы нужны команды, в том числе и в первый момент времени после включения. Поэтому сразу после включения на его адресной шине выставляется стартовый адрес. Это происходит аппаратно, без участия программ (всегда одинаково). Этот исходный адрес указывает не ОЗУ (которое в момент включения компьютера является пустым), а область ПЗУ, где записан комплект программ BIOS. Из BIOS считываются команды, и начинается процесс запуска компьютера. Работа ряда стандартных устройств обслуживается программами (драйверами), входящими в BIOS, но такими средствами нельзя обеспечить работу со всеми возможными устройствами. Сведения о параметрах других внешних устройств, например, жестких и гибких дисках, а также сведения о конфигурации компьютера и ее изменениях записываются и хранятся в специальной области энергонезависимой памяти, называемой (традиционно по термину технологии изготовления) CMOS Memory. Она размещается в специальной микросхеме – контроллере. На этот контроллер непрерывно подается питание от специальной аккумуляторной батареи, расположенной на системной (материнской) плате, поэтому содержимое CMOS Memory сохраняется при выключении компьютера. Иногда такую память называют ППЗУ – «полупостоянное» ЗУ. От ПЗУ эта память отличается тем, что данные в нее можно записывать и изменять автоматически или самостоятельно с помощью программы CMOS Setup в соответствии с тем, какие аппаратные компоненты входят в состав данного компьютера. В микросхеме CMOS хранятся сведения о гибких и жестких дисках, о процессоре, о некоторых других устройствах материнской платы. Программы, записанные в BIOS, считывают данные о составе оборудования компьютера из микросхемы CMOS, после чего они могут выполнить обращение к жесткому (а при необходимости и к гибкому или оптическому диску) и передать управление тем программам, которые там записаны. Кроме сохранения установок CMOS Setup аккумуляторная батарея обеспечивает постоянный ход часов реального времени (Real Time Clock – RTC) и переключение даты.
Выше основной памяти по иерархии (ближе к процессору) размещается кэш-память. На самой верхней ступени иерархии памяти находятся внутренние регистры процессора. Внутренние регистры и кэш-память выполняются на основе быстродействующего типа памяти – SRAM.
Ниже основной памяти в иерархическом ряду располагается так называемая внешняя (или вторичная) память, включающая прежде всего ЗУ на магнитных дисках, а уже затем на других типах носителей (оптических дисках, магнитных лентах, мобильных носителях информации). Внешняя память строится на относительно медленных ЗУ большой емкости, а для ее именования обычно используют термин «внешняя», поскольку к «ядру» ВМ перечисленные типы ЗУ подключаются аналогично устройствам ввода/вывода.
По мере движения вниз по иерархической структуре уменьшается удельная стоимость хранения информации, увеличивается время доступа к ней, возрастает емкость ЗУ и уменьшается частота обращений к памяти со стороны центрального процессора.
На каждом уровне иерархии информация разбивается на блоки, выступающие в качестве наименьшей информационной единицы, пересылаемой между двумя соседними уровнями иерархии. Размер блоков может быть фиксированным либо переменным. При фиксированном размере блока емкость памяти обычно кратна его размеру. Размер блоков на каждом уровне иерархии чаще всего различен и увеличивается от верхних уровней к нижним.
Оптимальное распределение разных типов ЗУ по уровням иерархии памяти способствует существенному повышению производительности ВМ в целом.
3.3. Организация, функционирование и характеристики запоминающих устройств основной памяти
Оперативное ЗУ организовано как массив элементарных ячеек памяти, к которым обеспечивается произвольный доступ. Каждая ячейка имеет уникальный адрес, позволяющий различать ячейки при обращении к ним для выполнения операций записи и считывания. Для традиционных типов ОЗУ на базе DRAM характерна энергозависимость – даже при кратковременном прерывании питания хранимая информация теряется. Поэтому в рабочем состоянии микросхемы ОЗУ должны быть постоянно подключены к источнику питания.
Ячейки динамической памяти объединяются в двумерную матрицу, где каждая ячейка адресуется номерами строки и столбца, на пересечении которых она находится. К микросхемам памяти подводятся шины управления, адреса и данных, которые используются для передачи соответственно команд (управляющих работой микросхем памяти), адресов строк и столбцов, данных (подробнее об указанных шинах см. в разделе 5). При матричной организации микросхем памяти реализуется координатный принцип адресации ячеек. Адрес ячейки, поступающий по шине адреса ВМ, пропускается через блок логики выбора, где он разделяется на две составляющие: адрес строки и адрес столбца. Адреса строки и столбца запоминаются соответственно в регистре адреса строки и регистре адреса столбца микросхемы. Регистры соединены каждый со своим дешифратором. Выходы дешифраторов образуют систему горизонтальных и вертикальных линий, к которым подсоединены запоминающие элементы матрицы, при этом каждый запоминающий элемент расположен на пересечении одной горизонтальной и одной вертикальной линии. Запоминающие элементы, объединенные общим «горизонтальным» проводом, принято называть строкой (row). Запоминающие элементы, подключенные к общему «вертикальному» проводу, называют столбцом (column). Фактически «вертикальных» проводов в микросхеме должно быть, по крайней мере, вдвое больше, чем это требуется для адресации, поскольку к каждому запоминающему элементу необходимо подключить линию, по которой будет передаваться считанная и записываемая информация.
Совокупность запоминающих элементов и логических схем, связанных с выбором строк и столбцов, называют ядром микросхемы памяти. Помимо ядра в микросхеме имеется еще интерфейсная логика, обеспечивающая взаимодействие ядра с внешними блоками. В ее задачи, в частности, входят коммутация нужного столбца на выход при считывании и на вход – при записи.
Для синхронизации процессов фиксации и обработки адресной информации внутри микросхемы адрес строки (RA – Row Address) сопровождается сигналом RAS (Row Address Strobe – строб адреса строки), а адрес столбца (СА – Column Address) – сигналом CAS (Column Address Strobe – строб адреса столбца). Вторую букву в аббревиатурах RAS и CAS иногда расшифровывают как Access – «доступ», то есть имеется строб доступа к строке и строб доступа к столбцу. Чтобы стробирование было надежным, эти сигналы подаются с задержкой, достаточной для завершения переходных процессов на шине адреса и в адресных цепях микросхемы.
Первоначально микросхемы DRAM-памяти работали независимо от тактовых импульсов, передаваемых по шине, т. е. асинхронно (асинхронная память DRAM). Асинхронный принцип предполагает, что момент начала очередного действия определяется только моментом завершения предшествующей операции. Перенося этот принцип на систему памяти, необходимо принимать во внимание, что контроллер памяти всегда работает синхронно. В асинхронных ЗУ цикл чтения начинается только при поступлении запроса от контроллера памяти, и если память не успевает выдать данные в текущем такте, контроллер может считать их только в следующем такте, поскольку очередной шаг контроллера начинается с приходом очередного тактового импульса. Причем контроллер памяти не управляет временными параметрами этого процесса и не «знает» точно, сколько времени нужно микросхемам памяти, чтобы подготовить данные для передачи, и на каком такте начнется передача. Поэтому при работе памяти асинхронного типа обычна ситуация, когда микросхемы памяти уже подготовили данные, запрошенные контроллером, и готовы начать их передачу, но ждут для этого прохождения по шине очередного тактового импульса. В последнее время асинхронная схема работы памяти активно вытесняется синхронной. Синхронная память SDRAM (Synchronous DRAM) построена так, что все операции выполняются по тактовым импульсам. В этом случае контроллер памяти точно «знает», в течение скольких тактов микросхемы памяти будут готовить запрошенные данные для передачи и на каком такте начнется их передача. Жесткая синхронизация с тактовым сигналом упрощает логику управления работой подсистемы памяти, сокращает «накладные» расходы на передачу служебной информации и, в конечном итоге, повышает скорость работы памяти.
В SDRAM-памяти цикл чтения-записи данных осуществляется в несколько шагов (см. рис. 3.1). Вначале на шине адреса выставляется адрес строки, а на шине управления активизируется стробирующий сигнал строк RAS. Приняв сигнал RAS, микросхема памяти «понимает», что на шине адреса выставлен адрес строки, с которой ей предстоит работать, и записывает его в свой внутренний регистр, после чего необходимость в удержании последнего на шине адреса пропадает – микросхема его уже запомнила.
Рис.3.1. Временная диаграмма цикла чтения-записи данных
SDRAM-памяти
Затем микросхема считывает данные с конденсаторов нужной строки и записывает их в буферный усилитель. Для выполнения этой операции микросхеме требуется какое-то время, называемое «RAS-to-CAS Delay» (задержка сигнала СAS после сигнала RAS), которое обычно составляет 2–3 тактовых цикла и обозначается Trcd. Далее на шине адреса выставляется адрес столбца (или столбцов), а на шине управления активизируется стробирующий сигнал столбцов CAS. Микросхема, приняв сигнал CAS, «понимает», с каким элементом (элементами) строки данных, записанной ранее в буферный усилитель, предстоит работать, и готовится к тому, чтобы «выдать» его (их) значения на шину данных. Для совершения этой операции ей тоже требуется время, называемое «CAS Latency» (задержка после сигнала CAS), которое, как правило, составляет 2 – 3 тактовых цикла и обозначается Tcl.
Затем производится чтение или запись данных. При чтении данные, ранее подготовленные микросхемой к выдаче, подаются на шину данных и считываются контроллером памяти. При записи данные, выданные ранее контроллером памяти на шину данных, записываются в соответствующие ячейки строки, находящейся в буферном усилителе.
Далее производится снятие сигнала CAS. Исчезновение сигнала CAS с шины управления означает, что все операции ввода-вывода данных закончились. После этого производится снятие сигнала RAS. Исчезновение сигнала RAS означает, что прекращена работа со строкой данных, находящейся в буферном усилителе.
Затем производится зарядка конденсаторов. На этом этапе значения ячеек строки, находящейся в буферном усилителе, записываются в соответствующие конденсаторы микросхемы памяти, после чего микросхема будет снова готова к выполнению очередного цикла чтения-записи данных. Длительность этого этапа называется RAS Precharge Time (время заряда до сигнала RAS), поскольку, как только он завершится, на шину управления можно снова подавать сигнала RAS . Промежуток времени, необходимый для этого этапа, составляет 2 – 3 тактовых цикла и обозначается Trp.
В последнее время все рабочие характеристики модулей SDRAM-памяти записываются в установленные на них SPD-микросхемы (Serial Presence Detect – «определение серийных характеристик»). Системная плата может считывать данные, «прошитые» в SPD-микросхемах, и в соответствии с ними автоматически устанавливать режим работы с модулями SDRAM-памяти. Однако ряд рабочих параметров SDRAM-памяти все же можно настроить средствами программы настройки BIOS современных системных плат, что можно использовать для разгона или, наоборот, замедления памяти (если память работает неустойчиво). Отметим наиболее важные из них:
DRAM Clock – частота тактового сигнала шины памяти. Стандартно – 100, 133 МГц или By SPD (в соответствии со значением, хранящимся в SPD-микросхеме);
RAS-to-CAS Delay – время задержки сигнала CAS после сигнала RAS (2 или 3 тактовых цикла);
СAS Latency – время задержки после сигнала CAS (2; 2,5 или 3 тактовых цикла);
RAS Precharge Time – время заряда до сигнала RAS (2 или 3 тактовых цикла).
Следующие параметры требуют предварительного пояснения.
В SDRAM-памяти данные могут читаться в режиме произвольного или пакетного (burst) доступа. При произвольном доступе по шине данных однократно передается один элемент данных (например, одно слово), после чего цикл чтения заканчивается. При этом от момента подачи сигнала RAS до момента начала передачи данных по шине в идеальном случае проходит пять тактовых циклов: ожидание в течение времени «RAS-to-CAS Delay» – 2 такта, подача на адресную шину адреса столбца (или столбцов) и активирование на командной шине сигнала CAS – 1 такт, ожидание в течение времени «CAS Latency» – 2 такта. При пакетном доступе после передачи по шине первого элемента данных цикл чтения не заканчивается, а продолжается. При этом каждый последующий такт контроллера памяти считывает еще один элемент данных, который находился в той же строке данных, что и первый, и вместе с ним был «выдан» микросхемой памяти на шину данных. Как правило, при пакетном доступе за один цикл чтения обрабатывается до четырех или восьми элементов. В идеальном случае при передаче четырех элементов эта схема обозначается как «5-1-1-1», а при восьми – «5-1-1-1–1-1-1-1». Поэтому параметр DRAM Timing, соответствующий схеме работы SDRAM-памяти, может иметь характерные значения 5-1-1-1, 5-2-2-2, а параметр DRAM Burst Length, обозначающий количество элементов, передаваемых за один цикл в пакетном режиме, принимает значения 4 или 8.
Емкость основной памяти современных ВМ слишком велика, чтобы ее можно было реализовать на базе единственной микросхемы. Необходимость объединения нескольких микросхем ЗУ возникает также, когда разрядность ячеек в микросхеме ЗУ меньше разрядности слов ВМ. Отдельные микросхемы памяти могут объединяться в логические банки, с которыми возможна одновременная работа. Такой прием называется «чередованием банков» (Bank Interleaving) и он ускоряет работу памяти. Например, если требуется последовательно считать данные сначала из первого банка, а потом из второго, то контроллер памяти может начать считывать данные из второго банка, не дожидаясь окончания цикла чтения из первого. Стандартные значения параметра Bank Interleave: Disabled – не использовать чередование банков, 2 Bank – чередование между двумя банками, 4 Bank – чередование между четырьмя банками.
Так как конденсаторы динамической памяти чрезвычайно малы, высока вероятность непроизвольного изменения их состояния из-за паразитных утечек или наводок. Для исключения утраты данных периодически проводятся циклы регенерации с определенной частотой (Refresh Rate), которые обычно инициируются специализированными микросхемами. В современных модулях используются циклы регенерации, измеряемые числом строк (в тысячах), обновляемых за один такт.
Важнейшей характеристикой микросхемы памяти является быстродействие. Оно определяется временем выполнения элементарных действий между двумя операциями чтения либо записи данных. Последовательность этих операций называют рабочим циклом (или циклом обращения). Он включает указание адреса данных, чтение (запись). Время, необходимое для чтения (записи) данных по случайному адресу, называется временем доступа (Access time). Для современных микросхем оно составляет от 40 до 60 нс, что соответствует частоте появления данных от 16,7 до 25 МГц на выходе микросхемы.
В реальных условиях обращение к памяти происходит не по случайному адресу, поэтому рабочий цикл (цикл обращения) короче времени доступа.
По мере усовершенствования микросхем DRAM (FPM DRAM, EDO DRAM, BEDO DRAM, SDRAM) длительность времени цикла обращения уменьшалась и стала показателем их быстродействия. В синхронной памяти SDRAM для запуска сигналов стробирования используется внешний импульс от системной шины, поступающий с той же частотой, на которой она работает. Поэтому вместо указания времени цикла обращения (типовые значения составляют 12, 10, 8, 7 и 6 нс) для модулей SDRAM указывают максимально допустимую рабочую частоту в мегагерцах.
В обозначении модулей памяти встречается аббревиатура ECC – это технология выявления и исправления ошибок (Error Checking and Correction), которая заменила так называемый контроль четности в современных модулях памяти. При этом каждый бит данных включается более чем в одну контрольную сумму, поэтому при возникновении в нем ошибки возможно восстановить адрес и исправить сбойный бит.
Асинхронная память типа DRAM ранее выпускалась в виде так называемых модулей конструктива SIMM (Single Inline Memory Module – «односторонне расположенные контакты модулей памяти»). Пришедшая ей на смену синхронная память SDRAM имеет модули памяти конструктива DIMM (Double Inline Memory Module – «двусторонне расположенные контакты модулей памяти») и 64-разрядный интерфейс. Память SDRAM начала свой путь с частоты 66 МГц (обозначение модулей – PC66) и объемов памяти 16, 32, 64 Мбайт. Затем частоты были повышены до 100 МГц (PC100) и 133МГц (PC133), а объемы – до 128, 256, 512 Мбайт. Пиковая пропускная способность памяти PC 133 достигает 1064 Мбайт/с. К настоящему времени SDRAM считается устаревшей модификацией синхронной памяти.
С интенсивным увеличением рабочих частот новых процессоров их производительность стала существенно ограничиваться частотными возможностями оперативной памяти. Это особенно актуально для высокоскоростных процессоров класса Pentium 4, имеющих шины с пропускной способностью 4,26; 6,4 Гбайт/с и выше, которые вынуждены при отсутствии необходимых данных в кэш-памяти простаивать в ожидании данных из ОЗУ в течение значительного количества тактов. С появлением новых мощных операционных систем ужесточились требования и к объему ОЗУ. При малых объемах ОЗУ операционной системе приходится чаще считывать данные с жесткого диска, быстродействие которого гораздо ниже, чем оперативной памяти. Это также существенно сказывается на производительности ВМ в целом.
Есть два очевидных пути повышения производительности памяти: увеличение ширины ее шины или увеличение частоты работы ее микросхемы.
Частота ячейки DRAM за все время существования этой памяти, насчитывающее несколько десятилетий, изменилась всего на порядок и приблизилась к своему технологическому пределу. При сохранении классической организации ячейки памяти поднимать частоту ее работы достаточно сложно. Для этого необходимо, также как и в процессорных микросхемах, уменьшение геометрических размеров ячейки. Однако переход на новые технологические процессы требует больших финансовых затрат, что приводит к существенному повышению стоимости такой памяти. Увеличение ширины шины памяти также ограничено технологическими возможностями. Например, проектирование разводки и производство системных плат с 128-битной шиной гораздо более трудоемки и финансово затратны по сравнению с теми платами, на которых разведены только 64-битные шины памяти. А стоимость разработки и производства плат с 256-битной шиной настолько велико, что фактически оправданно только для сегмента дорогостоящих высокопроизводительных серверов.
Одним из возможных путей решения указанной проблемы (наиболее эффективным и технологически реализуемым на современном этапе технического развития) является использование так называемого принципа мультиплексирования. Рассмотрим его механизмы на примере развития памяти SDRAM (см. рис. 3.2).
Рис 3.2. Архитектура модулей памяти на базе микросхем DRAM:
а – SDR, б – DDR, в – DDR2
(Fс – частота микросхемы, Fш – частота шины, Fэ – эффективная частота)
Как уже было сказано, память SDRAM состоит из массива ячеек DRAM, буферов ввода-вывода и усилителей уровня сигнала (I/O buffers), а также схемы питания и регенерации. Все три подсистемы работают на одной тактовой частоте, то есть синхронно. Для примера выберем частоту 100 МГц. Это означает, что из массива ячеек памяти данные по шине шириной 64 бита, попадают в буферы ввода-вывода. Оттуда они по такой же шине шириной 64 бита передаются дальше, контроллеру памяти. Модуль памяти, составленный из таких микросхем, известен как память PC 100 с пропускной способностью 800 Мбайт/с. Данные передаются один раз за такт по переднему фронту сигнала.
Улучшенным вариантом памяти SDRAM стала память типа DDR SDRAM (Double Data Rate SDRAM – «синхронная память с удвоенной скоростью передачи данных»). После появления DDR SDRAM обычную память SDRAM начали именовать идентично: SDR SDRAM (Single Data Rate SDRAM SDRAM – «синхронная память с одинарной скоростью передачи данных»). Память DDR SDRAM получила свое название потому, что позволяет при той же тактовой частоте работы микросхем передавать данные вдвое быстрее, чем классическая SDRAM, а именно по два раза за такт – по переднему и заднему фронтам сигнала. При этом сами ячейки памяти DRAM работают на прежних частотах, а обеспечивается разделение внутренней и внешней шин: внутренняя имеет вдвое большую ширину, что позволяет увеличить скорость передачи данных внутри микросхемы. Другими словами, внутренняя шина между массивом ячеек DRAM и буферами ввода-вывода вдвое шире внешней шины от буфера к контроллеру, но последняя имеет вдвое более высокую частоту.
Проиллюстрируем это цифрами: пусть ширина внутренней шины микросхемы памяти 32 бита, а частота массива ячеек 100 МГц. Тогда для SDRAM памяти буфер передает данные по внешней шине шириной 32 бита с той же частотой 100 МГц, т. е. на всем пути никаких изменений не происходит. И поскольку у модуля памяти разрядность шины 64 бита, данные читаются одновременно из двух микросхем. В памяти DDR в этом случае данные из массива ячеек памяти по внутренней 64-битной шине с частотой 100 МГц передаются в буфер ввода-вывода. А контроллеру они передаются по вдвое более узкой 32-битной шине, но зато за каждый такт передается вдвое больше битов, т. е. результирующая производительность вдвое больше, чем у отдельной ячейки памяти. Разрядность модуля 64 бита, поэтому считывание ведется одновременно из двух его микросхем.
Представленный в примере вариант исполнения памяти получил название DDR200 (по эффективной частоте передачи данных), однако используется и обозначение PC1600 (по пропускной способности шины памяти). Соответственно ячейки DRAM в памяти DDR266 (PC2100) работают на частоте 133 МГц, в DDR333 (PC2700) – 166 МГц, в DDR400 (PC3200) – 200 МГц, в DDR550 (PC4400) – 275 МГц. Последующее наращивание частоты работы ячеек весьма проблематично и никакого запаса производительности технология DDR пока не имеет.
Однако дальнейшее развитие память DDR получила благодаря использованию принципов мультиплексирования, аналогичных выше описанным. Так же, как и в обычной DDR-памяти, микросхема выдает данные на буферы ввода-вывода по широкой внутренней 64-битной шине с частотой 100 МГц. Однако теперь они уходят из буфера по еще более быстрой и еще более высокочастотной шине – из буфера к контроллеру памяти ведет 16-битная шина, работающая на удвоенной частоте – 200 МГц, что вместе с передачей данных дважды за такт обеспечивает эффективную частоту модуля памяти 400 МГц. Соответственно 64-битные шины модуля памяти позволяют передавать данные из четырех микросхем (банков) одновременно. Такой модуль памяти обозначается DDR2-400, его название образовано по аналогии с памятью DDR: в соответствии с эффективной частотой передачи данных к контроллеру памяти.
Таким образом, используя массивы ячеек DRAM с одинаковой частотой (100 МГц), в разных типах памяти достигается различная производительность модуля памяти. Для SDRAM это 800 Мбайт/с, для DDR200 уже вдвое больше – 1600 Мбайт/с, а для DDR2-400 – 3200 Мбайт/с и для DDR2-533 – 4256 Мбайт/с. Благодаря принципам мультиплексирования удалось, сохранив низкую частоту работы ячейки памяти, получить высокую пропускную способность модуля памяти.
Важно подчеркнуть, что пропускная способность описывает лишь теоретическую предельную производительность модуля памяти, на которую значительное влияние оказывают задержки. Как уже упоминалось выше, ячейка памяти доступна для чтения далеко не всегда из-за необходимости такой процедуры, как регенерация. Кроме того, даже если ячейка доступна, то мгновенно получить данные не удается ввиду наличия еще и других видов задержек, таких как время выставления адреса столбца, строки, минимальное время между выставлением адресов. Эти задержки – следствие архитектуры ячейки памяти DRAM и будут, разумеется, присутствовать в любом типе памяти, построенном на ее базе. В приведенном выше примере частота работы массива ячеек в модулях PC100, DDR200 и DDR2-400 одинакова (100 МГц), значит и суммарное время задержки будет одним и тем же (оно равно произведению длительности такта на количество тактов задержки). Однако, например, при использовании вместо модуля PC100 более быстрого модуля PC133, ячейки DRAM в котором работают на частоте 133 МГц, память DDR200, имея превосходство по пропускной способности, по задержкам будет более медленной, чем PC 133. Действительно, при одинаковом количестве тактов задержки частота PC133 на треть выше (а такт соответственно на треть короче). В результате заметный эффект от внедрения памяти DDR появился лишь тогда, когда появилась память DDR266 со сравнимыми с PC133 задержками.
Следует отметить, что согласно статистическим данным, наибольшая частота обращений к памяти (более 50%) приходится на уже открытые страницы памяти, следовательно наиболее существенное влияние на быстродействие модулей памяти оказывает упоминавшийся выше параметр CAS Latency (время задержки после сигнала CAS), часто обозначаемый в характеристиках модулей памяти как параметр CL. Наиболее качественные модули памяти имеют значение CL=2. Стандартным уровнем считается CL=2,5. Однако, так как длительность такта с ростом частоты уменьшается, сохранять низкий уровень задержек при повышенных частотах труднее. В связи с этим при высоких частотах (333 и 400 МГц) не всегда удается обеспечить стабильную работу памяти в режиме CL=2.
Принципы мультиплексирования, аналогичные примененным в памяти DDR2, впервые были реализованы корпорацией Rambus в 1997 году в памяти, известной как RDRAM (Rambus DRAM). В ней также были повышены эффективные тактовые частоты до 400 МГц при одновременном уменьшении ширины выборки до 16 бит. Для борьбы с электромагнитной индукцией и интенсивным тепловыделением (так как этот тип памяти работал на высоких частотах) модули RDRAM закрывались защитным металлическим кожухом и имели специальные теплорассеивающие радиаторы.
Корпорация Intel в 2001–2002 гг. активно продвигала на рынке память RDRAM, однако в дальнейшем в силу маркетинговых соображений переориентировалась на более дешевую, чем Rambus, память DDR SDRAM.
Важнейшие характеристики основных типов микросхем памяти представлены в табл. 3.1.
Таблица 3.1
Характеристики основных типов микросхем памяти
Наименование Максимальная физическая частота,
МГц Максимальная эффективная
частота,
МГц
Ширина
шины,
бит
Пропускная способность,
Мбайт/с
SDR SDRAM
DDR SDRAM
DDR2 SDRAM
133
275
133
133
550
533
64
64
64
1064
4400
4256
Память типа ПЗУ организована аналогично ОЗУ. Микросхемы ПЗУ также построены по принципу матричной структуры и подключены к адресной линии и разрядной линиям считывания. Основным режимом работы ПЗУ является считывание информации, которое мало отличается от аналогичной операции в ОЗУ как по организации, так и по длительности. В то же время запись в ПЗУ по сравнению с чтением во многих схемах ПЗУ (см. подраздел 3.1) обычно сложнее и связана с большими затратами времени. Микросхема ПЗУ хранит информацию и при отключенном питании. Характерный объем памяти ПЗУ в современных компьютерах обычно составляет от 128 Кб до 2 Мб. Так как быстродействие ПЗУ существенно ниже быстродействия ОЗУ, для повышения производительности компьютера содержимое ПЗУ или его часть копируется в ОЗУ, и при работе непосредственно используется эта копия.
3.4. Организация и функционирование кэш-памяти
Как уже отмечалось, кэш-память строится на базе быстродействующих микросхем статической памяти SRAM. В процессе работы машины в буферную кэш-память копируются те участки ОЗУ, к которым производится обращение со стороны процессора. В общепринятой терминологии – производится отображение участков ОЗУ на кэш-память. Выигрыш достигается за счет ранее рассмотренного свойства локальности – если отобразить участок ОЗУ в более быстродействующую буферную кэш-память и переадресовать на нее все обращения в пределах скопированного участка, можно добиться существенного повышения производительности ВМ в целом.
В общем виде использование кэш-памяти происходит следующим образом. Когда процессор пытается прочитать слово из ОЗУ, сначала осуществляется поиск копии этого слова в кэш-памяти. Если такая копия существует, обращение к ОЗУ не производится, а в процессор передается слово, извлеченное из кэш-памяти. Данную ситуацию принято называть успешным обращением или попаданием (hit). При отсутствии слова в кэш-памяти, то есть при неуспешном обращении – промахе (miss) – требуемое слово передается в процессор из ОЗУ, но одновременно из ОЗУ в кэш-память пересылается блок данных, содержащий это слово.
Подсистема памяти, включающая ОЗУ и кэш-память, представляет собой следующую структуру. ОЗУ состоит из набора адресуемых слов (в количестве 2 в степени n), где каждое слово имеет уникальный n-разрядный адрес. При взаимодействии с кэш-памятью ОЗУ рассматривается как М блоков фиксированной длины по К слов в каждом. Кэш-память состоит из С блоков аналогичного размера (блоки в кэш-памяти принято называть строками), причем их число значительно меньше числа блоков в основной памяти (С « М). При считывании слова из какого-либо блока ОЗУ этот блок копируется в одну из строк кэш-памяти. Поскольку число блоков ОЗУ больше числа строк, отдельная строка не может быть выделена постоянно одному и тому же блоку ОЗУ. По этой причине каждой строке кэш-памяти соответствует тег (признак), содержащий сведения о том, копия какого блока ОЗУ в данный момент хранится в данной строке. В качестве тега обычно используется часть адреса ОЗУ.
На эффективность применения кэш-памяти в иерархической системе памяти влияет целый ряд моментов. К наиболее существенным из них можно отнести емкость кэш-памяти, размер строки, способ отображения ОЗУ на кэш-память, алгоритм замещения информации в заполненной кэш-памяти, алгоритм согласования содержимого ОЗУ и кэш-памяти, число уровней кэш-памяти.
Выбор емкости кэш-памяти – это всегда определенный компромисс. С одной стороны, кэш-память должна быть достаточно мала, чтобы ее стоимостные показатели были близки к величине, характерной для ОЗУ. С другой – она должна быть достаточно большой, чтобы среднее время доступа в подсистеме, состоящей из ОЗУ и кэш-памяти, определялось временем доступа к кэш-памяти. В пользу уменьшения размера кэш-памяти имеется больше мотивировок. Так, чем вместительнее кэш-память, тем больше логических схем должно участвовать в ее адресации. Как следствие, микросхемы кэш-памяти повышенной емкости работают медленнее по сравнению с микросхемами меньшей емкости, даже если они выполнены по одной и той же технологии. Реальная эффективность использования кэш-памяти зависит от характера решаемых задач, и невозможно заранее определить, какая емкость кэш-памяти будет действительно оптимальной. В общем случае, по мере увеличения емкости кэш-памяти вероятность промахов сначала существенно снижается, но при достижении определенного значения эффект сглаживается и становится несущественным.
Размер строки является важным фактором, влияющим на эффективность использования кэш-памяти. Когда в кэш-память помещается строка, вместе с требуемым словом туда попадают и соседние слова. По мере увеличения размера строки вероятность промахов сначала падает, так как в кэш-память, согласно принципу локальности, попадает все больше данных, которые понадобятся в ближайшее время. Однако вероятность промахов начинает расти, когда размер строки становится излишне большим. Это объясняется тем, что, во-первых, большие размеры строки уменьшают общее количество строк, которые можно загрузить в кэш-память, а малое число строк приводит к необходимости частой их смены; во-вторых, по мере увеличения размера строки каждое дополнительное слово оказывается дальше от запрошенного, поэтому такое дополнительное слово менее вероятно понадобится в ближайшем будущем. Зависимость между размером строки и вероятностью промахов во многом определяется характеристиками конкретной исполняемой программы. На практике размер строки обычно выбирают равным ширине шины данных, связывающей кэш-память с основной памятью.
Сущность способов отображения блока ОЗУ на кэш-память состоит в копировании этого блока в какую-то строку кэш-памяти, после чего все обращения к блоку в ОЗУ должны переадресовываться на соответствующую строку кэш-памяти. Удачным может быть признан лишь такой способ отображения, который одновременно отвечает трем требованиям: обеспечивает быструю проверку кэш-памяти на наличие в ней копии блока основной памяти; обеспечивает быстрое преобразование адреса блока ОЗУ в адрес строки кэш-памяти; реализует достижение первых двух требований наиболее экономными средствами.
Основная цель алгоритмов замещения информации в заполненной кэш-памяти – удерживать в кэш-памяти строки, к которым наиболее вероятны обращения в ближайшем будущем, и заменять строки, доступ к которым произойдет в более отдаленном времени или вообще не случится. Очевидно, что оптимальным будет алгоритм, который замещает ту строку, обращение к которой в будущем произойдет позже, чем к любой другой строке кэш-памяти. Такое оптимальное предсказание на практике нереализуемо, однако используются различные алгоритмы, которые в той или иной степени близки к оптимальному. Вне зависимости от используемого алгоритма замещения для достижения высокой скорости такой алгоритм должен быть реализован аппаратными средствами.
Наиболее эффективным является алгоритм замещения на основе «наиболее давнего использования» (Least Recently Used – LRU), при котором замещается та строка кэш-памяти, к которой дольше всего не было обращения. Наиболее известны два способа аппаратурной реализации этого алгоритма. В первом из них с каждой строкой кэш-памяти ассоциируют счетчик. К содержимому всех счетчиков через определенные интервалы времени добавляется единица. При обращении к строке ее счетчик обнуляется. Таким образом, наибольшее число будет в счетчике той строки, к которой дольше всего не было обращений, и эта строка замещается первой. Второй способ реализуется с помощью очереди, куда в порядке заполнения строк кэш-памяти заносятся ссылки на эти строки. При каждом обращении к строке ссылка на нее перемещается в конец очереди. В итоге первой в очереди каждый раз оказывается ссылка на строку, к которой дольше всего не было обращений. Именно эта строка прежде всего и заменяется.
Другой возможный алгоритм замещения – алгоритм, работающий по принципу очереди типа «первый вошел, первый вышел» (First In First Out – FIFO). Здесь заменяется строка, дольше всего находившаяся в кэш-памяти. Алгоритм легко реализуется с помощью рассмотренной ранее очереди, с той лишь разницей, что после обращения к строке положение соответствующей ссылки в очереди не меняется.
Еще один алгоритм – алгоритм замены «наименее часто использовавшейся строки» (Least Frequently Used – LFU). При реализации этого алгоритма каждая строка связывается со счетчиком обращений, к содержимому которого после каждого обращения добавляется единица. Первой заменяется та строка в кэш-памяти, счетчик которой содержит наименьшее число.
Самым простым алгоритмом является реализация произвольного выбора строки для замены случайным образом. Однако этот алгоритм наименее эффективен.
Важную роль играют алгоритмы согласования содержимого кэш-памяти и ОЗУ. В процессе вычислений процессор может не только считывать имеющуюся информацию, но и записывать новую, обновляя тем самым содержимое кэш-памяти. С другой стороны, многие устройства ввода/вывода могут напрямую обмениваться информацией с ОЗУ. В обоих вариантах возникает ситуация, когда содержимое строки кэш-памяти и соответствующего блока ОЗУ перестают совпадать. В результате на связанное с ОЗУ устройство вывода может быть выдана «устаревшая» информация, поскольку все изменения в ней, сделанные процессором, фиксируются только в кэш-памяти, а процессор будет использовать старое содержимое кэш-памяти вместо новых данных, загруженных в ОЗУ из устройства ввода.
Для разрешения первой из рассмотренных ситуаций (когда процессор выполняет операцию записи) в системах с кэш-памятью предусмотрены определенные методы обновления ОЗУ, которые можно разбить на две большие группы: методы сквозной записи (write through) и методы обратной записи (write back). По методу сквозной записи прежде всего обновляется слово, хранящееся в ОЗУ. Если в кэш-памяти существует копия этого слова, то она также обновляется. Если же в кэш-памяти отсутствует нужная копия, то либо из ОЗУ в кэш-память пересылается блок, содержащий обновленное слово (сквозная запись с отображением), либо этого не делается (сквозная запись без отображения). Согласно методу обратной записи, слово заносится только в кэш-память. Если соответствующей строки в кэш-памяти нет, то нужный блок сначала пересылается из ОЗУ, после чего запись все равно выполняется исключительно в кэш-память. При замещении строки ее необходимо предварительно переслать в соответствующее место ОЗУ. Для метода обратной записи, в отличие от алгоритма сквозной записи, характерно то, что при каждом чтении из ОЗУ осуществляются две пересылки между ОЗУ и кэш-памятью.
Для предотвращения ситуации, когда в ОЗУ из устройства ввода, минуя процессор, заносится новая информация и неверной становится копия, хранящаяся в кэш-памяти, также используются разные способы. При одном из них система строится так, чтобы ввод любой информации автоматически сопровождался соответствующими изменениями в кэш-памяти. В другом способе «прямой» доступ к ОЗУ допускается только через кэш-память.
В современных ВМ применяется многоуровневая иерархия кэш-памяти. Так простейшая двухуровневая система включает кэш-память первого уровня (L1), расположенную между процессором и кэш-памятью второго уровня (L2), которая в свою очередь расположена между L1 и ОЗУ. При доступе к памяти процессор сначала обращается к кэш-памяти первого уровня. В случае промаха производится обращение к кэш-памяти второго уровня. Если информация отсутствует и в L2, выполняется обращение к ОЗУ и соответствующий блок заносится сначала в L2, а затем и в L1. Благодаря такой процедуре часто запрашиваемая информация может быть быстро восстановлена из кэш-памяти второго уровня. Потенциальная экономия за счет применения L2 зависит от вероятности попаданий как в L1, так и в L2. В целом практическое использование кэш-памяти второго уровня существенно повышает производительность работы ВМ. Для ускорения обмена информацией процессора с кэш-памятью второго уровня их часто соединяют специальной шиной, так называемой шиной заднего плана, в отличие от шины переднего плана, связывающую процессор с ОЗУ. Дальнейшее увеличение эффективности работы системы памяти достигается введением кэш-памяти третьего (L3) и даже четвертого (L4) уровней. Характер взаимодействия очередного уровня с предшествующим аналогичен описанному для L1 и L2.
Следует отметить, что в последнее время кэш-память (обычно первого уровня) стали разделять на две относительно самостоятельные части – кэш-память для хранения команд и кэш-память для хранения данных. Традиционная так называемая «смешанная» кэш-память (единая для команд и данных) обладает тем преимуществом, что при заданной емкости ей свойственна более высокая вероятность попаданий по сравнению с разделенной, поскольку в единой кэш-памяти оптимальный баланс между командами и данными устанавливается автоматически. Так, если в выполняемом фрагменте программы обращения к памяти связаны в основном с выборкой команд, а доля обращений к данным относительно мала, кэш-память имеет тенденцию насыщаться командами, и наоборот. С другой стороны, при раздельной кэш-памяти выборка команд и данных может производиться одновременно, при этом исключаются возможные конфликты. Последнее обстоятельство существенно в машинах, использующих конвейеризацию команд, где процессор извлекает команды с опережением и заполняет ими буфер или конвейер.
Отметим также, что в некоторых современных ВМ, помимо кэш-памяти команд и кэш-памяти данных, может использоваться и адресная кэш-память (в устройствах управления памятью и при преобразовании виртуальных адресов в физические).
3.5. Внешние запоминающие устройства на магнитных дисках
Во внешних запоминающих устройствах на магнитных дисках, называемых также накопителями информации на магнитных дисках, носителем информации является диск (один или несколько). Двигатель накопителя обеспечивает требуемую постоянную частоту вращения диска (или пакета дисков) в рабочем режиме. Хранимая на диске информация располагается на концентрических дорожках (треках). Каждый трек разбит на секторы фиксированного размера. Сектор является минимальным блоком информации, который может быть записан на диск или считан с него. Каждый сектор имеет служебную область, содержащую адресную информацию, контрольные коды и некоторую другую информацию, и область данных. Если в накопителе установлено несколько дисков, собранных в пакет, и у каждого диска могут использоваться обе поверхности, то совокупность треков (с одинаковыми номерами) на разных рабочих поверхностях составляет цилиндр. Для каждой рабочей поверхности в накопителе имеется своя головка, обеспечивающая запись и считывание информации. Для того, чтобы произвести элементарную операцию обмена – запись или чтение сектора, диск или пакет дисков должен вращаться с заданной скоростью, блок головок должен быть подведен к требуемому цилиндру, и только когда нужный сектор подойдет к выбранной головке, начнется физическая операция обмена данными между головкой и блоком электроники накопителя. Кроме того, головки считывают служебную информацию (адресную и сервисную), позволяющую определить и установить их текущее местоположение. Контроллер накопителя выполняет сборку и разборку блоков информации (секторов или целых треков), включая формирование и проверку контрольных кодов, осуществляет модуляцию и демодуляцию сигналов головок и управляет всеми механизмами накопителя.
Исторически первыми устройствами хранения информации на магнитных дисках были накопители на гибких магнитных дисках (НГМД) или дискетах. В первых моделях ПК они были единственным устройством внешней памяти и единственным средством хранения и переноса информации. С тех пор эти устройства претерпели относительно небольшие изменения – их размер уменьшился примерно в два раза, а емкость выросла всего на порядок. Этот прогресс весьма невелик по сравнению с прогрессом других компонентов компьютеров.
Носителем информации в НГМД (FDD – Floppy Disk Driver) является гибкий пластиковый диск, на который нанесен ферромагнитный слой. Долгое время стандартный диаметр такого диска для ПК равнялся 5,25 дюйма. Затем на компьютерах типа AТ впервые появились накопители для дискет формата 3,5 дюйма, которые применяются и в настоящее время. Гибкий диск в этих дискетах заключен в жесткий пластиковый конверт (корпус), что лучше защищает диск от пыли и деформации. Все накопители формата 3,5 дюйма имеют 80 треков, а по продольной плотности существуют три градации: 9, 18 или 36 секторов на треке (соответственно, емкость дискеты 720 Кб; 1,44 Мб и 2,88 Мб). Емкость 1,44 Мб (стандарт HD) является наиболее распространенной. Дискеты с емкостью 2,88 Мб (стандарт ED) широкого распространения не получили ввиду необходимости специальных дисководов для работы с такими дискетами.
Для подключения НГМД используется 34-проводной (34-жильный) шлейф (ленточный кабель) с перевернутым фрагментом из 7 проводов с номерами 10 – 16. Этот поворот позволяет подключать к контроллеру одним шлейфом до двух НГМД, причем адрес накопителя определяется его положением на шлейфе: для привода «А:» фрагмент перевернут, для «В:» – нет. При установке параметров в CMOS Setup «А:» и «В:» можно менять местами без переключения кабеля.
Скорость вращения диска в НГМД – 300 об/мин, скорость обмена данными около 500 Кбайт/сек, среднее время доступа – около 100 мс.
Накопители на жестких магнитных дисках (НЖМД или HDD – Hard Disk Drive) являются главными устройствами дисковой памяти большинства ВМ. Закрепившимся неофициальным названием НЖМД является термин «винчестер», возникший из-за случайного совпадения обозначения первых НЖМД с обозначением знаменитой американской винтовки типа «Винчестер». К НЖМД предъявляются следующие основные требования: большой объем хранения, малое время доступа, большие скорости передачи данных, высокая надежность. НЖМД состоит из следующих четырех главных элементов, каждый из которых вносит свой вклад в его общие характеристики: носителя (пакета дисковых пластин, вращающихся на одной оси), магнитных головок чтения-записи, позиционера (устройства, «наводящего» головки на нужную дорожку) и контроллера, обеспечивающего согласованное управление всеми элементами диска и передачу данных между ним и компьютером.
Пластины представляют собой диски из алюминиевого сплава или стеклообразного материала (стеклообразные пластины получили в последнее время более широкое распространение), поверхность которых покрыта несколькими слоями магнитных и немагнитных материалов, защищенных сверху тонким слоем алмазоподобного графита. Пластины укреплены на шпинделе двигателя, который вращает их с весьма высокими угловыми скоростями (до 15 тыс. об/мин). Головка «парит» над поверхностью вращающейся пластины на расстояниях порядка 10–15 нм. Расстояние от головки до магнитного слоя при этом заметно больше – до 30 нм. Защитный слой, наносимый на головку и пластины, обладает чрезвычайно высокой прочностью, так что «падение» головки на поверхность пластины в случае, например, непредвиденной остановки двигателя не приводит в современных накопителях к выходу их из строя, как это было в НЖМД первых поколений.
Размеры и ориентация частиц магнитного слоя определяют вместе с размерами зазора магнитной головки возможную плотность записи. Поверхностная плотность записи имеет две составляющие – продольную (определяется размерами магнитных доменов, представляющих каждый бит одной дорожки) и поперечную (определяется расстоянием между соседними дорожками).
От скорости и точности работы позиционера – «средства доставки» головок к нужному цилиндру диска – зависит как время доступа к данным, так и допустимое расстояние между дорожками, то есть в конечном итоге плотность записи. В современных НЖМД к приводу позиционера предъявляются весьма жесткие требования по скорости и точности позиционирования головок, что приводит к построению достаточно сложных технических устройств, обеспечивающих точный и быстрый вывод головок в нужную позицию.
Контроллер управляет всеми электронными и электромеханическими компонентами накопителя и содержит все аналоговые и цифровые схемы, необходимые для чтения и записи данных. Он строится, как правило, на базе специализированного процессора, оснащенного буферной памятью для промежуточного хранения данных записи-чтения и ПЗУ со встроенным программным обеспечением. Контроллер обеспечивает перевод диска в режим экономии энергии при отсутствии обращений к нему в течение некоторого времени (это особенно важно для накопителей, устанавливаемых в ноутбуки, так как может заметно увеличить время их автономной работы). Современные адаптивные алгоритмы экономии энергии основываются на собираемой контроллером статистике использования диска, т. е. как бы «подстраиваются» под стиль работы конкретного пользователя. Одна из важнейших функций контроллера – реализация протоколов интерфейса связи с компьютером.
Диски выпускаемых в настоящее время НЖМД имеют диаметр, равный 3,5 дюйма для стационарных «настольных» компьютеров и 2,5; 1,8; 1,0; 0,8 дюйма для ноутбуков и других сверхпортативных компьютеров. Скорости вращения для 3,5-дюймовых дисков составляют 15000, 10000, 7200 и 5400 об/мин, для 2,5-дюймовых и более миниатюрных дисков – 7200, 5400, 4200 и 3600 об/мин.
Емкость предлагаемых к продаже НЖМД к настоящему времени составляет до 250–300 Гбайт, а плотность записи – до 60–70 Гбит на квадратный дюйм. Характерна явная тенденция к увеличению значений этих параметров.
Производительность НЖМД определяется рядом параметров, среди которых важнейшим является поверхностная плотность записи. Увеличение плотности записи позволяет автоматически увеличивать емкость и скорость передачи данных между носителем и контроллером при одной и той же скорости вращения диска.
Сложнее обстоит дело со временем доступа к данным, хотя и на него влияет увеличение поперечной плотности записи, т. к. позволяет при той же емкости уменьшить диаметр пластины, а, следовательно, путь, проходимый головкой в поисках нужной дорожки. К сожалению, кроме времени поиска, то есть времени перемещения головки на нужную дорожку, которое зависит от быстродействия позиционера, существует еще так называемое «скрытое» время задержки, или латентность (latency), то есть время от выхода головки на заданную дорожку до появления под ней нужного сектора с данными. Естественно, что в лучшем случае оно может равняться нулю, а в худшем – времени полного оборота диска. Принято считать, что в среднем латентность равна времени полуоборота, что для скоростей вращения современных дисков, равных 5400, 7200, 10 000 и 15 000 об/мин, составляет 5,6; 4,2; 3 и 2 мс соответственно.
Еще один параметр, влияющий на производительность (хотя и не столь существенно), – объем кэш-памяти (или буферной памяти) контроллера диска. Объем кэш-памяти, который в накопителях предыдущих поколений не превышал 512 Кбайт, к настоящему времени в большинстве недорогих моделей широкого применения уже составляет до 2 Мбайт, а в профессиональных моделях достигает 8 и даже 16 Мбайт.
Важной характеристикой дисковых накопителей информации является скорость передачи данных (Transfer Speed или Transfer Rate), которая определяется как производительность обмена данными, измеряемая после выполнения поиска данных. Однако в способе измерения этого параметра возможны разночтения, поскольку современные устройства имеют в своем составе буферную память существенных размеров. Скорости обмена буферной памяти с собственно носителем (внутренняя скорость) и с внешним интерфейсом могут существенно различаться. Если скорость работы внешнего интерфейса ограничивается быстродействием электронных схем и достижимой частотой передаваемых сигналов, то внутренняя скорость более жестко ограничивается возможностями электромеханических устройств (скоростью движения носителя и плотностью записи). При измерениях скорости передачи на небольших объемах пересылок проявится ограничение внешнего интерфейса буферной памяти, при средних объемах – ограничение внутренней скорости, а при больших объемах проявится еще и время поиска последующих блоков информации. Иногда в качестве скорости передачи данных указывают лишь максимальную скорость интерфейса, а о внутренней скорости можно судить по частоте вращения дисковых носителей и числу секторов на треке.
И последний (по порядку, но не по значению) фактор, определяющий производительность – интерфейс накопителя. Его скорость передачи должна быть, по крайней мере, не ниже, чем скорость передачи между носителем и контроллером диска, иначе интерфейс накопителя станет узким местом, снижающим общую производительность накопителя (информация об интерфейсах НЖМД представлена в разделе 5).
В последнее время наблюдается все более широкое внедрение в массовые компьютеры технологии объединения нескольких накопителей в единый дисковый массив, ранее применяемой лишь в высокопроизводительных системах. Эта технология носит наименование RAID (Redundant Array of Independed Disks – избыточный массив независимых дисков). Создание RAID-массива преследует три основные цели: увеличить объем устройства хранения информации, повысить скорость передачи данных и надежность хранения. По достижении первой цели при надлежащей организации размещения данных легко «вытекает» и вторая: достаточно размещать последовательные блоки данных с чередованием на разных дисках при наличии буферизации, чтобы во время чтения/записи скорость передачи информации между дисковым массивом и компьютером стала равной сумме скоростей, с которыми происходит обмен между отдельными накопителями. Третья цель противоречит первым двум: надежность хранения данных может быть увеличена только при обеспечении избыточности, т. е. при увеличении доли служебной информации, что приводит к уменьшению доли полезной. Следовательно, технология RAID позволяет решать самые разные задачи, начиная от простого пропорционального расширения дискового пространства и, следовательно, роста скорости обмена данными, до обеспечения их сохранности при полном выходе из строя одного или даже нескольких накопителей.
Со времени своего появления в конце 1960-х годов НЖМД пережили не одну технологическую революцию. Принцип их действия за это время, однако, не изменился – внутри по-прежнему заключены быстро вращающиеся дисковые пластины с магнитным покрытием и, как следствие, изнашивающиеся и легко повреждаемые механические части. Поэтому НЖМД до сих пор остаются одними из самых уязвимых компьютерных компонентов, требующих аккуратного обращения и регулярного резервного копирования их содержимого.
Перспективы развития индустрии НЖМД на ближайшее время представляются в основном эволюционными: дальнейшее повышение поверхностной плотности записи за счет улучшения технологии покрытий пластин и головок чтения/записи, совершенствование интерфейсов для обеспечения соответственного увеличения скоростей передачи данных.
3.6. Внешние запоминающие устройства
на магнитных лентах
Накопителями информации на магнитных лентах (НМЛ или стриммерами) называют устройства записи и воспроизведения цифровой информации на кассету с магнитной лентой. НМЛ были первыми внешними запоминающими устройствами вычислительных машин. НМЛ относятся к классу устройств с последовательным доступом к памяти, так как для того, чтобы обратиться к определенному участку памяти, необходимо перемотать ленту до того места, где хранится или куда нужно записать информацию. Последовательный доступ к информации и определяет основной недостаток этих устройств – низкая скорость передачи информации. Обычно НМЛ используют для архивации и резервного копирования больших объемов информации. Несмотря на обилие дисковых устройств всевозможных типов, ленточные накопители в качестве устройств для резервного копирования сохраняют свои позиции благодаря высокой надежности и низкой удельной стоимости хранения информации.
Отсчет истории современных кассетных ленточных накопителей обычно ведется с 1972 года, когда корпорация 3М представила накопитель на так называемой «четверть-дюймовой» кассете QIC с 6-мм пленкой (Quarter-Inch tape Cartridge – «картридж с четверть-дюймовой пленкой»). Кассета QIC похожа на обычную аудиокассету, имеет подающую и приемную катушки, соединенные специальным приводным ремнем, а лента приводится в движение ведущим валом, к которому лента прижимается резиновым роликом. Данные записываются на продольные дорожки, параллельные краям ленты. Количество дорожек в современных накопителях может доходить до 144. С обеих сторон от записывающей головки располагаются головки чтения, обеспечивающие немедленный контроль записи и перезапись блока в случае обнаружения ошибок (независимо от направления движения ленты).
Множество стандартов, принятых за время существования QIC, привело к тому, что большинство таких накопителей стали несовместимыми друг с другом. Кассеты нового стандарта Travan продолжили линию QIC. Они отличаются повышенной стабильностью конструкции, включают механизмы поддержания постоянного натяжения ленты и другие усовершенствования. Кассеты этого стандарта (TR-4, TR-5, TR-6) широко применяются в настоящее время. Лента в них имеет ширину 8 мм (0,315 дюйма). Емкость 72-дорожечной кассеты TR-4 составляет 4 Гбайт (при использовании сжатия – до 8 Гбайт), скорость передачи данных может достигать 1,2 Мбайт/с. Для 108-дорожечной кассеты TR-5 эти показатели равны соответственно 10 (20) Гбайт и 1,8 Мбайт/с, для 144-дорожечной кассеты TR-6 – 16 (32) Гбайт и 2,7 Мбайт/с.
В 1988 г разработан стандарт DDS (Digital Data Storage – «хранение цифровых данных»), определяющий способ записи на цифровые звуковые ленты DAT (Digital Audio Таре) произвольных цифровых данных. В накопителях DAT для записи на 4-мм ленту используется технология спиральной развертки, аналогичная применяемой для видеозаписи. Более высокие показатели емкости и производительности в этом случае достигаются ценой повышенного износа ленты (плотно прилегающей к вращающемуся со скоростью 2000 об/мин блоку головок) и заметно большей стоимостью. Стандарты серии DDS предусматривали кассеты емкостью до 20 Гбайт и скоростью передачи до 4,8 Мбайт/с, сохраняя совместимость с носителями более ранних стандартов.
В 1996 году был выпущен первый накопитель Mammoth на основе нового лентопротяжного механизма без ведущих валов, обеспечившего гораздо более бережное обращение с лентой, а следовательно, возможность применения более современных тонких лент. Накопители Mammoth к 2001 году имели емкость до 60 Гбайт, а скорость передачи – до 12 Мбайт/с.
В 1996 году также появились накопители на 8-мм ленте со спиральной разверткой, в которых была применена разработанная IBM технология сжатия данных, повышающая коэффициент компрессии до 2,6:1. Эти накопители имели емкостью до 260 Гбайт и скоростью передачи данных до 31 Мбайт/с.
В 1998 году корпорация Quantum представила новую технологию SuperDLT (Digital Linear Tape – «цифровая линейная лента») с лазерной системой точного позиционирования головки относительно ленты. Современный вариант SuperDLT имеет емкость 220 Гбайт и скорость передачи данных до 32 Мбайт/с. Накопители формата Ultrium имеют максимальную емкость до 200 Гбайт и скорость передачи данных до 40 Мбайт/с.
Кроме автономных ленточных накопителей широкое распространение получили ленточные библиотеки, состоящие из нескольких накопителей и упорядоченного хранилища кассет, выбор которых осуществляется автоматизированным электромеханическим устройством (роботом).
Ленточные массивы строятся аналогично дисковым массивам RAID: специальный контроллер распределяет данные по нескольким накопителям, увеличивая тем самым скорость чтения-записи и доступа к данным.
Отметим также хранилища с иерархическим управлением (Hierarchical Storage Management – HSM,) состоящие из накопителей различных типов – лент и дисков. Встроенное программное обеспечение таких хранилищ оценивает необходимую степень доступности для каждой содержащейся в нем коллекции данных и автоматически переносит часто используемые данные на наиболее быстрый накопитель.
3.7. Внешние запоминающие устройства
на оптических дисках
Первые оптические компакт-диски CD-DA (Compact Disk – Digital Audio – «цифровой звуковой компакт-диск) и CD-ROM (Compact Disk – Read-Only Memory) для записи, соответственно, звука и данных появились в начале 1980-х годов. На сегодняшний день компакт-диски являются недорогими, массово производимыми, надежными носителями информации как в бытовой аудиовидеотехнике, так и в вычислительной технике. В настоящее время накопитель на оптическом компакт-диске является практически обязательным компонентом современного компьютера. С момента своего появления технология производства CD-устройств постоянно развивается и совершенствуется.
Классический компакт-диск CD-ROM, получивший массовое распространение, представляют собой пластиковый поликарбонатный диск (чаще всего диаметром 4,72 дюйма) и имеет двухслойное покрытие: во-первых, отражающий слой из алюминия, золота, серебра или других металлов и сплавов, во-вторых, защитный слой из лака. Запись информации на такие диски осуществляется в производственных условиях лазерным лучом большой мощности, который «выжигает» на поликарбонатной основе компакт-диска спиральную дорожку с микроскопическими впадинами («питами» от pits – «углубления»). С помощью питов, собственно, и кодируется двоичная битовая информация, записываемая на диск (см. подраздел 3.1). В результате этого процесса создается так называемый первичный диск («мастер-диск»). Дальнейшее тиражирование компакт-дисков производится с помощью первичного диска методом литья под давлением или высокоточной штамповки.
В оптическом дисководе, установленном в компьютере, информация с дорожки считывается маломощным лазерным лучом. Лазерный луч, фокусируемый на дорожку, отслеживает ее структуру и, отражаясь, улавливается специальным фотоприемником (фотодиодом) оптической читающей головки, которая соответствующим образом интерпретирует полученный сигнал в виде двоичных чисел. Так как лазерный луч фокусируется не на внешней стороне поверхности диска, а на внутреннем «информационном» слое, то царапины или жировые пятна до определенного предела не искажают физические параметры луча.
Важнейшей характеристикой накопителей на оптических дисках является максимальная скорость, с которой данные пересылаются от носителя информации в компьютер. Непосредственно со скоростью передачи данных связан такой параметр, как скорость вращения диска. Первые дисководы CD-ROM передавали данные со скоростью 150 Кбайт/с. В последующих поколениях устройств скорость увеличивалась, как правило, кратно этой скорости. Поэтому приводы назывались «накопители с двух-, трех-, четырехкратной скоростью» и т. д. К низкоскоростным накопителям CD-ROM предъявлялось требование обеспечения постоянной линейной скорости считывания данных. Поэтому в них угловая скорость CD изменялась в зависимости от местонахождения считываемого (записываемого) участка дорожки для того, чтобы обеспечить постоянную линейную скорость носителя над головкой. Так при считывании информации с внутренней части диска скорость вращения должна составлять около 500 об/мин, а при считывании с внешней части – около 200 об/мин, т. е. изменяться в 2,5 раза. Такая технология давала возможность работы с постоянной оптимальной плотностью записываемых данных и относительно высокой емкостью дисков. Скоростные CD-ROM, начиная с коэффициента кратности 12х, обеспечивают трафик нужной минимальной величины в любом месте диска даже при постоянной угловой скорости вращения. Поэтому современные высокоскоростные накопители имеют постоянную угловую скорость и тем самым непостоянную линейную. На периферийных участках данные считываются с большей скоростью (4–7,8 Мбайт/с). Средняя скорость считывания при этом гораздо ближе к минимальным значениям, поскольку запись на диске начинается с внутренних областей.
Типовой дисковод CD состоит из блока электроники, двигателя со шпинделем для закрепления и вращения диска, системы оптической считывающей головки и системы загрузки диска. В блоке электроники размещены все управляющие схемы привода, интерфейс с контроллером компьютера и разъемы интерфейса. Система оптической головки состоит из самой головки и устройства ее перемещения. В головке размещены лазерный излучатель на основе инфракрасного лазерного светодиода, система фокусировки, фотоприемник и предварительный усилитель. Устройство позиционирования оптической системы ориентируется на специальные метки диска и не требует высокоточной механики, что делает это устройство достаточно дешевым в производстве.
В конце 1980-х годов появились компакт-диски с возможностью однократной записи – CD-R (Compact Disk Recordable – «записываемый компакт-диск»). Для хранения информации в них используется записывающий слой из органического полимерного красителя, оптически «темнеющего» от нагревания под воздействием лазерного луча. Длина волны лазерного луча (как и при чтении) составляет 780 нм, однако его интенсивность при записи на порядок выше, чем при чтении. «Затемненные» участки диска CD-R подобны питам и изменяют физические параметры отраженного лазерного луча.
Во второй половине 1990-х годов начат выпуск более универсальных накопителей и дисков CD-RW (Compact Disk ReWritable – «компакт-диск перезаписываемый») с возможностью перезаписи и многократной записи. В отличие от органических красителей, используемых для формирования активного слоя в дисках CD-R, в CD-RW активным слоем является специальный поликристаллический сплав (серебро–индий–сурьма–теллур), который переходит в жидкое состояние при сильном (500–700оС) нагреве лазером. При последующем быстром остывании жидких участков они остаются в аморфном состоянии, поэтому их отражающая способность отличается от поликристаллических участков. Возврат аморфных участков в кристаллическое состояние осуществляется путем более слабого нагрева ниже точки плавления, но выше точки кристаллизации (примерно 200оС). Выше и ниже активного слоя располагаются два слоя диэлектрика (обычно двуокиси кремния), отводящих от активного слоя излишнее тепло в процессе записи. Все эти слои прикрыты отражающим слоем и нанесены на поликарбонатную основу, в которой выпрессованы спиральные углубления (они необходимы для точного позиционирования головки и несут адресную и временную информацию).
В накопителе CD-RW используются три режима работы лазера, отличающиеся мощностью луча: режим записи (максимальная мощность, обеспечивающая переход активного слоя в неотражающее аморфное состояние), режим стирания (возвращает активный слой в отражающее кристаллическое состояние) и режим чтения (самая низкая мощность, не влияющая на состояние активного слоя).
Наиболее распространенная емкость CD-дисков – 650–700 Мбайт. С целью существенного увеличения этой емкости было разработано семейство новых оптических дисков, получивших название DVD (Digital Versatile Disk – «цифровой многофункциональный диск»). В результате ряда технологических усовершенствований удалось увеличить емкость диска DVD в 7–25 раз по сравнению с емкостью точно такого же по размерам традиционного СD. Прежде всего этому способствовало применение вместо инфракрасного лазера с длиной волны 780 нм лазера красного диапазона с длиной волны 635 или 650 нм. Уменьшение длины волны позволило сократить минимальный размер питов и шаг дорожек, что дало общий выигрыш в емкости в 4,5 раза. Остальное было получено за счет применения более эффективных кодов коррекции ошибок, которые позволили значительно уменьшить процент, отводимый на эти коды в каждом пакете данных.
Диски DVD выпускаются не только односторонними и однослойными, но и в двухслойном и двустороннем исполнении. Возможность изготовления двухслойных дисков (отражающий материал первого слоя является полупрозрачным, так что можно фокусировать лазер на находящимся над ним втором отражающем слое) позволила поднять емкость еще почти в два раза (на самом деле несколько меньше, поскольку в полупрозрачном слое не удается достичь такой же плотности записи, как в полностью отражающем слое). Двухсторонний диск, который представляет собой как бы два односторонних, склеенных отражающими слоями внутрь (общая толщина диска при этом остается неизменной), еще в два раза увеличил возможную емкость DVD. Для идентификации DVD-дисков используется следующая кодировка: DVD-5 (односторонний однослойный с емкостью 4,7 Гбайт), DVD-9 (односторонний двухслойный с емкостью 8,5 Гбайт), DVD-10 (двусторонний однослойный с емкостью 9,4 Гбайт) и DVD-18 (двусторонний двухслойный с емкостью около 17 Гбайт). Повышение плотности размещения данных на диске привело к автоматическому увеличению скорости передачи данных при той же скорости вращения носителя. Так, если в накопителе CD-ROM 1X данные передаются со скоростью 150 Кбайт/с, то в DVD-ROM 1X скорость передачи достигает 1250 Кбайт/с, что соответствует CD-ROM 8Х. Например, в накопителях DVD скорость 16Х соответствует гипотетической скорости 128Х в CD-ROM.
Современные накопители DVD также обеспечивают многократную запись на соответствующие диски. Для обеспечения совместимости накопителей DVD с носителями CD применяются различные технические решения, в том числе смена фокусирующих линз, два лазера с длинами волн 780 и 650 нм или специальный голографический элемент, обеспечивающий правильную фокусировку для каждого типа носителя.
Перспективной технологией является запись дисков, аналогичных по формату DVD, с помощью лазеров сине-фиолетового диапазона с длиной волны 405 нм. Меньшая длина волны позволяет уменьшить размеры «пятна» лазерного луча, а, следовательно, сократить размеры питов и расстояние между соседними дорожками, в результате чего существенно увеличить потенциальные значения емкости информации, хранимой на оптических дисках.
3.8. Внешние запоминающие устройства на мобильных носителях информации
Внешние запоминающие устройства по отношению к корпусу компьютера (системному блоку) могут быть внутренними (internal), расположенными внутри системного блока и получающими электропитание от блока питания системного блока, и внешними (external), расположенными вне системного блока и получающие электропитание от другого самостоятельного источника питания. Выше рассмотренные накопители информации на магнитных и оптических дисках относятся к классу внутренних устройств, а накопители информации на магнитных лентах, как правило, к классу внешних устройств.
Внешние запоминающие устройства могут иметь сменные или фиксированные носители информации. Так накопители на жестких магнитных дисках имеют фиксированные носители информации, накопители информации на гибких магнитных дисках и оптических дисках – сменные (переносимые или мобильные) носители информации, а накопители информации на магнитных лентах могут иметь то или другое исполнение.
Первыми и до сих пор практически используемыми переносными (мобильными) носителями информации являются гибкие магнитные диски (дискеты) наиболее популярного формата «3,5 дюйма» емкостью 1,44 Мбайт. Крайне низкая по современным меркам емкость такой дискеты уже достаточно давно инициирует различные разработки и технологии мобильных носителей информации, которые могли бы прийти на смену традиционной дискете – явному непревзойденному долгожителю компьютерного мира.
Одним из очевидных вариантов решения проблемы повышения емкости мобильных носителей информации является применение переносных жестких магнитных дисков. Жесткие диски, без сомнения, обладают одними из самых лучших показателей удельной стоимости хранимой информации среди всех используемых устройств. Они имеют высокое быстродействие и достаточно большую емкость. Для удобства временной установки и переноса жесткого диска предложены специальные устройства, одно из которых, называемое Mobil Rack («мобильная рама»), конструктивно выполнено в виде двух частей. Одна часть – это вставляемая в «отсек» системного блока «база», а вторая часть – переносной контейнер, в который помешается жесткий диск. При этом достаточно один раз открыть корпус системного блока, прикрепить «базу» в системном блоке и подключить необходимые разъемы интерфейса и питания. Контейнер с жестким диском может многократно легко вставляться и выниматься из «базы» без применения крепежных элементов. Несомненным плюсом Mobil Rack является его относительно невысокая стоимость. Но при постоянной переноске жесткого диска растет вероятность его физических повреждений. Необходимо также учитывать, что «винчестер», как любой другой магнитный носитель информации, подвержен влиянию электромагнитных полей, способных вызвать частичную или полную потерю информации на нем.
В последнее время все большую популярность приобретают так называемые внешние жесткие магнитные диски («внешние винчестеры»), которые представляют собой самостоятельные универсальное устройства, оснащенные стандартными интерфейсными кабелями. Наиболее перспективными областями применения внешнего жесткого диска являются увеличение дискового пространства портативных компьютеров и перенос больших объемов информации. Кроме того, внешний жесткий диск с установленной операционной системой и хранящимся на нем набором образов может быть полезен администратору сети при восстановлении работоспособности как самой сети, так и входящих в ее состав рабочих станций.
Несколько лет назад корпорацией Iomega были разработаны накопители на гибких магнитных дисках ZIP, которые предлагались в качестве замены морально устаревших 3,5-дюймовых гибких дисков. Первые модели ZIP имели емкость 100 и 250 Мбайт и в то время лидировали среди накопителей для переноса данных. Однако в последующем (несмотря на предложенный накопитель Iomega ZIP емкостью 750 Мбайт) их практически вытеснили с рынка накопители CD-R и CD-RW, а затем и накопители на дисках DVD как сравнительно более емкие и дешевые ЗУ. Эта же участь постигла и другие разработки, такие как магнитооптические диски, накопители на сменных дисках типа LS-120, SyQuest, SyJet, Jaz и др.
Современный этап развития компьютерных накопителей на сменных носителях можно назвать периодом доминирования оптических технологий. Носители CD и DVD помимо упомянутых выше таких характеристик, как сравнительно большая емкость в сочетании с низкой стоимостью, имеют высокую надежность и удобство эксплуатации.
Относительно новыми мобильными носителями информации являются флэш-накопители. Эти устройства пока не относятся к дешевым решениям хранения информации, однако явно прослеживается снижение стоимости устройств этого класса и увеличение объемов хранимой информации. Конструктивно современные флэш-накопители выполняются чаще всего в виде сверхкомпактных «пальчиковых» устройств, эмулирующих работу дисковых носителей, или в виде миниатюрных карт памяти. В ЗУ на основе флэш-памяти нет каких-либо движущихся частей, поэтому оно не восприимчиво к вибрациям и механическим встряскам. Не являясь по своей сути магнитным носителем, флэш-накопители не подвержены влиянию магнитных полей и достаточно надежно сохраняют информацию.
Резюме
Запоминающие устройства обеспечивают запись, хранение и считывание информации в процессе работы ВМ. Каждому типу ЗУ присущи некоторые наиболее важные характеристики, которые определяют его потенциальные возможности и эффективность применения в том или ином конкретном функциональном качестве. К таким характеристикам ЗУ прежде всего относятся емкость хранения информации, быстродействие при операциях записи-чтения, удельная стоимость хранения единицы информации. По методу доступа к данным различают ЗУ с последовательным, прямым, произвольным и ассоциативным доступом.
Наиболее распространены три технологических типа запоминающих устройств, отличающихся использованием разных физических принципов записи, хранения и считывания информации. Это полупроводниковая память (или память на электронных микросхемах), память на магнитных носителях информации (магнитные диски, ленты, карты) и память на оптических носителях информации (оптические диски разных модификаций).
Важнейшей характеристикой любого типа ЗУ является такое его физическое свойство, как энергозависимость либо энергонезависимость. В энергозависимой памяти информация может быть искажена или потеряна при отключении источника питания. В энергонезависимых ЗУ записанная информация сохраняется и при отключении питающего напряжения. Магнитная и оптическая память – энергонезависимы. Полупроводниковая память может быть как энергозависимой, так и нет, в зависимости от ее типа.
Основными типами энергозависимой полупроводниковой памяти являются статическая память, запоминающими элементами которой являются транзисторные электронные схемы (триггеры), и динамическая память, запоминающие элементы которой составляют миниатюрные конденсаторы.
Энергонезависимые полупроводниковые ЗУ по возможностям и способу программирования разделяют на программируемые при изготовлении, однократно программируемые после изготовления и многократно программируемые. Перспективным типом энергонезависимой твердотельной полупроводниковой перезаписываемой памяти является флэш-память.
В запоминающих устройствах на магнитных носителях информация записывается и считывается с поверхности специального носителя (диска, ленты, карты), покрытого магнитным слоем. Запись и чтение производятся магнитными головками, представляющими собой электромагниты с сердечником и обмоткой, по которой пропускается электрический ток.
В запоминающих устройствах на оптических носителях информация записывается и считывается лазерным лучом с поверхности оптического диска. Информация в двоичном представлении трактуется как изменения геометрических или структурных характеристик рабочей поверхности диска.
Разные типы ЗУ размещаются и функционируют в ВМ в соответствии с определенной иерархией, которая диктуется компромиссным сочетанием таких характеристик ЗУ, как быстродействие, емкость и удельная стоимость хранения информации. Оптимальное распределение разных типов ЗУ по уровням иерархии способствует существенному повышению производительности ВМ в целом.
Центральное место в иерархии памяти ВМ занимает так называемая основная память. С точки зрения структурной организации ВМ основная память является определяющим и минимально необходимым ЗУ. Основная память включает в себя два типа устройств: оперативные запоминающие устройства и постоянные запоминающие устройства.
Оперативные запоминающие устройства (или оперативная память) образуют преимущественную долю основной памяти и называются оперативными, потому что используются для временного оперативного хранения информации (программ и данных) и оперативного обмена этой информацией с процессором, внешней памятью и периферийными подсистемами ВМ. В ОЗУ допускается как запись, так и считывание информации. ОЗУ строится на основе энергозависимых микросхем памяти и организуется как массив элементарных ячеек памяти, к которым обеспечивается произвольный доступ. Каждая ячейка имеет уникальный адрес, позволяющий различать ячейки при обращении к ним для выполнения операций записи и считывания. Ячейки динамической памяти объединяются в двумерную матрицу, где каждая ячейка адресуется номерами строки и столбца, на пересечении которых она находится. Современными вариантами исполнения динамической синхронной памяти являются модули памяти типа DDR и DDR2 SDRAM
Постоянные запоминающие устройства строятся на основе энергонезависимых микросхем, которые главным образом обеспечивают только хранение и считывание информации. В последнее время все шире используются такие физические типы ПЗУ и такие программные средства, которые при необходимости позволяют достаточно просто производить запись информации в ПЗУ и таким образом изменять содержимое ПЗУ.
На эффективность применения кэш-памяти в иерархической системе памяти ВМ наиболее существенное влияние оказывают емкость кэш-памяти и размер ее строк, способ отображения ОЗУ на кэш-память, алгоритм замещения информации в заполненной кэш-памяти, алгоритм согласования содержимого ОЗУ и кэш-памяти, число уровней кэш-памяти. Кэш-память в свою очередь составляет определенную иерархию уровней.
В качестве внешних запоминающих устройств на магнитных носителях информации применяются накопители информации на жестких и гибких магнитных дисках, накопители информации на магнитных лентах. Последние обычно используют для архивации и резервного копирования больших объемов информации. Во внешних запоминающих устройствах на оптических носителях информации используются оптические компакт-диски разных типов: допускающие только чтение информации, допускающие однократную запись информации, позволяющие стирать и многократно перезаписывать информацию. Новые «цифровые» многофункциональные оптические диски типа DVD позволяют увеличить емкость записываемой и хранимой информации в 7–25 раз по сравнению с емкостью обычных оптических компакт-дисков.
В качестве внешних мобильных носителей информации наряду с традиционными носителями, такими как накопители информации на гибких магнитных дисках и оптических дисках, находят применение переносные НЖМД, внешние НЖМД и относительно новый тип мобильных носителей информации – флэш-накопители.
Контрольные вопросы и задания
1. Какие функции выполняют запоминающие устройства в ВМ?
2. Перечислите наиболее важные характеристики запоминающих устройств. 3. Охарактеризуйте используемые методы доступа к данным в запоминающих устройствах.
4. Какие технологические типы запоминающих устройств наиболее распространены в вычислительной технике?
5. Представьте понятие «энергонезависимости» запоминающего устройства.
6. Назовите и охарактеризуйте основные типы энергозависимой памяти на электронных микросхемах.
7. На какие типы по возможностям и способу программирования подразделяют микросхемы энергонезависимой памяти?
8. Поясните принцип действия и особенности функционирования Flash-памяти. Представьте ее преимущества, недостатки и перспективы развития. 9. Дайте определение и укажите назначение оперативной памяти.
10. Каковы принципы организации запоминающих устройств на магнитных носителях информации?
11. Как организованы процессы записи и чтения данных в запоминающих устройствах на оптических носителях информации?
12. Опишите свойства пространственной и временной локальности команд и данных программы.
13. Представьте иерархию запоминающих устройств ВМ.
14. Каковы назначение и основные функции постоянных ЗУ?
15. Для чего предназначена энергонезависимая память CMOS Memory?
16.Дайте определение синхронной динамической памяти и опишите последовательность ее работы.
17. Перечислите важнейшие параметры памяти SDRAM.
18. В чем отличие памяти DDR2 SDRAM от DDR SDRAM и SDR SDRAM?
19. Представьте назначение, организацию и функционирование кэш-памяти.
20. Поясните назначение внешних запоминающих устройств ВМ.
21. В чем заключается различие внешних запоминающих устройств с прямым и последовательным доступом к информации?
22. Перечислите и дайте определения важнейшим характеристикам устройств внешней памяти.
23. Каковы основные параметры современных накопителей информации на жестких магнитных дисках?
24. Как устроены накопители информации на магнитных лентах, каковы их характеристики и области использования?
4. Устройства ввода-вывода информации
4.1. Устройства ввода информации
Основным устройством ввода информации является клавиатура. Это устройство представляет собой совокупность датчиков, воспринимающих давление на клавиши и замыкающих определенную электрическую цепь. Внутри корпуса клавиатуры помимо датчиков клавиш расположены электронные схемы дешифрации нажатых клавиш и микроконтроллер клавиатуры, передающий на системную плату соответствующие сигналы.
Наряду с клавиатурой важнейшими устройствами управления и ввода информации являются различные типы так называемых манипуляторов-указателей. Наиболее популярный манипулятор-указатель – устройство типа «мышь». «Мышь» передает информацию о своем перемещении по плоскости и нажатии кнопок (двух или более). «Мышь» делает удобным манипулирование такими широко распространенными графическими объектами, как окна, меню, кнопки, пиктограммы и т. п. Традиционная компьютерная «мышь» реализует оптико-механический принцип кодирования перемещения. С поверхностью стола соприкасается тяжелый шарик сравнительно большого диаметра. Ролики, прижатые к поверхности шарика, установлены на перпендикулярных друг другу осях с двумя датчиками. Датчики, представляющие собой оптопары (светодиод–фотодиод), располагаются по разные стороны дисков с прорезями. Порядок, в котором освещаются фоточувствительные элементы, определяет направление перемещения мыши, а частота приходящих от них импульсов – скорость. Более точного позиционирования курсора позволяет добиться оптическая «мышь». Современные оптические «мыши» имеют встроенный видеодатчик, процессор которого обрабатывает получаемое изображение. Такая «мышь» ориентируется на оптические «неровности» любой поверхности. Манипулятор-указатель типа трекбол (trackball – «шариковая дорожка») представляет собой как бы перевернутую «мышь», шарик которой вращают пальцами. Иногда его встраивают в клавиатуру (чаще в портативных компьютерах). Трекболу не требуется площадка для движения (которая необходима «мыши»), так как позиция курсора рассчитывается исключительно по вращению шарика.В последнее время все большее применение в качестве компактных манипуляторов-указателей (главным образом в мобильных компьютера), находят сенсорные панели, чувствительные к прикосновению пальца пользователя. Популярными игровыми манипуляторами является так называемые джойстики (joystick – «игровая палочка»), которые имеют разнообразное конструктивное исполнение, разный уровень сложности, наличие рычагов или руля и многочисленных функциональных кнопок.
Графический планшет, или дигитайзер (digitizer– «оцифровыватель»), – это кодирующее устройство, позволяющее вводить в компьютер двумерное, в том числе и многоцветное изображения в виде растрового образа. Графические планшеты применяют при работе в области компьютерной графики. Другая область их применения – ввод данных в системах автоматизированного моделирования и проектирования. В состав графического планшета входят специальные устройства указания – курсор или перо с кнопками и датчиками. Собственный контроллер посылает импульсы по сетке проводников, расположенной под поверхностью планшета. Получив два таких сигнала, контроллер преобразует их в координаты, которые передает в компьютер, а компьютер переводит эту информацию в координаты точки на экране монитора, соответствующие положению указателя на планшете. Планшеты, предназначенные для рисования, обладают чувствительностью к силе нажатия пера, преобразуя эти данные в толщину или оттенок линии. Для устройств рукописного ввода информации характерна такая же схема работы, только введенные образы букв дополнительно преобразуются в буквы при помощи специальной программы распознавания. Устройства перьевого ввода часто используются в сверхминиатюрных компактных ПК, в которых нет полноценной клавиатуры.
Универсальным устройством ввода текстовой и графической информации является сканер, который преобразует видеоинформацию на бумаге или другом носителе (текст, рисунки, фотографии, слайды и т. п.) в электрический сигнал и передает его в компьютер. Принцип действия сканера заключается в следующем. Свет, идущий от источника освещения, попадает на оригинал и, отразившись от него, улавливается оптической системой сканера. Она состоит из зеркал и объектива (иногда роль оптической системы может играть просто призма). Оптическая система фокусирует свет на фотопринимающем элементе (фотоприемнике), роль которого – преобразование интенсивности падающего света в электрический сигнал. После аналогово-цифрового преобразования сигнал в цифровом виде через аппаратный интерфейс подается в компьютер, где его получает и анализирует программа работы со сканером. В сканерах большинства типов используется не один фотопринимающий элемент, а линейка или матрица из большого количества фотоприемников. Это дает возможность сканировать не по одной точке исходного изображения, а сразу получать информацию о полосе изображения, что ускоряет процесс сканирования. В этом случае подсвечивается сразу же полоса оригинала на всю его ширину.
Основными типами фотоприемников современных сканеров являются фотоприемники на основе ПЗС («приборов с зарядовой связью» – Couple-Charged Device, CCD) и фотоприемники на основе КДИ («контактных датчиков изображения» – Contact Image Sensor, CIS). Преимуществами фотоприемников на основе ПЗС являются относительно высокая чувствительность и широкий спектральный диапазон, а недостатками – ограниченность разрешения, существование «фотонных шумов» (вносящих искажения в результаты сканирования), так называемое «растекание» заряда (приводящее к расплывчатости ярких деталей изображения). Положительными сторонами КДИ-сканеров являются более простое конструктивное исполнение, меньшие габариты и потребляемая мощность, чем у ПЗС-сканеров, большая равномерность качества получаемого изображения, меньшая чувствительность к внешним условиям работы.
Для ввода в компьютер изображения цветного оригинала в современных сканерах используются либо три фотопринимающие линейки, на которые попадает свет соответствующего спектра после разложения его по составляющим в специальной призме оптической системы сканера, либо специальная ПЗС-матрица, имеющая покрытие, которое фильтрует цвет по составляющим и состоит из нескольких слоев фотоэлементов, каждый из которых воспринимает свою составляющую цветовой гаммы.
В сканерах, работающих «на просвет» оригинала (например, слайдов) источник освещения и фотоприемник находятся по разные стороны от оригинала.
Самым распространенным видом сканеров являются планшетные сканеры. Оригинал в планшетном сканере лежит неподвижно, а считывание (в большинстве случаев в отраженном свете) производится считывающей головкой, перемещающейся вдоль сканируемого изображения. Считывающая головка представляет собой при этом матрицу или линейку фотоприемников.
Основной характеристикой сканеров является разрешение (resolution) – это совокупность параметров, характеризующих минимальный размер деталей изображения, который сканер в состоянии считать. Принято различать оптическое разрешение, механическое разрешение и интерполяционное разрешение.
Оптическое разрешение характеризует минимальный размер точки по горизонтали, которую сканер в состоянии распознать. Эта характеристика определяется отношением количества элементов в линии матрицы к ширине рабочей области сканирования.
Механическое разрешение – это количество шагов, которое делает сканирующая каретка, поделенное на длину пройденного ею пути. Этот параметр определяет минимальный размер точки по вертикали, которую сканер может распознать.
Поскольку матрица не может сканировать с разрешением по горизонтали больше оптического, для добавления недостающих точек используются математические методы интерполяции. Интерполяционное разрешение – это разрешение, искусственно увеличенное с помощью математических методов.
Разрешение сканера обычно измеряется в пикселах на дюйм (pixel per inch – ppi).
Важной характеристикой сканеров является разрядность или глубина цвета – параметр, характеризующий количество цветов или оттенков серого цвета (в зависимости от цветности сканера). Разрядность означает, сколько бит используется сканером для представления цвета одной точки изображения.
Сканеры характеризуются таким параметром, как оптический (динамический) диапазон, который определяет способность сканера воспроизводить плавные тоновые изменения и выражает различие между самыми светлыми и самыми темными тонами, которые могут быть зафиксированы с помощью сканера.
Максимальный формат оригинала, который планшетный сканер в состоянии обработать, называют рабочей областью сканирования.
Современные распространенные образцы планшетных сканеров обеспечивают оптическое разрешение 1200 х 2400 ррi, глубину цвета – от 36 до 48 бит, оптический диапазон – до 5 единиц.
К области узкоспециализированных профессиональных сканеров относятся так называемые барабанные сканеры. В них оригинал (в виде гибкого листа) закрепляется на вращающемся барабане. Применяются эти сканеры, как правило, в высококачественной полиграфии, так как позволяют обеспечить высокое оптическое разрешение, достигающее 24 000 ppi. Такие характеристики достигаются благодаря уникальной технологии, применяющейся в барабанных сканерах, которая основана на использовании в качестве светочувствительных элементов так называемых фотоэлектронных умножителей (ФЭУ).
Для сканирования больших объемов информации применяют быстродействующие листопротяжные (роликовые) сканеры, в которых оригинал протягивается с помощью роликов сквозь сканер и считывается неподвижной линейкой фотоприемников.
Одним из первых и ранее наиболее распространенных типов сканеров является так называемый ручной сканер. В настоящее время модификации таких сканеров используются в основном для считывания товарных штрих-кодов.
Производятся и другие типы сканеров, являющиеся модификациями или комбинациями вышеописанных типов.
Популярные современные цифровые фото- и видеокамеры также могут быть отнесены к компьютерным устройствам ввода информации. По принципу действия они практически не отличаются от сканеров. В общих чертах в дополнение к обычным сканерам эти устройства имеют лишь оптические объективы для фокусирования светового потока от удаленных объектов.
4.2. Компоненты видеоподсистемы вычислительных машин