Как определяется разрядность адресной шины
Перейти к содержимому

Как определяется разрядность адресной шины

  • автор:

Шина данных

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

Разрядность шины данных определяется разрядностью процессора, т.е. количеством двоичных разрядов, которые процессор обрабатывает за один такт. Разрядность процессоров постоянно увеличивалась по мере развития компьютерной техники.

За 25 лет, со времени создания первого персонального компьютера (1975г.), разрядность шины данных увеличилась с 8 до 64 бит.

Шина адреса

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

Таким образом, каждое устройство или ячейка оперативной памяти имеет свой адрес. Адрес передается по адресной шине, причем сигналы по ней передаются в одном направлении от процессора к оперативной памяти и устройствам (однонаправленная шина).

Разрядность шины адреса определяет адресное пространство процессора, т.е. количество ячеек оперативной памяти, которые могут иметь уникальные адреса. Количество адресуемых ячеек памяти можно рассчитать по формуле:

где n — разрядность шины адреса.

Каждой шине соответствует свое адресное пространство, т. е. максимальный объем адресуемой памяти:

Разрядность шины адреса постоянно увеличивалась и в современных персональных компьютерах составляет 32 бит. Таким образом, максимально возможное количество адресуемых ячеек памяти равно:

N == = 4 294 967 296 = 4 Гб

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

Аппаратно на системных платах реализуются шины различных типов. В компьютерах РС/286 использовалась шина ISA (Industry Standard Architecture), имевшая 16-разрядную шину данных и 24-разрядную шину адреса. В компьютерах РС/386 и РС/486 используется шина EISA (Extended Industry Standard Architecture), имеющая 32-разрядные шины данных и адреса. В компьютерах PC/ Pentium используется шина PCI (Peripheral Component Interconnect), имеющая 64-разрядную шину данных и 32-разрядную шину адреса.

Шина управления

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

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

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

2.2. Шина данных. Разрядность шины

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

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

Современные процессоры допускают внешнее подключение большего числа линий данных: процессор 80286 — 16 линий дан­ных, процессоры 80386 DX и 80486 DX — 32 линии, а процессор Pentium — 64 линии данных.

2.3. Адресная шина. Разрядность шины

Другая группа линий образует адресную шину. Эта шина исполь­зуется для адресации. Каждая ячейка памяти и устройство ввода-вывода ком­пьютера имеет свой собственный адрес.

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

В отличие от шины данных шина адреса является одно­направленной.

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

максимальное число адресов = 2 n ,

где n разрядность адресной шины.

Процессор 8088 имел 20 адрес­ных линий, что в соответствии с приведенной формулой обеспе­чивало адресацию памяти объемом:

2 20 =1 048 576 байт = 1024 Кбайт = 1 Мбайт.

Это тот самый предельный объем памяти, который все еще имеет силу в операционной системе DOS.

Совсем иная ситуация с процессором 80286. Он имеет 24 ад­ресных линии и поэтому в состоянии управлять памятью объемом:

2 24 = 16 777 216 байт =16 Мбайт.

Для обеспечения связи с микросхемами памяти число адрес­ных линий процессора должно равняться числу адресных линий на системной плате.

Процессоры 80386, 80486 и Pentium имеют 32 адресных ли­нии, что обеспечивает адресацию свыше 4 млрд. ячеек памяти. На системной плате с такими процессорами должно быть 32 линии, обеспечивающие обмен адресами между центральным процессо­ром и всеми важными периферийными микросхемами.

Как определить разрядность шины адреса?

количество ячеек оперативной памяти, которые могут иметь уникальные адреса. Количество адресуемых ячеек памяти можно рассчитать по формуле: N =2 I , где I .

Сколько разрядов имеет шина адреса?

Разрядность шины адреса у большинства современных персональных компьютеров составляет 32 разряда, т. е.

Что определяет разрядность шины данных?

Разрядность шины адреса определяет максимальный номер байта, который может быть затребован процессором. Так, при 8-ми разрядной шине возможна адресация 256 байт, при 16-ти разрядной – 64 Кбайт, а при 32-х разрядной – 4 Гбайт.

Что зависит от разрядности адресной шины пример?

Адрес передается по адресной шине, причем сигналы по ней передаются в одном направлении от процессора к оперативной памяти и устройствам (однонаправленная шина). Разрядность шины адреса определяет адресное пространство процессора, т. е. количество ячеек оперативной памяти, которые могут иметь уникальные адреса.

Какая шина определяет объем адресуемой памяти?

Основной характеристикой шины адреса является её разрядность в битах, определяющая объём адресуемой памяти.

Что определяет шина данных?

Основной характеристикой шины данных является её ширина в битах. Ширина шины данных определяет количество информации, которое можно передать за один такт.

Что такое разрядность шины?

