JP4776947B2 - データ処理装置 - Google Patents

データ処理装置 Download PDF

Info

Publication number
JP4776947B2
JP4776947B2 JP2005067417A JP2005067417A JP4776947B2 JP 4776947 B2 JP4776947 B2 JP 4776947B2 JP 2005067417 A JP2005067417 A JP 2005067417A JP 2005067417 A JP2005067417 A JP 2005067417A JP 4776947 B2 JP4776947 B2 JP 4776947B2
Authority
JP
Japan
Prior art keywords
data
fifo
output
input
processing means
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2005067417A
Other languages
English (en)
Other versions
JP2006252153A5 (ja
JP2006252153A (ja
Inventor
明裕 高村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2005067417A priority Critical patent/JP4776947B2/ja
Publication of JP2006252153A publication Critical patent/JP2006252153A/ja
Publication of JP2006252153A5 publication Critical patent/JP2006252153A5/ja
Application granted granted Critical
Publication of JP4776947B2 publication Critical patent/JP4776947B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Systems (AREA)

Description

本発明は、先入れ先出し方式のバッファ(FIFO)に関する。
先入れ先出し(FIFO:First-In First-Out)バッファは通常、データを入力するための入力ポートと、データを出力するための出力ポートとの間にバッファを接続し、データの入出力をそれぞれ独自のタイミングで実行できるようにしている。このようなFIFOバッファに求められる条件としては、バッファそのものに起因する遅延が少ないこと、バッファに格納できるデータ量が多いことなどが挙げられる。これは、入力ポートと出力ポートとの間で転送されるデータ量が多く、かつ、データの入出力タイミングが大きく異なっている場合でも、入出力ポート間でのデータの同期を取りやすくするためである。
このようなFIFOバッファは、そのバッファを構成するメモリ素子が高速かつ大容量となるため高価なものとなる。そこで従来は、上述のような入出力ポート間でのデータ転送タイミングや転送データ量に基づいて、最適な速度及び容量のFIFOバッファを決定していた。或は、高速であるが小容量なメモリ(例えばレジスタ)と、低速であるが大容量のメモリ(例えばDRAM)等と組み合わせて使用していた。
特許文献1に記載されているFIFOメモリは、高速な第1FIFOメモリと、低速の第2FIFOメモリとを直列に接続して構成されている。そして入力側のFIFOメモリにデータがあり、かつ出力側のFIFOメモリがフルではない場合に、入力側のFIFOから出力側のFIFOにデータを転送してFIFOバッファを形成している。
特開平7−57454号公報
しかし、この従来の構成では、高速或は低速のいずれのFIFOにデータを入力するかは予め固定的に決定されており、入力されるデータの入力速度や出力速度などに応じて適宜切り替えられるものではなかった。このため、データの入出力タイミングや転送するデータ量が変化した場合には、データ転送の効率が低下することになる。
本発明は、上記従来技術の欠点を解決することにある。
また本願発明の特徴は、データの入出力タイミングに応じてデータの流れを切り替え、データの遅れを少なくして先入れ先出し方式でデータを出力できるデータ処理装置を提供することにある。
本願発明の一態様に係るデータ処理装置は、以下のような構成を備える。即ち、
第1の構成情報に従って処理を実行しデータを出力する第1の処理手段と、当該第1の処理手段の処理したデータをバッファするFIFO部と、前記FIFO部のバッファしたデータを第2の構成情報に従って処理する第2の処理手段とを有するデータ処理装置であって、
前記FIFO部は、
第1FIFOと、
前記第1FIFOよりも高速で、容量の小さい第2FIFOと、
前記第1の構成情報に基づくデータの入力タイミングと前記第2の構成情報に基づくデータの出力タイミングに応じて、前記第1の処理手段からのデータを前記第2FIFOだけを介して出力するか、前記第1FIFOと前記第2FIFOの両方を介して出力するかを切り替える選択回路と、
前記第1又は第2FIFOでバッファしたデータを前記第2の処理手段に出力する出力手段と、を備えることを特徴とする。
尚、この発明の概要は、必要な特徴を全て列挙しているものでなく、よって、これら特徴群のサブコンビネーションも発明になり得る。
本発明によれば、データの入出力タイミングに応じて内部のFIFOを切り替えることにより、データの遅れを少なくして先入れ先出し方式でデータを出力できるという効果がある。
以下、添付図面を参照して本発明の好適な実施の形態を詳しく説明する。尚、以下の実施の形態は特許請求の範囲に係る発明を限定するものでなく、また本実施の形態で説明されている特徴の組み合わせの全てが発明の解決手段に必須のものとは限らない。
図1は、本発明の実施の形態に係るデータ処理装置のデータ入出力部の構成を示すブロック図である。
ここでは、先入れ先出しバッファ(FIFO)100、先入れ先出しバッファ100へデータを供給する入力処理部101、先入れ先出しバッファ100からデータを入力して出力する出力処理部102、及び、この装置全体の動作を制御するCPU103とを備えている。このCPU103には、このCPU103により実行されるプログラムや各種データを記憶しているROM104、CPU103による制御処理時に各種データを一時的に記憶するワークエリアとして使用されるRAM105が接続されている。
尚、ここで入力処理部101と出力処理部102のいずれにおいて、このデータ処理装置の動作中に、データの入力タイミング、出力タイミング、データ転送量が変化するものとする。例えば、動的再構成デバイスのように、入力処理部101は、CPU103からの構成情報(configuration data)211によって、その処理内容が変化する。これにより、このデータ処理装置の動作中に、データの入力タイミング、データの出力タイミング、転送するデータ量が変化する。これは出力処理部102においても同様であり、CPU103からの構成情報(configuration data)212によって、その処理内容が変化するものとする。
尚、このCPU103は、FIFO100、入力処理部101、出力処理部102を制御できるものであれば、CPUではなくシーケンサ等でも構成することができる。
以下、図1に示す装置の動作を説明する。
CPU103は、入力処理部101、出力処理部102における処理内容を設定する。この処理内容は、例えば画像処理における解像度変換(拡大或は縮小)処理であったり、水平方向の画素値の平均を求めることによるローパスフィルタであったりする。
入力処理部101は、CPU103によって設定された内容に応じてデータ処理を行い、FIFO100からのレディ信号203が「1」(FIFO100がデータ受け取り可能)であればデータ201を出力する。これと同時に、データ201が有効であることを示すデータ有効信号202を「1」にする。尚、レディ信号203が「0」(FIFO100がデータ受け取り不可能)であれば、このレディ信号203が「1」になるまで待機する。
FIFO100は、データを受け取り可能な状態であれば、レディ信号203を「1」にし、そうでなければ「0」で出力する。更にFIFO100は、データ受け取り可能(レディ信号203=1)な状態で、データ有効信号202が「1」で出力されていると、データ201を受け取って、内部メモリ(FIFOバッファ)に格納する。更に、FIFO100は、FIFO100に一つ以上のデータがあり、その中で最も古く入力されたデータが出力可能である場合、そのデータをデータ204として出力処理部102に出力すると共に、データ有効信号205を「1」にする。出力処理部102は、データを受信できない場合には受信不可信号206を「1」にして出力する。FIFO100は、受信不可信号206が「0」(出力処理部102がデータの受取り完了)になるとデータ204を出力処理部102に出力し、データ有効信号205を「1」にする。そして、受信不可信号206が「1」になると、そのデータ204が出力処理部102で受け取られたことを示しているため、そのデータをFIFO100から消去する。
この時、FIFO100の内部の動作は、CPU103から供給されるFIFO100のパラメータ213、入力処理部101からの状態信号214(状態変数、構成情報、データ出力タイミング)、出力処理部102からの状態信号215(状態変数、構成情報、データ入力タイミング)のうち、少なくとも一つのパラメータ、或は信号によって変化する。
[実施の形態1]
図2は、本発明の実施の形態1に係るFIFOバッファ100の機能構成を示すブロック図である。尚、図2は簡略化のため、低速なFIFOと高速なFIFOを順に直列に2つ組み合わせたものを示しているが、低速なFIFOと高速なFIFOの接続順を逆にしたものや、2つ以上のFIFOを組み合わせることも可能である。
FIFO100は、判定回路118、FIFO制御部130、低速なFIFOを構成するメモリ121、入力用のデマルチプレクサ120、出力用のマルチプレクサ122、及び高速なFIFO構成するレジスタ124とを備えている。
判定回路118は、入力したデータ201をメモリ(低速なFIFO)121とレジスタ(高速なFIFO)124のいずれに格納するかを判断し、その結果をFIFO制御部130に出力する。この判定に際しては、レジスタ124に格納されているデータ量265、メモリ121に格納されているデータ量262、入力処理部101からの状態信号214、出力処理部102からの状態信号215の少なくとも1つ以上とパラメータ117とが参照される。
この結果、FIFO制御部130は、デマルチプレクサ120への制御信号261とマルチプレクサ122への制御信号263により、入力したデータ201をメモリ121か、レジスタ124のいずれに入力するかを切り替える。
図3(A)(B)〜図8は、本実施の形態1に係るFIFO100の動作例を説明する図である。
図3(A)及び図6(A)は、メモリ121とレジスタ124の容量、遅れ量(LATENCY)、及びサイクルタイムを示している。ここではレジスタ124のメモリ容量は、1[バイト]、遅れ量は「1」、サイクルタイムは「1」であり、メモリ121のメモリ容量は10[バイト]、遅れ量は「4」、サイクルタイムは「2」である。図3(B)は、サイクルタイムが12サイクルの場合における、最適な入力データ201と出力データ204の入出力タイミングを示している。
図4は、パラメータ117に設定された値によって、低速なメモリ121が空で高速なレジスタ124に空きがある時は、入力したデータ201を高速なレジスタ124に格納し、それ以外はデータ201を低速なメモリ121に格納するように設定されている場合の動作を説明するタイミング図である。
また図5は、入力したデータ201を常に高速なレジスタ124に格納するように設定されている場合の動作を説明するタイミング図である。
図4では、図3(B)に示すタイミングでデータ201が入力されており、最初の2つのデータ「1」「2」が順次レジスタ124に格納されている。しかし、データ「2」の出力時に出力処理部102からの受信不可信号206が「1」であるためデータ204が出力できなくなってレジスタ124に空きがなくなるため、次のデータ「3」[4]はメモリ121に格納される。メモリ121では4サイクルタイムの遅延が生じ、メモリ121からデータ「3」が出力される時点でレジスタ124からのデータ「2」が出力処理部102で受信される。これによりメモリ121から出力されるデータ[3]はマルチプレクサ122を介してレジスタ124に入力され、1サイクルタイム後にデータ204として出力処理部102に出力される。次のデータ「4」も同様にして、1サイクルタイム後にデータ204として出力処理部102に出力される。
これに対して図5の例では、最初の2つのデータ「1」「2」、図4の場合と同様にして順次レジスタ124に格納される。そしてデータ「2」の出力時に出力処理部102からの受信不可信号206が「1」であるためデータ204が出力できなくなってレジスタ124に空きがなくなるため、次のデータ「3」はレジスタ124が空くのを待つ状態となる。そして前述の図4と同じタイミングで、出力処理部102からの受信不可信号206が「0」となってレジスタ124からのデータ「2」が出力処理部102で受信される。次のデータ「4」は、図4の場合と同様に、データ「3」の1サイクルタイム後にデータ204として出力処理部102に出力される。
このように図4及び図5では、図4の場合(12サイクル)の方が図5の場合(16サイクル)よりも、サイクルタイムが短くなるために高い性能となる例を示している。尚、入力処理部101からFIFO100へ出力されるデータの最適なタイミングは、12サイクルタイムの場合は「 1 − 2 − 3 − 4 − − − − − − 」であり、FIFO100から出力処理部102に出力されるデータの最適なタイミングは「 1 − − − − − − 2 − 3 − 4 」であると仮定する(数字が記入されているサイクルはデータが出力/入力されるサイクルを示し、「−」が記入されているサイクルは、データが出力/入力されないサイクルを示す)。サイクルタイムは、図4の場合、パラメータ117が12サイクルとなり、図5の場合は、パラメータ117が16サイクルの場合に相当している。
また図6(B)のような最適なデータの入出力タイミングに対して、図7及び図8では、パラメータ117に設定された値が図7の場合よりも図8の場合の方が、サイクルタイムが短くなるために高い性能となる例を示している。尚、図6(B)に示すように、入力処理部101からFIFO100へ入力されるデータの最適なタイミングは「 1 2 3 4 − 」であり、FIFO100から出力処理部102に出力されるデータの最適なタイミングは「 1 − 2 3 4 」であると仮定する。
図7では、最初のデータ「1」「2」がそれぞれ順次レジスタ124に入力され、受信不可信号206により、レジスタ124からのデータ「2」の出力タイミングが1サイクル遅れることによりレジスタ124がフルの状態となり、次のデータ「3」がメモリ121に入力される。更にこのデータ「3」はメモリ121で4サイクル遅れ、結果的に5サイクル送れてレジスタ124に入力されて6サイクル目で出力される。次にデータ「4」に関しても同様に、メモリ121内での2サイクルタイムの遅れにより、1サイクル分入力データ201が待たされ、データ201から6サイクルの遅れが生じている。この図7の例は、パラメータ117が8サイクルの場合に相当している。
また図8では、常にレジスタ124にデータが入力される。レジスタ124からデータ「2」が出力される際、受信不可信号206が「1」になってデータ「2」の出力が1サイクル遅れている。これにより入力するデータ201は1サイクル遅延される。しかし最終的には、1サイクル分が追加された6サイクル(パラメータ117に相当)でデータ転送が終了している。
このように、FIFO100に接続されている入力処理部101,出力処理部102の入力/出力タイミングに合わせて、入力データ201を格納するFIFOを選択した方が高い性能を得られる。
本実施の形態1では、入力処理部101,出力処理部102の入力/出力タイミングが変化した際、FIFO100のパラメータ117を変更することにより、入力したデータ201を格納するメモリ/レジスタを選択することができるため、高い性能を得ることができる。
図9は、本実施の形態に係るCPU103の処理を説明するフローチャートで、この処理を実行するプログラムはROM104に記憶されている。
まずステップS1で、データ201の出力状態、出力タイミングなどを決定する入力処理部101の構成情報211を入力処理部101へ設定し、ステップS2では、データ204の入力状態、入力タイミングなどを決定する出力処理部102の構成情報212を出力処理部102へ設定する。そしてステップS3で、これら情報を基にFIFOバッファ100に設定するパラメータ117を決定してパラメータ213としてFIFOバッファ100に設定する。
このようにして入力処理部101からFIFOバッファ100に供給されるデータと、そのタイミング、及びFIFOバッファ100から出力されるデータを受け取る出力処理部102におけるデータ204の入力タイミング等が決定され、これに応じたFIFOバッファ100の構成が決定されることになる。
次に本実施の形態に係るFIFOバッファ100におけるFIFOの切り替え処理について説明する。
図10は、本実施の形態に係るFIFOバッファ100の判定回路118における処理を説明するフローチャートである。
まずステップS11で、入力処理部101の状態信号214を入力して、入力処理部101の状態を取得する。次にステップS12で、出力処理部102の状態信号215を入力して、出力処理部102の状態を取得する。次にステップS13で、メモリ121の状態を取得し、ステップS14でレジスタ124の状態を取得する。そしてステップS15で、CPU103から設定されたパラメータ117の値を基に、データ201をどこに入力するかをFIFO制御部130に指示する。これによりFIFO制御部130は、デマルチプレクサ120、マルチプレクサ122を切り替えて、データ201をメモリ121に入力するか、或はレジスタ124に入力するかを切り替える。
これにより例えば、前述の図3(B)に示すようなデータの入出力タイミングが設定されている場合は、図4に示すような条件でデータ201の入力を切り替え、図6(B)に示すようなデータの入出力タイミングが設定されている場合は、図8に示すような条件でデータ201を入力するのが好ましいと判断されてFIFO制御部130による切り替え制御が実行される。
尚、FIFO制御部130は、例えば図4及び図7の場合では、メモリ121とレジスタ124の状態を入力し、メモリ121が空でレジスタ124に空きがあるときは、データ201がデマルチプレクサ120、マルチプレクサ122をスルーして直接レジスタ124に入力されるように設定し、それ以外ではデータ201がデマルチプレクサ120によりメモリ121に入力され、メモリ121の出力がマルチプレクサ122を介してレジスタ124に入力されるように切り替える。
一方、図5及び図8の場合は、常にデータ201がデマルチプレクサ120、マルチプレクサ122をスルーして直接レジスタ124に入力されるように設定する。
[実施の形態2]
次に本発明の実施の形態2について説明する。この実施の形態2の基本構成は前述の実施の形態1の場合とほぼ同様であるが、実施の形態2では、メモリ121とレジスタ124の配置が入れ替わっている点が異なっている。
図11は、本発明の実施の形態2に係るFIFO100aの機能構成を示すブロック図で、前述の実施の形態1の構成と共通する部分は同じ記号で示している。尚、図11は簡略化のため、低速なFIFOと高速なFIFOを順に直列に2つ組み合わせたものを示しているが、低速なFIFOと高速なFIFOの接続順を逆にしたものや、2つ以上のFIFOを組み合わせることも可能である。
FIFO100aは、判定回路118と、FIFO制御部13と、低速なメモリ121と、入力のデマルチプレクサ120と、出力のマルチプレクサ122と、高速なレジスタ124とを備えている。
この実施の形態2では、判定回路118は、高速なレジスタ124に格納されたデータを低速なメモリ121に転送するか、或はそのまま出力するか否かを判断し、その結果をFIFO制御部130に出力する。この判断に際しては、前述の実施の形態1と同様に、高速なレジスタ124に格納されたデータ量265、低速なメモリ121に格納されたデータ量262、入力処理部101の状態214、出力処理部102の状態215の少なくとも1つ以上とパラメータ117とを用いる。
この結果によって、デマルチプレクサ120の制御信号261とマルチプレクサ122の制御信号263を設定し、入力データ201をメモリ121に格納するか、レジスタ124に格納するかを切り替える。
図12(A)(B)〜図17は、本実施の形態2に係るFIFO100aの動作例を説明する図である。
図12(A)及び図15(A)は、メモリ121とレジスタ124の容量、遅れ量(LATENCY)、及びサイクルタイムを示している。ここではレジスタ124のメモリ容量は、2[バイト]、遅れ量は「1」、サイクルタイムは「1」であり、メモリ121のメモリ容量は10[バイト]、遅れ量は「4」、サイクルタイムは「2」である。
図12(B)は、サイクルタイムが10サイクルの場合における、最適な入力データ201と出力データ204の入出力タイミングを示している。ここでは低速なメモリ121の特性は、メモリ容量が「10」、レイテンシが「4」、サイクルタイムが「2」である。高速なレジスタ124の特性は、メモリ容量が「2」、レイテンシが「1」、サイクルタイムが「1」となっている。
図13は、パラメータ117に設定された値に基づいて、高速なレジスタ124の空き容量が「1」であれば、高速なレジスタ124内のデータを低速なメモリ121に転送する。但し、低速なメモリ121にデータがなく、受信不可信号(OUT DATA FULL)が「0」の場合は、レジスタ124のデータを出力する場合におけるデータの入出力タイミングを示している。
図13では、図12(B)に示すようなタイミングでデータ201が入力されると、レジスタ124は最初のデータ「1」を入力し、次のサイクルで受信不可信号206が「0」であるため、そのデータ「1」を出力データ204として出力する。次にデータ「2」も同様にレジスタ124に入力されるが、このデータ[2]の出力タイミングで受信不可信号206が「1」であるためレジスタ124からメモリ121に入力される。このメモリ121に格納されたデータ「2」は、次に受信不可信号206が「0」になるタイミングでデータ204として出力される。それ以降のデータ「3」「4」に関しても同様に、レジスタ124からメモリ121に入力されてメモリ121から出力される。
図14は、レジスタ124の空き容量が「0」であれば、レジスタ124のデータを低速なメモリ121に転送する。但し、メモリ121にデータがなく、受信不可信号(OUT DATA FULL)が「0」である場合は、レジスタ124のデータを出力する場合におけるデータの入出力タイミングを示している。
図14では、図12(B)に示すようなタイミングでデータ201が入力されると、レジスタ124は最初のデータ「1」を入力し、次のサイクルで受信不可信号206が「0」であるため、そのデータ「1」を出力データ204として出力する。次にデータ「2」「3」も同様にレジスタ124に入力されるが、このデータ[2]の出力タイミングで受信不可信号206が「1」であるためレジスタ124からメモリ121に入力される点は前述の図13と同様である。但し、図14では、受信不可信号206が「0」になった時点でメモリ121がデータ「2」を出力できる状態になっていないため、出力データ204に1サイクルの遅延が生じ、更に、最後のデータ「4」は、レジスタ124から直接出力される点が異なっている。
このように図13は、図14の場合よりもサイクルタイムが短くなるため、高い性能となる例を示している。尚、入力処理部101からFIFO100aへ出力されるデータの最適なタイミングは、「1 2 3 4 − − − − − −」であり、FIFO100aから出力処理部102に入力されるデータの最適なタイミングは「1 − − − − 2 − 3 − 4」であると仮定する(数字はデータが出力/入力されることを示し、「−」はデータが出力/入力されないことを示す)。
図13では、パラメータ117が10サイクルで、図14では、パラメータ117が11サイクルとなる。
図16は、メモリ121が空きで受信不可信号206が[0]であればレジスタ124のデータを出力し、そうでないときはレジスタ124の空き容量が「1」であればデータをメモリ121に転送する場合の信号のタイミング例を示している。
また図17は、メモリ121が空きで受信不可信号206が[0]であればレジスタ124のデータを出力し、そうでないときはレジスタ124の空き容量が「0」であればデータをメモリ121に転送する場合の信号のタイミング例を示している。尚、この場合もCPU103及び判定回路118における処理は、前述の実施の形態1の場合と基本的に同じである。
図16、図17は、パラメータ117に設定された値が(図16である時よりも図17の場合の方が、サイクルタイムが短くなるために高い性能となる例を示している。ここでは図15(B)に示すように、入力処理部101からFIFO100aへ入力されるデータの最適なタイミングは「 1 2 − 3 」であり、FIFO100aから出力処理部102に出力されるデータの最適なタイミングは「 1 − 2 3 」であると仮定する。図16は、パラメータ117が6サイクルで、図17では、パラメータ117は4サイクルとなる。
このように、FIFO100aに接続されている入力処理部101、出力処理部102の入力/出力タイミングに合わせて、レジスタ124に格納されたデータを低速なメモリ121に転送するか否かを選択した方が高い性能を得られる。
本実施の形態2では、入力処理部101、出力処理部102におけるデータの入力/出力タイミングが変化した際、FIFO100aのパラメータ117を変更することで、レジスタ124に格納されたデータをメモリ121に転送するか否かを選択することができるため、高い性能を得ることができる。
以上説明したように本実施の形態2によれば、データを出力する装置とデータを入力する装置のデータの入出力タイミングやデータ転送量が動作中に変化した際に、装置の特性に合わせてFIFOパラメータを設定することで、FIFOバッファにおけるデータの遅延を少なくでき、より高いFIFO性能を得ることができる。
本発明の実施の形態に係るデータ処理装置のデータ入出力部の構成を示すブロック図である。 本発明の実施の形態1に係るFIFOバッファの機能構成を示すブロック図である。 本実施の形態1に係るFIFOバッファのメモリとレジスタの設定例(A)及びデータの入出力タイミング例(B)を示す図である。 本実施の形態1に係るFIFOバッファの動作例を説明する図である。 本実施の形態1に係るFIFOバッファの動作例を説明する図である。 本実施の形態1に係るFIFOバッファのメモリとレジスタの設定例(A)及びデータの入出力タイミング例(B)を示す図である。 本実施の形態1に係るFIFOバッファの動作例を説明する図である。 本実施の形態1に係るFIFOバッファの動作例を説明する図である。 本実施の形態に係るCPUの処理を説明するフローチャートである。 本実施の形態に係るFIFOバッファの判定回路における処理を説明するフローチャートである。 本発明の実施の形態2に係るFIFOバッファの機能構成を示すブロック図である。 本実施の形態2に係るFIFOバッファのメモリとレジスタの設定例(A)及びデータの入出力タイミング例(B)を示す図である。 本実施の形態2に係るFIFOバッファの動作例を説明する図である。 本実施の形態2に係るFIFOバッファの動作例を説明する図である。 本実施の形態2に係るFIFOバッファのメモリとレジスタの設定例(A)及びデータの入出力タイミング例(B)を示す図である。 本実施の形態2に係るFIFOバッファの動作例を説明する図である。 本実施の形態2に係るFIFOバッファの動作例を説明する図である。

Claims (5)

  1. 第1の構成情報に従って処理を実行しデータを出力する第1の処理手段と、当該第1の処理手段の処理したデータをバッファするFIFO部と、前記FIFO部のバッファしたデータを第2の構成情報に従って処理する第2の処理手段とを有するデータ処理装置であって、
    前記FIFO部は、
    第1FIFOと、
    前記第1FIFOよりも高速で、容量の小さい第2FIFOと、
    前記第1の構成情報に基づくデータの入力タイミングと前記第2の構成情報に基づくデータの出力タイミングに応じて、前記第1の処理手段からのデータを前記第2FIFOだけを介して出力するか、前記第1FIFOと前記第2FIFOの両方を介して出力するかを切り替える選択回路と、
    前記第1又は第2FIFOでバッファしたデータを前記第2の処理手段に出力する出力手段と、
    を備えることを特徴とするデータ処理装置。
  2. 前記選択回路は、前記第1の処理手段から入力したデータを前記第1FIFOに入力するか、前記第2FIFOに入力するかを制御信号に応じて切り替え、前記出力手段は、前記第2FIFOに入力したデータを、前記第1FIFOを介さずに前記第2の処理手段に出力し、前記第1FIFOに入力したデータ前記第2FIFOを介して前記第2FIFOに出力することを特徴とする請求項1に記載のデータ処理装置。
  3. 前記選択回路は、前記第1の構成情報に基づくデータの入力タイミングと前記第2の構成情報に基づくデータの出力タイミングに応じて、前記第1FIFOが空で前記第2FIFOに空きがある時は前記第2FIFOに前記第1の処理手段からのデータを入力するように切り替え、それ以外の時は前記第1FIFOに前記第1の処理手段からのデータを入力するように切り替える第1の方式と、前記第1の処理手段からのデータを常に前記第2FIFOに入力する第2の方式とを切り替えることを特徴とする請求項2に記載のデータ処理装置。
  4. 前記選択回路は、前記第1の処理手段から前記第2FIFOに入力したデータを前記第2FIFOから直接前記第2の処理手段に出力するか、前記第1FIFOを介して前記第2の処理手段に出力するかを切り替えることを特徴とする請求項1に記載のデータ処理装置。
  5. 前記選択回路は、前記第1の構成情報に基づくデータの入力タイミングと前記第2の構成情報に基づくデータの出力タイミングに応じて、前記第1FIFOが空で前記第2の処理手段がデータ受信可能であれば前記第2FIFOのデータを前記第2の処理手段へ出力し、前記第2FIFOの空き容量があれば前記第2FIFOのデータを前記第1FIFOへ転送する第1の方式と、前記第1FIFOが空で前記第2の処理手段がデータ受信可能であれば前記第2FIFOのデータを前記第2の処理手段へ出力し前記第2FIFOの空き容量がなければ前記第2FIFOのデータを前記第1FIFOへ転送する第2の方式とを切り替えることを特徴とする請求項4に記載のデータ処理装置。
JP2005067417A 2005-03-10 2005-03-10 データ処理装置 Expired - Fee Related JP4776947B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005067417A JP4776947B2 (ja) 2005-03-10 2005-03-10 データ処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005067417A JP4776947B2 (ja) 2005-03-10 2005-03-10 データ処理装置

Publications (3)

Publication Number Publication Date
JP2006252153A JP2006252153A (ja) 2006-09-21
JP2006252153A5 JP2006252153A5 (ja) 2008-04-17
JP4776947B2 true JP4776947B2 (ja) 2011-09-21

Family

ID=37092586

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005067417A Expired - Fee Related JP4776947B2 (ja) 2005-03-10 2005-03-10 データ処理装置

Country Status (1)

Country Link
JP (1) JP4776947B2 (ja)

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62219123A (ja) * 1986-03-20 1987-09-26 Seiko Instr & Electronics Ltd パラレルデ−タ転送回路
JPH02166513A (ja) * 1988-12-21 1990-06-27 Mitsubishi Electric Corp 印字制御装置
JP2550444B2 (ja) * 1991-03-07 1996-11-06 富士通株式会社 デバイス制御装置
JPH0528028A (ja) * 1991-07-18 1993-02-05 Fuji Xerox Co Ltd メモリ管理方式
JPH0528083A (ja) * 1991-07-19 1993-02-05 Nec Ibaraki Ltd 入出力データ転送回路
JP3193202B2 (ja) * 1993-08-12 2001-07-30 富士通株式会社 Fifo型メモリ
US6067595A (en) * 1997-09-23 2000-05-23 Icore Technologies, Inc. Method and apparatus for enabling high-performance intelligent I/O subsystems using multi-port memories
JP3995131B2 (ja) * 1999-05-11 2007-10-24 シャープ株式会社 データ出力回路
JP4471639B2 (ja) * 2003-12-10 2010-06-02 株式会社リコー 印刷装置及びデータ転送方法

Also Published As

Publication number Publication date
JP2006252153A (ja) 2006-09-21

Similar Documents

Publication Publication Date Title
JPH02227766A (ja) デジタル・コンピユータのデータ転送装置
WO2010064374A1 (ja) 画像処理装置
JP4776947B2 (ja) データ処理装置
JP4895865B2 (ja) コントローラ装置、ライン同期エラー判定方法、及び画像処理装置
EP2133797A1 (en) Dma transfer device and method
US20070208886A1 (en) Data processing apparatus
US9672874B2 (en) Buffer, method for controlling buffer, synchronization control device, synchronization control method, image processing apparatus, and image processing method
JP4828483B2 (ja) 半導体集積回路
JP5675278B2 (ja) データ処理装置および画像処理装置
JP2004227501A (ja) データ転送制御装置および方法
JP2006164070A (ja) データバッファ回路、インターフェース回路及びその制御方法
JP2007206924A (ja) 演算処理システム
JP4569163B2 (ja) データ入出力装置およびデータ入出力方法
JP3586131B2 (ja) 高速画像処理装置
US20120144150A1 (en) Data processing apparatus
JP2002051034A (ja) シリアル通信装置及びこれを用いた信号処理装置
JP2011227539A (ja) 画像処理装置
JP2006094400A (ja) 画像処理装置および画像処理方法
JP4685414B2 (ja) バス転送装置
JP2006172240A (ja) データ処理システム及びそのメモリ制御方法
US20050060475A1 (en) Data transfer apparatus and data transfer method
JP2005096343A (ja) インタフェース装置
JP2005242408A (ja) 共有メモリアクセス制御方法
KR20030055349A (ko) 유한 임펄스 응답 필터
JP2005301665A (ja) データ処理装置、及び、データ処理方法

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080229

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080229

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101210

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101217

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110210

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110624

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110629

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140708

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees