(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-09-15
(45)【発行日】2022-09-27
(54)【発明の名称】データ転送装置およびデータ転送方法
(51)【国際特許分類】
G09G 5/00 20060101AFI20220916BHJP
H04N 21/436 20110101ALI20220916BHJP
G06F 13/28 20060101ALI20220916BHJP
【FI】
G09G5/00 555D
G09G5/00 555M
H04N21/436
G06F13/28 310Y
(21)【出願番号】P 2021057828
(22)【出願日】2021-03-30
(62)【分割の表示】P 2016250776の分割
【原出願日】2016-12-26
【審査請求日】2021-03-31
(73)【特許権者】
【識別番号】302062931
【氏名又は名称】ルネサスエレクトロニクス株式会社
(74)【代理人】
【識別番号】110001195
【氏名又は名称】弁理士法人深見特許事務所
(72)【発明者】
【氏名】上原 八弓
【審査官】西島 篤宏
(56)【参考文献】
【文献】特開2013-223089(JP,A)
【文献】特開2013-228840(JP,A)
【文献】特開2006-276221(JP,A)
【文献】国際公開第2007/116539(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G09G 5/00 - 5/42
H04N 21/436
G06F 13/28
(57)【特許請求の範囲】
【請求項1】
画像バッファメモリの画像データについてディスプレイに転送するデータ転送装置であって、
前記ディスプレイに転送する、有効データとダミーデータとを含む転送パケットを生成するパケット生成部と、
前記転送パケットの前記有効データと前記ダミーデータとの比率を調整するデータ調整部とを備え、
共有メモリにアクセスして前記画像バッファメモリにデータを格納するに際して、前記共有メモリにアクセスし易い高速転送区間と、前記共有メモリにアクセスし難い低速転送区間とが設定され、
前記データ調整部は、
前記高速転送区間において前記有効データの比率を上げ、前記ダミーデータの比率を下げ、
前記低速転送区間において前記有効データの比率を下げ、前記ダミーデータの比率を上げる、データ転送装置。
【請求項2】
前記データ調整部は、
外部からの割込み処理の通知に従って、前記有効データの比率を上げ、前記ダミーデータの比率を下げ、
前記外部からの前記割込み処理の終了に従って、前記有効データの比率を下げ、前記ダミーデータの比率を上げる
、請求項1記載のデータ転送装置。
【請求項3】
画像バッファメモリの画像データについてディスプレイに転送するデータ転送方法であって、
前記ディスプレイに転送する、有効データとダミーデータとを含む転送パケットを生成するステップと、
前記転送パケットの前記有効データと前記ダミーデータとの比率を調整するステップとを備え、
共有メモリにアクセスして前記画像バッファメモリにデータを格納するに際して、前記共有メモリにアクセスし易い高速転送区間と、前記共有メモリにアクセスし難い低速転送区間とが設定され、
前記調整するステップは、前記高速転送区間において前記有効データの比率を上げ、前記ダミーデータの比率を下げるステップと、
前記低速転送区間において前記有効データの比率を下げ、前記ダミーデータの比率を上げるステップとを含む、データ転送方法。
【請求項4】
前記調整するステップは、
外部からの割込み処理の通知に従って、前記有効データの比率を上げ、前記ダミーデータの比率を下げるステップと、
前記外部からの前記割込み処理の終了に従って、前記有効データの比率を下げ、前記ダミーデータの比率を上げるステップとを含む
、請求項3記載のデータ転送方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、データ転送装置およびデータ転送方法に関し、画像データを転送する方式に関する。
【背景技術】
【0002】
一般的に、画像データのデータ量は大容量であるため、システムに搭載された内部メモリ等では容量が不足する。したがって、保存場所として大容量の外部メモリが共通メモリとして利用されることが多い。
【0003】
そして、当該共通メモリに対して、画像データの更新や、他のアプリケーション処理が実行される。また、共通メモリには、プロセッサやカメラ等の他の周辺モジュールからもアクセスされる。
【0004】
また、ディスプレイ等に画像データを転送する場合には、一般的に外部メモリでは、リード要求からリードデータ出力までのレスポンスが遅いため、画像データの一部を画像バッファメモリにバッファリングすることが行なわれている。
【0005】
そして、ディスプレイ送信器は、画像バッファメモリにバッファリングされた画像データを読込み、ディスプレイへ出力する。
【0006】
一方で、画像バッファメモリが、共通メモリにアクセスを行うとき、他のモジュールとアクセスが競合した場合には、画像バッファメモリのデータアクセスが遅れ、画像バッファメモリのバッファリングが間に合わず、画像バッファメモリのアンダーフローが発生する可能性がある。この画像バッファメモリのバッファリングの遅れによりディスプレイの画像表示が乱れる可能性がある。
【0007】
特開平6-175646号公報においては、バッファリング手法を工夫する方式を提案している。
【先行技術文献】
【特許文献】
【0008】
【発明の概要】
【発明が解決しようとする課題】
【0009】
しかしながら、上記公報に従う方式では、ディスプレイへの画像データの転送レートは固定されており、ディスプレイの表示が乱れないようにフレームレートを維持するためディスプレイへの画像転送に間に合うようにシステムを構築する必要があった。
【0010】
本開示は、上記の課題を解決するためのものであって、簡易な方式で効率的に画像転送を実行することが可能なデータ転送装置およびデータ転送方法を実現する。
【0011】
その他の課題と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
【課題を解決するための手段】
【0012】
一実施例によれば、画像バッファメモリの画像データについてディスプレイに転送するデータ転送装置であって、ディスプレイに転送する、有効データとダミーデータとを含む転送パケットを生成するパケット生成部と、転送パケットの有効データとダミーデータとの比率を調整するデータ調整部とを備える。高速転送区間と、低速転送区間とが予め設定され、データ調整部は、高速転送区間において有効データの比率を上げ、ダミーデータの比率を下げ、低速転送区間において有効データの比率を下げ、ダミーデータの比率を上げる。
【発明の効果】
【0013】
一実施例によれば、簡易な方式で効率的に画像転送を実行することが可能である。
【図面の簡単な説明】
【0014】
【
図1】実施形態1に基づく画像システム1を説明する図である。
【
図2】実施形態1に基づくディスプレイポート送信器100の機能ブロック図である。
【
図3】実施形態1に基づく画像データの構成を説明する図である。
【
図4】1水平ライン総有効データについてパケットデータTUで送信する場合の処理の流れについて説明する図である。
【
図5】パケットデータの有効データの比率の調整について説明する図である。
【
図6】実施形態に基づくパケット生成部108で生成するパケットデータについて説明する図である。
【
図7】実施形態1に基づく画像バッファメモリ20の更新データの蓄積量を検出する方式について説明する図である。
【
図8】実施形態1に基づく画像バッファメモリ20の更新データの蓄積量を検出する別の方式について説明する図である。
【
図9】実施形態2に基づくパケットデータの送信方式について説明する図である。
【
図10】実施形態3に基づく画像システム1Aを説明する図である。
【
図11】実施形態3に基づくディスプレイポート送信器100Aの機能ブロック図である。
【
図12】実施形態3に基づく画像システム1Aのシーケンスを説明する図である。
【
図13】実施形態3に基づく有効データ数設定テーブルについて説明する図である。
【
図14】実施形態4に基づく画像システム1Bを説明する図である。
【
図15】実施形態4に基づく画像システム1Bのシーケンスを説明する図である。
【発明を実施するための形態】
【0015】
実施形態について図面を参照しながら詳細に説明する。なお、図中同一または相当部分には同一符号を付し、その説明は繰り返さない。
【0016】
(実施形態1)
図1は、実施形態1に基づく画像システム1を説明する図である。
【0017】
図1に示されるように、画像システム1は、画像データ装置10と、ディスプレイ40とを含む。
【0018】
画像データ装置10は、画像データを処理する装置であり、情報処理装置の一種である。
【0019】
画像データ装置10は、共通メモリ(外部メモリ)12と、共通バス14と、プロセッサ16と、周辺モジュール18と、画像バッファメモリ20と、ディスプレイポート送信器100とを含む。
【0020】
共通メモリ(外部メモリ)12は、大容量のメモリであり、一例としてRAM(Random Access Memory)を用いることが可能である。
【0021】
共通バス14は、各部と接続されており、互いにデータの授受が可能に設けられている。
【0022】
プロセッサ16は、画像データ装置10全体を制御する。
【0023】
周辺モジュール18は、一例としてカメラモジュールを設ける場合について説明する。当該カメラモジュールで撮像された撮像データが共通メモリ12に格納される。
【0024】
画像バッファメモリ20は、共通メモリ12に格納されている画像データについてバッファリング処理したデータを格納するメモリである。
【0025】
ディスプレイポート送信器100は、画像バッファメモリ20に格納された画像データをディスプレイ40に転送する。一例として、ディスプレイポート送信器100は、ディスプレイポートインタフェースを介して画像データをディスプレイ40に転送する。より具体的には、ディスプレイポート送信器100は、画像バッファメモリ20に格納された画像データを含む転送パケットを生成し、ディスプレイポートインタフェースを介してディスプレイ40に転送する。
【0026】
また、実施形態1のディスプレイポート送信器100は、画像バッファメモリ20のデータ蓄積量情報に基づいて転送パケット(以下、単にパケットとも称する)の内容を調整する。
【0027】
本例においては、転送パケットは、有効データと、ダミーデータとを含む。ディスプレイポート送信器100は、画像バッファメモリ20のデータ蓄積量情報に基づいて有効データとダミーデータとの比率を調整する。
【0028】
本例においては、データ蓄積量情報は、データ蓄積量に関する情報であり、データ蓄積の多い少ないに関する情報である。なお、当該情報に限られず、演算によりデータ蓄積量を把握することが可能な情報であっても良い。
【0029】
図2は、実施形態1に基づくディスプレイポート送信器100の機能ブロック図である。
【0030】
図2を参照して、ディスプレイポート送信器100は、データリード制御部102と、リードデータ数演算部104と、データ量加減算部106と、パケット生成部108とを含む。ディスプレイポート送信器100は、さらに、送信データ数カウンタ110と、1水平ライン総有効データ数レジスタ112と、送信パケット数カウンタ114と、1水平ライン総パケット数レジスタ116と、1水平ライン残り総有効データ数演算部118と、1水平ライン残り総パケット数演算部120と、平均データ数演算部122とを含む。
【0031】
データリード制御部102は、画像バッファメモリ20に対してデータ読出(データリード)を指示し(データリードアクセス)、画像バッファメモリ20から画像データを取得する。
【0032】
リードデータ数演算部104は、平均有効データ数を基準としてデータ量加減算部106からの指示に従って増減したものをリードデータ数として出力する。
【0033】
データ量加減算部106は、更新データ蓄積量に従ってリードデータ数演算部104に対して転送パケットに含める有効データのデータ量の加減算を指示する。一例として、画像バッファメモリ20の更新データ蓄積量が多い場合には、転送パケットに含める有効データのデータ量を増加するように指示し、更新データ蓄積量が低い場合には、転送パケットに含める有効データのデータ量を減少するように指示する。
【0034】
パケット生成部108は、データリード制御部102から出力されたリードデータを含むパケットデータTUを生成して出力する。
【0035】
パケットデータTUの構成については後述するが、パケット生成部108は、パケットデータTUの構成として、リードデータを有効データとして、残りをダミーデータとして構成する。
【0036】
送信データ数カウンタ110は、パケットデータTUとして送信した有効データ数をカウントする。
【0037】
1水平ライン総有効データ数レジスタ112には、予め既定された1水平ラインの総有効データ数が設定される。
【0038】
1水平ライン残り総有効データ数演算部118は、1水平ラインの総有効データ数から送信した有効データ数を減算して残りの有効データ数を演算する。
【0039】
送信パケット数カウンタ114は、パケットデータTUとして送信したパケット数をカウントする。
【0040】
1水平ライン総パケット数レジスタ116には、予め規定された1水平ラインで有効データを送信する総パケット数が設定される。
【0041】
1水平ライン残り総パケット数演算部120は、1水平ラインの総パケット数から送信したパケット数を減算して残りのパケット数を演算する。
【0042】
平均データ数演算部122は、残りの有効データ数に対して残りのパケット数を除算する。これにより、これから転送するべき1パケットデータTU当たりの平均有効データ数を算出する。すなわち、平均有効データ数は、パケットデータを生成するたびに更新されるものである。
【0043】
平均データ数演算部122は、当該算出した平均有効データ数をリードデータ数演算部104に出力する。なお、初期値は予め設定しておくことが可能であり、当該初期値に従ってリードデータ数演算部104は、リードデータ数をデータリード制御部102に出力する。
【0044】
本例においては、データ量加減算部106は、更新データ蓄積量情報に従ってリードデータ数演算部104に対してリードデータ数の増減を指示する。リードデータ数演算部104は、データ量加減算部106からの指示に従って、平均データ数演算部122から出力された平均有効データ数から増減させたものをリードデータ数として出力する。このようにすることで、リードデータ数演算部104から出力されるリードデータ数が調整される。そして、データリード制御部102は、リードデータ数演算部104で演算されたリードデータ数に従って、画像バッファメモリ20から画像データを取得する。
【0045】
データリード制御部102は、取得した画像データをリードデータとしてパケット生成部108に出力する。パケット生成部108は、取得したリードデータを有効データとしてパケットデータTUを生成して出力する。
【0046】
したがって、画像バッファメモリ20の更新データ蓄積量が減少してきた場合には、取得されるリードデータ数が調整されて、1パケットデータTUあたりの有効データが少なくなる。
【0047】
一方、画像バッファメモリ20の更新データ蓄積像が増加してきた場合には、取得されるリードデータ数が調整されて、1パケットデータTUあたりの有効データが多くなる。
【0048】
当該方式により、画像バッファメモリ20の更新データ量情報に基づいて1パケットデータTUにおける有効データとダミーデータとの比率が調整される。
【0049】
したがって、画像バッファメモリ20のバッファリングの遅れが生じる場合には、パケットデータTUにおける有効データの比率を調整して、有効データの比率を下げる。
【0050】
一方、画像バッファメモリ20のバッファリングの遅れが解消した場合には、パケットデータTUにおける有効データの比率を調整して、有効データの比率を上げる。
【0051】
これにより、画像バッファメモリ20のアンダーフローが生じることを抑制し、ディスプレイ40の画像表示の乱れを抑制することが可能である。
【0052】
図3は、実施形態1に基づく画像データの構成を説明する図である。
【0053】
図3には、ディスプレイポート送信器100からディスプレイ40に送信される画像データの構成が示されている。
【0054】
図3に示されるように、ディスプレイポート送信器100を介してディスプレイ40に送られる画像データは、ブランキングデータと有効画像データとからなる。有効画像データは、画像バッファメモリ20に格納されており、
図2に示されるディスプレイポート送信器100を介してディスプレイ40に転送される。ブランキングデータは、
図2には図示していないが、ディスプレイポート送信器100に含まれるブランキングデータ生成回路によって垂直ブランキング期間、水平ブランキング期間に生成されるものである。
【0055】
具体的には、第1段階として垂直ブランキング期間が設けられる。垂直ブランキング期間は、1水平ラインのデータが全てブランキングデータであり、当該ブランキング期間のデータがディスプレイポート送信器100によって生成されディスプレイ40に転送される。
【0056】
次に、第2段階として垂直有効画像データ期間が設けられる。垂直有効画像データ期間は、2つの領域に分割される。垂直有効画像データ期間のうち水平ブランキング期間は、ディスプレイポート送信器100によって生成されたブランキングデータであり、水平有効画像データ期間は、画像バッファメモリ20から読み出した有効画像データである。これらのデータが1水平ラインごとにディスプレイポート送信器100からディスプレイ40に転送される。
【0057】
そして、第3段階として垂直ブランキング期間が設けられる。垂直ブランキング期間は、1水平ラインのデータが全てブランキングデータであり、当該ブランキング期間のデータがディスプレイポート送信器100によって生成されディスプレイ40に転送される。
【0058】
ディスプレイポート送信器100から転送される1水平ラインのデータは、いずれも複数のパケットデータTUで構成される。
【0059】
本例においては、一例として、1水平ラインの有効画像データを転送するためのパケット数としてn個の転送パケット数が設定されている場合が示されており、一例としてパケットデータTU0~TU(n)が転送される場合が示されている。また、次の水平ライン有効画像データとしてパケットデータTU(n+1)~・・・が転送される場合が示されている。
【0060】
そして、順次、パケットデータTUが送信され、全ての有効画像データ期間のデータの転送が完了する。
【0061】
これに伴い、全パケットデータに従いディスプレイ40における画像が表示される。
【0062】
なお、パケットデータTUは、有効データと、ダミーデータの開始を示すFSシンボルと、ダミーデータと、ダミーデータの終了を示すFEデータとで構成される。
【0063】
図4は、1水平ライン総有効データについてパケットデータTUで送信する場合の処理の流れについて説明する図である。
【0064】
図4に示されるように、ディスプレイ40で表示に用いられるピクセルクロックと、パケットデータTUを送信する場合に用いられる転送クロックとが示されている。ピクセルクロックよりも転送クロックの方が周波数が高いため、ディスプレイ40側の1水平ラインの水平有効画像データ期間に転送可能な総パケット数で1水平ライン総有効データを分割する。
【0065】
そして、分割した各有効データ0~(n)は、各パケットデータTU0~TU(n)に割り当てられ、割り当てられた有効データを含むパケットデータがディスプレイ40に転送される。
【0066】
一例としてパケットデータは、32~64バイト単位で構成される。
【0067】
ディスプレイポート規格では、ディスプレイ40に表示する際のピクセルクロックよりも転送クロックによる画像データのデータ転送速度の方が高速である。したがって、ディスプレイポート規格では、有効データに一定量のダミーデータを付加したパケットデータが形成され、有効データのデータ転送速度を落とした状態で転送する。
【0068】
ディスプレイポート規格では、1水平ラインの有効な総データ量は画像フォーマットの形式に従って設定される。
【0069】
図5は、パケットデータの有効データの比率の調整について説明する図である。
【0070】
図5に示されるように、画像バッファメモリ20の更新データの蓄積量が低下した場合には、有効データの比率を少なくして有効データ転送速度を下げる。
【0071】
一方、画像バッファメモリ20の更新データの蓄積量が回復(増加)した場合には、有効データの比率を多くして有効データ転送速度を上げる。
【0072】
図6は、実施形態に基づくパケット生成部108で生成するパケットデータについて説明する図である。
【0073】
図6には、状態が異なる複数のパケットデータが示されている。
図2で説明したようにまず、1水平ラインの総有効データを1水平ラインのパケット数で除算した平均有効データ数を計算し、当該平均有効データ数が含まれるパケットデータを生成する(有効データ転送速度平均)。
【0074】
次に、画像バッファメモリ20の更新データの蓄積量が低下した場合には、有効データ数を平均有効データ数から減少させたパケットデータを生成する(有効データ転送速度減少)。
【0075】
次に、画像バッファメモリ20の更新データの蓄積量が回復(あるいは増加)した場合には、有効データ数を平均有効データ数から増加させたパケットデータを生成する(有効データ転送速度増加)。
【0076】
実施形態1においては、画像バッファメモリ20から共通メモリ12へのリードアクセスが、プロセッサ16や他のモジュールのアクセスと競合し、画像バッファメモリ20の更新が遅れ、更新データ量が少なくなった場合には、ディスプレイポート送信器100は、画像バッファメモリ20から通知される更新データ量の蓄積量が低下した状態を検知し、パケットデータTUのダミーデータ量を増やし、有効データの比率を少なくすることで一時的にディスプレイ40への有効データ転送速度を減少させる。これにより画像バッファメモリ20のアンダーフローを回避する。
【0077】
その後、ディスプレイポート送信器100は、画像バッファメモリ20から通知される更新データ量により、更新データが十分に蓄積されたことを検知した場合、パケットデータTUのダミーデータ量を減らし、有効データの比率を多くすることでディスプレイ40への有効データ転送速度を増加させる。これにより、画像転送途中の画像バッファメモリ20のデータ更新遅延による、画像バッファメモリのアンダーフローを回避し、ディスプレイ40の画像表示の乱れを防ぐことが可能となる。
【0078】
なお、画像バッファメモリ20の更新データの蓄積量が回復した場合に、パケットデータにおける有効データ数を平均有効データ数から増加させずに、有効データ数を平均有効データ数としてもよい。上述したように、平均有効データ数は、1パケットデータTUが生成されるたびに残りの有効データ数に応じて更新されるため、残りの有効データ数が多ければ多いほど平均有効データ数の値は大きくなる。したがって、画像バッファメモリ20の更新データの蓄積量が回復した場合に、パケットデータにおける有効データ数を平均有効データ数としても1水平ラインの総有効データを転送することができる。
【0079】
図7は、実施形態1に基づく画像バッファメモリ20の更新データの蓄積量を検出する方式について説明する図である。
【0080】
図7に示されるように、画像バッファメモリ20がRAMで構成されている場合に、共通メモリ12からの画像データをRAMに書き込む際のライトアドレスと、ディスプレイポート送信器100に対して書き込まれた画像データを読み出す際のリードアドレスとを比較し、アドレス差で更新された画像バッファメモリ20の更新データの蓄積量を検出するようにしてもよい。
【0081】
具体的には、ライトアドレスとリードアドレスとの差が所定の閾値未満となった場合には、更新データの蓄積量が低下したと判断して、ディスプレイポート送信器100に通知するようにしてもよい。また、ライトアドレスとリードアドレスとの差が所定の閾値以上となった場合に、更新データの蓄積量が回復したと判断してディスプレイポート送信器100に通知するようにしても良い。
【0082】
また、比較に際し、複数の閾値を用いて、更新データの蓄積量を検出するようにしてもよい。
【0083】
具体的には、ライトアドレスとリードアドレスとの差が所定の第1閾値未満となった場合には、更新データの蓄積量が低下したと判断して、ディスプレイポート送信器100に通知するようにしてもよい。また、ライトアドレスとリードアドレスとの差が所定の第1閾値以上、第2閾値未満(第1閾値<第2閾値)となった場合に、更新データの蓄積量が回復したと判断してディスプレイポート送信器100に通知するようにしても良い。また、ライトアドレスとリードアドレスとの差が所定の第2閾値以上となった場合に、更新データの蓄積量が増加したと判断してディスプレイポート送信器100に通知するようにしても良い。
【0084】
当該通知に従って、
図5に示されるように、画像バッファメモリ20の更新データの蓄積量が低下した場合には、有効データの比率を少なくして有効データ転送速度を下げる。一方、画像バッファメモリ20の更新データの蓄積量が回復(増加)した場合には、有効データの比率を多くして有効データ転送速度を上げる。
【0085】
図8は、実施形態1に基づく画像バッファメモリ20の更新データの蓄積量を検出する別の方式について説明する図である。
【0086】
図8には、画像バッファメモリ20としてFIFO(First In First Out)で構成されている場合に、プッシュ(ライト)命令の回数と、ポップ(リード)命令の回数とをカウントする。プッシュ命令の回数とポップ命令の回数とをカウントし、回数差を比較することで更新された画像バッファメモリ20の更新データの蓄積量を検出するようにしてもよい。
【0087】
具体的には、プッシュ(ライト)命令の回数と、ポップ(リード)命令の回数との差が所定の閾値未満となった場合には、更新データの蓄積量が低下したと判断して、ディスプレイポート送信器100に通知するようにしてもよい。また、ポップ(リード)命令の回数との差が所定の閾値以上となった場合に、更新データの蓄積量が回復したと判断してディスプレイポート送信器100に通知するようにしても良い。
【0088】
複数の閾値を用いて、更新データの蓄積量を検出するようにしてもよい。
【0089】
具体的には、プッシュ(ライト)命令の回数と、ポップ(リード)命令の回数との差が所定の第1閾値未満となった場合には、更新データの蓄積量が低下したと判断して、ディスプレイポート送信器100に通知するようにしてもよい。また、プッシュ(ライト)命令の回数と、ポップ(リード)命令の回数との差が所定の第1閾値以上、第2閾値未満(第1閾値<第2閾値)となった場合に、更新データの蓄積量が回復したと判断してディスプレイポート送信器100に通知するようにしても良い。また、プッシュ(ライト)命令の回数と、ポップ(リード)命令の回数との差が所定の第2閾値以上となった場合に、更新データの蓄積量が増加したと判断してディスプレイポート送信器100に通知するようにしても良い。
【0090】
当該通知に従って、
図5に示されるように、画像バッファメモリ20の更新データの蓄積量が低下した場合には、有効データの比率を少なくして有効データ転送速度を下げる。一方、画像バッファメモリ20の更新データの蓄積量が回復(増加)した場合には、有効データの比率を多くして有効データ転送速度を上げる。
【0091】
(実施形態2)
図9は、実施形態2に基づくパケットデータの送信方式について説明する図である。
【0092】
図9に示されるように、実施形態1のパケットデータに関しては1水平ラインの水平有効画像データ期間に転送可能な総パケット数で1水平ラインの総有効データを分割して、分割したデータを各パケットに配分する方式としていた。
【0093】
実施形態2では、共通メモリ12に対し、プロセッサ16や他の周辺モジュール18のアクセスがなく、画像バッファメモリ20が、共通メモリ12に対するリードアクセスの帯域が十分確保できる場合について説明する。また、画像バッファメモリ20の更新されたデータ蓄積量が十分である場合に、ディスプレイポート送信器100は、パケットデータTUのダミーデータの比率を下げることで有効データ転送速度を上げる。具体的には、有効データの比率を多くして有効データ転送速度を上げる。
【0094】
これにより、1水平ラインにおける有効データの転送期間を短縮することが可能である。
【0095】
1水平ラインにおける有効データの転送期間を短縮することにより、従来よりも早いタイミングで画像バッファメモリ20の更新をすることが可能となる。
【0096】
したがって、共通メモリ12へのリードアクセスが、プロセッサ16や他の周辺モジュール18のアクセスによる競合により、遅延したとしても、有効データの転送期間が短縮できるため、アンダーフローの発生する可能性が抑制することが可能である。
【0097】
また、1水平ラインにおける画像データの転送期間を短縮することで、共通メモリ12から画像バッファメモリ20へのリードデータのデータ転送速度も上げることが可能であり、画像バッファメモリ20による共通メモリや、共通バス14の占有期間を短縮することが可能になるためシステム全体の性能向上を図ることも可能である。
【0098】
(実施形態3)
図10は、実施形態3に基づく画像システム1Aを説明する図である。
【0099】
図10に示されるように、画像システム1Aは、画像システム1と比較して画像データ装置10を画像データ装置10Aに置換した点が異なる。
【0100】
画像データ装置10Aは、画像データ装置10と比較してディスプレイポート送信器100をディスプレイポート送信器100Aに置換した点が異なる。その他の構成については上記で説明したのと同様であるのでその詳細な説明については繰り返さない。
【0101】
ディスプレイポート送信器100Aは、画像バッファメモリ20から画像データを取得する。本例におけるディスプレイポート送信器100Aは、更新データ蓄積量情報の入力を受けない。
【0102】
図11は、実施形態3に基づくディスプレイポート送信器100Aの機能ブロック図である。
【0103】
図11を参照して、ディスプレイポート送信器100Aは、データリード制御部102と、パケット生成部108と、送信パケット数カウンタ114と、有効データ設定部132とを含む。
【0104】
データリード制御部102は、画像バッファメモリ20に対してデータ読出(データリード)を指示し(データリードアクセス)、画像バッファメモリ20から画像データを取得する。
【0105】
パケット生成部108は、データリード制御部102から出力されたリードデータを有効データとしてパケットデータTUを生成して出力する。
【0106】
送信パケット数カウンタ114は、パケットデータTUとして送信したパケット数をカウントする。
【0107】
有効データ設定部132は、送信パケット数カウンタ114のカウンタ値および有効データ数設定テーブルに従ってパケットデータ毎に有効データ数を設定する。
【0108】
本実施の形態3に従う方式は、各パケットデータ毎に予め有効データ数を設定しておく方式である。
【0109】
図12は、実施形態3に基づく画像システム1Aのシーケンスを説明する図である。
【0110】
図12に示されるように、共通メモリ12に対して周辺モジュールあるいは画像バッファメモリがアクセスする。
【0111】
時刻T1からT2までの区間においては、周辺モジュール18は、共通メモリ12にアクセスしないことが想定される。
【0112】
また、時刻T2から時刻T3までの区間においては、周辺モジュール18は、共通メモリ12にアクセスすることが想定される。
【0113】
また、時刻T3から時刻T4までの区間においては、周辺モジュール18は、共通メモリ12にアクセスしないことが想定される。
【0114】
本実施の形態3においては、画像システム1Aのシーケンス処理における所定区間を高速転送区間と、低速転送区間とに分類する。
【0115】
高速転送区間とは、予めディスプレイポート送信器100Aが共通メモリ12へのアクセスを占有可能なことが想定される区間である。つまり、他の周辺モジュール18から共通メモリ12へのアクセスが想定されにくい区間である。
【0116】
低速転送区間とは、予めディスプレイポート送信器100Aが共通メモリ12へのアクセスを占有できないことが想定される区間である。つまり、他の周辺モジュール18から共通メモリ12へのアクセスが想定される区間である。
【0117】
例えば、周辺モジュール18であるカメラモジュールにて撮像した撮像画像をディスプレイ40に表示するようなシステムにおいては、カメラモジュールが撮像した撮像画像を共通メモリ12へ格納する期間と、共通メモリ12に格納された撮像画像をディスプレイ40に表示する期間とが予め設定されている場合がある。そのようなケースにおいては、カメラモジュールが撮像した撮像画像を共通メモリ12へ格納する期間、すなわち、周辺モジュールが共通メモリ12へアクセする期間を低速転送区間とし、それ以外の期間を高速転送区間としてもよい。
【0118】
実施形態3においては、予め想定される画像システム1Aのシーケンス処理において区間を分類して、分類した区間に応じてパケットデータの有効データの比率を調整する。
【0119】
高速転送区間に転送する位置のパケットデータについては、有効データ数を多くし、ダミーデータを少なくしたパケットデータを転送する。
【0120】
一方、低速転送区間に転送する位置のパケットデータについては、有効データ数を少なくし、ダミーデータを多くしたパケットデータを転送する。
【0121】
図13は、実施形態3に基づく有効データ数設定テーブルについて説明する図である。
【0122】
図13に示されるように、有効データ数設定テーブルには、パケットデータTU毎の有効データ数の設定値が格納されている。
【0123】
具体的には、高速転送区間に転送する位置のパケットデータTU0~TU(n)にそれぞれ対応して有効データ数が設定されている。
【0124】
さらに、低速転送区間に転送する位置のパケットデータTU(n+1)~(n+o)にそれぞれ対応して有効データ数が設定されている。
【0125】
さらに、高速転区間に転送する位置のパケットデータTU(n+o+1)~TU(n+o+p)にそれぞれ対応して有効データ数が設定されている。
【0126】
実施形態3においては、テーブルポインタ(カウンタ値)に従って有効データ数設定テーブルに格納されている有効データ数の設定値が順次読み出されて、リードデータ数としてデータリード制御部102に出力される。
【0127】
具体的には、最初の高速転送区間において、テーブルポインタに従ってパケットデータTU0~TUnの有効データ数が読み出されてデータリード制御部102に出力される。
【0128】
次に、低速転送区間において、テーブルポインタに従って、パケットデータTU(n+1)~(n+o)の有効データ数が読み出されてデータリード制御部102に出力される。
【0129】
次に、高速転送区間において、テーブルポインタに従って、パケットデータTU(n+o+1)~(n+o+p)の有効データ数が読み出されてデータリード制御部102に出力される。
【0130】
予め高速転送区間および低速転送区間を分類して、当該それぞれの区間に転送する位置のパケットデータの有効データ数を調整する。当該方式により共通メモリ12へのリードアクセスが、プロセッサ16や他の周辺モジュール18のアクセスによる競合する区間には低速転送区間を実行し、それ以外の競合しない区間において高速転送区間を実行することにより、アンダーフローの発生を抑制することが可能である。
【0131】
また、当該方式により、画像バッファメモリ20からの更新データ蓄積量の情報の通知無しに制御することが可能となる。
【0132】
なお、本例においては、各パケットデータ毎の有効データ数を設定する有効データ数設定テーブルを設けた構成について説明したが、全てのパケットデータ毎の有効データ数を設定するのではなく、高速転送区間から低速転送区間へあるいは、低速転送区間から高速転送区間へ切り替える際のパケットデータの番号を情報として格納するようにしても良い。
【0133】
そして、テーブルデータポインタ(カウンタ値)と当該情報とを比較して、有効データ数の値を調整するようにしても良い。当該方式によりテーブルの容量を小さくすることが可能である。
【0134】
(実施形態4)
図14は、実施形態4に基づく画像システム1Bを説明する図である。
【0135】
図14に示されるように、画像システム1Bは、画像システム1と比較して画像データ装置10を画像データ装置10Bに置換した点が異なる。
【0136】
画像データ装置10Bは、画像データ装置10と比較してディスプレイポート送信器100をディスプレイポート送信器100Bに置換した点が異なる。その他の構成については上記で説明したのと同様であるのでその詳細な説明については繰り返さない。
【0137】
ディスプレイポート送信器100Bは、画像バッファメモリ20から画像データを取得する。また、プロセッサ16からシステム割込通知を受ける。
【0138】
実施形態4に従うディスプレイポート送信器100Bは、プロセッサ16からのシステム割込処理通知に従ってパケットデータの有効データの比率を調整する。
【0139】
具体的には、プロセッサ16からの割込処理の通知に従って、有効データの比率を下げ、ダミーデータの比率を上げる。
【0140】
一方で、プロセッサ16からの割込処理の終了の通知に従って、有効データの比率を上げ、ダミーデータの比率を下げる。
【0141】
図15は、実施形態4に基づく画像システム1Bのシーケンスを説明する図である。
【0142】
図15に示されるように、他アプリケーションの割込処理が発生した場合には、低速転送区間として、有効データの比率を下げる。
【0143】
一方、他アプリケーションの割込処理が終了した場合には、高速転送区間として、有効データの比率を上げる。
【0144】
当該システムにより、割込処理が発生した場合には、画像バッファメモリ20の共通メモリ12への優先度を下げて、他の周辺モジュール18の共通メモリおよび共通バス14のアクセスを優先させることが可能になる。すなわち、システム割込通知は、共通メモリ12へアクセスする優先度が変更されたことを示すものである。当該処理により、システム割込処理が発生した場合には、低速転送区間を実行し、それ以外の競合しない区間において高速転送区間を実行することにより、アンダーフローの発生を抑制することが可能である。
【0145】
以上、本開示を実施形態に基づき具体的に説明したが、本開示は、実施形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【符号の説明】
【0146】
1,1A,1B 画像システム、10,10A,10B 画像データ装置、12 共通メモリ、14 共通バス、16 プロセッサ、18 周辺モジュール、20 画像バッファメモリ、40 ディスプレイ、100,100A,100B ディスプレイポート送信器、102 データリード制御部、104 リードデータ数演算部、106 データ量加減算部、108 パケット生成部、110 送信データ数カウンタ、112 1水平ライン総有効データ数レジスタ、114 送信パケット数カウンタ、116 1水平ライン総パケット数レジスタ、118 1水平ライン残り総有効データ数演算部、120 1水平ライン残り総パケット数演算部、122 平均データ数演算部、132 有効データ設定部。