Разрядность шины — это совокупность каналов, соединяющих графический чип и модули памяти. Число таких дорожек влияет на скорость обмена данными. Производители могут встроить несколько чипов. Это выполняется относительно объема и скорости.

Какая бывает разрядность шины?

Сам по себе показатель разрядности шины роли не играет, будь он 64, 256 или 512 бит. Производители видеокарт выбирают разные пути. В некоторых версиях используются низкие частоты памяти с высокой разрядностью, а другие оснащаются высокочастотной памятью, совмещенной маленькой шиной 64-128 бит.

Какой объём оперативной памяти может адресовать процессор с 32 разрядной адресной шиной?

32 битные ОС для адресации памяти используют 232 бит, что составляет 4294967296 бит или 4 Гигабайт (Гб).

Как вычислить количество адресуемых ячеек памяти?

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

Какие есть шины данных?

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

Как определить разрядность шины адреса? Ответы пользователей

Как вычислить разрядность шины адреса матрицы памяти объёмом 1 килобайт и разрядностью слова 8 бит.

Разрядность шины данных определяется разрядностью процессора, т. е. количеством двоичных разрядов, которые процессор обрабатывает за один такт. Разрядность .

Как вычислить разрядность? · Нажмите на клавиатуре сочетание клавиш Windows+R, и в появившемся окне «Выполнить» введите команду msinfo32; · В открывшемся окне в .

Разрядность шины данных определяется разрядностью процессора, т.е. количеством двоичных разрядов, которые процессор обрабатывает за один такт.

Разрядность адресной шины определяет максимальное число адресов, по которым может обратиться процессор, т. е. число линий в адресной шине .

Каждая ячейка должна иметь свой адрес. Следовательно, объем памяти, который может адресовать процессор, зависит от разрядности адресной шины.

Тактовая частота (МГц) определяется параметрами кварцевого резонатора, представляющего собой кристалл кварца в оловянной оболочке. Под воздействием .

Шина адреса (или адресная шина) — компьютерная шина, выделенная для передачи адресной информации. Она может представлять собой совокупность проводников .

Так как единицей информации является один бит (двоичный разряд), то, чем больше передается разрядов за один такт (по шине данных), тем быстрее работает .

Как определить разрядность шины адреса? Видео-ответы

Виды видеопамяти и сколько её нужно? Какая нужна шина?

Данное видео поможет вам при покупке видеокарт. Так же простым языком объясняю, почему больше не нужна широкая .

Как определить направление вращения шины?

Как работает компьютер? Шины адреса, управления и данных. Дешифрация. Взгляд изнутри!

КУПИТЬ КОМПОНЕНТЫ: Процессор Z80: https://aliclick.shop/r/c/1raxverwutufm2ml Набор монт. проводов: .

Кто нарушит правила?

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

Как определить направление шины.

Как определить направление шины без меток.

Об авторе

Иван Быстров - главный редактор

Иван Быстров

Здравствуйте! Меня зовут Иван Быстров, и я главный редактор этого сайта. Мне 32 года, я живу в Ярославской области России. Я всегда увлекался автомобилями, всегда хотел узнать больше, но зачастую не мог найти ответы на свои вопросы. Это сподвигло меня на создание проекта, где будет собрано воедино максимальное количество вопросов про автомобили, и на каждый из них будет предложен грамотный ответ! Очень надеюсь, что мой труд поможет всем получить новые знания быстро и без лишних затрат энергии!

От чего зависит разрядность адресной шины компьютера

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

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

Современные процессоры допускают внешнее подключение большего числа линий данных: процессор 80286 — 16 линий дан­ных, процессоры 80386 DX и 80486 DX — 32 линии, а процессор Pentium — 64 линии данных.

2.3. Адресная шина. Разрядность шины

Другая группа линий образует адресную шину. Эта шина исполь­зуется для адресации. Каждая ячейка памяти и устройство ввода-вывода ком­пьютера имеет свой собственный адрес.

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

В отличие от шины данных шина адреса является одно­направленной.

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

максимальное число адресов = 2 n ,

где n разрядность адресной шины.

Процессор 8088 имел 20 адрес­ных линий, что в соответствии с приведенной формулой обеспе­чивало адресацию памяти объемом:

2 20 =1 048 576 байт = 1024 Кбайт = 1 Мбайт.

Это тот самый предельный объем памяти, который все еще имеет силу в операционной системе DOS.

Совсем иная ситуация с процессором 80286. Он имеет 24 ад­ресных линии и поэтому в состоянии управлять памятью объемом:

2 24 = 16 777 216 байт =16 Мбайт.

Для обеспечения связи с микросхемами памяти число адрес­ных линий процессора должно равняться числу адресных линий на системной плате.

Процессоры 80386, 80486 и Pentium имеют 32 адресных ли­нии, что обеспечивает адресацию свыше 4 млрд. ячеек памяти. На системной плате с такими процессорами должно быть 32 линии, обеспечивающие обмен адресами между центральным процессо­ром и всеми важными периферийными микросхемами.

