Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Лекция №6. Архитектура сигнального процессора TMS320C50



Содержание лекции: краткая характеристика архитектуры сигнального процессора TMS320C50.

Цель лекции: изучить особенности архитектуры сигнального процессора TMS320С50.

TMS320С5х - сигнальные процессоры, которые базируются на модифицированной Гарвардской архитектуре. В этой архитектуре используются два пространства памяти - для программ и для данных со своими шинами адреса и данных. По шине данных памяти программ из программной памяти пересылаются коды команд и непосредственные операнды. По шине данных памяти данных пересылаются данные от разнообразных модулей процессора в память данных и наоборот. Имеются команды обмена данными между памятью программ и памятью данных.

В процессорах TMS320C5х поддерживается высокий уровень параллелизма. Так, пока данные обрабатываются в арифметико-логическом устройстве (ALU), в арифметическом устройстве вспомогательных регистров может производиться инкремент или декремент содержимого этих регистров.

Структурная схема процессора TMS320C50 представлена на рисунке 7, из которой видно, что процессор выполняет арифметические команды, используя 32-х разрядные ALU и аккумулятор (ACC). ALU - универсальный арифметический модуль, который оперирует 16-ти разрядными операндами (непосредственными или из памяти) или/и 32-х разрядными из умножителя или аккумулятора. Аккумулятор используется для хранения результатов, поступающих из ALU, а также для ввода второго операнда в ALU. 32-х разрядный ACC разделен на старшее слово (ACCH) - биты 31:16 и младшее – (ACCL) c битами 15:0. Для быстрого временного сохранения содержимого аккумулятора имеется 32-х разрядный буфер аккумулятора (ACCB).

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

Аппаратный умножитель выполняет перемножение двух 16-ти разрядных слов с получением 32-х разрядного результата за один командный цикл. Умножитель состоит из трех элементов: собственно умножителя (multiplaer), регистра результата PREG (product register) и временного регистра TREG0. 16-ти разрядный TREG0 хранит множитель, 32-х разрядный PREG содержит результат умножения. В зависимости от используемых команд значение множителя может быть загружено из памяти данных, памяти программ, или непосредственно из команды.

Рисунок 7

Масштабирующий сдвигатель (Prescaler) имеет 16-ти разрядный вход, соединенный с шиной данных, и 32-х разрядный выход, соединенный со входом ALU. Prescaler производит левый сдвиг входных данных от 0 до 16 бит. Сдвиг может задаваться в команде или с помощью указателя динамического сдвига (регистра ТREG1). Младшие разряды при сдвиге заполняются нулями, а старшие, в зависимости от состояния бита SXM в регистре состояния ST1, или нулями (SXM=0), или расширением знака.

Процессор имеет и другие сдвигатели: сдвигатель масштабирования результата (Post – Scaler) для левого сдвига от 0 до 7 бит результата из CALU и сдвигатель результата ((P – Scaler) для сдвига влево на 0, 1 или 4 бита или сдвига вправо на 6 разрядов для предотвращения переполнения.

Регистровый файл (AUXREGS), состоящий из восьми вспомогательных регистров (8x16) и индексного регистра (INDR), используется для формирования адреса при косвенной адресации. Для адресации к вспомогательным регистрам служит указатель вспомогательных регистров (ARP). Арифметическое устройство (ARAU) вместе с регистровым файлом предназначено для генерации адреса. Обычно вспомогательные регистры используются для хранения адреса, а INDR содержит смещение.

Восьмиуровневый аппаратный стек (stack) служит для хранения содержимого программного счетчика (PC) при выполнении процедур и подпрограмм обработки прерываний. При прерываниях регистры (ACC, ARCR, INDX, PMST, PREG, ST0, ST1, TREGs) помещаются в одноуровневый стек и извлекаются из него при возврате из прерывания.

Встроенная в кристалл процессора TMS320C50 память (Program Memory) состоит из трех видов:

1) масочно – программируемая память программ ROM, для изменения режима работы которой предусмотрен бит управления (MP/MC);

2) память данных или программ/данных SARAM, которая предусматривает выполнение одной операции чтения/записи в полном машинном цикле, состоит из независимых блоков по 2К или по 1К слов; конфигурация памяти изменяется битами OVLY и RAM в регистре PMST;

3) память данных DARAM предусматривает выполнение одной операции чтения или записи в полном машинном цикле без конфликтов на внутренней шине данных; конфигурация памяти изменяется с помощью бита конфигурации (CNF) в регистре состояния (ST1).

В качестве периферийного устройства в кристалл процессора встроен таймер/счетчик T/C, который представляет собой 16 – разрядный вычитающий счетчик. При достижении нулевого значения генерируется прерывание TINT и формируется импульс на выходе TOUT. Таймер управляется программно и может быть остановлен, перезапущен, сброшен или запрещен.





Дата публикования: 2015-10-09; Прочитано: 874 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.007 с)...