Учебник - Процессоры цифровой обработки сигналов (Круг П.Г.) (1086865), страница 13
Текст из файла (страница 13)
Имеет развитый оконныйинтерфейс,встроенныесредстваредактирования,возможностьдизассемблирования и вызова внешнего компилятора, имеет расширенныесредства визуализации данных.По оценкам изготовителей, среда Code Composer Studio станетстандартом и останется, чуть ли не единственным продуктом дляпрограммирования ПЦОС компании Texas Instruments Inc.
по крайнеймере, до 2020 года.6.4. ПЦОС подсерии TMS320C62xСамым первым изделием серии TMS320C6000 был выпущен ПЦОСTMS320C6201, который оперирует с данными в формате с фиксированной74PDF created with pdfFactory trial version www.pdffactory.comточкой со скоростью 1600 MIPS на тактовой частоте 200 МГц. Как идругие устройства серии, ПЦОС TMS320C6201 может интегрироваться сиспользованием широкого набора инструментальных средств, иприменяться для экономичного решения многих задач, требующихвысокопроизводительной обработки сигналов. В числе типовых областейприменения ПЦОС подсерии TMS320C62x компании Texas Instruments Inc.можно упомянуть:· сети TCP/IP с неограниченной полосой пропускания;· универсальная беспроводная связь;· удаленная медицинская диагностика;· радикально новые возможности телефонии;· персональные средства информационного обеспечения и защиты.В то же время для увеличения производительности возможноиспользование ПЦОС подсерии TMS320C62x и в уже существующихприкладных системах.
Таких как:базовые станции мобильной связи;модемные пулы и серверы удаленного доступа;xDSL модемы следующего поколения и кабельные модемы;многоканальные телефонные платформы, включая центральные офисные коммутаторы, РВХ и системы речевой передачи сообщений;мультимедийные системы.ПЦОС TMS320C6201 — помимо ядра (ЦП) содержит:1 Мбит внутрикристалльной памяти (512 Кбит для программы, 512Кбит для данных);32-битовый интерфейс внешней памяти, поддерживающий стандартыпамяти SDRAM (статическая память с динамическим рандомизированным доступом), SBSRAM (синхронная пакетная статическая память),SRAM (статическая память);два последовательных расширенных буферизированных порта (ЕВSР);16-битовый порт host-ПЦОС;два канала доступа к памяти данных с возможностью начальной загрузки;генератор интервалов времени.ПЦОС подсерии TMS320C62x построены в соответствииархитектурой VelociTI и технологии VLIW, которые позволяют обеспечитьлучшую эффективность функционирования за счет ослабленияограничений на порядок и способ выполнения инструкций.ПЦОС TMS320C6201 состоит из трех основных частей:центрального процессора (или «ядра»), периферийных устройства ипамяти [2].Ядром TMS320C6201 является VelociTI-процессор с восемьюфункциональными модулями, включая 2 умножителя и 6 АЛУ.
Модуливзаимодействуют через два регистровых файла, содержащих по 16 3275PDF created with pdfFactory trial version www.pdffactory.comразрядных регистров. Таким образом, ЦП может выполнять до 8 команд заодин такт.Программный параллелизм выявляется на этапе компиляции, анализзависимости по данным аппаратными средствами на стадии выполнения непроизводится.Кодпрограммывыполняетсянанезависимыхфункциональных устройствах в той же последовательности, в которойпрограммируется.В ПЦОС используется упаковка инструкций, сокращающая размерыкода и время выборки команд. 256-разрядная шина памяти программпозволяет выбирать за один такт восемь 32-разрядных команд.
Всеинструкции содержат условия их выполнения, что позволяет сократитьрасходы производительности ПЦОС на выполнение переходов и увеличитьстепень параллелизма обработки.Рис. 6.4. Структура ПЦОС TMS320C6201ПЦОС может оперировать с 8/16/32-разрядными данными. Дляприложений, требующих высокой точности вычислений, предусмотренавозможность вычислений с 40-разрядными операндами.
Для результатоввсех основных арифметических операций выполняется округление и76PDF created with pdfFactory trial version www.pdffactory.comнормализация. В ПЦОС реализованы операции над битовыми полями,такие как «выделить» (extract), «установить» (set), «очистить» (clear),«подсчет битов» (bit counting).ЦП имеет два тракта обработки данных, каждый из которыхсодержит функциональные модули (.L, .S, .M, .D) и регистровый файл (1632-разрядных регистров). Функциональные модули выполняют сдвиг, умножение, логические и адресные операции. Все операции выполняются надрегистрами. Два набора устройств адресации данных (.D1 и .D2) отвечаютисключительно за все пересылки данных между регистровым файлом ипамятью.
Управляющий регистровый файл определяет различные аспектыфункционирования ПЦОС.Процесс обработки VLIW начинается с выборки из памяти команд256-битового пакета. Команды связываются для совместного выполнения впакет (до 8 команд) по значению младшего бита команды (LSB).Устройство выборки-декодирования-диспетчеризации команд можетнаправлять к функциональным модулям до восьми 32-разрядных команд заодин такт по каждому из путей обработки (А и В).В ПЦОС подсерии TMS320С62х реализованы прямой и циклический(для регистров А4-А7 и В4-В7) способы адресации, которые определяютсярегистром режима адресации (AMR).ПЦОС TMS320С6201 имеет 14 прерываний, соответствующихсигналу Reset, немаскируемому прерыванию (NMT) и прерываний сномерами4-15.ПЦОС подсерии TMS320С62х содержат внутрикристальную память,которая может использоваться как память программ или программныйкэш.
Интерфейс внешней памяти ПЦОС (EMIF) объединяет в единоеадресное пространство внутреннюю и внешнюю памяти.Внутрикристальная память разделена на память данных и программ.ПЦОС TMS320С6201 имеет два 32-разрядных порта к памятиданных и один 256-разрядный порт к памяти программ для выборкиинструкций. TMS320C6201 имеет по 64 Кбайт памяти данных и программна кристалле. В ПЦОС используется расслоение памяти данных (четыре16-разрядных банка) для повышения скорости выборки за счетодновременного обращения к различным банкам памяти.Дополнительно ПЦОС подсерии TMS320С62х могут содержать накристалле интерфейс внешней памяти (EMIF), контроллер ПДП (DMA),интерфейс хост-порта (HPI), средства энергосбережения, расширенныебуферизированные последовательные порты, 32-разрядные таймеры.77PDF created with pdfFactory trial version www.pdffactory.com7.
ЛАБОРАТОРНЫЙ ПРАКТИКУМ7.1. Программирование ПЦОС TMS320C26Целью данных лабораторных работ является ознакомление сархитектурой, системой комманд и методами программирования ПЦОСTMS320C26 [4].В лабораторных работах используется функциональный модульDSK, расширяющий функциональные возможности ПЦОС TMS320C26,содержащийАЦП и ЦАП, и подсоединенный к персональномукомпьютеру через последовательный порт RS-232.В ходе выполнения работ при программировании используетсятранслятор ассемблера и отладчик.Лабораторная работа № 26-1Задание1) Осуществить инициализацию области памяти ПЦОС десятичнымизначениями 0 – 100. В качестве начального адреса памяти принять 0400h.2) Вычислить и занести в аккумулятор сумму всех членовпоследовательности.Методические указания. Пример программыТочкой входа в программу следует выбрать 0fb00h.Для определения начального адреса программной памяти иинициализации этим значением программного счетчика необходимопоместить в начало программы следующие строки:.ps.entry0fb00hВ силу особенностей архитектуры сигнального процессораTMS320C26 для выполения задания необходимо правильно произвестиконфигурацию 4 блока оперативной памяти (B0, B1, B2 и B3).
Призаданном начальном адресе размещения таблицы в памяти данных (0400h)необходимо настроить блок В0 как программную память, а все остальныеблоки – как память данных. Для этого после указанных выше директив .psи .entry необходимо поместить следующую стоку:conf1Для ознакомления с картами программной памяти и памяти данныхПЦОС TMS320C26 обратитесь к Таблице П2 и Таблице П3 Приложений.78PDF created with pdfFactory trial version www.pdffactory.comДалее приводится простейшая программа, реализующая запись двухцелых чисел в память ПЦОС (по адресам 0400h 0401h) и их сложение спомещением результата в аккумулятор.Пример 7.1. Сложение двух шестнадцатиразрядных целых чисел.ps0fb00h.entryDA1 0400hDA2 0401h;;;;установить текущий адрес программной памятизагрузить прогр. счетчик текущим адресом памятиопределяем и инициализируем две константыадресами исходных слагаемыхlark AR1, 100sar AR1,DA1lark AR1,200sar AR1,DA2;;;;загрузить 100 во вспомогательный регистр АR0записать содержимое AR1 по адресу DA1реализовать загрузку 200 в ячейку памяти с адресом DA2lrlk AR2,DA1larp AR2lac *+,0;;;;;;загрузить в AR2 адрес первого слагаемогосделать AR2 текущимзагрузить в аккумулятор первое слагаемое c нулевымсдвигом и инкрементировать адрес, хранящийся в AR2добавить к аккумулятору 2-ое слагаемое без сдвигазакончить ассемблированиеadd *,0.endУказания к выполнениюВыполнение лабораторной работы осуществляется в три этапа:программи рование,ассемблирование,работа с программой-отладчиком.ПрограммированиеНа этом этапе осуществляется составление программы на ассемблереTMS320C26 в соответствии с предложенным заданием.Для последующего тестирования и отладки текст программынеобходимо набрать в редакторе текстов ASCII (например в Notepad дляWindows) и сохранить в файле с именем BrN_1.asm, где N – номер вашейбригады.АссемблированиеДля ассемблирования полученной программы необходимо:1.
Переместить файл с ее текстом в директорию C:\C26, в которомпроизведена инсталляция функционального модуля DSK.2. При работе в ОС Windows осуществить вызов командного процессораMS-DOS,выбравStart®Programms®MS-DOS-session(альтернативным способом вызова является выбор Start ® Run и ввод в79PDF created with pdfFactory trial version www.pdffactory.comпоявившемся диалоговом окне command с последующим подтверждениемввода).3. С помощью командной строки сделать директорию C:\C26 текущей.4.
Осуществить вызов ассемблера DSK из командной строки по шаблону:dska [filename] [-option]где filename – имя файла, содержащего текст вашей программы; –option – опции, задающие способ ассемблирования программы (filenameможет не содержать расширение файла!).Примечание. В данном случае необходимо ввестиdska BrN_1В случае успешного ассемблирования на экран будут выведеныстроки, как показано на рис.