Учебник - Процессоры цифровой обработки сигналов (Круг П.Г.) (1086865), страница 18
Текст из файла (страница 18)
Система команд ПЦОС TMS320C26123LSTЗагрузить в статусный регистр n#n,dma; dma; #n,{ind}[, nextARP]LST1Загрузить в ST1dma; {ind}[,next ARP]LTЗагрузить в T-регистрdma; {ind}[,next ARP]LTAЗагрузить в T-регистр и поместить в аккумулятор продуктпредыдущей операцииdma; {ind}[,next ARP]LTDЗагрузить в T-регистр, поместить в аккумулятор продуктпредыдущей операции и переместить данныеdma; {ind}[,next ARP]LTPЗагрузить в T-регистр и сохранить содержимое P-регистрав аккумулятореdma; {ind}[ next ARP]LTSЗагрузить в T-регистр и вычесть продукт предыдущейоперацииdma; {ind}[,next ARP]MACВыполнить умножение и сохранить результат операциив аккумулятореpma,dma; pma, {ind}[,nextARP]MACDВыполнить умножение и сохранить результат операциив аккумуляторе с перемещением данныхdma,pma; pma, {ind}[,nextARP]MARИзменить содержимое вспомогательного регистраdma; {ind}[,next ARP]MPYВыполнить умножениеdma; {ind}[,next ARP]; #k; #lkMPYAВыполнить умножение и сохранить результат предыдущейоперации в аккумулятореdma; {ind}[,next ARP]108PDF created with pdfFactory trial version www.pdffactory.comMPYKВыполнить умножение с константой13-bit constantMPYSВыполнить умножение и вычесть продукт предыдущейоперацииdma; {ind}[,next ARP]MPYUВыполнить умножение без знакаdma; {ind}[,next ARP]NEGИнвертировать аккумуляторNoneNMIНемаскируемое прерываниеNoneNOPПустая операцияNoneNORMНормализовать содержимое аккумулятораNone, {nd}ORЛогическое «ИЛИ» с содержимым аккумулятораDma, {ind}[,next ARP];#lk[,shift]ORKЛогическое «ИЛИ» константы с содержимым аккумулятора#k[,shift]OUTВывести данные в портdma,PA; {ind},PA[,next ARP]PACЗагрузить в аккумулятор содержимое Р-регистраNonePOPЗагрузить в нижнее слово аккумулятора значениеиз вершины стекаNonePOPDЗагрузить в память данных значение из вершины стекаdma; {ind}[,next ARP]PSHDПоместить содержимое памяти данных в стекdma; {ind}[,next ARP]PUSHПоместить содержимое нижнего слова аккумулятора в стекNoneRCСбросить бит переносаNoneRETБезусловное возвращение из подпрограммы с задержкой(выборочно)[D]RETCУсловное возвращение из подпрограммыcond1[,cnod2][,…]Продолжение таблицы П.3.
Система команд ПЦОС TMS320C26123ROLЦиклический сдвиг содержимого аккумулятора влевоNoneRORЦиклический сдвиг содержимого аккумулятора вправоNoneROVMСбросить режим переполненияNoneRPTПовторить следующую командуdma; {ind}[,next ARP]; #k; #lkRPTKПовторить команду количество раз, указанное константой#kRSXMСбросить режим знакового расширенияNoneRTCСбросить тестовый флаг / флаг управленияNoneRXFСбросить внешний флагNoneSACHСохранить старшее слово аккумулятора со сдвигомdma[,shift]; {idn}[,shift[,nextARP]]SACLСохранить младшее слово аккумулятора со сдвигомdma[,shift]; {idn}[,shift[,nextARP]]SARСохранить содержимое вспомогательного регистраAR,dma; AR,{ind}[,next ARP]SBLKВычесть из содержимого аккумулятора длинное целоесо сдвигом#lk[,shift]SBRKВычесть из содержимого вспомогательного регистраконстанту#kSCУстановить бит переносаNoneSETCУстановить бит управленияcontrol bit109PDF created with pdfFactory trial version www.pdffactory.comSFLСдвинуть содержимое аккумулятора влевоNoneSFRСдвинуть содержимое аккумулятора вправоNoneSOVMУстановить режим переполненияNoneSPACВычесть содержимое Р-регистра из аккумулятораNoneSPHСохранить верхнее слово Р-регистраdma; {ind}[,next ARP]SPLСохранить нижнее слово Р-регистраdma; {ind}[,next ARP]SPLKПараллельное сохранение константы#lk,dmaSPMУстановить режим сдвига на выходе Р-регистра2-bit constantSQRAВычислить квадрат и сохранить результат предыдущейоперации в аккумулятореdma; {ind}[,next ARP]SQRSВычислить квадрат и вычесть результат предыдущейоперации из содержимого аккумулятораdma; {ind}[,next ARP]SSTСохранить статусный регистрdma; {ind}[,next ARP]SSTСохранить статусный регистр n#n,dma; #n,{ind}[,next ARP]SST1Сохранить статусный регистр ST1dma; {ind}[,next ARP]SSXMУстановить режим знакового расширенияNoneSTCУстановить тестовый флаг / флаг контроляNoneSUBВычесть из содержимого аккумулятора со сдвигомdma[,shift]; {ind}[,shift[,nextARP]]; #k; #lk[,shift]SUBBВычесть из содержимого аккумулятора с заемомdma; {ind}[,next ARP]SUBCУсловное вычитаниеdma; {ind}[,next ARP]SUBHВычитание из содержимого верхнего слова аккумулятораdma; {ind}[,next ARP]Окончание таблицы П.3.
Система команд ПЦОС TMS320C26123SUBKВычесть константу из содержимого аккумулятора#kSUBSВычитание из содержимого верхнего слова аккумуляторав режиме знакового расширенияdma; {ind}[,next ARP]SUBTВычитание из содержимого аккумулятора со сдвигом,определенным в Т-регистреdma; {ind}[,next ARP]SXFУстановить внешний флагNoneTBLRЧтение таблицыdma; {ind}[,next ARP]TBLWЗапись таблицыdma; {ind}[,next ARP]TRAPПрограммное прерываниеNoneXORВыполнить исключительное «ИЛИ» с содержимымаккумулятораdma; {ind}[,next ARP];#lk[,shift]XORKВыполнить исключительное «ИЛИ» константыс содержимым аккумулятора со сдвигом#lk[,shift]ZACОбнулить аккумуляторNoneZALHОбнулить нижнее слово аккумулятора и загрузить старшееслово аккумулятораdma; {ind}[,next ARP]ZALRОбнулить нижнее слово аккумулятора и загрузить старшееслово аккумулятора с округлениемdma; {ind}[,next ARP]ZALSОбнулить нижнее слово аккумулятора и загрузить старшееслово аккумулятора в режиме знакового расширения110PDF created with pdfFactory trial version www.pdffactory.comdma; {ind}[,next ARP]слово аккумулятора в режиме знакового расширенияП.3.
Расположение выводов ПЦОС TMS320C26111PDF created with pdfFactory trial version www.pdffactory.comРис. П.1. Вид сверху ПЦОС TMS320C26 в керамическом исполненииРис. П.2. Вид сверху ПЦОС TMS320C26 в пластиковом исполненииП.4. Структура памяти ПЦОС TMS320F206Таблица П.4. Карта программной памяти ПЦОС TMS320F206Область1НачальныйадресКонечныйадрес0000h003FhХарактеристика областиСодержит векторы прерываний, 64 ´ 16 словБлок №1 внутрипроцессорной Flash памяти, 16К´ 16 слов,MP20040h3FFFhMS=0Внешняя память, MPMS=1Блок №2 внутрипроцессорной Flash памяти, 16К´ 16 слов,MP34000h7FFFhMS=0Внешняя память, MP48000h8FFFhMS=1Блок внутренней SARAM памяти, 4К ´ 16 слов, PON = 1112PDF created with pdfFactory trial version www.pdffactory.comВнешняя память, PON = 0569000hFE00hFDFFhВнешняя памятьFEFFhБлок В0 внутрипроцессорной DARAM, 256 ´ 16 слов,CNF = 1, отображается на область 0FF00h ¸ 0FFFFhВнешняя память, CNF = 07FF00hFFFFhБлок В0 внутрипроцессорной DARAM, 256 ´ 16 слов,CNF = 1, отображается на область 0FЕ00h ¸ 0FЕFFhВнешняя память, CNF = 0Таблица П.5.
Карта памяти данных ПЦОС TMS320F206ОбластьНачальныйадресКонечныйадрес10000h005FhСодержит расположенные отображаемые в память регистрыи зарезервированную память, 96 ´ 16 слов20060h007FhБлок B2 внутрипроцессорной DARAM, 32 ´ 16 слов30080h00FFhЗарезервирована40100h01FFhБлок В0 внутрипроцессорной DARAM, 256 ´ 16 слов,CNF = 0, отображается на область 0200h ¸ 02FFhХарактеристика областиЗарезервирована, CNF = 150200h02FFhБлок В0 внутрипроцессорной DARAM, 256 ´ 16 слов,CNF = 0, отображается на область 0100h ¸ 01FFhЗарезервирована, CNF = 160300h03FFh70400h04FFhБлок В1 внутрипроцессорной DARAM, 256 ´ 16 слов,отображается на область 0400h ¸ 04FFhБлок В1 внутрипроцессорной DARAM, 256 ´ 16 слов,113PDF created with pdfFactory trial version www.pdffactory.comотображается на область 0300h ¸ 03FFh80500h07FFh90800h17FFh101800hFFFFhЗарезервирована, 768 ´ 16 словВнутрипроцессорная SARAM, 4K ´ 16 слов, DON = 1Внешняя память, 4K ´ 16 слов, DON = 0Внешняя память, 14K´ 16 словТаблица П.6.
Карта памяти пространства ввода/вывода ПЦОС TMS320F206ОбластьНачальныйадресКонечныйадрес10000hFEFFhВнешнее пространство ввода/вывода, 63,7 ´ 16 слов2FF00hFF0FhЗарезервировано для тестовых целей, 15 ´ 16 слов3FF10hFFFFhВнутренние периферийные регистры процессора, 240 ´ 16словХарактеристика областиП.5. Команды (инструкции) ассемблера ПЦОС TMS320F206Таблица П.7. Система команд ПЦОС TMS320F206КомандаОписаниеОперанды123ABSАбсолютное значение аккумулятораNoneADDПрибавить к аккумулятору со сдвигомdma[,shift]; {ind}[,shift[,nextARP]]; #k; #lk[,shift]ADDCПрибавить к аккумулятору с переносомdma;{ind}[,next ARP]ADDHПрибавить к верхнему слову аккумулятораdma;{ind}[,next ARP]ADDKПрибавить к аккумулятору восьмибитную константу#kADDSПрибавить к аккумулятору без знакового расширенияdma;{ind}[,next ARP]ADDTПрибавить к аккумулятору со сдвигом, определеннымв T-регистреdma;{ind}[,next ARP]114PDF created with pdfFactory trial version www.pdffactory.comADLKПрибавить к аккумулятору шестнадцатибитную константусо сдвигом#lk[,shift]ADRKПрибавить к содержимому временного регистра восьмибитнуюконстанту#kANDЛогическое “И” с содержимым аккумуляторомdma;{ind}[,next ARP] ;#lk[,shift]ANDKЛогическое “И” содержимого аккумулятора и восьмибитнойконстантой со сдвигом#lk[,shift]APACПрибавить содержимое регистра P к аккумуляторуNoneBБезусловный переходpma[,{ind}[,next ARP]]BACCПереход по адресу, содержащемуся в аккумулятореNoneBANZПереход при ненулевом содержимом временного регистраpma[,{ind}[,next ARP]]BBNZПереход при ненулевом тестовом битеpma[,{ind}[,next ARP]]BBZПереход при нулевом тестовом битеpma[,{ind}[,next ARP]]BCПереход при наличии переносаpmaBCNDУсловный переходpma,cond1[,cond2[,…]]BGEZПереход при аккумуляторе ³ 0pmaBGZПереход при аккумуляторе > 0pmaBIOZПереход при нулевом статусе ввода/выводаpmaBITКопировать определенный бит памяти содержимого ячейкипамяти данных в тестовый бит статусного регистра ST1dma, bit code; {ind},bitcode[,next ARP]BITTКопирование определенного бита ячейки памяти данныхв тестовый бит статусного регистра ST1.
4 младших битарегистра Т определяют какой бит ячейки памяти данных долженбыть скопированdma; {ind}[,next ARP]BLDDПеремещение блока из памяти данных в память данных#lk, dma; #lk, {ind}[, nextARP]; dma, #lk; {ind}, #lk, [,next ARP]Продолжение таблицы П.7. Система команд ПЦОС TMS320F206123BLEZПереход при аккумуляторе £ 0pma, pma[,{ind}[,next ARP]]BLKDКопирование блока из памяти данных в память данныхdma1,dma2; dma1,{ind}[,nextARP]BLKPКопирование блока из программной памяти в память данныхpma,dma; pma,{ind}[,nextARP]BLKPПеремещение блока из программной памяти в память данных#pma, dma; #pma, {ind}[, nextARP]BLZПереход при аккумуляторе < 0pma; pma,{ind}[,next ARPBNCПереход при отсутствии переносаpma[,{ind}[,next ARP]]BNVПереход при отсутствии переполненияpma[,{ind}[,next ARP]]BNZПереход при аккумуляторе ¹ 0pma[,{ind}[,next ARP]]BVПереход при переполненииpma[,{ind}[,next ARP]]BZПереход при аккумуляторе = 0pmaCALAКосвенный вызов подпрограммы, адрес которой определенв аккумулятореNone115PDF created with pdfFactory trial version www.pdffactory.comCALLБезусловный вызов подпрограммыpma[,{ind}[,next ARP]]CCУсловный вызов подпрограммыpma,cond1[,cond2][,…]CLRCСбросить управляющий битcontrol bitCMPLВычисление дополнения аккумулятораNoneCMPRСравнение вспомогательного регистра с AR0.