ОСНОВНАЯ ПАМЯТЬ.docx

  • docx
  • 29.04.2020
Публикация на сайте для учителей

Публикация педагогических разработок

Бесплатное участие. Свидетельство автора сразу.
Мгновенные 10 документов в портфолио.

Иконка файла материала ОСНОВНАЯ ПАМЯТЬ.docx

ОСНОВНАЯ ПАМЯТЬ

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

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

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


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


Вентили, подобные показанным на рис. 1.1, представляют собой строительные блоки, из которых конструируются ком- пьютеры. Один важный этап этого направления представлен в электрической схеме, показанной на рис. 1.2. Это один из возможных вариантов схем определенного класса, называемых триггерами. Триггер – это схема, которая постоянно выдает выходное значение 0 или 1; оно не меняется до тех пор, пока одиночный импульс от другой схемы не переведет ее в проти- воположное состояние. Другими словами, выходное значение будет переключаться из одного состояния в другое только под воздействием внешних стимулов.

 

 

 


 

Рис. 1.1. Схематическое представление вентилей AND, OR, XOR, NOT и таблицы их входных и выходных данных


Рис.1.2. Схема простого триггера

Пока оба входных значения в схеме, представленной на рис. 1.3, равны нулю, выходное значение (0 или 1) будет неизмен- ным. Однако даже кратковременное появление значения 1 на верхнем входе схемы вызовет установку на ее выходе значения 1, тогда как кратковременное появление значения 1 на нижнем входе вызовет установку на выходе значения 0.

а)                                          б)

в)

Рис. 1.3. Установка входного значения триггера равного 1:

а – единица поступает на верхний вход; б – это вызывает появление единицы на выходе вентиля ОR, что, в свою очередь, вызывает появ- ление единицы на выходе вентиля AND; в – наличие единицы на выходе вентиля AND удерживает вентиль OR от изменения его состояния и после снятия единичного сигнала с верхнего входа


Теперь рассмотрим предыдущее утверждение более подробно. Мы не знаем текущего выходного значения схемы, пред- ставленной на рис. 1.3, поэтому предположим, что на верхний вход поступило значение 1, тогда как на нижнем входе сохра- няется значение 0 (рис. 1.3, а). Это приведет к тому, что выходное значение вентиля OR станет равно 1 независимо от текущего значения на его втором входе. В свою очередь, на обоих входах вентиля AND теперь будут значения 1, поскольку на другом его входе уже присутствует значение 1 (оно появляется за счет передачи значения 0 на нижнем входе триггера через вентиль NOT). В результате выходное значение вентиля AND станет равно 1, а это значит, что на втором входе вентиля OR также появится значение 1 (рис. 1.3, б). Это гарантирует, что выходное значение вентиля OR останется равным 1 даже в том слу- чае, если значение на верхнем входе триггера вновь станет равно 0 (рис. 1.3, в). Таким образом, выходное значение триггера теперь равно 1 и будет сохраняться таким даже в том случае, если на верхний вход будет вновь подано значение 0.

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

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

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


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

Рис. 1.4. Другой способ построения триггера

Заряды сохранятся на пластинах конденсатора и после отключения источника напряжения. Если впоследствии пласти- ны соединить проводником, то по нему потечет электрический ток и заряды нейтрализуются. Таким образом, конденсатор может пребывать в заряженном или разряженном состоянии; одно из них вполне может представлять значение 0, а другое – значение 1. С помощью современных технологий на тонких пластинах, называемых чипами, можно размещать миллионы крошечных конденсаторов вместе с необходимыми схемами электрических соединений. Благодаря этому в настоящее время конденсаторы широко используются для хранения битов в вычислительных машинах.

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

Структура основной памяти. Запоминающие схемы основной памяти машины организованы в небольшие блоки (дос- тупные как единое целое), которые называются ячейками памяти (cell). Как правило, размер ячейки памяти составляет во- семь бит. Наборы из восьми бит получили такую популярность, что для их обозначения сейчас широко используется специ- альный термин байт (byte).

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


 

Рис. 1.5. Организация ячейки памяти в 1 байт

Микрокомпьютеры, используемые, например в микроволновых печах, имеют основную память, которая измеряется всего лишь несколькими сотнями ячеек, тогда как компьютеры, предназначенные для хранения и обработки большого количества информации, имеют миллиарды  ячеек  основной  памяти.  Размер  основной  памяти  машины  часто  измеряется  единицами  в 1 048 576 отдельных ячеек. (Величина 1 048 576 – это число, равное 220, и это значение более удобно в качестве единицы из- мерения в компьютере, чем число 1 000 000). Для обозначения этой единицы измерения используется термин мега. Аббре- виатура Мбайт обычно употребляется как сокращение для термина мегабайт. Следовательно, память емкостью 4 Мбайт содержит 4 194 304 (4 ´ 1 048 576) ячейки, каждая размером 1 байт. Другими единицами измерения памяти являются килобайт (сокращенно кбайт), который равен 1024 байт (210 байт), и гигабайт (сокращенно Гбайт), который равен 1024 Мбайт, или 230 байт.

Для идентификации отдельных ячеек основной памяти машины каждой ячейке присваивается уникальное имя, назы- ваемое адресом ячейки (address). Эта система аналогична методу, используемому для поиска здания в городе по указанному адресу. Однако в случае с ячейками памяти применяются исключительно цифровые адреса. Точнее говоря, можно просто представить себе все эти ячейки помещенными в один ряд и пронумерованными в восходящем порядке, начиная с нуля. Ад- реса ячеек в машине с памятью 4 Мбайт будут представлены числами 0, 1, 2, ..., 4194304. Следует отметить, что такая систе- ма адресации не только позволяет однозначно идентифицировать каждую ячейку памяти (рис. 1.6), но и упорядочивает их, делая правомочными такие выражения, как "следующая ячейка" или "предыдущая ячейка".

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

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

Рис. 1.6. Образное представление ячеек памяти, упорядоченных по адресам

В этих устройствах длинные строки битов приходится обрабатывать как единый блок. Если память типа RAM создается с использованием технологии динамической памяти, то в этом случае ее называют динамической памятью с произвольной выборкой (Dynamic RAM, DRAM).

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

Вопросы для самопроверки

1.    При каких значениях на входах представленной ниже схемы на ее выходе появится значение 1?


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

3.    Предположим, что на оба входа триггера, показанного на рис. 1.4, подается значение 0. Опишите последовательность событий, которые будут происходить в элементах этого триггера при кратковременном поступлении на его верхний вход значения 1.

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

5.    Если ячейка памяти с адресом 5 содержит число 8, то в чем состоит различие между записью числа 5 в ячейку с но- мером 6 и пересылкой содержимого ячейки с номером 5 в ячейку с номером 6?

6.    Предположим, что требуется поменять местами значения, хранящиеся в ячейках памяти с номерами 2 и 3. Найдите ошибку в следующей последовательности действий.

Шаг 1. Переместите содержимое ячейки с номером 2 в ячейку с номером 3.

Шаг 2. Переместите содержимое ячейки с номером 3 в ячейку с номером 2.

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

ек.

7.    Какое количество битов содержится в памяти компьютера, размер которой равен 4 кбайт?