Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
EKZAMEN_MiTsOS.docx
Скачиваний:
6
Добавлен:
01.03.2025
Размер:
7 Мб
Скачать
☆

31 Алу и умножитель процессора с54

Назначение АЛУ заключается в выполнении арифметических и логических операций.

Схема АЛУ представлена на рис. 7.7. Кроме блока АЛУ в его состав входят два аккумулятора А и В с шинами А и В. Данные по-ступают по шинам СВ и DB. Аккумуляторы загружаются через мультиплексор с выхода АЛУ или умножителя М или через обрат-ные связи. Загрузка аккумуляторов идет одновременно. Т - выход регистра Т, S - выход сдвигателя. SXM — сигнал управления знаком. Если сигнал управления па-вен 0, то знак не меняется, если же 1, то меняется. Аккумуляторы 40-разрядные содержат по 3 регистра каждый (см. табл. 7.3). Диапазон чисел, с которыми работает процессор: от +32761 до -32762 (дробные) или 0 - 65000 (целые).Умножитель процессора С54 Назначение - выполнение операций MAC и умножения. Схема показана на рис. 7.8. Умножение выполняется за 1 инструкцию. Если FRST=1. ТО УМНПЖРНИР пппйнтлх чисел. ' J ^Г FRST=0 - режим умножения целых беззнаковых чисел. Если OVM=l, то имеется переполнение и результат заменяется либо на максимальное положительное или на максимальное отри-цательное. C)VM=0, то операция не выполняется, и процесс вычислений останавливается. РВ - внутренняя шина команд; Т - входной регистр; А, В - выходы аккумуляторов;Команда умножения-округления MACR - результат 16 бит бе-рется из регистров АН или ВН аккумуляторов А или В, младшие разряды аккумуляторов отбрасываются.

32.Сдвигатель и устройство сравнения-запоминания С54хх Сдвигатель и устройство сравнения и хранения процессора С54 Сдвигатель реализует логические и арифметические сдвиги в диапазоне -16 до 31 бит. Загрузка сдвигателя происходит из шин данных или аккумуляторов А и В. При логических сдвигах осво-бождаемые разряды заполняются нулями, а при арифметических единицами. Кроме этих сдвигов имеется одноразрядный цикличе-ский сдвиг через специальный бит С состояния процессора. Сдвиг производится в одном из аккумуляторов. Схема сдвигателя процес-сора показана на рис. 7.9.

На рисунке показаны: А, В - выходы аккумуляторов, CSSU -выходы схемы выборки - хранения, ТС, SXM - биты слова состоя-ния процессора. CSSU-указатель выбора старших или младших разрядов 32 разрядного результата с выхода устройства запомина-ния. 16 разрядный операнд после сдвига по шине результата на-правляется в память данных. Величина сдвига определяется одной из трех команд: Т-младшими разрядами Т регистра, ASM пятираз-рядным словом в регистре состояния процессора или Const-пятиразрядной константой, находящейся в команде. Т - значит, что берутся младшие разряды; ASM - 5-разрядный регистр состояния; const - пятиразрядная постоянная содержится в команде. 88 Глава 7. Цифровые процессоры фирмы Texas Instruments Рис. 7.9. Сдвигатель процессора Результаты - сдвинутые операнды записываются в аккумулятор А или В. Q(n) - Q - целая часть - представления операндов, п - дробная часть; Q=16-l-n - число целых разрядов.

33.Адресация процессора TMS320C54XX.Примеры применения В процессоре С54 применяются следующие виды адресации: 1. Непосредственная. 2. Абсолютная.

3. Аккумуляторная. 4. Прямая. 5. Косвенная с помощью адресных регистров.

6. Адресация регистров, включенных в адресное пространство. 7. Стековая. 1. Непосредственная.