Как связаны объем оперативной памяти и разрядности адресной шины?

Разрядность шины адреса определяет объем адресуемой памяти процессора и, соответственно, максимальный объем оперативной памяти, которую можно непосредственно использовать. Разрядность шины адреса у большинства современных персональных компьютеров составляет 32 разряда, т. е.

Что зависит от разрядности адресной шины пример?

Адрес передается по адресной шине, причем сигналы по ней передаются в одном направлении от процессора к оперативной памяти и устройствам (однонаправленная шина). Разрядность шины адреса определяет адресное пространство процессора, т. е. количество ячеек оперативной памяти, которые могут иметь уникальные адреса.

Какой объём оперативной памяти может адресовать процессор с 32 разрядной адресной шиной?

32 битные ОС для адресации памяти используют 232 бит, что составляет 4294967296 бит или 4 Гигабайт (Гб).

Что определяет разрядность шины?

Разрядность шины адреса определяет максимальный номер байта, который может быть затребован процессором. Так, при 8-ми разрядной шине возможна адресация 256 байт, при 16-ти разрядной – 64 Кбайт, а при 32-х разрядной – 4 Гбайт.

Какая шина определяет объем адресуемой памяти?

Основной характеристикой шины адреса является её разрядность в битах, определяющая объём адресуемой памяти.

Сколько разрядов имеет шина адреса?

Разрядность шины адреса у большинства современных персональных компьютеров составляет 32 разряда, т. е.

Как вычислить количество адресуемых ячеек памяти?

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

Какой объем памяти поддерживает 32 разрядная система?

Диапазон целых значений, которые могут быть сохранены в 32 бита: от 0 до 4 294 967 295. Таким образом, процессор с 32-битной адресацией памяти может напрямую адресовать до 4 Гб оперативной памяти.

Почему 32 битная система не видит 4 гига?

Хотя теоретически 32-разрядной системе доступны (без дополнительных ухищрений) до 4 ГБ физической памяти, 32-разрядные клиентские версии Windows не могут использовать весь этот объем из-за того, что часть адресов используется устройствами компьютера.

Что дает разрядность шины видеопамяти?

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

Что определяет шина данных?

Основной характеристикой шины данных является её ширина в битах. Ширина шины данных определяет количество информации, которое можно передать за один такт.

Как связаны объем оперативной памяти и разрядности адресной шины? Ответы пользователей

Другая группа линий образует адресную шину. Эта шина используется для адресации. Как связаны объем оперативной памяти и разрядность .

Как связаны объем оперативной памяти и разрядность адресной шины? Разрядность шины адреса определяет объем адресуемой памяти процессора и, соответственно, .

Разрядность адресной шины играет важную роль в архитектуре компьютера, так как она определяет максимально возможный объем оперативной памяти компью- тера.

