
モトローラDSP56000 ( 56Kとも呼ばれる)は、モトローラセミコンダクタ(後のフリースケールセミコンダクタ、さらにNXP)が1986年から製造しているデジタル信号プロセッサ(DSP)チップのファミリーである[1] [2] [3] [4] [5]。後継モデルは2020年代でも製造されている。56kシリーズは主に信号処理を行う組み込みシステム向けであったが、NeXT、Atari Falcon030、SGI Indigoワークステーションなど、56001を使用している多くのコンピュータでも一時期非常に人気があった。 [6]アップグレードされた56kバージョンは、今日でもオーディオ機器、レーダーシステム、通信機器(携帯電話など)、その他さまざまな組み込みDSPアプリケーションで使用されている。56000は、更新された96000のベースとしても使用されたが、商業的には成功しなかった。 [アップデート]
技術的な説明
DSP56000 は、24ビットのプログラムワードと24 ビットのデータ ワードを持つ固定小数点演算を使用します。2 つの 24 ビットレジスタ(1 つの 48 ビット レジスタとも呼ばれます) が含まれています。また、2 つの 56 ビットアキュムレータ(それぞれ 8 ビットの「拡張」(ヘッドルームとも呼ばれます) が含まれています。それ以外は、アキュムレータは他の 24/48 ビット レジスタと同様です。修正ハーバード アーキテクチャプロセッサである 56k には、プログラム メモリ スペース/バスと 2 つのデータ メモリ スペース/バスの 3 つのメモリ スペース+バス(一部のモデルではオンチップ メモリ バンク) があります。[7]スタック領域は、メイン メモリ アドレス スペースとは別の「スタック メモリ スペース」と呼ばれる別のアドレス スペースに割り当てられます。[8]サブルーチン呼び出しや「長い割り込み」で使用されるスタックの深さは 15 です。 [9]
24 ビットが基本ワード長として選択されたのは、56000 の主な関心事であるオーディオ (サウンド) を処理するための適切な数値範囲と精度をシステムに提供したためです。[要出典] 24 ビットは144 dBのダイナミック レンジに相当し、アナログ/デジタル コンバーター(ADC) とデジタル/アナログ コンバーター(DAC) が 20 ビットを超えることはめったになかった 1980 年代には十分なものでした。1 つの例はADSLアプリケーションで、フィルターには通常 20 ビットの精度が必要です。左端の 4 ビットは通常、計算のオーバーフローを回避するのに十分な余裕があると考えられています。
このプロセッサは、最大指定クロック速度33MHzで1650万命令/秒(MIPS)を実行でき、[7]ブロック浮動小数点 FFTのハードウェアサポートを備えています。[7] 5V TTLレベルを使用し、約0.4Wを消費します。[7]
アプリケーションとバリエーション

ほとんどの設計では、56000 は 1 つのタスク専用です。これは、特殊なハードウェアを使用したデジタル信号処理がほとんどリアルタイムで、中断が許されないためです。時間的制約のない、それほど要求の厳しくないタスクの場合、設計者は通常、別のCPUまたはMCU を使用します。
56000は、1024ポイントの複雑な高速フーリエ変換(FFT)を59,898クロックサイクルで実行することができ、33MHzで1.8msかかります。[7]つまり、1秒あたり555回を超える操作速度で、MP3などのかなり高度なオーディオコーデックのリアルタイムデコードとエンコードの両方が可能で、ディスクへの直接録音が可能です。[10] [11]
ほとんどのデスクトップ コンピュータのCPUにSIMD命令が追加されたため、56000 のような専用 DSP チップは一部のアプリケーション分野から姿を消しましたが、通信やその他の専門的な用途では引き続き広く使用されています。このため、56800シリーズでは、シングル チップの「DSP コントローラ」ソリューションを作成する完全なMCUが追加されました。一方、 68000に 56000 を搭載した68456 では、その逆のことが起こりました。
56000の現在でもかなり普及しているモデルは、56301から始まる第3世代の56300ファミリーです。 [12] PCIインターフェースロジック、CRCプロセッサ、オーディオコンパンダーなどの特殊なアプリケーションがハードウェアおよびファームウェアに組み込まれたモデルがいくつかあります。コアクロック周波数は最大250MHzでした。[13]
56000は、Cコンパイラ、アセンブラ、命令セットシミュレータを含む包括的な開発ツールスイートを提供します。[14] [15] [16]
参考文献
- ^ モトローラ DSP56000 デジタル信号プロセッサ IEEE
- ^ freescale.com – DSP56000 24 ビット デジタル信号プロセッサ ファミリ マニュアル (2019 年アーカイブ)
- ^ DSP56000 ファミリを使用した小数および整数演算
- ^ プログラム可能な DSP アーキテクチャ
- ^ Motorola DSP56000 ファミリー最適化 C コンパイラ ユーザーズ マニュアル
- ^ atariforge.org – Atari Falcon030 回路図 Rev A 2015-07-24 に Wayback Machineでアーカイブ、1992-06-28
- ^ abcde freescale.com – 製品プレビュー、24 ビット デジタル信号プロセッサ、DSP56001A、1997 年 (2019 年アーカイブ)
- ^ 「DSP56000 24ビットデジタルシグナルプロセッサファミリーマニュアル」(PDF) 。p. 91(5–15)。 2019年1月19日時点のオリジナル(PDF)からアーカイブ。 2023年12月26日閲覧。
- ^ ab "DSP56000 24ビットデジタルシグナルプロセッサファミリーマニュアル" (PDF) . p. 29(2–5). 2019年1月19日時点のオリジナル(PDF)からアーカイブ。 2023年12月26日閲覧。
- ^ Scot Hacker. 「MP3 の仕組み: コーデックの内部」。MP3: 決定版ガイド。O'Reilly。2013年4 月 16 日閲覧。
- ^ Mike Adana. 「MP3 の開発」。MP3 ガイド ブログ。2013年4 月 16 日閲覧。
- ^ Motorola (1999年10月). 「56301 SPEC」(PDF) . 128IC . DSP56301P/D. 2020年8月15日時点のオリジナルよりアーカイブ(PDF) 2020年8月7日閲覧。
- ^ DSP56K ファミリの概要、Beyond DSPs、2010 年 11 月 (freescale/NXP) の 45 ページ以降。
- ^ 「Motorola DSP56000 ファミリー最適化 C コンパイラ ユーザーズ マニュアル、リリース 6.3」(PDF) 。2023 年 11 月 10 日閲覧。
- ^ 「MOTOROLA DSP ASSEMBLER REFERENCE MANUAL」(PDF) . 2023年11月12日閲覧。
- ^ 「MOTOROLA DSP SIMULATOR REFERENCE MANUAL」(PDF) . 2023年11月12日閲覧。
さらに読む
- 56000 ファミリー
- DSP56000 ファミリー マニュアル – Motorola
- DSP56000 / DSP56001 ユーザーズマニュアル – Motorola
- DSP56002 ユーザーズマニュアル – Motorola
- DSP56166 ユーザーズマニュアル – Motorola
- 56300ファミリー
- DSP56300 ファミリー マニュアル – NXP
- DSP56301 データシート – NXP
- DSP56309 データシート – NXP
- DSP56374 データシート – NXP
外部リンク
- フリースケール デジタル信号プロセッサ
- 56000 アーキテクチャ用のA56 フリーウェアアセンブラ
- 製品寿命プログラム
