(57)【要約】【課題】効率よくアクセス要求を制御するメモリ制御装置を実現する。【解決手段】一のメモリ(3)に対して複数の機能ブロックから発行されたアクセス要求の調停を行うメモリ制御装置(1)は、１つ以上のバッファリング回路（30、40）と、アクセス要求(rq)の優先順位に基づいて、アクセス要求(rq)の調停を行う調停部(70)とを備えている。バッファリング回路(30)は、アクセス要求(rq)を一時的に蓄積するＦＩＦＯバッファ(31)と、ＦＩＦＯバッファ(31)に蓄積されているアクセス要求(rq)の数をカウントするカウント部(32)と、カウント部(32)によるカウント数に基づいて、状態通知信号(s2)を出力する状態通知部(33)とを有している。調停部(70)は、状態通知信号(s2)に基づいて、機能ブロック(2)から発行されたアクセス要求(rq)の優先順位を変更する。【選択図】図１
2007323279.tif 000002
【特許請求の範囲】
【請求項１】
一のメモリに対して複数の機能ブロックから発行されたアクセス要求の調停を行うメモリ制御装置であって、
機能ブロックから発行されたアクセス要求をバッファリングする、１つ以上のバッファリング回路と、
アクセス要求の優先順位に基づいて、前記アクセス要求の調停を行う調停部とを備え、
前記バッファリング回路は、
前記機能ブロックから発行されたアクセス要求を一時的に蓄積するＦＩＦＯバッファと、
前記ＦＩＦＯバッファに蓄積されているアクセス要求の数をカウントするカウント部と、
前記カウント部によるカウント数に基づいて、前記ＦＩＦＯバッファにおけるアクセス要求の蓄積状態を示す状態通知信号を出力する状態通知部とを有するものであり、
前記調停部は、前記状態通知信号に基づいて、前記機能ブロックから発行されたアクセス要求の優先順位を変更するものである
ことを特徴とするメモリ制御装置。
【請求項２】
請求項１に記載のメモリ制御装置において、
前記状態通知部は、
前記カウント数と１つ以上の閾値との大小関係を比較して、その比較結果に応じて、前記状態通知信号の状態を設定する比較設定部を有するものであり、
前記調停部は、前記状態通知信号によって表される、前記カウント数と前記１つ以上の閾値との大小関係に基づいて、前記機能ブロックから発行されたアクセス要求の優先順位を変更するものである
ことを特徴とするメモリ制御装置。
【請求項３】
請求項２に記載のメモリ制御装置において、
前記閾値は１つであり、
前記比較設定部は、前記カウント数が前記閾値よりも小さいとき前記状態通知信号を第１の論理レベルに設定する一方、前記カウント数が前記閾値よりも大きいとき前記状態通知信号を第２の論理レベルに設定するものであり、
前記調停部は、前記第２の論理レベルの状態通知信号を受けたとき、前記機能ブロックから発行されたアクセス要求の優先順位を高位に変更するものである
ことを特徴とするメモリ制御装置。
【請求項４】
請求項２に記載のメモリ制御装置において、
前記閾値は、書き換え可能である
ことを特徴とするメモリ制御装置。
【請求項５】
請求項１に記載のメモリ制御装置において、
前記バッファリング回路を複数備え、
前記バッファリング回路のそれぞれが有する前記ＦＩＦＯバッファは、全体として一のＦＩＦＯバッファとして機能するように接続されている
ことを特徴とするメモリ制御装置。
【請求項６】
請求項１に記載のメモリ制御装置において、
前記機能ブロックから出力されたタイミング信号の出力周期を検出する周期検出部と、
前記周期検出部で検出された周期及び前記機能ブロックから発行されたアクセス要求に基づいて、前記機能ブロックに係る前記周期単位のアクセス要求の傾向を学習して、当該学習結果を表す学習信号を出力する学習部とを備え、
前記調停部は、前記学習信号に基づいて、前記機能ブロックから発行されたアクセス要求の優先順位を変更する
ことを特徴とするメモリ制御装置。
【請求項７】
請求項６に記載のメモリ制御装置において、
前記学習部は、前記周期単位のアクセス要求の発行タイミングを学習して、前記アクセス要求の発行がある期間には前記学習信号を第１の論理レベルに設定する一方、前記アクセス要求の発行がない期間には前記学習信号を第２の論理レベルに設定するものであり、
前記調停部は、前記第２の論理レベルの学習信号を受けたとき、前記機能ブロックから発行されたアクセス要求の優先順位を低位に変更するものである
ことを特徴とするメモリ制御装置。
【請求項８】
請求項１に記載のメモリ制御装置において、
前記状態通知部は、前記機能ブロックに前記状態通知信号を出力するものである
ことを特徴とするメモリ制御装置。
【請求項９】
一のメモリに対して複数の機能ブロックから発行されたアクセス要求の調停を行うメモリ制御方法であって、
機能ブロックから発行されたアクセス要求を蓄積するＦＩＦＯバッファに蓄積されている、当該アクセス要求の数をカウントするステップと、
前記カウント数に基づいて、前記ＦＩＦＯバッファにおける、前記機能ブロックから発行されたアクセス要求の蓄積状態を判断するステップと、
前記判断結果に基づいて、前記機能ブロックから発行されたアクセス要求の優先順位を変更するステップとを備えた
ことを特徴とするメモリ制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メモリ制御装置及びメモリ制御方法に関し、特に、一のメモリに対して複数の機能ブロックから発行されたアクセス要求の調停を行うメモリ制御技術に属する。
【背景技術】
【０００２】
最近のシステムＬＳＩにおいては、映像信号処理用の映像データ、マイコン用の制御データ、ＭＰＥＧエンコード／デコード用のデータ等多くのデータを記憶する必要がある。このため、ＳＤＲＡＭ(Synchronous Dynamic Random Access Memory)等のメモリデバイスを、システムＬＳＩに外部接続することにより、大量のデータが記憶可能となっている。
【０００３】
一のメモリにアクセスする機能ブロックが複数存在する場合、各機能ブロックから発行されたアクセス要求を調停して、選択的にアクセスを許可する必要がある。一般的には、アクセス要求の調停は、各機能ブロックの性質や、メモリバス効率に基づいて設定されたアクセス要求の優先順位に基づいて行われている。しかし、優先順位が固定されている場合、優先順位の高い機能ブロックからのアクセス要求が連続して発行されると、優先順位の低い機能ブロックからのアクセス要求は受理されにくい。
【０００４】
そこで、一の機能ブロックによるメモリバスの使用が、最大使用可能時間を超えた場合には、調停部によってバス使用権の切り替えが行われることにより、同一機能ブロックによる不当なバス占有を抑止する技術が提案されている（例えば、特許文献１参照）。また、機能ブロックから発行されたリクエストの待機時間を監視して、待機可能な時間に達したリクエストについて、その優先順位を最も高くすることにより、リクエストがタイムアウトするの防止している（例えば、特許文献２参照）。
【特許文献１】特開平８−３３９３４６号公報
【特許文献２】特開２００１−２９７０５６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上記の技術では、バスの最大使用可能時間やアクセス要求の待機可能な時間といった基準となる時間に基づいて、バス使用権を切り替えたり、優先順位を変更したりしている。しかし、これら基準となる時間は、予め設定されたものである。このため、前者の技術では、他の機能ブロックからのアクセス要求がない場合であっても、メモリバスの使用が最大使用可能時間を経過すると、強制的にバス使用権は取り上げられてしまう。また、後者の技術では、リクエストの待機時間が待機可能な時間に達するまでは、優先順位の変更が行われない。すなわち、基準となる時間の設定によって、アクセス要求の調停の効率が左右され、柔軟なアクセス要求の調停ができないといった問題がある。
【０００６】
上記問題に鑑み、本発明は、一のメモリに対して複数の機能ブロックから発行されたアクセス要求の調停を行うメモリ制御装置について、効率的なメモリアクセス制御を実現することを課題とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するために本発明が講じた手段は、一のメモリに対して複数の機能ブロックから発行されたアクセス要求の調停を行うメモリ制御装置として、機能ブロックから発行されたアクセス要求をバッファリングする、１つ以上のバッファリング回路と、アクセス要求の優先順位に基づいて、前記アクセス要求の調停を行う調停部とを備えたものとする。前記バッファリング回路は、前記機能ブロックから発行されたアクセス要求を一時的に蓄積するＦＩＦＯバッファと、前記ＦＩＦＯバッファに蓄積されているアクセス要求の数をカウントするカウント部と、前記カウント部によるカウント数に基づいて、前記ＦＩＦＯバッファにおけるアクセス要求の蓄積状態を示す状態通知信号を出力する状態通知部とを有するものとする。ここで、前記調停部は、前記状態通知信号に基づいて、前記機能ブロックから発行されたアクセス要求の優先順位を変更するものとする。
【０００８】
これによると、バッファリング回路の有するＦＩＦＯバッファに蓄積された、機能ブロックから発行されたメモリへのアクセス要求が、カウント部によってカウントされ、そのカウント数に基づいて状態通知部から状態通知信号が出力され、機能ブロックから発行されたアクセス要求の優先順位が調停部によって変更される。したがって、ＦＩＦＯバッファにおけるアクセス要求の蓄積状態に応じて、機能ブロックから発行されたアクセス要求の優先順位が変更されるため、効率的にアクセス要求を調停することができる。
【０００９】
具体的には、前記状態通知部は、前記カウント数と１つ以上の閾値との大小関係を比較して、その比較結果に応じて、前記状態通知信号の状態を設定する比較設定部とを有するものとする。ここで、前記調停部は、前記状態通知信号によって表される、前記カウント数と前記１つ以上の閾値との大小関係に基づいて、前記機能ブロックから発行されたアクセス要求の優先順位を変更するものとする。
【００１０】
これによると、ＦＩＦＯバッファに蓄積されたアクセス要求のカウント数と閾値との大小関係に応じて、機能ブロックから発行されたアクセス要求の優先順位を段階的に変更することができる。
【００１１】
より具体的には、前記閾値は１つであるものとする。ここで、前記比較設定部は、前記カウント数が前記閾値よりも小さいとき前記状態通知信号を第１の論理レベルに設定する一方、前記カウント数が前記閾値よりも大きいとき前記状態通知信号を第２の論理レベルに設定するものとする。また、前記調停部は、前記第２の論理レベルの状態通知信号を受けたとき、前記機能ブロックから発行されたアクセス要求の優先順位を高位に変更するものとする。
【００１２】
これによると、ＦＩＦＯバッファにおけるアクセス要求の蓄積数がほぼ限界に達している場合に、当該機能ブロックから発行されたアクセス要求が優先的に処理される。
【００１３】
好ましくは、前記閾値は、書き換え可能であるものとする。これによると、メモリの用途に応じた閾値の変更が容易となる。
【００１４】
また、好ましくは、前記バッファリング回路を複数備えたものとする。ここで、前記バッファリング回路のそれぞれが有する前記ＦＩＦＯバッファは全体として一のＦＩＦＯバッファとして機能するように接続されているものとする。
【００１５】
これによると、ＦＩＦＯバッファにおけるアクセス要求の蓄積状態を、複数段階に分けて調停部に通知することができるため、よりきめ細かなアクセス要求の調停が可能となる。
【００１６】
また、好ましくは、前記機能ブロックから出力されたタイミング信号の出力周期を検出する周期検出部と、前記周期検出部で検出された周期及び前記機能ブロックから発行されたアクセス要求に基づいて、前記機能ブロックに係る前記周期単位のアクセス要求の傾向を学習して、当該学習結果を表す学習信号を出力する学習部とを備えたものとする。ここで、前記調停部は、前記学習信号に基づいて、前記機能ブロックから発行されたアクセス要求の優先順位を変更するものとする。
【００１７】
これによると、機能ブロックに係る周期単位のアクセス要求の傾向に基づいて、アクセス要求の調停を行うことが可能となる。
【００１８】
具体的には、前記学習部は、前記周期単位のアクセス要求の発行タイミングを学習して、前記アクセス要求の発行がある期間には前記学習信号を第１の論理レベルに設定する一方、前記アクセス要求の発行がない期間には前記学習信号を第２の論理レベルに設定しするものとする、また、前記調停部は、前記第２の論理レベルの学習信号を受けたとき、前記機能ブロックから発行されたアクセス要求の優先順位を低位に変更するものとする。
【００１９】
これによると、機能ブロックからのアクセス要求の発行がない期間には、機能ブロックから発行されたアクセス要求の優先順位を低位に変更して、他の機能ブロックのアクセス要求を受理することができる。
【００２０】
好ましくは、前記ＦＩＦＯバッファにおけるアクセス要求の蓄積状態を示す状態通知信号を出力する状態通知部は、前記機能ブロックに当該状態通知信号を出力するものとする。
【００２１】
これによると、ＦＩＦＯバッファにおけるアクセス要求の蓄積状態が機能ブロックに通知されるため、機能ブロック側で適宜アクセス要求の発行を抑制することができる。
【００２２】
また、上記問題を解決するために本発明が講じた手段は、一のメモリに対して複数の機能ブロックから発行されたアクセス要求の調停を行うメモリ制御方法として、機能ブロックから発行されたアクセス要求を蓄積するＦＩＦＯバッファに蓄積されている、当該アクセス要求の数をカウントするステップと、前記カウント数に基づいて、前記ＦＩＦＯバッファにおける、前記機能ブロックから発行されたアクセス要求の蓄積状態を判断するステップと、前記判断結果に基づいて、前記機能ブロックから発行されたアクセス要求の優先順位を変更するステップとを備えたものとする。
【００２３】
これによると、ＦＩＦＯバッファに蓄積されたアクセス要求数がカウントされ、そのカウント数に基づいて、ＦＩＦＯバッファにおけるアクセス要求の蓄積状態が判断され、その判断結果に基づいて、機能ブロックから発行されたアクセス要求の優先順位が変更される。したがって、ＦＩＦＯバッファにおけるアクセス要求の蓄積状態に応じて、機能ブロックから発行されたアクセス要求の優先順位が変更されるため、効率的にアクセス要求を調停することができる。
【発明の効果】
【００２４】
以上、本発明によると、一のメモリに対して複数の機能ブロックから発行されたアクセス要求の調停を行うメモリ制御装置に関して、優先順位の低いアクセス要求が効率よく受理されるため、システムの破綻を回避することが可能となる。
【発明を実施するための最良の形態】
【００２５】
以下、本発明を実施するための最良の形態について、図面を参照しながら説明する。図１は、本発明に係るメモリ制御装置の構成を示す。本メモリ制御装置１は、データバッファ１０、転送要求生成部２０、バッファリング回路３０及び４０、周期検出部５０、学習部６０、調停部７０を備えている。メモリ制御装置１は、機能ブロック２とメモリ３との間のインタフェースとして機能する。なお、説明の便宜のため、機能ブロック２は映像信号処理ブロックであるものとする。
【００２６】
データバッファ１０は、機能ブロック２から出力された転送データｄａを一時的に蓄積する。また、データバッファ１０は、転送データｄａを受けたとき、転送データｄａが機能ブロック２から出力されたことを示す信号ｓ１を出力する。転送要求生成部２０は、信号ｓ１を受け、転送要求ｒｑを生成する。
【００２７】
バッファリング回路３０は、ＦＩＦＯバッファ３１と、カウント部３２を有するカウンタ機能付きの状態通知部３３とを備えている。ＦＩＦＯバッファ３１は、転送要求ｒｑを一時的に蓄積する。図２は、ＦＩＦＯバッファ３１の構成の一例を示す。蓄積部３１ａは、ＦＩＦＯ（０）、ＦＩＦＯ（１）、ＦＩＦＯ（２）・・・ＦＩＦＯ（ｎ）からなるｎ段構成のＦＩＦＯバッファ、例えばリングバッファであり、転送要求ｒｑをｎ個蓄積可能となっている。蓄積部３１ａは、書き込みポインタ及び読み出しポインタを有しており、これらのポインタに基づいて、転送要求ｒｑの書き込み及び読み出しを行う。
【００２８】
書き込みアドレス生成部３１ｂは、転送要求ｒｑが蓄積部３１ａに書き込まれると、書き込みアドレスをインクリメントして蓄積部３１ａの書き込みポインタをセットする。読み出しアドレス生成部３１ｃは、転送要求ｒｑが調停部７０に受理されると、読み出しアドレスをインクリメントして蓄積部３１ａの読み出しポインタをセットする。
【００２９】
カウント部３２は、ＦＩＦＯバッファ３１に蓄積されている転送要求ｒｑをカウントする。状態通知部３３は、カウント部３２のカウント数に基づいて、ＦＩＦＯバッファ３１における転送要求ｒｑの蓄積状態を示す状態通知信号ｓ２を出力する。図３は、状態通知部３３の構成の一例を示す。フラグレジスタ３２ａは、図２に示した蓄積部３１ａと同じく、ＦＬＡＧ（０）、ＦＬＡＧ（１）、ＦＬＡＧ（２）・・・ＦＬＡＧ（ｎ）のｎ段構成を有している。フラグレジスタ３２ａは、蓄積部３１ａに転送要求ｒｑが格納されると、転送要求ｒｑが格納されたアドレスに対応するフラグレジスタ３２ａのアドレスに、転送要求ｒｑが格納されていることを示す“１”をセットする。具体的には、蓄積部３１ａのＦＩＦＯ（２）に転送要求ｒｑが格納されると、フラグレジスタ３２ａのＦＬＡＧ（２）に“１”がセットされる。
【００３０】
加算器３２ｂは、フラグレジスタ３２ａにセットされている“１”の個数、すなわちＦＩＦＯバッファ３１における転送要求ｒｑの蓄積数をカウントする。例えば、加算器３２ｂによるカウント数が“ｎ”であればＦＩＦＯバッファ３１は一杯であり、“０”であればＦＩＦＯバッファ３１は空である。
【００３１】
比較設定部としての比較器３３ａは、加算器３２ｂにおけるカウント数と、閾値レジスタ３３ｂに格納された閾値とを比較して、カウント数が閾値よりも大きいとき、状態通知信号ｓ２の論理レベルを“Ｈ”に設定する一方、カウント数が閾値よりも小さいとき、状態通知信号ｓ２の論理レベルを“Ｌ”に設定する。
【００３２】
バッファリング回路４０は、カウント部４２を有したカウンタ機能付きのＦＩＦＯバッファ４１と、状態通知部４３とを備えている。ＦＩＦＯバッファ４１は、ＦＩＦＯバッファ３１が一杯のとき、転送要求ｒｑを蓄積する。カウント部４２は、ＦＩＦＯバッファ４１が転送要求ｒｑを受けたときカウントアップする一方、転送要求ｒｑをＦＩＦＯバッファ３１に転送したときカウントダウンする。
【００３３】
状態通知部４３は、カウント部４２から出力されたカウント数ｃ１に基づいて、ＦＩＦＯバッファ４１における転送要求ｒｑの蓄積状態を示す状態通知信号ｓ３を出力する。図４は、状態通知部４３の構成の一例を示す図である。状態通知部４３は、カウント部４２から出力されたカウント数ｃ１を格納するカウント数レジスタ４３ａ、比較器３３ａ及び閾値レジスタ３３ｂを備えている。比較器３３ａ及び閾値レジスタ３３ｂは上述した通りである。
【００３４】
ここで、ＦＩＦＯバッファ３１及び４１は、縦続接続されており、全体として一のＦＩＦＯバッファとして機能する。図５は、本メモリ制御装置１における転送要求の状態遷移図を示す。転送要求ｒｑは、ＦＩＦＯバッファ３１に空きがある場合には、ＦＩＦＯバッファ３１に格納され、ＦＩＦＯバッファ３１が一杯の場合には、ＦＩＦＯバッファ４１に格納される。ＦＩＦＯバッファ３１に蓄積された転送要求ｒｑが、調停部７０に受理され、ＦＩＦＯバッファ３１に空きが発生すると、ＦＩＦＯバッファ４１に格納された転送要求ｒｑがＦＩＦＯバッファ３１に格納される。
【００３５】
周期検出部５０は、機能ブロック２から出力された水平同期信号ｓ４の出力周期を検出する。図６は、周期検出部５０の構成の一例を示す。周期検出部５０は、フリーランカウンタ５１及び周期レジスタ５２を備えている。フリーランカウンタ５１は、水平同期信号ｓ４を受けると、そのときのカウント数を出力周期Ｔとして出力するとともに、カウント数を初期化して再びカウントを開始する。周期レジスタ５２は、フリーランカウンタ５１から出力された出力周期Ｔを格納する
学習部６０は、転送要求ｒｑと、出力周期Ｔとを受け、出力周期Ｔにおける転送要求ｒｑの発行タイミングの傾向を学習して、その学習結果に基づいて学習信号ｓ５を出力する。図７は、水平同期信号ｓ４の出力周期Ｔと転送要求ｒｑとの関係の一例を示す。図７（ａ）は、水平同期信号ｓ４の出力周期Ｔと、映像期間との関係を示しており、図７（ｂ）は、出力周期Ｔと、転送要求ｒｑの発行タイミングとの関係を示している。図７（ａ）に示すように、機能ブロック２からメモリ３へ転送すべき映像データが出力周期Ｔの前半分に存在する場合、図７（ｂ）に示すように、転送要求ｒｑも出力周期Ｔの前半分に発行されている。すなわち、出力周期Ｔの間に、転送要求ｒｑが頻発する期間（以下、繁忙期間とも称する）と、転送要求ｒｑの発行がない期間（以下、閑散期間とも称する）とが生じている。
【００３６】
映像信号処理ブロックにおいて、水平同期信号ｓ４と映像データの関係は頻繁に変わるものではない。したがって、出力周期Ｔにおける転送要求ｒｑの発行タイミングを数周期分測定することで、出力周期Ｔにおける転送要求ｒｑの発行タイミングの傾向を学習することが可能となる。学習部６０は、学習結果に基づいて、繁忙期間には学習信号ｓ５の論理レベルを“Ｈ”に設定する一方、閑散期間には学習信号ｓ５の論理レベルを“Ｌ”に設定する。
【００３７】
調停部７０は、機能ブロック２から出力された転送データｄａの転送要求ｒｑを、その優先順位に基づいて調停する。また、調停部７０は、状態通知信号ｓ２及びｓ３、及び学習信号ｓ５を受け、これら信号に基づいて転送要求ｒｑの優先順位を変更する。具体的には、調停部７０は、“Ｈ”レベルの状態通知信号ｓ２またはｓ３を受けると、転送要求ｒｑの優先順位を高位に変更する。ここで、“Ｈ”レベルの状態通知信号ｓ３は、“Ｈ”レベルの状態通知信号ｓ２と比較して、転送要求ｒｑの処理に係る緊急度が高いことを表している。このため、調停部７０は、“Ｈ”レベルの状態通知信号ｓ３を受けたとき、転送要求ｒｑの優先順位を最高位に変更してもよい。また、調停部７０は、“Ｌ”レベルの学習信号ｓ５を受けると、転送要求ｒｑの優先順位を低位に変更する。
【００３８】
以下、本メモリ制御装置１の動作について説明する。ここで、説明の便宜のため、ＦＩＦＯバッファ３１及びＦＩＦＯバッファ４１に蓄積可能な転送要求数をそれぞれ８個及び６個とする。また、ＦＩＦＯバッファ３１及びＦＩＦＯバッファ４１の閾値をそれぞれ“６”及び“２”とする。
【００３９】
図８は、転送要求ｒｑが調停部７０に受理されている場合のタイミングチャートを示す。転送要求生成部２０によって生成された転送要求ｒｑは、ＦＩＦＯバッファ３１に格納され、書き込みアドレス生成部３１ｂによって、書き込みアドレス（FIFO Write Address）がインクリメントされる。これにより、蓄積部３１ａのＦＩＦＯ（０）、ＦＩＦＯ（１）、ＦＩＦＯ（２）・・・ＦＩＦＯ（７）に順次転送要求ｒｑが格納される。同時に、フラグレジスタ３２ａの対応するＦＬＡＧ（０）、ＦＬＡＧ（１）、ＦＬＡＧ（２）・・・ＦＬＡＧ（７）に“１”がセットされる。図８においては、ＦＩＦＯバッファ３１に蓄積された転送要求ｒｑはすぐに調停部７０に受理されるため、フラグレジスタ３２ａもすぐにクリアされる。
【００４０】
一方、図９は、転送要求ｒｑが調停部７０に受理されない場合のタイミングチャートを示す。図８と同様に、転送要求ｒｑがＦＩＦＯバッファ３１に格納され、フラグレジスタ３２ａに“１”がセットされる。しかし、ＦＩＦＯバッファ３１に格納された転送要求ｒｑは、調停部７０に受理されないため、ＦＩＦＯバッファ３１に転送要求ｒｑが蓄積されていく。ＦＩＦＯバッファ３１の閾値が“６”であるため、ＦＩＦＯバッファ３１に６個目の転送要求ｒｑが格納され、フラグレジスタ３２ａにセットされた“１”の個数が６個になったとき、状態通知信号ｓ２の論理レベルが“Ｈ”に設定される。これにより、機能ブロック２からの多数の転送要求ｒｑが待ち状態にあることを調停部７０に通知する。
【００４１】
ＦＩＦＯバッファ３１に８個の転送要求ｒｑが蓄積され、ＦＩＦＯバッファ３１が一杯になると、続いて生成された転送要求ｒｑは、ＦＩＦＯバッファ４１に格納される。ＦＩＦＯバッファ４１の閾値が“２”であるため、ＦＩＦＯバッファ４１に蓄積された転送要求ｒｑのカウント数が“２”になったとき、状態通知信号ｓ３の論理レベルが“Ｈ”に設定される。これにより、ＦＩＦＯバッファ４１における転送要求ｒｑの蓄積数がほぼ限界に達していること、すなわち、機能ブロック２がシステム破綻に近い状態にあることを調停部７０に通知する。
【００４２】
さらに、図１０は、図９に示した状態から転送要求ｒｑが受理されて、システム破綻に近い状態から復帰する場合のタイミングチャートを示す。調停部７０によって、転送要求ｒｑが受理され始めると、最初に生成された転送要求ｒｑから順に、すなわちＦＩＦＯ（０）、ＦＩＦＯ（１）、ＦＩＦＯ（２）・・・ＦＩＦＯ（７）の順番で処理されていく。ＦＩＦＯバッファ４１に蓄積された転送要求ｒｑは、ＦＩＦＯバッファ３１の空いた所に、ＦＩＦＯ（０）、ＦＩＦＯ（１）、ＦＩＦＯ（２）・・の順番で格納される。ＦＩＦＯバッファ４１に蓄積された転送要求ｒｑのカウント数が“１”になると、状態通知信号ｓ３の論理レベルは“Ｌ”に設定される。さらに、転送要求ｒｑが処理されて、フラグレジスタ３２ａにセットされた“１”の個数が５個になると、状態通知信号ｓ２の論理レベルは“Ｌ”に設定される。
【００４３】
以上のように、本発明のメモリ制御装置によると、調停部によって、機能ブロックからのデータ転送要求の優先順位が、状態通知信号に基づいて変更されることで、緊急度の高い転送要求が優先的に処理されるため、システムの破綻を回避することが可能となる。また、段階的に機能ブロックの状態を通知することによって、転送要求の蓄積状態に応じた効率的なメモリアクセスを実現できる。さらに、機能ブロックから出力されるデータの転送要求の傾向を学習して、当該機能ブロックからの転送要求がない期間には、他の機能ブロックの転送要求を受理することで、効率的なメモリアクセスを実現することができる。
【００４４】
なお、状態通知信号ｓ２及びｓ３を受けた機能ブロック２に、図１１に示すような仕様の制限を加えることにより、転送要求ｒｑの発行を制限してもよい。具体的には、機能ブロック２が、映像信号処理ブロックである場合、ＩＰ変換ブロック２ａに対して、フレーム差分を用いたＩＰ変換からフィールド内ＩＰ変換へ機能を制限したり、ビット数を減らすことで転送すべきデータ量を削減する。また、３次元Ｙ／Ｃ分離ブロック２ｂに対して、３次元Ｙ／Ｃ分離機能から２次元Ｙ／Ｃ分離機能へ切り替えを行う等して一時的に仕様を制限する。これにより、機能ブロック２側で、システム破綻を抑制することが可能となる。
【００４５】
また、閾値を複数設定して、カウント数と複数の閾値との大小関係に応じて、状態通知信号ｓ２及びｓ３の状態を設定してもよい。これにより、機能ブロックの忙しさを“高”・“中”・“低”等のレベルに分けて通知し、調停部７０において当該レベルに応じた転送要求の調停を行うことが可能となる。
【００４６】
また、例えば、発行される転送要求ｒｑの数が予測可能である場合には、ＦＩＦＯバッファ４１は備えていなくてもよい。また、ＦＩＦＯバッファ４１の数は複数であってもよく、この場合、よりきめ細かに機能ブロックの状態を調停部７０に通知することができる。ここで、状態通知部４３はＦＩＦＯバッファ４１と１対１対応で設けられるものであるため、ＦＩＦＯバッファ４１の数に応じて状態通知部４３の数も変更される。
【００４７】
また、ＦＩＦＯバッファ４１はＦＩＦＯバッファ３１と同様の構成であってもかまわない。この場合、カウント部を別に設けるか、状態通知部４３を例えば状態通知部３３と同様の構成とすればよい。
【産業上の利用可能性】
【００４８】
本発明に係るメモリ制御装置は、機能ブロックからの転送要求の蓄積状態に基づいて、当該転送要求の優先順位が変更されるため、一のメモリに接続される機能ブロックが多い場合のメモリ制御装置として有用である。
【図面の簡単な説明】
【００４９】
【図１】本発明に係るメモリ制御装置の構成図である。
【図２】ＦＩＦＯバッファの構成の一例を示す図である。
【図３】状態通知部の構成の一例を示す図である。
【図４】状態通知部の構成の別例を示す図である。
【図５】メモリ制御装置における転送要求の状態遷移図である。
【図６】周期検出部の構成の一例を示す図である。
【図７】学習部における水平同期信号の出力周期と転送要求との関係の一例を示す。
【図８】メモリ制御装置のタイミングチャートの一例を示す図である。
【図９】メモリ制御装置のタイミングチャートの一例を示す図である。
【図１０】メモリ制御装置のタイミングチャートの一例を示す図である。
【図１１】機能ブロックにおける仕様の制限の一例を示す図である。
【符号の説明】
【００５０】
１  メモリ制御装置
２  機能ブロック
３  メモリ
３０、４０  バッファリング回路
３１、４１  ＦＩＦＯバッファ
３２、４２  カウント部
３３、４３  状態通知部
５０  周期検出部
６０  学習部
７０  調停部
３３ａ  比較器（比較設定部）
【図１】
2007323279.tif 000003
【図２】
2007323279.tif 000004
【図３】
2007323279.tif 000005
【図４】
2007323279.tif 000006
【図５】
2007323279.tif 000007
【図６】
2007323279.tif 000008
【図７】
2007323279.tif 000009
【図８】
2007323279.tif 000010
【図９】
2007323279.tif 000011
【図１０】
2007323279.tif 000012
【図１１】
2007323279.tif 000013