Операнд непосредственно находится в команде Пример. Загрузить число 80 в аккумулятор А LD#80h,A ADD#1, А - добавить 1 (единицу) аккумулятору 2 2. Абсолютная. В команде находится адрес операнда. SUB*(0123 h), А -из аккумулятора А вычитается число, нахо-дящееся по адресу 0123h. 3. Аккумуляторная. Адрес находится в аккумуляторе, а операнд в памяти программ. Используется только в двух командах READ А и WRIT А. Напри-мер, WRIT А * (7651 h) содержимое из ячейки памяти данных опе-ранда записывается в память программ по адресу, находящемуся в младших 16 разрядах аккумулятора А. 4. Прямая. При этой адресации в команде находится 7 битный адрес опе-ранда. Полный адрес (16) формируется с использованием 9 разряд-ного регистра DP (указатель активной страницы памяти), включен-ного в адресное пространство. DP Адрес операнда LD # 10h постоянная 10 загружается в память по адресу, ука-занному в DP. 5. Косвенная. При косвенной адресации используется блок дополнительных регистров, состоящий из 8 регистров ARO-AR7, дополнительного АЛУ и регистра циклического буфера. Все регистры включены в адресное пространство и находятся на нулевой странице памяти. Полный 16 разрядный адрес находится в одном из дополнительных регистров. Адрес (номер) регистра, адресующего операнд, указывается не-посредственно в команде. Пример. STH А, * AR6 - содержимое старшей половины акку-мулятора А записать в ячейку, адрес которой находится в дополни-тельном регистре AR6. Признак косвенной адресации в символе * в записи команды.В дополнительном АЛУ выполняются действия над содержи-мым данного дополнительного регистра: декремент, инкремент, циклическая адресация, перестановка бит.6. Адресация регистров, включенных в адресное пространство. щение к ним происходит вне зависимости от содержимого реги-стра DP. Пример. LPM# 40h, SP - записать 40h в указатель стека SP. 7. Стековая. Стековая адресация позволяет сохранить содержимое регистров при переходе к подпрограмме отработки прерываний и восстанов-ления состояния регистров при возврате из прерываний. Имеется 4 команды стековой адресации: PUSH - в стек; POP - из стека; PSHM, PSHD - запись регистра, включенного в адресное про-странство, с предварительным уменьшением SP на 1; РОРМ, POPD - считывание из стека с последующим инкремен-том. В устройство контроля программы входят: 1. Программный счетчик (PC). 2. Регистры повторения команд (RC). 3. Регистры повторения блока команд (BRC). 4. Регистры начального адреса, повторяемого блока команд (RSA). 5. Регистры конечного адреса повторяемого блока команд (REA). 6. Регистры расширения программного счетчика (ХРС). Программный счетчик хранит адрес текущей исполняемой ко-манды. После выполнения очередной команды содержимое счет-чика PC увеличивается на 1. Имеется ряд команд, изменяющих по-следовательность выполнения команд. К ним относятся, в частно-сти, команды вызова подпрограмм, возврата из подпрограммы, ко-манды переходов, а также повтора команды RPT.

34.ЦСП TMS320C600.Схема и характеристики. Платформа С6000 обеспечивает максимальную производитель-ность для реализации сложных алгоритмов ЦОС с предельными скоростями обработки, как с фиксированной, так и с плавающей точкой. Это достигается за счет параллельных вычислений: ядро процессора содержит 8 вычислителей, работающих одновременно, и оптимальной архитектуры. Для этого формируется так называемая «длинная команда» 8x32 разряда -Very Long Instruction Word. Характеристики процессора Производительность П = 1600-2400 MIPS, (С64х - до 8800 MIPS).

Ft = 250 МГц - 1 ГГц; tu = 1.. .4 не. Число разрядов 32. 8 команд х 32 разряда (команда 256р).

Технология КМОП 0,25 мкм. Память. Две памяти данных и программ по 512 К слов х 32р или память данных 1Мх32р. и память программ 2 Мх32р. Команда занимает 256р., данные представляются в виде 32р, 16р, 8р. Наряду с параллельными вычислениями производится конвей-ерная обработка. Глубина конвейера до 8 операций, как показано на рис. 7.12.

Области применения Базовые станции сотовой связи, IP сети, Internet, DSL модели, мультимедийные системы и др., требующие высокой производи-тельности. Схема процессора TMS320C6000 представлена на рис 7.13. Архитектура процессора - модифицированная гарвардская. Отличие от других ЦСП в структуре ядра. Рассмотрим архитектуру ядра процессора. В ядро входят уст-ройства обработки команд , формирователи потоков данных, два файла регистров данных и 8 вычислителей. Обработка команды, включает следующие фазы: обращение к командному слову ( вызов команды), распаковка длинного командного слова и декодирование отдельных команд. Из памяти данных вызываются данные, обра-зующие два потока, записываемые в два файла регистров А и В. Каждый включает 16 регистров по 32 разряда. Кроме того, имеют-ся устройство управления и обработки прерываний. Вычислитель-ные устройства выполняют следующие операции: L - 32/40 разрядное сложение / вычитание и сравнение, логиче-ские операции;S - 32/40 разрядные сдвиги, сложение / вычитание, загрузку констант, логические операции, работа с битовыми полями; М - целочисленное умножение 16x16; D - адресный модуль, производит 32 разрядное сложе-ние/вычитание, 32 разрядное сложение/вычитание адресов, обеспе-чивает передачу данных между регистровыми файлами и памятью, под держивают циклическую и линейную адресации. Таких наборов устройств имеется два, причем каждый работает со своим файлом регистров. Каждый из регистровых файлов соединен 32 разрядными ши-нами с диспетчером памяти, который организует одновременную выборку из памяти по 4 шинам до 64 разрядов по 2 адресам. Па-мять дробится на множество файлов, причем каждый байт адресу-ется отдельно как многопортовая память. Возможно подключение внешнего расширителя ОЗУ через 32 разрядный интерфейс внеш-ней памяти. Два канала прямого доступа к памяти (DMA) могут выполнять функцию аппаратной загрузки программ. Связь с управляющим контроллером осуществляется через 16 разрядный интерфейс ( Хост - порт доступа) ; имеется также два буферизиро-ванных последовательных порта. В состав процессора входят два таймера и ГТИ. Данная платформа реализует переход от аппаратно-ориентированной среды разработки к программным моделям, что делает процесс разработки более простым и быстрым. Среда разра-ботки включает в себя СИ компилятор, оптимизатор ассемблерного кода и отладчик [А.6].

35.Процессоры с плавающей точкой TMS320C30 и C6700/Схемы, характеристики, применение. Семейство ЦСП СЗЗх это 32-разрядные процессоры с плаваю-щей точкой, имеют одинаковые ядра и набор периферии. На этих процессорах реализуются различные устройства ЦОС. Они также могут использоваться как микроконтроллеры. Характеристики двух типов процессоров приведены ниже.

Применение процессоров СЗЗх: - цифровая фильтрация, в том числе и адаптивная, корреляция, преобразование Гильберта, спек-тральный анализ, формирователи и демодуляторы сигналов, коди-рующие и декодирующие устройства, ФАПЧ, обработка речи и др. Упрощенная схема ЦСП СЗЗх показана на рис. 7.14 Контроллер реализует команды сброса, прерываний и блоки-ровки ветвлений. Ядро процессора 32-разрядное с плавающей точ-кой. Действия проводятся как с фиксированной точкой 16/32 раз-ряда, так и с плавающей 32/40 разрядов. В состав процессора, кроме ядра, входят управляющий кон-троллер, две памяти данных , память программ и КЭШ память для хранения часто повторяющихся частей программы, уменьшая об-ращение к внешней памяти, и периферия, включающая порты ПДП, 2 таймера, 2 последовательных порта, 2 таймера, параллель-ные порты (16Мх32), загрузчик программ и генератор тактовых импульсов с возможностью умножения частоты в 5 раз. Работа ЦСП организована по 4 ступенчатому конвейеру. Ос-новные операции конвейера: выборка команды, декодирование ко-манды, чтение команды и выполнение. Ядро ЦСП (см. рис. 7.15) включает вычислители, формировате-ли адресов и устройство управления программой. Имеются умно-житель операндов с плавающей точкой (32x32) разряда, АЛУ и сдвигатель, выполняющие операции параллельно. Результаты хранятся в восьми 40 разрядных регистрах повышенной точности, причем 32 разряда содержат мантиссу, а 8 - порядок. Эти регистры являются как приемниками, так и источниками для любой арифме-тической операции. Наличие регистров повышенной точности по-зволяет производить вычисления без сохранения промежуточного результата в ОЗУ. В состав ядра входят два арифметических блока (ARAU). Они вычисляют два 24 разрядных адреса, которые дос-тупны через 8 дополнительных регистров (AR0-AR7). Дополни-тельные арифметические блоки выполняют следующие операции

