JP3585052B2 - インターフェース制御装置 - Google Patents
インターフェース制御装置 Download PDFInfo
- Publication number
- JP3585052B2 JP3585052B2 JP20848594A JP20848594A JP3585052B2 JP 3585052 B2 JP3585052 B2 JP 3585052B2 JP 20848594 A JP20848594 A JP 20848594A JP 20848594 A JP20848594 A JP 20848594A JP 3585052 B2 JP3585052 B2 JP 3585052B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- stored
- interrupt
- output
- data buffer
- 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
Links
Images
Landscapes
- Computer And Data Communications (AREA)
Description
【産業上の利用分野】
本発明は、パーソナルコンピュータなどのホスト装置とのインターフェース制御装置に関する。
【0002】
【従来の技術】
特開平4−32922号公報および特開平4−58355号公報では、外部装置から1バイト毎に送信されるデータをデータ保持手段に書き込み、データ保持手段の保持データが予め定められた所定量に達したとき、データ処理手段へ割り込み信号を送出し、1バイト毎に所定量の保持データを連続して読み出すインターフェース制御回路が開示されている。
【0003】
また、特開平4−342343号公報では、受信したシリアルデータをパラレルデータに変換させて受信FIFOに書き込み、タイミングレジスタに予め設定されたキャラクタ数のデータが受信FIFOに格納された時、ホストプロセッサに対して割り込み信号を送出し、設定数分のパラレルデータを連続して読み出すデータ転送システムが開示されている。
【0004】
【発明が解決しようとする課題】
特開平4−32922号公報および特開平4−58355号公報では、データ保持手段に格納された所定量のデータを連続して転送するため、1バイト毎に割り込み処理を行なうデータ転送と比較すると転送効率は向上するが、予め定められた所定量の保持データがデータ保持手段に格納されるまでデータ転送が開始されないために、データ転送前に外部装置からの転送データ数が通知されないセントロニクスインターフェースまたはRS232仕様のシリアルインターフェースに適用させる場合には、次のような問題がある。▲1▼所定量に満たないデータがデータ保持手段に格納されたときにデータ保持手段からデータの取り残しを防止するために、一定時間を経過しても次のデータが格納されなければデータ保持手段からデータを読み出すためのタイマ手段を必要とする。▲2▼外部装置から送信された1バイト目のデータが処理されるまでに要する時間が、1バイトごとに転送する場合に比べて大きくなるため処理が遅くなる。▲3▼高速なデータ転送では、データ保持手段に格納されたデータの転送処理までにかかるOSのオーバーヘッドを含む割り込み処理までの時間に外部装置から送信されるデータでデータ保持手段の飽和状態が発生して転送効率を低下させる。▲4▼予め定められた所定量単位でのデータ転送を行なうため、外部装置からの転送速度に依存するデータ格納状況に応じた処理が不可能である。また、1バイトのデータを連続して転送するため、▲5▼データ保持手段に格納されているバイ卜数と同じ回数の読み出しを必要とする。
【0005】
特開平4−342343号公報では、外部装置とのインターフェース手段がシリアルインターフェースであるが、受信されたシリアルデータがパラレルデータに変換され、受信FIFOに格納された後は、予め設定されたキャラクタ数のデータが受信FIFOに格納されるまでデータ転送が開始されないために上記と同様の問題がある。
【0006】
本発明の目的は、上記従来技術における欠点を改良するために、▲1▼データバッファからのデータ取り残し防止のためのタイマ手段を不要とし、▲2▼1バイト自のデータ転送処理を遅らせることなく、▲3▼1回のデータバッファ読み出しで複数バイトデータ転送を可能とすることで処理速度を向上し、▲4▼割り込み処理に関するOSのオーバーへッドをできる限り回避してデータバッファの格納状況に応じた柔軟なデータ転送を可能とすることで、ホストコンピュータの転送能力を低下させることなく、高速のデータ転送を可能とするインターフェース制御装置を提供することにある。
【0007】
【課題を解決するための手段】
本発明は、ホスト装置に接続されてデータ転送を行なうインターフェース制御装置にであって、ホスト装置から送信されるデータを格納するデータバッファ手段と、CPUにデータ読み出しを要求する割り込み手段と、最小単位のデータが前記データバッファ手段に格納されたとき割り込みを行なうよう前記割り込み手段を制御する割り込み制御手段と、前記データバッファ手段に格納されたデータ数を計数するデータ計数手段と、前記データバッファ手段により計数された前記データ数に基づいて前記データバッファ手段から出力するデータ数を制御する出力データ数制御手段とを備える。
【0008】
【作用】
本発明は、以下のように作用する。
【0009】
ホスト装置から送信されたデータはデータバッファ手段に格納される。データバッファ手段に最少単位のデータが格納されると、割り込み手段によりCPUに対して割り込み信号を送出して、データ読み出し要求を行なう。データバッファ手段は複数のデータを格納可能であり、ホスト装置とのデータ転送は中断されることなく継続され、ホスト装置から送信されたデータは順次、データバッファ手段へ格納される。データ計数手段では、データバッファ手段の格納状況、即ち、格納データ数が管理される。出力データ数制御手段はデータ計数手段の管理する格納データ数に対応したデータ、例えば、1バイト、2バイト、4バイト等のデータをまとめて出力し、バスインターフェース手段を介してシステムバスに出力される。
【0010】
【実施例】
以下、本発明を実施例により説明する。
【0011】
図1はプリンタ装置1におけるインターフェース制御装置2に関する従来例を示すブロック図であり、CPU3と、ROM4と、RAM5と、印字手段6と、データバッファ手段7と、データ制御手段16と、割り込み手段12と、バスインターフェース手段13と、システムバス14とで構成される。また、プリンタ装置1は、ホストコンピュータ8とセントロニクスインターフェースで接続されており、データバッファ手段7に所定量のデータが格納されると、CPU3はデータの読み出し要求を受けて、予め設定された回数の読み出しを行なうことにより、データバッファ手段からデータを読み出す。
【0012】
図2は本発明の一実施例のプリンタ装置1におけるインターフェース制御装置2に関するブロック図である。以下に、インターフェース制御装置2の各構成ブロックの動作を説明する。
【0013】
データバッファ手段7は、ホストコンピュータ8から送信されるデータを格納するためのデータバッファであり、複数バイトのデータを格納するものであり、RAMで構成される。
【0014】
データ計数手段9は、データバッファ手段7に格納されているデータ数を管理するものであり、RAMで構成される。
【0015】
書き込み制御手段10は、データ計数手段9からデータ数情報を受け取り、データバッファ手段7にデータが格納可能であればホストコンピュータ8からのデータの送信を要求し、データバッファ手段にそれ以上のデータ格納ができないのであれば送信を中止する。
【0016】
割り込み制御手段11は、データ計数手段9からの情報を受け取り1バイトのデータがデータバッファ手段7に格納されたとき割り込みを行なうよう割り込み手段12を制御する。
【0017】
割り込み手段12は、割り込み制御手段11からの信号を受けてCPU3に対し割り込み信号を発する。
【0018】
バスインターフェース手段13は、データバッファ手段7に格納されたデータをデータバス32ビットのシステムバス14に出力する。
【0019】
ホストコンピュータ8からデータが送信され、データバッファ手段7に1バイトのデータが格納された時点で、割り込みを発生させる。データバッファ手段7は複数データを格納可能であり、CPU3が割り込み信号に応答し、割り込み処理を行なうまで、ホスト装置とのデータ転送は中断されることなく継続され、ホスト装置から送信されたデータは順次、データバッファ手段7へ格納される。CPU3が割り込み信号に応答し、割り込み処理内でデータバッファからデータが読み出す際、データバッファ手段7に格納された複数のデータを1回の割り込み処理で読み出す。
【0020】
出力データ数制御手段15は、データ計数手段9から出力される格納データ数に基づいて、データバッファ手段7に格納されているデータを、例えば、1バイト、2バイト、4バイト等のデータずつバスインターフェース手段13に出力する。
【0021】
書き込み制御手段10、割り込み制御手段11、割り込み手段12、出力データ数制御手段15は、その制御のためのプログラムがROMに記憶されており、そのプログラムはCPUにより動かされる。
【0022】
図3は本発明の一実施例のシステムバス14へのデータ出力処理動作の流れ図である。
【0023】
図4は本発明の一実施例の格納データ数に応じてバスインターフェース手段13から出力されるデータのデータ出力数の説明図である。
【0024】
以下に、データ受信からシステムバス14へのデータ出力までのインターフェース制御装置2の動作を説明する。
【0025】
セントロニクスインターフェースで接続されたホストコンピュータ8からの送信データを格納するために、書き込み制御手段10は、データ書き込み信号をホストコンピュータ8に出力して、データバッファ手段7へデータを格納する。データ計数手段9は、データバッファ手段7の格納状況を管理するために、格納データ数をカウントする。1バイトのデータが格納されると、割り込み制御手段11により割り込み手段12は、CPU3に対して割り込み信号を出力し、データバッファ手段7からのデータ読み出しを要求する。書き込み制御手段10は、データの格納が可能であればホストコンピュータ8からの送信データをデータバッファ手段7に格納する。データバッファ手段7が格納不能であれば、データ転送は中断される。データ計数手段9は、データ数に応じたデータ出力を行なうために格納データ数を出力データ数制御手段15に出力する。
【0026】
出力データ数制御手段15は、割り込み信号に応答して、出力情報を得るために格納データ数を読み出す。このとき、出力データ数制御手段15はデータ制御手段16から出力される格納データ数の下位2ビットにより、データ出力数を決定する(ステップS1〜S4)。
【0027】
ここで、データバッファ手段7に格納されているデータ数が、システムバス14が1回の読み出し処理でCPU3に転送できるデータ数以上の場合、すなわち、4バイト以上の場合には、下位2ビットに依存することなく4バイト出力が行われ、格納データ数が4バイトより小さい場合には、格納データ数の下位2ビッlが00は4バイト出力、01は1バイト出力、10は2バイト出力、11は3バイト出力に対応する。CPU3がバスインターフェース手段13を介してデータバッファ手段7に格納されているデータの読み出し処理を行なうとき、格納データ数に基いて出力されるデータ出力配列に対応した回数のデータ読み出し信号をデータバッファ手段7に出力して出力データ数制御手段15にデータを出力する。格納データ数の下位2ビットが00であるとき、出力データ数制御手段15はバスインターフェース手段13を介して、4バイトをシステムバス14に出力し(ステップS5)、データ制御手段16はデータバッファ手段7からのデータ読み出しに伴い、格納データ数を変更する(ステップS6)。同様に、格納データ数の下位2ビットが01であるとき、1バイトを出力し(ステップS7)、格納データ数を変更(ステップS8)し、格納データ数の下位2ビットが10であるとき、2バイトを出力し(ステップS9)、格納データ数を変更(ステップS10)する。格納データ数の下位2ビットが11であるとき、2バイトを出力(ステップSll)し、格納データ数を変更(ステップS12)したあと、2バイトの読み出しが完了した否かを判断(ステップS13)し、完了していれば、残りの1バイトを出力(ステップS14)し、格納データ数を変更(ステッブS15)する。格納データ数が変更されたあと、読み出しが完了した否かを判断(ステップS16)し、完了していれば、データバッファ手段7にデータが格納されているかどうかを判断する(ステップS17)。格納データがある場合には、格納データ数を判断して処理を繰り返す(ステッブS2)。格納データがない場合には、CPU3による割り込み処理が終了される。
【0028】
図5は本発明の他の一実施例のプリンタ装置1に関するブロック図である。
【0029】
この実施例は、CPU3と、ROM4と、RAM5と、印字手段6と、データバッファ手段7と、ホストコンピュータ8と、データ計数手段9と、書き込み制御手段10と、割り込み制御手段11と、割り込み手段12と、バスインターフェース手段13と、システムバス14と、出力データ数制御手段15と、シリアルパラレル変換手段17と構成される。また、プリンタ装置1は、ホストコンピュータ8とRS232C仕様のシリアルインターフェースで接続されている。
【0030】
この実施例では、ホストコンピュータ8から送信されるデータがシリアルデータであり、シリアルパラレル変換手段17にてデータ変換されること以外は、前述の実施例と同様である。
【0031】
【発明の効果】
以上説明したように、本発明によれば、以下のような効果がある。
【0032】
(1)タイマ手段を備えることなく、データバッファからのデータ取り残しを防止できるため構成が簡単となる。
【0033】
(2)最少単位のデータ受信と同時に割り込み要求を発生させるため、一番目のデータのデータ転送処理の開始が遅くならない。
【0034】
(3)1回のデータバッファ読み出しで、複数単位のデータ転送が可能となる。
【0035】
(4)データバッファの格納状況に応じて転送を行なうため、割り込み処理に関するOSのオーバーへッドを少なくできるため、ホストコンピュータの転送能力を低下させることなく、高速のデータ転送を可能とする。
【図面の簡単な説明】
【図1】従来例のブロック図である。
【図2】本発明の実施例のブロック図である。
【図3】本発明の他の一実施例の動作を示す流れ図である。
【図4】本発明の一実施例のデータ出力数の説明図である。
【図5】本発明の他の実施例のブロック図である。
【符号の説明】
1 プリンタ装置 2 インターフェース制御装置
3 CPU 4 ROM
5 RAM 6 印字手段
7 データバッファ手段 8 ホストコンピュータ
9 データ計数手段 10 書き込み制御手段
11 割り込み制御手段 12 割り込み手段
13 バスインターフェース手段 14 システムバス
15 出力データ数制御手段 16 データ制御手段
17 シリアルパラレル変換手段
Claims (1)
- ホスト装置に接続されてデータ転送を行なうインターフェース制御装置において、ホスト装置から送信されるデータを格納するデータバッファ手段と、
CPUにデータ読み出しを要求する割り込み手段と、
最小単位のデータが前記データバッファ手段に格納されたとき割り込みを行なうよう前記割り込み手段を制御する割り込み制御手段と、
前記データバッファ手段に格納されたデータ数を計数するデータ計数手段と、前記データバッファ手段により計数された前記データ数に基づいて前記データバッファ手段から出力するデータ数を制御する出力データ数制御手段と
を備えることを特徴とするインターフェース制御装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP20848594A JP3585052B2 (ja) | 1994-09-01 | 1994-09-01 | インターフェース制御装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP20848594A JP3585052B2 (ja) | 1994-09-01 | 1994-09-01 | インターフェース制御装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0876971A JPH0876971A (ja) | 1996-03-22 |
JP3585052B2 true JP3585052B2 (ja) | 2004-11-04 |
Family
ID=16556948
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP20848594A Expired - Fee Related JP3585052B2 (ja) | 1994-09-01 | 1994-09-01 | インターフェース制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3585052B2 (ja) |
-
1994
- 1994-09-01 JP JP20848594A patent/JP3585052B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH0876971A (ja) | 1996-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5133062A (en) | RAM buffer controller for providing simulated first-in-first-out (FIFO) buffers in a random access memory | |
EP0241129B1 (en) | Addressing arrangement for a RAM buffer controller | |
JP2004171209A (ja) | 共有メモリデータ転送装置 | |
JP3055917B2 (ja) | データ転送制御装置 | |
EP0844566B1 (en) | Interface apparatus for adapting data width to system bus width | |
CA2289192C (en) | Communication dma device | |
JP3585052B2 (ja) | インターフェース制御装置 | |
JPS6339072A (ja) | デ−タ処理システム | |
JP2520905B2 (ja) | シリアル通信制御装置 | |
JP2008502980A (ja) | データを転送するためのバス・コントローラ | |
JP2594611B2 (ja) | Dma転送制御装置 | |
JP2000105736A (ja) | Pciバスのためのストリ―ミング・メモリ・コントロ―ラ | |
JP3266184B2 (ja) | 入出力制御方法とその装置 | |
JP3605987B2 (ja) | 画像処理装置 | |
JP2599184B2 (ja) | Dmacのリード転送制御装置 | |
JP4097377B2 (ja) | マイクロコンピュータ | |
JP3442099B2 (ja) | データ転送記憶装置 | |
JPH0713881A (ja) | 通信処理装置 | |
JP2004192043A (ja) | メモリ制御装置およびそれを備えた情報処理システム並びにメモリ制御方法 | |
JP2604051B2 (ja) | データ転送方法 | |
JP2000285087A (ja) | ノード間データ通信方法 | |
JPH0310354A (ja) | データ転送制御システム | |
JPH0525216B2 (ja) | ||
JPS63198143A (ja) | デ−タ転送制御装置 | |
JPH04109351A (ja) | Dmaコントローラ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040109 |
|
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: 20040716 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040729 |
|
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: 20070813 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080813 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090813 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100813 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |