JPH07248987A - データ転送制御方法 - Google Patents

データ転送制御方法

Info

Publication number
JPH07248987A
JPH07248987A JP6039500A JP3950094A JPH07248987A JP H07248987 A JPH07248987 A JP H07248987A JP 6039500 A JP6039500 A JP 6039500A JP 3950094 A JP3950094 A JP 3950094A JP H07248987 A JPH07248987 A JP H07248987A
Authority
JP
Japan
Prior art keywords
data
transfer
read
byte
invalid
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.)
Withdrawn
Application number
JP6039500A
Other languages
English (en)
Inventor
Yuji Hanaoka
祐司 花岡
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP6039500A priority Critical patent/JPH07248987A/ja
Publication of JPH07248987A publication Critical patent/JPH07248987A/ja
Withdrawn legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】下位装置18から一度に送られるデータの有効性
がデータ転送後に判明するWIDE SCSIなどのイ
ンタフェースにおけるデータ転送制御方法に関し,奇数
バイト転送等により無効データが送られてきても中間装
置10によりメモリのデータ破壊を防止できるようにする
ことを目的とする。 【構成】下位装置18からのデータ転送後,データの有効
性が判明するまで無効データを含む可能性のある最低限
のデータを中間装置10のデータバッファ12に残してお
き,データ転送後の下位装置18からのメッセージによっ
て無効データの有無を判断し,無効データがある場合に
はデータ転送を終了し,無効データを上位装置16へ送ら
ないで中間装置10内で棄却する。無効データがない場合
には中間装置10内に残しておいたデータを上位装置16へ
送り,データ転送を終了する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は,例えばWIDE SC
SIインタフェース等において奇数バイト転送が起きて
もメモリのデータ破壊を防止できるようにしたデータ転
送制御方法に関する。
【0002】
【従来の技術】小型コンピュータの周辺機器へのアクセ
ス方法を規格化したものとして,SCSI(Small
Computer System Interfac
e)が広く用いられている。このデータバス幅は1バイ
トであるが,近年のコンピュータの高機能化,高性能化
からデータバス幅が2バイトであるWIDE SCSI
という規格も提案されている。
【0003】WIDE SCSIバスを使用するシステ
ムで,I/Oデバイス側からホストコンピュータへの転
送(リード動作)を行なった場合に,SCSIインタフ
ェースでは奇数バイト転送が起こる場合がある。このと
き,Data Inフェーズにおいて2バイトのバス幅
の関係上,最後のデータと一緒に無効なデータも送られ
る。しかし,それを受け取る側ではそのときには無効デ
ータが一緒に転送されていることは分からず,その後に
Messageフェーズになった時,初めて最後のデー
タと一緒に無効なデータが送られてきたことがIgno
reメッセージで分かる。
【0004】
【発明が解決しようとする課題】従来,WIDE SC
SI規格のような下位装置から一度に送られるデータ
(バス幅依存)の有効性がデータ転送後に判明するイン
タフェースでは,下位装置から上位装置にデータ転送を
行う場合に,最後に送られてきた無効データにより,メ
モリ等の上位装置でデータ破壊を起こす場合があった。
【0005】本発明は上記問題点の解決を図り,中間装
置において下位装置からの有効データだけを上位装置へ
転送することにより,メモリ等の上位装置におけるデー
タ破壊の防止を可能にすることを目的とする。
【0006】
【課題を解決するための手段】図1は本発明の原理を説
明するための図である。図1において,10はチャネル
装置等の中間装置,11は下位装置と中間装置のインタ
フェースの制御を行うSCSIバス制御部,12はデー
タバッファ(以下,DBSという),13は中間装置内
のバス制御を行うDBS制御部,14は上位装置と中間
装置との間のバスの制御を行う上位インタフェース制御
部,15は中間装置内のDMAバス,16はメモリ等の
上位装置,17は上位インタフェース,18は入出力装
置(I/O装置)等の下位装置,19は2バイト幅のイ
ンタフェースであるWIDE SCSIバスを表す。
【0007】WIDE SCSIバス19のインタフェ
ースは,下位装置18から送られる2バイトのバス幅に
依存するデータの有効性がData Inフェーズでは
分からず,その後のMessageフェーズに判明す
る。本発明はこのようなWIDE SCSIにおける奇
数バイト転送で,最後のデータと一緒に無効なデータが
送られてきたときに,中間装置10により有効データだ
けを上位インタフェース17を介して上位装置16へ転
送するものである。
【0008】以下,WIDE SCSIの例について説
明するが,本発明はこれに限らず,データの有効性がデ
ータ転送後に判明するインタフェースに対して同様に適
用することができる。
【0009】WIDE SCSIバス19のバス幅は2
バイトであり,奇数バイトの転送では,最後のデータと
一緒に1バイトの無効データが送られてくる。SCSI
バス制御部11は,WIDE SCSIバス19を介し
て下位装置18から送られてきたデータを,無効データ
を含めてDBS12に格納する。
【0010】請求項1記載の発明では,無効データを含
めDBS12に格納されたデータの格納量kに対し,デ
ータの有効性が判定されるまでは(k−n+1)をDB
S12の有効格納量とし,有効性が判定された以降は無
効データの有無に応じた補正値により(k−補正値)を
DBS12の有効格納量として切り替え,この有効格納
量の値がDBS12の読み出し単位のm以上になったと
きに,DBS12からデータを読み出して,上位インタ
フェース17を介して上位装置16へ転送する。
【0011】また,請求項2記載の発明では,無効デー
タを含めDBS12に格納されたデータの格納量が,
(m+n−1)以上になったときに,DBS12からデ
ータを読み出して上位装置16に転送する。なお,mは
データバッファの読み出し単位,すなわちDMAバス1
5のバス幅である。
【0012】請求項3記載の発明では,無効データを含
めDBS12に格納されたデータの格納量kが,DBS
12の読み出し単位のm,すなわちDMAバス15のバ
ス幅以上になったときに,DBS12からデータを読み
出す回路を持ち,最初の読み出しデータに対しては1バ
イトのみ上位装置16に転送し,残り(m−1)バイト
は以降のDBS12からの読み出しまでレジスタに保持
し,2回目以降のデータ読み出しの際には前記レジスタ
に保持している未送出バイト(m−1)をシフトし,読
み出したデータの1バイトを連結して上位装置16に転
送するとともに,前記レジスタに残りの新しい未送出バ
イト(m−1)を保持し,以降は同様な動作で上位装置
16へのデータ転送を繰り返す。
【0013】
【作用】従来技術の問題点は,Messageフェーズ
になる前に下位装置18から転送されてきたデータに無
効データがあるかないかを判断できないことである。判
断できないまま,上位装置16へデータ転送をしてしま
うために,上位装置16でデータ破壊を起こしてしまう
ことがある。
【0014】そこで本発明では,Messageフェー
ズになるまで最低限のデータを中間装置10のDBS1
2に残しておき,Messageフェーズになってから
無効データの有無を判断し,無効データがある場合には
データ転送を終了し,無効データを上位装置16へ送ら
ないで中間装置10内で棄却することを行う。また,無
効データがない場合には中間装置10内に残しておいた
データを上位装置16へ送り,データ転送を終了させ
る。
【0015】以上のような制御のために,特に請求項1
記載の発明では,DBS12に格納されたデータのう
ち,無効データを含む可能性のある量を引いた分を転送
可能なデータ量として上位装置16へ転送する制御を行
う。
【0016】また,請求項2記載の発明では,DBS1
2に格納されたデータ量が,DBS12からの読み出し
単位であるDMAバス15のバス幅と,無効データを含
む可能性のある量の和以上になったときに,上位装置1
6へ転送する制御を行う。
【0017】また,請求項3記載の発明では,DBS1
2から読み出したデータのうち,有効データであること
が保証される分だけを順次シフトしながら上位装置16
へ転送する制御を行う。
【0018】
【実施例】
〔第1の実施例〕図2は第1の実施例のブロック図,図
3は第1の実施例のファームウェア制御フローチャー
ト,図4は第1の実施例の動作タイムチャートを示す。
【0019】図2において図1と同符号のものは図1に
示すものに対応し,21はDBS12のライトアドレス
カウンタ(DBSWA),22はDBS12のリードア
ドレスカウンタ(DBSRA),23はWIDE SC
SIバス19のバス幅n(n=2)から1を減算する減
算回路,24はDBS12のライトアドレスWAから
(n−1)した値がセットされるレジスタ,25は最終
転送LASTの報告を指示するビット,27はDBS1
2の残りバイトカウントRBCを計算する減算回路,2
8はLAST送出判定回路であって,上位インタフェー
ス制御部14に対して最終転送LASTを報告するも
の,29はバイトマーク(BYTE MARK)作成回
路であって,1回の転送の有効バイト数を報告するも
の,30はEM/FL制御回路であって,DBS12の
状態が空(EMPTY)か満(FULL)かを制御して
いる回路,31は転送許可判定回路であって,上位イン
タフェース制御部14に対して転送許可フラグ(DTO
K)を立てるか立てないかを制御する回路,32は最終
データが無効か有効かを切替え条件としているマルチプ
レクサ,33はデータが最後いくつ無効であるかをセッ
トする補正値レジスタ,34はライトアドレスWAから
無効データ分の補正値を減算する減算回路,35はライ
トアドレスWAをインクリメントする加算回路,36は
リードアドレスRAをインクリメントする加算回路,3
7はDBS12へのライト動作またはリード動作によっ
てライトアドレスWAとリードアドレスRAとを切り替
えるマルチプレクサを表す。
【0020】本実施例において,DMAバス15のバス
幅mは4バイトであるとする。DBS12へのデータの
書き込み,およびDBS12からのデータの読み出し
は,それぞれDBSWA21のアドレスと,DBSRA
22のアドレスとによって行われる。動作は以下のとお
りである。
【0021】(1) 下位装置18からのデータ転送によ
り,DBSWA21の更新を行う。減算回路23を使用
して,DBSWA21の出力値であるライトアドレスW
Aから1(この例ではn−1=2−1=1)を引く減算
を行い,結果の(WA−1)をレジスタ24にセットす
る。
【0022】(2) また,上位装置16への転送は,DB
SRA22のリードアドレスによってDBS12からデ
ータを読み出すことにより行い,DBSRA22の更新
を行う。この際に,DMAバス15のバス幅m(m=4
〔バイト〕)以上,DBS12の残りバイトカウントR
BCがあるかどうかをチェックしながら転送を行う。マ
ルチプレクサ32は,最終転送LASTの報告前には,
図示の×側を選択するようになっており,残りバイトカ
ウントRBCは,レジスタ24の出力とDBSRA22
の出力の減算の結果である。これは減算回路27によっ
て計算される。
【0023】(3) 残りバイトカウントRBCがmバイト
以下になったならば,上位装置16への転送を止め,フ
ァームウェアから最終転送LASTの報告を指示するビ
ット25がセットされるのを待つ。ファームウェアは,
データの有効性を判定したならば補正値レジスタ33に
補正値(0または1)をセットしてから,ビット25に
最終転送LASTの指示をセットする。この指示がセッ
トされたならば,下位装置18からの転送は終了であ
る。
【0024】(4) ビット25に最終転送LASTの指示
がセットされたタイミングで,マルチプレクサ32を減
算回路34の出力側(図示の○側)に倒す。そして,そ
の時点のライトアドレスWAから補正値を引いた結果を
もとに,有効バイト数を示すバイトマーク(以下,BM
と記す)を,バイトマーク作成回路29によって作成
し,上位インタフェース制御部14を介してデータと一
緒に上位装置16へ転送する。ここで,最後のデータが
有効であれば,補正値は0であるので,そのまま減算回
路27の演算結果からBMを作成し,データと一緒に上
位装置16へ転送する。さらに,下位装置18からの転
送は終了しているので,LAST送出判定回路28によ
って作成した最終転送(LAST)を示す信号も一緒に
出力する。なお,バイトマーク作成回路29が残りバイ
トカウントRBCから作成するBMには,00,01,
10,11の4パターンがあり,00は4バイト,01
は1バイト,10は2バイトと,11は3バイト有効で
あることを示す。
【0025】上記転送制御において,さらにEM/FL
制御回路30によりDBS12の空/満を判定し,その
結果に応じて転送許可判定回路31により転送可否を上
位インタフェース制御部14に通知する制御も行う。
【0026】この第1の実施例では,ファームウェアは
図3に示すような制御を行う。まず,ステップS10に
おいて,リード動作の開始によりデータ転送を起動す
る。ステップS11では,下位装置(I/O装置)18
からメッセージを受け取る。メッセージを受け取ったな
らば,ステップS12において最後のデータが無効かど
うかを判定し,無効であればステップS13により補正
値レジスタ33に1をセットする。有効であればステッ
プS14により補正値レジスタ33に0をセットする。
最後に,ステップS15において最終転送の報告を指示
するビット25にLASTをセットする。
【0027】この動作タイムチャートは,例えば図4に
示すようになる。DBSWA21の値は,下位装置18
からのデータ転送によって4バイトずつインクリメント
される。なお,WIDE SCSIバス19のバス幅は
2バイトであるが,ここではデータをSCSIバス制御
部11において保持することにより4バイト単位でDB
S12への書き込みが行われる。最初,補正値は0であ
る。残りバイトカウントRBCは,ライトアドレスWA
−1からリードアドレスRAを引いた値であり,これが
4バイト以上になると,転送許可フラグ(flag)が
ONになり,DBSRA22からのリードアドレスRA
によって,DBS12から上位インタフェース制御部1
4へデータが読み出される。これに伴い,残りバイトカ
ウントRBCは減少する。バイトマーク(BM)は“0
0”が4バイト有効,“11”が3バイト有効であるこ
とを示す。下位装置18からの転送が奇数バイト転送の
場合には,データ転送後のメッセージによりファームウ
ェアによって補正値が1にセットされ,最終転送におい
てデータ出力とともに,有効バイト数が奇数バイトであ
ることを示すバイトマークの出力と,LASTを示す信
号の出力が行われる。
【0028】〔第2の実施例〕図5は第2の実施例のブ
ロック図,図6は第2の実施例のファームウェア制御フ
ローチャート,図7は第2の実施例の動作タイムチャー
トを示す。
【0029】図5において図1と同符号のものは図1に
示すものに対応し,41はDBS12のライトアドレス
カウンタ(DBSWA),42はDBS12のリードア
ドレスカウンタ(DBSRA),43は最終転送LAS
Tの報告を指示するビット,44は最終データが有効か
無効かを示すビット,45はLAST送出判定回路であ
って,上位インタフェース制御部14に対して最終転送
LASTを報告するもの,46はDBS12の残りバイ
トカウントRBCを計算する減算回路,47はバイトマ
ーク(BYTE MARK)作成回路であって,1回の
転送の有効バイト数を報告するもの,48はEM/FL
制御回路であって,DBS12の状態が空(EMPT
Y)か満(FULL)かを制御している回路,49は転
送許可判定回路であって,上位インタフェース制御部1
4に対して転送許可フラグ(DTOK)を立てるか立て
ないかを制御する回路,50はDMAバス15のバス幅
とWIDE SCSIバス19のバス幅の和から1を引
いた値をファームウェアがセットするレジスタ,51は
減算回路46で求めた残りバイトカウントRBCとレジ
スタ50の値との大小を比較する比較回路,52はライ
トアドレスWAをインクリメントする加算回路,53は
リードアドレスRAをインクリメントする加算回路,5
4はDBS12へのライト動作またはリード動作によっ
てライトアドレスWAとリードアドレスRAとを切り替
えるマルチプレクサを表す。
【0030】本実施例の動作は以下のとおりである。 (1) 下位装置18からのデータ転送により,DBSWA
41を更新する。また,上位装置16への転送により,
DBSRA42を更新する。減算回路46は,DBSW
A41の値からDBSRA42の値を減算し,DBS1
2の残りバイトカウントRBCを常時求める。
【0031】(2) 求めた残りバイトカウントRBCと,
レジスタ50の値とを比較回路51により比較する。こ
のとき,残りバイトカウントRBCの値が大きければ,
転送許可を上位インタフェース制御部14に対して出力
するが,レジスタ50の値,すなわち(DMAバス15
のバス幅m)+(WIDE SCSIバス19のバス幅
n)−1の値のほうが大きい場合には,転送許可を出さ
ない。この転送許可の通知は,転送許可判定回路49に
より制御する。
【0032】(3) 上記(2) の制御を行いつつ,ファーム
ウェアが最終転送の報告を指示するビット43および最
終データが有効か無効かを示すビット44に,データを
ライトするのを待つ。これらのビット44,45にデー
タがライトされるまでは,DBS12内には少なくとも
常にバス幅以上のデータがあることになる。
【0033】(4) ファームウェアによりビット44,4
5にデータがライトされたならば,残りバイトカウント
RBCと,ビット45が示す最終データが有効か無効か
の情報とによって,バイトマーク作成回路47により有
効バイト数を示すBMを作成し,データと一緒に上位装
置16に対して最終転送を行う。このとき,LAST送
出回路45で作成した最終転送(LAST)を示す信号
も一緒に出力する。
【0034】この第2の実施例では,ファームウェアは
図6に示すような制御を行う。まず,ステップS20に
おいて,リード動作の開始によりデータ転送を起動す
る。ステップS21では,I/O装置等の下位装置18
からメッセージを受け取る。メッセージを受け取ったな
らば,ステップS22において最後のデータが無効かど
うかを判定し,無効であればステップS23により最終
データが有効か無効かを示すビット44に1(無効)を
セットする。最後に,ステップS24において最終転送
の報告を指示するビット43にLASTをセットする。
【0035】この動作タイムチャートは,例えば図7に
示すようになる。DBSWA41の値は,下位装置18
からのデータ転送によって4バイトずつインクリメント
される。なお,WIDE SCSIバス19のバス幅は
2バイトであるが,ここではデータをSCSIバス制御
部11において保持することにより4バイト単位でDB
S12への書き込みが行われる。
【0036】初期化時にファームウェアによりレジスタ
50にセットされる値は,m+n−1=4+2−1=5
である。これにより,DBS12の残りバイトカウント
RBCが5以上になると,転送許可フラグ(flag)
がONになり,DBSRA42によるリードアドレスに
よって,DBS12から上位インタフェース制御部14
へデータが読み出される。これに伴い,残りバイトカウ
ントRBCは減少する。BM(BYTE MARK)は
“00”で4バイト有効であることを示す。下位装置1
8からの転送が奇数バイト転送の場合には,データ転送
後のメッセージによりファームウェアによって最終デー
タが無効であることが通知され,最終転送においてデー
タ出力とともに,有効バイト数が奇数バイト(例えば3
バイト)であることを示すバイトマークの出力と,LA
STを示す信号の出力が行われる。
【0037】〔第3の実施例〕図8は第3の実施例のブ
ロック図,図9および図10は第3の実施例の動作説明
図,図11は第3の実施例のファームウェア制御フロー
チャート,図12は第3の実施例の動作タイムチャート
を示す。
【0038】図8において図1と同符号のものは図1に
示すものに対応し,61はDBS12のライトアドレス
カウンタ(DBSWA),62はDBS12のリードア
ドレスカウンタ(DBSRA),63は最終転送LAS
Tの報告を指示するビット,64は最終データが有効か
無効かを示すビット,65は下位装置18からのデータ
転送の始まりを報告するビット,66はLAST送出判
定回路であって,上位インタフェース制御部14に対し
て最終転送LASTを報告するもの,67はDBS12
の残りバイトカウントRBCを計算する減算回路,68
はバイトマーク(BYTE MARK)作成回路であっ
て,1回の転送の有効バイト数を報告するもの,69は
転送許可判定回路であって,上位インタフェース制御部
14に対して転送許可フラグ(DTOK)を立てるか立
てないかを制御する回路,70および71はデータ送出
する際にバイト位置をそろえ,DMAバス15に送出す
るためのレジスタ,72はDBS12のライトイネーブ
ル(WE)およびアウトイネーブル(OE)を制御する
WE.OE作成回路,73はライトアドレスWAをイン
クリメントする加算回路,74はリードアドレスRAを
インクリメントする加算回路,75はDBS12へのラ
イト動作またはリード動作によってライトアドレスWA
とリードアドレスRAとを切り替えるマルチプレクサを
表す。
【0039】本実施例において,DMAバス15のバス
幅mは4バイトであるとする。DBS12へのデータの
書き込み,およびDBS12からのデータの読み出し
は,それぞれDBSWA61のアドレスと,DBSRA
62のアドレスとによって行われる。本実施例では,フ
ァームウェアにより最初の転送のときにビット65に転
送の始まり(FIRST)がセットされ,最後の転送の
ときにはビット63に最終転送(LAST)の指示がセ
ットされる。動作は以下のとおりである。
【0040】(1) ファームウェアはビット65にFIR
STをセットする。そして,下位装置18からのデータ
転送が開始される。以下,図9および図10を参照しな
がら説明する。データの転送は,図9(A)に示すよう
に,1回目の転送をFIRST,2回目の転送をMid
dle1,3回目以降の転送をMiddle2,そして
最後の転送をLASTとする。基本的には4バイト転送
であるが,FIRSTは1バイト転送,LASTは残り
の有効バイトの転送となる。
【0041】(2) まず,下位装置18から4バイトデー
タa〜dが転送されてきたならば,DBS12に格納す
る。上位装置16がデータ転送の準備ができたならば,
FIRST転送では,図9(B)に示すようにDBS1
2からレジスタ70にデータa〜dを読み出し,さらに
レジスタ71に移す。
【0042】(3) ビット65によりFIRSTが指示さ
れているので,バイトマーク作成回路68によりBMを
01にし,上位装置16に対して1バイトのデータaだ
けを転送する。データb〜dはレジスタ71に保持して
おく。
【0043】(4) 次に,下位装置18からデータe〜h
が転送されてきたときに,図9(C)にMiddle1
転送として示すように,レジスタ71でシフト操作等を
行い,b〜eのデータをDMAバス15に載せて転送す
る。BMは00で4バイト有効とする。
【0044】(5) その後,図9(D)に示すように,レ
ジスタ70に残っているデータf〜hをレジスタ71へ
移し,新しいデータi〜lが来たならばMiddle1
転送におけるデータb〜eの転送と同様に,Middl
e2転送によりデータf〜iを上位装置16へ転送す
る。このMiddle2転送を,ビット63がLAST
を示すまで繰り返す。
【0045】(6) ビット63がLASTを示したなら
ば,図10に示すLAST転送に移る。中間装置10に
はデータj〜l(これには無効データを含むことがあ
る)が残っている。LAST転送では,まず図10
(A)に示すようにデータj〜lをレジスタ70からレ
ジスタ71へ移す。もし,ファームウェアからビット6
4によって指示された有効データがデータlまでの場合
には,図10(B)に示すように,データj〜lの頭を
そろえ,バイトマークBMを11の3バイト有効にし
て,最終転送を行う。一方,有効データがk(または
j)までの場合には,図10(C)に示すように最後の
データを切り捨て,不要なデータはDMAバス15に載
せないでバイトマークBMを10(または01)にして
最終転送を行う。
【0046】この第3の実施例では,ファームウェアは
図11に示すような制御を行う。まず,ステップS30
において,リード動作の開始によりデータ転送の始まり
を報告するビット65に1をセットする。そしてステッ
プS31によりデータ転送を起動する。ステップS32
では,下位装置(I/O装置)18からメッセージを受
け取る。メッセージを受け取ったならば,ステップS3
3において最後のデータが無効かどうかを判定し,無効
であればステップS34により最終データが有効か無効
かを示すビット64に1(無効)をセットする。最後
に,ステップS35において最終転送の報告を指示する
ビット63にLASTをセットする。
【0047】この動作タイムチャートは,例えば図12
に示すようになる。DBSWA61の値は,下位装置1
8からのデータ転送によって4バイトずつインクリメン
トされる。バイトマークは,最初,01であり1バイト
有効としておく。残りバイトカウントRBCがnバイト
以上あれば転送許可フラグをONにし転送を行う。2回
目以降はバイトマークを00の4バイト有効とする。最
終転送では,データ出力とともに,有効バイト数が奇数
バイトであることを示すバイトマークの出力と,LAS
Tを示す信号の出力が行われる。
【0048】
【発明の効果】以上説明したように,本発明によれば,
奇数バイト転送等があっても上位装置でのデータ破壊を
防止することができ,エラーの誘発,システムダウン等
を防いで信頼性を向上させることができる。また,中間
装置で処理するので,上位装置におけるデータ破壊のた
めの対処は不要である。
【図面の簡単な説明】
【図1】本発明の原理を説明するための図である。
【図2】第1の実施例のブロック図である。
【図3】第1の実施例のファームウェア制御フローチャ
ートである。
【図4】第1の実施例の動作タイムチャートである。
【図5】第2の実施例のブロック図である。
【図6】第2の実施例のファームウェア制御フローチャ
ートである。
【図7】第2の実施例の動作タイムチャートである。
【図8】第3の実施例のブロック図である。
【図9】第3の実施例の動作説明図である。
【図10】第3の実施例の動作説明図である。
【図11】第3の実施例のファームウェア制御フローチ
ャートである。
【図12】第3の実施例の動作タイムチャートである。
【符号の説明】
10 中間装置 11 SCSIバス制御部 12 データバッファ(DBS) 13 DBS制御部 14 上位インタフェース制御部 15 DMAバス 16 上位装置 17 上位インタフェース 18 下位装置 19 WIDE SCSIバス

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 下位装置(18)から送られるバス幅nに依
    存するデータの有効性がデータ転送後に判明するインタ
    フェースを持ち,下位装置(18)からの有効データだけを
    上位装置(16)へ転送する中間装置(10)におけるデータ転
    送制御方法において,無効データを含めデータバッファ
    (12)に格納された下位装置(18)からのデータの格納量k
    に対し,データの有効性が判定されるまでは(k−n+
    1)をデータバッファ(12)の有効格納量とし,有効性が
    判定された以降は無効データの有無に応じた補正値によ
    り(k−補正値)をデータバッファ(12)の有効格納量と
    して切り替え,この有効格納量の値がデータバッファ(1
    2)の読み出し単位のm以上になったときに,データバッ
    ファ(12)からデータを読み出して上位装置(16)に転送す
    ることを特徴とするデータ転送制御方法。
  2. 【請求項2】 下位装置(18)から送られるバス幅nに依
    存するデータの有効性がデータ転送後に判明するインタ
    フェースを持ち,下位装置(18)からの有効データだけを
    上位装置(16)へ転送する中間装置(10)におけるデータ転
    送制御方法において,無効データを含めデータバッファ
    (12)に格納された下位装置(18)からのデータの格納量
    が,(m+n−1)〔ただし,mはデータバッファの読
    み出し単位〕以上になったときに,データバッファ(12)
    からデータを読み出して上位装置(16)に転送することを
    特徴とするデータ転送制御方法。
  3. 【請求項3】 下位装置(18)から送られるバス幅nに依
    存するデータの有効性がデータ転送後に判明するインタ
    フェースを持ち,下位装置(18)からの有効データだけを
    上位装置(16)へ転送する中間装置(10)におけるデータ転
    送制御方法において,無効データを含めデータバッファ
    (12)に格納された下位装置(18)からのデータの格納量k
    が,データバッファ(12)の読み出し単位のm以上になっ
    たときに,データバッファ(12)からデータを読み出す回
    路を持ち,最初の読み出しデータに対しては1バイトの
    み上位装置(16)に転送し,残り(m−1)バイトは以降
    のデータバッファ(12)からの読み出しまでレジスタに保
    持し,2回目以降のデータ読み出しの際には前記レジス
    タに保持している未送出バイト(m−1)をシフトし,
    読み出したデータの1バイトを連結して上位装置(16)に
    転送するとともに,前記レジスタに残りの新しい未送出
    バイト(m−1)を保持し,以降は同様な動作で上位装
    置(16)へのデータ転送を繰り返すことを特徴とするデー
    タ転送制御方法。
