ЦУиМП Лек2 5курс (Архив, содержащий лекции), страница 11

2018-01-12СтудИзба

Описание файла

Файл "ЦУиМП Лек2 5курс" внутри архива находится в папке "Архив, содержащий лекции". Документ из архива "Архив, содержащий лекции", который расположен в категории "". Всё это находится в предмете "цифровые устройства и микропроцессоры (цуимп)" из 8 семестр, которые можно найти в файловом архиве РТУ МИРЭА. Не смотря на прямую связь этого архива с РТУ МИРЭА, его также можно найти и в других разделах. Архив можно найти в разделе "лекции и семинары", в предмете "цифровые устройства и микропроцессоры" в общих файлах.

Онлайн просмотр документа "ЦУиМП Лек2 5курс"

Текст 11 страницы из документа "ЦУиМП Лек2 5курс"

LARP 1 ; константа 1 загружается в указатель активного индексного регистра.

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

LDP (Load Data Pointer). В этой команде разрешается прямая и косвенная адресация.

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

Пример.

LDP 100 ; младший разряд 100-й ячейки памяти записывается в DP.

Команда записи в указатель активной страницы памяти одноразрядной константы LDPK

(Load in Data Pointer К). Одноразрядная константа, находящаяся непосредственно в

команде, записывается в DP.

Пример.

LDPK 1 ; единица загружается в DP.

6.4.3. Группа команд модификации и сохранения содержимого индексного регистра

Команда модификации содержимого активного индексного регистра и указателя активного индексного регистра MAR (Modify Asterisk Register). По этой команде содержимое активного индексного регистра может быть

инкрементировано/декрементировано и одноразрядная константа записывается в указатель активного индексного регистра. Пример.

25

MAR *+,0 ; активный индексный регистр инкрементируется, а в APR записывается 0, т.е.

активным после этой операции будет нулевой индексный регистр.

Команда сохранения содержимого индексного регистра в ячейку ОЗУ данных SAR (Save

Asterisk Register). В данной команде допускается прямая и косвенная адресация.

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

Пример.

SAR 1,75; содержимое первого индексного регистра записывается в 75 ячейку ОЗУ

данных.

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

операндов.

6.4.4. Группа команд условных и безусловных переходов, вызова подпрограмм и выхода из них

Все команды данной группы за исключением команды вызова подпрограммы по

содержимому аккумулятора CALA и возврата из подпрограммы RET занимают в памяти

программ 2 16-разрядных слова.

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

2 командных цикла, т.е. 400 не. Это связано с тем, что при их выполнении происходит

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

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

команды. Т.е. этап выполнения команды требует доступа к внутренней шине команд, а

следовательно в это время не может производиться считывание и дешифрация следующей

команды.

Команда безусловного перехода В (Branch - ветвление). Независимо ни от каких условий

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

загружается в программный счетчик - осуществляется переход на выполнение команды по

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

ПЗУ программ, либо символическое имя (метка).

Пример.

В START;

В PRG 4 .

Подгруппа команд условных арифметических переходов.

При выполнении команд данной группы осуществляется переход на метку (адрес), если

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

происходит переход к следующей по адресу команде.

Команды данной подгруппы:

АСС = О BZ ; метка (Branch if accumulator is Zero)

ACC 7-00 BNZ метка (Branch if accumulator is Not Zero)

ACC > 0 BGZ метка (Branch if accumulator is Greater then Zero)

ACC 7. О О BGEZ метка (Branch if accumulator is Greater or Equal then Zero)

ACC < 0 BLZ метка (Branch if accumulator is Less then Zero)

ACC 7, 00 BLEZ метка (Branch if accumulator is Less or Equal then Zero)

При выполнении этих команд анализируется содержимое аккумулятора в данный момент

времени.

Команда ветвления по содержимому активного индексного регистра BANZ (Branch if

Asterisk Register is Not Zero). Выполнение данной команды заключается в следующем.

Если содержимое активного индексного регистра не равно нулю, то происходит

уменьшение на 1 содержимого активного индексного регистра, а адрес перехода

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

то текущее значение программного счетчика уменьшается на 1 и осуществляется переход

к следующей по адресу команде.

26

Эта команда используется при организации циклических программ, когда индексный

регистр является счетчиком циклов.

Пример.

BANZ LOOP ; Осуществляется переход на метку LOOP, если в индексном регистре

находится не нуль, после проверки на нуль содержимое индексного регистра уменьшается

на 1.

Команда условного перехода по внешнему сигналу BIOZ (Branch if ЫО is Zero). В

микропроцессоре имеется внешний входной сигнал ВЮ, через который организуется

взаимодействие с внешними устройствами. Обычно микропроцессорная система строится

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

готовности к взаимодействию с микропроцессором. Анализ этого внешнего сигнала

осуществляется программно командой BIOZ. Если на вход ВЮ подан ноль, то

осуществляется условный переход, если 1, то переход к следующей команде.

Пример.

BIOZ WAIT ; Команда условного перехода по переполнению BV (Branch if accumulator is

oVerfloueed).

В данной команде анализируется флаг переполнения OV. Если флаг установлен в 1, т.е.

ранее произошло переполнение, то происходит переход на метку, если флаг в нуле, то

переход на следующую команду.

Пример.

BV Ml

Подгруппа команд вызова подпрограмм.

Ассемблер TMS32010 позволяет разрабатывать программы по модульному принципу. При

этом часто встречающиеся одинаковые участки программ оформляются в виде

подпрограмм, к которым происходит обращение по мере необходимости. Такой принцип

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

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

адресом подпрограммы, адрес следующей после вызова подпрограммы команды (точка

возврата) загружается в стек.

Команда прямого вызова подпрограммы CALL (CALL - вызов). По команде CALL

