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

小林士朗

tag: 半導体

技術解説 2003年9月16日

●15人日でMP3デコーダを開発

 MP3デコーダは,ビット・ストリームを浮動小数点フォーマットのスペクトラム・データにデコードする部分と,スペクトラム・データを音声データにデコードする部分から構成されます.今回の開発では,ビット・ストリームのデコード部をマイクロプロセッサで実現し,その後段に,浮動小数点データを階層的ブロック浮動小数点データに変換する専用ハードウェアを接続しました.本DSPコアを使って実装したのはステレオ・チャネル再生成,エイリアス削減,iMDCT(逆拡張離散コサイン変換),ポリフェーズ・フィルタの各機能です.

 ISO/IECが提供している参照モデル(C言語記述,32ビット浮動小数点)からDSPアセンブリ・プログラムを開発しました.参照モデルは理解しているがDSPアセンブリ・プログラムになじみのない技術者1名が,実働15日間で完成させました.参照モデルおよびDSPでデコードした音声を原音と比較する方法で実装の品質評価を行い,参照モデルとそん色のない音質を実現していることを確認しました.

 さらに,本DSPコアを用いて,ハンズフリー・システムに用いる定常ノイズ・キャンセラを開発しました.図10に示すのは,ノイズ・キャンセラに含まれる発話検出処理に関する実装の品質評価のもようです.浮動小数点機能モデルの計算結果をあらかじめファイルに出力し,DSP実装の結果と比較しています(二つの波形が重なれば品質が良い).同じアプリケーションを32ビット固定小数点RISCプロセッサに実装した結果も合わせて示しています.ダイナミック・レンジの必要な部分の一部を32ビットで,残りを16ビットで実装しています.DSP実装の結果ほどにはうまく浮動小数点の結果と一致していません.

 DSPプログラムの開発は,1名の研修生(修士課程在籍中)が担当しました.こちらは浮動小数点機能モデルを参照しながら,約10日間で完成させました.

f10_01.gif
〔図10〕信号処理精度の評価例
デバッガ出力の計算結果とあらかじめ計算した浮動小数点機能モデルの結果を視覚化することで,プログラムを簡単にデバッグできる.

組み込みキャッチアップ

お知らせ 一覧を見る

電子書籍の最新刊! 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日