Относительная (базовая) адресация 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Относительная (базовая) адресация



Адрес операнда определяется как сумма содержимого адресного поля команды и некоторого числа, называемого базовым адресом. Базовый адрес является косвенным. Для указания его адреса в команде предусмотрено поле В. Ещё одно поле команды, в котором находится адрес операнда, называют смещением.

 

Рисунок 2.7 - Формирование адреса операнда при относительной адресации

Полученный адрес EA=[B]+D называется эффективным или исполнительным адресом. Прямые скобки при B ([B]) – означают, что первое слагаемое берется по адресу, указанному в поле В. При выборке некоторого участка данных базовый адрес является неизменным. Адресация ячеек памяти относительно базового адреса осуществляется полем смещения.

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

 

Индексная (автоинкрементная или автодекрементная) адресация

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

В некоторых процессорах применяют более сложную адресацию, которая сочетает индексную и относительную.

Часто в команду с индексной адресацией включают признак, определяющий шаг индексации Т (Т=1,2,4 и т.д.), что позволяет осуществлять адресацию массивов через байт, слово, двойное слово и т.д.

В современных процессорах (например, в Intel 80386 и выше) применяют все возможные сочетания из смещения, индексного адреса, относительного адреса и шага. Например:

- индексная адресация с шагом. Содержимое индексного регистра умножается на шаг и суммируется со смещением- EA=[X]×T+D, где Т - величина шага;

Рисунок 2.8 - Формирование адреса операнда при индексной адресации

 

- базово - индексная адресация EA=[В]+[X];

- базово - индексная адресация с шагом EA=[В]+[X]×Т;

- базово - индексная адресация со смещением EA=[В]+[X]+D:

- базово - индексная адресация со смещением и шагом EA=[В]+[X]×Т+D.

 

2.6 Контрольные вопросы

1. Какова структура команды?

2. Какие поля включает команда?

3. Чем определяется длина команды?

4. В чем заключается естественная адресация команд в ЦВМ?

5. В чем заключается принудительная адресация команд в ЦВМ?

6. Перечислите достоинства и недостатки естественной адресации?

7. Перечислите достоинства и недостатки принудительной адресации?

8. Какие существуют способы адресации операндов?

9. Достоинства неявной и регистровой адресации?

10. В чем заключается непосредственная адресация?

11. В чем заключается прямая адресация?

12. Какие преимущества косвенной адресации?

13. Каково назначение относительной адресации?

14. Каково назначение индексной адресации?

15. Что означает базово - индексная адресация с шагом?

16. Что означает базово - индексная адресация со смещением и шагом.

 

 

ЗАПОМИНАЮЩИЕ УСТРОЙСТВА ЭВМ

Основные понятия

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

Идеальная память должна обладать высокой скоростью чтения- записи информации, иметь большой объем и быть недорогой. Удовле­творить всем трем требованиям одновременно невозможно. Чем больше память и чем быстрее она работает, тем дороже она стоит.

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

Максимальный размер оперативной памяти, который может использоваться процессором, оп­ределяется разрядностью его шин адреса и данных. Если разрядность шины адреса процессора - n бит, а шины данных - k бит, то максимальный размер памяти составляет 2n k-разрядных слов. За один шинный цикл обращения к памяти в процессор пересылается k бит данных. Поэтому процессор с 16-разрядной шиной адреса, может адресовать память объемом до 216 - 64 К k-разрядных слов, процессор, генерирующий 32-раз­рядные адреса, может использовать память объемом до 232 = 4 Г k-разрядных слов, а для процессоров с 40-разрядными адресами доступна память объемом до 240 = 1 Т единиц памяти.