содержимое программного счетчика увеличивается на 2 (это адрес точки возврата,

поскольку команда CALL двух******) и записывается в верхний регистр стека.

Содержимое стека при записи сдвигается. После этого начальный адрес подпрограммы из

второго слова команды CALL загружается в программный счетчик.

Пример.

CALL SUBR1

Команда вызова подпрограммы по содержимому аккумулятора CALA (CAL1 from

Accumulator). В этой команде в отличие от команды CALL, начальный адрес

подпрограммы выбирается не из второго слова команды, а берется из 12 младших

разрядов аккумулятора. Все остальные действия точно такие же, как и в команде CALL.

Адрес точки возврата записывается в верхний уровень стека, содержимое стека

сдвигается.

Команда возврата из подпрограммы RET (RETurn). После выполнения подпрограммы

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

(точка возврата) находится в верхнем уровне стека. По команде RET содержимое верхнего

уровня стека пересылается в программный счетчик, а содержимое остальных уровней

стека сдвигается на одну ячейку вверх.

6.4.5. Группа команд регистров Т, Р и умножителя

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

27

умножения двух 16 разрядных чисел, представленных в дополнительном коде за один

цикл в 200 не. Один из сомножителей берется из регистра Т (mulTiply - сомножитель),

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

помещается в 32-х разрядный регистр результата Р (Product - произведение) (результат

также представляется в дополнительном коде).

Подгруппа команд сохранения содержимого регистра Р.

Полученное в результате умножения число из регистра Р может взаимодействовать с

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

аккумулятор. Команда сложения содержимого регистра Р с содержимым аккумулятора

АРАС (Add Pwith Accumulator). Содержимое регистра Р складывается с аккумулятором,

результат записывается в аккумулятор. В мнемонике команды АРАС нет ни параметров,

ни номеров ячеек ОЗУ. Команда вычитания содержимого регистра Р из аккумулятора

SPAC (Subtract P from Accumulator). Из содержимого аккумулятора вычитается

содержимое регистра Р, результат в дополнительном коде записывается вновь в

аккумулятор. Также как и в команде АРАС в мнемонике команды SPAC нет ни

параметров ни адресов ячеек ОЗУ.

Команда загрузки аккумулятора из регистра Р РАС (load P to Accumulator). Содержимое

регистра Р загружается в аккумулятор. Предыдущее содержимое аккумулятора теряется.

Также как и в командах АРАС и SPAC в мнемонике команды РАС нет ни параметров ни

адресов ячеек ОЗУ.

Подгруппа команд загрузки регистра Т и комбинированные команды.

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

предназначенными для эффективного выполнения алгоритмов ЦОС. Наличие таких

команд является важным преимуществом СМП перед универсальным в плане

возможности реализации алгоритмов ЦОС. Команда загрузки регистра множителя Т LT

(Load Т). В команде допускается прямая и косвенная адресация. Содержимое адресуемой

ячейки памяти загружается в регистр Т.

Пример.

LT20

Команда загрузки регистра Т с накоплением предыдущего результата умножения в

аккумуляторе LTA (Load T with Adding to accumulator). В команде допускается прямая и

косвенная адресация. Сама команда заключается в одновременном выполнении команд LT

и АРАС. Содержимое адресуемой ячейки памяти загружается в регистр Т (LT),

одновременно с этим число из регистра Р складывается с содержимым аккумулятора,

результат сложения записывается в аккумулятор (АРАС).

Пример.

LTA 127

Команда сдвига содержимого ячейки ОЗУ данных DMOV (Delay MOVe). В принципе эта

команда не относится к группе команд регистра Т и умножителя, однако поскольку она

входит как составная часть в комбинированную команду LTD, то рассматривается как

команда данной группы.

Одним из недостатков системы команд TMS32010 является отсутствие команды

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

заменителя в системе команд реализована команда DMOV. Отличие этих команд в

следующем: команда MOV позволяет пересылать содержимое любых регистров общего

назначения, командой DMOV возможна только пересылка из произвольной ячейки ОЗУ

данных в ячейку с адресом на 1 больше. В команде DMOV допускается и прямая и

косвенная адресация. Содержимое адресуемой ячейки памяти перемещается в ячейку с

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

(сдвига) при продвижении отсчета сигнала в цифровом фильтре.

Пример.

DMOV 46 ; содержимое 46-й ячейки памяти записывается в 47 ячейку памяти.

28

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

умножения и сдвига содержимого ячейки ОЗУ данных LTD (Load T with adding and

Delay). Команда LTP - это наиболее интегрированная команда микропроцессора. Она

является объединением команда LT, АР AC, DMOV. В команде допускается прямая и

косвенная адресация. Содержимое адресуемой ячейки памяти загружается в регистр Т

(LT), и записывается в ячейку памяти с адресом на 1 больше (DMOV), кроме того,

содержимое регистра Р складывается с аккумулятором (АРАС). Наличие данной команды

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

алгоритма цифровой нерекурсивной фильтрации (основной алгоритм цифровой

обработки).

Пример.

LTD 70

Подгруппа команд умножения.

Команда умножения на содержимое ячейки ОЗУ данных MPY (MultiPlY). В этой команде

допускается прямая и косвенная адресация. Содержимое адресуемой ячейки ОЗУ данных

умножается на число из регистра Т, а результат в дополнительном коде записывается в

регистр Р.

Пример.

MPY 41

Команда умножения на константу MPYK (MulyiPlY to К). Константа, находящаяся

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

дополнительном коде записывается в регистр Р. Константа занимает 13 разрядов команды,

один из которых является знаковым. Диапазон представления константы от -4096 до 4095.

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5259
Авторов
на СтудИзбе
421
Средний доход
с одного платного файла
Обучение Подробнее