Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Структура адресной памяти процессора




Микропроцессорная память

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

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

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

Элементарной единицей памяти всех современных компьютеров является байт, состоящий из восьми двоичных разрядов. Каждый байт имеет свой адрес. В наиболее распространенной 32-разрядной архитектуре адреса байтов изменяются от 0 до 232 - 1 с шагом 1. Память, с логической точки зрения, можно рассматривать как массив байтов: можно прочесть или записать байт с заданным адресом. Содержимое байта трактуется либо как неотрицательное целое число в диапазоне от 0 до 255, либо как число со знаком в диапазоне от -128 до 127.  
Адрес байта 7...... 0

0

1

2

.

.

.

65533

65534

65535

 

Рис. 6.6 Байтовая организация памяти

Однако физически при работе с памятью по шине передаются не отдельные байты, а машинные слова. В 32-разрядной архитектуре машинное слово — это четыре подряд идущих байта, при этом адрес младшего байта кратен четырем. (В 64-разрядной архитектуре машинное слово состоит из восьми байтов.) Машинное слово — это наиболее естественный элемент данных для процессора. Принято нумеровать биты внутри машинного слова (как и внутри байта) справа налево, начиная с нуля и кончая 31. Младший бит имеет нулевой номер, старший, или знаковый, бит — номер 31. Младшие биты числа находятся в младших битах машинного слова. В этом случае каждое 16-разрядное слово состоит из двух последовательно расположенных байтов. Например, байты 2 и 3 образуют одно полное слово, а байты 3 и 4 нет. При работе с такой памятью счетчик команд микропроцессора после выборки каждой команды должен наращиваться на 2, а не на 1, как в предыдущем случае. Аналогично решается задача в случае 4-х байтового слова.

 

Адрес 15...... 8 7....... 0 Адрес 15...... 8 7....... 0

слова слова

1 0 0 1

3 2 2 3

5 4 4 5

.

.

       
   
 
   


65533 65532 65532 65533

65535 65534 65534 65535

.

.

 

“A” “B”

Рис. 6.7 Прямой и обратный порядок хранения 2-х байтового слова при прямом и обратном порядке хранения

 

Рассмотрим пример:

- записать двухбайтовое слово 1 7 B A

 

Обратный порядок байтов Прямой порядок байтов

«0» «1» «1» «0»

1 7 B A   4 8 5 E
1 7 B A   4 8 5 E
0 0

2 2

Байт с наиболее значащей частью (“big-end”, в исходном числе он находится слева) сохраняется в память по наименьшему адресу N=0, (n=2), машины: Sparc, Apple, IBM-370 ….
Байт с наиболее значащей частью (слева) сохраняется в память по наибольшему адресу N= 1 (n=3), (“little-end”), машины: Intel, Alpha, VAX…  

 

 

Рис. 6.8 Два способа хранения многобайтовых данных

Необходимо отметить, что и в том, и в другом случае слово, содержащее это число, имеет, адрес – 0, но в одном случае мы записываем его в прямом виде - 17BA, а в другом в перевернутом – ВА17. Принято в качестве адреса слова, которое состоит из нескольких последовательно расположенных байтов, использовать адрес байта с наименьшим номером. В итоге адреса слов уже не будут меняться через единицу, приращение будет зависеть от длины машинного слова. Например, при обращении к целому слову (с содержимым 17BA) процессор выставляет адрес 0. При обращении к младшему байту этой ячейки (с содержимым BA) процессор выставляет тот же самый адрес 0, но использует команду адресующую байт, а не слово. При обращении к старшему байту этой же ячейки (с содержимым 17) процессор выставляет адрес 1 и использует команду адресующую байт. Архитектура Big End была популярна в середине XX века. К концу 70-х годов программисты осознали, что Little End-архитектура гораздо удобнее. Тем не менее многие компьютерные протоколы ориентируются на Big End, поскольку они были приняты достаточно давно. Например, все протоколы сети Internet передают данные в формате Big End, т.к. они были разработаны в 70-х годах XX века. На машинах с архитектурой Little End приходится переставлять байты внутри слова перед отправкой IP-пакета в сеть или при получении IP-пакета из сети.




Поделиться с друзьями:


Дата добавления: 2014-01-04; Просмотров: 613; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.012 сек.