Рис. 7.15. Ядро процессора СЗОх1. Декремент и инкремент адресов, в том числе и с шагом, от-личным от 1 с использованием индексных регистров IRO, IR1. 2. Циклическую адресацию при использовании кольцевых бу-феров. 3. Бит-реверсную адресацию.ARAU - вычислители адресов, инкремент-декремент адреса. Изменение адреса с шагом больше единицы, кольцевая адресация бит-реверс - быстрое преобразование Фурье. Системные регистры: осуществляют управление программой. За инструкцию проводится пересылка двух операндов и одной команды. Представление чисел с плавающей точкой е - поле экспоненты (порядок) - 8 разрядов, s - знак 1 разряд, f -мантисса 23 разряда. х = 0,lf х 2Ле при S = 0. х = 10fx2AenpnS = 1. А = а(тап)ела(ехр). в = Ь(тах)елЬ(ехр). а * b = a(man) b(man) ел(а(ехр)+Ь(ехр)) при S = 0. Сложение чисел с плавающей точкой см. §1.2. Процессор TMS 320С40 для работы в многопроцессорных сис-темах, поэтому он имеет развитую периферию. К основным харак-теристикам ЦСП относятся. Производительность 80 MFLOPS, тактовая частота 40 МГц, число разрядов 32, технология КМОП 0,7 мкм, имеется 6 коммуни-кационных портов, но нет последовательных портов. Формат данных - плавающая или фиксированная точка Поскольку процессор предназначен для использования в мно-гопроцессорных системах он содержит 6 высокоскоростных теле-коммуникационных портов со скоростью обмена 30 Мбит/с. Ядро ЦСП такое же как у С30, также имеется 4 памяти. КЭШ - память 512x32р. КЭШ п = 80 MFLDPS. Ft = 40 МГц. tu = 25 не. ОЗУ 4К х 32р. ОЗУ2 4К х 32р. ПЗУ 4К х 32р.

АЦП/ЦАП могут подключаться через коммуникационный пор-ты. Порт DMA имеет 6 каналов для связи с внешними устройствами (рис. 7.16). Иерархическая.

Всего может быть соединено до 32 процессоров С40. Процессор С6700 с плавающей точкой совместим по коман-дам с С6400, имеет 4 АЛУ с плавающей точкой, 2 АЛУ с фикси-рованной точкой, два умножителя с плавающей и фиксирован-ной точкой. К основным характеристикам С6700 относятся производитель-ность до 1200 MFLOPS, 334 ММАС, t„ = 5 не, технология 0,18 и 0,13 мкм, памяти - статическая ОЗУ 1 Мбит и 512 Кбит.

36 Микроконтроллеры МС-24 фирмы Элвис. Сигнальный процессор МС-24 ИПЦ «Элвис» представляет со-бой двухпроцессорную «систему на кристалле» [19]. Он содержит 32-разрядный центральный процессор (CPU - Central Processor Unit), периферию и высокопроизводительный ЦСП (DSP) с фикси-рованной и плавающей точкой, обеспечивающий обработку дан-ных с переменными форматами. Таким образом, МС-24 сочетает в себе микроконтроллер и ЦСП, решающий одновременно задачи управления и цифровой об-работки сигналов. На рис 8.7 представлена структурная схема про-цессора МС-24.