Разрядность шины данных связана с разрядностью процессора (имеются 8-, 16-, 32-, . а для оперативной памяти код адреса ячейки памяти.

Разрядность шины данных связана с разрядностью процессора (имеются . от процессора к оперативной памяти и устройствам, т. е. шина адреса .

Разрядность адресной шины определяет адресное пространство процессора, т. е. максимальный объем оперативной памяти, который может быть установлен в .

Разрядность шины данных связана с разрядностью процессора (имеются 8-, 16-, 32-, . свое адресное пространство, т. е. максимальный объем адресуемой памяти:.

Разрядность шины адреса определяет объем адресуемой памяти, то есть количество ячеек оперативной памяти, которые могут иметь уникальные адреса.

Разрядность адресной шины определяет максимально возможный для данной машины объем адресного . то есть максимально возможный объем оперативной памяти.

Как связаны объем оперативной памяти и разрядности адресной шины? Видео-ответы

Виды видеопамяти и сколько её нужно? Какая нужна шина?

Данное видео поможет вам при покупке видеокарт. Так же простым языком объясняю, почему больше не нужна широкая .

03. Основы устройства компьютера. Память и шина. [Универсальный программист]

Как устроены компьютеры и другая вычислительная техника. Как работает память. Шина адреса, шина данных.

Влияние шин PCI-e и внутренней шины видеокарты на производительность

В этом видео на практике смотрим на то как видеокарта теряет производительность при недостаточности ширины .

Оперативная память — для чего она нужна и как работает

Оперативная память, или как ее еще называют RAM-память получила своё название от английского словосочетания: .

Доступна не вся оперативная память(ОЗУ) на Windows. Что делать?

Поддержать канал и увидеть свое сообщение на следующем стриме можно здесь https://new.donatepay.ru/@292052 .

Об авторе

Иван Быстров - главный редактор

Иван Быстров

Здравствуйте! Меня зовут Иван Быстров, и я главный редактор этого сайта. Мне 32 года, я живу в Ярославской области России. Я всегда увлекался автомобилями, всегда хотел узнать больше, но зачастую не мог найти ответы на свои вопросы. Это сподвигло меня на создание проекта, где будет собрано воедино максимальное количество вопросов про автомобили, и на каждый из них будет предложен грамотный ответ! Очень надеюсь, что мой труд поможет всем получить новые знания быстро и без лишних затрат энергии!

Шина (компьютер)

Магистраль – устройство, которое осуществляет взаимосвязь и обмен информацией между всеми устройствами компьютера.
Магистраль включает в себя три многоразрядные шины, представляющие собой многопроводные линии:

шину данных,
шину адреса,
шину управления.

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

Системная магистраль ISA

Системная шина (магистраль) ISA была разработана специально для персональных компьютеров типа IBM PC AT и является фактическим стандартом. В то же время, отсутствие официального международного статуса магистрали ISA (она не утверждена в качестве стандарта ни одним международным комитетом по стандартизации) приводит к тому, что многие производители допускают некоторые отклонения от фирменного стандарта.
ISA явилась расширением магистрали компьютеров IBM PC и IBM PC XT. В ней было увеличено количество разрядов адреса и данных, увеличено число линий аппаратных прерываний и каналов ПДП, а также повышена тактовая частота. К 62-контактному разъему прежней магистрали был добавлен 36-контактный новый разъем. Тем не менее, совместимость была сохранена, и платы, предназначенные для IBM PC XT, годятся и для IBM PC AT. Характерное отличие ISA состоит в том, что ее тактовый сигнал не совпадает с тактовым сигналом процессора, как это было в IBM PC XT, поэтому скорость обмена по ней не пропорциональна тактовой частоте процессора.
Магистраль ISA относится к немультиплексированным (то есть имеющим раздельные шины адреса и данных) 16-разрядным системным магистралям среднего быстродействия. Обмен осуществляется 8-ми или 16-ти разрядными данными. На магистрали реализован раздельный доступ к памяти компьютера и к устройствам ввода/вывода (для этого имеются специальные сигналы). Максимальный объем адресуемой памяти составляет 16 Мбайт (24 адресные линии). Максимальное адресное пространство для устройств ввода/вывода — 64 Кбайт (16 адресных линий), хотя практически все выпускаемые платы расширения используют только 10 младших адресных линий (1 Кбайт). Магистраль поддерживает регенерацию динамической памяти, радиальные прерывания и прямой доступ к памяти. Допускается также захват магистрали.
Разъем магистрали ISA разделен на две части, что позволяет уменьшать размеры 8-разрядных плат расширения, а также использовать платы, разработанные для компьютеров IBM PC XT. На магистрали присутствуют четыре напряжения питания: +5 В, –5 В, +12 В и –12 В, которые могут использоваться платами расширения.

Системная шина: что это такое в информатике

Front Side Bus, FSB, системная шина – это магистраль, совокупность линий, обеспечивающих взаимодействие центрального процессора (ЦП) с электронными компонентами (оперативная, кэш-память). По ней устройства обмениваются служебными сигналами, адресуются. Эти проводники передачи информации идут параллельно, имеют аналогичное предназначение, физическую и логическую реализацию. В ноутбуках и компьютерах шина находится на материнской плате.
Локальная шина служит для взаимодействия процессора с контроллерами периферийных устройств: накопителей, графического адаптера.

Подключение FSB реализуется по следующей схеме:

Микропроцессор соединяется с системным контроллером материнской платы, который называют северным мостом.

В состав северного моста входят: контроллеры ОЗУ, шина высокоскоростных периферийных устройств (видеокарта).

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

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

Что позволяет говорить о модульном принципе построения компьютера?

Конструктивно составные части системного блока и магистраль располагаются на системной плате. На ней иногда бывают сосредоточены все необходимые для работы компьютера элементы. Такие платы называются All-In-One. Однако большая часть компьютеров имеет системные платы, которые содержат лишь основные узлы, а элементы связи, например, с приводами накопителей, дисплеем и другими периферийными устройствами на ней отсутствуют. В таком случае эти отсутствующие элементы располагаются на отдельных печатных платах, которые вставляются в специальные разъемы расширения, предусмотренные для этого на системной плате. Эти дополнительные платы называют дочерними (daughterboard), а системную плату — материнской (motherboard).
Функциональные устройства, выполненные на дочерних платах, часто называют контроллерами или адаптерами, а сами дочерние платы — платами расширения. Таким образом, подключение отдельных модулей компьютера к магистрали, находящейся непосредственно на материнской плате, на физическом уровне осуществляется с помощью контроллеров, а на программном обеспечивается драйверами. Контроллер принимает сигнал от процессора и дешифрует его, чтобы соответствующее устройство смогло принять этот сигнал и правильно отреагировать на него. За его выполнение процессор не отвечает, отвечает лишь соответствующий контроллер, поэтому периферийные устройства компьютера заменяемы и набор таких модулей произволен. Большая часть периферийных устройств подсоединяется очень просто — снаружи, через разъемы на корпусе системного блока к выходам соответствующих контроллеров — портам (периферийные устройства еще называются внешними, так как осуществляют связь ЭВМ с «внешним миром»).
Модульная организация системы опирается на магистральный (шинный) принцип обмена информации. Процессор выполняет арифметические и логические операции, взаимодействует с памятью, управляет и согласует работу периферийных устройств.
Обмен информацией между отдельными устройствами компьютера производится по образующим магистраль трем многоразрядным шинам (многопроводным линиям связи), соединяющим все модули — шине данных, шине адресов, шине управления.
Разрядность шины определяется количеством битов информации, передаваемых по шине параллельно.
Данные по шине данных могут передаваться от процессора к какому-либо устройству, или наоборот, от устройства к процессору, то есть шина данных является двунаправленной. К основным режимам работы процессора с использованием шины передачи данных можно отнести:

• запись/чтение данных из оперативной памяти (оперативное запоминающее устройство — ОЗУ);
• запись/чтение данных из внешних запоминающих устройств (ВЗУ).

Адресное пространство микропроцессорного устройства

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

В качестве минимально адресуемой ячейки памяти выбирается 8-разрядная ячейка памяти (байт). Для 16-разрядной шины это будет число 65535 (64К). Адресное пространство этой шины и распределение памяти микропроцессорной системы, изображенной на рис. 5.9, приведено на рис. 5.10, а распределение памяти микропроцессорной системы, изображенной на рис. 5.9, — на рис. 5.11.

Микропроцессоры после включения питания и выполнения процедуры сброса всегда начинают выполнение программы с определенного адреса, чаще всего нулевого. Однако есть и исключения. Например, процессоры, на основе которых строятся универсальные компьютеры 1ВМ РС или Мастей, стартуют не с нулевого адреса. Программа должна храниться в памяти, которая не стирается при выключении питания, т.е. в ПЗУ.

  • 0011111111111111
  • 001ххххххххххххх

7 6 5 4 3 2 1 0

Номер бита в ячейке

Рис. 5.10. Адресное пространство 16-разрядной шины адреса

Десятичный номер ячейки

Двоичный номер ячейки 1111111111111111 1111111111111110 1111111111111101

  • 0000010000000001
  • 0000010000000000
  • 0000001111111111
  • 0000000000000100 0000000000000011 0000000000000010 0000000000000001 0000000000000000

Рис. 5.11. Распределение памяти микропроцессора с 16-разрядной шиной адреса

Способы расширения адресного пространства

микропроцессора

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

В этой схеме параллельный порт используется в качестве простейшего контроллера памяти микропроцессорного устройства. При применении 8-разрядного параллельного порта в микропроцессорной системе появились дополнительные восемь линий адреса. В результате адресное пространство микропроцессорной системы увеличилось до 16 Мбайт. Структура нового адресного пространства приведена на рис. 5.13, а принцип формирования нового адреса с использованием переключателя страниц приведен на рис. 5.14.

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

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

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

Адресное пространство при использовании сегментного метода адресации приведено на рис. 5.15, а формирование адреса при сегментной адресации приведено на рис. 5.16.

Количество сегментов определяется количеством базовых регистров. Сегменты могут перекрываться в адресном пространстве,

Рис. 5.12. Использование параллельного порта в качестве переключателя страниц памяти

Рис. 5.13. Структура страничного адресного пространства

Адрес = Программный счетчик + Базовый регистр • 2 16 _

От ШОО/г до с0000/г

От с0000/г до г/0000/г

ПЗУ расширения ВЮБ

От г/0000/г до /)000/г

Расширенная память (между 1 Мбайт и 4 Гбайт)

От 100000/г до 1 Offefli

От 10ffefh до 100000000/г

штатной аппаратурой компьютера — клавиатурой, экраном, дисками и пр. В области данных ВЮЗ хранятся разнообразные данные, используемые программами В ЮЗ в своей работе. Так, здесь размещаются:

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

Область данных ВЮЗ заполняется информацией в процессе начальной загрузки компьютера, а затем динамически модифицируется

системой по мере необходимости. Многие прикладные программы, особенно написанные на языке ассемблера, обращаются к этой области с целью чтения или модификации содержащихся в них данных. С некоторыми ячейками области данных BIOS мы столкнемся при рассмотрении примеров конкретных программ.

В области памяти, начиная с адреса 500/?, располагается собственно операционная система MS-DOS, которая обычно занимает несколько десятков килобайт. Программы MS-DOS, как и другие системные составляющие (векторы прерываний, область данных BIOS), записываются в память автоматически в процессе начальной загрузки компьютера.

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

Оставшиеся 384 Кбайт адресного пространства между границами 640 Кбайт и 1 Мбайт, называемые старшей или верхней (upper) памятью, первоначально были предназначены для размещения постоянных запоминающих устройств (ПЗУ). Практически под ПЗУ занята только небольшая часть адресов, а остальные используются в других целях.

Часть адресного пространства старшей памяти отводится для адресации к графическому и текстовому видеобуферам графического адаптера. Графический адаптер представляет собой отдельную микросхему или даже отдельную плату, в состав которой входит собственное запоминающее устройство (видеопамять). Это запоминающее устройство не имеет никакого отношения к оперативной памяти компьютера, однако его схемы управления настроены на диапазоны адресов AOOOOh—AFFFFh и B8000h—BFFFFh, входящих в общее с памятью адресное пространство процессора. Поэтому любая программа может обратиться по этим адресам и, например, записать данные в видеобуфер, что приведет к появлению на экране некоторого изображения. Если видеосистема находится в текстовом режиме, а запись осуществляется по адресам текстового видеобуфера, на экране появятся изображения тех или иных символов (букв, цифр, различных знаков). Если же перевести видеосистему в графический режим и записывать данные в графический видеобуфер, то на экране появятся отдельные точки или линии. Можно также прочитать текущее содержимое ячеек видеобуфера.

В самом конце адресного пространства, в области адресов POOOOh—FFFFFh, располагается ПЗУ BIOS — постоянное запоминающее устройство, о котором уже говорилось выше.

Часть адресного пространства, начиная с адреса СОООО/г, отводится еще под одно ПЗУ — так называемое ПЗУ расширений BIOS для обслуживания графических адаптеров и дисков.

В состав компьютера наряду со стандартной памятью (640 Кбайт) входит еще расширенная (extended) память, максимальный объем которой может доходить до 4 Гбайт. Эта память располагается за пределами первого мегабайта адресного пространства и начинается с адреса 100000/г. Реально на машине может быть установлен не полный объем расширенной памяти, а лишь несколько десятков мегабайт или даже меньше.

Поскольку функционирование расширенной памяти подчиняется «спецификации расширенной памяти» (Extended Memory Specification, XMS), то и саму память часто называют ЛЖ^-памятью. Как уже отмечалось выше, доступ к расширенной памяти осуществляется в защищенном режиме, поэтому для MS-DOS, работающей только в реальном режиме, расширенная память недоступна. Однако в современные версии MS-DOS включается драйвер HIMEM.SYS, поддерживающий расширенную память, т.е. позволяющий ее использовать, хотя и ограниченным образом. Конкретно в расширенной памяти можно разместить электронные диски (с помощью драйвера RAMDRIVE.SYS) или дисковые кэш-буферы (с помощью драйвера SMARTDR V.SYS).

Первые 64 Кбайт расширенной памяти, точнее 64 Кбайт — с 16 адресами от 100000/г до 10FFEFh, носят специальное название область старшей памяти (High Memory Area, НМА). Эта область замечательна тем, что, хотя она находится за пределами первого мегабайта, к ней можно обратиться в реальном режиме работы микропроцессора, если определить сегмент, начинающийся в самом конце мегабайтного адресного пространства с сегментного адреса FFFFh, и разрешить использование адресной линии А20. Первые 16 байт этого сегмента заняты ПЗУ, область же со смещениями 0010/г—FFFFh можно в принципе использовать под программы и данные. MS-DOS позволяет загружать в НМА (директивой файла CONFIG.SYS DOS = = HIGH) значительную часть самой себя, в результате чего занятая системой область стандартной памяти существенно уменьшается. Старшую память обслуживает тот же драйвер HIMEM.SYS, поэтому загрузка DOS в НМА возможна, только если установлен драйвер HIMEM.SYS.

В защищенном режиме работы память не ограничивается 1 Мбайт, а может иметь максимальный размер 4 Гбайт.

Функции памяти микропроцессорной системы

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

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

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

Шина адреса Шина данных Шина управления

Рис. 5.18. Структура модуля памяти

Оперативная память общается с системной магистралью в циклах чтения и записи, постоянная память — только в циклах чтения. Обычно в составе системы имеется несколько модулей памяти, каждый из которых работает в своей области пространства памяти. Селектор адреса как раз и определяет, какая область адресов пространства памяти отведена данному модулю памяти. Схема управления вырабатывает в нужные моменты сигналы разрешения работы памяти (С5) и сигналы разрешения записи в память (И / Я). Буферы данных передают данные от памяти к магистрали или от магистрали к памяти.

Память программы начального запуска всегда выполняется на ПЗУ или флэш-памяти. Именно с этой области процессор начинает работу после включения питания и после сброса его с помощью сигнала RESET.

Память для стека или стек (Stack) — это часть оперативной памяти, предназначенная для временного хранения данных в режиме LIFO (Last In — First Out).

Особенность стека по сравнению с другой оперативной памятью — это заданный и неизменяемый способ адресации. При записи любого числа (кода) в стек число записывается по адресу, определяемому как содержимое регистра указателя стека, предварительно уменьшенное (декрементированное) на единицу (или на два, если 16-разрядные слова расположены в памяти по четным адресам). При чтении из стека число читается из адреса, определяемого содержимым указателя стека, после чего это содержимое указателя стека увеличивается (инкрементируется) на единицу (или на два). В результате получается, что число, записанное последним, будет прочитано первым, а число, записанное первым, будет прочитано последним. Такая память называется LIFO или памятью магазинного типа (например, в магазине автомата патрон, установленный последним, будет извлечен первым).

Принцип действия стека показан на рис. 5.19 (адреса ячеек памяти выбраны условно).

Пусть, например, текущее состояние указателя стека 1000008 и в него надо записать два числа (слова). Первое слово будет записано по адресу 1000006 (перед записью указатель стека уменьшится

Рис. 5.19. Принцип работы стека

на два), второе — по адресу 1000004. После записи содержимое указателя стека — 1000004. Если затем прочитать из стека два слова, то первым будет прочитано слово из адреса 1000004, а после чтения указатель стека станет равным 1000006. Вторым будет прочитано слово из адреса 1000006, а указатель стека станет равным 1000008. Все вернулось к исходному состоянию. Первое записанное слово читается вторым, а второе — первым.

Необходимость такой адресации становится очевидной в случае многократно вложенных подпрограмм. Пусть, например, выполняется основная программа и из нее вызывается подпрограмма 1. Если нам надо сохранить значения данных и внутренних регистров основной программы на время выполнения подпрограммы, мы перед вызовом подпрограммы сохраним их в стеке (запишем в стек), а после ее окончания извлечем (прочитаем) их из стека. Если же из подпрограммы 1 вызывается подпрограмма 2, то ту же самую операцию мы проделаем с данными и содержимым внутренних регистров подпрограммы 1. Понятно, что внутри подпрограммы 2 крайними в стеке (читаемыми в первую очередь) будут данные из подпрограммы 1, а данные из основной программы будут глубже. При этом в случае чтения из стека автоматически будет соблюдаться нужный порядок читаемой информации. То же самое будет и в случае, когда таких уровней вложения подпрограмм гораздо больше. То есть то, что надо хранить подольше, прячется поглубже, а то, что скоро может потребоваться, — с краю.

Следующая специальная область памяти — это таблица векторов прерываний.

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

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

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

Пусть, например, процессор (рис. 5.20) выполнял основную программу и команду, находящуюся в адресе памяти 5000 (условно). В этот момент он получил запрос прерывания с номером (адресом вектора) 4. Процессор заканчивает выполнение команды из адреса 5000. Затем он сохраняет в стеке текущее значение счетчика команд (5001) и текущее значение PSW. После этого процессор читает из адреса 4 памяти код вектора прерывания. Пусть этот код равен 6000. Процессор переходит в адрес памяти 6000 и приступает к выполнению программы обработки прерывания, начинающейся с этого адреса. Пусть эта программа заканчивается в адресе 6100. Дойдя

Прерывание с номером 4

  • 5000
  • 5001

Рис. 5.20. Упрощенный алгоритм обработки прерывания

до этого адреса, процессор возвращается к выполнению прерванной программы. Для этого он извлекает из стека значение адреса (5001), на котором его прервали, и бывшее в тот момент PSW. Затем процессор читает команду из адреса 5001 и дальше последовательно выполняет команды основной программы.

Прерывание в случае аварийной ситуации обрабатывается точно так же, только адрес вектора прерывания (номер строки в таблице векторов) жестко привязан к данному типу аварийной ситуации.

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

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

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

Отметим, что в более сложных случаях в таблице векторов прерываний могут находиться не адреса начала программ обработки прерываний, а так называемые дескрипторы (описатели) прерываний. Но конечным результатом обработки этого дескриптора все равно будет адрес начала программы обработки прерываний.

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

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

В заключение остановимся на проблеме разделения адресов памяти и адресов устройств ввода/вывода. Существует два основных подхода к решению этой проблемы:

  • • выделение в общем адресном пространстве системы специальной области адресов для устройств ввода/вывода;
  • • полное разделение адресных пространств памяти и устройств ввода/вывода.

Первый подход хорош тем, что при обращении к устройствам ввода/вывода процессор может использовать те же команды, которые служат для взаимодействия с памятью. Но адресное пространство памяти должно быть уменьшено на величину адресного пространства устройств ввода/вывода. Например, при 16-разрядной шине адреса всего может быть 64 Кбайт адресов. Из них 56 Кбайт адресов отводится под адресное пространство памяти, а 8 Кбайт адресов — под адресное пространство устройств ввода/вывода.

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

Принцип кэширования данных

Кэш-память — это способ организации совместного функционирования двух типов запоминающих устройств, отличающихся временем доступа и стоимостью хранения данных, который позволяет уменьшить среднее время доступа к данным за счет динамического копирования в «быстрое» ЗУ наиболее часто используемой информации из «медленного» ЗУ.

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

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

Различают следующие виды кэш-памяти процессора:

  • Cache L — «кэш-память первого уровня»: промежуточная сверхоперативная память, как правило находящаяся на самом кристалле процессора, в которой размещаются наиболее часто используемые данные. Работает на частоте процессора. Время доступа к этой памяти существенно меньше, чем к данным в основной оперативной памяти. Этим достигается ускорение работы процессора. Из-за ограничений в размерах кристалла процессора и высокого быстродействия этой памяти она имеет небольшую емкость — всего несколько десятков килобайт;
  • Cache L2 — «кэш-память второго уровня»: промежуточная сверхоперативная память, имеющая быстродействие ниже памяти первого уровня, но выше основной оперативной памяти. Ее размер обычно составляет от нескольких сотен килобайт до нескольких мегабайт. Она может выполняться как на том же кристалле, что и процессор, так и в виде отдельных микросхем. В RISC-процессорах зачастую используется 13-кэш и кэш более высоких порядков;
  • Cache L3 — «кэш-память третьего уровня»: промежуточная сверхоперативная память, имеющая быстродействие ниже памяти второго уровня, но выше основной оперативной памяти. Ее размер обычно составляет от одного до нескольких мегабайт. Используется главным образом в серверных процессорах, например Intel Xeon МР. Встречается кэш-память и более высоких уровней (при этом быстродействие памяти каждого последующего уровня меньше каждого предыдущего уровня);
  • D-Cache — сверхоперативная память, используемая для хранения инструкций процессора.

Большинство жестких дисков оснащены собственной кэш-памятью размером от нескольких килобайт до нескольких мегабайт (в современных жестких дисках — 2, 4, 8, 16 или 32 Мбайт). Дисковая кэш-память (disk cache), или кэш-память жестского диска, — принцип построения кэш-памяти на основе динамического ОЗУ (DRAM), хранящего наиболее часто используемые команды и данные, доступ к которым производится из внешней памяти. Принцип кэширования жесткого диска во многом похож на принцип кэширования, используемый для оперативной динамической памяти, хотя способы доступа к диску и памяти сильно различаются. Если время доступа к любой из ячеек оперативной памяти имеет примерно одинаковое для данного компьютера значение, то время доступа к различным блокам информации на винчестере в общем случае будет различным. Во-первых, нужно затратить некоторое время, чтобы магнитная головка записи-чтения подошла к искомой дорожке. Во-вторых, поскольку при движении головка вибрирует, необходимо время, чтобы она успокоилась. В-третьих, требуется время, чтобы головка нашла искомый сектор.

При обращении к оперативной памяти могут читаться или записываться только несколько отдельных байтов, в то время как доступ к диску всегда происходит секторами. Если размер сектора в случае использования любой версии DOS составляет 512 байт, то наименьший размер кэш-памяти также должен быть 512 байт. Методы кэширования, используемые для оперативной памяти, применяются и для кэширования информации, хранимой на жестких дисках. Поскольку винчестер является блочно-ориентированным устройством ввода-вывода, то данные передаются блоками определенной длины. Кэшпамять диска заполняется не только требуемым сектором, но и секторами, непосредственно следующими за ним, так как известно, что в большинстве случаев взаимосвязанные данные хранятся в соседних секторах. Этот метод известен также как метод опережающего чтения (Read Ahead). При работе с многозадачными системами выгодно иметь винчестер с мультисегментной кэш-памятью, которая для каждой из задач отводит свою часть кэша (сегмент). В адаптивной мультисегментной кэш-памяти для повышения производительности число и размеры сегментов могут изменяться.

Значительная часть устройств внешней памяти (внешние жесткие диски, приводы CD и DVD), а также периферийные устройства (принтер, сканер) обладают небольшим объемом кэш-памяти (в основном 2, 4, 8 либо 16 Мбайт), что позволяет увеличить скорость доступа к данным.

Кроме того, кэширование широко распространено и в сетевых технологиях.

Механизм сохранения информации в кэш-памяти

При включении микропроцессора в работу вся информация в его кэш-памяти недостоверна.

При обращении к памяти микропроцессор сначала проверяет, не содержится ли искомая информация в кэш-памяти. Для этого сформированный им физический адрес сравнивается с адресами ячеек памяти, которые были ранее кэшированы из ОЗУ в кэш-па-мять.

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

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *