17.2 Иерархическая структура памяти. Иерархическая структура памяти является традиционным решением проблемы хранения большого количества данных. На самом верху находятся регистры процессора. Доступ к регистрам осуществляется быстрее всего. Дальше идет кэш-память, объем которой сейчас составляет от 32 Кбайт до нескольких мегабайт. Затем следует основная память, которая в настоящее время может вмещать от 16 Мбайт до десятков гигабайтов. Далее идут магнитные диски и, наконец, накопители на магнитной ленте и оптические диски, которые используются для хранения архивной информации. По мере продвижения по структуре сверху вниз возрастают три параметра. Во-первых, увеличивается время доступа. Доступ к регистрам занимает несколько наносекунд, доступ к кэш-памяти — немного больше, доступ к основной памяти — несколько десятков наносекунд. Дальше идет большой разрыв: доступ к дискам занимает по крайней мере 10 мкс, а время доступа к магнитным лентам и оптическим дискам вообще может измеряться в секундах (поскольку эти накопители информации еще нужно взять и поместить в соответствующее устройство). Во-вторых, увеличивается объем памяти. Регистры могут содержать в лучшем случае 128 байтов, кэш-память — несколько мегабайтов, основная память — десятки тысяч мегабайтов, магнитные диски — от нескольких гигабайтов до нескольких десятков гигабайтов. Магнитные ленты и оптические диски хранятся автономно от компьютера, поэтому их объем ограничивается только финансовыми возможностями владельца. В-третьих, увеличивается количество битов, которое вы получаете за 1 доллар. Стоимость объема основной памяти измеряется в долларах за мегабайт, объем магнитных дисков — в пенни за мегабайт, а объем магнитной ленты — в долларах за гигабайт или еще дешевле. Характеристики и классификация запоминающих устройств. Иерархия систем памяти Под запоминающими устройствами (ЗУ, память) будем понимать совокупность устройств для запоминания, хранения и выдачи информации. Память является одним из основных ресурсов компьютера, влияющим как на производительность, так и на функциональность вычислительной машины. К основным характеристикам устройств памяти можно отнести: 1) Временные характеристики : - быстродействие - определяется временем выборки, временем обращения и другими параметрами. – время собственно записи. Таким образом, процесс чтения/записи ЗУ в общем случае включает ряд этапов разной сложности и длительности. - производительность – определяется пропускной способностью ЗУ, то есть – объемом информации, который можно считать/записать из/в ЗУ в единицу времени. Для оценки производительности часто используют показатель длительности цикла обращения к памяти tц, под которым понимают минимальное время между сменой информации на выходе/ входе ЗУ. 2) Важнейшей потребительской характеристикой ЗУ является его объем, или емкость памяти (Е), то есть количество запоминаемой информации. В зависимости от типа ЗУ, его места в вычислительной системе, объем может меняться от десятков байт (для регистровой памяти ЦП) до десятков и сотен гигабайт (для массивов накопителей на магнитных дисках). Наряду с характеристикой емкости памяти применяют также удельную емкость по отношению к единице площади или объема кристалла : Eуд = E/Sкр. Такая характеристика в большей степени характеризует технологические особенности ЗУ. 3) Третьей важнейшей потребительской характеристикой ЗУ, как и любого вычислительного устройства, является его стоимость, которая также может меняться в самых широких пределах в зависимости от объема, производительности и других характеристик. Распространенной характеристикой является удельная стоимость в расчете на единицу информации (стоимость одного бита/байта, кило- и мегабайта и т.д.) Помимо перечисленных можно отметить множество других характеристик ЗУ, в том числе: технологию изготовления, потребность во внешнем источнике питания для хранения информации, длительность хранения, количество циклов чтения и записи, геометрические размеры, и так далее. С учетом приведенных характеристик, а также – назначения ЗУ, места, занимаемого ЗУ в вычислительной системе, можно привести, например, следующую классификацию ЗУ: 1. По удаленности от процессора : - сверхоперативная (регистры процессора, КЭШ память); - основная (оперативная) память ; - дополнительная память (внешняя) ; - вторичная память (также внешняя) ; - массовая память (внешняя, как правило, на доступных сменных носителях). 2. По организации записи : - постоянное запоминающее устройство – ПЗУ (ROM – read-only memory) – однократно программируемое изготовителем устройство только для чтения; - перепрограммируемое запоминающее устройство – ППЗУ (PROM) – возможно перепрограммир-е, которое, однако, требует специальной процедуры, кол-во циклов записи намного меньше циклов чтения; - оперативное запоминающее устройство - ОЗУ (RAM – random access memory) - количество циклов чтения может совпадать с количеством циклов записи. Строго говоря, приведенные отечественные и импортные сокращения для двух основных типов памяти не вполне точно отражают приведенное деление памяти по организации записи, но являются исторически сложившимися и общепринятыми. 3. По организации доступа : - с последовательным доступом (tдост меняется для различных адресов или участков памяти – чем старше адрес, тем больше время доступа); - с прямым доступом (tдост = const для различных адресов или участков памяти). 4. По организации поиска ячеек в памяти: - «М-поиск» – поиск по месту (например, в адресном ОЗУ); - «В-поиск» – поиск по времени (например, при работе с накопителем на магнитной ленте). 5. По физическому эффекту (технологии), используемому для запоминания и хранения информации : - полупроводниковая память, магнитная, магнитооптическая, оптическая, электростатическая и др. 6. ОЗУ по способу хранения делится на : - статическое (на триггерах); - динамическое (на конденсаторах). 7. По способу адресации: - адресная память; - стековая память; - ассоциативная память. 8. По организации памяти в систему: - память с расслоением; - виртуальная память; - кэш-память; - различные варианты блочно-конвейерных систем. 9. По зависимости от источника питания: - энергозависимая; - энергонезависимая. Как и ранее, при классификации вычислительных машин, отметим, что выбранные классификационные признаки не являются всеобъемлющими или обязательными, просто они отражают некоторые важные особенности классифицируемых систем. Рассматривая характеристики и классификацию ЗУ, с учетом их многообразия нельзя не упомянуть об иерархии систем памяти в составе вычислительной системы. Как мы помним, принцип иерархического построения систем памяти заложен еще в фон-неймановской архитектуре, в те годы, когда большинства современных ЗУ и их типов не существовало. Однако и тогда существовала относительно быстрая и дорогая энергозависимая оперативная память, и внешняя память – более дешевая, намного более медленная, но при этом энергонезависимая. Сейчас иерархия выглядит намного сложнее, но общий принцип ее построения остается в основном неизменным На верхнем уровне иерархии располагается наиболее быстрая и дорогая регистровая память процессора, а также – буферная кэш-память первого уровня, расположенная в кристалле процессора. К ней примыкает кэш-память второго уровня, выполняемая в одном корпусе с процессором, либо – на системной плате. На следующем уровне находится оперативная (чаще всего – динамическая) память достаточно большого объема. Эти уровни вместе с процессорами образуют ядро ВС в архитектуре фон-Неймана. На более низких уровнях располагается внешняя память – внешние устройства, взаимодействующие с ядром по каналам ввода-вывода. В качестве вторичной памяти можно указать НЖМД (HDD) – накопители на жестких магнитных дисках – пожалуй, наиболее быстродействующую внешнюю память, при этом со значительным объемом. К массовой памяти можно отнести разнообразные сменные носители информации, различающиеся как по объему, так и по времени доступа (накопители на гибких магнитных дисках, магнитной ленте, CD-ROM – диски и т.д.), которые объединяет, пожалуй, относительно низкая удельная стоимость. Легко заметить, что при движении по иерархии сверху вниз происходит снижение удельной стоимости хранения информации, рост объемов ЗУ и - падение производительности. Подобное построение систем памяти в ВС объясняется, с одной стороны, различной функциональной направленностью ЗУ (оперативное хранение небольших объемов информации в ОЗУ, либо – долговременное хранение больших объемов данных на дисковой памяти), а с другой - попыткой достичь более-менее приемлемого соотношения между ценой и производительностью (а также функциональностью) вычислительной системы, что являлось актуальным как на заре вычислительной техники, так и сейчас.