Назад
2
eXpressDSP For Dummies
eXpressDSP
для «чайников»
Перевод с английского
Новосибирск 2004 г.
3
Перевод был выполнен в рамках Европейской университетской программы
фирмы Texas Instruments благодаря руководителю программы Роберту Оуэну и
представителю программы в странах СНГ Алексею Александровичу Петровско-
му, а также при поддержке Ильи Ефимовича Фурмана (фирма «Компэл», г. Моск-
ва) и Александра Михайловича Забрудских (фирма «Сибэлектронкомплект», г.
Новосибирск).
Перевод: А. П. Рысева (Введение, главы 1 - 2), А
. С. Иванов (главы 3 - 6), А.
И. Лукашенко (главы 6 - 7), В. В. Эйхлер (главы 7 – 9, индексация), под редакци-
ей проф. В. К. Макухи.
Компьютерная верстка: С. А. Маслов.
4
eXpressDSP For Dummies*
Published by
Wiley Publishing, Inc.
909 Third Avenue New York. NY 10022
Copyright © 2003 by Wiley Publishing, Inc., Indianapolis, Indiana Published
by Wiley Publishing, Inc., Indianapolis, Indiana Published simultaneously in
Canada
No part of this publication may be reproduced, stored in a retrieval system or transmitted in any form
or by any means, electronic, mechanical, photocopying, recording, scanning or otherwise, except as
permitted under Sections 107 or 108 of the 1976 United States Copyright Act, without either the prior
written permission of the Publisher, or authorization through payment of the appropriate per-copy fee
to the Copyright Clearance Center, 222 Rosewood Drive, Danvers, MA 01923, (978) 750-8400, fax
(978) 646-8700. Requests to the Publisher for permission should be addressed to the Legal Depart-
ment, Wiley Publishing, Inc., 10475 Crosspoint Blvd., Indianapolis, IN 46256, (317) 572-3447, fax
(317) 572-4447, e-mail: permcoordi nator@wi 1 ey. com.
Trademarks: Wiley, the Wiley Publishing logo, For Dummies, the Dummies Man logo, A Reference
for the Rest of Us!, The Dummies Way, Dummies Daily, The Fun and Easy Way, Dummies.com and
related trade dress are trademarks or registered trademarks of Wiley Publishing, Inc., in the United
States and other countries, and may not be used without written permission. eXpressDSP is a trade-
mark of Texas Instruments, Inc. All other trademarks are the property of their respective owners.
Wiley Publishing, Inc., is not associated with any product or vendor mentioned in this book.
LIMIT OF LIABILITY/DISCLAIMER OF WARRANTY: WHILE THE PUBLISHER AND
AUTHOR HAVE USED THEIR BEST EFFORTS IN PREPARING THIS BOOK, THEY
MAKE NO REPRESENTATIONS OR WARRANTIES WITH RESPECT TO THE ACCU-
RACY OR COMPLETENESS OF THE CONTENTS OF THIS BOOK AND SPECIFI-
CALLY DISCLAIM ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FIT-
NESS FOR A PARTICULAR PURPOSE. NO WARRANTY MAY BE CREATED OR EX-
TENDED BY SALES REPRESENTATIVES OR WRITTEN SALES MATERIALS. THE
ADVICE AND STRATEGIES CONTAINED HEREIN MAY NOT BE SUITABLE FOR
YOUR SITUATION. YOU SHOULD CONSULT WITH A PROFESSIONAL WHERE AP-
PROPRIATE. NEITHER THE PUBLISHER NOR AUTHOR SHALL BE LIABLE FOR
ANY LOSS OF PROFIT OR ANY OTHER COMMERCIAL DAMAGES, INCLUDING BUT
NOT LIMITED TO SPECIAL, INCIDENTAL, CONSEQUENTIAL, OR OTHER DAM-
AGES.
For general information on our other products and services or to obtain technical support, please con-
tact our Customer Care Department within the U.S. at 800-762-2974, outside the U.S. at 317-572-
3993, or fax 317-572-4002.
Wiley also publishes its books in a variety of electronic formats. Some content that appears in print
may not be available in electronic books.
Library of Congress Control Number: ISBN: 0764524887
Manufactured in the United States of America
10 987654321
1O/SR/QU/QT
WILEY is a trademark of Wiley Publishing, Inc.
5
Об авторах
Steve Blonstein: Steve Blonstein технический директор в Texas Instru-
ments – отдела систем разработки программного обеспечения (Software
Development Systems). Последние 20 лет он был занят разработкой
встроенных системам, программированием всего от младших 8-ми бит-
ных микроконтроллеров до реальных 32-х битных DSP. Он провел по-
следние 5 лет на Texas Instruments фокусируясь на разработке eX-
pressDSP - методологии программирования специально разработанной
для семейства DSP TMS320 Texas Instruments.
Когда он не пытается облегчить
программирование DSP TI, Steve любит
проводить время, летая на своем самолете, с женой Andrea и тремя деть-
ми Samantha, Danielle и Nicolas, в их доме в Palo Alto, штат Калифорния.
Maher Katorgi: Maher Katorgi – участник технического состава Texas
Instruments (TI), где он проработал последние три года помогая вводить
и поддерживать базовые технологии программного обеспечения eX-
pressDSP TI’s, включая XDAIS, BIOS и шаблоны приложений для по-
требителей DSP TI. Более 14 лет он вложил
в разработку программного
обеспечения и развития опыта для биомедицинских, автомобильных, те-
лематических и аудио-видео приложений. Maher имеет степень магистра
в области вычислительной техники университета Case Western Reserve в
Кливленде, штат Огайо.
Когда он не занят работой, Maher любит оттачивать свое умение дерево-
обработки и проводить время со своей женой Nisrine, и двумя дочерьми
Suma и Rania.
6
Содержание
Введение ........................................................................................................8
Глава 1: ................................14DSP – Болиды дорог программирования
Четыре уникальных свойства DSP ....................................................................... 14
DSP повсюду........................................................................................................... 19
Глава 2: ..........................................20Владение методом планирования:
ядро DSP/BIOS.........................................................................................20
Использование преимуществ масштабируемого программного ядра.............. 21
Использование программных прерыванийлегкий механизм планирования23
Анализ в реальном масштабе времени ................................................................ 24
И насколько большой?........................................................................................... 25
Глава 3:
.......................................................................................................27
Использование XDIAS – как движение по одной стороне
дороги
Здравый смыслмобильность и гибкость.......................................................... 28
Давайте быть последовательными ....................................................................... 30
Окончания............................................................................................................... 31
Совместное использование ценных ресурсов..................................................... 32
1DMA2 .................................................................................................................... 33
Измеримость ........................................................................................................... 33
Глава 4:
......................................................................................35
Проживание в полузаказном домешаблоны приложений
для DSP TMS320
Выбор архитектуры ............................................................................................... 35
Усиление с существующей инфраструктурой .................................................... 37
Различные уровни шаблонов приложений.......................................................... 38
Глава 5:
..............................................................................................45
Введение в стартовый набор DSP. Руководство по разработке
приложений
Начинаем работать над проектом устройства для воспроизведения/записи
аудио
........................................................................................................................ 45
Рассмотрение системных требований.................................................................. 46
Преодоление ужасающего чистого листа .............................................47
Глава 6: ......................49Начинаем работать с шаблонами приложений
Знакомство с основами шаблона приложений уровня 3.................................... 50
Установка и запуск приложение на RF3.............................................................. 50
7
Заглянем под капот: изучение работы приложения на RF3 .............................. 53
Глава 7: ........61Создание устройства записи и воспроизведения аудио
Удаление второго канала ...................................................................................... 62
Добавление программных потоков воспроизведения и записи ........................ 63
Интегрирование потоков Декодера и Кодера ..................................................... 70
Добавление движка плеера и записи.................................................................... 74
Изучение файлов интерфейса кодера и декодера G723..................................... 76
Построение и запуск проекта................................................................................ 81
Глава 8: ...................................................87Десять ресурсов eXpressDSP
www.dspvillage.com................................................................................................ 87
www.dspestore.com ................................................................................................. 87
Code Composer Studio ............................................................................................ 88
Стартовый набор DSP............................................................................................ 88
Каталог третьих сторон ......................................................................................... 88
Библиотеки для обработки сигналов ................................................................... 89
Указания по применению...................................................................................... 89
Обучение ................................................................................................................. 89
Форумы ................................................................................................................... 89
База знаний ............................................................................................................. 89
Глава 9: ...................................................90Десять фактов о eXpressDSP
Действительно Real Time ...................................................................................... 90
Видимость системы ............................................................................................... 90
Протестируй свои собственные алгоритмы ........................................................ 91
Относительная схема нумерации приложений eXpressDSP.............................. 91
Не первоапрельская шутка 2002 года .................................................................. 91
Правила XDIAS ...................................................................................................... 91
SPOX........................................................................................................................ 91
Изобилие плат......................................................................................................... 92
Виртуальная команда............................................................................................. 92
Code Composer Studio – Открыт? ......................................................................... 92
Индексы.......................................................................................................93
8
Введение
Сегодня цифровые сигнальные процессоры (Digital Signal Processors - DSP)
повсюду. Наверняка, зная об этом или не зная, Вы в течение прошедшего часа ис-
пользовали хотя бы один из них. DSP стали основой большинства цифровых со-
товых телефонов, широкополосных модемов, цифровых фотоаппаратов, MP3
плееров и т.д. Достоинство DSP состоит в том, что они программируемы. Единст-
венным ограничивающим фактором является творческая способность человека,
программирующего DSP.
Однако развитие средств разработки и программного обеспечения для DSP
исторически шло за развитием программных средств и программного обеспече-
ния для микропроцессоров общего применения. Это отставание придало средст-
вам разработки и программному обеспечению для DSP репутацию сложных и
громоздких в программировании. Более того, не секрет, что практически все про-
граммное обеспечение DSP имеет сильный
математический аппарат. Фактически
мы часто слышим, как программисты говорят, что их отпугивают математические
расчеты.
Но времена меняются, и в 1999 г. Texas Instruments (далее TI) захватил пер-
венство в создании DSP программирования, доступного для всех, через внедрение
eXpressDSP. eXpressDSP исключило большую часть низкоуровневого программи-
рования, необходимого для того, чтобы поставить DSP на ноги. Кроме того, это
создало новый
рынок готовых к использованию алгоритмов (со скрытым мощным
математическим аппаратом), дающих возможности целому новому классу прило-
жений.
«eXpressDSP для чайников» покажет Вам, как все это было сделано, и даст
возможность быстро разрабатывать свои собственные приложения из кубиков,
поставляемых нами.
Кому следует читать эту книгу
Всякий, желающий максимально использовать возможности DSP, может
извлечь пользу из прочтения этой книги. Разработчикам программного обеспече-
ния будет полезно познакомиться как с eXpressDSP, так и со специфическими
примерами реальных приложений, о которых мы расскажем. Каждый, сомневаю-
щийся в легкости программирования DSP, должен прочитать эту книгу. А вы, на-
зывающие себя менеджерами, смотрите. Эта штука
eXpressDSP сделает труд ва-
ших инженеров настолько продуктивным, что они смогут гораздо больше време-
ни проводить, валяясь на пляже. Не дожидайтесь, пока другие участники рынка
овладеют этой вещью раньше вас.
9
Как пользоваться этой книгой
«eXpressDSP для чайников» организована таким образом, что Вы можете
читать эту книгу как роман от корки до корки, или использовать ее как справоч-
ник, или, просто ссылаясь на оглавление, найти нужную Вам часть. Если Вы со-
вершенно незнакомы с этой темой, то мы рекомендуем изучить теорию, прежде
чем начать работать с
оборудованием. Вспомните бензопилу: впечатляющая, но
очень опасная в руках неопытных людей.
Как организована эта книга
Эта книга содержит 3 логически взаимосвязанные части, каждая из которых
пополнит ваши знания и практический опыт при работе с eXpressDSP.
Часть I: Принципы программирования в eXpressDSP
Эта часть дает полезный обзор принципов программирования DSP и рас-
сматривает детали того, как eXpressDSP помогает решить многие повседневные
задачи, с которыми сталкивается программист DSP.
Первая глава охватывает вопросы, которые делают программирование DSP
отличным от программирования многоцелевых микропроцессоров. Особое вни-
мание уделено порядку выполнения задач в DSP. Глава 2 описывает уникальное
программное ядро, которое действительно следит за
работой. TI называет это яд-
ро DSP/BIOS. Как мы упоминали ранее, мощный математический алгоритм явля-
ется важной частью законченной системы программного обеспечения DSP. И по
мере того, как все больше и больше этих алгоритмов становятся доступными в го-
товом виде, возрастает значение того, что все алгоритмы должны подчиняться
определенному своду правилвспомните движение
машин на дороге. Согласо-
ванность водителей при движении по одной и той же стороне дороги действи-
тельно помогает! Глава 3 рассматривает XDAIS – элемент eXpressDSP, который
регламентируетправила движения на дороге”. Наконец, в главе 4 рассмотрены
программные шаблоны eXpressDSP. Это оболочки полузаказных DSP приложе-
ний, которые используют в качестве рычагов DSP/BIOS и XDAIS и связывают их
вместе.
Часть II: Построение реального приложения сегодня
Часть II проведет вас через этапы построения реально работающей системы.
В этом примере Вы будете создавать цифровой аудио записывающий плеер. Эта
система похожа на упрощенный вариант обычных цифровых музыкальных плее-
ров, которыми пользуется большинство тинэйджеров. ОК, Вы тоже получите
одинно мы никому не скажем!
Часть III: Великолепная десятка
Характерная черта всех книг «Для чайников»: каждая глава Великолепной
Десятки дает десять полезных советов для вашего сведения. В восьмой главе рас-
10
сматривается десять наилучших ресурсов eXpressDSP. Глава 9 содержит десять
поразительных фактов об eXpressDSP, которые Вы не найдете где-либо еще.
Обозначения, используемые в этой книге
Мы используем несколько значков в этой книге для обозначения специфи-
ческой информации. Вот что каждый из них обозначает:
Эта картинка указывает на информацию, которая не является значи-
мой в понимании книги, но это то, что Вы можете найти интересным,
если желаете узнать, что происходит «внутри черного ящика».
Картинка предупреждения показывает на
информацию, которую Вы
определенно захотите прочитать. Пренебрежение информацией, обо-
значенной этим значком, приведет вас в ловушку, которую при со-
блюдении нашего совета можно легко избежать.
Значки совета довольно очевидныони выделяют подсказки в виде
сокращенных клавиатурных команд и способов, которые сделают
вашу жизнь легче.
Эта картинка обозначает информацию, которая должна
храниться в
вашей памятиполезные сведения, которые пригодятся вам, если
Вы собираетесь использовать DSP.
Соглашения eXpressDSP и другой важный мате-
риал
Книга «eXpressDSP для чайников» сосредоточена на программном обеспе-
чении, запускаемом непосредственно на DSP, которое мы будем часто называть
исполняемым программным обеспечением (run-time software).
Другая важная деталь истории DSP – средства разработки, которые вам сле-
дует использовать, чтобы писать, тестировать и запускать программное обеспече-
ние вашего DSP. Эти средства включают в себя среду разработки (Code Composer
Studio), эмуляторы и симуляторы DSP и
дополнительные средства. Эта книга не
пытается навязать вам использование именно этих средств и допускает, что Вы
можете использовать другие имеющиеся источники, чтобы разузнать поподроб-
нее о программных средствах DSP.
Мы предполагаем, что у вас есть доступ к одному из наших общих
стартовых наборов DSP (DSK – DSP Starter Kit), например,
TMS320C6711. Возможно книга «eXpressDSP для чайников» появи-
лась у
вас именно потому, что она включена в комплект одного тако-
го стартового набора DSP (именно так и произошло!!! – прим. пере-
водчика), поэтому Вы точно будете хорошо подготовлены. Эти набо-