Характеристики процессора МС-24 Ядро центрального процессора (CPU): • Архитектура MIPS -32. • 32-битные шины передачи адреса и данных. • КЭШ команд объемом 16 Кбайт. • Регистры County Compare для обработки прерываний в реаль-ном времени. • Вектор обработки исключений. • Устройство MAC. • Порт JTAG ШЕЕ 1149.1. • Производительность 100 млн оп/с. • Оперативная память 32 Кбайт. • 5 внешних запросов прерываний. Ядро ЦСП (DSP) имеет следующие особенности: • гарвардская RISC подобная архитектура; • 2 SIMD ( Single Instruction Multiple Data); • набор инструкций для одновременной обработки и пересылок; • трехступенчатый конвейер по выполнению 32 и 64 разрядных инструкций; • аппаратная поддержка программных циклов; • память программ PRAM 16; • память данных XRAM, YRAM 128 и 32 Кбайт соответственно; • производительность до 3600 MIPS при 8 битных операндах и до 600 MFLOPS при действиях с 32 разрядными данными с пла-вающей точкой. Порт внешней памяти (MPORT) включает: • шину данных 64 разряда, шину адреса 32 разряда; • встроенный контроллер управления памятью типа SRAM, FLASH, ROM, SDRAM; • программное конфигурирование типа памяти и объема ее сег-мента, а также циклов ожидания; • обслуживание 4-х внешних прерываний. Периферийные устройства состоят из следующих узлов: • 12 канальный контроллер ПДП (DMA); • 2 последовательных порта; • 4 линк-порт; • универсальный порт UART типа 16550; • 32-разрядный интервальный таймер; • 32-разрядный таймер реального времени; • 32-разрядный сторожевой таймер. Дополнительные блоки: • генератор тактовой частоты (PLL) с умножителем и делителем частоты входных сигналов; • встроенные устройства отладки (OnCD); • порт JTAG; • поддержка режима энергосбережения. Области применения сигнальных микроконтроллеров фирмы «Элвис»: • акустика и гидролокация; • связь и обработка сигналов (БПФ. Фильтрация и пр.); • мультимедийная обработка изображений и цифровое телеви-дение; • управление объектами с использованием высокоточных адап-тивных алгоритмов; • мультимедийная обработка звука (звуковые кодеки разных стандартов). RISC ядро является ведущим в двухпроцессорной системе и выполняет основную программу. RISC ядро управляет работой DSP ядра путем передачи ему команд. Ядро DSP формирует ряд прерываний для RISC ядра. Внутренние интерфейсы микросхемы представляют собой стандартные шины архитектуры АМВА ( Ad-vanced Microcontroller Bus Architecture). DSP ядро микроконтроллера MC- 24 имеет две секции обработ-ки данных с архитектурой SIMD, а ядро микроконтроллера МС-12 имеет одну секцию. Параллелизм обработки данных на уровне SIMD секции определяется возможностью выполнения по одной инструкции нескольких операций.

37.Структура, назначение и характеристики процессора NM6404/К этим процессорам относятся ЦСП NM6403 и NM6404 фирмы «Модуль» [А. 10 ]. Процессоры сочетают в себе архитектуры VLIW (Very Long In-struction Word) и SIMD (Single Instruction Multiple Data). Процессо-ры спроектированы для целочисленных данных. Характеристики процессора Производительность: • Скалярные операции 40 MIPS; 120 MIPS для 32 р;

• Векторные операции от 40 до 11.5 ММАС; Тактовая частота 40 МГц. Технология КМОП 0,5 мкм.

Число разрядов:• RISC ядро -Команды 32 р и 64 р;

Данные 32 р (целые); • VCP 1 - 64 р (длина векторных операндов переменная). RISC процессор производит арифметические, логические и сдвиговые операции над 32-разрядными скалярными данными и формирует 32-разрядные адреса команд и данных при обращении к внешней памяти. Длина команды 32 и 64 разряда (две команды формируются одновременно). Обмен данными между основными узлами процессора проис-ходит по трем внутренним шинам, двум входным и одной выход-ной. GMI и LMI - два блока программируемого интерфейса с ло-кальной глобальной внешними шинами, к каждой может под-ключаться внешняя память до 21 х32 разрядных ячеек. Обмен про-исходит словами по 32 и 64 разряда (две соседние ячейки памяти). СР1 и СР2 - коммуникационные порты, обеспечивающие об-мен по двунаправленной 8-разрядной шине. Каждый коммуника-ционный порт имеет контроллер ПДП (DMA), позволяющий обме-ниваться 64-разрядными данными с памятью на внешних шинах СР1 и СР2, совместимыми с интерфейсами процессора TMS320C40. RISC ядро использует 5-ступенчатый конвейер, две операции выполняются в одной команде. В ядро входят АЛУ, сдвигатель, адресный генератор с адресным пространством 16 GB, также 2 интерфейса с SRAM / DRAM. Имеются регистры: 8х32р общего назначения; 8х32р адресных; RG управления и состояния процес-сора. Векторный сопроцессор VCP включает три внутренних памяти FIFO - 34x64р. Имеет два типа насыщения на кристалле, поддержку матрич-ных и векторно-матричных операций. Корпус процессора типа BGA имеет 256 контактов. Напряже-ние питания 3,5 В. Потребляемая мощность 1,3 Вт.

Для увеличения производительности процессора используется параллельная работа в виде линейки процессоров, либо матрицы из процессоров. На рис. 8.2 представлена линейная многопроцессор-

