Сегментирование памяти в процессоре
Характеристика процессора Intel 8086. Понятие сегментации, сегментного регистра. Основные особенности формирования физического адреса памяти процессора 80386 в защищенном режиме. Основные принципы и операции обработки векторов на скалярных процессорах.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | доклад |
Язык | русский |
Дата добавления | 19.01.2012 |
Размер файла | 47,9 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Методы сегментирование памяти
Процессор Intel 8086 выполнен в виде микросхемы с 40-ка выводами, 20 из которых для передачи информации, остальные выполняют вспомогательные функции. Следовательно может быть обработано или принято 220=1мб. Процессор может обрабатывать 16-ти битные значения, а память состоит из 20-ти битных значений следовательно возникает проблема кодировки 20-ти битного значения через 16 бит. В появившемся в то же время процессоре MC68000 фирмы Motorola внутренние регистры 32-разрядные, поэтому там проблемы сегментирования памяти не возникает. Для обеспечения в Intel 8086 совместимости ввели сегментацию.
Сегментация - это разделение всей памети на куски по 64 Кбайта 216
Для хранения кодов адресов памяти используются не отдельные регистры, а пары регистров:
- сегментный регистр определяет адрес начала сегмента (то есть положение сегмента в памяти);
- регистр указателя (регистр смещения) определяет положение рабочего адреса внутри сегмента.
При этом физический 20-разрядный адрес памяти, выставляемый на внешнюю шину адреса, образуется так, как показано на рис. 1, то есть путем сложения смещения и адреса сегмента со сдвигом на 4 бита. Положение этого адреса в памяти показано на рисунке.
Рисунок 1 Формирование физического адреса памяти из адреса сегмента и смещения
Таблица. Например, сегмент в шестнадцатеричном виде равен 1200, а смещение -- 3АВЕ.
Сегмент (1200) |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
|||||
Смещение (3АВЕ) |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
|||||
Адрес (15АВЕ) |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
Рисунок 2 Физический адрес в сегменте (все коды - шестнадцатеричные)
Физический адрес в сегменте (все коды - шестнадцатеричные)
Применяются и более сложные методы сегментирования памяти. Например, в процессоре Intel 80286 в так называемом защищенном режиме адрес памяти вычисляется в соответствии с рис. 3
В сегментном регистре в данном случае хранится не базовый (начальный) адрес сегментов, а коды селекторов, определяющие адреса в памяти, по которым хранятся дескрипторы (то есть описатели) сегментов. Область памяти с дескрипторами называется таблицей дескрипторов. Каждый дескриптор сегмента содержит базовый адрес сегмента, размер сегмента (от 1 до 64 Кбайт) и его атрибуты. Базовый адрес сегмента имеет разрядность 24 бит, что обеспечивает адресацию 16 Мбайт физической памяти.
Рисунок 3 Адресация памяти в защищенном режиме процессора Intel 80286.
Таким образом, на сумматор, вычисляющий физический адрес памяти, подается не содержимое сегментного регистра, как в предыдущем случае, а базовый адрес сегмента из таблицы дескрипторов. Еще более сложный метод адресации памяти с сегментированием использован в процессоре Intel 80386 и в более поздних моделях процессоров фирмы Intel.
процессор intel память векторный
Формирование физического адреса памяти процессора 80386 в защищенном режиме
Рисунок 4 Формирование физического адреса памяти процессора 80386 в защищенном режиме
- смещение - это 8-, 16- или 32-разрядное число, включенное в команду.
- база - это содержимое базового регистра процессора. Обычно оно используется для указания на начало некоторого массива.
- индекс - это содержимое индексного регистра процессора. Обычно оно используется для выбора одного из элементов массива.
- масштаб - это множитель (он может быть равен 1, 2, 4 или 8), указанный в коде команды, на который перед суммированием с другими компонентами умножается индекс. Он используется для указания размера элемента массива.
Затем специальный блок сегментации вычисляет 32-разрядный линейный адрес, который представляет собой сумму базового адреса сегмента из сегментного регистра с эффективным адресом. Наконец, физический 32-битный адрес памяти образуется путем преобразования линейного адреса блоком страничной переадресации, который осуществляет перевод линейного адреса в физический страницами по 4 Кбайта.
В любом случае сегментирование позволяет выделить в памяти один или несколько сегментов для данных и один или несколько сегментов для программ. Переход от одного сегмента к другому сводится всего лишь к изменению содержимого сегментного регистра. Иногда это бывает очень удобно. Но для программиста работать с сегментированной памятью обычно сложнее, чем с непрерывной, несегментированной памятью, так как приходится следить за границами сегментов, за их описанием, переключением и т.д.
Векторная обработка данных
Принцип векторной обработки основан на существовании значительного класса задач использующих операции над векторами. Алгоритмы этих задач в соответствии с терминологией Флинна относятся к классу ОКМД (одиночный поток команд, множественный поток данных). Реализация операций обработки векторов на скалярных процессорах с помощью обычных циклов ограничивает скорость вычислений по следующими причинам.
· Перед каждой скалярной операцией необходимо вызывать и декодировать скалярную команду.
· Для каждой команды необходимо вычислять адреса элементов данных
· Данные должны вызываться из памяти, а результаты запоминаться в памяти. В больших ЭВМ память выполняется, как правило, в виде набора модулей, доступ к которым может осуществляться одновременно. В условиях когда каждая команда вырабатывает свой собственный запрос к памяти, такой раздробленный доступ может стать причиной возникновения конфликтов обращения к памяти, препятствующих эффективному использованию ее потенциальной пропускной способности.
· Необходимо осуществлять упорядочение выполнения операций в функциональных устройствах. В целях увеличения производительности эти устройства строятся по конвейерному принципу. Эффективному использованию конвейерных устройств препятствует последовательная «природа» оператора цикла.
· Реализация команд построения циклов (счетчик и переход) сопровождается накладными расходами. Кроме того, наличие в цикле команды перехода препятствует эффективному использованию принципа опережающего просмотра.
Влияние перечисленных отрицательных факторов уменьшается при введении векторных команд, с помощью которых задается одна и та же операция над элементами одного или нескольких векторов, и организации, системы, которая обеспечивает эффективное исполнение таких команд. Этот подход реализуется в системах двух типов: матричных и векторно-конвейерных.
· Матричная система состоит из множества процессорных элементов (ПЭ), организованных таким образом, что они исполняют векторные, команды, задаваемые общим для всех устройством управления, причем каждый ПЭ работает с отдельным элементом вектора. ПЭ соединены через коммутационное устройство с многомодульной памятью. Исполнение векторной команды включает чтение из памяти элементов векторов, распределение их по процессорам, выполнение заданной операции и засылку результатов обратно в память.
· В векторно-конвейерной системе, напротив, имеется один (или небольшое число) конвейерный процессор, выполняющий векторные команды путем засылки элементов векторов в конвейер с интервалом, равным длительности прохождения одной, стадии обработки. При этом скорость вычислений зависит только от длительности стадии и не зависит от задержек в процессоре в целом.
Оба подхода в принципе позволяют достичь значительного ускорения по сравнению со скалярными машинами. Более того, ускорение в системах матричного типа может быть больше, чем в конвейерных, поскольку увеличить число процессорных элементов проще, чем число ступеней в конвейерном устройстве. В настоящее время созданы и успешно применяются системы обоих типов. К наиболее значительным представителям семейства матричных систем относятся одна из первых крупных разработок - ILLIAC IV - системы DAP фирмы ICL, BSP фирмы Burrougs и МРР фирмы Goodyear. Класс конвейерных систем включает такие системы, как STAR100 и Суbег 205 фирмы СDС, Сгау-1 фирмы Сгау >Research, S-810 фирмы НIТАСНI, SХ NЕС и FАСОМ, VР-200 фирмы Fujitsu. Тот факт, что большинство суперЭВМ относится к классу конвейерных систем, свидетельствует, похоже, о том, что для современного уровня технологии такие системы являются более гибкими и эффективными с точки зрения стоимости.
Размещено на Allbest.ru
Подобные документы
Функциональная схема микропроцессора Intel 8086 (i8086). Формирование физического адреса памяти, выборка команд из памяти и запись их в очередь команд. Система команд процессора. Суть защищенного режима, переход из защищенного режима в реальный режим.
практическая работа [93,3 K], добавлен 24.03.2013Элементы процессора, аппаратный уровень. Устройство управления, микропрограммный автомат. Процессор Intel 8086, сегментная организация памяти. Команды, главные особенности их кодирования. Результат дизассемблирования программы отладчиком TurboDebugger.
лекция [1,1 M], добавлен 14.12.2013Рассмотрение принципа работы процессора и его практической реализации с использованием языка описания аппаратуры Verilog. Проектирование системы команд процессора. Выбор размера массива постоянной памяти. Подключение счетчика инструкций и файла регистра.
курсовая работа [1,2 M], добавлен 26.05.2022Принцип работы процессора (одномагистральная структура). Временные диаграммы, описывающие выполнение микроопераций для каждой команды. Структурная схема управляющего автомата на основе памяти с одним полем адреса. Описание процессора на языке Active VHDL.
курсовая работа [621,0 K], добавлен 24.09.2010Анализ материнской платы Intel D815EEA, установка процессора. Хаб Графики и Памяти 82815E – GMCH, Южный мост. Описание программного Хаба 82802AB, слотов PCI и CNR, слотов памяти. Опциональные звуковые чипы. Цифровой видеовыход Digital Video Out.
лабораторная работа [571,2 K], добавлен 11.05.2010Анализ и диагностика для нахождения оптимальных настроек процессора серии Intel Pentium 4 517, материнской платы ASUS P5GD2-X и оперативной памяти KETECH DDR2. Установка дополнительного охлаждения на оборудование. Модернизация вентиляции корпуса.
отчет по практике [897,1 K], добавлен 28.04.2015Описание конфигурации компьютера, предназначенного для игр. Ознакомление с характеристиками процессора Intel core 2 Quad. Тестирование уменьшения объема кэш-памяти второго уровня. Анализ видеокарты ASUS Radeon HD 7850 DirectCU II, материнской платы.
курсовая работа [3,6 M], добавлен 04.01.2016Память персонального компьютера, основные понятия. Характеристика внутренней и внешней памяти компьютера. Логическое отображение и размещение. Классификация компьютерной памяти по назначению, по удаленности и доступности для центрального процессора.
контрольная работа [1,8 M], добавлен 27.11.2010Ознакомление с языком ассемблера процессора Neuro Matrix NM 6403, его возможности, особенности работы, содержание операций в регистрах, архитектура. Разработка программы для заполнения блока памяти, компилирование и отладка файла, фиксирование его адреса.
лабораторная работа [48,2 K], добавлен 18.10.2012Последовательность загрузки значений регистров базовых адресов и регистров прав доступа для системного режима. Методы и средства защиты памяти, преобразования логического адреса в физический, реализованных в УУП процессора. Режим работы процессора.
лабораторная работа [1,5 M], добавлен 23.07.2012