Глинченко А.С. Принципы организации и программирования сигнальных процессоров ADSP-21xx (2000), страница 2
Описание файла
PDF-файл из архива "Глинченко А.С. Принципы организации и программирования сигнальных процессоров ADSP-21xx (2000)", который расположен в категории "". Всё это находится в предмете "компьютерные методы и технологии автоматизации и управления" из 9 семестр (1 семестр магистратуры), которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. .
Просмотр PDF-файла онлайн
Текст 2 страницы из PDF
Наличие двухгенераторов адреса данных позволяет выполнять процессору две адресныеинструкции за один цикл.67Входныерег.MACВыходныерег.ALUВыходныерег.DMAPMADAG #2Входныерег.DMD 16PMD 24DAG #1Выходныерег.SHIFTERВходныерег.шина R141416СчетчиккомандРегистркоманд5Рис. 1. Базовая архитектура5(нет вADSP2105)SPORT 1принимающийрегистр.принимающийрегистр.SPORT 0передающийрегистр.передающийрегистр.СхемаупаковкираспаковкиУстройствообменамежду шинамиSRAMSRAM(ROM)24ПамятьданныхПамятьпрограмм16ГенераторадресазагрузкиТаймерIDMAпортBDMAпортMUX1624Внешняя шинаданных14Внешняя шинаадресаMUXФлагиПрограммный автомат процессора, называемый также генераторомадресов инструкций, управляет выполнением программы.
На блок-схемебазовой архитектуры он упрощенно представлен счетчиком команд,формирующим адреса инструкций для памяти программ. С ним связан такжерегистр команд, содержащий исполняемую в данный момент инструкцию ибуферизующий исполнение программы.Устройство памяти процессора включает раздельную память программ(PM) типа ОЗУ или ПЗУ, где могут храниться также и данные, и памятьданных (DM) типа ОЗУ.Внутренние устройства процессора связаны 14-разрядными шинамиадреса памяти данных DMA (Data Memory Address) и адреса памятипрограмм PMA (Program Memory Address), 16-разрядной шиной данныхпамяти данных DMD (Data Memory Data) и 24-разрядной шиной данныхпамяти программ PMD (Program Memory Data).
Они мультиплексированы вдве выводимые наружу внешние шины, шину адреса и шину данных. Пошине внутренних результатов R осуществляется прямой обмен даннымимежду вычислительными устройствами.Устройство обмена данными между шинами PMD – DMD аппаратноподдерживает двунаправленную передачу данных между памятью программи вычислительными устройствами процессора.Два двунаправленных последовательных порта (SPORT) с широкимразнообразием аппаратно-реализуемых режимов передачи и приема данныхобеспечивают полный синхронный последовательный интерфейс процессора.Программируемый интервальный таймер выполняет периодическуюгенерацию внутренних прерываний.Параллельный интерфейс представлен портами прямого доступа кпамяти BDMA и IDMA.КОНТРОЛЬНЫЕ ВОПРОСЫ1.
Какие зарубежные фирмы являются ведущими производителями ЦСП и каковынаиболее популярные семейства ЦСП?2. В чем заключается аппаратная ориентация ЦСП на задачи ЦОС?3. Что такое гарвардская архитектура ЦСП, какие возможности она реализует?4. В чем заключается программная ориентация ЦСП на задачи ЦОС?5. Каковы основные компоненты базовой архитектуры ЦСП?6. Как представлены периферийные устройства в архитектуре ЦСП?7. Как представлены вычислительные устройства в архитектуре ЦСП и каковы ихфункции?8.
Каковы функции программного автомата (генератора адресов инструкций)?9. Каковы функции генераторов адреса данных?10. В чем отличие генераторов адреса данных DAG1и DAG2?11. Что дает наличие двух генераторов адреса данных в архитектуре ЦСП?12. Как обеспечивается в ЦСП эффективная реализация базовой операции ЦОС?83. ВЫЧИСЛИТЕЛЬНЫЕ УСТРОЙСТВА3.1. ТИПЫ ДАННЫХВсе вычислительные устройства процессоров семейства ADSP-21xxявляются 16-битовыми с фиксированной точкой. Различают следующие типыданных, с которыми они оперируют.Строки битов.
Это простейшая двоичная форма представления данных,16 бит составляют строку битов. Строкой битов воспринимаются, например,аргументы логических операций NOT, AND, XOR, OR, исполняемых АЛУ.Знак или положение десятичной точки для них не имеют значения.Числа без знака. Беззнаковые целые числа могут принимать толькоположительные значения и поэтому имеют вдвое больший диапазон, чемзнаковые числа той же длины.
Младшие слова знаковых чисел с увеличеннойточностью рассматриваются также как беззнаковые числа.Числа со знаком в форме дополнения до двух. Для арифметикипроцессоров семейства термин «знаковый» всегда обозначает числа,записанные в форме дополнения до двух, т. е. в дополнительном коде.Числа в формате 1.15. Арифметические инструкции процессоровсемейства оптимизированы для операций с числами в дробном формате 1.15.В этом формате левый бит числа обозначает его знак, а 15 оставшихся битпредставляют числа от –1 до почти 1. На рис. 2 представлены веса двоичныхразрядов для этого формата. Ниже даются примеры 16-ричных чисел вформате 1.15 и их десятичные эквиваленты.(S)2-12-22-32-42-52-62-72-82-92-102-112-122-132-14Рис.
2. Веса разрядов дробного формата 1.15Число в формате 1.150x0001Его десятичный эквивалент0x7FFF0.9999690xFFFF−0.0000310.00003192-153.2. АРИФМЕТИКО-ЛОГИЧЕСКОЕ УСТРОЙСТВО (АЛУ)Блок-схема АЛУБлок-схема АЛУ представлена на рис. 3.АЛУ разрядностью 16 бит имеет два 16-битовых порта ввода – Х и Y, иодин порт вывода R. АЛУ принимает сигнал переноса СI, который являетсябитом переноса из арифметического регистра состояния АSТАТпрограммного автомата.
АЛУ генерирует 6 сигналов (признаков) состояния:нуля (АZ), отрицания (АN), переноса (АС), переполнения (АV), знакаоперанда Х (АS) и частного (АQ), которые фиксируются в арифметическомрегистре состояний АSТАТ в конце цикла.Порт ввода Х АЛУ может принимать данные либо из входных регистровАХ − АХО и АХ1, либо с шины результатов R, соединяющей регистрывывода всех вычислительных устройств. Запись в регистры АХО, АХ1 исчитывание из них может производиться с шины DMD. Возможно такжесчитывание этих регистров на шину PMD с использованием устройстваобмена данными между шинами PMD и DMD.Порт ввода Y АЛУ также может принимать данные либо из входныхрегистров АY − АYО и АY1, либо регистра обратной связи АF.
Считываниеиз регистров АYО, АY1 и запись в них производится с шины DMD, записьможет также производиться с шины PMD. Возможно считывание этихрегистров на шину PMD с использованием устройства обмена даннымимежду шинами PMD и DMD.Выходные данные АЛУ загружаются либо в регистр обратной связи АF,либо в регистр результатов АЛУ (АR). Регистр АF является внутреннимрегистром АЛУ и позволяет использовать результат АЛУ в качествевходного значения для порта Y АЛУ. Регистр АR может передавать данныекак на шину DMD, так и на шину результатов.
Этот регистр может прямозагружаться с шины DMD. Для считывания с АR на шину PMD используетсяустройство обмена данными между шинами PMD и DMD.В любой из регистров, связанных с АЛУ, может производитьсязапись/считывание в течение одного и того же цикла. Считывание срегистров производится в начале цикла, а запись в регистры – в конце цикла.Это позволяет регистрам ввода обеспечивать АЛУ операндом в начале циклаи обновляться следующим операндом из памяти в конце того же цикла.Аналогично, в течение одного и того же цикла возможно сохранениерегистра результатов в памяти и обновление этого регистра новым значениемрезультата.10шина PMD24шина DMD1616 (старшие)MUXАXрегистры2x16АYрегистры2x161616MUXAZMUXXANACАFрегистрYCIALUAVASRAQ1616MUXАRрегистр16шина RРис. 3.
Блок-схема АЛУВ АЛУ содержится также второй (теневой) ряд регистров AR, AF, AX иAY, показанных на рис.3 за основными регистрами. В любой определенныймомент времени доступен только один ряд регистров. Дополнительный рядрегистров активизируют для чрезвычайно быстрого контекстногопереключения (например, во время подпрограммы обслуживанияпрерывания). В таком случае новая задача (обслуживания прерывания)может быть выполнена без передачи текущих состояний регистров в память.11Выбор основного или альтернативного ряда регистров управляется битом0 в регистре состояния режима процессора МSТАТ.
Если этот бит принимаетзначение 0, выбирается основной ряд; если он равен 1, выбирается теневойряд регистров.Программно доступные регистры AX0, AX1, AY0, AY1, AR, AFосновного и теневого ряда представляют АЛУ на общей программнойрегистровой модели процессора (рис. 11).Стандартные функции АЛУАЛУ реализует следующие 19 стандартных функций:R=Х+YR = Х + Y + СIR=Х–YR= Х – Y + СI– 1R=Y–XСложить операнды Х и YСложить операнды Х и Y и бит переносаВычесть операнд Y из ХВычесть операнд Y из Х с "заемом"Вычесть Х из операнда YR = Y – Х + СI – 1 Вычесть Х из операнда Y с "заемом"R=–XИнвертирование операнда Х (в дополнительном коде)R=–YИнвертирование операнда Y (в дополнительном коде)R=Y+1Инкрементирование операнда YR=Y–1Декрементирование операнда YR = РАSS ХПропустить операнд Х для сохранения результатанеизменнымR = РАSS YПропустить операнд Y для сохранения результатанеизменнымR = 0 (PASS 0)R = АВS ХОбнуление результатаНайти абсолютное значение операнда ХR =Х АND YЛогическое И над операндами Х и УR = Х ОR YЛогическое ИЛИ над операндами Х и YR = Х ХОR YОперация Исключающее ИЛИ над операндами Х и YR = NОТ ХОперация логического НЕ над операндом ХR = NОТ YОперация логического НЕ над операндом Y12Источниками/приемниками данных для них являются:Источники вводаданных в порт ХИсточники вводаданных в порт YНаправление выводаданных через порт RАХ0, АХ1АY0, АY1ARАRAFAFМR0, МR1, МR2SR0, SR1Источники МR0, МR1 и МR2 относятся к регистрам результатовумножителя/накопителя, SR0 и SR1 – устройства сдвига.Стандартные функции АЛУ дополнены также двумя примитивамиоперации деления (инструкции DIVS, DIVQ), обеспечивающими еевыполнение за несколько циклов.Операции АЛУ реализуются программно с помощью легко читаемыхассемблерных инструкций, например:AR = AX0 + AX1 + C;AR = AX0 OR AY1;AR = PASS AX1;Режим насыщения АЛУВ регистре АR имеется режим насыщения для операций вдополнительном коде, который автоматически устанавливает значение этогорегистра максимально отрицательным (8000H) или положительным (7FFFH)в тех случаях, когда в АЛУ получается результат переполнения или потерязначащих разрядов.
Этот режим работы АЛУ разрешается установкой бита 3регистра состояния режима МSТАТ. В режиме насыщения значение,загружаемое в регистр АR во время операции АЛУ, зависит от состоянияфлагов переполнения и переноса, генерируемых АЛУ в этом цикле:Переполнение (AV)Перенос (АС)Содержимое АR00Выходные данные АЛУ01Выходные данные АЛУ107FFFH118000HВ режиме насыщения АЛУ преобразования происходят только в регистреАR.13Режим фиксации переполнения АЛУРежим фиксации переполнения АЛУ разрешается установкой бита 2 врегистре состояния режима МSТАТ и приводит к фиксированию бита АV,после того как он был установлен. При переполнении АЛУ в этом режимебит АV устанавливается и сохраняется даже тогда, когда в последующихоперациях АЛУ переполнение не генерируется. В этом режиме сброс АVвозможен только при записи его нулем прямо с шины DMD.3.3 УМНОЖИТЕЛЬ-НАКОПИТЕЛЬБлок-схема умножителя-накопителяБлок-схема умножителя-накопителя приведена на рис.