русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

G.2 Модуль предварительной выборки


Дата добавления: 2015-06-12; просмотров: 661; Нарушение авторских прав


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

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

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

+--------------------------------------------------------------+| Команда | Длина |+---------------------------------+----------------------------|| mov память, 1234567h | 10 байт || mov память, 1234567h | 10 байт || mov память, 1234567h | 10 байт || mov память, 1234567h | 10 байт || add регистр, регистр | 2 байта |+--------------------------------------------------------------+

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



Ни одна из подобных реорганизаций команд не будет оказывать влияния на скорость выполнения программы на процессоре 386 DX.



<== предыдущая лекция | следующая лекция ==>
G.1 Режимы адресации | G.3 Выравнивание кэша и кода.


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

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