(57)【要約】【課題】複数メモリ領域を有するバッファメモリ装置及びバッファメモリ制御方法に関し、メモリ領域の効率化及び低消費電力化を図る。【解決手段】バッファメモリ１を複数のメモリ領域に分割し、ポインタにより指定したメモリ領域にデータの書込み及び読出しを行うバッファメモリ装置及びバッファ制御方法であって、ポインタにより指定したメモリ領域にデータの書込みを行う書込部（分割／書込部６）と、ポインタにより指定したメモリ領域からデータを読出して返却ポインタとする読出部（読出／組立部７）と、返却ポインタを使用可能ポインタと使用禁止ポインタとの属性に分類し、且つ該属性を相互に変更可能として管理すると共に、使用可能ポインタの中の空きポインタを選択して、データを書込む為のポインタとして書込部に入力する空きポインタ管理部２とを含む構成を有する。【選択図】      図１
2004240711.tif 000002
【特許請求の範囲】
【請求項１】
バッファメモリを複数のメモリ領域に分割し、ポインタにより指定したメモリ領域にデータの書込み及び読出しを行うバッファメモリ装置に於いて、
前記ポインタにより指定したメモリ領域にデータの書込みを行う書込部と、
前記ポインタにより指定したメモリ領域からデータを読出す読出部と、
前記ポインタを使用可能ポインタと使用禁止ポインタとの属性に分類し、且つ該属性を相互に変更可能として管理すると共に、前記使用可能ポインタの中の空きポインタを選択して前記データを書込む為のポインタとして前記書込部に入力する空きポインタ管理部と
を備えたことを特徴とするバッファメモリ装置。
【請求項２】
前記空きポインタ管理部は、前記使用可能ポインタを保持して前記バッファメモリのメモリ領域にデータを書込む前記書込部にポインタを割り当てる使用可能ポインタリスト部と、前記使用禁止ポインタを管理する使用禁止ポインタ管理部と、前記読出部からの返却ポインタを使用可能ポインタと使用禁止ポインタとの何れかに振り分ける振り分け部とを有することを特徴とする請求項１記載のバッファメモリ装置。
【請求項３】
バッファメモリを複数のメモリ領域に分割し、ポインタにより指定したメモリ領域にデータの書込み及び読出しを行うバッファメモリ制御方法に於いて、
前記ポインタを使用可能ポインタと使用禁止ポインタとの属性に分類し、且つ該属性を相互に変更可能として、前記使用可能ポインタを前記バッファメモリのメモリ領域にデータを書込む為に割り当て、前記バッファメモリのメモリ領域からデータを読出した時の該メモリ領域対応の返却ポインタを、ポインタ削減ポリシーに従って前記使用可能ポインタか又は使用禁止ポインタかに振り分ける過程を含む
ことを特徴とするバッファメモリ制御方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、バッファメモリを複数のメモリ領域に分割して、ポインタによりメモリ領域を指定して、データの書込み及び読出しを行うバッファメモリ装置及びバッファメモリ制御方法に関する。
【０００２】
【従来の技術】
各種のシステムに適用されているバッファメモリ装置は、一般的には、先入れ先出しメモリ（ＦＩＦＯ；Ｆｉｒｓｔ  Ｉｎ  Ｆｉｒｓｔ  Ｏｕｔ）構成を有し、先に書込んだデータから順次読出すように制御するものである。又可変長パケットの伝送システムに於けるバッファメモリ装置に於いては、最大長のパケットを書込むメモリ領域に分割し、パケット単位でメモリ領域に書込み、所定のタイミングで読出して送出する構成が一般的である。
【０００３】
又サービス品質ＱｏＳ（Ｑｕａｌｉｔｙ  ｏｆ  Ｓｅｒｖｉｃｅ）に対応した伝送制御を行うＡＴＭセル伝送システムを含むパケット伝送システムに於いては、バッファメモリのメモリ領域をＱｏＳ対応の優先度の高いメモリ領域と優先度の低いメモリ領域とに分類し、優先度の高いパケットのデータを優先度の高いメモリ領域に書込み、優先度の低いパケットのデータを優先度の低いメモリ領域に書込み、優先度の高いメモリ領域から先にデータを順次読出して伝送する構成が知られている。
【０００４】
又パケット伝送システムに於いて、受信パケットを一時的に蓄積するバッファメモリのメモリ領域が零となると、受信パケットを書込むことができなくなって、その受信パケットを廃棄することになるから、単位時間内の受信パケット数を監視し、その受信パケット数に対応して入力規制値を増加させ、空きメモリ領域が入力規制値以下に減少した時に、送信側にパケットの送信を規制する入力規制信号を送出して、バッファメモリがオーバーフロー状態となることを回避する手段が知られている（例えば、特許文献１参照）。
【０００５】
【特許文献１】
特開平１−１７６１４０号公報
【０００６】
【発明が解決しようとする課題】
パケット等のデータの伝送速度や処理速度の高速化に伴って、データの書込み及び読出しを行うバッファメモリは、比較的大容量で且つ高速動作の構成が要望されている。従って、バッファメモリとしての消費電力も無視できなくなっている。又可変長パケット伝送システムに於けるバッファメモリは、最大長のパケットを書込むメモリ領域に分割する構成が一般的であり、その為に、パケット長の短いパケットに対しては無駄なメモリ領域が多く生じる問題がある。
【０００７】
又パケット等のデータ伝送システムに於いては、伝送量の少ない場合でも、バッファメモリの全メモリ容量を用いるものであり、従って、バッファメモリとして実際に使用するメモリ領域のみでなく、全メモリ領域を動作状態として動作電力を供給しており、その為に消費電力を低減することは困難であった。
【０００８】
本発明は、メモリ領域対応に動的に使用／不使用を制御し、又使用メモリ領域に対してのみ動作電力を供給するように制御し、安定な動作及び低消費電力化を図ることを目的とする。
【０００９】
【課題を解決するための手段】
本発明のバッファメモリ装置は、図１を参照して説明すると、バッファメモリ１を複数のメモリ領域に分割し、ポインタにより指定したメモリ領域にデータの書込み及び読出しを行うバッファメモリ装置であって、ポインタにより指定したメモリ領域にデータの書込みを行う書込部（分割／書込部６）と、ポインタにより指定したメモリ領域からデータを読出す読出部（読出／組立部７）と、ポインタを使用可能ポインタと使用禁止ポインタとの属性に分類し、且つ該属性を相互に変更可能として管理すると共に、使用可能ポインタの中の空きポインタを選択して、データを書込む為のポインタとして書込部に入力する空きポインタ管理部２とを備えている。
【００１０】
又空きポインタ管理部２は、使用可能ポインタを保持してバッファメモリ１のメモリ領域にデータを書込む書込部にポインタを割り当てる使用可能ポインタリスト部と、使用禁止ポインタを管理する使用禁止ポインタ管理部と、読出部からの返却ポインタを使用可能ポインタと使用禁止ポインタとの何れかに振り分ける振り分け部とを有するものである。
【００１１】
又本発明のバッファメモリ制御方法は、バッファメモリ１を複数のメモリ領域に分割し、ポインタにより指定したメモリ領域にデータの書込み及び読出しを行うバッファメモリ制御方法であって、ポインタを使用可能ポインタと使用禁止ポインタとの属性に分類し、且つ該属性を相互に変更可能として、使用可能ポインタをバッファメモリ１のメモリ領域にデータを書込む為に割り当て、バッファメモリ１のメモリ領域からデータを読出した時の該メモリ領域対応の返却ポインタを、ポインタ削減ポリシーに従って使用可能ポインタか又は使用禁止ポインタかに振り分ける過程を含むものである。
【００１２】
【発明の実施の形態】
図１は本発明の実施の形態の説明図であり、パケット伝送システムに於ける例えばルータに適用した場合を示し、１はＳＲＡＭ（Ｓｔａｔｉｃ  ＲａｎｄｏｍＡｃｃｅｓｓ  Ｍｅｍｏｒｙ）等のバッファメモリ、２は空きポインタ管理部、３はバッファメモリ管理部、４はＱｏＳスケジューラ、５はＱｏＳ管理用コンテンツメモリ、６はバッファメモリにデータを書込む書込部に相当する分割／書込部、７はバッファメモリ１からデータを読出す読出部に相当する読出／組立部を示す。
【００１３】
バッファメモリ１は、２５６ビット等の所定長のデータを書込むメモリ領域に分割し、各メモリ領域をそれぞれアドレスに対応するポインタにより管理し、又各メモリ領域対応又は複数のメモリ領域をブロックとした各ブロック対応に動作電力の供給，停止を可能とする構成を有するものである。
【００１４】
又空きポインタ管理部２は、バッファメモリ１にデータを書込む時の空きメモリ領域を示すポインタを管理し、且つこのポインタを使用可能ポインタと使用禁止ポインタとの属性に分類し、且つその属性を相互に変更可能に制御する手段と、バッファメモリ１の使用禁止に設定したメモリ領域又は不良メモリ領域に対する動作電力の供給停止を制御する手段と、メモリダンプやキャプチャ機能を効率化する手段とを含むものである。又バッファメモリ管理部３は、バッファメモリ１のメモリ領域を管理し、ＱｏＳスケジューラ４に於けるパケットの優先制御や帯域制御等に従って、メモリ領域の使用可能／使用禁止の制御と、バッファメモリ１からデータを読出したメモリ領域のポインタの属性の制御を含む機能を有するものである。
【００１５】
又分割／書込部６は、入力パケットを、バッファメモリ１のメモリ領域の大きさに従ったデータ長に分割し、そのデータを、空きポインタ管理部２から割り当てられたポインタに従ったバッファメモリ１のメモリ領域に書込む制御を行い、その時のポインタをＱｏＳスケジューラ４に転送し、又パケットのヘッダ情報としてのＱｏＳ管理のパラメータをＱｏＳ管理用コンテンツメモリ５に転送して書込む制御を行う。
【００１６】
又読出／組立部７は、ＱｏＳスケジューラ４からのスケジューリング結果によるデキューポインタを基に、バッファメモリ１からデータを読出してパケットに組立てて出力パケットとし、又データを読出したメモリ領域を示すポインタをバッファメモリ管理部３へ返却ポインタとして転送する。
【００１７】
バッファメモリ１の各メモリ領域を指定するポインタに対して、使用可能と使用禁止との属性に分類し、空きポインタ管理部２から分割／書込部６に転送するポインタは、使用可能ポインタの中から選択する。従って、使用禁止ポインタ数を増加すれば、バッファメモリ１に対するデータの書込みを行うメモリ領域が少なくなる。そして、使用禁止ポインタ対応のメモリ領域に対しては、動作電力の供給を中止して、低消費電力化を図ることかできる。
【００１８】
図２はデータの書込み及び読出しの動作説明図であり、バッファメモリ１は、ポインタ０〜ｎ−１によって指定するｎ個のメモリ領域に分割し場合を示し、分割／書込部６により入力パケットを分割し、空きポインタ管理部２から使用可能ポインタｄ，ｂ，ａ，ｃ，ｅを順次割り当てることにより、分割／書込部６に於いて分割したデータを、それぞれポインタｄ，ｂ，ａ，ｃ，ｅによるメモリ領域に書込むことができる。又読出／組立部７に、ＱｏＳスケジューラ４（図１参照）からの指示により、バッファメモリ１のポインタｃ，ｅ，ｄ，ｂ，ａの順序で読出しを行い、読出しが終わる毎に、空きポインタ管理部２に返却ポインタとして転送する。この場合、ポインタｄ，ｂ，ａに書込まれたデータからなる入力パケットと、ポインタｃ，ｅに書込まれたデータからなる入力パケットとの順序を反転した出力パケットとした場合を示す。
【００１９】
図３は本発明の実施の形態の空きポインタ管理部の説明図であり、１０は上位システム、１１は残ポインタ数監視部、１２は使用禁止ポインタ管理部、１３はポインタ生成部、１４は廃棄したポインタを格納するゴミ箱、１５は使用可能ポインタリスト部、１５は振り分け部、１６は使用可能ポインタリスト部、２１は使用可能ポインタリスト＃０〜＃ｎ、２２は優先度選択部、２３は使用可能ポインタ振り分け部、２４は使用禁止ポインタ抽出部、２５はポインタ削減方式設定部、２６はポインタ削減要求処理部、２７は電源管理部を示す。
【００２０】
使用可能ポインタリスト部１６の使用可能ポインタリスト＃０〜＃ｎは、振り分け部１５の使用可能ポインタ振り分け部２３により振り分けられた使用可能ポインタを保存し、優先度選択部２２により、分割／書込部６に対してポインタ割り当てを行う。
【００２１】
又使用可能ポインタ振り分け部２３は、例えば、使用可能ポインタリストが８個の場合、使用可能ポインタのポインタ値の下位３ビットを用いて８個のグループに振り分けることができる。即ち、下位３ビットが０００であると、使用可能ポインタリスト＃０に、又００１であると、使用可能ポインタリスト＃１に、又同様にして１１１であると、使用可能ポインタリスト＃７にそれぞれ振り分けることができる。
【００２２】
又使用可能ポインタに優先度を表すパラメータを設定可能とし、使用可能ポインタリスト＃０〜＃ｎに対しても優先度を与えて、図示のように、使用可能ポインタリスト＃０側の優先度を高く、反対に使用可能ポインタリスト＃ｎ側の優先度を低くし、使用可能ポインタ振り分け部２３に於いては、使用可能ポインタの優先度に応じて振り分けることができる。この場合、優先度選択部２２は、優先度の高い使用可能ポインタリストに格納された使用可能ポインタを優先的に分割／書込部６に対する割り当てポインタとして送出する。
【００２３】
又優先度は高低の２種類とすることも可能であり、その場合は、２個の使用可能ポインタリスト＃０，＃１を設けることになる。又優先度が必要でない場合は、１個の使用可能ポインタリストを設け、優先度選択部２２及び使用可能ポインタ振り分け部２３を省略した構成とすることができる。又使用可能ポインタ振り分け部２３に於いて、前述のポインタ値に従って振り分けることにより優先度を固定的に付与することも可能である。又返却ポインタの優先度を順次低くして使用可能ポインタの優先度に再設定し、最低の優先度の返却ポインタに対しては、最高の優先度の使用可能ポインタとして振り分けを行うことも可能である。
【００２４】
又優先度選択部２２は、優先度の高い使用可能ポインタリストに使用可能ポインタが保存されていれば、それを優先して選択し、分割／書込部６（図１参照）に対して、バッファメモリ１に書込む為のポインタとして割り当てる。従って、優先度の高いパケットデータを、バッファメモリ１の優先度の高いメモリ領域に書込むことにより、そのパケットデータを優先度に従って先に読出して、入力パケットの順序の変更等を行い、優先度の高いパケットを優先して送出することができる。この場合の読出しは、例えば、ＱｏＳスケジューラ４によるスケジューリング結果に基づいた制御により行うことができる。
【００２５】
又上位システム１０のポインタ削減要求処理部２６から、ポインタ削減要求がポインタ削減方式設定部２５と使用禁止ポインタ管理部１２とに転送されると、ポインタ削減方式設定部２５は、振り分け部１５の使用禁止ポインタ部２４にポインタ削減量を指示する。使用禁止ポインタ部２４は、バッファメモリ１からデータを読出したポインタを読出／組立部７（図１参照）からの返却ポインタとして受取り、ポインタ削減要求に従って返却ポインタをゴミ箱１４に廃棄し、廃棄したポインタを使用禁止ポインタ管理部１２に通知する。又ゴミ箱１４には、使用可能ポインタリスト単位で廃棄したポインタを保存することができる。又バッファメモリ１に不良メモリ領域が発生した場合、その不良メモリ領域に対するポインタを使用禁止ポインタに変更するように、使用禁止ポインタ抽出部２４に通知することができる。
【００２６】
又使用禁止ポインタ管理部１２は、ゴミ箱１４を参照して廃棄ポインタ情報を取得し、電源管理部２７にその廃棄ポインタ情報を転送することにより、電源管理部２７は、使用禁止ポインタ対応のメモリ領域或いは複数の使用禁止ポインタによる連続したブロックに対して動作電力の供給を停止し、消費電力の削減を図ることができる。
【００２７】
又使用禁止ポインタ管理部１２は、パケットの伝送量の増加等により、上位システム１０からの指示によって使用可能ポインタを増加する場合、ゴミ箱１４を参照して廃棄ポインタ情報を取得し、使用禁止ポインタの中から使用可能ポインタに復活させるポインタをポインタ生成部１３に指示し、復活させたポインタの優先度に従って使用可能ポインタリストに追加する。従って、データ伝送帯域の増減に伴うバッファメモリの使用領域の増減の要求時、又はメモリダンプやキャプチャ等の要求時、不良メモリ領域発生時等に於いて、バッファメモリ１の使用可能のメモリ領域を増減を、使用可能ポインタと使用禁止ポインタとの設定により動的に変更することができる。
【００２８】
図４は振り分け部の説明図であり、図１及び図３と同一符号は同一部分を示し、振り分け部１５は、使用可能ポインタ振り分け部２３と、使用禁止ポインタ抽出部２４とを有し、使用禁止ポインタ抽出部２４は、セレクタ３１と結果処理部３２と使用禁止化ポリシー３３とを含み、使用禁止化ポリシー３３は、＃０〜＃ｎの複数とした場合を示す。そして、読出／組立部７（図１参照）からの返却ポインタに対して、使用禁止対象ポインタか否かを判定し、使用禁止対象ポインタは、使用禁止ポインタ管理部１２に転送し、使用禁止対象ポインタでない場合は、使用可能ポインタ振り分け部２３に転送する。
【００２９】
又使用禁止ポインタ抽出部２４は、上位システム１０（図１参照）からのポインタ削減ポリシーの設定に従って、セレクタ３１に加えられた返却ポインタを、単一又は複数種類の使用禁止化ポリシー３３に対して振り分け、その使用禁止化ポリシー３３に従って結果処理部３２により使用可能ポインタか使用禁止ポインタかに振り分ける。使用禁止化ポリシーとしては、返却ポインタに対して、例えば、設定ポインタ値以下のポインタ値を使用禁止ポインタに変更するポリシーや、或る範囲内のポインタ値のポインタについて使用禁止ポインタに変更するポリシー等とすることができる。そして、結果処理部３２による使用禁止ポインタは、使用禁止ポインタ管理部１２に転送し、使用可能ポインタは、使用可能ポインタ振り分け部２３に転送する。
【００３０】
使用可能ポインタ振り分け部２３は、使用可能ポインタをポインタ値に従って振り分ける場合を示し、前述のように、例えば、０〜ｎ−１のポインタ値のポインタを使用可能ポインタリスト＃０に振り分け、ｎ〜２ｎ−１のポインタ値のポインタを使用可能ポインタリスト＃１に振り分け、同様にして、７ｎ〜８ｎ−１のポインタ値のポインタを使用可能ポインタリスト＃７に振り分ける。この場合、８個の使用可能ポインタリストを有し、総ポインタ数は８ｎ個となる。なお、ポインタの優先度のパラメータを設定した場合は、使用可能ポインタ振り分け部２３に於いて、優先度に従った使用可能ポインタリスト２１に振り分けることになる。
【００３１】
図５は、本発明の実施の形態の返却ポインタ処理フローチャートを示し、図３を参照して説明する。出力パケットの送出によって生じた返却ポインタ４５に対して、上位システム１０からのポインタ使用制限４１を行うか否かに従って、ポインタ使用制限の有無の判定４６を行い、使用制限有りの場合は、上位システム１０からのポインタ削減方式の設定４２に従って、返却ポインタ値が使用禁止化対象か否かの判定４７を行い、使用禁止化対象の場合は、返却ポインタをゴミ箱１４に廃棄４８、使用禁止ポインタ管理部５０（図３に於ける使用禁止ポインタ管理部１２に対応）に廃棄したポインタ情報を通知する。
【００３２】
又ポインタ使用制限無しの場合、又は返却ポインタ値が使用禁止化対象でない場合、使用可能ポインタリストを複数有する場合に於いては、使用可能ポインタリストの選択４９を行う。そして、使用可能ポインタリスト２１に追加５２を行う。又上位システム１０からのポインタ使用制限解除４３により、ポインタ生成部５１（図３のポインタ生成部１３に対応）から復活ポインタ情報を使用禁止ポインタ管理部５０に通知し、又使用可能ポインタリスト２１の選択４９を介して使用可能ポインタリストに追加５２を行う。
【００３３】
又上位システム１０からのポインタ使用制限４４に従ったポインタ使用制限の有無の判定５３を行い、使用可能ポインタリスト２１に対してポインタ使用制限有りの場合は、使用可能ポインタをゴミ箱１４に廃棄５４を行い、使用禁止ポインタ管理部５０に廃棄したポインタ情報を通知する。又ポインタ使用制限無しの場合は、入力パケットに対してポインタ割り当て５５を行う。
【００３４】
従って、ポインタの使用制限又は使用制限解除に従って、バッファメモリ１に於ける使用可能のメモリ領域を制御し、メモリダンプ時やキャプチャ時に於けるデータ格納のメモリ領域を制限することができるから、処理時間の短縮化を図ることができる。又電源管理部２７による動作電力の選択供給により低消費電力化を図ることができる。
【００３５】
図６は、本発明の実施の形態の使用禁止ポインタ管理部の機能説明図であり、（Ａ）はポインタの属性表示ビット、（Ｂ）はポインタの状態遷移を示す。同図の（Ａ）に於いて、ポインタの属性表示ビットを、可能（０）と禁止（１）とを示す可能／禁止ビットと、変更処理中（１）と変更処理中無し（０）との変更処理中ビットと、プロテクトのオフＯＦＦ（０）とオンＯＮ（１）とのプロテクトビットとの３ビット構成とした場合を示し、ｎ個のポインタ０〜ｎ−１対応に付加する。このプロテクトビットをオン（１）とした時は、使用可能ポインタと使用禁止ポインタとの相互の変更を禁止し、オフ（０）とした時は、その変更を可能とするものである。
【００３６】
又図６の（Ｂ）に於いて、使用可能ポインタ（０００）の状態の時に、変更を禁止するプロテクト追加を行うと、絶対使用可能（１００）の状態に遷移し、又このプロテクトを解除するトランジスタ、使用可能ポインタ（０００）の状態に遷移する。この状態から、廃棄要求を行うと、ポインタ削減処理中（０１１）を介して使用禁止ポインタ（００１）の状態に遷移する。
【００３７】
この状態の時に、プロテクト追加を行うと、絶対使用禁止（１０１）の状態に遷移し、又プロテクト解除を行うと、使用禁止ポインタ（００１）の状態に遷移する。この状態から、ポインタ復活要求を行うと、ポインタ復活処理中（０１０）を介して使用可能ポインタ（０００）の状態に遷移する。又属性表示ビットとして、ポインタの優先度を表示するビットを付加することも可能である。
【００３８】
図７は使用禁止ポインタ設定によるメモリ空間の説明図であり、ＰＴは４ｎ個のメモリ領域に対するポインタを示し、ポインタ０〜４ｎ−１対応のメモリ領域にデータを格納するものであり、（Ａ）に於いては、ポインタ０，２〜ｎ−１，ｎ＋１，２ｎ−１のメモリ領域が斜線を施して示すように使用中領域であり、他のポインタのメモリ領域は空白として示すように空き領域となっており、空き領域対応のポインタ２１（図３参照）は使用可能ポインタリストに存在しているものとする。
【００３９】
そして、時間の経過により、図７の（Ｂ）に示すように、ポインタ０〜ｎ−１，ｎ＋１，２ｎ−１のメモリ領域が使用中の状態となった時に、使用可能ポインタリスト２１には、ポインタｎ，ｎ＋２〜ｎ−２，２ｎ〜４ｎ−１が残っており、これらのポインタを、ポインタ削減ポリシーに従って総て使用禁止ポインタに変更することができる。その変更による使用禁止ポインタに対応するメモリ領域は、使用中のメモリ領域と異なる斜線を施して示す領域となる。
【００４０】
そして、時間の経過により、図７の（Ｃ）に示す状態、即ち、ポインタ０〜ｎ−１のメモリ領域が使用中の状態となると、使用可能ポインタリストに、ポインタｎ，２ｎ−１が存在することになるが、これを含めて使用禁止ポインタに変更すると、ポインタｎ〜４ｎ−１が総て使用禁止ポインタとなり、それに対応するメモリ領域は、使用中のメモリ領域と異なる斜線を施して示す領域となる。
【００４１】
この状態に於いては、例えば、ポインタｎ〜２ｎ−１，２ｎ〜３ｎ−１，３ｎ〜４ｎ−１の３ブロックに対して、動作電力の供給を停止することにより、バッファメモリ１の全メモリ領域に動作電力を供給する場合に比較して、消費電力を１／４とすることができる。又帯域制限等のポインタ削減ポリシーに従って、ポインタ０〜ｎ−１以外のポインタを使用禁止ポインタに変更することにより、前述のように、バッファメモリ１の１ブロック分のメモリ領域を用いてデータの書込み及び読出しを行う状態となる。このように、使用可能ポインタリストに残存させるポインタ数又はポインタ値の範囲をポインタ削減ポリシーにより設定し、この設定内容と異なる返却ポインタを使用禁止ポインタに振り分ける構成とするとも可能である。
【００４２】
又ポインタリストに優先度を設定することにより、低消費電力化への移行を効率良く実行することができる。例えば、優先度を、ポインタ０〜ｎ−１＞ｎ〜２ｎ−１＞２ｎ〜３ｎ−１＞３ｎ〜４ｎ−１の関係で優先度を設定することにより、例えば、１／４程度の帯域使用中に於いては、ポインタ０〜ｎ−１のメモリ領域を繰り返し優先的に使用されることになり、従って、ポインタｎ〜４ｎ−１のメモリ領域は比較的早く未使用状態となる。
【００４３】
この状態に於いて、ポインタリストに対して使用禁止化を行うことにより、低優先度のポインタ程、早く使用禁止ポインタへ変更可能となる。従って、その使用禁止ポインタのメモリ領域に対する動作電力の供給を停止して、低消費電力化へ短時間で移行することができる。なお、ポインタリストに優先度を設定しない場合は、全メモリ領域が満遍なく使用されるから、例えば、１／４程度の帯域使用状態となった時、低消費電力化へ移行しようとしても、全メモリ領域について、各ブロックの約１／４のメモリ領域が使用されている為、例えば、図７の（Ｃ）の状態になってから低消費電力化へ移行することができ、それまでに要する時間が比較的長くなる。
【００４４】
図８は、空きメモリ領域のポインタを、ポインタ値の最大値から降順に連続して使用禁止ポインタに変更し、全体の１／４を使用可能ポインタとする場合のメモリ空間の説明図であり、図７に示す場合と相違して、最大ポインタ値のポインタが空きポインタを示す時に、降順に空きポインタをソートして使用禁止ポインタに変更する。即ち、図８の（Ａ）に示す状態は、ポインタ２，ｎ−１，ｎ＋１，２ｎ−１，２ｎ＋２，３ｎ−２，４ｎ−１のメモリ領域が斜線を施して示すように使用中であり、且つ最大ポインタ値が４ｎ−１であり、このメモリ領域は使用中の状態である。
【００４５】
そして、時間の経過により、図８の（Ｂ）に示す状態となると、最大ポインタ値のポインタ４ｎ−１が空きポインタとなり、この最大ポインタ値のポインタ４ｎ−１から点線矢印で示すように降順にソートする。この場合、ポインタ３ｎ＋３まで空きポインタであることにより、使用中のメモリ領域と異なる斜線で示すメモリ領域を使用禁止とする。即ち、ポインタ４ｎ−１〜３ｎ＋３を使用禁止ポインタに変更する。
【００４６】
そして、時間の経過により、図８の（Ｃ）に示す状態となると、最大ポインタ値のポインタ４ｎ−１からポインタ２ｎ−１までのポインタを使用禁止ポインタとする。次に、図８の（Ｄ）に示す状態となると、最大ポインタ値のポインタ４ｎ−１からポインタｎまでのポインタを使用禁止ポインタとし、ポインタ０〜ｎ−１を使用可能ポインタとし、全体の１／４のメモリ領域を用いてバッファリングを行う構成とし、使用禁止ポインタに対応するメモリ領域に対する動作電力の供給を停止して、低消費電力化を図ることができる。この場合、メモリ領域をブロック化して、ブロック単位で動作電力の供給，停止を制御することが容易となる。なお、ポインタ値が最小の空きポインタから昇順にソートして、順次使用禁止ポインタに変更することも可能である。
【００４７】
本発明は、前述の各実施の形態のみに限定されるものではなく、各種のシステムに於けるバッファメモリの制御に対して適用可能である。又バッファメモリ１の周辺の機能部は、プロセッサによる処理機能やメモリ等により実現することも可能である。又入力されるデータがバッファメモリ１の各メモリ領域に対応した長さの場合は、分割／書込部６と読出／組立部７とは、それぞれ書込部と読出部とすることができる。
【００４８】
（付記１）バッファメモリを複数のメモリ領域に分割し、ポインタにより指定したメモリ領域にデータの書込み及び読出しを行うバッファメモリ装置に於いて、前記ポインタにより指定したメモリ領域にデータの書込みを行う書込部と、前記ポインタにより指定したメモリ領域からデータを読出す読出部と、前記ポインタを使用可能ポインタと使用禁止ポインタとの属性に分類し、且つ該属性を相互に変更可能として管理すると共に、前記使用可能ポインタの中の空きポインタを選択して前記データを書込む為のポインタとして前記書込部に入力する空きポインタ管理部ととを備えたことを特徴とするバッファメモリ装置。
【００４９】
（付記２）前記空きポインタ管理部は、前記使用可能ポインタを保持して前記バッファメモリのメモリ領域にデータを書込む前記書込部にポインタを割り当てる使用可能ポインタリスト部と、前記使用禁止ポインタを管理する使用禁止ポインタ管理部と、前記読出部からの返却ポインタを使用可能ポインタと使用禁止ポインタとの何れかに振り分ける振り分け部とを有することを特徴とする付記１記載のバッファメモリ装置。
（付記３）前記空きポインタ管理部の前記使用可能ポインタリスト部は、優先度に従って振り分けたポインタをそれぞれ保持する複数の使用可能ポインタリストと、優先度に従って使用可能ポインタリストから順に前記書込部に対するポインタを割り当てる優先度選択部とを含む構成を有することを特徴とする付記１又は２記載のバッファメモリ装置。
（付記４）前記空きポインタ管理部の前記使用可能ポインタリスト部は、ポインタ値に従って振り分けたポインタをそれぞれ保持する複数の使用可能ポインタリストと、該複数の使用可能ポインタリストから前記書込部に対するポインタを割り当てる優先度選択部とを含む構成を有することを特徴とする付記１又は２記載のバッファメモリ装置。
【００５０】
（付記５）前記空きポインタ管理部の前記振り分け部は、返却ポインタを使用可能ポインタと使用禁止ポインタとに振り分ける使用禁止ポインタ抽出部と、使用可能ポインタを前記使用可能ポインタリスト部の使用可能ポインタリストとして振り分ける使用可能ポインタ振り分け部とを含む構成を有することを特徴とする付記１又は２又は３記載のバッファメモリ装置。
（付記６）前記使用禁止ポインタ抽出部は、前記返却ポインタをポインタ削減ポリシーに従って複数の使用禁止化ポリシーに振り分け、該使用禁止化ポリシーに従って使用可能ポインタを前記使用可能ポインタ振り分け部に転送し、使用禁止ポインタを使用禁止ポインタ管理部に通知する構成を有することを特徴とする付記１乃至５の何れか１に記載のバッファメモリ装置。
（付記７）前記バッファメモリの前記使用禁止ポインタによるメモリ領域又は複数のメモリ領域をブロックとして、メモリ領域単位又はブロック単位で動作電力の供給を停止する制御手段を備えたことを特徴とする付記１記載のバッファメモリ装置。
【００５１】
（付記８）バッファメモリを複数のメモリ領域に分割し、ポインタにより指定したメモリ領域にデータの書込み及び読出しを行うバッファメモリ制御方法に於いて、前記ポインタを使用可能ポインタと使用禁止ポインタとの属性に分類し、且つ該属性を相互に変更可能として、前記使用可能ポインタを前記バッファメモリのメモリ領域にデータを書込む為に割り当て、前記バッファメモリのメモリ領域からデータを読出した時の該メモリ領域対応の返却ポインタを、ポインタ削減ポリシーに従って前記使用可能ポインタか又は使用禁止ポインタかに振り分ける過程を含むことを特徴とするバッファメモリ制御方法。
【００５２】
（付記９）前記使用禁止ポインタに対応する前記バッファメモリのメモリ領域単位又は複数のメモリ領域をブロックとしたブロック単位に、動作電力の供給を停止する過程を含むことを特徴とする付記８記載のバッファメモリ制御方法。
（付記１０）前記返却ポインタを、ポインタ削減ポリシーに従って使用可能ポインタと使用禁止ポインタとに振り分け、使用可能ポインタ又は使用禁止ポインタの中から復活させたポインタを使用可能ポインタリストに保持し、該使用可能ポインタリストに保持した使用可能ポインタを、前記バッファメモリにデータを書込むメモリ領域の指定の為に割り当てる過程を含むことを特徴とする付記８記載のバッファメモリ制御方法。
【００５３】
【発明の効果】
以上説明したように、本発明は、バッファメモリを複数のメモリ領域とし、各メモリ領域をポインタにより指定してデータの書込み及び読出しを行い、そのポインタを、ＱｏＳ制御，メモリダンプ機能，キャプチャ機能，低消費電力化等に従って、使用可能ポインタと使用禁止ポインタとに振り分け、使用可能ポインタに対応するメモリ領域にデータを書込むので、使用禁止ポインタに対応するメモリ領域はデータ書込みを行わないから、伝送帯域等に対応したメモリ領域のみを使用可能に制御し、且つ使用禁止ポインタに対応するメモリ領域に対して動作電力の供給を停止して、低消費電力化を図ることができる。又メモリダンプやキャプチャ処理に於いては、バッファメモリの使用領域を、使用可能ポインタと使用禁止ポインタとによって決定し、使用メモリ領域を制限することにより、処理の効率化を図ることができる。又バッファメモリの不良メモリ領域が発生した場合、その不良メモリ領域のポインタを使用禁止ポインタに変更し、正常なメモリ領域を用いたデータのバッファリングを行うことができる。
【図面の簡単な説明】
【図１】本発明の実施の形態の説明図である。
【図２】データの書込み及び読出しの動作説明図である。
【図３】本発明の実施の形態の空きポインタ管理部の説明図である。
【図４】振り分け部の説明図である。
【図５】本発明の実施の形態の返却ポインタ処理フローチャートである。
【図６】本発明の実施の形態の使用禁止ポインタ管理部の機能説明図である。
【図７】使用禁止ポインタ設定によるメモリ空間の説明図である。
【図８】使用禁止ポインタ設定によるメモリ空間の説明図である。
【符号の説明】
１  バッファメモリ
２  空きポインタ管理部
３  バッファメモリ管理部
４  ＱｏＳスケジューラ
５  ＱｏＳ管理用コンテンツメモリ
６  分割／書込部
７  読出／組立部
【図１】
2004240711.tif 000003
【図２】
2004240711.tif 000004
【図３】
2004240711.tif 000005
【図４】
2004240711.tif 000006
【図５】
2004240711.tif 000007
【図６】
2004240711.tif 000008
【図７】
2004240711.tif 000009
【図８】
2004240711.tif 000010