JP3764964B2 - Expansion board controller - Google Patents

Expansion board controller Download PDF

Info

Publication number
JP3764964B2
JP3764964B2 JP19837997A JP19837997A JP3764964B2 JP 3764964 B2 JP3764964 B2 JP 3764964B2 JP 19837997 A JP19837997 A JP 19837997A JP 19837997 A JP19837997 A JP 19837997A JP 3764964 B2 JP3764964 B2 JP 3764964B2
Authority
JP
Japan
Prior art keywords
expansion board
data
output
buffer
control unit
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
JP19837997A
Other languages
Japanese (ja)
Other versions
JPH1139139A (en
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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
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 Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP19837997A priority Critical patent/JP3764964B2/en
Publication of JPH1139139A publication Critical patent/JPH1139139A/en
Application granted granted Critical
Publication of JP3764964B2 publication Critical patent/JP3764964B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は複数の拡張ボードを接続し、又は複数の拡張ボードが接続可能な場合において一の拡張ボードを接続し、該拡張ボードとの間でデータの授受を行う拡張ボード制御装置に関する。
【0002】
【従来の技術】
パーソナルコンピュータにおけるRAMの増設や、印刷装置におけるLANボード、セントロボードの増設が今日広く行われている。このような拡張ボードの使用はメモリの増設や印刷機能の拡大のために使用され、通常1枚又は2枚の拡張ボードが使用される。
【0003】
また、拡張ボードとのデータの入出力制御はボード制御装置が行う。ボード制御装置は、拡張ボードとの間のデータの入出力制御を行い、又その際、CPU(MPU)に対してデータ転送のためのダイレクトメモリアクセス(DMA)の許可を要求する。また、拡張ボードとボード制御装置間のデータの授受はバッファを介して行われている。
【0004】
このような拡張ボード制御装置において、(イ)上記バッファは接続される拡張ボード毎に専用のバッファが使用され、1枚の拡張ボードが接続された時はその拡張ボードに対応する専用バッファが使用され、2枚の拡張ボードが接続された時はそれぞれの専用バッファが使用され、データの入出力制御を行っていた。
【0005】
また、(ロ)従来、拡張ボード制御装置がデータ転送のためダイレクトメモリアクセス(DMA)処理を行う場合、CPU(MPU)はある決まった時間だけ強制的にインターバルを設けて要求を受け付けていた。
【0006】
【発明が解決しようとする課題】
しかしながら、従来の装置では以下の問題が発生する。
先ず、上述の(イ)の場合、拡張ボード毎に専用バッファを使用するのでデータの授受に時間を要する。例えば、2枚のバッファを有するにも関わらず、1枚のボードのみが接続された時、一方の専用バッファのみしか使用できず、データの授受に時間を要する。また、2枚のボードが接続された時でもバッファの使用は専用化されているため、一方のボードへのデータの授受がないにも関わらず、空いているバッファの使用ができず、データの授受に時間を要していた。
【0007】
さらに、複数枚(例えば2枚)の拡張ボードに対して処理の優先順位が予め設定されており、フレキシブルに選択して拡張ボードから入力するデータの受信処理を行うことができなかった。
【0008】
したがって、従来の拡張ボード制御装置では拡張ボードへのデータの授受が極めて効率の悪いものであった。
また、(ロ)の場合、拡張ボード制御装置からダイレクトメモリアクセス(DMA)の要求があった時、ある決まった時間だけ強制的にインターバルを設けていたので、拡張ボードへのデータの授受に上述の時間だけ遅れが生じ、トータル的にデータの処理時間が遅れ、効率よくデータの授受を行うことができなかった。
【0009】
本発明の課題は複数のバッファを効率よく使用し、データ転送処理を高速に行うことができる拡張ボード制御装置を提供することによって達成できる。
【0018】
【課題を解決するための手段】
請求項記載の発明は上記課題を解決するため、第1の拡張ボードと第2の拡張ボードが必要に応じて選択的に接続可能な拡張ボード制御装置において、第1のバッファと、第2のバッファと、前記第1の拡張ボード又は第2の拡張ボードの何れか一方が装着された場合、その装着された拡張ボードから出力されるデータを前記第1のバッファと第2のバッファに交互に出力制御する交互出力制御手段と、該交互出力制御手段により前記第1のバッファ及び第2のバッファに格納されたデータを交互に送信出力する交互送信出力手段と、前記第1の拡張ボード及び第2の拡張ボードの両方が装着された場合、両拡張ボードから出力されるデータをそれぞれ対応する前記第1のバッファと第2のバッファに出力制御する個別出力制御手段と、該個別出力制御手段により前記第1のバッファ及び第2のバッファに格納されたデータをそれぞれ個別に送信出力する個別送信出力手段と、を有することを特徴とする拡張ボード制御装置を提供することにより達成できる。
【0019】
本例の発明は、第1の拡張ボードと第2の拡張ボードが必要に応じて選択的に接続可能な拡張ボード制御装置において、一方の拡張ボードにのみボードが接続された場合でも、第1、第2のバッファを交互に使用し、いわゆるダブルバッファ処理により効率よくデータの転送処理を行うものである。
【0020】
すなわち、従来のバッファは拡張ボード毎に専用化していたため、接続された拡張ボードに対応するバッファのみを使用してデータの転送処理を行っていたが、本例のように構成することにより、バッファを交互に使用してデータの書き込みと読み出しを同時に行い、データ転送処理を効率よく行うことができる。
【0021】
請求項の記載は、前記請求項記載の発明を具体化するものであり、前記送信出力手段が出力するデータは、例えばメモリに供給される。本例において拡張ボードに格納されるデータはセントロデータやLANデータであり、これらのデータは第1、第2のバッファに交互に格納された後、送信出力手段によってRAMやEEPROM等のメモリに供給される。
【0022】
請求項の記載は、上記請求項記載の発明を具体化するものであり、前記送信出力手段が前記メモリに出力するデータは、例えばダイレクトメモリアクセス処理によって出力される構成である。
【0023】
すなわち、バッファに格納した第1の拡張ボード又は第2の拡張ボードのデータは、ダイレクトメモリアクセス処理(DMA)よってメモリに書き込まれる。
【0024】
ここで、前記請求項には記載しないが、ダイレクトメモリアクセス(DMA)を行う際、本例の拡張ボード制御装置は、例えばMPUに対してアクセスのリクエストを行うが、この時一定時間インターバルが必要であった。このため、メモリに転送するデータ転送速度が長くなり、データ転送に長時間を要していた。
【0025】
そこで、以下のような発明を追加してもよい。すなわち、
DMA転送を要求する要求出力手段と、MPUの非アクティブ状態を検出し、当該状態を検出後一定時間を計数する計数手段と、前記要求出力手段からDMA転送要求が出力された後、前記計数手段が一定時間の計数を完了すると、HOLD信号を出力するHOLD信号出力手段と、HOLD信号出力手段がHOLD信号を出力した後、DMA転送の許可信号を出力する手段とを有する拡張ボード制御装置を提供する。
【0026】
上記構成の拡張ボード制御装置を使用することで、バッファに格納されたデータをより短時間でメモリ等に転送でき、ダイレクトメモリアクセス(DMA)を使用するデータ転送をより高速に行うことができる。
【0027】
【発明の実施の形態】
以下、本発明の実施形態例を図面を用いて詳細に説明する。
《第1の実施形態例》
図2は、本発明の拡張ボード制御装置を説明する図であり、本発明の拡張ボード制御装置をプリンタ装置に適用した例を示すシステム構成図である。
【0028】
同図において、プリンタ装置1はインターフェイスコントローラ(以下、I/Fコントローラという)2と、このI/Fコントローラ2に接続する印字装置(エンジン)3で構成され、I/Fコントローラ2にはパーソナルコンピュータ4が接続されている。
【0029】
I/Fコントローラ2はパーソナルコンピュータ4から出力される印字情報に従って、記録紙に1対1で対応するビットマップデータを作成する機能を有し、MPU5、ROM6、RAM7、オペレーションパネル制御部8、画像制御部9、エンジン制御部10、メモリ制御部11、DMA制御部12、拡張ボード制御部13、インターフェイス部14で構成されている。尚、上記I/Fコントローラ2内の各部はバスラインによって接続されている。
【0030】
ここで、上述の拡張ボード制御部13が本発明の拡張ボード制御装置に対応し、この拡張ボード制御部13には拡張ボード15と16、又は拡張ボード15、16の一方が接続される。また、この拡張ボード15からパラレルなセントロデータ、又はLANデータが入力し、前述のRAM7に格納される。尚、RAM7に格納されたセントロデータ、又はLANデータは、パーソナルコンピュータ4から入力したデータと同様、I/Fコントローラ2によって、例えばビットマップデータに変換される。
【0031】
MPU5は本例のプリンタ装置1の印刷制御を行うマイクロ・プロセッサ・ユニットであり、ROM6に記憶するプログラムに従って印刷制御を行う。RAM7はMPU5が印刷処理を行う際のワークエリアを有し、また上述のパーソナルコンピュータ4や拡張ボード制御部13を介して入力するデータを格納する格納エリアを有する。
【0032】
オペレーションパネル制御部8は、不図示のオペレーションパネルから供給されるキー操作信号をMPU5に出力し、オペレータの指示する処理を実行させる。また、エンジン制御部10は印字装置(エンジン)3内の各部、例えば転写部、印字部、現像部、等に制御信号を出力し、各部の駆動制御を行う。
【0033】
尚、図示しないが、印字装置3は用紙搬送機構、画像形成部、定着部、等で構成され、用紙搬送機構は給紙カセットから搬出された用紙を用紙搬送経路を介して待機ロールに送り、例えば感光体ドラムに形成されるトナー像と一致するタイミングで搬送ベルト上に用紙を供給する。また、用紙が搬送ベルト上を移動する間、搬送ベルト上の用紙には画像形成ユニットからトナー像が転写され、用紙への転写処理が行われる。その後、定着部によって熱定着処理が施され、排紙ロールによって機外に排出される。
【0034】
一方、メモリ制御部11とDMA制御部12も上述の拡張ボード制御部13と共に拡張ボード制御装置を構成している。メモリ制御部11とDMA制御部12は、プリンタ装置1のメモリ制御、及びデータ転送の制御を行うと共に、拡張ボード15及び16とI/Fコントローラ2間のデータの入出力制御も行う。
【0035】
図1は本例の拡張ボード制御装置の構成を説明する図であり、メイン基板A側に配設されたメモリ制御部11、DMA制御部12(尚、同図では両部をまとめてメモリ・DAM制御部18とする)、拡張ボード制御部13と、拡張ボードB側に設けられた2枚の拡張ボード15、16の接続構成を示す。
【0036】
同図において、拡張ボード15、16は前述のようにセントロデータやLANデータが入力するボードであり、例えばメイン基板Aに設けられた拡張スロットにボードを差し込むことにより拡張ボード15、16を拡張ボード制御部13に接続することができる。この接続により、拡張ボード制御部13と各拡張ボード15、16間の信号線とデータ線がそれぞれ接続される。
【0037】
例えば、この信号線を介して拡張ボード15からデータ送信要求信号(Dreq1)が拡張ボード制御部13に出力され、拡張ボード制御部13からデータ送信許可信号(Dack1)が拡張ボード15に出力される。同様に、信号線を介して拡張ボード16からデータ送信要求信号(Dreq2)が拡張ボード制御部13に出力され、拡張ボード制御部13からデータ送信許可信号(Dack2)が拡張ボード16に出力される。また、上述のデータ線を介して拡張ボード15から8ビットデータD1が拡張ボード制御部13に出力され、拡張ボード制御部13から8ビットデータD1’が拡張ボード15に出力される。同様に、データ線を介して拡張ボード16から8ビットデータD2が拡張ボード制御部13に出力され、拡張ボード制御部13から8ビットデータD2’が拡張ボード16に出力される。尚、拡張ボード制御部13から8ビットデータが拡張ボード15及び16に出力される理由は、プリンタ装置1からデータをセントロニクスインターフェイスを介して出力する場合である。
【0038】
一方、拡張ボード制御部13は、メモリ制御部11とDMA制御部12、及びメモリ(RAM)7とバスラインを介して接続されている。尚、図1においては前述したようにメモリ制御部11とDMA制御部12を一つのブロックとしてメモリ・DMA制御部18で示す。ここで、拡張ボード制御部13とメモリ・DMA制御部18間では、拡張ボード制御部13からメモリ・DMA制御部18に対し、DMA(ダイレクトメモリアクセス)処理の要求信号(DMAreq1)と(DMAreq2)を出力し、メモリ・DMA制御部18から拡張ボード制御部13に対しDMA処理の許可信号(DMAack1)と(DMAack2)を出力する。ここで、上述の要求信号(DMAreq1)は拡張ボード15から供給されたデータが後述するバッファに64ビット格納された時出力される信号であり、許可信号(DMAack1)は上述の要求を許可する時出力される信号である。また、同様に要求信号(DMAreq2)は拡張ボード16から供給されたデータが後述するバッファに64ビット格納された時出力される信号であり、許可信号(DMAack2)は上述の要求を許可する時出力される信号である。
【0039】
また、拡張ボード制御部13からメモリ(RAM)7に出力されるデータDは、前述の拡張ボード15又は16から拡張ボード制御部13に供給されたデータであり、64ビットのデータがメモリ(RAM)7に出力される。尚、逆にメモリ(RAM)7から拡張ボード制御部13にデータDを出力する場合もある。
【0040】
また、メモリ・DMA制御部18からメモリ(RAM)7に供給されるデータaはアドレスデータであり、拡張ボード制御部13からデータを入力する際、又はメモリ(RAM)7からデータを出力する際、メモリ(RAM)7内の書き込み、又は読み出しアドレスを指定するデータである。
【0041】
さらに、メモリ・DMA制御部18から出力されるHOLD信号は、MPU5に対してDMA転送処理を行うための要求信号であり、HOLDA信号は、MPU5がメモリ・DMA制御部18に対し、DMA転送処理を行うことを許可した時出力する信号である。また、MPU5からメモリ・DMA制御部18に供給されるデータbはアドレスデータであり、データdは実データ(メモリ(RAM)7に格納されたデータ、又はメモリ(RAM)7から出力されるデータ)である。
【0042】
図3は上述の拡張ボード制御部13の具体的な回路図である。拡張ボード制御部13は、バスアービタ20、ボード制御部21、22、バッファ23、24、アンド回路25、セレクタ26で構成されている。同図から分かるように、前述の拡張ボード制御部13から出力されたデータ送信要求信号(Dreq1)は、具体的にはボード制御部21から出力され、データ送信許可信号(Dack1)はボード制御部21に入力する。同様に、前述の拡張ボード制御部13から出力されたデータ送信要求信号(Dreq2)は、ボード制御部22から出力され、データ送信許可信号(Dack2)はボード制御部22に入力する。
【0043】
また、拡張ボード制御部13からメモリ・DMA制御部18に出力されるDMA処理の要求信号(DMAreq1)は、バスアービタ20にも出力され、許可信号(DMAack1)はバスアービタ20にも入力する。同様に、拡張ボード制御部13からメモリ・DMA制御部18に出力されるDMA処理の要求信号(DMAreq2)も、バスアービタ20にも出力され、許可信号(DMAack2)はバスアービタ20にも入力する。
【0044】
バッファ23、24は、それぞれ拡張ボード15、16に対応するバッファであり、バッファ23は拡張ボード15に対応し、バッファ24は拡張ボード16に対応する。但し、バッファ23、24はそれぞれ拡張ボード15、16に対応するだけであり、対応する拡張ボードが専用するものではない。したがって、場合によって自由に使用し合うことができる構成である。このため、アンド回路25を介してボード制御部21からライト信号w1がバッファ23、24に供給され、アンド回路25を介して拡張ボード制御部22からライト信号w2がバッファ23、24に供給される。
【0045】
また、セレクタ26はバッファ23、24から出力されるデータを選択して前述のメモリ(RAM)7に出力する構成であり、ボード制御部21から出力される選択信号S1、又はボード制御部22から出力される選択信号S2によってデータ選択処理が行われる。例えば、選択信号S1が選択された時、セレクタ26はバッファ23から出力されるデータをメモリ(RAM)7に出力する。また、選択信号S2が選択された時、セレクタ26はバッファ24から出力されるデータをメモリ(RAM)7に出力する構成である。
【0046】
以上の構成の拡張ボード制御装置において、以下にその処理動作を説明する。尚、本例の拡張ボード制御装置は2個の拡張スロットを有し、その一方のみ、又はその両方に拡張ボードを装着することができる。そこで、以下の説明では拡張ボードを1枚使用した場合と、2枚使用した場合に分けて説明する。
《拡張ボード1枚の場合》
先ず、拡張ボードを1枚使用した場合について説明する。尚、本例では、拡張ボード15のみを使用するものとして説明する。
【0047】
また、図4乃至図6はこの処理を説明する図であり、図4はバッファ23、24に拡張ボード15から送信されるデータD1を格納する処理であり、図5はその時のバスアービタ20の処理動作を示すフローチャートであり、図6は2枚のバッファ23、24に格納したデータD1をメモリ(RAM)7にDMA転送する処理である。
【0048】
また、データ送信要求信号「Dreq1」(又は「Dreq2」)は「0」の時アクティブであり、「1」の時非アクティブである。また、データ送信許可信号「Dack1」(又は「Dack2」)も「0」の時アクティブであり、「1」の時非アクティブである。
【0049】
先ず、図4のフローチャートにおいて、初期設定処理を行う(ステップ(以下Sで示す)1)。この初期設定処理は、例えばバッファ23、24に残るデータをクリアし、セレクタ26を例えばバッファ23側の初期位置に設定し、メモリ(RAM)7に残るデータをクリアする等の処理である。また、不図示のフラグ「H」及び「F」を「0」に初期設定し、カウンタを「0」に初期設定する。
【0050】
このような処理を行った後、判断(S2)を実行する。この判断(S2)は、「H=1」か否か判断する処理であり、この「H」はボード制御部21内の例えばフラグであり、バッファ23に64ビットのデータが格納されると、フラグ「H」が「1」となる。具体的には、ボード制御部21から出力されるライト信号W1によって、拡張ボード15からデータD1(8ビットデータ)が入力し、上記ライト信号W1を8回出力することによってバッファ23に64ビットのデータを格納し、フラグ「H」を「1」に設定する。
【0051】
但し、初期時フラグ「H」は「0」であり(S2がNO)、拡張ボード15からデータ送信要求信号(Dreq1)が出力されているか判断する(S3)。このデータ送信要求信号(Dreq1)は、拡張ボード15がバッファ23にデータ出力を希望する時出力する信号であり、この要求がない場合にはデータ送信要求信号(Dreq1)の入力を待つ(S3がNO)。
【0052】
一方、上述のデータ送信要求信号(Dreq1)があると(S3がYES)、ボード制御部21はバスアービタ20を介してデータ送信許可信号(Dack1)を拡張ボード21に出力し、ライト信号W1をバッファ23に出力する(S4)。この処理によってバッファ23には8ビットデータが書き込まれ、拡張ボード15からのデータ送信要求信号(Dreq1)が「1」になったことを判断し(S5がYES)、更にデータ送信許可信号(Dack1)を「1」とする(S6)。
【0053】
以上の処理によって、バッファ23への8ビットデータの書き込み処理が終了し、例えばボード制御部21に設けられたカウンタが「7」まで計数されたか判断し、最初の処理ではカウンタ値は「0」に初期設定されているので、当該カウンタのカウント値を+1する(S7がNO、S8)。この処理により、カウンタの計数値は「1」となり、上述の判断(S3)に戻ってデータ送信要求信号(Dreq1)の入力を判断する(S3)。
【0054】
以後、上述の処理を繰り返し(S3〜S8)、バッファ23に8ビット毎にデータを書き込むと共にカウンタの値を「1」→「2」→「3」、・・・と加算し、カウント値が「7」になると、判断(S7)がYESとなり、前述のフラグ「H」を「1」とする(S8’)。すなわち、上述の8回のデータ供給によってバッファ23には64ビットのデータが格納されたものとして、ボード制御部21にフラグ「H」を設定する(フラグ「H」を「1」)とする。
【0055】
次に、装着された拡張ボードが1枚か否か判断する(S9)。本例の説明では、上述のように拡張ボード15のみを接続しているので、判断(S9)はYESである。
【0056】
そこで、次にフラグ「F」が「1」か否か判断する(S10)。この「F」はバッファ24に64ビットのデータが格納された時、「1」がセットされるフラグである。初期時、このフラグは前述のように初期設定されているので、判断(S10)はNOであり、次に再度データ送信要求信号(Dreq1)があるか判断する(S11)。この要求がない場合にはデータ送信要求信号(Dreq1)の入力を待つ(S11がNO)。
【0057】
一方、上述のデータ送信要求信号(Dreq1)があると(S11がYES)、ボード制御部21は前述と同様、バスアービタ20を介してデータ送信許可信号(Dack1)を拡張ボード21に出力し、ライト信号W1をバッファ24に出力し(S12)、バッファ24に8ビットデータを書き込む。そして、拡張ボード15からのデータ送信要求信号(Dreq1)が「1」になったことを判断し(S13がYES)、データ送信許可信号(Dack1)を「1」とする(S14)。その後、前述と同様、カウンタが「15」まで計数されたか判断し、最初の処理ではカウンタ値は前述の「7」であり、当該カウンタのカウント値を+1し(S15がNO、S16)、上述の処理を繰り返す(S11〜S16)。したがって、上述の処理を繰り返すうち、カウンタ値は「8」→「9」→「10」、・・・と加算し、カウント値が「15」になると、判断(S15)がYESとなり、前述のフラグ「F」を「1」に設定する(S17)。すなわち、8回のデータ供給によってバッファ24には64ビットのデータが格納され、ボード制御部21に上述のフラグ「F」を設定するものである(フラグ「F」を「1」とする)。
【0058】
以上のように制御することにより、拡張ボード15から出力されるデータは、先ずバッファ23に64ビットのデータが格納され、次にバッファ24に64ビットのデータが格納される。以後、同様の制御を行うことによって、再度図4に示すフローチャートの処理を繰り返し、拡張ボード21から出力されるデータはバッファ23とバッファ24に交互に格納される。
【0059】
したがって、上述の処理を繰り返すことにより、バッファ23とバッファ24に交互にデータを供給しつつ、供給しない側のバッファ24又はバッファ23からデータを後述するように出力し、効率よくデータ転送を行うことができる。尚、上述のバッファ23、24からのデータ転送処理については図6のフローチャートを用いて後述する。
【0060】
一方、図5は上述のバッファ23、24へのデータ格納処理をバスアービタ20から見た処理であり、先ず初期設定処理(ステップ(以下STで示す)1)を行う。この処理は前述の初期設定処理(S1)と同様であり、バスアービタ20内のデータのクリア処理等を行う。
【0061】
次に、データ送信要求信号(Dreq1)の入力を判断する(ST2)。ここで、データ送信要求信号(Dreq1)が拡張ボード15又は16からボード制御部21又は22に供給されれば、拡張ボードは1枚のみ装着されているか判断する(ST3)。ここで、本例の説明では拡張ボード15のみにボードが接続されているので(ST3がYES)、データ送信要求信号(Dreq1)がボード制御部21から出力されているとする(ST4)。そして、拡張ボード15へのデータ送信許可信号(Dack1)の出力を確認し(ST5)、送信信号と許可信号を1とし、処理を終了する(ST6、ST7)。
【0062】
次に、拡張ボード16からデータ送信要求信号(Dreq2)が出力されていないか判断するが(ST8)、本例の説明では拡張ボード16に拡張ボードが接続されていないので、判断(ST8)はNOであり、上述の処理に戻って、同じ処理を繰り返す(ST2〜ST8)。すなわち、バスアービタ20は上述の処理によって、バッファ23、24に交互にデータを格納する。
次に、2つのバッファ23、24に格納されたデータD1をメモリ(RAM)7に出力するデータ転送処理動作を説明する。バッファ23、24に格納された64ビットのデータは、図6に示す処理に従ってメモリ(RAM)7に転送される。
【0063】
先ず、前述の例と同様、初期設定処理を行う(ステップ(以下STPで示す)1)。次に、ボード制御部21はフラグ「H」が「1」であるか判断する(STP2)。ここで、フラグ「H」が「1」である時、前述のように、既にバッファ23には64ビットのデータが格納されていることを示し、ボード制御部21はメモリ・DMA制御部18に対し、要求信号(DMAreq1)を出力する(STP3)。
【0064】
この要求信号(DMAreq1)の入力により、メモリ・DMA制御部18はMPU5に対してHOLD信号を出力し、MPU5からHOLDA信号が出力されるのを待つ。そして、MPU5からこの信号が供給されると、MPU5はDMA処理のためにバスを解放したと判断し、メモリ・DMA制御部18は許可信号(DMAack1)をボード制御部21に返送する(STP4)。
【0065】
ボード制御部21はこのデータ送信許可信号(DMAack1)が入力すると、バッファ23に格納された64ビットデータをメモリ(RAM)7にDMA転送する。その後、データ送信要求信号(DMAreq1)の出力を停止し(STP5)、データ送信許可信号(Dack1)の出力が停止したことを判断し(STP6がYES)、フラグ「H」を「0」にする(STP7)。
【0066】
次に、ボード制御部21はフラグ「F」が「1」であるか判断する(STP8)。この時、前述のようにバッファ24には64ビットのデータが格納されているので、フラグ「F」が「1」であり(STP8がYES)、ボード制御部21はメモリ・DMA制御部18に対し、要求信号(DMAreq1)を出力する(STP9)。
【0067】
この要求信号(DMAreq1)の出力により、メモリ・DMA制御部18は前述と同様、MPU5に対してHOLD信号を出力し、MPU5からHOLDA信号が出力されると、MPU5がDMA処理のためにバスを解放したと判断し、メモリ・DMA制御部18は許可信号(DMAack1)をボード制御部21に返送する(STP10がYES)。
【0068】
ボード制御部21はこのデータ送信許可信号(DMAack1)が入力すると、前述と同様バッファ24に格納された64ビットデータをメモリ(RAM)7にDMA転送し、要求信号(DMAreq1)の出力を停止し(STP11)、更に許可信号(DMAack1)の出力が停止したことを判断し(STP12がYES)、フラグ「F」を「0」に設定する(STP13)。
【0069】
以上のように、拡張ボードを1枚のみ使用する場合、バッファ23と24を交互に使用し、拡張ボード15から供給されるデータを交互にバッファ23、24に格納し、2枚のバッファ23、24に格納したデータを交互にメモリ(RAM)7に出力することにより、効率よいデータ転送を行うことができる。
《拡張ボードが2枚の場合》
次に、拡張ボード2枚を使用する場合について説明する。この場合も前述の図4と図5のフローチャートは使用する。但し、図6フローチャートは使用しない。以下、具体的な処理動作について説明する。
【0070】
先ず、図4のフローチャートにおいて、前述と同様の初期設定処理を行う(S1)。次に、「H=1」か否かの判断を行い(S2)、前述と同様、初期時フラグ「H」は「0」であり(S2がNO)、拡張ボード15からデータ送信要求信号(Dreq1)が出力されているか判断する(S3)。このデータ送信要求信号(Dreq1)は、拡張ボード15がバッファ23にデータ出力を希望する時出力する信号であり、前述と同様、カウンタのカウントアップを行いつつ、バッファ23に64ビットデータを格納する(S2〜S8)。このようにして、バッファ23には64ビットのデータが格納され、フラグ「H」を「1」とする(S8’)。
【0071】
次に、装着された拡張ボードが1枚か否か判断する(S9)。本例の説明では2枚であるので、判断(S9)はNOとなり、再度フラグ「H」=「1」の判断を行う。以下、拡張ボード15からデータ送信要求信号(Dreq1)が出力される度にバッファ23には64ビットのデータが格納される。
【0072】
また、上述の処理は拡張ボード15から出力されるデータに対しての説明であり、拡張ボード16から同様にデータ送信要求信号(Dreq2)が入力すると、上述と同様の処理によって、バッファ24には64ビットデータが書き込まれる。
【0073】
また、図5に示すフローチャートで上述のバッファ23、24への書き込み処理を説明すると、初期設定処理(ST1)の後、データ送信要求信号(Dreq1)の入力を判断し(ST2)、接続された拡張ボードは1枚のみか判断する(ST3)。ここで、本例の説明では拡張ボード15、16の2枚が接続されているので(ST3がNO)、判断(ST4’)を実行する。この判断は、前述のメモリ・DMA制御部18に対し要求信号(DMAreq1)や、許可信号(DMAack1)が出力されているか否か判断するものであり、これらの信号がメモリ・DMA制御部18との間でやり取りされている場合にはバッファ23に格納されたデータはDMA転送中であるので新たなバッファ23へのデータ格納処理は行わない(ST4’がNO)。
【0074】
一方、バッファ23に格納されたデータがDMA転送中でなければ(ST4’がY)、前述と同様、拡張ボード15からバッファ23に64ビットのデータを格納する(ST2〜ST8)。
【0075】
次に、拡張ボード16からデータ送信要求信号(Dreq2)が出力されていないか判断する(ST8)。本例では2枚の拡張ボードが接続されているため、データ送信要求信号(Dreq2)が入力する場合がある。したがって、拡張ボード16からデータ送信要求信号(Dreq2)があった場合(ST8がYES)、拡張ボードが1枚か否か判断し(ST9)、本例では2枚の拡張ボードが接続されているので、上述と同様、ボード制御部22がメモリ・DMA制御部18に対し要求信号(DMAreq2)や、許可信号(DMAack2)を出力し、DMA転送処理中ではないか判断する(ST10)。そして、DMA転送中であれば、バッファ24への新たなデータの格納処理は行わない(ST10がNO)。
【0076】
一方、バッファ24に格納されたデータがDMA転送中でなければ、前述と同様、拡張ボード16からバッファ24に64ビットのデータを格納する(ST11〜ST14)。
【0077】
以上のように、複数の拡張ボード15、16が接続されている場合、データ送信要求信号(Dreq)のあった拡張ボードからのデータを優先して対応するバッファ23又は24に格納し、バッファ23、24を効率よく使用する。
【0078】
最後に、2つのバッファ23、24に格納されたデータD1、D2をメモリ(RAM)7に出力するデータ転送処理を行う。この処理は、特にフローチャートには示さないが、バッファ23又は24に64ビットデータが格納され、フラグ「H」又は「F」に「1」が設定されると駆動する。例えば、バッファ23に64ビットデータが格納されると、ボード制御部21にはフラグ「H」が設定され、このフラグの設定に基づいてバッファ23からデータをメモリ(RAM)7にDMA転送する。一方、バッファ24に64ビットデータが格納されると、拡張ボード制御部22にはフラグ「F」が設定され、このフラグの設定に基づいてバッファ24からデータをメモリ(RAM)7にDMA転送する。
【0079】
以上の制御から、本例は64ビットデータのデータがバッファ23又は24に格納され、64ビットデータが格納されたバッファに対応する拡張ボード制御部21又は22から要求信号(DMAreq1)の出力が行われ、当該バッファ23又は24からデータの送信をメモリ(RAM)7に行うものである。
【0080】
このように構成することにより、効率よくバッファ23及び24を使用し、データ転送処理を行うことができる。
<第2の実施形態例>
次に、第2の実施形態例について説明する。
【0081】
図7は第2の実施形態例を説明する図である。本例も基本構成は、前述の第1実施形態例の説明で使用した図2と同じである。したがって、本発明の拡張ボード制御装置をプリンタ装置1に適用し、プリンタ装置1はI/Fコントローラ2と、このI/Fコントローラ2に接続する印字装置(エンジン)3で構成され、プリンタ装置1にはパーソナルコンピュータ4が接続されている。また、I/Fコントローラ2はパーソナルコンピュータ4から出力される印字情報に従って、記録紙に1対1で対応するビットマップデータを作成する機能を有し、MPU5、ROM6、RAM7、オペレーションパネル制御部8、画像制御部9、エンジン制御部10、メモリ制御部11、DMA制御部12、拡張ボード制御部13、インターフェイス部14で構成されている。
【0082】
ここで、上述の拡張ボード制御部13が本発明の拡張ボード制御装置に対応し、この拡張ボード制御部13には拡張ボード15、16が接続される。また、MPU5は前述の実施形態例と同様、本例のプリンタ装置1の印刷制御を行うマイクロ・プロセッサ・ユニットであり、ROM6に格納するプログラムに従って印刷制御を行う。
【0083】
ここで、本例で使用する拡張ボード制御装置の具体的な構成を図7を用いて説明する。拡張ボード15(又は16)はメイン基板Aに接続され、拡張ボード制御部13は前述の構成と同じである。拡張ボード15(又は16)からはリクエスト信号(REQ)が出力され、拡張ボード制御部13から拡張ボード15(又は16)へはアクノリッジ信号(ACK)、アドレスデータが出力される。尚、データDは拡張ボード15(又は16)と拡張ボード制御部13間で相互に授受が行われる。
【0084】
ここで、リクエスト信号(REQ)としては、前述のデータ送信要求信号(Dreq1(又はDreq2))が対応し、アクノリッジ信号(ACK)としては前述のデータ送信許可信号(Dack1(Dack2))が対応する。
【0085】
一方、拡張ボード制御部13からはMPU5に対してHOLD信号が出力され、MPU5から拡張ボード制御部13へはHOLDA信号が出力される。上述のHOLD信号はMPU5に対しダイレクトメモリアクセス(DMA)転送の許可を要求する信号であり、HOLDA信号はその応答信号である。
【0086】
図8は、本例の特徴である拡張ボード制御部13内の回路構成を示す。但し、拡張ボード制御部13内は、勿論図8に示す回路のみで構成されているのではない。同図において、先ずナンドゲート30とタイマ31で構成されたインターバル設定回路32が設けられている。このインターバル設定回路32はMPU5から出力されるHOLDA信号が非アクティブになった時からの時間を計数し、一定のインターバル時間を計数した後、リクエスト信号(REQ)の出力を条件にHOLD信号をMPU5に出力する回路である。具体的には、MPU5から出力されるHOLDA信号が非アクティブになった時点からタイマ31を駆動し、タイマ31に設定されたインターバル時間を計数し、ナンドゲート30に出力する。ナンドゲート30はタイマ31からタイムアップ信号が入力し、且つリクエスト信号(REQ)も入力すると、ナンドゲート30からHOLD信号をMPU5に出力する。HOLD信号はMPU5へのDMA転送要求であり、MPU5はHOLD信号の入力があると、その後HOLDA信号を拡張ボード制御部13に出力する。このHOLDA信号は拡張ボード制御部13に対してアクノリッジ信号(ACK)として機能する。
【0087】
また、拡張ボード制御部13にはバッファ33も設けられ、MPU5から出力されたアドレスデータを一旦保持する構成である。また、拡張ボード制御部13に設けられたカウンタ34はデータ授受の際、前述の例のように8ビット毎にデータをカウントして、例えば64ビットデータとして出力するためのカウンタである。
【0088】
以上の構成の第2実施形態例について、以下にその処理動作を説明する。
図9(a)は本例の処理動作を説明するタイムチャートである。先ず、拡張ボード15(又は16)からリクエスト信号(REQ)が出力されると、拡張ボード制御部13はHOLD信号をMPU5に出力する。その後、MPU5から出力されるHOLDA信号が非アクティブになると、タイマ31はこれを検出し、一定のインターバル時間(t)だけ計数を行う。したがって、その後短時間でHOLDA信号がアクティブになり、アクノリッジ信号(ACK)の出力タイミングを早めることができる。
【0089】
すなわち、図9(b)は従来の場合の処理動作のタイムチャートを示すものであり、リクエスト信号(REQ)の出力停止後一定時間(t)を計数するので、HOLD信号の出力の終了時間が遅れ、従ってMPU5から出力されるHOLDA信号の供給タイミングも遅れることになる。
【0090】
このように、従来例ではMPU5から出力されるHOLDA信号の出力が遅れ、その遅れがトータル的にデータ処理の遅延につながる。しかし、本例によればHOLDA信号が非アクティブになった後、タイマ31によって予め一定のインターバル時間(t)を計数するので、HOLD信号が出力された後、短時間でHOLDA信号(アクノリッジ信号(ACK))を拡張ボード制御部13に出力することができ、データ転送を高速に行うことができる。
【0091】
【発明の効果】
以上説明したように、本発明によれば以下のような効果が発生する。
一の発明によれば、複数の拡張ボードが接続されていても、バッファを有効に使用し、効率よいデータの送受信処理を行うことができる。
【0092】
また、一の発明によれば、複数の拡張ボードが接続可能な場合において、一の拡張ボードのみが接続されている場合、バッファを交互に使用し、効率よいデータの送受信処理を行うことができる。
【0093】
さらに、DMA転送の際インターバル時間を予め計数することにより転送許可信号の出力タイミングを早め、トータル的なDMA転送処理を高速に行うことができる。
【図面の簡単な説明】
【図1】実施形態例のボード制御装置の構成を説明する図である。
【図2】実施形態例の拡張ボード制御装置をプリンタ装置に適用した例を示す、プリンタ装置のシステム構成図である。
【図3】拡張ボード制御部の具体的な回路図である。
【図4】拡張ボード制御部の書き込み処理を説明するフローチャートである。
【図5】バスアービタの処理動作を示すフローチャートである。
【図6】拡張ボード制御部のDMA処理を説明するフローチャートである。
【図7】第2の実施形態例を説明する図である。
【図8】拡張ボード制御部内の回路構成を示す遅延回路のタイムチャートである。
【図9】(a)は本例の処理動作を説明するタイムチャートであり、(b)は従来の場合の処理動作のタイムチャートである。
【符号の説明】
1 プリンタ装置
2 I/Fコントローラ
3 印字装置(エンジン)
4 パーソナルコンピュータ
5 MPU
6 ROM
7 RAM
8 オペレーションパネル制御部
9 画像制御部
10 エンジン制御部
11 メモリ制御部
12 DMA制御部
13 拡張ボード制御部
14 インターフェイス制御部
15、16 拡張ボード
18 メモリ・DMA制御部
30 ナンドゲート
31 タイマ
32 インターバル設定回路
33 バッファ
34 カウンタ
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an expansion board control apparatus that connects a plurality of expansion boards, or connects a single expansion board when a plurality of expansion boards can be connected, and exchanges data with the expansion board.
[0002]
[Prior art]
Expansion of RAM in personal computers and expansion of LAN boards and centro boards in printing apparatuses are widely performed today. Use of such an expansion board is used for expansion of a memory or expansion of a printing function, and usually one or two expansion boards are used.
[0003]
The board controller controls data input / output with the expansion board. The board control device performs input / output control of data with the expansion board, and at that time, requests the CPU (MPU) to permit direct memory access (DMA) for data transfer. Data exchange between the expansion board and the board control device is performed via a buffer.
[0004]
In such an expansion board control device, (a) the buffer uses a dedicated buffer for each expansion board to be connected, and when one expansion board is connected, a dedicated buffer corresponding to the expansion board is used. When two expansion boards are connected, their dedicated buffers are used to control data input / output.
[0005]
Also, (b) conventionally, when the expansion board control device performs direct memory access (DMA) processing for data transfer, the CPU (MPU) has forcibly provided an interval for a predetermined time to accept a request.
[0006]
[Problems to be solved by the invention]
However, the conventional apparatus has the following problems.
First, in the case of (b) above, since a dedicated buffer is used for each expansion board, it takes time to exchange data. For example, when only one board is connected even though it has two buffers, only one dedicated buffer can be used, and it takes time to exchange data. Also, even when two boards are connected, the use of the buffer is dedicated, so even though there is no data transfer to one board, an empty buffer cannot be used, It took time to give and receive.
[0007]
Furthermore, processing priorities are set in advance for a plurality of (for example, two) expansion boards, and it has not been possible to perform a reception process of data that is flexibly selected and input from the expansion boards.
[0008]
Therefore, in the conventional expansion board control device, the data transfer to the expansion board is extremely inefficient.
In the case of (b), when a direct memory access (DMA) request is made from the expansion board controller, an interval is forcibly provided for a predetermined time. Therefore, the data processing time is totally delayed and the data cannot be exchanged efficiently.
[0009]
The object of the present invention can be achieved by providing an expansion board control device that can efficiently use a plurality of buffers and perform data transfer processing at high speed.
[0018]
[Means for Solving the Problems]
  Claim1In order to solve the above-described problems, the described invention includes a first expansion board and a second expansion board.Selectively as neededIn the connectable expansion board controller, the first buffer, the second buffer, and either the first expansion board or the second expansion boardIf installed, it was installedAlternating output control means for alternately outputting data output from the expansion board to the first buffer and the second buffer;By the alternate output control meansAlternate transmission output means for alternately transmitting and outputting data stored in the first buffer and the second buffer;When both the first expansion board and the second expansion board are mounted, individual output control means for controlling output of data output from both expansion boards to the corresponding first buffer and second buffer, respectively. And individual transmission output means for individually transmitting and outputting the data stored in the first buffer and the second buffer by the individual output control means,This can be achieved by providing an expansion board control device characterized by comprising:
[0019]
  In the invention of this example, the first expansion board and the second expansion board areSelectively as neededIn a connectable expansion board controller, even when a board is connected to only one expansion board, the first and second buffers are used alternately, and data transfer processing is efficiently performed by so-called double buffer processing. It is.
[0020]
In other words, since the conventional buffer is dedicated for each expansion board, data transfer processing is performed using only the buffer corresponding to the connected expansion board. By alternately using these, data can be written and read at the same time to efficiently perform data transfer processing.
[0021]
  Claim2Description of the claim1The data output by the transmission output means is supplied to, for example, a memory. This exampleInData stored in the expansion board is Centro data or LAN data. These data are alternately stored in the first and second buffers, and then supplied to a memory such as a RAM or an EEPROM by the transmission output means.
[0022]
  Claim3Is described in the above claim.1The data output from the transmission output unit to the memory is configured to be output by, for example, a direct memory access process.
[0023]
  That is, the data of the first expansion board or the second expansion board stored in the buffer is stored in the direct memory access process (DMA).InTherefore, it is written in the memory.
[0024]
Here, although not described in the above claims, when performing direct memory access (DMA), the expansion board control device of this example makes an access request to the MPU, for example, but at this time, a certain time interval is necessary. Met. For this reason, the data transfer rate to be transferred to the memory is increased, and a long time is required for the data transfer.
[0025]
Therefore, the following invention may be added. That is,
Request output means for requesting DMA transfer, counting means for detecting an inactive state of the MPU and counting a certain time after detecting the state, and after the DMA transfer request is output from the request output means, the counting means Provides an expansion board control device having a HOLD signal output means for outputting a HOLD signal upon completion of counting for a predetermined time, and a means for outputting a DMA transfer permission signal after the HOLD signal output means outputs the HOLD signal. To do.
[0026]
By using the expansion board controller configured as described above, data stored in the buffer can be transferred to a memory or the like in a shorter time, and data transfer using direct memory access (DMA) can be performed at higher speed.
[0027]
DETAILED DESCRIPTION OF THE INVENTION
Embodiments of the present invention will be described below in detail with reference to the drawings.
<< First Embodiment >>
FIG. 2 is a diagram for explaining the expansion board control device of the present invention, and is a system configuration diagram showing an example in which the expansion board control device of the present invention is applied to a printer device.
[0028]
In FIG. 1, a printer apparatus 1 includes an interface controller (hereinafter referred to as an I / F controller) 2 and a printing apparatus (engine) 3 connected to the I / F controller 2. The I / F controller 2 includes a personal computer. 4 is connected.
[0029]
The I / F controller 2 has a function of creating one-to-one bitmap data corresponding to recording paper in accordance with print information output from the personal computer 4, and includes an MPU 5, ROM 6, RAM 7, an operation panel control unit 8, an image The control unit 9, engine control unit 10, memory control unit 11, DMA control unit 12, expansion board control unit 13, and interface unit 14 are configured. Each part in the I / F controller 2 is connected by a bus line.
[0030]
Here, the above-described expansion board control unit 13 corresponds to the expansion board control apparatus of the present invention, and one of the expansion boards 15 and 16 or the expansion boards 15 and 16 is connected to the expansion board control unit 13. Parallel centro data or LAN data is input from the expansion board 15 and stored in the RAM 7 described above. Note that the centro data or LAN data stored in the RAM 7 is converted into, for example, bitmap data by the I / F controller 2 in the same manner as the data input from the personal computer 4.
[0031]
The MPU 5 is a microprocessor unit that performs print control of the printer apparatus 1 of this example, and performs print control according to a program stored in the ROM 6. The RAM 7 has a work area when the MPU 5 performs print processing, and also has a storage area for storing data input via the personal computer 4 and the expansion board control unit 13 described above.
[0032]
The operation panel control unit 8 outputs a key operation signal supplied from an operation panel (not shown) to the MPU 5 to execute processing instructed by the operator. The engine control unit 10 outputs a control signal to each unit in the printing apparatus (engine) 3, such as a transfer unit, a printing unit, a developing unit, and the like, and performs drive control of each unit.
[0033]
Although not shown, the printing apparatus 3 includes a paper transport mechanism, an image forming unit, a fixing unit, and the like. The paper transport mechanism sends the paper transported from the paper feed cassette to the standby roll via the paper transport path, For example, the paper is supplied onto the conveyance belt at the same timing as the toner image formed on the photosensitive drum. Further, while the sheet moves on the conveyance belt, a toner image is transferred from the image forming unit to the sheet on the conveyance belt, and a transfer process to the sheet is performed. Thereafter, a heat fixing process is performed by the fixing unit, and the sheet is discharged out of the apparatus by a sheet discharge roll.
[0034]
On the other hand, the memory control unit 11 and the DMA control unit 12 together with the above-described expansion board control unit 13 constitute an expansion board control device. The memory control unit 11 and the DMA control unit 12 perform memory control and data transfer control of the printer 1, and also perform data input / output control between the expansion boards 15 and 16 and the I / F controller 2.
[0035]
FIG. 1 is a diagram for explaining the configuration of the expansion board control device of this example. A memory control unit 11 and a DMA control unit 12 arranged on the main board A side (in FIG. A connection configuration of the expansion board control unit 13 and the two expansion boards 15 and 16 provided on the expansion board B side is shown.
[0036]
In the same figure, the expansion boards 15 and 16 are boards for inputting Centro data and LAN data as described above. For example, the expansion boards 15 and 16 are inserted into the expansion slots provided in the main board A so that the expansion boards 15 and 16 are expanded. It can be connected to the control unit 13. With this connection, the signal line and the data line between the expansion board control unit 13 and the expansion boards 15 and 16 are connected.
[0037]
For example, a data transmission request signal (Dreq1) is output from the expansion board 15 to the expansion board control unit 13 via this signal line, and a data transmission permission signal (Dack1) is output from the expansion board control unit 13 to the expansion board 15. . Similarly, the data transmission request signal (Dreq2) is output from the expansion board 16 to the expansion board control unit 13 via the signal line, and the data transmission permission signal (Dack2) is output from the expansion board control unit 13 to the expansion board 16. . Further, the 8-bit data D1 is output from the expansion board 15 to the expansion board control unit 13 via the data line, and the 8-bit data D1 'is output from the expansion board control unit 13 to the expansion board 15. Similarly, 8-bit data D2 is output from the expansion board 16 to the expansion board controller 13 via the data line, and 8-bit data D2 'is output from the expansion board controller 13 to the expansion board 16. The reason why the 8-bit data is output from the expansion board control unit 13 to the expansion boards 15 and 16 is that the data is output from the printer device 1 via the Centronics interface.
[0038]
On the other hand, the expansion board control unit 13 is connected to the memory control unit 11, the DMA control unit 12, and the memory (RAM) 7 via a bus line. In FIG. 1, as described above, the memory control unit 11 and the DMA control unit 12 are shown as one block by the memory / DMA control unit 18. Here, between the expansion board control unit 13 and the memory / DMA control unit 18, DMA (direct memory access) processing request signals (DMAreq 1) and (DMAreq 2) are sent from the expansion board control unit 13 to the memory / DMA control unit 18. And the DMA processing permission signals (DMAack1) and (DMAack2) are output from the memory / DMA control unit 18 to the expansion board control unit 13. Here, the above-mentioned request signal (DMAreq1) is a signal output when 64 bits of data supplied from the expansion board 15 are stored in a buffer, which will be described later, and the permission signal (DMAack1) is used when the above-mentioned request is permitted. This is an output signal. Similarly, the request signal (DMAreq2) is output when 64 bits of data supplied from the expansion board 16 are stored in a buffer described later, and the permission signal (DMAack2) is output when the above request is permitted. Signal.
[0039]
Data D output from the expansion board control unit 13 to the memory (RAM) 7 is data supplied from the expansion board 15 or 16 to the expansion board control unit 13, and 64-bit data is stored in the memory (RAM). ) Is output to 7. Conversely, the data D may be output from the memory (RAM) 7 to the expansion board control unit 13.
[0040]
The data a supplied from the memory / DMA control unit 18 to the memory (RAM) 7 is address data. When data is input from the expansion board control unit 13 or when data is output from the memory (RAM) 7. , Data specifying a write or read address in the memory (RAM) 7.
[0041]
Further, the HOLD signal output from the memory / DMA control unit 18 is a request signal for performing a DMA transfer process on the MPU 5, and the HOLDA signal is transmitted from the MPU 5 to the memory / DMA control unit 18. This signal is output when it is permitted to perform The data b supplied from the MPU 5 to the memory / DMA control unit 18 is address data, and the data d is actual data (data stored in the memory (RAM) 7 or data output from the memory (RAM) 7). ).
[0042]
FIG. 3 is a specific circuit diagram of the expansion board controller 13 described above. The expansion board control unit 13 includes a bus arbiter 20, board control units 21 and 22, buffers 23 and 24, an AND circuit 25, and a selector 26. As can be seen from the figure, the data transmission request signal (Dreq1) output from the expansion board control unit 13 is specifically output from the board control unit 21, and the data transmission permission signal (Dack1) is output from the board control unit. 21. Similarly, the data transmission request signal (Dreq2) output from the above-described expansion board control unit 13 is output from the board control unit 22, and the data transmission permission signal (Dack2) is input to the board control unit 22.
[0043]
The DMA processing request signal (DMAreq1) output from the expansion board control unit 13 to the memory / DMA control unit 18 is also output to the bus arbiter 20, and the permission signal (DMAack1) is also input to the bus arbiter 20. Similarly, a DMA processing request signal (DMAreq 2) output from the expansion board control unit 13 to the memory / DMA control unit 18 is also output to the bus arbiter 20, and a permission signal (DMAack 2) is also input to the bus arbiter 20.
[0044]
The buffers 23 and 24 are buffers corresponding to the expansion boards 15 and 16, respectively. The buffer 23 corresponds to the expansion board 15 and the buffer 24 corresponds to the expansion board 16. However, the buffers 23 and 24 only correspond to the expansion boards 15 and 16, respectively, and the corresponding expansion boards are not dedicated. Therefore, it is a structure which can be used freely depending on the case. For this reason, the write signal w1 is supplied from the board control unit 21 to the buffers 23 and 24 via the AND circuit 25, and the write signal w2 is supplied from the expansion board control unit 22 to the buffers 23 and 24 via the AND circuit 25. .
[0045]
The selector 26 is configured to select data output from the buffers 23 and 24 and output the data to the memory (RAM) 7 described above. From the selection signal S1 output from the board controller 21 or the board controller 22 Data selection processing is performed by the output selection signal S2. For example, when the selection signal S 1 is selected, the selector 26 outputs the data output from the buffer 23 to the memory (RAM) 7. Further, when the selection signal S2 is selected, the selector 26 is configured to output data output from the buffer 24 to the memory (RAM) 7.
[0046]
The processing operation of the expansion board control apparatus having the above configuration will be described below. The expansion board control device of this example has two expansion slots, and an expansion board can be attached to only one or both of them. Therefore, in the following description, a case where one expansion board is used and a case where two expansion boards are used will be described separately.
<< In the case of one expansion board >>
First, a case where one expansion board is used will be described. In this example, it is assumed that only the expansion board 15 is used.
[0047]
4 to 6 are diagrams for explaining this process. FIG. 4 is a process for storing the data D1 transmitted from the expansion board 15 in the buffers 23 and 24. FIG. 5 is a process for the bus arbiter 20 at that time. FIG. 6 is a flowchart showing the operation, in which data D1 stored in the two buffers 23 and 24 is DMA-transferred to the memory (RAM) 7.
[0048]
The data transmission request signal “Dreq1” (or “Dreq2”) is active when “0”, and inactive when “1”. The data transmission permission signal “Dack1” (or “Dack2”) is also active when “0”, and inactive when “1”.
[0049]
First, in the flowchart of FIG. 4, an initial setting process is performed (step (hereinafter referred to as S) 1). This initial setting processing is processing such as clearing data remaining in the buffers 23 and 24, setting the selector 26 to an initial position on the buffer 23 side, and clearing data remaining in the memory (RAM) 7, for example. In addition, flags “H” and “F” (not shown) are initialized to “0”, and the counter is initialized to “0”.
[0050]
After performing such processing, judgment (S2) is executed. This determination (S2) is a process for determining whether or not “H = 1”. This “H” is, for example, a flag in the board control unit 21, and when 64-bit data is stored in the buffer 23, The flag “H” becomes “1”. Specifically, the data D1 (8-bit data) is input from the expansion board 15 by the write signal W1 output from the board control unit 21, and the write signal W1 is output eight times to output 64-bit data to the buffer 23. Data is stored and flag “H” is set to “1”.
[0051]
However, the initial flag “H” is “0” (S2 is NO), and it is determined whether the data transmission request signal (Dreq1) is output from the expansion board 15 (S3). This data transmission request signal (Dreq1) is a signal that is output when the expansion board 15 desires to output data to the buffer 23. If there is no request, the data transmission request signal (Dreq1) waits for the input of the data transmission request signal (Dreq1) (S3 NO).
[0052]
On the other hand, when the data transmission request signal (Dreq1) is present (S3 is YES), the board control unit 21 outputs a data transmission permission signal (Dack1) to the expansion board 21 via the bus arbiter 20, and buffers the write signal W1. 23 (S4). By this process, 8-bit data is written in the buffer 23, and it is determined that the data transmission request signal (Dreq1) from the expansion board 15 has become “1” (S5 is YES), and further a data transmission permission signal (Dack1). ) Is set to “1” (S6).
[0053]
With the above process, the process of writing the 8-bit data to the buffer 23 is completed. For example, it is determined whether the counter provided in the board control unit 21 has counted up to “7”. In the first process, the counter value is “0”. Therefore, the counter value is incremented by 1 (S7 is NO, S8). By this processing, the count value of the counter becomes “1”, and the process returns to the above-described determination (S3) to determine the input of the data transmission request signal (Dreq1) (S3).
[0054]
Thereafter, the above processing is repeated (S3 to S8), data is written to the buffer 23 every 8 bits, and the counter value is added as “1” → “2” → “3”,. When “7” is set, the determination (S7) is YES, and the aforementioned flag “H” is set to “1” (S8 ′). That is, it is assumed that 64-bit data is stored in the buffer 23 by the above-described eight times of data supply, and the flag “H” is set in the board controller 21 (the flag “H” is “1”).
[0055]
Next, it is determined whether or not one expansion board is installed (S9). In the description of this example, since only the expansion board 15 is connected as described above, the determination (S9) is YES.
[0056]
Therefore, it is next determined whether or not the flag “F” is “1” (S10). This “F” is a flag that is set to “1” when 64-bit data is stored in the buffer 24. Since this flag is initially set as described above at the initial stage, the determination (S10) is NO, and it is then determined again whether there is a data transmission request signal (Dreq1) (S11). If there is no such request, it waits for the input of a data transmission request signal (Dreq1) (NO in S11).
[0057]
On the other hand, when the data transmission request signal (Dreq1) is present (S11 is YES), the board control unit 21 outputs the data transmission permission signal (Dack1) to the expansion board 21 via the bus arbiter 20 in the same manner as described above. The signal W1 is output to the buffer 24 (S12), and 8-bit data is written to the buffer 24. Then, it is determined that the data transmission request signal (Dreq1) from the expansion board 15 is “1” (S13 is YES), and the data transmission permission signal (Dack1) is set to “1” (S14). Thereafter, as described above, it is determined whether the counter has counted up to “15”. In the first process, the counter value is “7” described above, and the counter value is incremented by 1 (S15 is NO, S16). These processes are repeated (S11 to S16). Therefore, while the above processing is repeated, the counter value is added as “8” → “9” → “10”,..., And when the count value becomes “15”, the determination (S15) becomes YES, and The flag “F” is set to “1” (S17). That is, 64-bit data is stored in the buffer 24 by supplying data eight times, and the above-described flag “F” is set in the board control unit 21 (the flag “F” is set to “1”).
[0058]
By controlling as described above, the data output from the expansion board 15 is first stored in the buffer 23 with 64-bit data, and then in the buffer 24 with 64-bit data. Thereafter, by performing the same control, the processing of the flowchart shown in FIG. 4 is repeated again, and the data output from the expansion board 21 is alternately stored in the buffer 23 and the buffer 24.
[0059]
Therefore, by repeating the above processing, the data is alternately supplied to the buffer 23 and the buffer 24, and the data is output from the non-supply side buffer 24 or the buffer 23 as described later, thereby efficiently transferring the data. Can do. The data transfer processing from the buffers 23 and 24 will be described later with reference to the flowchart of FIG.
[0060]
On the other hand, FIG. 5 shows the data storage processing in the buffers 23 and 24 as seen from the bus arbiter 20, and first, initial setting processing (step (hereinafter referred to as ST) 1) is performed. This process is the same as the above-described initial setting process (S1), and the data in the bus arbiter 20 is cleared.
[0061]
Next, the input of the data transmission request signal (Dreq1) is determined (ST2). If the data transmission request signal (Dreq1) is supplied from the expansion board 15 or 16 to the board control unit 21 or 22, it is determined whether only one expansion board is mounted (ST3). Here, in the description of this example, since the board is connected only to the expansion board 15 (ST3 is YES), it is assumed that the data transmission request signal (Dreq1) is output from the board control unit 21 (ST4). Then, the output of the data transmission permission signal (Dack1) to the expansion board 15 is confirmed (ST5), the transmission signal and the permission signal are set to 1, and the process is terminated (ST6, ST7).
[0062]
Next, it is determined whether or not the data transmission request signal (Dreq2) is output from the expansion board 16 (ST8). In the description of this example, since the expansion board is not connected to the expansion board 16, the determination (ST8) NO, returning to the above process, the same process is repeated (ST2 to ST8). That is, the bus arbiter 20 stores data alternately in the buffers 23 and 24 by the above-described processing.
Next, a data transfer processing operation for outputting the data D1 stored in the two buffers 23 and 24 to the memory (RAM) 7 will be described. The 64-bit data stored in the buffers 23 and 24 is transferred to the memory (RAM) 7 according to the processing shown in FIG.
[0063]
First, as in the above example, initial setting processing is performed (step (hereinafter referred to as STP) 1). Next, the board control unit 21 determines whether the flag “H” is “1” (STP2). Here, when the flag “H” is “1”, it indicates that the 64-bit data has already been stored in the buffer 23 as described above, and the board controller 21 sends the data to the memory / DMA controller 18. On the other hand, a request signal (DMAreq1) is output (STP3).
[0064]
In response to the input of this request signal (DMAreq1), the memory / DMA control unit 18 outputs a HOLD signal to the MPU 5 and waits for the MPU 5 to output a HOLDA signal. When this signal is supplied from the MPU 5, the MPU 5 determines that the bus has been released for DMA processing, and the memory / DMA control unit 18 returns a permission signal (DMAack1) to the board control unit 21 (STP4). .
[0065]
When this data transmission permission signal (DMAack1) is input, the board controller 21 DMA-transfers the 64-bit data stored in the buffer 23 to the memory (RAM) 7. Thereafter, the output of the data transmission request signal (DMAreq1) is stopped (STP5), it is determined that the output of the data transmission permission signal (Dack1) is stopped (STP6 is YES), and the flag “H” is set to “0”. (STP7).
[0066]
Next, the board control unit 21 determines whether the flag “F” is “1” (STP8). At this time, since the 64-bit data is stored in the buffer 24 as described above, the flag “F” is “1” (YES in STP8), and the board control unit 21 sends the data to the memory / DMA control unit 18. On the other hand, a request signal (DMAreq1) is output (STP9).
[0067]
In response to the output of this request signal (DMAreq1), the memory / DMA control unit 18 outputs a HOLD signal to the MPU 5, as described above. When the HOLDA signal is output from the MPU 5, the MPU 5 uses the bus for DMA processing. The memory / DMA control unit 18 determines that it has been released, and returns a permission signal (DMAack1) to the board control unit 21 (YES in STP10).
[0068]
When this data transmission permission signal (DMAack1) is input, the board controller 21 DMA-transfers the 64-bit data stored in the buffer 24 to the memory (RAM) 7 as described above, and stops outputting the request signal (DMAreq1). (STP11) Further, it is determined that the output of the permission signal (DMAack1) is stopped (STP12 is YES), and the flag “F” is set to “0” (STP13).
[0069]
As described above, when only one expansion board is used, the buffers 23 and 24 are alternately used, and the data supplied from the expansion board 15 is alternately stored in the buffers 23 and 24. By efficiently outputting the data stored in 24 to the memory (RAM) 7, efficient data transfer can be performed.
<< When there are two expansion boards >>
Next, a case where two expansion boards are used will be described. Also in this case, the flowcharts of FIGS. 4 and 5 are used. However, the flowchart of FIG. 6 is not used. Hereinafter, a specific processing operation will be described.
[0070]
First, in the flowchart of FIG. 4, the same initial setting process as described above is performed (S1). Next, it is determined whether or not “H = 1” (S2). As described above, the initial flag “H” is “0” (S2 is NO), and the data transmission request signal (S2 is NO). It is determined whether or not (Dreq1) is output (S3). This data transmission request signal (Dreq1) is a signal output when the expansion board 15 desires to output data to the buffer 23, and stores 64-bit data in the buffer 23 while counting up the counter as described above. (S2-S8). In this way, 64-bit data is stored in the buffer 23, and the flag “H” is set to “1” (S8 ′).
[0071]
Next, it is determined whether or not one expansion board is installed (S9). In the description of this example, since there are two sheets, the determination (S9) is NO, and the determination of the flag “H” = “1” is performed again. Thereafter, every time a data transmission request signal (Dreq1) is output from the expansion board 15, 64-bit data is stored in the buffer 23.
[0072]
Further, the above-described processing is an explanation for the data output from the expansion board 15. When the data transmission request signal (Dreq2) is input from the expansion board 16 in the same manner, the buffer 24 is processed by the same processing as described above. 64-bit data is written.
[0073]
In the flowchart shown in FIG. 5, the writing process to the above-described buffers 23 and 24 will be described. After the initial setting process (ST1), the input of the data transmission request signal (Dreq1) is determined (ST2) and connected. It is determined whether there is only one expansion board (ST3). Here, since the two expansion boards 15 and 16 are connected in the description of this example (ST3 is NO), the determination (ST4 ') is executed. This determination is to determine whether a request signal (DMAreq1) or a permission signal (DMAack1) is output to the memory / DMA control unit 18 described above. If the data is exchanged between the two, the data stored in the buffer 23 is being DMA-transferred, so the data storage processing in the new buffer 23 is not performed (NO in ST4 ′).
[0074]
On the other hand, if the data stored in the buffer 23 is not being DMA-transferred (ST4 'is Y), 64-bit data is stored from the expansion board 15 to the buffer 23 as described above (ST2 to ST8).
[0075]
Next, it is determined whether a data transmission request signal (Dreq2) is output from the expansion board 16 (ST8). In this example, since two expansion boards are connected, a data transmission request signal (Dreq2) may be input. Therefore, when there is a data transmission request signal (Dreq2) from the expansion board 16 (YES in ST8), it is determined whether there is one expansion board (ST9), and in this example, two expansion boards are connected. Therefore, as described above, the board control unit 22 outputs a request signal (DMAreq2) and a permission signal (DMAack2) to the memory / DMA control unit 18, and determines whether or not DMA transfer processing is in progress (ST10). If the DMA transfer is in progress, the new data is not stored in the buffer 24 (NO in ST10).
[0076]
On the other hand, if the data stored in the buffer 24 is not undergoing DMA transfer, 64-bit data is stored in the buffer 24 from the expansion board 16 as described above (ST11 to ST14).
[0077]
As described above, when a plurality of expansion boards 15 and 16 are connected, data from the expansion board having a data transmission request signal (Dreq) is preferentially stored in the corresponding buffer 23 or 24, and the buffer 23 , 24 are used efficiently.
[0078]
Finally, data transfer processing for outputting the data D1 and D2 stored in the two buffers 23 and 24 to the memory (RAM) 7 is performed. Although this process is not particularly shown in the flowchart, it is driven when 64-bit data is stored in the buffer 23 or 24 and the flag “H” or “F” is set to “1”. For example, when 64-bit data is stored in the buffer 23, a flag “H” is set in the board control unit 21, and data is transferred from the buffer 23 to the memory (RAM) 7 based on the setting of the flag. On the other hand, when 64-bit data is stored in the buffer 24, the flag “F” is set in the expansion board control unit 22, and the data is DMA-transferred from the buffer 24 to the memory (RAM) 7 based on the setting of this flag. .
[0079]
From the above control, in this example, 64-bit data is stored in the buffer 23 or 24, and a request signal (DMAreq1) is output from the expansion board controller 21 or 22 corresponding to the buffer in which the 64-bit data is stored. In other words, data is transmitted from the buffer 23 or 24 to the memory (RAM) 7.
[0080]
With this configuration, it is possible to efficiently use the buffers 23 and 24 and perform data transfer processing.
<Second Embodiment>
Next, a second embodiment will be described.
[0081]
FIG. 7 is a diagram for explaining the second embodiment. The basic configuration of this example is the same as that of FIG. 2 used in the description of the first embodiment. Therefore, the expansion board control device of the present invention is applied to the printer device 1, and the printer device 1 is composed of an I / F controller 2 and a printing device (engine) 3 connected to the I / F controller 2. Is connected to a personal computer 4. Further, the I / F controller 2 has a function of creating bitmap data corresponding to the recording paper on a one-to-one basis in accordance with the print information output from the personal computer 4. The MPU 5, ROM 6, RAM 7, and operation panel controller 8 , An image control unit 9, an engine control unit 10, a memory control unit 11, a DMA control unit 12, an expansion board control unit 13, and an interface unit 14.
[0082]
Here, the above-described expansion board control unit 13 corresponds to the expansion board control device of the present invention, and expansion boards 15 and 16 are connected to the expansion board control unit 13. The MPU 5 is a microprocessor unit that performs print control of the printer apparatus 1 of the present example, as in the above-described embodiment, and performs print control according to a program stored in the ROM 6.
[0083]
Here, a specific configuration of the expansion board control device used in this example will be described with reference to FIG. The expansion board 15 (or 16) is connected to the main board A, and the expansion board control unit 13 has the same configuration as described above. A request signal (REQ) is output from the expansion board 15 (or 16), and an acknowledge signal (ACK) and address data are output from the expansion board control unit 13 to the expansion board 15 (or 16). Data D is exchanged between the expansion board 15 (or 16) and the expansion board control unit 13.
[0084]
Here, the request signal (REQ) corresponds to the data transmission request signal (Dreq1 (or Dreq2)), and the acknowledge signal (ACK) corresponds to the data transmission permission signal (Dack1 (Dack2)). .
[0085]
On the other hand, the expansion board control unit 13 outputs a HOLD signal to the MPU 5, and the MPU 5 outputs a HOLDA signal to the expansion board control unit 13. The HOLD signal described above is a signal for requesting permission of direct memory access (DMA) transfer to the MPU 5, and the HOLDA signal is a response signal.
[0086]
FIG. 8 shows a circuit configuration in the expansion board controller 13 which is a feature of this example. However, the expansion board control unit 13 is not, of course, constituted only by the circuit shown in FIG. In the figure, an interval setting circuit 32 including a NAND gate 30 and a timer 31 is provided. The interval setting circuit 32 counts the time from when the HOLDA signal output from the MPU 5 becomes inactive, counts a certain interval time, and then outputs the HOLD signal to the MPU 5 on condition that the request signal (REQ) is output. The circuit that outputs to Specifically, the timer 31 is driven from the time when the HOLDA signal output from the MPU 5 becomes inactive, the interval time set in the timer 31 is counted and output to the NAND gate 30. When the time-up signal is input from the timer 31 and the request signal (REQ) is also input to the NAND gate 30, the NAND gate 30 outputs a HOLD signal to the MPU 5. The HOLD signal is a DMA transfer request to the MPU 5. When the HOLD signal is input, the MPU 5 then outputs the HOLDA signal to the expansion board control unit 13. This HOLDA signal functions as an acknowledge signal (ACK) to the expansion board control unit 13.
[0087]
Further, the expansion board control unit 13 is also provided with a buffer 33 to temporarily hold the address data output from the MPU 5. In addition, the counter 34 provided in the expansion board control unit 13 is a counter for counting data every 8 bits at the time of data transmission / reception and outputting the data as, for example, 64-bit data.
[0088]
The processing operation of the second embodiment having the above configuration will be described below.
FIG. 9A is a time chart for explaining the processing operation of this example. First, when a request signal (REQ) is output from the expansion board 15 (or 16), the expansion board control unit 13 outputs a HOLD signal to the MPU 5. Thereafter, when the HOLDA signal output from the MPU 5 becomes inactive, the timer 31 detects this and counts for a certain interval time (t). Therefore, the HOLDA signal becomes active in a short time thereafter, and the output timing of the acknowledge signal (ACK) can be advanced.
[0089]
That is, FIG. 9B shows a time chart of the processing operation in the conventional case, and since the fixed time (t) is counted after the output stop of the request signal (REQ), the end time of the output of the HOLD signal is counted. Therefore, the supply timing of the HOLDA signal output from the MPU 5 is also delayed.
[0090]
As described above, in the conventional example, the output of the HOLDA signal output from the MPU 5 is delayed, and the delay leads to a delay in data processing in total. However, according to the present example, after the HOLDA signal becomes inactive, a predetermined interval time (t) is counted in advance by the timer 31. Therefore, after the HOLD signal is output, the HOLDA signal (acknowledge signal ( ACK)) can be output to the expansion board controller 13, and data transfer can be performed at high speed.
[0091]
【The invention's effect】
As described above, according to the present invention, the following effects occur.
According to one aspect of the invention, even when a plurality of expansion boards are connected, it is possible to efficiently use the buffer and perform efficient data transmission / reception processing.
[0092]
According to one invention, when a plurality of expansion boards can be connected, when only one expansion board is connected, buffers can be used alternately to perform efficient data transmission / reception processing. .
[0093]
  In addition, DMABy counting the interval time in advance, the output timing of the transfer permission signal is advanced, and the total DMATransfer processing can be performed at high speed.
[Brief description of the drawings]
FIG. 1 is a diagram illustrating a configuration of a board control apparatus according to an embodiment.
FIG. 2 is a system configuration diagram of the printer apparatus showing an example in which the expansion board control apparatus according to the embodiment is applied to the printer apparatus.
FIG. 3 is a specific circuit diagram of an expansion board control unit.
FIG. 4 is a flowchart illustrating a writing process of an expansion board control unit.
FIG. 5 is a flowchart showing the processing operation of the bus arbiter.
FIG. 6 is a flowchart illustrating DMA processing of an expansion board control unit.
FIG. 7 is a diagram for explaining a second embodiment.
FIG. 8 is a time chart of a delay circuit showing a circuit configuration in the extension board control unit;
9A is a time chart for explaining the processing operation of this example, and FIG. 9B is a time chart for the processing operation in the conventional case.
[Explanation of symbols]
1 Printer device
2 I / F controller
3 Printing device (engine)
4 Personal computer
5 MPU
6 ROM
7 RAM
8 Operation panel controller
9 Image controller
10 Engine control unit
11 Memory controller
12 DMA controller
13 Expansion board controller
14 Interface controller
15, 16 Expansion board
18 Memory / DMA controller
30 Nand Gate
31 timer
32 Interval setting circuit
33 buffers
34 counters

Claims (3)

第1の拡張ボードと第2の拡張ボードが必要に応じて選択的に接続可能な拡張ボード制御装置において、
第1のバッファと、
第2のバッファと、
前記第1の拡張ボード又は第2の拡張ボードの何れか一方が装着された場合、その装着された拡張ボードから出力されるデータを前記第1のバッファと第2のバッファに交互に出力制御する交互出力制御手段と、
該交互出力制御手段により前記第1のバッファ及び第2のバッファに格納されたデータを交互に送信出力する交互送信出力手段と、
前記第1の拡張ボード及び第2の拡張ボードの両方が装着された場合、両拡張ボードから出力されるデータをそれぞれ対応する前記第1のバッファと第2のバッファに出力制御する個別出力制御手段と、
該個別出力制御手段により前記第1のバッファ及び第2のバッファに格納されたデータをそれぞれ個別に送信出力する個別送信出力手段と、
を有することを特徴とする拡張ボード制御装置。
In the expansion board control device in which the first expansion board and the second expansion board can be selectively connected as necessary ,
A first buffer;
A second buffer;
When either the first expansion board or the second expansion board is mounted, the data output from the mounted expansion board is alternately output to the first buffer and the second buffer. Alternating output control means;
Alternate transmission output means for alternately transmitting and outputting data stored in the first buffer and the second buffer by the alternate output control means ;
When both the first expansion board and the second expansion board are mounted, individual output control means for controlling output of data output from both expansion boards to the corresponding first buffer and second buffer, respectively. When,
Individual transmission output means for individually transmitting and outputting the data stored in the first buffer and the second buffer by the individual output control means;
An expansion board control device comprising:
前記交互送信出力手段及び個別送信出力手段が出力するデータは、メモリに供給されることを特徴とする請求項記載の拡張ボード制御装置。Data to which the alternating transmission output means and the individual transmission output means outputs the expansion board control apparatus according to claim 1, characterized in that it is supplied to the memory. 前記交互送信出力手段及び個別送信出力手段が前記メモリに出力するデータは、ダイレクトメモリアクセス処理に従って出力されることを特徴とする請求項記載の拡張ボード制御装置。Data to which the alternating transmission output means and the individual transmission output means outputs to said memory expansion board control device according to claim 1, wherein the output in accordance with a direct memory access process.
JP19837997A 1997-07-24 1997-07-24 Expansion board controller Expired - Fee Related JP3764964B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP19837997A JP3764964B2 (en) 1997-07-24 1997-07-24 Expansion board controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP19837997A JP3764964B2 (en) 1997-07-24 1997-07-24 Expansion board controller

Publications (2)

Publication Number Publication Date
JPH1139139A JPH1139139A (en) 1999-02-12
JP3764964B2 true JP3764964B2 (en) 2006-04-12

Family

ID=16390150

Family Applications (1)

Application Number Title Priority Date Filing Date
JP19837997A Expired - Fee Related JP3764964B2 (en) 1997-07-24 1997-07-24 Expansion board controller

Country Status (1)

Country Link
JP (1) JP3764964B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11185604B2 (en) 2006-03-31 2021-11-30 Deep Science Llc Methods and systems for monitoring sterilization status

Also Published As

Publication number Publication date
JPH1139139A (en) 1999-02-12

Similar Documents

Publication Publication Date Title
US6539198B2 (en) Image forming apparatus, control method of the image forming apparatus and storage medium
EP2796296B1 (en) Image formation system and device, control method thereof, and troubleshooting method
JP3020699B2 (en) Printing equipment
CN102346394B (en) Image forming apparatus and control method of image forming apparatus
JP4905143B2 (en) Image forming apparatus, image forming method, and program
JP3286111B2 (en) Printing apparatus and method
JP3880281B2 (en) Image forming apparatus and image forming method
JP3764964B2 (en) Expansion board controller
JP3461364B2 (en) Digital copier system
JP3156927B2 (en) Printer with duplex printing function and duplex printing control device
JP5799660B2 (en) Printing apparatus and printing apparatus control method
JP2002091748A (en) Image processor
JP2006079393A (en) Printing system and job control method therefor
JP4366958B2 (en) Image forming apparatus
JP4307008B2 (en) Image forming apparatus
JP5263612B2 (en) Printing device
JP2001341363A (en) Blank page printing method for printer controller
JP5799659B2 (en) Printing apparatus and printing apparatus control method
JP3928685B2 (en) Printer and printing system
JP3817483B2 (en) Image forming apparatus, image forming apparatus control method, program, and storage medium
JP3056752B2 (en) Image forming system
JPH11179973A (en) Printer
JP3624046B2 (en) Image forming apparatus, video controller, option controller, and control method in option sheet feeding apparatus
JP2006195888A (en) Print system
JP2000103533A (en) Image forming device and recorded material carry control method therefor

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050727

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050802

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050929

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: 20051220

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060102

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: 20100203

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110203

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120203

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20120203

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130203

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20130203

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20140203

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees