УДК 621.382(06) Микро- и наноэлектроника К.Ю. БОЧАРОВ, И.И. НАСОНОВ Московский инженерно-физический институт (государственный университет) БЛОК ДЕКОДИРОВАНИЯ КОМАНД ПРОГРАММИРУЕМОГО СЛОЖНОФУНКЦИОНАЛЬНОГО (IP) БЛОКА ЦИФРОВОЙ ОБРАБОТКИ СИГНАЛА В докладе рассматриваются особенности системы команд цифровых процессоров сигналов семейства TMS320C54x и варианты реализации блока декодирования команд для сложнофункционального блока, имеющего аналогичную архитектуру. Работа посвящена разработке многоцелевого программируемого IPблока для применения в различных устройствах класса «система-накристалле», ориентированных на цифровую обработку сигнала. В качестве прототипа была выбрана открытая модель OpenCores54x, представляющая собой вычислительное ядро процессора TMS320C54x. Наиболее важной и сложной частью данного проекта является разработка декодера команд, который должен обеспечить обработку набора команд и реализацию способов адресации процессора TMS320C54x. Система команд процессора содержит 130 инструкций, разделенных на четыре группы: арифметические операции, логические операции, команды управления и команды пересылки данных [2]. Команды используют 7 основных способов адресации (непосредственная, абсолютная, прямая, косвенно-регистровая, косвенно-аккумуляторная, стековая и адресация для отображаемых в памяти регистров) с различными модификациями. Важной частью работы являлось составление таблицы соответствия инструкций процессора и сигналов, управляющих отдельными модулями процессора, а также значениями регистров управления и состояния. Управляющие сигналы были сгруппированы в соответствии с использующими их модулями. В ходе работы были последовательно рассмотрены три варианта реализации декодера. Первый – наиболее прямолинейный. Каждый управляющий сигнал определяется как логическая функция от состояния шины программ. Соответственно, декодер представляет собой комбинационную схему. Благодаря тому, что коды сходных по функциональности инструкций имеют совпадающие поля, становится возможным сгруппировать их. Но модель на языке описания аппаратуры получилась громоздкой и неудобной при написании (пришлось использовать вспомогательную про_______________________________________________________________________ ISBN 978-5-7262-0883-1. НАУЧНАЯ СЕССИЯ МИФИ-2008. Том 8 179 УДК 621.382(06) Микро- и наноэлектроника грамму-генератор кода) и отладке. Длинные комбинационные цепочки вносят существенные задержки. Второй вариант был основан на использовании памяти микрокоманд. Модель устройства включала в себя ПЗУ и схему формирования адреса ПЗУ на основе кода инструкции. Такая схема успешно синтезирована для ПЛИС серии Xilinx Virtex 4. Третий вариант использует объединение сигналов в группы в соответствии с управляемыми ими модулями процессора. При этом, рассматривая сигналы отдельного модуля, можно выделить «устойчивые сочетания» значений этих сигналов, обеспечивающие выполнение этим блоком определенных операций. Пример «устойчивого сочетания» - значение сигналов выключенного блока – каждый блок имеет набор значений сигналов, соответствующих его незадействованному состоянию. Это позволило ввести понятие промежуточного кода операции блока ядра, разрядность которого для любого из блоков меньше, чем совокупная разрядность управляющих сигналов этого блока. Декодирование команды разбито на две стадии: - определение кода операции блока ядра для каждого блока – на этой стадии производится выбор операции, которую будет производить каждый блок ядра, - определение управляющих сигналов по известному коду операции блока ядра – декодирование кода операции блока ядра. Третий вариант является оптимальным как по производительности, так и по занимаемой площади на кристалле. Также он предоставляет возможность модификации и модернизации. В настоящий момент ведется работа по разработке блоков генерации адресов инструкций и данных, предназначенных для работы с декодером команд. Разработанный декодер позволяет обрабатывать и основные команды процессора TMS320C54x. Совместимость с системой команд процессорапрототипа позволит использовать при разработке прикладного программного обеспечения для проектируемого блока цифровой обработки сигналов большой набор средств программирования и отладки, имеющийся для семейства процессоров. Список литературы 1. TMS320С54x DSP Reference Set. Volume 1: CPU and Peripherals. spru131g.pdf 2. TMS320С54x DSP Reference Set. Volume 2: Mnemonic Instruction Set. spru172c.pdf _______________________________________________________________________ ISBN 978-5-7262-0883-1. НАУЧНАЯ СЕССИЯ МИФИ-2008. Том 8 180