(57)【特許請求の範囲】
【請求項１】
Ｎ個の第１のポート及びＪ個の第２のポートを有するマルチポートメモリモジュールであって、Ｎ及びＪが１より大きい整数である、マルチポートメモリモジュールと、
Ｎ個の第１のデータ通信バス及びＪ個の第２のデータ通信バスと、
前記Ｎ個の第１ポートのうちの対応する一つと、前記Ｎ個の第１データ通信バスのうちの対応する一つのデータ通信バス上で通信するＮ個のハードウェア高速化モジュールであって、前記Ｎ個のハードウェア高速化モジュールのうちの第１のハードウェア高速化モジュールが、第１の処理タスクをデータに対して実行して、該データを前記マルチポートメモリモジュールへ前記Ｎ個の第１のデータ通信バスのうちの第１のデータ通信バス上で送信し、前記Ｎ個のハードウェア高速化モジュールのうちの第２のハードウェア高速化モジュールが、前記データを前記マルチポートメモリモジュールから前記Ｎ個の第１のデータ通信バスのうちの第２のデータ通信バス上で受信して、第２の処理タスクを該データに対して実行し、該Ｎ個のハードウェア高速化モジュールは、処理タスクを実行している間、前記マルチポートメモリモジュールにおける中間データを格納する、Ｎ個のハードウェア高速化モジュールと、
前記Ｊ個の第２のデータ通信バスのうちの対応するデータ通信バス上で前記マルチポートメモリモジュールと通信する、Ｊ−Ａ個のＣＰＵ及びＪ−Ｂ個のダイナミックランダムアクセスメモリ（ＤＲＡＭ）モジュールと、
共用バスであって、該共用バスは、
第１のバス部と、
第２のバス部と、
前記第１のバス部及び前記第２のバス部と通信するバスブリッジと、
を備えており、
前記Ｎ個のハードウェア高速化モジュールが、前記第１のバス部上で第１の速度で通信し、前記Ｊ−Ａ個のＣＰＵ及びＪ−Ｂ個のダイナミックランダムアクセスメモリ（ＤＲＡＭ）モジュールが、前記第２のバス部上で第２の速度で通信する、共用バスと、
を備える、データ処理システム。
【請求項２】
前記データが、ビデオデータ及び制御データのうちの少なくとも一方である、請求項１記載のデータ処理システム。
【請求項３】
前記Ｎ個の第１のデータ通信バスにおける前記第１のデータ通信バス及び前記第２のデータ通信バスのうちの少なくとも一方が、第１のデータ幅を有し、前記Ｊ個の第２のデータ通信バスが第２のデータ幅を有する、請求項１記載のデータ処理システム。
【請求項４】
前記第１のデータ幅は、前記第２のデータ幅より小さい、請求項３記載のデータ処理システム。
【請求項５】
前記第１のデータ幅は、８ビット及び１６ビットのうちの少なくとも一つであり、前記第２のデータ幅は、３２ビット、６４ビット、及び１２８ビットのうちの少なくとも一つである、請求項４記載のデータ処理システム。
【請求項６】
少なくとも一つのサイドバンドプロセッサモジュールを更に備え、
前記少なくとも一つのサイドバンドプロセッサモジュールが、
命令密結合メモリ（ＩＴＣＭ）モジュールと、
プロセッサコアと、
データ密結合メモリ（ＤＴＣＭ）モジュールと、
を備える、請求項１記載のデータ処理システム。
【請求項７】
前記ＤＴＣＭモジュールが、前記マルチポートメモリモジュールと、前記ＤＴＣＭモジュールと前記マルチポートメモリモジュールの間のデータ転送を制御するダイレクトメモリアクセス（ＤＭＡ）モジュールと、通信する、請求項６記載のデータ処理システム。
【請求項８】
前記ＤＴＣＭモジュールが、デュアルポート又はマルチバンクのうちの少なくとも一方である、請求項６記載のデータ処理システム。
【請求項９】
請求項１記載のデータ処理システムを備える高精細テレビ（ＨＤＴＶ）。
【請求項１０】
Ｎ個の第１のポート及びＭ個の第２のポートを有し、Ｎ及びＭが１以上の整数である、マルチポートメモリモジュールと、
Ｎ個の第１のデータ通信バス及びＭ個の第２のデータ通信バスと、
前記Ｎ個の第１のポートのうちの対応する一つと、前記Ｎ個の第１のデータ通信バスのうちの対応する一つのデータ通信バス上で通信するＮ個のハードウェア高速化モジュール及び
前記Ｍ個の第２のポートのうちの対応する一つと、前記Ｍ個の第２のデータ通信バスのうちの対応する一つのデータ通信バス上で通信するＭ個のプログラム可能なサイドバンドプロセッサモジュールであって、
前記Ｎ個のハードウェア高速化モジュールのうちの一つが、第１の処理タスクをデータに対して実行して、該データを前記マルチポートメモリモジュールへ前記Ｎ個の第１のデータ通信バスのうちの一つのデータ通信バス上で送信し、
前記Ｍ個のプログラム可能なサイドバンドプロセッサモジュールのうちの一つが、前記データを前記マルチポートメモリモジュールから前記Ｍ個の第２のデータ通信バスのうちの一つのデータ通信バス上で受信して、第２の処理タスクを該データに対して実行し、
前記Ｎ個のハードウェア高速化モジュールは、処理タスクを実行している間、前記マルチポートメモリモジュールにおける中間データを格納する、
Ｎ個のハードウェア高速化モジュール及びＭ個のプログラム可能なサイドバンドプロセッサモジュールと、
共用バスであって、前記共用バスが、
前記Ｎ個のハードウェア高速化モジュール及び前記Ｍ個のプログラム可能なサイドバンドプロセッサモジュールと第１の速度で通信する第１のバス部と、
Ｊ−Ａ個のＣＰＵ及びＪ−Ｂ個のＲＡＭモジュールと第２の速度で通信する第２のバス部と、
前記第１のバス部及び前記第２のバス部と通信するバスブリッジと、
を有しており、
Ａ及びＢが１以上の整数であり、Ｊが１より大きい整数であり、Ａ＋Ｂ＝Ｊである、共用バスと、
を備える、データ処理システム。
【発明の詳細な説明】
【関連出願の相互参照】
【０００１】
[0001]本出願は、２００６年８月１４日に出願された米国特許仮出願第６０／８２２，３２０号、２００６年７月３１日に出願された米国特許仮出願第６０／８２０，８７１号、２００６年５月８日に出願された米国特許仮出願第６０／７９８，５６９号、及び２００６年１月１８日に出願された米国特許仮出願第６０／７５９，８６８号の利益を主張するものであり、２００５年１２月２０日に出願された米国特許仮出願第６０／７５２，５２２号に関連するものである。また、上記出願の開示を、その全体を参照することによって本明細書に組み込む。
【分野】
【０００２】
[0002]本開示は、データ処理アーキテクチャに関するものであり、より詳細には処理用のマルチポートデータメモリアーキテクチャに関するものである。
【背景】
【０００３】
[0003]通常、データ処理は、タスクをソフトウェアとハードウェアの間で分割することによってなされる。例えば、あるタスクは、複雑ではあるが必ずしも計算量の多いものではない。従って、そのタスクをソフトウェアによって実行することで十分である。別のタスクは、より計算量の多いものである。従って、そのタスクをハードウェアで実行することが効果的である。並列処理が、計算量の多いタスクの処理を高速化するために使用されることがある。並列処理は、ビデオ処理、ゲーム、数学モデリング、ビデオ会議、及び／又は他のアプリケーションにおいて使用されることがある。
【０００４】
[0004]種々の中央処理ユニット（ＣＰＵ）やハードウェア高速化モジュールは、通常、オンチップバスを介して互いに接続される。ＣＰＵ及び／又はハードウェア高速化モジュールの間のデータ転送は、比較的大きな帯域幅を必要とする。バスの数、又はオンチップバスの帯域幅を増加すると、データ転送に利用可能な帯域幅が増加する。しかしながら、この手法は、通常、コスト効率が良くない。例えば、多数のビデオストリームを処理することが可能なマルチチャネルのビデオプロセッサは、大きな帯域幅を要件とする。
【０００５】
[0005]ここで図１を参照する。この図は、データ処理システムのアーキテクチャ１０を示している。データ処理システム１０は、プロセッサモジュール、例えば、ＣＰＵ１２と総称するＣＰＵ１２−２及びＣＰＵ１２−２、並びに、ハードウェア高速化モジュール１４と総称するハードウェア高速モジュール１４−１及びハードウェア高速化モジュール１４−２を含んでいる。ＣＰＵ１２、ハードウェア高速化モジュール１４、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）モジュール２０、及びＤＲＡＭコントローラ２２は、通信バスを介して通信する。ＣＰＵ１２、ハードウェア高速化モジュール１４、通信バス２４、ＤＲＡＭモジュール２０、及び／又はＤＲＡＭコントローラ２２は、印刷回路基板（ＰＣＢ）上に設けられることがあり、又は、ＳＯＣ（system  on  a  chip）によって集積されることもある。ＣＰＵ１２、ハードウェア高速化モジュール１４、及びＤＲＡＭコントローラ２２は、通信バス２４を介して、メモリモジュール２８と通信する。処理システム１０の処理性能は、通信バス２４の能力によって制限される。換言すれば、処理速度は、通信バス２４の速度、及び／又は帯域幅によって制限される。
【概要】
【０００６】
[0006]データ処理システムは、Ｎ個のポート有するマルチポートメモリモジュールとＮ個のデータ通信バスを備えている。Ｎ個のハードウェア高速化モジュールが、それぞれＮ個のデータ通信バスのうちの一つのバス上で、それぞれＮ個のポートのうちの一つのポートと通信する。Ｎ個のハードウェア高速化モジュールのうちの第１のハードウェア高速化モジュールは、第１の処理タスクをデータに対して実行して、当該データをマルチポートメモリモジュールへＮ個のデータ通信バスのうちの第１の通信データバス上で送信する。Ｎ個のハードウェア高速化モジュールのうちの第２のハードウェア高速化モジュールは、データをマルチポートメモリモジュールからＮ個のデータ通信バスのうちの第２のデータ通信バス上で受信して、第２の処理タスクを当該データに対して実行する。ここで、Ｎは１より大きい整数である。
【０００７】
[0007]本発明の他の特徴では、データは、ビデオデータ及び制御データのうちの少なくとも一つを含む。マルチポートメモリモジュールは、インターリービングを用いるマルチバンクメモリを含んでいてもよい。マルチポートメモリモジュールは、マルチポートデータ密結合メモリ（ＭＰ−ＤＴＣＭ）モジュールを含んでいてもよい。マルチポートメモリモジュールは、Ｊ個の追加のポート、及びＪ個の追加のデータ通信バスを含んでいてもよい。Ｊ−Ａ個のプロセッサモジュール、及びＪ−Ｂ個のダイナミックランダムアクセスメモリ（ＤＲＡＭ）モジュールが、それぞれＪ個のデータ通信バスのうちの一つのバス上で、マルチポートメモリモジュールと通信する。ここで、Ｊは、１より大きい整数であり、Ａ及びＢは１以上の整数であり、Ａ＋Ｂ＝Ｊである。Ｎ個のデータ通信バスにおける第１のデータ通信バス及び第２のデータ通信バスのうちの少なくとも一つは、第１のデータ幅を有し、Ｊ個のデータ通信バスは第２のデータ幅を有する。第１のデータ幅は第２のデータ幅より少ないビット数を有する。第１のデータ幅は、８ビット及び１６ビットのうちの少なくとも一つであり、第２のデータ幅は、３２ビット、６４ビット、及び１２８ビットのうちの少なくとも一つである。
【０００８】
[0008]本発明の更に別の特徴では、データ処理システムは、更に、少なくとも一つのプログラム可能なサイドバンドプロセッサモジュールを備えている。少なくとも一つのプログラム可能なサイドバンドプロセッサモジュールは、命令密結合メモリ（ＩＴＣＭ）モジュール、プロセッサコア、及びデータ密結合メモリ（ＤＴＣＭ）モジュールを備えている。ＤＴＣＭモジュールは、マルチポートメモリモジュールと通信し、ダイレクトメモリアクセス（ＤＭＡ）モジュールが、ＤＴＣＭモジュールとメモリモジュール間のデータ転送を制御する。ＤＴＣＭモジュールは、デュアルポート及びマルチバンクの少なくとも一方である。データ処理システムは、更に共用バスを備えている。共用バスは、第１のバス部及び第２のバス部を備えている。バスブリッジが、第１のバス部及び第２のバス部と通信する。Ｎ個のハードウェア高速化モジュールは、第１のバス部上において第１の速度で通信し、Ｊ−Ａ個のプロセッサモジュール及びＪ−Ｂ個のＤＲＡＭモジュールは、第２のバス部上において第２の速度で通信する。
【０００９】
[0009]本発明の更に別の特徴では、プログラム可能なサイドバンドプロセッサモジュールが、８ビットデータ及び１６ビットの倍数のデータの少なくとも一つを処理する。プログラム可能なサイドバンドプロセッサモジュールは、単一命令複数データ（ＳＩＭＤ）プロセッサを含む。高精細テレビ（ＨＤＴＶ）が、上記のデータ処理システムを備える。
【００１０】
[0010]また、データ処理システムが、Ｎ＋Ｍ個のポートを有するマルチポートメモリモジュール、及びＮ＋Ｍ個のデータ通信バスを備える。Ｎ個のハードウェア高速化モジュールが、それぞれＮ個のデータ通信バスのうちの一つのバス上で、それぞれＮ個のポートのうちの一つポートと通信する。Ｍ個のプログラム可能なサイドバンドプロセッサモジュールが、それぞれＭ個のデータ通信バスのうちの一つのバス上で、それぞれＭ個のポートのうちの一つのポートと通信する。Ｎ個ハードウェア高速化モジュールのうちの一つは、第１の処理タスクをデータに対して実行して、当該データをマルチポートメモリモジュールにＮ個のデータ通信バスのうちの一つのバス上で送信し、Ｍ個のプログラム可能なサイドバンドプロセッサモジュールのうち一つは、データをマルチポートメモリモジュールからＭ個のデータ通信バスのうちの一つのバス上で受信し、第２の処理タスクを当該データに対して実行する。ここで、Ｎ及びＭは１以上の整数である。
【００１１】
[0011]本発明の別の特徴では、マルチポートメモリモジュールは、Ｊ個の追加のポートを含む。共用バスが、Ｎ個のハードウェア高速化モジュール及びＭ個のプログラム可能なサイドバンドプロセッサモジュールと第１の速度で通信する第１のバス部を有し、第２のバス部が、Ｊ−Ａ個のプロセッサモジュール及びＪ−Ｂ個のＲＡＭモジュールと第２の速度で通信し、バスブリッジが、第１のバス部及び第２のバス部と通信する。ここで、Ｊは１より大きい整数であり、Ａ及びＢは１以上の整数であり、Ａ＋Ｂ＝Ｊである。
【００１２】
[0012]また、データ処理システムが、データを格納し且つＮ個のポートを有するマルチポートメモリ手段と、データを送信するためのＮ個のデータ通信バスと、それぞれＮ個のデータ通信バスのうちの一つのバス上で、それぞれＮ個のポートのうちの一つのポートと通信するためのＮ個のハードウェア高速化手段と、を備える。Ｎ個のハードウェア高速化手段のうち第１のハードウェア高速化手段は、第１の処理タスクをデータに対して実行して、当該データをマルチポートメモリ手段にＮ個のデータ通信バス手段のうちの第１のバス手段上で送信し、Ｎ個のハードウェア高速化手段のうちの第２のハードウェア高速化手段は、データをマルチポートメモリ手段からＮ個のデータ通信バス手段のうちの第２のバス手段上で受信して、第２の処理タスクを当該データに対して実行する。ここで、Ｎは、１より大きい整数である。
【００１３】
[0013]本発明の別の特徴では、データは、ビデオデータ及び制御データのうちの少なくとも一方を含む。マルチポートメモリ手段は、マルチポートデータ密結合メモリ（ＭＰ−ＤＴＣＭ）モジュールを含む。マルチポートメモリ手段は、Ｊ個の追加のポート、及びＪ個の追加のデータ通信バスを含む。データ処理システムは、それぞれＪ個のデータ通信バス手段のうちの一つのバス手段上でマルチポートメモリ手段と通信するＪ−Ａ個のプロセッサ手段、及びＪ−Ｂ個のダイナミックランダムアクセスメモリ（ＤＲＡＭ）手段を備える。ここで、Ｊは１より大きい整数であり、Ａ及びＢは１以上の整数であり、Ａ＋Ｂ＝Ｊである。Ｎ個のデータ通信バス手段における第１のバス手段及び第２のバス手段のうちの少なくとも一つは、第１のデータ幅を有し、Ｊ個のデータ通信バス手段は、第２のデータ幅を有する。第１のデータ幅は、第２のデータ幅より少ないビットを有する。第１のデータ幅は、８ビット及び１６ビットのうちの少なくとも一つであり、第２のデータ幅は、３２ビット、６４ビット、及び１２８ビットのうちの少なくとも一つである。
【００１４】
[0014]本発明の更に別の特徴では、データ処理システムは、更に、ハードウェア高速化機能を実行する少なくとも一つのプログラム可能なサイドバンドプロセッサ手段を備える。少なくとも一つのプログラム可能なサイドバンドプロセッサ手段は、命令密結合メモリ（ＩＴＣＭ）モジュール、プロセッサコア、及びデータ密結合メモリ（ＤＴＣＭ）モジュールを含む。ＤＴＣＭモジュールは、マルチポートメモリ手段と通信し、ダイレクトメモリアクセス（ＤＭＡ）モジュールがＤＴＣＭモジュールとマルチポートメモリ手段との間のデータ転送を制御する。ＤＴＣＭモジュールは、デュアルポート及びマルチバンクのうちの少なくとも一方である。データ処理システムは、更に共用バスを備える。共用バスは、Ｎ個のハードウェア高速化手段と第１の速度で通信する第１のバス部手段、プロセッサ手段及びＤＲＡＭ手段のうちの少なくとも一方と第２の速度で通信する第２の共用バス手段、及び、第１のバス部手段及び第２のバス部手段と通信するバスブリッジ手段とを備える。
【００１５】
[0015]本発明の更に別の特徴では、プログラム可能なサイドバンドプロセッサ手段は、８ビットデータ及び１６ビットの倍数のデータのうち少なくとも一つを処理する。プログラム可能なサイドバンドプロセッサ手段は、単一命令複数データ（ＳＩＭＤ）プロセッサを含む。高精細テレビ（ＨＤＴＶ）が、上記のデータ処理システムを備える。
【００１６】
[0016]また、データ処理方法は、Ｎ個のハードウェア高速化モジュールのうちの第１のハードウェア高速化モジュールで、第１の処理タスクをデータに対して実行するステップと、当該データを、それぞれマルチポートメモリモジュールのＮ個のポートのうちの第１のポートに、それぞれＮ個のデータ通信バスのうちの第１のデータ通信バス上で、送信するステップと、当該データを、それぞれマルチポートメモリモジュールのＮ個のポートのうちの第２のポートから、Ｎ個のハードウェア高速化モジュールのうちの第２のハードウェア高速化モジュールにおいて、それぞれＮ個のデータ通信バスのうちの第２のデータ通信バス上で、受信するステップと、Ｎ個のハードウェア高速モジュールのうちの第２のハードウェア高速化モジュールで、第２の処理タスクを当該データに対して実行するステップとを、含む。ここで、Ｎは、１より大きい整数である。
【００１７】
[0017]本発明の他の特徴では、データは、ビデオデータ及び制御データのうちの少なくとも一つを含む。マルチポートメモリモジュールは、マルチポートデータ密結合メモリ（ＭＰ−ＤＴＣＭ）モジュールを含む。このデータ処理方法は、更に、Ｊ−Ａ個のプロセッサモジュール及びＪ−Ｂ個のダイナミックランダムアクセスメモリ（ＤＲＡＭ）モジュールのうち少なくとも一方と、マルチポートメモリモジュールを用いて、Ｊ個の追加のデータ通信バスのうちのそれぞれのバス上で、通信するステップを含む。ここで、Ｎは、１より大きい整数であり、Ａ及びＢは１以上の整数であり、Ａ＋Ｂ＝Ｊである。Ｎ個のデータ通信バスにおける第１のデータ通信バス及び第２のデータ通信バスのうち少なくとも一方は、第１のデータ幅を有し、Ｊ個の追加のデータ通信バスは第２のデータ幅を有する。第１のデータ幅は、第２のデータ幅より少ないビットを有する。第１のデータ幅は、８ビット及び１６ビットのうち少なくとも一方であり、第２のデータ幅は、３２ビット、６４ビット、及び１２８ビットのうち少なくとも一方である。
【００１８】
[0018]本発明の更に別の特徴では、データ処理方法は、更に、ハードウェア高速化機能をプログラム可能なサイドバンドプロセッサモジュールで実行するステップを含む。プログラム可能なサイドバンドプロセッサモジュールは、命令密結合メモリ（ＩＴＣＭ）モジュール、プロセッサコア、及びデータ密結合メモリ（ＤＴＣＭ）モジュールを含む。ＤＴＣＭモジュールは、マルチポートメモリモジュールと通信し、ダイレクトメモリアクセス（ＤＭＡ）モジュールは、ＤＴＣＭモジュールとマルチポートメモリモジュールとの間のデータ転送を制御する。ＤＴＣＭモジュールは、デュアルポート及びマルチバンクのうち少なくとも一方である。このデータ処理方法は、更に、共用バスの第１のバス部上において第１の速度でＮ個のハードウェア高速化モジュールと通信するステップと、共用バスの第２のバス部上において第２の速度でＪ−Ａ個のプロセッサモジュールとＪ−Ｂ個のＤＲＡＭモジュールと通信するステップと、ブリッジバスを用いて第１のバス部及び第２のバス部と通信するステップと、を含む。プログラム可能なサイドバンドプロセッサモジュールは、８ビットデータ及び１６ビットの倍数のデータのうち少なくとも一方を処理する。プログラム可能なサイドバンドプロセッサモジュールは、単一命令複数データ（ＳＩＭＤ）プロセッサを含む。
【００１９】
[0019]更に別の特徴では、上記システム及び方法は、１以上のプロセッサによって実行されるコンピュータプログラムによって実装される。コンピュータプログラムは、これらに限定されるものではないが、メモリ、不揮発性のデータ格納装置、及び／又は他の適当な有形の格納媒体といった、コンピュータ読み取り可能な媒体上に常駐していてもよい。
【００２０】
[0020]本開示の更なる応用の範囲は、以下の詳細な説明から明らかとなろう。詳細な説明及び特定の例は、本開示の好適な実施の形態を示しているが、例示の目的を意図するものであり、本開示の範囲を限定することを意図していない。
【００２１】
[0021]本開示は、詳細な説明及び添付の図面からより完全に理解されよう。
【詳細な説明】
【００２２】
[0032]以下の説明は、本質的には単に例示のためのものであり、本開示、その応用、又は使用を限定することを全く意図していない。明確にするために、同一の参照番号を図面において使用して同様の要素を特定する。本明細書で使用されるものとして、モジュール、回路、及び／又はデバイスとの用語は、特定用途向け集積回路（ＡＳＩＣ）、電子回路、１以上のソフトウェア又はファームウェアプログラムを実行するプロセッサ（共用、専用、又はグループ）とメモリ、組合せ論理回路、及び／又は、説明する機能を提供する他の適切な部品を指すものである。本明細書で使用されるものとして、Ａ、Ｂ及びＣの少なくとも一つとの文は、非排他的論理ＯＲを使用する論理学上の（Ａ又はＢ又はＣ）を意味するものと解釈されるべきものである。また、方法における各ステップは、異なる順序で本開示の原理を変更することなく、実行してもよいことを理解されたい。
【００２３】
[0033]本発明によれば、処理システムは、マルチーポートのデータメモリアーキテクチャを含んでいる。例示のマルチポートメモリアーキテクチャは、”Multiport  Memory  Architecture,  Devices  and  Systems  Including  the  Same,  and  Methods  of  Using  the  Same”と題する２００３年１１月５日に出願された米国特許出願第１０／７０２，７４４号に説明されており、この出願をその全体を参照することによって本明細書に組み込む。
【００２４】
[0034]ここで、図２を参照する。マルチポートメモリモジュール１００（即ち、マルチポートメモリアーキテクチャに基づいて構成されているメモリモジュール）は、メモリアレイ１１０、ライトポートバッファ（write  port  buffer)１１２−１，１１２−２，１１２−３，．．．，１１２−ｎ（ライトポートバッファ１１２と総称する）、リードポートバッファ(read  port  buffer)１１３−１，１１３−２，１１３−３，．．．，１１３−ｍ（ライトポートバッファ１１３と総称する）、ライトポート１１４−１，１１４−２，１１４−３，．．．，１１４−ｎ（ライトポート１１４と総称する）、リードポート１１５−１，１１５−２，１１５−３，．．．，１１５−ｍ（リードポート１１５と総称する）、並列のリードレジスタ１１６及びライトレジスタ１１８、並びに、「スヌープ（snoop）」レジスタ１２０を含んでいる。
【００２５】
[0035]ポートバッファ１１２は、１以上のレジスタ、若しくは、フリップフロップのバンク、ラッチ、レジスタ、及び／又は、ポート１１４とメモリアレイ１１０との間のデータの送受に適した他の任意のデバイス又はモジュールを含む。ポートバッファ１１２とメモリアレイ１１０は、バス（例えば、共用メモリライトバス１２２、及び共用メモリリードバス１２４）を介して通信する。マルチポートメモリモジュール１００は、単一ポートメモリ構造を有するように示されているが、当業者であればデュアルポートメモリ構造を使用し得ることを理解することができる。
【００２６】
[0036]メモリアレイ１１０は、複数のメモリサブアレイ（図示せず）を備えていてもよい。これらサブアレイは、メモリの１以上の行、列、ブロック、及び／又はページを有していてもよい。メモリの行、列、ブロック、及び／又はページの各々は、当該行、列、ブロック、及び／又はページに対応する固有のメモリアドレスによって特定可能であり、及び／又は、アクセス可能である。メモリアレイ１１０とポートバッファ１１２のうちの一つとの間で転送されるデータの各ブロックは、一つのページのデータを含む。通常は、メモリアレイ１１０の最小密度は、２５６ｋｂ又は１Ｍｂである。メモリアレイ１１０の最大密度は限定されていないが、通常の最大密度は３２Ｍｂ、６４Ｍｂ、又は１２８Ｍｂである。メモリアレイ１１０は、ラッチ、スタティックランダムアクセスメモリ（ＳＲＡＭ），ダイナミックランダムアクセスメモリ（ＤＲＡＭ）、磁気ランダムアクセスメモリ（ＭＲＡＭ）、電気的消去及びプログラム可能リードオンリーメモリ（ＥＥＰＲＯＭ）、及びフラッシュメモリを含んでいてもよい。メモリアレイ１１０は、また、同期又は非同期であってもよい。
【００２７】
[0037]ポートバッファ１１２は、メモリアレイ１１０に「密結合」されていてもよい。メモリアーキテクチャが密結合である場合には、複数のプロセッサが、メモリモジュールに直接的に結合されるか、又は、メモリモジュールに共用メモリバスを介して結合される。メモリバス１２２及び１２４は、抵抗−容量（ＲＣ）成分、例えば、バスの長さ（抵抗に対応するもの）、及び／又はバスにおいて近接する金属線間の寄生容量を低減し又は最小化するように設計されている。その結果、帯域幅及びメモリアクセス効率が向上する。ポートバッファ１１２とメモリアレイ１１０の間の通信は、メモリアレイに密結合されたポートバッファ内のクロック回路要素によって遅らされないことが好ましい。
【００２８】
[0038]メモリアレイ１１０は、マルチバンクのダイナミックランダムアクセスメモリ（ＭＤＲＡＭ）を、密結合メモリに代えて、及び／又は密結合メモリに加えて含んでいてもよい。従来のメモリは、通常、一つのバッファ用に単一のモノリシック「ブロック」のメモリを使用している。ＭＤＲＡＭは、そのメモリを、個別にアクセス可能な複数の３２ＫＢのバンクに分割する。その結果、メモリアクセスを、バンク間でインタリーブして（交互に行って）、メモリアクセスがオーバーラップすることを可能とし、より優れた性能を提供することを可能とする。
【００２９】
[0039]次に図３を参照する。マルチポートメモリシステム１４０は、マルチポートメモリモジュール１００を含んでいる。マルチポートメモリシステム１４０は、プロセッサモジュール（ＣＰＵ）１４２−１，１４２−２，．．．，１４２−ｘ（ＣＰＵ１４２と総称する）、ハードウェア高速化モジュール１４４−１，１４４−２，．．．，１４４−ｙ（ハードウェア高速化モジュール１４４と総称する）、ＤＲＡＭコントローラ１４６、及びＤＲＡＭモジュール１４８を含んでいる。例えば、ＣＰＵ１４２は、一般的なソフトウェア及びファームウェアの命令を実行するプロセッサである。ハードウェア高速化モジュール１４４はそれぞれ、マルチポートメモリモジュール１００と、個々の（即ち専用の）バス１５０−１，１５０−２，．．．，１５０−ｙ（バス１５０と総称する）を介して通信する。より詳細には、ハードウェア高速化モジュール１４４はそれぞれ、マルチポートメモリモジュール１００と、図１について上述した共用バスを共用する代わりに、専用のバスを介して通信する。ＣＰＵ１４２及びＤＲＡＭコントローラ１４６は、単一のバスを共用してもよく、又は、個別のバス１５６及び１５８−１、１５８−２，．．．，１５８−ｘ（バス１５８と総称する）上で、図示のように、通信する。
【００３０】
[0040]次に図４を参照する。ハードウェア高速化モジュール１４４のそれぞれは、個別に、マルチポートメモリモジュール１００と、バス１６０及び１６２を介して通信する。通常、ハードウェア高速化バスは、３２ビットのデータ幅を有する。ここで、バス１６０及び１６２は、配線の密集を最小化し、ダイのサイズを減らすために、より狭いものであってもよい。例えば、バス１６０及び１６２は、８ビット又は１６ビットのデータ幅を有していてもよい。バス１６０は、（図２に示すようにライトポート１１４を介して）マルチメモリモジュール１００のライトポートバッファ１１２と通信するライトバスである。逆に、バス１６２は、（図２に示すようにリードポート１１５を介して）リードポートバッファ１１３と通信するリードバスである。マルチポートメモリモジュール１００は、ＣＰＵ１４２及び／又はＤＲＡＭコントローラ１４６と通信する追加のリードポートバッファ１６４−１，１６４−２，．．．，１６４−ｚ（リードポートバッファ１６４と総称する）を含んでいてもよい。リードポートバッファ１６４は、６４ビット、１２８ビット、又はより大きいデータ幅を有する。換言すれば、ＣＰＵ１４２及び／又はＤＲＡＭコントローラ１４６は、マルチポートメモリモジュール１００と、ハードウェア高速化モジュール１４４より大きなデータ幅を維持するバスを介して、通信してもよい。
【００３１】
[0041]次に図３及び図４を参照する。ハードウェア高速化モジュール１４４の各々は、マルチポートメモリモジュール１００における中間データを、データ処理を実行している間、格納する。ハードウェア高速化モジュール１４４のうちの第１のハードウェア高速化モジュールは、第１に、他のハードウェア高速化モジュール１４４にデータを直接転送するのではなく、マルチポートメモリモジュール１００へライトポートバッファ１１２を介してデータを転送する。次いで、当該データを、マルチポートメモリモジュール１００から他のハードウェア高速化モジュール１４４のうちの一つにリードポートバッファ１１３を介して転送する。このように、ハードウェア高速化モジュールの各々は、データを調停及び／又は衝突なく、図１に示す従来のシステムにおいて必要とされているように、個別に処理することが可能である。
【００３２】
[0042]このアーキテクチャの結果として、マルチポートメモリシステム１４０の帯域幅が、図１で説明した共用バスアーキテクチャに対して略２倍になる。しかしながら、当業者であれば、ハードウェア高速化モジュール１４４の個々のバス（例えば、バス１６０及び１６２）の何れかの帯域幅を更に増加することが、共用オンチップバスの帯域幅を増加することより容易に達成し得ることを理解することができる。例えば、マルチポートメモリモジュール１００は、図４で説明したようにマルチポートポートバッファを備えて、個別のハードウェア高速化モジュール１４４の合計の帯域幅を分離することを可能としてもよい。換言すれば、共用バスアーキテクチャが排除されるので、ハードウェア高速化モジュール１４４の各々は著しく小さい帯域幅の資源を必要とする。その代わりに、ハードウェア高速化モジュール１４４の各々は、バス１６０及び１６２のような比較的狭い専用の個別のバスを用いて通信する。バス１６０及び１６２（即ち、ハードウェア高速化モジュール１４４の各々とマルチポートメモリモジュール１００の間）のポイントツーポイントの特性の結果、高密度レイティング（rating）且つ高クロック周波数のオペレーションが容易に達成される。
【００３３】
[0043]例えば、マルチポートメモリモジュール１００のメモリアレイがｘ１２８構成（即ち、１２８ビットの倍数のデータ幅）を有している場合には、５１．２ギガビット（Ｇｂｉｔ）の帯域幅を、メモリコアを４００ＭＨｚで動作させることによって、達成することが可能である。同様に、ハードウェア高速化モジュール１４４の各ポート（即ち、リードポート及びライトポート）がｘ１６構成（即ち、１６ビットの倍数のデータ幅）を有している場合には、各ポートは、２００ＭＨｚのクロックを使用して、３．２Ｇｂｉｔの帯域幅を達成することが可能である。通常、１９２０×１０８０ピクセルの高精細テレビ（ＨＤＴＶ）は、約１．５Ｇｂｉｔ／秒の帯域幅を、各データ転送用に、中央メモリの内部又は外部において必要とする。例えば、図３及び４で説明したようなマルチポートメモリシステム１４０は、１．５Ｇｂｉｔ／秒の要件に準じ、２００ＭＨｚのクロックを使用してハードウェア高速化モジュール１４４とマルチポートメモリモジュール１００の間で、ビデオデータの二つのストリームを処理することが可能である。４００ＭＨｚのクロックを使用する場合には、マルチポートメモリシステム１４０は、１．５Ｇｂｉｔｓ／秒の要件に準じ、ビデオデータの四つのストリームを処理することが可能である。
【００３４】
[0044]マルチポートメモリシステム１４０の他の利点は、ハードウェア高速化モジュール１４４を個別に設計することが可能なことである。例えば、各々の個別のハードウェア高速化モジュール１４４を、共用オンチップバスの帯域幅の制限に関係なく、当該ハードウェア高速化モジュール１４４の性能を最適化するよう設計することが可能である。ハードウェア高速化モジュール１４４を、マルチポートメモリシステム１４０の全体の帯域幅を潜在的に高める特定の機能用に最適化することが可能である。換言すれば、システム１４０のデータ処理能力は、拡張可能である。
【００３５】
[0045]次に図５を参照する。ハードウェア高速化モジュール（及び追加の対応のポート及びバッファ、図示せず）の数を増加して、マルチポートメモリシステム１４０のデータ処理能力を拡張（即ち、向上）してもよい。例えば、システム１４０は、マルチポートメモリモジュール１００へのデータ及びマルチポートメモリモジュール１００からのデータを主に処理する（サイドバンドプロセッサといった）プロセッサを有していてもよい。プロセッサをマルチポートメモリシステム１４０に必要に応じて追加して、データ処理能力の所望のレベルを達成することが可能である。
【００３６】
[0046]例えば、システム１４０は、１以上のプログラム可能なサイドバンドプロセッサモジュール１７２−１，．．．，１７２−ｚ（プログラム可能なサイドバンドプロセッサモジュール１７２と総称する）を備えていてもよい。プログラム可能なサイドバンドプロセッサモジュール１７２は、マルチポートメモリモジュール１００と、個別のバス１７４−１，．．．，１７４−ｚ（バス１７４と総称する）を介して、通信する。バス１７４は、図４で説明したバス１６０及び１６２と類似するものである。例えば、バス１７４は、１６ビットのデータ幅を有する。
【００３７】
[0047]一般的に、ハードウェア高速モジュールは、スペース効率が高くなるように、また、固定された特定の機能を実行するように設計される。例えば、ハードウェア高速化モジュールを、速度を重視するアプリケーションを処理するために設計することがある。ハードウェア高速化モジュールへの如何なる変更であっても、ハードウェア高速モジュールを有する集積回路（ＩＣ）の変更が必要となる。これに対して、プログラム可能なサイドバンドプロセッサモジュール１７２の各々をプログラムして、プログラム可能なサイドバンドプロセッサモジュール１７２の一以上の機能を、ＩＣを変更することなく、変更してもよい。例えば、ユーザ又は製造者が、プログラム可能なサイドバンドプロセッサモジュール１７２をプログラムして、種々の動作標準に準拠させ、及び／又は異なる機能を処理させてもよい。
【００３８】
[0048]図５に示すように、プログラム可能なサイドバンドプロセッサモジュール１７２を専用のものとして、さもなければハードウェア高速化モジュール１４４が実行するであろうタスクを処理させてもよい。換言すれば、プログラム可能なサイドバンドプロセッサモジュール１７２の各々を一以上の特定のハードウェア高速化機能を実行するように設計し、ＣＰＵ１４２又はハードウェア高速化モジュール１４４よりも小さな特徴セットをもたせてもよい。
【００３９】
[0049]マルチポートメモリシステム１４０は、共用バス１８０を有していてもよい。ＣＰＵ１４２、ハードウェア高速化モジュール１４４、ＤＲＡＭコントローラ１４６、及びプログラム可能なサイドバンドプロセッサモジュール１７２は、共用バス１８０を介して互いに通信する。例えば、プログラム可能なサイドバンドプロセッサモジュール１７２は、制御メッセージを共用バス１８０上に通して、バスの輻輳を回避してもよい。同様に、ＣＰＵ１４２が、メッセージ及び制御情報を共用バス１８０上に通してもよい。共用バス１８０は、バスブリッジ１８２を有し、当該バスブリッジ１８２は、ＣＰＵ１４２及びＤＲＡＭコントローラ１４６がデータを共用バス１８０上において第１の速度で送受することを可能とし、ハードウェア高速化モジュール１４４及びプログラム可能なサイドバンドプロセッサモジュール１７２がデータを共用バス１８０上において第２の速度で送受することを可能とする。例えば、共用バス１８０は、低速度又は中速度で動作する第１の部分１８４、及び高速で動作する第２の部分１８６を有していてもよい。
【００４０】
[0050]次に図６Ａ及び図６Ｂを参照する。これらの図に、例示のプログラム可能なサイドバンドプロセッサを、より詳細に示す。図６Ａでは、プログラム可能なサイドバンドプロセさモジュール１７２の各々が、命令密結合メモリ（ＩＴＣＭ）モジュール１９０、プロセッサコア１９２、及びデータ密結合メモリ（ＤＴＣＭ）モジュール１９４を備えている。密結合メモリの構造の更なる詳細な説明については、２００５年１２月２０日に出願された米国特許仮出願第６０／７５２，５２２号に見出すことができ、当該出願を、その全体を参照することによって、本明細書に組み込む。或いは、命令メモリ１９０’、及びデータ制御モジュール１９４’に関連付けられたデータメモリ１９６’が、インターリービングを用いるＭＤＲＡＭを有していてもよい。
【００４１】
[0051]ＩＴＣＭモジュール１９０は、好ましくは、プログラム可能なサイドバンドプロセッサモジュール１７２の各々が対応のタスクを実行することを可能にするのに十分なメモリを有している。換言すれば、プログラム可能なサイドバンドプロセッサモジュール１７２をプログラムすることは、ＩＴＣＭモジュール１９０に格納されている命令を変更することを含む。例えば、プログラム可能なサイドバンドプロセッサモジュール１７２の一つをプログラムして、ハードウェア高速化モジュール１４４をエミュレートしてもよい。換言すれば、プログラム可能なサイドバンドプロセッサモジュール１７２は、マルチポートメモリシステム１４０を実施することについての柔軟性を有している。プログラム可能なサイドバンドプロセッサモジュール１７２は、当該プログラム可能なサイドバンドプロセッサモジュール１７２に常駐する命令を変更することによって、新たな機能をもつようプログラムすることが可能である。
【００４２】
[0052]プログラム可能なサイドバンドプロセッサモジュール１７２は、ＤＭＡモジュール１９６を有しており、当該ＤＭＡモジュール１８６は、ＤＴＣＭモジュール１９４の内部及び外部において、サイドバンドプロセッサの動作とは独立に、データを転送する。例えば、ＤＴＣＭモジュール１９４は、デュアルポート及びマルチバンクの少なくとも一方である。その結果、プロセッサコア１９２は、マルチポートメモリモジュール１００へのデータ転送及びマルチポートメモリモジュール１００からのデータ転送と同時に、サイドバンドプロセッサの動作に割り込むこと又は当該動作を妨害することなく、ＤＴＣＭモジュール１９４にアクセスすることが可能である。
【００４３】
[0053]ビデオデータといったデータの少なくとも二つのマクロブロックが、プログラム可能なサイドバンドプロセッサモジュール１７２に、任意のある時間において、存在することがある。例えば、データの第１のマクロブロックが、処理のために、プログラム可能なサイドバンドプロセッサモジュール１７２内に存在し、データの第２のマクロブロックが、後に続くマルチポートメモリモジュール１００への又はマルチポートメモリモジュール１００からの転送のために、プログラム可能なサイドバンドプロセッサモジュール１７２内に存在する。
【００４４】
[0054]ＩＴＣＭモジュール１９０、プロセッサコア１９２、及びＤＴＣＭモジュール１９４は、図５で説明したように、共用バス１８０上、及び内部バス１９８上で、通信する。ＤＴＣＭモジュール１９４は、マルチポートメモリモジュール１００と、単一の双方向バス２００を介して、又は二つの単方向バス（図示せず）を介して、通信する。
【００４５】
[0055]図６に示すように、プログラム可能なサイドバンドプロセッサモジュール１７２は、キャッシュメモリを有さず、ダイのサイズを最小化し、サイドバンドプロセッサのデータ処理を最大限に活かすことができる。例えば、１ＧＨｚで動作するプログラム可能なサイドバンドプロセッサモジュール１７２は、１９２０×１０８０ピクセルのＨＤＴＶ用の各ピクセルオペレーションに約１６サイクルを許容してもよい。したがって、プログラム可能なサイドバンドプロセッサモジュール１７２は、理想的には、利用可能なサイクルを、（プログラム可能なサイドバンドプロセッサモジュール１７２がキャッシュメモリを有しているならば必要とされるであろう）ＤＴＣＭモジュール１９４への又はＤＴＣＭモジュール１９４からのデータ転送用ではなく、コード実行用に最大限に活かす。本実装形態はキャッシュメモリを省いているが、当業者であれば、キャッシュメモリを有するプログラム可能なサイドバンドプロセッサモジュール１７２も考えられることを理解することができる。
【００４６】
[0056]プログラム可能なサイドバンドプロセッサモジュール１７２を最適化して、１６ビットの倍数のデータ、及び／又は８ビットの倍数のデータを処理してもよい。例えば、プログラム可能なサイドバンドプロセッサモジュール１７２は、１６ビットの倍数のデータ及び／又は８ビットの倍数のデータを処理するよう構成された単一命令複数データ（ＳＩＭＤ）プロセッサを実装してもよい。任意の複雑な３２ビットオペレーションをソフトウェアでサポートして、プログラム可能なサイドバンドプロセッサモジュール１７２の電力消費を削減することができる。
【００４７】
[0057]次に図７を参照する。データ処理方法３００は、本発明のマルチポートメモリアーキテクチャに基づくものであり、ステップ３０２で開始する。ステップ３０４においては、第１のハードウェア高速化モジュールが第１の処理タスクをデータに対して実行する。ステップ３０６では、第１のハードウェア高速化モジュールが、当該データをマルチポートメモリモジュールへ第１のデータバス上で転送する。ステップ３０８では、マルチポートメモリモジュールが、当該データを第２のハードウェア高速化モジュールへ第２のデータバス上で転送する。ステップ３１０では、第２のハードウェア高速化モジュールが、第２の処理タスクを当該データに対して実行する。ステップ３１２では、第２のハードウェア高速化モジュールが、当該データをマルチポートメモリモジュールへ第２のデータバス上で転送する。この方法３００は、ステップ３１４で終了する。
【００４８】
[0058]次に図８Ａ〜図８Ｃを参照する。これら図は、本発明の種々の例示的な実装形態を示す。ここで、図８Ａを参照する。本発明を、ＨＤＴＶ４２０において実装することが可能である。ＨＤＴＶ４２０は、図８Ａでは大まかに４２２で特定されている信号処理回路及び／又は制御回路、ＷＬＡＮインタフェイス、ＨＤＴＶ４２０の大容量データ格納装置、及び／又は電源４２３を備えている。本発明は、信号処理回路４２２及び／又は制御回路４２２の何れか、又は両者において、実施してもよく、及び／又は実装されてもよい。ＨＤＴＶ４２０は、ＨＤＴＶ入力信号を、有線又は無線形式で受信し、ディスプレイ４２６用のＨＴＤＶ出力信号を生成する。幾つかの実装形態では、信号処理回路及び／又は制御回路４２２、並びに／若しくはＨＤＴＶ４２０の他の回路（図示せず）が、データを処理し、符号化及び／又は暗号化を実行し、計算を実行し、データをフォーマットし、並びに／若しくは、必要となり得る任意の他のタイプのＨＤＴＶ処理を実行する。
【００４９】
[0059]ＨＤＴＶ４２０は、光学の及び／又は磁気的な格納デバイスのように不揮発性の態様でデータを格納する大容量データ格納装置４２７と通信してもよい。ＨＤＴＶ４２０は、ＲＡＭ、ＲＯＭ、フラッシュメモリといった低遅延の不揮発性メモリ、及び／又は他の適切な電子データ格納装置のようなメモリ４２８に結合されていてもよい。ＨＤＴＶ４２０は、また、ＷＬＡＮネットワークインタフェイス４２９を介したＷＬＡＮとの接続をサポートしてもよい。
【００５０】
[0060]次に図８Ｂを参照する。本発明は、セットトップボックス４８０において実装することが可能である。セットトップボックス４８０は、図８Ｂにおいて４８４で大まかに特定されている信号処理回路及び／又は制御回路、ＷＬＡＮインタフェイス、セットトップボックス４８０の大容量データ格納装置、及び／又は電源４８３を備えている。本発明は、信号処理回路及び／又は制御回路４８４の何れか又は両者において、実施してもよく、及び／又は実装されてもよい。セットトップボックス４８０は、ブロードバンドソースといったソースから信号を受信し、テレビ及び／又はモニタといったディスプレイ４８８、並びに／若しくは、他のビデオ及び／又はオーディオ出力デバイスに適した標準の及び／又は高精細のオーディオ／ビデオ信号を出力する。信号処理回路及び／又は制御回路４８４、並びに／若しくは、セットトップボックス４８０の他の回路（図示せず）は、データを処理し、符号化及び／又は暗号化を実行し、計算を実行し、データをフォーマットし、並びに／若しくは、任意の他のセットトップボックス機能を実行する。
【００５１】
[0061]セットトップボックス４８０は、不揮発性の態様でデータを格納する大容量データ格納装置４９０と通信してもよい。大容量データ格納装置４９０は、ハードディスクドライブ（ＨＤＤ）及び／又はデジタル多用途ディスク（ＤＶＤ）といった光学の及び／又は磁気的な格納装置を有していてもよい。ＨＤＤは、約１．８インチより小さな直径をもつ一以上のプラッタを有するミニＨＤＤであってもよい。セットトップボックス４８０は、ＲＡＭ、ＲＯＭ、フラッシュメモリのような低遅延の不揮発性メモリ、及び／又は他の適切な電子データ格納装置といったメモリ４９４に接続されていてもよい。セットトップボックス４８０は、また、ＷＬＡＮネットワークインタフェイス４９６を介したＷＬＡＮへの接続をサポートしてもよい。
【００５２】
[0062]次に、図８Ｃを参照する。本発明は、ビデオ処理能力を有するメディアプレーヤ５００において実装することが可能である。メディアプレーヤ５００は、図８Ｃにおいて大まかに５０４で特定されている信号処理回路及び／又は制御回路、ＷＬＡＮインタフェイス、メディアプレーヤ５００の大容量データ格納装置、及び／又は電源５０３を備えている。本発明は、信号処理回路及び／又は制御回路５０４の何れか、又は両者において実施してもよく、又は実装されてもよい。幾つかの実装形態では、メディアプレーヤ５００は、ディスプレイ５０７、及び／又は、キーパッド、タッチパッド等のようなユーザ入力５０８を有している。幾つかの実装形態では、メディアプレーヤ５００は、グラフィカルユーザインタフェイス（ＧＵＩ）を採用してもよい。このＧＵＩは、通常、ディスプレイ５０７及び／又はユーザ入力５０８を介するメニュー、ドロップダウンメニュー、アイコン、及び／又はポイント−クリックインタフェイスを採用する。メディアプレーヤ５００は、更に、スピーカ及び／又はオーディオ出力ジャックのようなオーディオ出力５０９を備えている。信号処理回路及び／又は制御回路５０４、並びに／又はメディアプレーヤ５００の他の回路（図示せず）は、データを処理し、符号化及び／又は暗号化を実行し、計算を実行し、データをフォーマットし、並びに／若しくは、任意の他のメディアプレーヤの機能を実行する。
【００５３】
[0063]メディアプレーヤ５００は、圧縮オーディオ及び／又はビデオコンテンツのようなデータを不揮発性の態様で格納する大容量データ格納装置５１０と通信してもよい。幾つかの実装形態では、圧縮オーディオファイルは、ＭＰ３フォーマット、又は他の適切な圧縮オーディオ及び／又はビデオフォーマットに準拠するファイルを含む。大容量データ格納装置は、光学の及び／又は磁気的な格納デバイス、例えば、ハードディスクドライブＨＤＤ及び／又はＤＶＤを含んでいてもよい。ＨＤＤは、約１．８インチより小さな直径をもつ一以上のプラッタを有するミニＨＤＤであってもよい。メディアプレーヤ５００は、ＲＡＭ、ＲＯＭ、フラッシュメモリのような低遅延の不揮発性メモリ、及び／又は他の適切な電子データ格納装置といったメモリ５１４に接続されていてもよい。メディアプレーヤ５００は、また、ＷＬＡＮネットワークインタフェイス５１６を介したＷＬＡＮへの接続をサポートしてもよい。更に別の実装形態も、上述したものに加えて、想定される。
【００５４】
[0064]当業者は、上述の説明から、本開示の広い教示を種々の形態において実装することが可能であることを理解可能である。したがって、本開示は特定の例を含むが、他の変更態様が図面、明細書、及び特許請求の範囲に基づいて当業者には明らかになるので、本開示の真の範囲は制限されるべきではない。
【図面の簡単な説明】
【００５５】
【図１】従来技術に係るデータ処理システムの機能ブロック図である。
【図２】本発明に係るマルチポートメモリモジュールの機能ブロック図である。
【図３】本発明に係るマルチポートメモリモジュールを含むマルチポートメモリシステムの機能ブロック図である。
【図４】本発明に係り、ハードウェア高速化モジュールと通信するマルチポートメモリシステムの機能ブロック図である。
【図５】本発明に係り、プログラム可能なサイドバンドプロセッサモジュールを含むマルチポートメモリシステムの機能ブロックである。
【図６Ａ】本発明に係るプログラム可能なサイドバンドプロセッサモジュールの機能ブロック図である。
【図６Ｂ】本発明に係るプログラム可能なサイドバンドプロセッサモジュールの機能ブロック図である。
【図７】本発明に係るデータ処理方法の各ステップを例示する流れ図である。
【図８Ａ】高精細テレビの機能ブロック図である。
【図８Ｂ】セットトップボックスの機能ブロック図である。
【図８Ｃ】メディアプレーヤの機能ブロック図である。
【符号の説明】
【００５６】
１００…マルチポートメモリモジュール、１４４−１〜ｙ…ハードウェア高速化モジュール、１４６…ＤＲＡＭコントローラ、１４８…ＤＲＡＭモジュール、１７２−１〜ｚ…サイドバンドプロセッサモジュール、１８２…バスブリッジ。
【図１】
0005302507.tif 000002
【図２】
0005302507.tif 000003
【図３】
0005302507.tif 000004
【図４】
0005302507.tif 000005
【図５】
0005302507.tif 000006
【図６Ａ】
0005302507.tif 000007
【図６Ｂ】
0005302507.tif 000008
【図７】
0005302507.tif 000009
【図８Ａ】
0005302507.tif 000010
【図８Ｂ】
0005302507.tif 000011
【図８Ｃ】
0005302507.tif 000012