固定小数点プログラム開発の手間を省ける組み込み機器向けDSPコアを開発 ──15人日でMP3デコーダを開発可能に

小林士朗

tag: 半導体

技術解説 2003年9月16日

●ディジタル信号処理の入り口は浮動小数点

 プロセッサに実装するディジタル信号処理のアプリケーション・プログラムは,一般に,図3のフローに従って開発されます.図3は,ターゲット・プロセッサの算術方式ごとに,上から順に,浮動小数点の場合,ブロック浮動小数点の場合,固定小数点の場合を示しています.ここで,ターゲット・プロセッサとは,組み込み機器の中でアプリケーション・プログラムを実行するプロセッサを指しています.

 ディジタル信号処理のアプリケーション・プログラム開発は,アプリケーションを実現する信号処理機能の流れ(アルゴリズム)を決定する作業から始まります.この段階で,アルゴリズムを記述した機能検証用モデルを開発します.このモデルは,C言語や米国The MathWorks社のMATLABなどを用いて,汎用コンピュータ(パソコンやワークステーション)上で開発します.機能検証用モデルを,汎用コンピュータ上で動作するプログラムととらえることもできます.アルゴリズムの検証が目的のこの段階では,すべてのデータを浮動小数点データ・フォーマットで表現します.例えば,C言語であればfloat型やときにはdouble型を用います.

 この機能検証用モデルに音声データや画像データを与えて,実際に信号処理を行ってみます.例えば,携帯型オーディオ機器のMP3,WMA(Windows Media Audio),ATRAC(adaptive transform acoustic coding)のようなオーディオ信号の圧縮/伸張アプリケーションの場合,実際にオーディオ信号を入力し,圧縮/伸張したうえで,元の信号との差を定量的に評価したり,実際に音を聞いて聴覚上おかしな現象が起きないかどうかを確認したりします.数多くのテスト・データを用いて主観評価を含む評価作業を行うため,機能検証モデルの開発には膨大な時間がかかります.

f03_01.gif
〔図3〕ディジタル信号処理アプリケーション・プログラムの開発フロー
固定小数点,浮動小数点,ブロック浮動小数点のそれぞれについて,アプリケーション・プログラムの開発フローを示す.固定小数点では,固定小数点機能モデルの開発に工数の大半をかける必要がある.このようなモデル開発の必要がない浮動小数点およびブロック浮動小数点は,浮動小数点機能モデルから直接ターゲット・プロセッサ用プログラムを開発できる.

組み込みキャッチアップ

お知らせ 一覧を見る

電子書籍の最新刊! FPGAマガジン No.12『ARMコアFPGA×Linux初体験』好評発売中

FPGAマガジン No.11『性能UP! アルゴリズム×手仕上げHDL』好評発売中! PDF版もあります

PICK UP用語

EV(電気自動車)

関連記事

EnOcean

関連記事

Android

関連記事

ニュース 一覧を見る
Tech Villageブログ

渡辺のぼるのロボコン・プロモータ日記

2年ぶりのブログ更新w

2016年10月 9日

Hamana Project

Hamana-8最終打ち上げ報告(その2)

2012年6月26日