JP2002215564A - 情報入出力装置 - Google Patents

情報入出力装置

Info

Publication number
JP2002215564A
JP2002215564A JP2001009349A JP2001009349A JP2002215564A JP 2002215564 A JP2002215564 A JP 2002215564A JP 2001009349 A JP2001009349 A JP 2001009349A JP 2001009349 A JP2001009349 A JP 2001009349A JP 2002215564 A JP2002215564 A JP 2002215564A
Authority
JP
Japan
Prior art keywords
packet
transfer
output device
information input
storage 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.)
Pending
Application number
JP2001009349A
Other languages
English (en)
Inventor
Hiromichi Morimoto
浩通 森本
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.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Priority to JP2001009349A priority Critical patent/JP2002215564A/ja
Publication of JP2002215564A publication Critical patent/JP2002215564A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 効率よくパケットの転送を行うことができる
情報入出力装置を提供する。 【解決手段】 情報入出力装置は、パケット入力側FI
FO2と、パケット出力側FIFO4と、パケット入力
側FIFO2の状態またはパケット出力側FIFO4の
状態に応じて、パケット入力側FIFO2またはパケッ
ト出力側FIFO4に記憶されたパケットを読み出し
て、パケットをパケット出力側FIFO4またはパケッ
ト入力側FIFO2に転送するマイコン3とを備え、マ
イコン3が転送したいパケットが転送元のFIFO2に
あり、転送先のFIFO4に空き容量がなかった場合で
も、マイコン3は転送の開始準備をすることができ、こ
れにより、マイコン3およびFIFOの使用効率を向上
させ、転送効率を向上させる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、例えば、外部イン
ターフェースと情報処理装置との間のパケットの入出力
を行う情報入出力装置に関するものである。
【0002】
【従来の技術】従来、外部インターフェースとしてのI
EEE1394規格のインターフェース(以下、139
4インターフェースという。)から所定の信号処理を行
う情報処理システム(以下、システムという。)へのパ
ケットの入出力が行われていた。システム側から139
4インターフェース上にパケットを出力する場合、シス
テム側から出力されるパケットのタイミングと、139
4インターフェース上に出力するパケットのタイミング
とが異なっている場合が考えられる。
【0003】また、逆に、1394インターフェース側
からシステム側へパケットを入力する場合、1394イ
ンターフェース側から入力されるパケットのタイミング
とシステム側へ入力するパケットのタイミングが異なっ
ている場合が考えられる。
【0004】このような場合を考慮して、システムと外
部インターフェースとの間にFIFO(First I
n First Out memory)を用いてタイ
ミングを制御するのが一般的であった。
【0005】
【発明が解決しようとする課題】このFIFOの制御で
は、システム側から1394インターフェース上へパケ
ットを出力する場合にはシステム側に設けられたFIF
Oへ入力されたパケットをDMA(Direct Me
mory Access)転送する際に、マイクロコン
ピュータが転送元のシステム側FIFOにパケットが到
来したことを認識し、そのパケット量に見合う容量が転
送先の1394インターフェース側に設けられたFIF
Oにあることを調べ、転送元のシステム側FIFOに対
して転送量を設定し、スタートフラグを立てることによ
りDMA転送が開始されていた。
【0006】これにより、転送先の1394インターフ
ェース側FIFOから1394インターフェース上に出
力したり、逆に1394インターフェース側のFIFO
へ入力されたパケットをDMA転送してシステム側のF
IFOへ入力し、システム側に出力していた。
【0007】上述したDMA転送では、マイクロコンピ
ュータが転送先FIFOの空き容量を調べた時点で、転
送したいパケット量に見合う空き容量がなかった場合に
は、転送先FIFOに空きができるのを待ち続け、確認
し続けなければならない。
【0008】このため、図3にソフトウエアの処理周期
T1、T2、T3で示すこの確認の周期が長ければ長い
ほどパケットの転送開始までに時間がかかり、転送元F
IFOにはパケットが残ったままとなり、その分転送元
FIFOに新しいパケットが入る領域が少なくなり、D
MA転送においてFIFOを有効利用することができ
ず、転送効率が低下するという不都合があった。
【0009】また、反対に、この確認周期を短くすれば
するほど、マイクロコンピュータは、その確認にかける
時間が多くなり、他の処理に割り当てる時間が少なくな
り、マイクロコンピュータの使用効率が低下するという
不都合があった。
【0010】そこで、本発明は、かかる点に鑑みてなさ
れたものであり、効率よくパケットの転送を行うことが
できる情報入出力装置を提供することを課題とする。
【0011】
【課題を解決するための手段】本発明の情報入出力装置
は、一方の側と他方の側との間のパケットの入出力を行
う情報入出力装置において、適用される。
【0012】また、本発明の情報入出力装置は、一方の
側に設けられ、一方の側から入力されるパケットまたは
他方の側から入力されるパケットを格納する第1の記憶
手段と、他方の側に設けられ、一方側から入力されたパ
ケットまたは他方の側から入力されるパケットを格納す
る第2の記憶手段と、第1の記憶手段の状態または第2
の記憶手段の状態に応じて、第1の記憶手段または第2
の記憶手段に記憶されたパケットを読み出して、パケッ
トを第2の記憶手段または第1の記憶手段に転送する制
御手段とを備えたものである。
【0013】従って本発明によれば、以下の作用をす
る。第1の記憶手段から第2の記憶手段へ情報を転送す
る場合の作用のみを説明する。
【0014】制御手段のソフトウエア処理は、ある周期
毎に実行する。1回の周期内では、以下の処理を順に1
度だけ実行する。
【0015】まず、前回の処理が終了した状態を判断し
て、前回の処理の終了状態の各状態2〜5へ移行する。
ただし、この処理が初めて呼ばれたときのみ状態3へ移
行し、状態5で終了したときは状態2へ移行する。この
終了判断の状態を状態1とする。
【0016】状態2で終了したとき、および状態4で終
了したときは、前回の処理で起動した転送が終了してい
るか否かを判断する。転送終了判断の状態を状態2とす
る。
【0017】前回の処理で起動した転送が終了している
ときは状態3へ進み、終了していないときは、他の処理
へ移行する。他の処理とは、制御手段が処理しなければ
ならないこの他の処理をいう。
【0018】第1の記憶手段にパケットが到来したか否
かを判断する。第1の記憶手段にパケットが到来したと
きは、状態4へ進み、到来していないときは、他の処理
へ移行する。パケット到来判断の状態を状態3とする。
【0019】第2の記憶手段にヘッダ格納分の空きがあ
るか否かを判断する。第2の記憶手段にヘッダ格納分の
空きがあるときは、状態5へ進み、空きがないないとき
は、他の処理へ移行する。ヘッダ格納分の空き判断の状
態を状態4とする。
【0020】制御手段でパケットにヘッダを付加する。
第1の記憶手段から第2の記憶手段へ、そのパケットの
データ量分の転送量を設定し、スタートフラグを立て
て、他の処理へ移行する。転送量を設定してスタートフ
ラグを立てる状態を状態5とする。
【0021】制御手段のソフトウエアの処理周期で、第
2の記憶手段にヘッダ格納分の空きがあれば、状態4に
示したパケットにヘッダを付加する処理と、状態5に示
した転送量設定およびスタートフラグ立上の処理を行う
状態5まで実行する。
【0022】制御手段が転送したいパケットが第1の記
憶手段にあり、第2の記憶手段に転送すべてきデータ量
分の空き容量がなかった場合でも、ヘッダ格納分の空き
があれば、制御手段は転送の開始を指示するスタートフ
ラグを立てる。
【0023】これにより、スタートフラグを立てた後
は、第2の記憶手段に転送すべきデータ量分の空き容量
ができたと同時にそのパケットの転送を開始することが
できるため、記憶手段の使用効率を向上させる。
【0024】また、制御手段は、第2の記憶手段に転送
すべきデータ量分の空きがなかった場合でも、ヘッダ格
納分の空きがあれば、転送のスタートフラグを立てるこ
とができ、スタートフラグを立てた後は、そのパケット
には関知しなくても良くなるため、その分制御手段は他
の仕事をすることができ、制御手段の負担が軽くなり、
制御手段の使用効率を向上させる。
【0025】従って、データ転送に用いる記憶手段の使
用効率を向上させることができると共に、制御手段の使
用効率を向上させることができるので、データ転送の効
率を向上させる。
【0026】このようにして、第1の記憶手段から第2
の記憶手段へデータを転送する際や、転送している最中
に、第1の記憶手段が空になった場合や、第2の記憶手
段が満杯になった場合に、転送を一時的に待ち、第1の
記憶手段にパケットが入ってきたり、第2の記憶手段に
空きができたりしたときに、自動的に転送を開始する。
【0027】
【発明の実施の形態】本実施の形態の情報入出力装置
は、1394インターフェース側FIFOとシステム側
FIFOの間のパケットの転送において、転送元FIF
Oが空の場合や、転送先のFIFOが満杯のときに、D
MA転送を待つモードを設けることにより、効率よくパ
ケットの転送を行うものである。
【0028】以下に、本実施の形態の情報入出力装置に
ついて説明する。図1は、本実施の形態の情報入出力装
置が適用されるシステムの構成を示すブロック図であ
る。図1に示すシステムは、図中右方向の矢印はデータ
伝送方向を示していて、システム側から入力されたパケ
ットをマイクロコンピュータ(マイコン)を用いて13
94インターフェース上に送信する場合を示している。
逆に、図示しない左方向は1394インターフェース側
から受信されたパケットをシステム側に供給する場合で
ある。ここでは、まず前者の情報伝送方向について説明
する。
【0029】図1において、システム側からシステムの
タイミングで入力されたパケットに、マイコンにより1
394ヘッダーを付加し、1394インターフェース上
に送信する場合を説明する。
【0030】本実施の形態の情報入出力装置は、システ
ム側1のIC(集積回路)20内に設けられ、システム
側1から入力されるパケット6を格納するパケット入力
側FIFO(DMA転送元)2と、1394インターフ
ェース側5に設けられ、後述するマイコン3により13
94ヘッダ8を付加されたパケット9を格納するパケッ
ト出力側FIFO(DMA転送元)4とを有して構成さ
れる。
【0031】また、本実施の形態の情報入出力装置は、
1394ヘッダ8を生成して、1394ヘッダ8をパケ
ット9に付加するように出力側FIFO4に書き込むと
共に、入力側FIFO2に記憶されたパケット6を出力
側FIFO4へパケット9として書き込むためにDMA
転送7を行う制御や、パケットの加工、パケットの一部
のDMA転送などの制御を行うマイコン3とを有して構
成される。ここで、マイコン3によるDMA転送7を行
う制御や、パケットの加工、パケットの一部のDMA転
送などの制御は、図5〜図7を用いて後述する。
【0032】また、本実施の形態の情報入出力装置のマ
イコン3は、DMA転送の終了を検出するDMA転送終
了検出部10と、入力側FIFO2に入っているパケッ
ト量を検出するパケット検出部11と、出力側FIFO
4に入っているパケット量をを検出するパケット検出部
12と、パケットに付加するヘッダを生成してパケット
に付加するヘッダ付加部13と、入力側FIFO2から
出力側FIFO4へDMA転送7を行う転送量を設定す
るDMA転送量設定部14と、DMA転送をスタートさ
せるスタートフラグを立てるスタートフラグ立上部15
とを有して構成される。
【0033】本実施の形態では、システム側1から到来
したパケット6に対して、マイコン3のヘッダ付加部1
3が1394ヘッダ8を付加して、入力側FIFO2か
ら出力側FIFO4へDMA転送7を行って、1394
ヘッダ8が付加されたパケット9を1394インターフ
ェース側5へ出力する。
【0034】この場合、マイコン3は、システム側1か
ら入力側FIFO2へパケット6が入ってくるタイミン
グと、出力側FIFO4から1394ヘッダ8が付加さ
れたパケット9が1394インターフェース側5へ出て
いくタイミングは関知しない。
【0035】このように構成された本実施の形態の情報
入出力装置は、以下のような動作をする。図2は、転送
制御の動作を示すフローチャートである。図2は、マイ
コン3のソフトウエア処理を示し、ある周期で呼ばれる
周期タスクを実行するものとする。1回の周期タスク内
では、以下の処理を順に1度だけ実行するものとする。
以下に述べる他のタスクとは、マイコンが処理しなけれ
ばならないこの他のタスクをいう。
【0036】図2において、ステップS1で、前回のタ
スクが終了した状態を判断して、前回のタスクの終了状
態の各状態b,状態c,状態d,状態eへ移行する。た
だし、このタスクが初めて呼ばれたときのみ状態cへ移
行し、状態eで終了したときは状態bへ移行する。ステ
ップS1の状態を状態aとする。
【0037】ステップS1において状態bで終了したと
き、および状態eで終了したときは、ステップS2へ進
み、前回のタスクで起動したDMA転送が終了している
か否かを判断する。ステップS2の状態を状態bとす
る。
【0038】ステップS2において前回のタスクで起動
したDMA転送が終了しているときは、ステップS3へ
進み、終了していないときは、ステップS7へ進んで他
のタスクへ移行する。
【0039】ステップS3で、システム側FIFOにパ
ケットが到来したか否かを判断する。ステップS3にお
いて、システム側FIFOにパケットが到来したとき
は、ステップS4へ進み、到来していないときは、ステ
ップS7へ進んで他のタスクへ移行する。ステップS3
の状態を状態cとする。
【0040】ステップS4で、1394インターフェー
ス側FIFOにヘッダ格納分の空きがあるか否かを判断
する。ステップS4において、1394インターフェー
ス側FIFOにヘッダ格納分の空きがあるときは、ステ
ップS5へ進み、空きがないないときは、ステップS7
へ進んで他のタスクへ移行する。ステップS4の状態を
状態dとする。
【0041】ステップS5で、マイコンでパケットにヘ
ッダを付加する。ステップS6で、システム側FIFO
から1394側FIFOへ、DMA転送したい量分のD
MA転送量を設定し、スタートフラグを立てて、ステッ
プS7へ進んで他のタスクへ移行する。ステップS6の
状態を状態eとする。
【0042】次に、図3を用いて、本実施の形態によ
り、FIFOの使用効率、マイコンの使用効率、パケッ
トの転送効率が向上していることを説明する。図3はD
MA転送効率の説明図である。
【0043】ここでは、説明を簡単にするために、マイ
コン3のソフトウエアの処理周期をT1、T2、T3と
した。以下、ソフトウエアの処理周期T1とT2、T2
とT3の間でシステム側から入力側FIFO2にパケッ
トが入ってきた場合について説明する。
【0044】まず、ソフトウエアの処理周期T1とT2
の間でシステム側から入力側FIFO32にパケットが
入ってきた場合について説明する。
【0045】図3において、従来の場合、ソフトウエア
の処理周期T2では、転送先のFIFO内のデータ量3
1には転送したいパケット分の空き容量33がないた
め、上述した図2に示す転送制御の動作を示すフローチ
ャートにおいて、ステップS4に示した1394側FI
FOにヘッダ分の空きがあるか否かの判断を行う状態d
までしか実行できない。
【0046】このため、従来の場合には、DMA転送が
実行されるのは、従来の場合のDMA転送開始ポイント
S12で示すようにソフトウエアの処理周期T3になっ
てしまう。そして、従来の場合のDMA転送開始ポイン
トS12から時間t4後に従来の場合のDMA転送終了
ポイントE2で転送が終了する。
【0047】このように、1394ヘッダ8をマイコン
3が生成して出力側FIFO4に書き込んでから、DM
A転送が終了するまでの時間は、T2からE2までのt
1となる。
【0048】同様に、処理周期T2とT3の間にシステ
ム側の入力側FIFO2に入ってきたパケットを139
4インターフェース側5の出力側FIFO4に転送を開
始できるのは、T3の後のT4からになってしまう。
【0049】しかし、上述した本実施の形態を用いる
と、ソフトウエアの処理周期T2で、上述した図2に示
す転送制御の動作を示すフローチャートにおいて、ステ
ップS4において、1394インターフェース側FIF
O4にヘッダ格納分の空きがあるときは、ステップS5
へ進み、ステップS5に示したパケットにヘッダを付加
する処理と、ステップS6に示したDMA転送量設定お
よびスタートフラグ立上の処理を行う状態eまで実行す
ることができる。
【0050】このとき、本実施の形態の場合のDMA転
送開始ポイントS11から時間t3後に本実施の形態の
場合のDMA転送終了ポイントE1で転送が終了する。
【0051】このように、1394ヘッダ8をマイコン
3が生成して出力側FIFO4に書き込んでから、DM
A転送が終了するまでの時間は、T2からE1までのt
2(<t1)となる。
【0052】このように、本実施の形態によれば、ソフ
トウエアの処理周期T2とT3の間に入力側FIFO2
に入ってきたパケットを出力側FIFO4に転送を始め
られるのは、最速で処理周期T3(<T4)からとな
る。
【0053】このように、本実施の形態により、マイコ
ンの使用効率およびFIFO使用効率の向上を図ること
により、転送効率を向上させることができる。
【0054】なお、図1においては、1つの出力用FI
FO4を設けた例を示しているが、これに限らず入力用
FIFO2および出力用FIFO4を共に複数設けるよ
うにしても良い。
【0055】本実施の形態により、マイコンが転送した
いパケットが転送元FIFOにあり、転送先FIFOに
空き容量がなかった場合でも、ヘッダ格納分の空きがあ
れば、マイコンはDMA転送の開始を指示するスタート
フラグを立てることができるようになった。
【0056】これにより、スタートフラグを立てた後
は、転送先FIFOに転送すべきデータ量分の空き容量
ができたと同時にそのパケットの転送を開始することが
できるため、FIFOの使用効率を向上させることがで
きる。
【0057】また、マイコンは、転送先FIFOに転送
すべきデータ量分の空きがなかった場合でも、ヘッダ格
納分の空きがあれば、DMA転送のスタートフラグを立
てることができ、スタートフラグを立てた後は、そのパ
ケットには関知しなくても良くなるため、その分マイコ
ンは他の仕事をすることができ、マイコンの負担が軽く
なり、マイコンの使用効率を向上させることができる。
【0058】従って、データ転送に用いるFIFOの使
用効率を向上させることができると共に、マイコンの使
用効率を向上させることができるので、データ転送の効
率を向上させることができる。
【0059】このようにして、本実施の形態によれば、
転送元FIFOから転送先FIFOへデータをDMA転
送する際や、DMA転送している最中に、転送元FIF
Oが空になった場合や、転送先FIFOが満杯になった
場合に、DMA転送を一時的に待ち、転送元FIFOに
パケットが入ってきたり、転送先FIFOに空きができ
たときに、自動的に転送を開始することができる。
【0060】以下に、上述した図1に示したマイコン3
によるDMA転送7を行う制御や、パケットの加工、パ
ケットの一部のDMA転送などの制御について図5〜図
7を用いて説明する。以下に示す情報入出力装置は、パ
ケットを格納するFIFOの領域とは別に、パケットの
区切り目情報を格納する領域を保つことにより、パケッ
トの大きさが変わっても、マイコンなどを用いてパケッ
トを加工して、区切り目情報に基づいてFIFOから1
パケットずつ取り出すものである。
【0061】以下に、パケット加工を行う情報入出力装
置について説明する。図5は、この情報入出力装置が適
用されるシステムの構成を示す図である。図5に示すシ
ステムは、図中右方向の矢印はシステム側から入力され
たパケットをマイコンで加工して1394インターフェ
ース上に送信する場合を示している。逆に、図中左方向
の矢印は1394インターフェース側から受信されたパ
ケットをマイコンで加工してシステム側に供給する場合
を示している。ここでは、まず前者について説明する。
【0062】図5において、システム側からシステムの
タイミングで入力されたパケット(データのみ)に、マ
イコンにより1394ヘッダーを付加し、1394イン
ターフェース上に送信する場合を説明する。
【0063】この情報入出力装置は、システム側に設け
られ、システム側から入力されるパケットを格納する入
力側FIFO61と、パケットの区切り目情報を格納す
るパケット区切り目情報格納用量域62とを有して構成
される。
【0064】また、この情報入出力装置は、1394イ
ンターフェース側に設けられ、後述するマイコンにより
加工された調整パケットを格納する出力側FIFO63
と、パケットの区切り目情報を格納するパケット区切り
目情報格納用量域64とを有して構成される。
【0065】パケット区切り目情報格納用量域64は、
出力側FIFO63内の対応するデータが、パケットの
先頭かパケットの途中か、パケットの最後かを示すパケ
ットの区切り情報を格納するための領域である。
【0066】また、この情報入出力装置は、1394イ
ンターフェース側に設けられ、後述するマイコンにより
加工された調整パケットを格納する出力側FIFO65
と、パケットの区切り目情報を格納するパケット区切り
目情報格納用量域66とを有して構成される。
【0067】パケット区切り目情報格納用量域64、6
6は、出力側FIFO63、65内の対応するデータ
が、パケットの先頭かパケットの途中か、パケットの最
後かを示すパケットの区切り情報を格納するための領域
である。
【0068】また、この情報入出力装置は、入力側FI
FO61に記憶されたパケットを読み出してパケットの
大きさを調整して調整パケットを生成して、調整パケッ
トを出力側FIFO63、65に書き込むと共に、パケ
ット区切り目情報格納用量域66に記憶されたパケット
の区切り目情報を読み出して調整パケット区切り目情報
を生成して、調整パケット区切り目情報をパケット区切
り目情報格納用量域64、66に書き込むマイコン67
とを有して構成される。
【0069】また、この情報入出力装置は、調整パケッ
トの区切り目情報に基づいて、出力側FIFO63、6
5から調整パケットを読み出して1394インターフェ
ース側に出力するパケット区切り情報読み出し回路6
8、69とを有して構成される。
【0070】このように構成され情報入出力装置は、以
下のような動作をする。入力側FIFO61はシステム
側から入力されるパケットを格納する。パケット区切り
目情報格納用量域62はパケットの区切り目情報を格納
する。
【0071】システム側からパケットが入力側FIFO
61に入ってきた時点で、パケットの先頭部分にはパケ
ットの先頭を示す印と、パケットの終端を示す印とが自
動的につけられて、この情報がパケット区切り目情報格
納用量域62に格納される。なお、パケットの途中には
印は付けない。
【0072】図7Aに、システム側から入力されて、入
力側FIFOに格納されたパケットの様子を示す。図7
Aにおいて、パケット区切り情報101として示す矢印
102、103、104、105、106、107がパ
ケット区切り目情報格納用量域62に格納されている各
パケット108、109、110、111、112の区
切りを示す印である。
【0073】図7Aにおいて、パケットの先頭を示す印
と終端を示す印は同一のものとして示しているが、これ
に限らずパケットの先頭を示す印と終端を示す印を区別
しても良い。このようにパケットの先頭、途中、終端の
各印の付け方には、種々の方法が考えられるが、パケッ
トの区切りが分かればどの様な方法でも良い。
【0074】出力側FIFO63は後述するマイコンに
より加工された調整パケットを格納する。パケット区切
り目情報格納用量域64はパケットの区切り目情報を格
納する。
【0075】また、出力側FIFO65は後述するマイ
コンにより加工された調整パケットを格納する。パケッ
ト区切り目情報格納用量域66はパケットの区切り目情
報を格納する。
【0076】また、マイコン67は、入力側FIFO6
1に記憶されたパケットを読み出してパケットの大きさ
を調整して調整パケットを生成して、調整パケットを出
力側FIFO63、65に書き込むと共に、パケット区
切り目情報格納用量域62に記憶されたパケットの区切
り目情報を読み出して調整パケット区切り目情報を生成
して、調整パケット区切り目情報をパケット区切り目情
報格納用量域64、66に書き込む。
【0077】また、図7Bに、マイコン67によりパケ
ットが加工されて調整パケット127、128、12
9、130として、出力側FIFO63、65に格納さ
れたパケットの様子を示す。図7Bにおいて、パケット
区切り情報121として示す矢印122、123、12
4、125、126がパケット区切り目情報格納用量域
64、66に格納されている各調整パケット127、1
28、129、130の区切りを示す印である。調整パ
ケットの内容については後述する。
【0078】このように入力側と出力側にそれぞれFI
FOを用意して、マイコン67によるデータ転送と、こ
の他にDMA転送を用いて、パケットを入力側FIFO
61から出力側FIFO63、65に転送する。
【0079】そして、パケット区切り情報読み出し回路
68、69が調整パケットの区切り目情報に基づいて、
出力側FIFO63、65から調整パケットを読み出し
て1394インターフェース側に出力する。
【0080】なお、図5においては、2つの出力用FI
FO63、65を設けた例を示しているが、これに限ら
ず入力用FIFO61および出力用FIFO63、65
を共に複数設けるようにしても良い。
【0081】次に、マイコン67が行うことのできる処
理について説明する。まず、第1に、マイコン67は、
任意の入力側FIFO61のデータの読み出しを行う。
ここでは、データの読み出し単位は1quad(4バイ
ト)毎としたが、これに限るものではない。
【0082】第2に、任意の入力側FIFO61の区切
り情報格納領域62を参照することにより、次に読み出
すデータがパケットの先頭か、途中か、終端かを認識す
る。
【0083】第3に、任意の入力側FIFO61からの
データの読み出し、または任意のデータの任意の出力側
FIFO63、65への書き込みを行い、また、そのデ
ータの任意の区切り情報のパケット区切り目情報格納用
量域64、66への書き込みを行う。
【0084】次に、DMA転送を用いて行うことのでき
る処理について説明する。なお、以下の処理は、図示し
ないDAMコントローラが行う処理である。
【0085】第1に、任意の入力側FIFO61のデー
タを、任意の転送量で任意の出力側FIFO63、65
に転送する。
【0086】また、転送時に指定できるオプション機能
として、以下の処理を組み合わせることができる。
【0087】第2に、DMA転送した一番はじめのデー
タに出力側FIFO63、65で先頭パケット情報を付
加する。
【0088】第3に、DMA転送した一番最後のデータ
に出力側FIFO63、65で終端パケット情報を付加
する。
【0089】第4に、入力側FIFO61のパケット区
切り情報をデータと共に出力側FIFO63、65にそ
のままコピーする。
【0090】第5に、入力側FIFO61の1パケット
よりも大きい転送量を設定し、パケットの終端が来た
ら、それ以降の任意のデータを設定した転送量になるま
で、任意のデータを挿入する。この処理により、可変長
のパケットも固定長とすることができる。
【0091】第6に、入力側FIFO61の1パケット
よりも大きい転送量を指定し、パケットの終端が来た
ら、DMA転送を停止する。
【0092】第7に、区切り情報格納領域62の情報を
参照することにより、次に読み出すデータがパケットの
先頭か、途中か、終端かを認識する。
【0093】上述したようなマイコン7によるデータ転
送とDMA転送とを組み合わせて実行することにより、
例えば図6に示すようにパケットを加工することができ
る。
【0094】図6は、パケットの加工例を示す図であ
る。図6Aにおいて、マイコンおよびDMAコントロー
ラに入力されたパケット80は、パケット区切り情報8
1で示すように矢印82、83で区切られていて、マイ
コン67で入力側FIFO61から読み出されたマイコ
ン読み出しデータ84と、DMA転送時に図示しないD
MAコントローラで入力側FIFO61から読み出され
たDMA読み出しデータ85とを有して構成されてい
る。
【0095】そこで、マイコン67は、出力側FIFO
63、65にパケットのヘッダーを書き込む。図6Bに
おいて、マイコンおよびDMAコントローラから出力さ
れる調整パケット98を示すパケット90は、パケット
区切り情報91で示すように矢印92、93で区切られ
ていて、マイコン67により付加されたマイコン付加デ
ータ94と、マイコン読み出しデータ84がマイコン6
7により置換されたマイコン置換データ95と、DMA
転送時に図示しないDMAコントローラによりDMA読
み出しデータ85が読み出されて転送されたDMA転送
データ96と、DMA転送時に図示しないDMAコント
ローラにより付加されたDMA転送任意付加データ97
とを有して構成されている。
【0096】すなわち、マイコン67は出力の際に、一
番先頭のデータにパケット先頭情報としてマイコン付加
データ94を付加する。これは、上述した第3のマイコ
ンの処理を用いている。
【0097】次に、入力側FIFO61の初めの例えば
4バイト(これに限らないが、ここでは例えば4バイト
とした。)をマイコン67で読み出し、ある値に変更
し、このマイコン置換データ95を出力側FIFO6
3、65に書き込む。これは、上述した第1および第3
のマイコンの処理を用いている。
【0098】そして、入力側FIFO61に残っている
残りのデータを図示しないDMAコントローラがDMA
転送する。その際、1パケットより大きい転送量を指定
してパケットが来たら、任意のデータをDMA転送デー
タ96として出力側FIFO63、65に書き込むタイ
ミングの動作モードで転送する。さらに、DMA転送の
最後のデータにパケット終端情報としてDMA転送任意
付加データ97を付加する。これは、上述した第3およ
び第5のDMA転送の処理を用いている。
【0099】このようにして入力側FIFO61の1パ
ケットに対して上述した動作を繰り返して、出力側FI
FO63、65にパケットを転送した例を図7Bに示
す。図7Aに示す入力側FIFO100において、3パ
ケットに1つの割合で比較的短いパケット109、11
2がシステム側から入ってきている。
【0100】これに対して、図7Bに示す出力側FIF
O120において、DMA転送後には比較的長いDMA
転送任意付加データ124dの挿入により、出力側FI
FO63、65では同じ大きさのパケットになってい
る。また、この短いパケット109、112のDMA転
送時には、マイコン置換データは設けないようにしてい
る。
【0101】なお、調整パケット127は、マイコン付
加データ122aと、マイコン置換データ122bと、
DMA転送データ122cと、DMA転送任意付加デー
タ122dとを有している。調整パケット128は、マ
イコン付加データ123aと、マイコン置換データ12
3bと、DMA転送データ123cと、DMA転送任意
付加データ123dとを有している。調整パケット12
9は、マイコン付加データ124aと、DMA転送デー
タ124cと、DMA転送任意付加データ124dとを
有している。調整パケット130は、マイコン付加デー
タ125aと、マイコン置換データ125bと、DMA
転送データ125cと、DMA転送任意付加データ12
5dとを有している。
【0102】例えば、上述したように、マイコン67に
よるデータ転送と図示しないDMAコントローラによる
DMA転送とを組み合わせてパケットを加工することが
可能である。これらは、一例であり、上述した処理を組
み合わせて、様々にパケットを加工することが可能であ
る。
【0103】また、パケットが加工されてパケットの大
きさが変化しても、出力側FIFO63、65のパケッ
ト区切り情報格納用領域64、66にパケット区切り情
報が格納されているので、図5に示したパケット区切り
情報読み出し回路68、69を用いて、この区切り情報
を基にして、1パケット毎に1394インターフェース
のタイミングで出力することが可能となる。
【0104】次に、図中左方向の矢印で示す1394イ
ンターフェース側から受信されたパケットをマイコンで
加工してシステム側に供給する場合を説明する。
【0105】この場合、図5に示した1394インター
フェース側のパケット区切り情報読み出し回路68、6
9をこれに替えて、システム側の点線で示したパケット
区切り情報読み出し回路70を用いて逆方向のパケット
の流れに対する処理を行う。
【0106】ここで、例えばスイッチ等によりパケット
区切り情報読み出し回路68、69を介しないように切
り替えてパケットが通過して、スイッチ等によりパケッ
ト区切り情報読み出し回路70を介してパケットを処理
するように交互に切り替える。
【0107】これにより、1394インターフェースか
ら入力されたパケットを出力側FIFO63、65に格
納し、出力側FIFO63、65のパケット区切り情報
格納用領域64、66にパケット区切り情報を格納し、
マイコン67およびDMA転送を用いてパケットを加工
して調整パケットを生成して、調整パケットを入力側F
IFO61に格納し、入力側FIFO61のパケット区
切り情報格納用領域62にパケット区切り情報を格納
し、パケット区切り情報読み出し回路70を用いて、こ
の区切り情報を基にして、1パケット毎にシステムのタ
イミングで出力することが可能となる。
【0108】なお、上述した図1に示した本実施の形態
の情報入出力装置では、マイコン3でヘッダ8をパケッ
ト9に付加しているが、例えばパケット出力側FIFO
4と1394インターフェース側5との間に、マイコン
やICからの設定スイッチにより動作または非動作を切
り替えることができるようにして、パケット送信時にヘ
ッダ付加をして、パケット受信時にヘッダ削除をするブ
ロックを設け、ヘッダの付加または削除をハードウエア
からの切替信号により自動的に行うことにようにしても
よい。
【0109】図4は、他の情報入出力装置の構成を示す
ブロック図である。図4に示す情報入出力装置が、図1
に示す情報入出力装置と異なる点は、マイコン43が直
接ヘッダ付加を行わずに、パケット出力側FIFO44
と1394インターフェース側45との間にヘッダ付加
/削除ブロック56を設け、マイコン43のヘッダ付加
/削除指示部53からの切替信号Cにより動作または非
動作を切り替えることができるようにした点である。他
の構成は、図1と同様であるので、その説明を省略す
る。また、これに限らず、システム側41とパケット入
力側FIFO42との間にヘッダ付加/削除ブロック5
6を設けて、上述と同様に制御するようにしてもよい。
【0110】このように構成された情報入出力装置にお
いて、パケット送信時にマイコン43のヘッダ付加/削
除指示部53からの切替信号Cによりヘッダ付加/削除
ブロック56でパケットにヘッダ付加をして、パケット
受信時にマイコン43のヘッダ付加/削除指示部53か
らの切替信号Cによりヘッダ付加/削除ブロック56で
パケットからヘッダ削除をする。
【0111】これにより、ヘッダの付加または削除をハ
ードウエアからの切替信号により自動的に行うことによ
り、マイコン43はヘッダの付加または削除の動作に関
して何等関知しなくても良くなり、さらに転送効率を向
上させることができる。
【0112】上述した図1に示した本実施の形態の情報
入出力装置では、システム側1から入力側FIFO2へ
入ってきたパケット6にマイコン3が1394ヘッダ8
を付加し、1394インターフェース側5へ出力する場
合のみを説明したが、これに限られるものではなく、後
者の情報伝送方向に示すように、例えば、逆に、139
4インターフェース側5から入ってきたパケットに付加
されている1394ヘッダをマイコン3により除去し
て、出力側FIFO4から入力側FIFO2へパケット
をDMA転送して、システム側1へ送る場合に同様にし
て適用しても良く、また、入力側FIFO2と出力側F
IFO4との間の1対1のみではなく、複数対複数の間
の転送にも適用することができる。
【0113】
【発明の効果】この発明の情報入出力装置は、一方の側
と他方の側との間のパケットの入出力を行う情報入出力
装置において、一方の側に設けられ、一方の側から入力
されるパケットまたは他方の側から入力されるパケット
を格納する第1の記憶手段と、他方の側に設けられ、一
方側から入力されたパケットまたは他方の側から入力さ
れるパケットを格納する第2の記憶手段と、第1の記憶
手段の状態または第2の記憶手段の状態に応じて、第1
の記憶手段または第2の記憶手段に記憶されたパケット
を読み出して、パケットを第2の記憶手段または第1の
記憶手段に転送する制御手段とを備えたので、制御手段
が転送したいパケットが転送元の記憶手段にあり、転送
先の記憶手段に空き容量がなかった場合でも、制御手段
は転送の開始指示をすることができ、これにより、転送
の開始指示の後は、転送先の記憶手段に空き容量ができ
たと同時にそのパケットの転送を開始することができる
ため、記憶手段の使用効率を向上させることができ、ま
た、制御手段は、転送の開始指示の後は、そのパケット
には関知しなくても良くなるため、その分制御手段は他
の仕事をすることができ、制御手段の負担が軽くなり、
制御手段の使用効率を向上させることができ、従って、
データ転送に用いる記憶手段の使用効率を向上させるこ
とができると共に、制御手段の使用効率を向上させるこ
とができるので、データ転送の効率を向上させることが
できるという効果を奏する。
【0114】また、この発明の情報入出力装置は、上述
において、第1の記憶手段または第2の記憶手段は同一
の集積回路内に設け、制御手段は、集積回路の内部また
は外部に設けられるので、パケットの転送とヘッダの付
加の処理を独立して行うことにより、転送効率を向上さ
せることができるという効果を奏する。
【0115】また、この発明の情報入出力装置は、上述
において、制御手段は、転送元の第1の記憶手段または
第2の記憶手段から転送先の第2の記憶手段または第1
の記憶手段への転送の終了を検出する転送終了検出部を
制御するので、転送終了のときは次の転送の処理へ進
み、転送終了でないときは他の処理へ移行することがで
きるという効果を奏する。
【0116】また、この発明の情報入出力装置は、上述
において、制御手段は、転送元の第1の記憶手段または
第2の記憶手段において、転送すべきパケットを検出す
るパケット検出部を制御するので、転送すべきパケット
を検出したときは次の転送の処理へ進み、転送すべきパ
ケットを検出しないときは他の処理へ移行することがで
きるという効果を奏する。
【0117】また、この発明の情報入出力装置は、上述
において、制御手段は、転送先の第2の記憶手段または
第1の記憶手段において、少なくともヘッダ情報分の空
き領域を検出する空き検出部を制御するので、少なくと
もヘッダ情報分の空き領域を検出したときは次の転送の
処理へ進み、空き領域を検出しないときは他の処理へ移
行することができるという効果を奏する。
【0118】また、この発明の情報入出力装置は、上述
において、制御手段は、少なくともヘッダ情報分の空き
領域を検出したときは転送先の第2の記憶手段または第
1の記憶手段に対して、転送すべきパケットに対してヘ
ッダ情報を付加するヘッダ付加部を制御するので、空き
領域を検出したときは転送すべきパケットに対してヘッ
ダ情報を付加し、空き領域を検出しないときは他の処理
へ移行することができるという効果を奏する。
【0119】また、この発明の情報入出力装置は、上述
において、第1の記憶手段および第2の記憶手段の外部
にパケットに対してヘッダ情報を付加または削除するヘ
ッダ付加/削除手段を設けたので、ヘッダの付加または
削除をマイコンからの切替信号により自動的に行うこと
により、制御手段はヘッダの付加または削除の動作に関
して何等関知しなくても良くなり、さらに転送効率を向
上させることができるという効果を奏する。
【0120】また、この発明の情報入出力装置は、上述
において、制御手段は、転送元の第1の記憶手段または
第2の記憶手段から転送先の第2の記憶手段または第1
の記憶手段への転送すべき情報量を設定する転送量設定
部を制御するので、制御手段が転送したいパケットが転
送元の記憶手段にあり、転送先の記憶手段に空き容量が
なかった場合でも、制御手段は転送すべき情報量を設定
して転送開始指示をすることができ、これにより、転送
量を設定した後は、転送先の記憶手段に空き容量ができ
たと同時にそのパケットの転送を開始することができる
という効果を奏する。
【0121】また、この発明の情報入出力装置は、上述
において、制御手段は、転送元の第1の記憶手段または
第2の記憶手段から転送先の第2の記憶手段または第1
の記憶手段への転送開始を指示するスタートフラグ立上
部を制御するので、制御手段が転送したいパケットが転
送元の記憶手段にあり、転送先の記憶手段に空き容量が
なかった場合でも、制御手段は転送の開始を指示するス
タートフラグを立てることができ、これにより、スター
トフラグを立てた後は、転送先の記憶手段に空き容量が
できたと同時にそのパケットの転送を開始することがで
きるという効果を奏する。
【0122】また、この発明の情報入出力装置は、上述
において、一方の側は情報処理装置側または外部インタ
ーフェース側であり、他方の側は外部インターフェース
側または情報処理装置側であるので、情報処理装置側か
ら入力されたパケットを制御手段を用いて外部インター
フェース上に送信することができ、または、外部インタ
ーフェース側から入力されたパケットを制御手段を用い
て情報処理装置側に入力することができるという効果を
奏する。
【図面の簡単な説明】
【図1】本実施の形態の情報入出力装置の適用されるシ
ステムの構成を示すブロック図である。
【図2】転送制御の動作を示すフローチャートである。
【図3】DMA転送効率の説明図である。
【図4】本実施の形態の他の情報入出力装置の適用され
るシステムの構成を示すブロック図である。
【図5】パケット加工を行うシステムの構成例を示すブ
ロック図である。
【図6】パケット加工例を示す図であり、図6Aは入力
されたパケットの例、図6Bは出力されるパケットの例
である。
【図7】FIFO内のイメージを示す図であり、図7A
は入力側FIFOの例、図7Bは出力側FIFOの例で
ある。
【符号の説明】
1……システム側、2……パケット入力側FIFO、3
……マイコン(マイクロコンピュータ)、4……パケッ
ト出力側FIFO、5……1394インターフェース
側、6……パケット、7……DMA転送、8……139
4ヘッダ、9……パケット、10……DMA転送終了検
出部、11……パケット検出部、12……パケット検出
部、13……ヘッダ付加部、14……DMA転送量設定
部、15……スタートフラグ立上部、20……IC、3
1……今DMA転送したパケットを考えない場合の転送
先のFIFO内のデータ量、32……満杯、33……転
送したいパケット分の空き容量、34……空、40……
IC、41……システム側、42……パケット入力側F
IFO、43……マイコン(マイクロコンピュータ)、
44……パケット出力側FIFO、45……1394イ
ンターフェース側、46……パケット、47……DMA
転送、48……1394ヘッダ、49……パケット、5
0……DMA転送終了検出部、51……パケット検出
部、52……パケット検出部、53……ヘッダ付加/削
除指示部、54……DMA転送量設定部、55……スタ
ートフラグ立上部、56……ヘッダ付加/削除ブロック

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】 一方の側と他方の側との間のパケットの
    入出力を行う情報入出力装置において、 上記一方の側に設けられ、上記一方の側から入力される
    パケットまたは上記他方の側から入力されるパケットを
    格納する第1の記憶手段と、 上記他方の側に設けられ、上記一方側から入力されたパ
    ケットまたは上記他方の側から入力されるパケットを格
    納する第2の記憶手段と、 上記第1の記憶手段の状態または上記第2の記憶手段の
    状態に応じて、上記第1の記憶手段または上記第2の記
    憶手段に記憶された上記パケットを読み出して、上記パ
    ケットを上記第2の記憶手段または上記第1の記憶手段
    に転送する制御手段と、 を備えたことを特徴とする情報入出力装置。
  2. 【請求項2】 請求項1記載の情報入出力装置におい
    て、 上記第1の記憶手段または上記第2の記憶手段は同一の
    集積回路内に設け、上記制御手段は、上記集積回路の内
    部または外部に設けられることを特徴とする情報入出力
    装置。
  3. 【請求項3】 請求項1記載の情報入出力装置におい
    て、 上記制御手段は、転送元の上記第1の記憶手段または上
    記第2の記憶手段から転送先の上記第2の記憶手段また
    は上記第1の記憶手段への転送の終了を検出する転送終
    了検出部を制御することを特徴とする情報入出力装置。
  4. 【請求項4】 請求項1記載の情報入出力装置におい
    て、 上記制御手段は、転送元の上記第1の記憶手段または上
    記第2の記憶手段において、転送すべきパケットを検出
    するパケット検出部を制御することを特徴とする情報入
    出力装置。
  5. 【請求項5】 請求項1記載の情報入出力装置におい
    て、 上記制御手段は、転送先の上記第2の記憶手段または上
    記第1の記憶手段において、少なくともヘッダ情報分の
    空き領域を検出する空き検出部を制御することを特徴と
    する情報入出力装置。
  6. 【請求項6】 請求項5記載の情報入出力装置におい
    て、 上記制御手段は、少なくともヘッダ情報分の空き領域を
    検出したとき転送先の上記第2の記憶手段または上記第
    1の記憶手段に対して、転送すべきパケットに対してヘ
    ッダ情報を付加するヘッダ付加部を制御することを特徴
    とする情報入出力装置。
  7. 【請求項7】 請求項5記載の情報入出力装置におい
    て、 上記第1の記憶手段および第2の記憶手段の外部にパケ
    ットに対してヘッダ情報を付加または削除するヘッダ付
    加/削除手段を設けることを特徴とする情報入出力装
    置。
  8. 【請求項8】 請求項1記載の情報入出力装置におい
    て、 上記制御手段は、転送元の上記第1の記憶手段または上
    記第2の記憶手段から転送先の上記第2の記憶手段また
    は上記第1の記憶手段への転送すべき情報量を設定する
    転送量設定部を制御することを特徴とする情報入出力装
    置。
  9. 【請求項9】 請求項1記載の情報入出力装置におい
    て、 上記制御手段は、転送元の上記第1の記憶手段または上
    記第2の記憶手段から転送先の上記第2の記憶手段また
    は上記第1の記憶手段への転送開始を指示するスタート
    フラグ立上部を制御することを特徴とする情報入出力装
    置。
  10. 【請求項10】 請求項1記載の情報入出力装置におい
    て、 上記一方の側は情報処理装置側または外部インターフェ
    ース側であり、上記他方の側は外部インターフェース側
    または情報処理装置側であることを特徴とする情報入出
    力装置。