ная структура на базе NM6403. Для соединения с внешними памя-тями используются глобальные и локальные интерфейсы, а для связи процессоров между собой коммуникационные порты. Области применения: • нейронные сети; • ЦОС (БПФ, фильтрация и др.); • обработка видеоизображений; • векторно-матричные вычисления; • телекоммуникации. Одним из существенных недостатков процессора NM6403 явля-ется отсутствие внутренней памяти, кроме трех буферных памятей FIFO в векторном сопроцессоре. В 2005 г. фирма «Модуль» выпус-тила модернизированный ЦСП NM6404, имеющий два внутренних ОЗУ каждое по 16 Кх64 бит. К особенностям этого процессора можно отнести повышенную вдвое тактовую частоту 80 МГц, тех-нологию 0,25 мкм. Производительность при выполнении скалярных операций уве-личена вдвое, векторные операции типа «умножение с накоплени-ем» - за один такт при 32-разрядных данных выполняется 2 MAC, а при 16-разрядных - 4 MAC операций. За один такт процессор вы-полняет до трех скалярных операций (вычисление в АЛУ, модифи-кация адреса, операция ввода-вывода - обращение к внешней памя-ти). Питание ядра 2,5 В, периферии -3 В.

Кроме указанных выше применений, фирма рекомендует ис-пользовать процессор для обработки изображений, в гидро и ра-диолокации, в базовых станциях сотовых сетей CDMA, TDMA и криптографии.

38 Нейроматрица NM6404, вычисление функции нейронов, применение.Многослойная нейронная сеть (НС) типа персептрона содержит несколько слоев однотипных нейронов [24]. В нейроне вычисляется значение функции ,

где /(*) - нелинейная (пороговая) функция активации; у, - началь-ные условия; Xj - входные данные; Wu - весовые коэффициенты

Нейрон можно представить в виде скалярной функции от век-тора численных входных значений. В целях лучшей обучаемости градиентными методами порого-вую функцию делают гладкой и нелинейной. Нейроны одного слоя, например персептрона, получают один и тот же вектор входных зна-чений. Изменение выходных характеристик сети достигается за счет смены весовых коэффициентов, которые называются обучением. Значения пороговой функции вычисляются по таблице в диапа-зоне от -32768 до 32767. если результат больше, то используется функция насыщения - наиболее положительное или отрицательное число / = -(х/ 2048) - числа в таблице целые. Матрица произвольно делится на строки и столбцы. В макро-ячейки загружаются коэффициенты Wlt. На вход матрицы подается входной вектор х = (xi,x2,...,xN). Каждому его элементу соответст-вует строка матрицы. Ширина строки в бит соответствующей раз-рядности элемента входных данных.

Для каждого столбца вычисляется Для снижения разрядности выходных данных и защиты от пе-реполнения используется программируемая функция насыщения (SATUR), ограничение за счет уменьшения числа разрядов. На рис. 8.5. приведен вид функции.

Базовое программное обеспечение включает: • компилятор С++; • ассемблер; • редактор связей; • программный эмулятор; • символьный отладчик; • библиотекарь объективных файлов; • набор системных и прикладных библиотек

Создание исполнимых файлов на основе объектных файлов (ОФ) путем объединения нескольких ОФ. Программы работают в 32-битном режиме. Все компоненты, за исключением символьного отладчика, имеют интерфейс командной строки. Символьный отладчик взаимодеиствует с пользователем в диалоговом режиме в многоокон-ной графической срсдс.

На рис. 8.6 показан вычислитель трех нейронов на векторном сопроцессоре.

