Студопедия

КАТЕГОРИИ:


Архитектура-(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)

Структура микропроцессора

ПЕРЕМЕЩАЕМЫЕ ПРОГРАММЫ

 

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

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

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

 

Операционное устройство (ОУ) Шинный интерфейс (ШИ)

 

┌─────┬─────┐ ┌───────┼─────────────┐

AX │ AH │ AL │ │ V

├─────┼─────┤ │ │ ┌─────┴────┐

BX │ BH │ BL │ │ │ CS │

├─────┼─────┤ │ │ ├──────────┤

CX │ CH │ CL │ │ │ DS │

├─────┼─────┤ │ │ ├──────────┤

DX │ DH │ DL │ │ │ SS │

├─────┴─────┤ │ │ ├──────────┤

│ BP │ │ │ ES │

├───────────┤ │ │ ├──────────┤

│ SP │ │ │ IP │

├───────────┤ │ │ ├──────────┤

│ SI │ │ │ РЕГИСТРЫ │

├───────────┤ │ │ │ СВЯЗИ │

│ DI │ │ └─┬──────┬─┘

└─────┬─────┘ │ │ V V

^ │ ┌───┴──┐ ┌─┴────┐

V V │ └┐ └─┘ ┌┘

═╤╤══════╤╧════════╤═════╧═╗ └┐СУМ.АДРЕСОВ┌┘

^^ ^ ^ ║ │ └─────┬─────┘

││ V V ║ │

││ ┌────┴───┐ ┌───┴────┐ ║ │ V

││ │БУФ.РЕГ.│ │БУФ.РЕГ.│ ║ ┌────┴────┐

││ └────┬───┘ └───┬────┘ ║ │ │ БЛОК │

││ V V ╟<────────────>┤УПРАВЛЕН.├ <────>

││ ┌───┴───┐ ┌───┴───┐ ║ │ │ ШИНАМИ │

││ └┐ └─┘ ┌┘ ║ └────┬────┘

││ └┐ АЛУ ┌┘ ║ │ └────────────┐

││ └──────┬──────┘ ║ │

│└──────────>V ║ │ ┌───────────────────┐ │

│ ┌──────┴──────┐ ╟<─┬──┼──┤ ОЧЕРЕДЬ КОМАНД ├<──┘

│ │ РЕГ.ФЛАГОВ │ │ └───────────────────┘

│ └──────┬──────┘ ┌───┐ │ │

│ V │БУ ├<┘

└────────────┘ └─┬─┘ │

V Yi

 

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

 

Пример:

ADD AX,B При выполнении этой команды необходим

{AX:=AX+B} цикл обращения к памяти для выборки переменной В.

 

При запуске программы регистр CS содержит адрес сегмента кода а IP = 0. ШИ складывает CS и IP формируя адрес первой команды программы и обращается к памяти для выборки этой команды.

Команды процессора имеют длину 1-6 байт, поэтому регистр команд имеет длину 6 байт и работает по принципу очереди FIFO – First in, First out.

Одновременно в регистре команд может находиться одна или несколько команд.

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

В процессоре организована параллельная работа ОУ и ШИ. Как только БУ выбирает из регистра команд команду, он начинает её выполнение. Если команда не требует обращения к памяти (IDIV BX {AX:=(DX:AX)/BX}), то при ее выполнении к памяти обращаться не требуется. Команда выполняется несколько тактов и в это время ШИ свободен. Для повышения производительности в этом случае организуется параллельная работа ШИ и ОУ.

ОУ выполняет команду.

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

 

 

<== предыдущая лекция | следующая лекция ==>
Адресация сегмента стека | Регистр флагов
Поделиться с друзьями:


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


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



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




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