JP2001009349A 2001-01-17 2001-01-17 情報入出力装置 Pending JP2002215564A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001009349A JP2002215564A (ja) 2001-01-17 2001-01-17 情報入出力装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001009349A JP2002215564A (ja) 2001-01-17 2001-01-17 情報入出力装置

Publications (1)

Publication Number Publication Date
JP2002215564A true JP2002215564A (ja) 2002-08-02

Family

ID=18876848

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001009349A Pending JP2002215564A (ja) 2001-01-17 2001-01-17 情報入出力装置

Country Status (1)

Country Link
JP (1) JP2002215564A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7376626B2 (en) 2002-09-11 2008-05-20 Sony Corporation Information recording medium, information processing apparatus, information processing method, and computer program

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7376626B2 (en) 2002-09-11 2008-05-20 Sony Corporation Information recording medium, information processing apparatus, information processing method, and computer program

Similar Documents

Publication Publication Date Title
US6947442B1 (en) Data transfer control device and electronic equipment
JPH01277928A (ja) 印刷装置
KR100348545B1 (ko) 통신 dma 장치
JP2002215564A (ja) 情報入出力装置
JP4779010B2 (ja) バッファリング装置およびバッファリング方法
JP2004206487A (ja) Fifoメモリ回路
JP4479064B2 (ja) 情報入出力装置
WO2007096983A1 (ja) データ入出力制御装置
JP2018106583A (ja) 半導体装置
US20050060475A1 (en) Data transfer apparatus and data transfer method
JPH10116244A (ja) データ転送方法及びデータ転送装置
JPS59108134A (ja) 入出力制御方式
JP5387155B2 (ja) Dma転送制御装置およびdma転送制御方法
JPH11340876A (ja) シリアル通信装置およびそれを備えた通信システム
JP2980163B2 (ja) データ転送方式
JP3367949B2 (ja) 画像データ処理装置
JPH09288639A (ja) 情報処理装置
JP2012094081A (ja) バス調停回路及びバス調停方法
JP2001142841A (ja) Dma転送制御方式
JPS6019023B2 (ja) デ−タ処理装置
JPH08272735A (ja) 情報処理装置
JPH021673A (ja) 通信制御方式
JPH05257900A (ja) 並列計算機システムにおける放送型通信の制御方式
JP2000040071A (ja) 多重化バスの順序保証システム
JPH02307149A (ja) 直接メモリアクセス制御方式