JP6039500A 1994-03-10 1994-03-10 データ転送制御方法 Withdrawn JPH07248987A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6039500A JPH07248987A (ja) 1994-03-10 1994-03-10 データ転送制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6039500A JPH07248987A (ja) 1994-03-10 1994-03-10 データ転送制御方法

Publications (1)

Publication Number Publication Date
JPH07248987A true JPH07248987A (ja) 1995-09-26

Family

ID=12554773

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6039500A Withdrawn JPH07248987A (ja) 1994-03-10 1994-03-10 データ転送制御方法

Country Status (1)

Country Link
JP (1) JPH07248987A (ja)

Similar Documents

Publication Publication Date Title
JP2846837B2 (ja) 障害を早期検出するためのソフトウェア制御方式のデータ処理方法
US20080209420A1 (en) Processing system, storage device, and method for performing series of processes in given order
JPH07281840A (ja) 2重化ディスク記録装置
EP1253520B1 (en) Apparatus for issuing command for high-speed serial interface
GB2388934A (en) System for detecting runt block data transfers
JP2001331377A (ja) 再生エラーの処理方法及びこれを用いたディスク装置
JPH07248987A (ja) データ転送制御方法
US7913028B2 (en) Data processing system having multiplexed data relaying devices, data processing aparatus having multiplexed data relaying devices, and a method of incorporating data relaying devices in data processing system having multiplexed data relaying devices
JP2000155737A (ja) デ―タパケット受信装置
US5623630A (en) Data processor with application program buffer to cache buffer copy capability to prevent mismatches
JP3236166B2 (ja) キャッシュ制御方法および情報処理装置
JP3162459B2 (ja) データ処理装置
JPH09319644A (ja) 情報処理装置
JPS6240736B2 (ja)
JPS6292053A (ja) 直接メモリアクセス転送制御方式
US6804728B2 (en) I/O control device and I/O control method
JP2604604B2 (ja) スタック制御装置
JP2979962B2 (ja) 障害検出システム
JP2906739B2 (ja) 記憶装置
JP3484707B2 (ja) 非同期データ転送制御装置
JPS63292356A (ja) Dma制御装置
JPS6141430B2 (ja)
JPH0315217B2 (ja)
JPS5985560A (ja) フアイル管理装置
JPH06259374A (ja) 入出力バス制御装置

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20010605