(57)【要約】【課題】簡易な方式で効率的に画像転送を実行することが可能なデータ転送装置を提供する。【解決手段】画像バッファメモリの画像データについてディスプレイに転送するデータ転送装置であって、画像データを有効データとし、有効データとダミーデータとからなる転送パケットを生成し、転送パケットをディスプレイに転送するパケット生成部と、画像バッファメモリのデータ蓄積量に基づいて転送パケットの有効データとダミーデータとの比率を調整するデータ調整部とを備える。【選択図】図１
2018105958.tif 000002
【特許請求の範囲】
【請求項１】
画像バッファメモリの画像データについてディスプレイに転送するデータ転送装置であって、
前記画像データを有効データとし、前記有効データとダミーデータとからなる転送パケットを生成し、前記転送パケットを前記ディスプレイに転送するパケット生成部と、
前記画像バッファメモリのデータ蓄積量に基づいて前記転送パケットの前記有効データと前記ダミーデータとの比率を調整するデータ調整部とを備える、データ転送装置。
【請求項２】
前記データ調整部は、
前記画像バッファメモリのデータ蓄積量が低下しているか否かを判断し、
前記データ蓄積量が低下していると判断した場合には、前記有効データの比率を下げ、前記ダミーデータの比率を上げる、請求項１記載のデータ転送装置。
【請求項３】
前記データ調整部は、
前記画像バッファメモリのデータ蓄積量が増加しているか否かを判断し、
前記データ蓄積量が増加していると判断した場合には、前記有効データの比率を上げ、前記ダミーデータの比率を下げる、請求項１または２記載のデータ転送装置。
【請求項４】
前記データ調整部は、
１転送パケットで転送する画像データの平均値を算出し、
前記画像バッファメモリのデータ蓄積量と算出された平均値とに基づいて前記転送パケットの前記有効データと前記ダミーデータとの比率を調整する、請求項１記載のデータ転送装置。
【請求項５】
前記データ調整部は、
１水平ラインで送信する全体の画像データの情報と、既に送信された画像データの情報とに基づいて残りの画像データを取得し、
前記１水平ラインで送信する全体の転送パケット数と、既に送信された転送パケット数とに基づいて残りの転送パケット数を取得し、
前記残りの画像データと、前記残りの転送パケット数とに基づいて前記１転送パケットで転送する画像データの平均値を算出する、請求項４記載のデータ転送装置。
【請求項６】
前記データ調整部は、メモリに格納された画像データを前記画像バッファメモリに対して書き込む場合の書込画像データに関するアドレス情報と、前記バッファメモリに書き込まれた画像データを読み出す場合の読出画像データに関するアドレス情報とに基づいて前記画像バッファメモリのデータ蓄積量が低下しているか否かを判断する、請求項２記載のデータ転送装置。
【請求項７】
前記画像バッファメモリは、プッシュ命令およびポップ命令に従ってデータの入出力が実行され、
前記データ調整部は、前記プッシュ命令の回数および前記ポップ命令の回数とに基づいて前記画像バッファメモリのデータ蓄積量が低下しているか否かを判断する、請求項２記載のデータ転送装置。
【請求項８】
画像バッファメモリの画像データについてディスプレイに転送するデータ転送装置であって、
前記ディスプレイに転送する、有効データとダミーデータとを含む転送パケットを生成するパケット生成部と、
前記転送パケットの前記有効データと前記ダミーデータとの比率を調整するデータ調整部とを備え、
高速転送区間と、低速転送区間とが予め設定され、
前記データ調整部は、
前記高速転送区間において前記有効データの比率を上げ、前記ダミーデータの比率を下げ、
前記低速転送区間において前記有効データの比率を下げ、前記ダミーデータの比率を上げる、データ転送装置。
【請求項９】
画像バッファメモリの画像データについてディスプレイに転送するデータ転送装置であって、
前記ディスプレイに転送する、有効データとダミーデータとを含む転送パケットを生成するパケット生成部と、
前記転送パケットの前記有効データと前記ダミーデータとの比率を調整するデータ調整部とを備え、
前記データ調整部は、
外部からの割込み処理の通知に従って、前記有効データの比率を上げ、前記ダミーデータの比率を下げ、
前記外部からの前記割込み処理の終了に従って、前記有効データの比率を下げ、前記ダミーデータの比率を上げる、データ転送装置。
【請求項１０】
画像バッファメモリの画像データについてディスプレイに転送するデータ転送方法であって、
前記画像データを有効データとし、前記有効データとダミーデータとからなる転送パケットを生成するステップと、
前記転送パケットを前記ディスプレイに転送するステップと、
前記画像バッファメモリのデータ蓄積量に基づいて前記転送パケットの前記有効データと前記ダミーデータとの比率を調整するステップとを備える、データ転送方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、データ転送装置およびデータ転送方法に関し、画像データを転送する方式に関する。
【背景技術】
【０００２】
一般的に、画像データのデータ量は大容量であるため、システムに搭載された内部メモリ等では容量が不足する。したがって、保存場所として大容量の外部メモリが共通メモリとして利用されることが多い。
【０００３】
そして、当該共通メモリに対して、画像データの更新や、他のアプリケーション処理が実行される。また、共通メモリには、プロセッサやカメラ等の他の周辺モジュールからもアクセスされる。
【０００４】
また、ディスプレイ等に画像データを転送する場合には、一般的に外部メモリでは、リード要求からリードデータ出力までのレスポンスが遅いため、画像データの一部を画像バッファメモリにバッファリングすることが行なわれている。
【０００５】
そして、ディスプレイ送信器は、画像バッファメモリにバッファリングされた画像データを読込み、ディスプレイへ出力する。
【０００６】
一方で、画像バッファメモリが、共通メモリにアクセスを行うとき、他のモジュールとアクセスが競合した場合には、画像バッファメモリのデータアクセスが遅れ、画像バッファメモリのバッファリングが間に合わず、画像バッファメモリのアンダーフローが発生する可能性がある。この画像バッファメモリのバッファリングの遅れによりディスプレイの画像表示が乱れる可能性がある。
【０００７】
特開平６−１７５６４６号公報においては、バッファリング手法を工夫する方式を提案している。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開平６−１７５６４６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、上記公報に従う方式では、ディスプレイへの画像データの転送レートは固定されており、ディスプレイの表示が乱れないようにフレームレートを維持するためディスプレイへの画像転送に間に合うようにシステムを構築する必要があった。
【００１０】
本開示は、上記の課題を解決するためのものであって、簡易な方式で効率的に画像転送を実行することが可能なデータ転送装置およびデータ転送方法を実現することを目的とする。
【００１１】
その他の課題と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
【課題を解決するための手段】
【００１２】
一実施例によれば、画像バッファメモリの画像データについてディスプレイに転送するデータ転送装置であって、画像データを有効データとし、有効データとダミーデータとからなる転送パケットを生成し、転送パケットをディスプレイに転送するパケット生成部と、画像バッファメモリのデータ蓄積量に基づいて転送パケットの有効データとダミーデータとの比率を調整するデータ調整部とを備える。
【発明の効果】
【００１３】
一実施例によれば、簡易な方式で効率的に画像転送を実行することが可能である。
【図面の簡単な説明】
【００１４】
【図１】実施形態１に基づく画像システム１を説明する図である。
【図２】実施形態１に基づくディスプレイポート送信器１００の機能ブロック図である。
【図３】実施形態１に基づく画像データの構成を説明する図である。
【図４】１水平ライン総有効データについてパケットデータＴＵで送信する場合の処理の流れについて説明する図である。
【図５】パケットデータの有効データの比率の調整について説明する図である。
【図６】実施形態に基づくパケット生成部１０８で生成するパケットデータについて説明する図である。
【図７】実施形態１に基づく画像バッファメモリ２０の更新データの蓄積量を検出する方式について説明する図である。
【図８】実施形態１に基づく画像バッファメモリ２０の更新データの蓄積量を検出する別の方式について説明する図である。
【図９】実施形態２に基づくパケットデータの送信方式について説明する図である。
【図１０】実施形態３に基づく画像システム１Ａを説明する図である。
【図１１】実施形態３に基づくディスプレイポート送信器１００Ａの機能ブロック図である。
【図１２】実施形態３に基づく画像システム１Ａのシーケンスを説明する図である。
【図１３】実施形態３に基づく有効データ数設定テーブルについて説明する図である。
【図１４】実施形態４に基づく画像システム１Ｂを説明する図である。
【図１５】実施形態５に基づく画像システム１Ｂのシーケンスを説明する図である。
【発明を実施するための形態】
【００１５】
実施形態について図面を参照しながら詳細に説明する。なお、図中同一または相当部分には同一符号を付し、その説明は繰り返さない。
【００１６】
（実施形態１）
図１は、実施形態１に基づく画像システム１を説明する図である。
【００１７】
図１に示されるように、画像システム１は、画像データ装置１０と、ディスプレイ４０とを含む。
【００１８】
画像データ装置１０は、画像データを処理する装置であり、情報処理装置の一種である。
【００１９】
画像データ装置１０は、共通メモリ（外部メモリ）１２と、共通バス１４と、プロセッサ１６と、周辺モジュール１８と、画像バッファメモリ２０と、ディスプレイポート送信器１００とを含む。
【００２０】
共通メモリ（外部メモリ）１２は、大容量のメモリであり、一例としてＲＡＭ（Random Access Memory）を用いることが可能である。
【００２１】
共通バス１４は、各部と接続されており、互いにデータの授受が可能に設けられている。
【００２２】
プロセッサ１６は、画像データ装置１０全体を制御する。
周辺モジュール１８は、一例としてカメラモジュールを設ける場合について説明する。当該カメラモジュールで撮像された撮像データが共通メモリ１２に格納される。
【００２３】
画像バッファメモリ２０は、共通メモリ１２に格納されている画像データについてバッファリング処理したデータを格納するメモリである。
【００２４】
ディスプレイポート送信器１００は、画像バッファメモリ２０に格納された画像データをディスプレイ４０に転送する。一例として、ディスプレイポート送信器１００は、ディスプレイポートインタフェースを介して画像データをディスプレイ４０に転送する。より具体的には、ディスプレイポート送信器１００は、画像バッファメモリ２０に格納された画像データを含む転送パケットを生成し、ディスプレイポートインタフェースを介してディスプレイ４０に転送する。
【００２５】
また、実施形態１のディスプレイポート送信器１００は、画像バッファメモリ２０のデータ蓄積量情報に基づいて転送パケット（以下、単にパケットとも称する）の内容を調整する。
【００２６】
本例においては、転送パケットは、有効データと、ダミーデータとを含む。ディスプレイポート送信器１００は、画像バッファメモリ２０のデータ蓄積量情報に基づいて有効データとダミーデータとの比率を調整する。
【００２７】
本例においては、データ蓄積量情報は、データ蓄積量に関する情報であり、データ蓄積の多い少ないに関する情報である。なお、当該情報に限られず、演算によりデータ蓄積量を把握することが可能な情報であっても良い。
【００２８】
図２は、実施形態１に基づくディスプレイポート送信器１００の機能ブロック図である。
【００２９】
図２を参照して、ディスプレイポート送信器１００は、データリード制御部１０２と、リードデータ数演算部１０４と、データ量加減算部１０６と、パケット生成部１０８とを含む。ディスプレイポート送信器１００は、さらに、送信データ数カウンタ１１０と、１水平ライン総有効データ数レジスタ１１２と、送信パケット数カウンタ１１４と、１水平ライン総パケット数レジスタ１１６と、１水平ライン残り総有効データ数演算部１１８と、１水平ライン残り総パケット数演算部１２０と、平均データ数演算部１２２とを含む。
【００３０】
データリード制御部１０２は、画像バッファメモリ２０に対してデータ読出（データリード）を指示し（データリードアクセス）、画像バッファメモリ２０から画像データを取得する。
【００３１】
リードデータ数演算部１０４は、平均有効データ数を基準としてデータ量加減算部１０６からの指示に従って増減したものをリードデータ数として出力する。
【００３２】
データ量加減算部１０６は、更新データ蓄積量に従ってリードデータ数演算部１０４に対して転送パケットに含める有効データのデータ量の加減算を指示する。一例として、画像バッファメモリ２０の更新データ蓄積量が多い場合には、転送パケットに含める有効データのデータ量を増加するように指示し、更新データ蓄積量が低い場合には、転送パケットに含める有効データのデータ量を減少するように指示する。
【００３３】
パケット生成部１０８は、データリード制御部１０２から出力されたリードデータを含むパケットデータＴＵを生成して出力する。
【００３４】
パケットデータＴＵの構成については後述するが、パケット生成部１０８は、パケットデータＴＵの構成として、リードデータを有効データとして、残りをダミーデータとして構成する。
【００３５】
送信データ数カウンタ１１０は、パケットデータＴＵとして送信した有効データ数をカウントする。
【００３６】
１水平ライン総有効データ数レジスタ１１２には、予め既定された１水平ラインの総有効データ数が設定される。
【００３７】
１水平ライン残り総有効データ数演算部１１８は、１水平ラインの総有効データ数から送信した有効データ数を減算して残りの有効データ数を演算する。
【００３８】
送信パケット数カウンタ１１４は、パケットデータＴＵとして送信したパケット数をカウントする。
【００３９】
１水平ライン総パケット数レジスタ１１６には、予め規定された１水平ラインで有効データを送信する総パケット数が設定される。
【００４０】
１水平ライン残り総パケット数演算部１２０は、１水平ラインの総パケット数から送信したパケット数を減算して残りのパケット数を演算する。
【００４１】
平均データ数演算部１２２は、残りの有効データ数に対して残りのパケット数を除算する。これにより、これから転送するべき１パケットデータＴＵ当たりの平均有効データ数を算出する。すなわち、平均有効データ数は、パケットデータを生成するたびに更新されるものである。
【００４２】
平均データ数演算部１２２は、当該算出した平均有効データ数をリードデータ数演算部１０４に出力する。なお、初期値は予め設定しておくことが可能であり、当該初期値に従ってリードデータ数演算部１０４は、リードデータ数をデータリード制御部１０２に出力する。
【００４３】
本例においては、データ量加減算部１０６は、更新データ蓄積量情報に従ってリードデータ数演算部１０４に対してリードデータ数の増減を指示する。リードデータ数演算部１０４は、データ量加減算部１０６からの指示に従って、平均データ数演算部１２２から出力された平均有効データ数から増減させたものをリードデータ数として出力する。このようにすることで、リードデータ数演算部１０４から出力されるリードデータ数が調整される。そして、データリード制御部１０２は、リードデータ数演算部１０４で演算されたリードデータ数に従って、画像バッファメモリ２０から画像データを取得する。
【００４４】
データリード制御部１０２は、取得した画像データをリードデータとしてパケット生成部１０８に出力する。パケット生成部１０８は、取得したリードデータを有効データとしてパケットデータＴＵを生成して出力する。
【００４５】
したがって、画像バッファメモリ２０の更新データ蓄積量が減少してきた場合には、取得されるリードデータ数が調整されて、１パケットデータＴＵあたりの有効データが少なくなる。
【００４６】
一方、画像バッファメモリ２０の更新データ蓄積像が増加してきた場合には、取得されるリードデータ数が調整されて、１パケットデータＴＵあたりの有効データが多くなる。
【００４７】
当該方式により、画像バッファメモリ２０の更新データ量情報に基づいて１パケットデータＴＵにおける有効データとダミーデータとの比率が調整される。
【００４８】
したがって、画像バッファメモリ２０のバッファリングの遅れが生じる場合には、パケットデータＴＵにおける有効データの比率を調整して、有効データの比率を下げる。
【００４９】
一方、画像バッファメモリ２０のバッファリングの遅れが解消した場合には、パケットデータＴＵにおける有効データの比率を調整して、有効データの比率を上げる。
【００５０】
これにより、画像バッファメモリ２０のアンダーフローが生じることを抑制し、ディスプレイ４０の画像表示の乱れを抑制することが可能である。
【００５１】
図３は、実施形態１に基づく画像データの構成を説明する図である。
図３には、ディスプレイポート送信器１００からディスプレイ４０に送信される画像データの構成が示されている。
【００５２】
図３に示されるように、ディスプレイポート送信器１００を介してディスプレイ４０に送られる画像データは、ブランキングデータと有効画像データとからなる。有効画像データは、画像バッファメモリ２０に格納されており、図２に示されるディスプレイポート送信器１００を介してディスプレイ４０に転送される。ブランキングデータは、図２には図示していないが、ディスプレイポート送信器１００に含まれるブランキングデータ生成回路によって垂直ブランキング期間、水平ブランキング期間に生成されるものである。
【００５３】
具体的には、第１段階として垂直ブランキング期間が設けられる。垂直ブランキング期間は、１水平ラインのデータが全てブランキングデータであり、当該ブランキング期間のデータがディスプレイポート送信器１００によって生成されディスプレイ４０に転送される。
【００５４】
次に、第２段階として垂直有効画像データ期間が設けられる。垂直有効画像データ期間は、２つの領域に分割される。垂直有効画像データ期間のうち水平ブランキング期間は、ディスプレイポート送信器１００によって生成されたブランキングデータであり、水平有効画像データ期間は、画像バッファメモリ２０から読み出した有効画像データである。これらのデータが１水平ラインごとにディスプレイポート送信器１００からディスプレイ４０に転送される。
【００５５】
そして、第３段階として垂直ブランキング期間が設けられる。垂直ブランキング期間は、１水平ラインのデータが全てブランキングデータであり、当該ブランキング期間のデータがディスプレイポート送信器１００によって生成されディスプレイ４０に転送される。
【００５６】
ディスプレイポート送信器１００から転送される１水平ラインのデータは、いずれも複数のパケットデータＴＵで構成される。
【００５７】
本例においては、一例として、１水平ラインの有効画像データを転送するためのパケット数としてｎ個の転送パケット数が設定されている場合が示されており、一例としてパケットデータＴＵ０〜ＴＵ（ｎ）が転送される場合が示されている。また、次の水平ライン有効画像データとしてパケットデータＴＵ（ｎ＋１）〜・・・が転送される場合が示されている。
【００５８】
そして、順次、パケットデータＴＵが送信され、全ての有効画像データ期間のデータの転送が完了する。
【００５９】
これに伴い、全パケットデータに従いディスプレイ４０における画像が表示される。
なお、パケットデータＴＵは、有効データと、ダミーデータの開始を示すＦＳシンボルと、ダミーデータと、ダミーデータの終了を示すＦＥデータとで構成される。
【００６０】
図４は、１水平ライン総有効データについてパケットデータＴＵで送信する場合の処理の流れについて説明する図である。
【００６１】
図４に示されるように、ディスプレイ４０で表示に用いられるピクセルクロックと、パケットデータＴＵを送信する場合に用いられる転送クロックとが示されている。ピクセルクロックよりも転送クロックの方が周波数が高いため、ディスプレイ４０側の１水平ラインの水平有効画像データ期間に転送可能な総パケット数で１水平ライン総有効データを分割する。
【００６２】
そして、分割した各有効データ０〜（ｎ）は、各パケットデータＴＵ０〜ＴＵ（ｎ）に割り当てられ、割り当てられた有効データを含むパケットデータがディスプレイ４０に転送される。
【００６３】
一例としてパケットデータは、３２〜６４バイト単位で構成される。
ディスプレイポート規格では、ディスプレイ４０に表示する際のピクセルクロックよりも転送クロックによる画像データのデータ転送速度の方が高速である。したがって、ディスプレイポート規格では、有効データに一定量のダミーデータを付加したパケットデータが形成され、有効データのデータ転送速度を落とした状態で転送する。
【００６４】
ディスプレイポート規格では、１水平ラインの有効な総データ量は画像フォーマットの形式に従って設定される。
【００６５】
図５は、パケットデータの有効データの比率の調整について説明する図である。
図５に示されるように、画像バッファメモリ２０の更新データの蓄積量が低下した場合には、有効データの比率を少なくして有効データ転送速度を下げる。
【００６６】
一方、画像バッファメモリ２０の更新データの蓄積量が回復（増加）した場合には、有効データの比率を多くして有効データ転送速度を上げる。
【００６７】
図６は、実施形態に基づくパケット生成部１０８で生成するパケットデータについて説明する図である。
【００６８】
図６には、状態が異なる複数のパケットデータが示されている。図２で説明したようにまず、１水平ラインの総有効データを１水平ラインのパケット数で除算した平均有効データ数を計算し、当該平均有効データ数が含まれるパケットデータを生成する（有効データ転送速度平均）。
【００６９】
次に、画像バッファメモリ２０の更新データの蓄積量が低下した場合には、有効データ数を平均有効データ数から減少させたパケットデータを生成する（有効データ転送速度減少）。
【００７０】
次に、画像バッファメモリ２０の更新データの蓄積量が回復（あるいは増加）した場合には、有効データ数を平均有効データ数から増加させたパケットデータを生成する（有効データ転送速度増加）。
【００７１】
実施形態１においては、画像バッファメモリ２０から共通メモリ１２へのリードアクセスが、プロセッサ１６や他のモジュールのアクセスと競合し、画像バッファメモリ２０の更新が遅れ、更新データ量が少なくなった場合には、ディスプレイポート送信器１００は、画像バッファメモリ２０から通知される更新データ量の蓄積量が低下した状態を検知し、パケットデータＴＵのダミーデータ量を増やし、有効データの比率を少なくすることで一時的にディスプレイ４０への有効データ転送速度を減少させる。これにより画像バッファメモリ２０のアンダーフローを回避する。
【００７２】
その後、ディスプレイポート送信器１００は、画像バッファメモリ２０から通知される更新データ量により、更新データが十分に蓄積されたことを検知した場合、パケットデータＴＵのダミーデータ量を減らし、有効データの比率を多くすることでディスプレイ４０への有効データ転送速度を増加させる。これにより、画像転送途中の画像バッファメモリ２０のデータ更新遅延による、画像バッファメモリのアンダーフローを回避し、ディスプレイ４０の画像表示の乱れを防ぐことが可能となる。
【００７３】
なお、画像バッファメモリ２０の更新データの蓄積量が回復した場合に、パケットデータにおける有効データ数を平均有効データ数から増加させずに、有効データ数を平均有効データ数としてもよい。上述したように、平均有効データ数は、１パケットデータＴＵが生成されるたびに残りの有効データ数に応じて更新されるため、残りの有効データ数が多ければ多いほど平均有効データ数の値は大きくなる。したがって、画像バッファメモリ２０の更新データの蓄積量が回復した場合に、パケットデータにおける有効データ数を平均有効データ数としても１水平ラインの総有効データを転送することができる。
【００７４】
図７は、実施形態１に基づく画像バッファメモリ２０の更新データの蓄積量を検出する方式について説明する図である。
【００７５】
図７に示されるように、画像バッファメモリ２０がＲＡＭで構成されている場合に、共通メモリ１２からの画像データをＲＡＭに書き込む際のライトアドレスと、ディスプレイポート送信器１００に対して書き込まれた画像データを読み出す際のリードアドレスとを比較し、アドレス差で更新された画像バッファメモリ２０の更新データの蓄積量を検出するようにしてもよい。
【００７６】
具体的には、ライトアドレスとリードアドレスとの差が所定の閾値未満となった場合には、更新データの蓄積量が低下したと判断して、ディスプレイポート送信器１００に通知するようにしてもよい。また、ライトアドレスとリードアドレスとの差が所定の閾値以上となった場合に、更新データの蓄積量が回復したと判断してディスプレイポート送信器１００に通知するようにしても良い。
【００７７】
また、比較に際し、複数の閾値を用いて、更新データの蓄積量を検出するようにしてもよい。
【００７８】
具体的には、ライトアドレスとリードアドレスとの差が所定の第１閾値未満となった場合には、更新データの蓄積量が低下したと判断して、ディスプレイポート送信器１００に通知するようにしてもよい。また、ライトアドレスとリードアドレスとの差が所定の第１閾値以上、第２閾値未満（第１閾値＜第２閾値）となった場合に、更新データの蓄積量が回復したと判断してディスプレイポート送信器１００に通知するようにしても良い。また、ライトアドレスとリードアドレスとの差が所定の第２閾値以上となった場合に、更新データの蓄積量が増加したと判断してディスプレイポート送信器１００に通知するようにしても良い。
【００７９】
当該通知に従って、図５に示されるように、画像バッファメモリ２０の更新データの蓄積量が低下した場合には、有効データの比率を少なくして有効データ転送速度を下げる。一方、画像バッファメモリ２０の更新データの蓄積量が回復（増加）した場合には、有効データの比率を多くして有効データ転送速度を上げる。
【００８０】
図８は、実施形態１に基づく画像バッファメモリ２０の更新データの蓄積量を検出する別の方式について説明する図である。
【００８１】
図８には、画像バッファメモリ２０としてＦＩＦＯ（First In First Out）で構成されている場合に、プッシュ（ライト）命令の回数と、ポップ（リード）命令の回数とをカウントする。プッシュ命令の回数とポップ命令の回数とをカウントし、回数差を比較することで更新された画像バッファメモリ２０の更新データの蓄積量を検出するようにしてもよい。
【００８２】
具体的には、プッシュ（ライト）命令の回数と、ポップ（リード）命令の回数との差が所定の閾値未満となった場合には、更新データの蓄積量が低下したと判断して、ディスプレイポート送信器１００に通知するようにしてもよい。また、ポップ（リード）命令の回数との差が所定の閾値以上となった場合に、更新データの蓄積量が回復したと判断してディスプレイポート送信器１００に通知するようにしても良い。
【００８３】
複数の閾値を用いて、更新データの蓄積量を検出するようにしてもよい。
具体的には、プッシュ（ライト）命令の回数と、ポップ（リード）命令の回数との差が所定の第１閾値未満となった場合には、更新データの蓄積量が低下したと判断して、ディスプレイポート送信器１００に通知するようにしてもよい。また、プッシュ（ライト）命令の回数と、ポップ（リード）命令の回数との差が所定の第１閾値以上、第２閾値未満（第１閾値＜第２閾値）となった場合に、更新データの蓄積量が回復したと判断してディスプレイポート送信器１００に通知するようにしても良い。また、プッシュ（ライト）命令の回数と、ポップ（リード）命令の回数との差が所定の第２閾値以上となった場合に、更新データの蓄積量が増加したと判断してディスプレイポート送信器１００に通知するようにしても良い。
【００８４】
当該通知に従って、図５に示されるように、画像バッファメモリ２０の更新データの蓄積量が低下した場合には、有効データの比率を少なくして有効データ転送速度を下げる。一方、画像バッファメモリ２０の更新データの蓄積量が回復（増加）した場合には、有効データの比率を多くして有効データ転送速度を上げる。
【００８５】
（実施形態２）
図９は、実施形態２に基づくパケットデータの送信方式について説明する図である。
【００８６】
図９に示されるように、実施形態１のパケットデータに関しては１水平ラインの水平有効画像データ期間に転送可能な総パケット数で１水平ラインの総有効データを分割して、分割したデータを各パケットに配分する方式としていた。
【００８７】
実施形態２では、共通メモリ１２に対し、プロセッサ１６や他の周辺モジュール１８のアクセスがなく、画像バッファメモリ２０が、共通メモリ１２に対するリードアクセスの帯域が十分確保できる場合について説明する。また、画像バッファメモリ２０の更新されたデータ蓄積量が十分である場合に、ディスプレイポート送信器１００は、パケットデータＴＵのダミーデータの比率を下げることで有効データ転送速度を上げる。具体的には、有効データの比率を多くして有効データ転送速度を上げる。
【００８８】
これにより、１水平ラインにおける有効データの転送期間を短縮することが可能である。
【００８９】
１水平ラインにおける有効データの転送期間を短縮することにより、従来よりも早いタイミングで画像バッファメモリ２０の更新をすることが可能となる。
【００９０】
したがって、共通メモリ１２へのリードアクセスが、プロセッサ１６や他の周辺モジュール１８のアクセスによる競合により、遅延したとしても、有効データの転送期間が短縮できるため、アンダーフローの発生する可能性が抑制することが可能である。
【００９１】
また、１水平ラインにおける画像データの転送期間を短縮することで、共通メモリ１２から画像バッファメモリ２０へのリードデータのデータ転送速度も上げることが可能であり、画像バッファメモリ２０による共通メモリや、共通バス１４の占有期間を短縮することが可能になるためシステム全体の性能向上を図ることも可能である。
【００９２】
（実施形態３）
図１０は、実施形態３に基づく画像システム１Ａを説明する図である。
【００９３】
図１０に示されるように、画像システム１Ａは、画像システム１と比較して画像データ装置１０を画像データ装置１０Ａに置換した点が異なる。
【００９４】
画像データ装置１０Ａは、画像データ装置１０と比較してディスプレイポート送信器１００をディスプレイポート送信器１００Ａに置換した点が異なる。その他の構成については上記で説明したのと同様であるのでその詳細な説明については繰り返さない。
【００９５】
ディスプレイポート送信器１００Ａは、画像バッファメモリ２０から画像データを取得する。本例におけるディスプレイポート送信器１００Ａは、更新データ蓄積量情報の入力を受けない。
【００９６】
図１１は、実施形態３に基づくディスプレイポート送信器１００Ａの機能ブロック図である。
【００９７】
図１１を参照して、ディスプレイポート送信器１００Ａは、データリード制御部１０２と、パケット生成部１０８と、送信パケット数カウンタ１１４と、有効データ設定部１３２とを含む。
【００９８】
データリード制御部１０２は、画像バッファメモリ２０に対してデータ読出（データリード）を指示し（データリードアクセス）、画像バッファメモリ２０から画像データを取得する。
【００９９】
パケット生成部１０８は、データリード制御部１０２から出力されたリードデータを有効データとしてパケットデータＴＵを生成して出力する。
【０１００】
送信パケット数カウンタ１１４は、パケットデータＴＵとして送信したパケット数をカウントする。
【０１０１】
有効データ設定部１３２は、送信パケット数カウンタ１１４のカウンタ値および有効データ数設定テーブルに従ってパケットデータ毎に有効データ数を設定する。
【０１０２】
本実施の形態３に従う方式は、各パケットデータ毎に予め有効データ数を設定しておく方式である。
【０１０３】
図１２は、実施形態３に基づく画像システム１Ａのシーケンスを説明する図である。
図１２に示されるように、共通メモリ１２に対して周辺モジュールあるいは画像バッファメモリがアクセスする。
【０１０４】
時刻Ｔ１からＴ２までの区間においては、周辺モジュール１８は、共通メモリ１２にアクセスしないことが想定される。
【０１０５】
また、時刻Ｔ２から時刻Ｔ３までの区間においては、周辺モジュール１８は、共通メモリ１２にアクセスすることが想定される。
【０１０６】
また、時刻Ｔ３から時刻Ｔ４までの区間においては、周辺モジュール１８は、共通メモリ１２にアクセスしないことが想定される。
【０１０７】
本実施の形態３においては、画像システム１Ａのシーケンス処理における所定区間を高速転送区間と、低速転送区間とに分類する。
【０１０８】
高速転送区間とは、予めディスプレイポート送信器１００Ａが共通メモリ１２へのアクセスを占有可能なことが想定される区間である。つまり、他の周辺モジュール１８から共通メモリ１２へのアクセスが想定されにくい区間である。
【０１０９】
低速転送区間とは、予めディスプレイポート送信器１００Ａが共通メモリ１２へのアクセスを占有できないことが想定される区間である。つまり、他の周辺モジュール１８から共通メモリ１２へのアクセスが想定される区間である。
【０１１０】
例えば、周辺モジュール１８であるカメラモジュールにて撮像した撮像画像をディスプレイ４０に表示するようなシステムにおいては、カメラモジュールが撮像した撮像画像を共通メモリ１２へ格納する期間と、共通メモリ１２に格納された撮像画像をディスプレイ４０に表示する期間とが予め設定されている場合がある。そのようなケースにおいては、カメラモジュールが撮像した撮像画像を共通メモリ１２へ格納する期間、すなわち、周辺モジュールが共通メモリ１２へアクセする期間を低速転送区間とし、それ以外の期間を高速転送区間としてもよい。
【０１１１】
実施形態３においては、予め想定される画像システム１Ａのシーケンス処理において区間を分類して、分類した区間に応じてパケットデータの有効データの比率を調整する。
【０１１２】
高速転送区間に転送する位置のパケットデータについては、有効データ数を多くし、ダミーデータを少なくしたパケットデータを転送する。
【０１１３】
一方、低速転送区間に転送する位置のパケットデータについては、有効データ数を少なくし、ダミーデータを多くしたパケットデータを転送する。
【０１１４】
図１３は、実施形態３に基づく有効データ数設定テーブルについて説明する図である。
図１３に示されるように、有効データ数設定テーブルには、パケットデータＴＵ毎の有効データ数の設定値が格納されている。
【０１１５】
具体的には、高速転送区間に転送する位置のパケットデータＴＵ０〜ＴＵ（ｎ）にそれぞれ対応して有効データ数が設定されている。
【０１１６】
さらに、低速転送区間に転送する位置のパケットデータＴＵ（ｎ＋１）〜（ｎ＋ｏ）にそれぞれ対応して有効データ数が設定されている。
【０１１７】
さらに、高速転区間に転送する位置のパケットデータＴＵ（ｎ＋ｏ＋１）〜ＴＵ（ｎ＋ｏ＋ｐ）にそれぞれ対応して有効データ数が設定されている。
【０１１８】
実施形態３においては、テーブルポインタ（カウンタ値）に従って有効データ数設定テーブルに格納されている有効データ数の設定値が順次読み出されて、リードデータ数としてデータリード制御部１０２に出力される。
【０１１９】
具体的には、最初の高速転送区間において、テーブルポインタに従ってパケットデータＴＵ０〜ＴＵｎの有効データ数が読み出されてデータリード制御部１０２に出力される。
【０１２０】
次に、低速転送区間において、テーブルポインタに従って、パケットデータＴＵ（ｎ＋１）〜（ｎ＋ｏ）の有効データ数が読み出されてデータリード制御部１０２に出力される。
【０１２１】
次に、高速転送区間において、テーブルポインタに従って、パケットデータＴＵ（ｎ＋ｏ＋１）〜（ｎ＋ｏ＋ｐ）の有効データ数が読み出されてデータリード制御部１０２に出力される。
【０１２２】
予め高速転送区間および低速転送区間を分類して、当該それぞれの区間に転送する位置のパケットデータの有効データ数を調整する。当該方式により共通メモリ１２へのリードアクセスが、プロセッサ１６や他の周辺モジュール１８のアクセスによる競合する区間には低速転送区間を実行し、それ以外の競合しない区間において高速転送区間を実行することにより、アンダーフローの発生を抑制することが可能である。
【０１２３】
また、当該方式により、画像バッファメモリ２０からの更新データ蓄積量の情報の通知無しに制御することが可能となる。
【０１２４】
なお、本例においては、各パケットデータ毎の有効データ数を設定する有効データ数設定テーブルを設けた構成について説明したが、全てのパケットデータ毎の有効データ数を設定するのではなく、高速転送区間から低速転送区間へあるいは、低速転送区間から高速転送区間へ切り替える際のパケットデータの番号を情報として格納するようにしても良い。
【０１２５】
そして、テーブルデータポインタ（カウンタ値）と当該情報とを比較して、有効データ数の値を調整するようにしても良い。当該方式によりテーブルの容量を小さくすることが可能である。
【０１２６】
（実施形態４）
図１４は、実施形態４に基づく画像システム１Ｂを説明する図である。
【０１２７】
図１４に示されるように、画像システム１Ｂは、画像システム１と比較して画像データ装置１０を画像データ装置１０Ｂに置換した点が異なる。
【０１２８】
画像データ装置１０Ｂは、画像データ装置１０と比較してディスプレイポート送信器１００をディスプレイポート送信器１００Ｂに置換した点が異なる。その他の構成については上記で説明したのと同様であるのでその詳細な説明については繰り返さない。
【０１２９】
ディスプレイポート送信器１００Ｂは、画像バッファメモリ２０から画像データを取得する。また、プロセッサ１６からシステム割込通知を受ける。
【０１３０】
実施形態４に従うディスプレイポート送信器１００Ｂは、プロセッサ１６からのシステム割込処理通知に従ってパケットデータの有効データの比率を調整する。
【０１３１】
具体的には、プロセッサ１６からの割込処理の通知に従って、有効データの比率を下げ、ダミーデータの比率を上げる。
【０１３２】
一方で、プロセッサ１６からの割込処理の終了の通知に従って、有効データの比率を上げ、ダミーデータの比率を下げる。
【０１３３】
図１５は、実施形態５に基づく画像システム１Ｂのシーケンスを説明する図である。
図１５に示されるように、他アプリケーションの割込処理が発生した場合には、低速転送区間として、有効データの比率を下げる。
【０１３４】
一方、他アプリケーションの割込処理が終了した場合には、高速転送区間として、有効データの比率を上げる。
【０１３５】
当該システムにより、割込処理が発生した場合には、画像バッファメモリ２０の共通メモリ１２への優先度を下げて、他の周辺モジュール１８の共通メモリおよび共通バス１４のアクセスを優先させることが可能になる。すなわち、システム割込通知は、共通メモリ１２へアクセスする優先度が変更されたことを示すものである。当該処理により、システム割込処理が発生した場合には、低速転送区間を実行し、それ以外の競合しない区間において高速転送区間を実行することにより、アンダーフローの発生を抑制することが可能である。
【０１３６】
以上、本開示を実施形態に基づき具体的に説明したが、本開示は、実施形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【符号の説明】
【０１３７】
１，１Ａ，１Ｂ  画像システム、１０，１０Ａ，１０Ｂ  画像データ装置、１２  共通メモリ、１４  共通バス、１６  プロセッサ、１８  周辺モジュール、２０  画像バッファメモリ、４０  ディスプレイ、１００，１００Ａ，１００Ｂ  ディスプレイポート送信器、１０２  データリード制御部、１０４  リードデータ数演算部、１０６  データ量加減算部、１０８  パケット生成部、１１０  送信データ数カウンタ、１１２  １水平ライン総有効データ数レジスタ、１１４  送信パケット数カウンタ、１１６  １水平ライン総パケット数レジスタ、１１８  １水平ライン残り総有効データ数演算部、１２０  １水平ライン残り総パケット数演算部、１２２  平均データ数演算部、１３２  有効データ設定部。
【図１】
2018105958.tif 000003
【図２】
2018105958.tif 000004
【図３】
2018105958.tif 000005
【図４】
2018105958.tif 000006
【図５】
2018105958.tif 000007
【図６】
2018105958.tif 000008
【図７】
2018105958.tif 000009
【図８】
2018105958.tif 000010
【図９】
2018105958.tif 000011
【図１０】
2018105958.tif 000012
【図１１】
2018105958.tif 000013
【図１２】
2018105958.tif 000014
【図１３】
2018105958.tif 000015
【図１４】
2018105958.tif 000016
【図１５】
2018105958.tif 000017