39 ПЛИС, классификация, особенности проектирования.Программируемые логические интегральные схемы (ПЛИС) благодаря своим достоинствам получили широкое применение в различных областях. Эта элементная база высокой степени инте-грации позволяет разработчику за короткое время создать на осно-ве стандартных компонент устройства обработки сигналов с высо-ким быстродействием и низким потреблением. На базе ПЛИС мо-гут быть изготовлены логические блоки и устройства, например, преобразователи кодов, контроллеры, умножители, сигнальные процессоры с не очень сложными алгоритмами (вычислитель БПФ, различные фильтры и др.). ПЛИС относятся к полузаказным инте-гральным схемам, поскольку внутрисхемная топология частично формируется при производстве самих ПЛИС, а частично програм-мируется в соответствии с требованиями потребителя. Программи-рование пользователем ПЛИС производится путем изменения внутренней структуры, то есть соединения имеющихся на кристал-ле элементов в соответствии с требуемым алгоритмом. Настройка ПЛИС на заданный алгоритм и заданные спецификации произво-дится программатором или с использованием САПР, что сущест-венно уменьшает время проектирования. ПЛИС делятся на стандартные (Standart Programmable Logik Devices-SPLD) или классические, сложные (Complex PLD), решет-ки программируемых элементов (Field Programmable Gate Array -FPGA) и программируемые матрицы (PLM). Классификация ПЛИС представлена на рис. 9.1. Стандартные PLD - это ПЛМ, ППЗУ (PROM) и программируемые матрицы логики. Сложные (complex PLD) это несколько стандартных, объединенных коммутационной матрицей. Основным программируемым компонентом ПЛИС яв-ляются логические матрицы [14, 15]. Структура PLD это совокупность двух матриц: программируе-мой матрицы «И», фиксированной матрицы «ИЛИ» и макроячейки. Входные сигналы поступают на п входов матрицы «И», обеспечивая любые конъюнкции входных переменных. Выходы матрицы «И» соединены с матрицей «ИЛИ», которая реализует дизъюнкции по-ступающих сигналов, как показано на рис. 9.2. PAL (Programmable Array Logic) - это соединение программи-руемой матрицы «И» и фиксированной «ИЛИ». Макроячейка явля-ется выходным буфером, содержащим мультиплексоры и комму-тируемую логику. Также имеются цепи обратных связей с макро-ячейки на матрицу «И». Возможность коммутации обеспечивается наличием програм-мируемого элемента - перемычки, представляющей собой ячейку памяти. Количество перемычек конфигурации может быть до пяти.

На рисунке показан один из коньюнкторов матрицы «И». Б ПЛИС такой конъюнктор называется термом. Сигналы А, В, С являются входом конъюнктора, образуя логиче-скую функцию «И». Разрывая одну или несколько перемычек можно получить любую конъюнкцию от этих сигналов (см. рисунок). В ПЛИС каждый терм содержит не только прямые, но и обратные связи. Программируемые пользователем матрицы логических элемен-тов (FPGA) имеют архитектуру, показанную на рис. 9.3. В центре находится матрица настраиваемых (конфигурируемых) логических блоков (КЛБ), пространство между которыми заполнено програм-мируемыми межсоединениями, состоящими из горизонтальных и вертикальных каналов. В точках пересечения межсоединений на-ходятся переключающие точки. По краям кристалла для согласова-ния уровней внутренних каналов с внешними выводами располо-жены блоки ввода/ вывода (БВВ). Они выполняют функции буфе-ров: входного, выходного, с тремя состояниями. Программируемые межсоединения позволяют получить сложные логические функции за счет объединения входов и выходов любых БВВ КЛБ. Кроме указанных элементов современные FPGA содержат блок памяти, который может конфигурироваться как двухпортовое ОЗУ, встро-енный умножитель (18x18) и цифровое блоки управления синхро-низации. Настройка FPGA на заданный алгоритм выполняется ка-ждый раз перед началом ее работы. Необходимая для этого про-грамма настройки предварительно записывается в ПЗУ. После включения питания производится загрузка информации из ПЗУ и инициализация FPGA. КЛБ конфигурируемые логические блоки. G, F, С - это входы общего назначения. X, Y, XQ, YQ - это выходы. К - тактовый вход. Cin, Cout - вход и выход переноса.

40.Реализация фильтров и алгоритма БПФ на ПЛИС. Структурная схема вычислителя БПФ степени 2 на ПЛИС пока-зана на рис. 9.10. Он состоит из памяти промежуточных значений, памяти, содержащей поворачивающие множители WN , вычислите-ля типовой операции («бабочки»), управляющего контроллера и устройств ввода/ вывода данных.

