Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ответы на экзамен МПС.docx
Скачиваний:
9
Добавлен:
01.04.2025
Размер:
11 Мб
Скачать
☆

13 Архитектура мп, ориентированная на память

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

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

Таким образом, сохраняется высокая скорость реакции на внешние события и более рационально используются ресурсы МП (памяти). При этом у МП реализуется двухадресная система команд. Т.е., в коде команды указывается 2 адреса (адрес первого и второго операнда), а результат всегда записывается по адресу второго операнда.

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

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

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

Кроме того, в архитектуре, ориентированной на память применяется арифметика с насыщением и двухадресная система команд, поэтому отсутствуют пересылки, программа в 2 раза короче. Регистровый файл реализован как двухпортовое ЗУ.

14 Язык ассемблера для программирования мпс

Ассемблер – машинно-ориентированный язык, позволяющий использовать все ресурсы МП и существенно упрощающий написание и отладку программы для МП. Знание ассемблера позволяет не только разрабатывать собственные программы, но и разбираться в чужих программах, т.к. имеются специальные утилиты, которые называются Disassemble. Простота языка ассемблера обеспечивается строгостью написания строк программы ассемблера. Структура строки ассемблера. Имеет 4 поля.

Имя

Команда

Операнды

Комментарий

Метка:

MOV

AL, BH

; комментарий

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

Для дизассемблирования имеющейся программы необходимо соблюсти ряд условий:

1. Разделить виды информации, которые находятся в памяти МП: a. Данные, b. Код программы, c. Текстовая информация.

Действуют в 3 этапа:

- весь имеющийся код просматривают редактором в символьном виде,

- выделить адреса памяти с разумными текстовыми сообщениями,

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

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

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

Обычно по типу команд условных переходов определяют тип данных, с которым работает программа, или по называнию арифметических команд, или по названию регистров, с которыми работает программа. Выделив текст основной программы, изображают ГСА (графическая схема алгоритма) и по нему разбираются с назначением всех рабочих ячеек и регистров. В микропроцессорах имеется следующие способы адресации:

- регистровый способ адресации. MOV A, Rn. MOV Rn, A

- неявный (без адресной команды) – самые простые и быстродействующие команды:

MOV A, R0; В первом операнде использована неявная адресация, а во втором - регистровая

- непосредственный. При этом второй операнд является источником данных, т е константой. Константы хранятся в ППЗУ(программируемое постоянное запоминающее устройство)

MOV A, #D8 – 8 бит. MOV A, #D16 – 16 бит

- прямой – вторым операндом указывается адрес ячейки памяти внутреннего ОЗУ, содержимое которой записывается в регистр, указанный в первом операнде.

- косвенный. При этом в качестве операндов используется адрес регистра, в котором находится адрес операнда:

MOV R1, #25h

MOV R7, (R1)

MOV A, @R0 – можно использовать R0, R1, DPTR

MOVX @DPTR,A – косвенная адресация к внешней памяти ОЗУ.

- страничный, @A – страница в 256 байт, DPTR – начало страницы. MOVC A,@A+DPTR

- относительный. MOVC A, @A+PC

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