Кроме шин адреса и данных для обмена информацией процессора и памяти используется шина управления. В простейшем случае она должна содержать линию для управления типом передачи данных: чтение или запись- Чт/Зп (Read/Write# - R/W#), которая часто дополняется линией готовности памяти к обмену (RDY или REDY). Могут использоваться и другие линии, с помощью которых, например, задается количество пересылаемых за один шинный цикл байт данных. Соединение процессора и ОП схематически показано на рисунке 3.1.

 

 

Рисунок 3.1- Организация связи ОП с процессором

Чтобы считать данные из ОП, процессор сначала выставляет адрес на шину адреса и устанавливает (с некоторой задержкой) линию R/W# в состояние “Лог. 1”. В ответ память помещает содержимое адресованной ячейки на линии данных и сообщает об этом процессору активизацией сигнала RDY. После получе­ния сигнала RDY k-разрядное слово с шины данных вводится в процессор.

Для того чтобы записать данные в память, процессор выставляет адрес на ША, а данные- на ШД после чего устанавливает линию R/W# в состояние “Лог. 0” (знак # показывает, что активным уровнем сигнала W является “Лог. 0” или низкий уровень), указывая таким образом, что выполняется операция записи в память.

Если в операциях чтения (записи) производится обращение по последовательным ад­ресам ОП, может быть выполнена операция блочной (пакетной) пересылки, при которой за один шинный цикл осуществляется пересылка нескольких (обычно 4-х) k-разрядных слов. При пакетных передачах повышается скорость обмена, при этом можно ограничиться выдачей на ША только адреса первого слова пакета.

 

Классификация ЗУ

При разработке системы памяти ЭВМ приходится решать противоречивую задачу создания памяти требуемой емкости и быстродействия при приемлемой стоимости. При этом наиболее оптимальными оказываются системы памяти, построенные по иерархическому признаку. Современные иерархические ЗУ подразделяются на сверхоперативные, КЭШ- память, оперативные и внешние (см. рисунок 3.2).

 

Рисунок 3.2 - Иерархическая структура ЗУ

 

Сверхоперативная память обычно входит в состав процессора, выполняется на его элементной базе и обеспечивает повышение быстродействия ЭВМ в целом. Она состоит из небольшого количества (до нескольких десятков) регистров общего назначения (РОН), в связи с чем команды процессора, использующие РОНы, имеют малый длину благодаря укороченному полю адреса. Вследствие этого длина программ сокращается.

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

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

Кэш- память реализуется на статической памяти с произвольным доступом (SRAM- Static Random Access Memory). Роль запоминающего элемента в статической памяти выполняет электронный триггер.

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

Cтековая память используется в ЭВМ для запоминания содержимого регистров процессора, при этом стековая память входит либо в состав процессора, либо под нее отводится часть ОП.

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

Первые два типа ВЗУ называют устройствами прямого доступа (циклического доступа). Магнитные и оптические поверхности этих устройств непрерывно вращаются, благодаря чему обеспечивается быстрый доступ к хранимой информации (время доступа этих устройств составляет от нескольких мс до десятка мс). Накопители на магнитных лентах (МЛ) называют устройствами последовательного доступа, из-за последовательного просмотра участков носителя информации (время доступа этих устройств составляет от нескольких секунд до нескольких минут).

 

ОЗУ с произвольным доступом

В оперативных ЗУ с произвольным доступом (RAM) запись или чтение осуществляется по адресу, указанному регистром адреса (РА). Информация, необходимая для осуществления процесса записи - чтения (адрес, данные и управляющие сигналы), поступает из процессора (см. рисунок 3.3). В ЗУ с произвольным доступом, на обращение по любому адресу уходит одно и то же время. Этим RAM-память отличается от запоминающих устройств с после­довательным доступом, таких

Рисунок 3.3 - Структура микросхем RAM

 

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

Адрес, поступающий из процессора, фиксируется в регистре адреса РА микросхемы, дешифрируется с помощью ДшА и выбирает нужную ячейку запоминающего массива. По сигналу запись Зп производится запись данных в заданную ячейку памяти, по сигналу чтения Чт - выборка данных. Сигнал выборки ВМ или ВК (CS - Chip Selekt) предназначен для выбора адресуемой микросхемы памяти.

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

Запоминающий массив RAM содержит множество одинаковых запоминающих элементов статического либо динамического типов. Если запоминающие элементы памяти могут сохранять свое состояние до тех пор, пока на них подано питание (Vпит), то такая память называется статической (SRAM). Возможная реализация запоминающего элемента ячейки памяти на КМОП- транзисторах показана на рисунке 3.4.

Рисунок 3.4 - Схема ячейки памяти на КМОП- транзисторах

 

Для запоминания одного бита информации в приведенной схеме используется триггер, который образуют транзисторы T3, Т5 и T4, Т6. В состоянии “лог 1” напряжение в точке X будет иметь высокий уровень напряжения за счет того, что тран­зисторы T3 и T6 открыты, а транзисторы Т5 и T4 закрыты. Таким образом, ес­ли транзисторы T1 и T2, управляемые сигналами на линии слова, открыты, то напряжение на линии бита b будет высоким, а на линии бита b' - низким.

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

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

 

 

Рисунок 3.5 - Упрощенная схема запоминающего элемента ячейки динамической памяти

 

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

 

Организация микросхем SRAM

Полупроводниковая память реализуется в виде микросхем с очень разным быстро­действием. Длительность их цикла варьируется от 100 нс до менее чем 10 нс. Появив­шиеся в конце 1960-х полупроводниковые схемы памяти первоначально были гораздо дороже доминирующей в это время памяти на магнитных (ферритовых) сердечниках. Однако стремительное развитие технологии СБИС позволило быстро снизить их стои­мость, и в настоящее время практически вся память реализуется в виде полупроводниковых микросхем.

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

Рассмотрим организацию микросхемы памяти на 1 К (1024) бит. Память такого объема может быть организована в виде массива из 128 слов с длиной по 8 бит (Байт) каждое. Для адресации 128 слов потребуется log2 128 = 7 разрядов адреса. Вместе с 8-ю линиями данных при такой организации массива в микросхеме необходимо 15 внешних выводов (без учета выводов для питания и управляющих сигналов). В оптимальных (по количеству выводов) вариантах то же количество ячеек можно организовать в виде массивов 512x2 бит или 1 К х 1 бит. В последнем случае понадобится 10-разрядный адрес и одна линия данных, а, следова­тельно, 11 внешних выводов. Эта организация показана на рисунке 3.6. В ней 10-разрядный адрес делится на две части по пять разрядов в каждой, представ­ляющих адреса строки и столбца массива ячеек. Пять разрядов адреса строки выделяют одну из 32-х строк массива длиной в 32 бита, позволяя им поступать через усилители записи- чтения на мультиплексор. Пять разрядов адре­са столбца с помощью мультиплексора 32 х 1 соединяют с внешней линией данных только адресованный бит.

Рисунок 3.6 - Структура микросхемы SRAM с организацией 1К х 1 бит

 

Современные микросхемы памяти содержат гораздо большее количество яче­ек. Микросхемы SRAM большей емкости и разрядности построены по такой же структуре, но со­держат массивы большего размера и имеют большее число внешних соединений. Например, 4-мегабитовая микросхема памяти может иметь организацию 512 К х 8 бит, для ко­торой понадобятся 19 адресных выводов и 8 выводов для ввода-вывода данных. В настоящее время выпускаются микросхемы SRAM емкостью в сотни кбит адресуемых единиц. Количество адресуемых слов микросхемы памяти оп­ределяет размер ее адресного пространства.

 



Поделиться:


Последнее изменение этой страницы: 2016-08-06; просмотров: 1292; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.209.56.116 (0.034 с.)