Выборка А и В - комплексная. Реализуется алгоритм с замеще-нием, что дает экономию внутрикристальной памяти. Использован алгоритм БПФ степени 2 с «прореживанием» по частоте. Число разрядов выбирается исходя из разрядности отсчетов входных сиг-налов и допустимых потерь отношения сигнал/шум за счет вычис-лений (0,1 дБ). Число разрядов коэффициентов W* определяется по формуле Структура вычислителя типовой операции БПФ дана на рис. 9.11^ R = M -l,71g(y+1)+8, где Мбит - разрядность входного сигналаРазрядность промежуточных данных М + AM. Далее необхо-дим сдвиг влево на АМ разрядов. Нужен еще дополнительный сдвиг на Z разрядов влево разрядности преобразуемых данныхF - М + AM + ZНа рис. 9.12 представлена схема аппаратной реализации «ба-бочки». Она содержит 4 умножителя; обработка параллельная. На выходах X и Y (комплексные) разрядность также F. Имеются ком-плексный сумматор (adder 0), комплексный вычитатель (adder 0),

умножители (mul 0,..., mul 3), сумматор (adder 1). Для компенсации сдвигов в разных каналах используется FIFO-буфер (delay line). Для хранения промежуточных данных используется внутренняя 2-портовая память ПЛИС. Одновременно считываются числа А и В и записываются числа X и Y. Устройства сдвига производят нормировку. В ПЛИС сдвиг осуществляется путем подключения ячеек со сдвигом по номерам битов входных и выходных шин элементов и не требует аппарат-ных затрат. Вычислитель БПФ на ПЛИС имеет параметры: размер выборки N = 512, тактовая частота FT = 80 МГц, разрядность выходного сиг-нала М - 14 разрядов, время вычисления БПФ - 30 мкс, тип кристал-ла: XILINX FPGAXCV300, используемая часть кристалла <25%.Реализация нерекурсивных фильтров Ниже описана реализация нерекурсивного фильтра с КИХ 8 по-рядка с линейной фазовой характеристикой. Для ее получения ко-эффициенты фильтра должны быть симметричными, то есть hm = hN.m. Это позволяет сократить число перемножителей вдвое. В качестве параллельного векторного перемножителя (ПВП) удобно использовать таблицу перекодировок, входящую в состав логического элемента (ЛЭ). Работа ПВП описывается уравнением у = SJij + S2h2 + S3hj + SAh4

Рассмотрим реализацию 2-разрядного параллельного векторно-го умножителя. H1 01, h2 11, h3 10, h4 11?вектор сигналов S1 11,S2 00,S3 10,S4 01

Значения коэффициентов, частичных сумм произведений и ре-зультатов представлены ниже в таблице

Аналогично формируется частичное произведение Р1 в случае 4-хразрядных сигналов, Р2 вычисляются также, только результат нужно сдвинуть на 1 разряд влево.

М-модули высокоскоростных децимирующих фильтровФильтры на основе параллельной арифме-тики производят фильтрацию в реальном времени с понижением частоты дискретиза-ции в ш раз. Используется принцип парал-лельной арифметики с временным мультип-лексированием.

Для хранения коэффициентов используется распределенное ОЗУ. Архитектура оптимизирована под ПЛИС. М-модули высокоскоростных интерполирующих фильтров

Разрядность 12 и 16 бит; число отводов 16, 32, 64, 128, 256. Ра-бота с данными производится в дополнительном коде. Тактовая частота увеличивается в m раз.

М-модули сверхкомпактных КИХ фильтров

Используется принцип последовательной распределенной арифметики, производится высокопроизводи-тельная цифровая фильтрация, логика ускорен-ного переноса и взаимно ориентированных мак-росов. Схема фильтра дана на рис. 9.14

Разрядность: 8, 9, 12 и 16 бит, отводов 5 - 64

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

Обработка входных данных идет побитно. Хранение коэффи-циентов производится в поисковых таблицах, также используются ОЗУ для промежуточного хранения данных. Тактовая частота в N+1 раз выше FT входных данных, где N - разрядность входных операндов.

М-модули быстродействующих параллельных умножителей

Используется логика ускоренного переноса и взаимного относительного ориентирования мак-у росов (RLOC). 8x8, 10x10, 12x12, 16x16 быстродействую-щие параллельные умножители.

Асинхронные или синхронные вход (выход) конвейерные вари-ант используют принцип Бута с последующей сверткой суммато-рами разрядов одинакового веса. Асинхронные не содержат элементов дополнительной памяти, а синхронные содержат регистры на вход и выходе, результат выдает с задержкой на такт. Конвейерные умножители обеспечивают наибольшую произво-дительность и выдают результат за 4 такта.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]