JPH09259071A - 通信制御装置 - Google Patents
通信制御装置Info
- Publication number
- JPH09259071A JPH09259071A JP6299996A JP6299996A JPH09259071A JP H09259071 A JPH09259071 A JP H09259071A JP 6299996 A JP6299996 A JP 6299996A JP 6299996 A JP6299996 A JP 6299996A JP H09259071 A JPH09259071 A JP H09259071A
- Authority
- JP
- Japan
- Prior art keywords
- dma
- bus
- dma controller
- receiver
- channel
- 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
Links
Landscapes
- Bus Control (AREA)
Abstract
(57)【要約】
【課題】ソフトウェアの負担を軽減でき、かつシステム
に応じてハードウェアとソフトウェア処理分担比率を自
由に設定でき高いスループットを実現できる多チャネル
DMAコントローラを内蔵する通信制御装置を提供する
こと。 【解決手段】送信器,受信器,メモリ装置及び送信/受
信器とメモリ装置間でデータバスを介してDMAデータ
転送を行う多チャネルのDMAコントローラと、第1の
DMAコントローラチャネルがバスマスタとして動作中
に、第1のDMAコントローラチャネルよりも優先順位
の高い第2のDMAコントローラチャネルのバス権要求
に対して、第1のDMAコントローラチャネルが直ちに
バス権を放棄する手段と、放棄直前の第1のDMAコン
トローラチャネル動作状態を記憶,保持する手段とを備
え、第1のDMAコントローラチャネルにバス権が復帰
した時、動作状態からDMA転送を継続して再開する。
に応じてハードウェアとソフトウェア処理分担比率を自
由に設定でき高いスループットを実現できる多チャネル
DMAコントローラを内蔵する通信制御装置を提供する
こと。 【解決手段】送信器,受信器,メモリ装置及び送信/受
信器とメモリ装置間でデータバスを介してDMAデータ
転送を行う多チャネルのDMAコントローラと、第1の
DMAコントローラチャネルがバスマスタとして動作中
に、第1のDMAコントローラチャネルよりも優先順位
の高い第2のDMAコントローラチャネルのバス権要求
に対して、第1のDMAコントローラチャネルが直ちに
バス権を放棄する手段と、放棄直前の第1のDMAコン
トローラチャネル動作状態を記憶,保持する手段とを備
え、第1のDMAコントローラチャネルにバス権が復帰
した時、動作状態からDMA転送を継続して再開する。
Description
【0001】
【発明の属する技術分野】本発明は、データ通信分野で
利用され、システム側で制御,生成するパラレルデータ
を送信器によりシリアルデータに変換し、接続される回
線へ出力する、あるいは接続される回線より入力される
シリアルデータを受信器により解釈しパラレルデータに
変換し、システム側へ出力する通信制御装置に関する。
利用され、システム側で制御,生成するパラレルデータ
を送信器によりシリアルデータに変換し、接続される回
線へ出力する、あるいは接続される回線より入力される
シリアルデータを受信器により解釈しパラレルデータに
変換し、システム側へ出力する通信制御装置に関する。
【0002】
【従来の技術】従来の通信制御装置では、これに内蔵さ
れるDMA(ダイレクトメモリアクセス)コントローラ
において、使い勝手,処理能力(スループット),信頼
性の点で下記に述べるような不都合があった。
れるDMA(ダイレクトメモリアクセス)コントローラ
において、使い勝手,処理能力(スループット),信頼
性の点で下記に述べるような不都合があった。
【0003】(1)より優先順位の高いDMAコントロ
ーラチャネルのバス権要求に対して、ディスクリプタに
属するメモリ空間上のバッファに対するデータ転送期間
にのみDMAコントローラ間のチャネル切り換えが行え
るが、ディスクリプタをアクセスしている期間中のDM
Aコントローラ間のチャネル切り換えは不可能で、該デ
ィスクリプタへのアクセスが終了するまで待つ必要があ
った。そのため、優先順位の高いDMAコントローラチ
ャネルがバス権を要求した場合でも、すぐにチャネル切
り換えが行われず待たされ、該DMAコントローラとし
ての処理能力を低下させてしまい、システムのフレーム
生成,解釈の処理能力(スループット)を低下させる問
題があった。
ーラチャネルのバス権要求に対して、ディスクリプタに
属するメモリ空間上のバッファに対するデータ転送期間
にのみDMAコントローラ間のチャネル切り換えが行え
るが、ディスクリプタをアクセスしている期間中のDM
Aコントローラ間のチャネル切り換えは不可能で、該デ
ィスクリプタへのアクセスが終了するまで待つ必要があ
った。そのため、優先順位の高いDMAコントローラチ
ャネルがバス権を要求した場合でも、すぐにチャネル切
り換えが行われず待たされ、該DMAコントローラとし
ての処理能力を低下させてしまい、システムのフレーム
生成,解釈の処理能力(スループット)を低下させる問
題があった。
【0004】(2)DMA要求は送信器,受信器からな
るシリアル部の状態によってのみ発生するため、一度D
MAコントローラがバス権を獲得、すなわちバスマスタ
として動作し始めると他のバスマスタにバス権が譲渡さ
れないことが多くシステムバスの占有率が非常に高かっ
た。
るシリアル部の状態によってのみ発生するため、一度D
MAコントローラがバス権を獲得、すなわちバスマスタ
として動作し始めると他のバスマスタにバス権が譲渡さ
れないことが多くシステムバスの占有率が非常に高かっ
た。
【0005】他のバスマスタ、例えばマイクロプロセッ
サ(MPU)が何らかの処理を行う場合、まずバスマス
タとして動作しているDMAコントローラにバス権を放
棄させる処理を行う。
サ(MPU)が何らかの処理を行う場合、まずバスマス
タとして動作しているDMAコントローラにバス権を放
棄させる処理を行う。
【0006】緊急性を有するDMAコントローラの動作
中断要求に対して、MPUは、DMAコントローラにバス
アクノーリッジ信号を返すなどしてバス権を放棄させた
後、通常内蔵レジスタに各種制御コマンドをライトす
る。バス権の調停は通常アービトレーション回路によっ
て行われ、このバス調停時間及びバス権放棄,獲得に要
する時間がオーバヘッドとなり緊急を要する場合問題と
なっていた。
中断要求に対して、MPUは、DMAコントローラにバス
アクノーリッジ信号を返すなどしてバス権を放棄させた
後、通常内蔵レジスタに各種制御コマンドをライトす
る。バス権の調停は通常アービトレーション回路によっ
て行われ、このバス調停時間及びバス権放棄,獲得に要
する時間がオーバヘッドとなり緊急を要する場合問題と
なっていた。
【0007】(3)バスマスタとして動作しているDM
Aコントローラは、ディスクリプタの先頭アドレスを示
す内蔵のカレントディスクリプタアドレスレジスタに設
定された値を元にメモリ空間上のディスクリプタを読み
込み、該ディスクリプタの指示する情報に従い次々とメ
モリ空間上のバッファをチェインしながらDMA転送を
実行していく。しかし、ディスクリプタそのものにDM
Aコントローラが一度読み出し及び書き込み動作(アク
セス)を行ったことを示すステータスを持たないため、
一度アクセスしたディスクリプタ及びバッファへもディ
スクリプタの設定によっては再びアクセスしてしまい、
前回アクセスした時の情報を書き換えてしまう恐れがあ
った。そのため、MPUは常にDMAコントローラの動
作の状態を把握しながら各ディスクリプタに属するメモ
リ空間上のバッファの処理を行わなければならなかっ
た。これは、MPUの処理能力を低下させる一原因とな
っていた。
Aコントローラは、ディスクリプタの先頭アドレスを示
す内蔵のカレントディスクリプタアドレスレジスタに設
定された値を元にメモリ空間上のディスクリプタを読み
込み、該ディスクリプタの指示する情報に従い次々とメ
モリ空間上のバッファをチェインしながらDMA転送を
実行していく。しかし、ディスクリプタそのものにDM
Aコントローラが一度読み出し及び書き込み動作(アク
セス)を行ったことを示すステータスを持たないため、
一度アクセスしたディスクリプタ及びバッファへもディ
スクリプタの設定によっては再びアクセスしてしまい、
前回アクセスした時の情報を書き換えてしまう恐れがあ
った。そのため、MPUは常にDMAコントローラの動
作の状態を把握しながら各ディスクリプタに属するメモ
リ空間上のバッファの処理を行わなければならなかっ
た。これは、MPUの処理能力を低下させる一原因とな
っていた。
【0008】(4)従来、多チャネルのDMAコントロ
ーラにおいて、通信制御装置又は通信制御用LSIその
ものがバス権を獲得したことを示す出力端子はあった
が、内蔵のどのDMAコントローラチャネルがバス権を
獲得しているかを示す出力端子がなく、MPUが、現在
いずれのDMAコントローラが動作しているのかを把握
することは不可能であった。ユーザがソフトウェアを開
発する上で、どのDMAコントローラチャネルがバス権
を獲得しているかを把握できないために、使い勝手が悪
く、ソフトウェア開発工数の増大をもたらしていた。
ーラにおいて、通信制御装置又は通信制御用LSIその
ものがバス権を獲得したことを示す出力端子はあった
が、内蔵のどのDMAコントローラチャネルがバス権を
獲得しているかを示す出力端子がなく、MPUが、現在
いずれのDMAコントローラが動作しているのかを把握
することは不可能であった。ユーザがソフトウェアを開
発する上で、どのDMAコントローラチャネルがバス権
を獲得しているかを把握できないために、使い勝手が悪
く、ソフトウェア開発工数の増大をもたらしていた。
【0009】
【発明が解決しようとする課題】本発明の目的は、上記
従来技術の問題点を解決し、多チャネルDMAコントロ
ーラを内蔵する通信制御装置において、ソフトウェアの
負担を軽減でき、かつシステムに応じてハードウェアと
ソフトウェア処理分担比率を自由に設定でき高いスルー
プットを実現できる通信制御装置を提供することにあ
る。
従来技術の問題点を解決し、多チャネルDMAコントロ
ーラを内蔵する通信制御装置において、ソフトウェアの
負担を軽減でき、かつシステムに応じてハードウェアと
ソフトウェア処理分担比率を自由に設定でき高いスルー
プットを実現できる通信制御装置を提供することにあ
る。
【0010】
【課題を解決するための手段】上記目的を達成するた
め、本発明では、他のDMAコントローラチャネルによ
り優先順位の高いDMA転送要求が発生した場合、各D
MAコントローラチャネルに対応してディスクリプタ内
情報,データ転送語数(ディスクリプタのアクセス期間
に該DMA要求が発生した場合)、及びバッファへの転
送語数(バッファ転送期間に該DMA要求が発生した場
合)を保持する制御回路を設ける。
め、本発明では、他のDMAコントローラチャネルによ
り優先順位の高いDMA転送要求が発生した場合、各D
MAコントローラチャネルに対応してディスクリプタ内
情報,データ転送語数(ディスクリプタのアクセス期間
に該DMA要求が発生した場合)、及びバッファへの転
送語数(バッファ転送期間に該DMA要求が発生した場
合)を保持する制御回路を設ける。
【0011】また、DMAデータ転送サイクル長を任意
に設定できるレジスタ、及びDMAコントローラがバス
権を放棄した後再びバス権を要求するまでのサイクル数
を任意に設定できるレジスタを設ける。更に、バスマス
タとして動作しているDMAコントローラの動作を他の
バスマスタ、例えばMPUがバス権を獲得せずに中断で
きるようにアボート入力端子を設け、直接外部信号によ
り該DMAコントローラの動作をホールド状態にできる
ようにする。
に設定できるレジスタ、及びDMAコントローラがバス
権を放棄した後再びバス権を要求するまでのサイクル数
を任意に設定できるレジスタを設ける。更に、バスマス
タとして動作しているDMAコントローラの動作を他の
バスマスタ、例えばMPUがバス権を獲得せずに中断で
きるようにアボート入力端子を設け、直接外部信号によ
り該DMAコントローラの動作をホールド状態にできる
ようにする。
【0012】更に、DMAコントローラが一度アクセス
したディスクリプタに対して、他のバスマスタ、例えば
MPUがバッファの処理を終了する前に再び同一のディ
スクリプタをDMAコントローラがアクセスしてしまう
ことを防止するため、メモリ空間上のディスクリプタ内
に一度ディスクリプタのアクセスを行ったことを示すフ
ラグであるオーナシップビットを設ける。オーナシップ
ビットのセットをDMAコントローラが行い、リセットを
他のバスマスタ、例えばMPUが行うようにする。セッ
トされたままのオーナシップビットをディスクリプタの
アクセスによりDMAコントローラが読み込んだ場合、
DMAコントローラは、一定期間おいて再びディスクリ
プタのアクセスを行う。一定期間待つためにフリーラン
カウンタを使用し、フリーランカウンタの値がall1 に
なった時、再びディスクリプタの読み込みを行うように
する。オーナシップビットがリセットされたことを確認
した後バッファに対するデータ転送を開始するようにす
ることでディスクリプタ及びバッファの書き換えを防止
することが可能である。
したディスクリプタに対して、他のバスマスタ、例えば
MPUがバッファの処理を終了する前に再び同一のディ
スクリプタをDMAコントローラがアクセスしてしまう
ことを防止するため、メモリ空間上のディスクリプタ内
に一度ディスクリプタのアクセスを行ったことを示すフ
ラグであるオーナシップビットを設ける。オーナシップ
ビットのセットをDMAコントローラが行い、リセットを
他のバスマスタ、例えばMPUが行うようにする。セッ
トされたままのオーナシップビットをディスクリプタの
アクセスによりDMAコントローラが読み込んだ場合、
DMAコントローラは、一定期間おいて再びディスクリ
プタのアクセスを行う。一定期間待つためにフリーラン
カウンタを使用し、フリーランカウンタの値がall1 に
なった時、再びディスクリプタの読み込みを行うように
する。オーナシップビットがリセットされたことを確認
した後バッファに対するデータ転送を開始するようにす
ることでディスクリプタ及びバッファの書き換えを防止
することが可能である。
【0013】更に、いずれのDMAコントローラチャネ
ルがバスマスタとして動作しているかを他のバスマス
タ、例えばMPUが把握できるようにバス権を獲得して
いるDMAコントローラチャネルのアドレスを出力する
チャネルアドレス出力端子を設ける。該チャネルアドレ
ス出力端子により、MPUはシステムバス(ソフトウェ
ア)を介さずに現在バスマスタとして動作しているDM
Aコントローラがいずれのチャネルであるかを容易に把
握でき、ユーザがソフトウェアを組む上で使い易くな
る。又、MPUはDMAコントローラの各チャネル状態
を素早く把握することができる。
ルがバスマスタとして動作しているかを他のバスマス
タ、例えばMPUが把握できるようにバス権を獲得して
いるDMAコントローラチャネルのアドレスを出力する
チャネルアドレス出力端子を設ける。該チャネルアドレ
ス出力端子により、MPUはシステムバス(ソフトウェ
ア)を介さずに現在バスマスタとして動作しているDM
Aコントローラがいずれのチャネルであるかを容易に把
握でき、ユーザがソフトウェアを組む上で使い易くな
る。又、MPUはDMAコントローラの各チャネル状態
を素早く把握することができる。
【0014】
【発明の実施の形態】図1は本発明の第1の実施例を示
す。
す。
【0015】1は、通信制御装置であり、複数の部品で
構成してもよいし、1個あるいは複数のLSIとして構
成される。6,9は、送信器であり、7,8は受信器、
10,13は送信FIFO(先入先出バッファ)、1
1,12は受信FIFOであり、これらはシリアルブロ
ックを構成する。18〜21はDMAコントローラチャ
ネル、50はバス調停回路、42は内部データバス、3
9は外部メモリ、40は外部バス、41は該外部バス4
0と該内部データバス42とを接続するためのバスイン
タフェースである。上記バス調停回路50は、DMA中
断時のディスクリプタまたはバッファデータの転送状態
を記憶,保持するディスクリプタ/バッファ転送状態保
持回路65〜68、DMA転送サイクル期間制御回路5
1、非DMA転送サイクル(スレーブ)期間制御回路52
から構成される。なお、該DMA転送サイクル期間制御
回路51,非DMA転送サイクル(スレーブ)期間制御
回路52の内部構成については図3において後述する。
構成してもよいし、1個あるいは複数のLSIとして構
成される。6,9は、送信器であり、7,8は受信器、
10,13は送信FIFO(先入先出バッファ)、1
1,12は受信FIFOであり、これらはシリアルブロ
ックを構成する。18〜21はDMAコントローラチャ
ネル、50はバス調停回路、42は内部データバス、3
9は外部メモリ、40は外部バス、41は該外部バス4
0と該内部データバス42とを接続するためのバスイン
タフェースである。上記バス調停回路50は、DMA中
断時のディスクリプタまたはバッファデータの転送状態
を記憶,保持するディスクリプタ/バッファ転送状態保
持回路65〜68、DMA転送サイクル期間制御回路5
1、非DMA転送サイクル(スレーブ)期間制御回路52
から構成される。なお、該DMA転送サイクル期間制御
回路51,非DMA転送サイクル(スレーブ)期間制御
回路52の内部構成については図3において後述する。
【0016】本実施例では、送信器,受信器共2個ずつ
描いてあり、シリアル2チャネルとして描いてあるが、
本発明は、シリアルチャネルの数を制限するものではな
い。送信器,受信器は、本実施例では、ビット同期プロ
トコル,バイト同期プロトコル,調歩同期といった複数
のプロトコルによる処理が可能であるが、これらの異な
る組み合わせでもよいし、他のプロトコル、例えば、イ
ーサネット,フレームリレー,ATM,ISDN、その
他のプロトコルを単独、あるいは組み合わせて処理が可
能になるようにしてもよい。
描いてあり、シリアル2チャネルとして描いてあるが、
本発明は、シリアルチャネルの数を制限するものではな
い。送信器,受信器は、本実施例では、ビット同期プロ
トコル,バイト同期プロトコル,調歩同期といった複数
のプロトコルによる処理が可能であるが、これらの異な
る組み合わせでもよいし、他のプロトコル、例えば、イ
ーサネット,フレームリレー,ATM,ISDN、その
他のプロトコルを単独、あるいは組み合わせて処理が可
能になるようにしてもよい。
【0017】次に動作について説明する。送信FIFO
10(13)から出力される、パラレル送信データ14
(17)は、制御信号61(64)に従い送信器6
(9)によりシリアルに変換され、送信データ2(5)
として送信される。受信データ3(4)は、受信器7
(8)によりパラレルデータ15(16)に変換され、
受信FIFO制御信号62(63)により受信FIFO
11(12)に格納される。
10(13)から出力される、パラレル送信データ14
(17)は、制御信号61(64)に従い送信器6
(9)によりシリアルに変換され、送信データ2(5)
として送信される。受信データ3(4)は、受信器7
(8)によりパラレルデータ15(16)に変換され、
受信FIFO制御信号62(63)により受信FIFO
11(12)に格納される。
【0018】バス調停回路50は通常DMAコントロー
ラチャネル18〜21のいずれかにチャネル選択信号3
4〜37によりバス権を与えるものである。DMAコン
トローラチャネル18〜21は、送信FIFO10,1
3及び受信FIFO11,12からの状態信号57,5
8及び59,60に従い、送信FIFO10,13及び
受信FIFO11,12と内部データバス42との間で
データ転送を行い、同時にバスインタフェース41を制
御して、外部メモリ39と外部バス40を介してデータ
転送を行う。なお、外部バス40には外部メモリ39の
他マイクロプロセッサ(MPU),マスタユニット(図
示せず)などが接続される。
ラチャネル18〜21のいずれかにチャネル選択信号3
4〜37によりバス権を与えるものである。DMAコン
トローラチャネル18〜21は、送信FIFO10,1
3及び受信FIFO11,12からの状態信号57,5
8及び59,60に従い、送信FIFO10,13及び
受信FIFO11,12と内部データバス42との間で
データ転送を行い、同時にバスインタフェース41を制
御して、外部メモリ39と外部バス40を介してデータ
転送を行う。なお、外部バス40には外部メモリ39の
他マイクロプロセッサ(MPU),マスタユニット(図
示せず)などが接続される。
【0019】送信は、DMAコントローラチャネル18
〜21が内部データバス42,バス30(33)を介
し、転送制御信号53(56)によりデータバス26
(29)を介して送信FIFO10(13)にデータをD
MA転送することにより行われる。受信は、DMAコン
トローラチャネル19(20)がデータバス27(28)
を介し、転送制御信号54(55)により受信FIFO
11(12)のデータを読み出し、バス31(32)を
介して内部データバス42へ該データを出力することに
より行われる。
〜21が内部データバス42,バス30(33)を介
し、転送制御信号53(56)によりデータバス26
(29)を介して送信FIFO10(13)にデータをD
MA転送することにより行われる。受信は、DMAコン
トローラチャネル19(20)がデータバス27(28)
を介し、転送制御信号54(55)により受信FIFO
11(12)のデータを読み出し、バス31(32)を
介して内部データバス42へ該データを出力することに
より行われる。
【0020】バス調停回路50は外部のバスマスタに対
し、バス要求信号を発行し、外部のバスマスタよりバス
アクノリッジ信号が返されると、チャンネル選択信号線
34〜37のいずれかをアクティブレベルに設定(アサ
ート)し、接続先のDMAコントローラチャネルにバス
権を与える。
し、バス要求信号を発行し、外部のバスマスタよりバス
アクノリッジ信号が返されると、チャンネル選択信号線
34〜37のいずれかをアクティブレベルに設定(アサ
ート)し、接続先のDMAコントローラチャネルにバス
権を与える。
【0021】このときDMAコントローラの各チャネル
に対応したチャネルアドレス出力端子44〜47の出力
のいずれかをアサートする。該DMAコントローラの各
チャネルに対応したチャネルアドレス出力端子44〜4
7の出力により外部の他のバスマスタは、現在どのDM
Aコントローラチャネルが動作しているのかをバスを介
することなく(ソフトウェアを介さずに)把握すること
が可能となる特徴を有する。
に対応したチャネルアドレス出力端子44〜47の出力
のいずれかをアサートする。該DMAコントローラの各
チャネルに対応したチャネルアドレス出力端子44〜4
7の出力により外部の他のバスマスタは、現在どのDM
Aコントローラチャネルが動作しているのかをバスを介
することなく(ソフトウェアを介さずに)把握すること
が可能となる特徴を有する。
【0022】ディスクリプタ内の情報を読み込むために
は、複数のバスサイクルが必要であるが、チャネル切り
換え時、各DMAコントローラチャネルに対応させてど
こまでの情報を現在読み込んだかの情報保持、及びディ
スクリプタに属するメモリ空間上のバッファに対しどこ
までデータ転送を行ったのかの情報保持を行う、ディス
クリプタ/バッファ転送状態保持回路65〜68を有す
ることにより、再び同一のDMAコントローラチャネル
にバス権が戻ってきても、次にディスクリプタ内のどの
情報を読み込めばよいのか、あるいはディスクリプタに
属するメモリ空間上のバッファのどこに対し、またはど
こからデータ転送を行えばよいのかを認識できる。この
ように、DMAコントローラチャネル間のチャネル切り
換えは、バス調停回路50により行われメモリ空間上の
ディスクリプタアクセス期間,ディスクリプタに属する
メモリ空間上のバッファに対するデータ転送期間に関係
なく任意の時間に行うことが可能である特徴を持つ。
は、複数のバスサイクルが必要であるが、チャネル切り
換え時、各DMAコントローラチャネルに対応させてど
こまでの情報を現在読み込んだかの情報保持、及びディ
スクリプタに属するメモリ空間上のバッファに対しどこ
までデータ転送を行ったのかの情報保持を行う、ディス
クリプタ/バッファ転送状態保持回路65〜68を有す
ることにより、再び同一のDMAコントローラチャネル
にバス権が戻ってきても、次にディスクリプタ内のどの
情報を読み込めばよいのか、あるいはディスクリプタに
属するメモリ空間上のバッファのどこに対し、またはど
こからデータ転送を行えばよいのかを認識できる。この
ように、DMAコントローラチャネル間のチャネル切り
換えは、バス調停回路50により行われメモリ空間上の
ディスクリプタアクセス期間,ディスクリプタに属する
メモリ空間上のバッファに対するデータ転送期間に関係
なく任意の時間に行うことが可能である特徴を持つ。
【0023】本実施例では、DMAコントローラチャネ
ル間のチャネル切り換えはバス調停回路50により行っ
ているが、バス調停回路50以外によって行ってもよ
い。尚、本発明は、ディスクリプタに設定される情報,
容量及びバッファの容量に何ら制限を与えるものではな
い。
ル間のチャネル切り換えはバス調停回路50により行っ
ているが、バス調停回路50以外によって行ってもよ
い。尚、本発明は、ディスクリプタに設定される情報,
容量及びバッファの容量に何ら制限を与えるものではな
い。
【0024】バス調停の方式は、DMAコントローラ各
チャネルに順にバス権を与える回転優先順位方式でもよ
いし、特定チャネルに優先的にバス権を与える固定優先
順位方式でもよいしランダムにバス権を与える方式でも
よく、本発明は、優先順位決定方式になんら制限を与え
るものではない。
チャネルに順にバス権を与える回転優先順位方式でもよ
いし、特定チャネルに優先的にバス権を与える固定優先
順位方式でもよいしランダムにバス権を与える方式でも
よく、本発明は、優先順位決定方式になんら制限を与え
るものではない。
【0025】バスマスタは、外部に存在してもよいし、
もちろん通信制御装置に内蔵してもよい。又、バスマス
タの数は、1個でもよいし、複数存在してもよい。
もちろん通信制御装置に内蔵してもよい。又、バスマス
タの数は、1個でもよいし、複数存在してもよい。
【0026】本実施例では、外部バス40の先に外部メ
モリ39が接続されているが、バスマスタ,メモリある
いは周辺装置のいずれか、あるいは全てが接続される。
これらは全て通信制御装置1の外に位置してもよく、又
いずれかあるいは全てが、通信制御装置1に内蔵されて
もよい。
モリ39が接続されているが、バスマスタ,メモリある
いは周辺装置のいずれか、あるいは全てが接続される。
これらは全て通信制御装置1の外に位置してもよく、又
いずれかあるいは全てが、通信制御装置1に内蔵されて
もよい。
【0027】本実施例では、シリアル速度,システムク
ロック周波数ともに制限を与えるものではなく、任意の
いかなる値でもよい。たとえばシリル速度25MHz,
システムクロック周波数33Mz,外部バス40のバス
幅32ビット,DMA転送サイクル2クロック/サイク
ルとすればDMA転送速度は33MHz×4Byte/2
(クロック/サイクル)=66MByte/sとなる。
ロック周波数ともに制限を与えるものではなく、任意の
いかなる値でもよい。たとえばシリル速度25MHz,
システムクロック周波数33Mz,外部バス40のバス
幅32ビット,DMA転送サイクル2クロック/サイク
ルとすればDMA転送速度は33MHz×4Byte/2
(クロック/サイクル)=66MByte/sとなる。
【0028】図2を用いて、本実施例におけるDMA転
送のフローを説明する。
送のフローを説明する。
【0029】DMA転送は、MPUによる内蔵レジスタ
アクセスによりイネーブル状態にされることにより開始
する。DMAコントローラは、内蔵されるディスクリプ
タの先頭アドレスを示す、カレントディスクリプタアド
レスレジスタ(CDA)の値と、アクセスを行うべき末
尾のバッファの次のバッファを示すディスクリプタの先
頭アドレスを示すエラーディスクリプタアドレスレジス
タ(EDA)の値との比較を行う。CDAとEDAの値
が一致すれば、DMA転送は終了する。
アクセスによりイネーブル状態にされることにより開始
する。DMAコントローラは、内蔵されるディスクリプ
タの先頭アドレスを示す、カレントディスクリプタアド
レスレジスタ(CDA)の値と、アクセスを行うべき末
尾のバッファの次のバッファを示すディスクリプタの先
頭アドレスを示すエラーディスクリプタアドレスレジス
タ(EDA)の値との比較を行う。CDAとEDAの値
が一致すれば、DMA転送は終了する。
【0030】不一致であった場合、DMAコントローラ
は、CDAに設定された値に従い、ディスクリプタ内の
次のディスクリプタの先頭アドレスを示すチェインポイ
ンタ,アクセスを行うべきメモリ空間上のバッファの先
頭アドレスを示すバッファポインタ,アクセスを行うべ
きメモリ空間上のバッファの送受信情報を示すステータ
ス及び単位バッファ領域容量をバイト単位で示すデータ
長の読み込みを行う。これらディスクリプタのメモリ空
間上のバッファの情報を読み込んだ後、ディスクリプタ
アクセスを行ったことを示すメモリ空間上のバッファの
情報を示すステータス内のフラグであるオーナシップビ
ットの判定を行う。オーナシップビットがセットされて
いれば、内蔵のフリーランカウンタ(詳細は図5を用い
て説明する)の値がall1 になるのを待ってから再び該
ディスクリプタ内のステータス,データ長の読み込みを
行い、オーナシップビットがMPUによりリセットされ
ていることを確認した後、バッファポインタの値に従い
バッファに対するデータ転送を開始する。オーナシップ
ビットがリセットされていれば、すぐにバッファポイン
タの値に従いバッファに対するデータ転送を開始する。
は、CDAに設定された値に従い、ディスクリプタ内の
次のディスクリプタの先頭アドレスを示すチェインポイ
ンタ,アクセスを行うべきメモリ空間上のバッファの先
頭アドレスを示すバッファポインタ,アクセスを行うべ
きメモリ空間上のバッファの送受信情報を示すステータ
ス及び単位バッファ領域容量をバイト単位で示すデータ
長の読み込みを行う。これらディスクリプタのメモリ空
間上のバッファの情報を読み込んだ後、ディスクリプタ
アクセスを行ったことを示すメモリ空間上のバッファの
情報を示すステータス内のフラグであるオーナシップビ
ットの判定を行う。オーナシップビットがセットされて
いれば、内蔵のフリーランカウンタ(詳細は図5を用い
て説明する)の値がall1 になるのを待ってから再び該
ディスクリプタ内のステータス,データ長の読み込みを
行い、オーナシップビットがMPUによりリセットされ
ていることを確認した後、バッファポインタの値に従い
バッファに対するデータ転送を開始する。オーナシップ
ビットがリセットされていれば、すぐにバッファポイン
タの値に従いバッファに対するデータ転送を開始する。
【0031】該ディスクリプタより読み込んだデータ長
の値分のデータ転送を実行すると、DMAコントローラ
は該ディスクリプタ内のステータスの書き込みを行いオ
ーナシップビットをセットする。その後、すでに読み込
んであるチェインポインタの値に従い次のディスクリプ
タのアクセスを行う。以上を繰り返しながらDMAコン
トローラはDMA転送を実行していく。
の値分のデータ転送を実行すると、DMAコントローラ
は該ディスクリプタ内のステータスの書き込みを行いオ
ーナシップビットをセットする。その後、すでに読み込
んであるチェインポインタの値に従い次のディスクリプ
タのアクセスを行う。以上を繰り返しながらDMAコン
トローラはDMA転送を実行していく。
【0032】図3(a)はバス調停回路50におけるD
MA転送サイクル可変回路のブロック構成を示したもの
で第2の実施例を示す。図3(b)は動作タイムチャー
トを示したものである。DMA転送サイクル長可変機
能、及び非DMA転送サイクル長(バス権を放棄した後
再びバス権を要求するまでのサイクル数)可変機能は、
DMA転送サイクル期間制御回路51,非DMA転送サ
イクル期間制御回路52それにバス権要求生成回路78
からなる。DMA転送サイクル期間制御回路51はDM
A転送サイクル数設定レジスタ51′,DMA転送サイ
クル数カウンタ74,比較器76で構成される。一方、
非DMA転送サイクル期間制御回路52は非DMA転送
サイクル数設定レジスタ52′,サイクル数カウンタ7
5,比較器77で構成される。
MA転送サイクル可変回路のブロック構成を示したもの
で第2の実施例を示す。図3(b)は動作タイムチャー
トを示したものである。DMA転送サイクル長可変機
能、及び非DMA転送サイクル長(バス権を放棄した後
再びバス権を要求するまでのサイクル数)可変機能は、
DMA転送サイクル期間制御回路51,非DMA転送サ
イクル期間制御回路52それにバス権要求生成回路78
からなる。DMA転送サイクル期間制御回路51はDM
A転送サイクル数設定レジスタ51′,DMA転送サイ
クル数カウンタ74,比較器76で構成される。一方、
非DMA転送サイクル期間制御回路52は非DMA転送
サイクル数設定レジスタ52′,サイクル数カウンタ7
5,比較器77で構成される。
【0033】以下動作について図3(b)のタイムチャ
ートを用いて説明する。DMA転送サイクル数設定レジ
スタ51′,非DMA転送サイクル数設定レジスタ5
2′は、図1中のバス調停回路50内に存在し、バス権
要求信号端子49からの信号発行を次に述べるように制
御する。
ートを用いて説明する。DMA転送サイクル数設定レジ
スタ51′,非DMA転送サイクル数設定レジスタ5
2′は、図1中のバス調停回路50内に存在し、バス権
要求信号端子49からの信号発行を次に述べるように制
御する。
【0034】まず、DMA転送開始後、DMA転送サイ
クル数設定レジスタ51′の設定値と、DMA転送サイ
クル数をカウントするDMA転送サイクル数カウンタ7
4の値を比較器76で比較し、一致するまでバス権要求
生成回路78はバス権要求信号端子49からの信号をア
サート(アクテブレベル‘L’レベルを出力)する。該
レジスタ51′(設定値:n)と該カウンタ74の値が
一致すると、該比較器76の出力により図3(b)の時
刻BNでバス権要求信号はネゲート(‘H’レベル出
力)される。上記バス権要求信号のネゲートにより外部
マスタ、MPUはバスアクノリッジ信号端子48からの
信号(図1)をネゲート状態(‘H’レベル出力)にし
て返すとともにバス権を獲得し、同時に該DMAチャネ
ルはスレーブ状態となる。
クル数設定レジスタ51′の設定値と、DMA転送サイ
クル数をカウントするDMA転送サイクル数カウンタ7
4の値を比較器76で比較し、一致するまでバス権要求
生成回路78はバス権要求信号端子49からの信号をア
サート(アクテブレベル‘L’レベルを出力)する。該
レジスタ51′(設定値:n)と該カウンタ74の値が
一致すると、該比較器76の出力により図3(b)の時
刻BNでバス権要求信号はネゲート(‘H’レベル出
力)される。上記バス権要求信号のネゲートにより外部
マスタ、MPUはバスアクノリッジ信号端子48からの
信号(図1)をネゲート状態(‘H’レベル出力)にし
て返すとともにバス権を獲得し、同時に該DMAチャネ
ルはスレーブ状態となる。
【0035】DMAコントローラより更にバス権の要求
があれば、一度バス権を放棄した後再びバス権を要求す
るまでのサイクル数を設定する、非DMA転送サイクル
数設定レジスタ52′の設定値mと、バスアクノリッジ
信号端子48の信号のネゲート時刻BANからカウント
を開始する、サイクル数カウンタ75の値を比較器77
で比較し、両値が一致した時刻BAでバス権要求生成回
路78が再びバス権要求信号端子49の信号をアサート
するようにする。
があれば、一度バス権を放棄した後再びバス権を要求す
るまでのサイクル数を設定する、非DMA転送サイクル
数設定レジスタ52′の設定値mと、バスアクノリッジ
信号端子48の信号のネゲート時刻BANからカウント
を開始する、サイクル数カウンタ75の値を比較器77
で比較し、両値が一致した時刻BAでバス権要求生成回
路78が再びバス権要求信号端子49の信号をアサート
するようにする。
【0036】本実施例では、DMA転送サイクル数設定
レジスタ51′、及び非DMA転送サイクル数設定レジ
スタ52′は、バス調停回路50内に存在するが、どこ
に存在してもかまわない。又、本発明は、バス要求を生
成するための構成に制限を与えるものではない。
レジスタ51′、及び非DMA転送サイクル数設定レジ
スタ52′は、バス調停回路50内に存在するが、どこ
に存在してもかまわない。又、本発明は、バス要求を生
成するための構成に制限を与えるものではない。
【0037】図4(a)は第3の実施例を示したもの
で、バスを介することなくDMAコントローラの動作を
中断できる機能に関する。図4(b)はその動作タイム
チャートを示す。
で、バスを介することなくDMAコントローラの動作を
中断できる機能に関する。図4(b)はその動作タイム
チャートを示す。
【0038】図1において、外部アボート入力端子43
がアサートされることによりDMAチャネルアボート信
号ライン38の信号がアサートし、全DMAコントロー
ラチャネルの動作を中断させる。図4(a)はDMAイ
ネーブルレジスタ83を示したもので、84はイネーブ
ルビットを示す。MPUによる書き込み動作によりセッ
ト信号85がアサートし、DMAイネーブルレジスタ8
3内のイネーブルビット84がセットされ、DMAコン
トローラはイネーブル状態となる。同時にバス権要求信
号端子49の信号がアサートし、MPUはバスアクノリ
ッジ信号端子48の信号をアサートして返し、DMAコ
ントローラにバス権を譲渡する。
がアサートされることによりDMAチャネルアボート信
号ライン38の信号がアサートし、全DMAコントロー
ラチャネルの動作を中断させる。図4(a)はDMAイ
ネーブルレジスタ83を示したもので、84はイネーブ
ルビットを示す。MPUによる書き込み動作によりセッ
ト信号85がアサートし、DMAイネーブルレジスタ8
3内のイネーブルビット84がセットされ、DMAコン
トローラはイネーブル状態となる。同時にバス権要求信
号端子49の信号がアサートし、MPUはバスアクノリ
ッジ信号端子48の信号をアサートして返し、DMAコ
ントローラにバス権を譲渡する。
【0039】一方、DMA転送サイクル中に外部アボー
ト入力端子43が時刻ABAでアサートされると、リセ
ット信号86がアサートし該イネーブルビット84がリ
セットされる。同時にバス権要求信号端子49が時刻B
RNにおいてネゲートする。以上述べたように、イネー
ブルビット84は、他のバスマスタ例えばMPUによる
書き込み動作、ハードウェアリセットによりリセットさ
れるが、外部アボート入力端子43によっても直接リセ
ットされる。このアボート入力によりDMAコントロー
ラがバス権を獲得しているか否かに関係なく、DMAコ
ントローラの動作を中断させることが可能となりユーザ
がソフトウェアを開発し易くなる。
ト入力端子43が時刻ABAでアサートされると、リセ
ット信号86がアサートし該イネーブルビット84がリ
セットされる。同時にバス権要求信号端子49が時刻B
RNにおいてネゲートする。以上述べたように、イネー
ブルビット84は、他のバスマスタ例えばMPUによる
書き込み動作、ハードウェアリセットによりリセットさ
れるが、外部アボート入力端子43によっても直接リセ
ットされる。このアボート入力によりDMAコントロー
ラがバス権を獲得しているか否かに関係なく、DMAコ
ントローラの動作を中断させることが可能となりユーザ
がソフトウェアを開発し易くなる。
【0040】本実施例では、外部アボート入力端子43
がアサートされるとDMAコントローラ全チャネルが同
時に動作を中断するが、各チャネル毎に動作を中断する
ようにしてもかまわない。
がアサートされるとDMAコントローラ全チャネルが同
時に動作を中断するが、各チャネル毎に動作を中断する
ようにしてもかまわない。
【0041】図5(a)は第4の実施例を示すもので、
メモリ空間上のディスクリプタの再アクセス防止に関す
るものである。図5(b)はメモリ構成を示す。
メモリ空間上のディスクリプタの再アクセス防止に関す
るものである。図5(b)はメモリ構成を示す。
【0042】前出のものと同一もしくは同等物について
は同じ符号にて示す。また、全体の構成は図1とほぼ同
じであるので第3の実施例特有の構成についてのみの説
明にとどめる。
は同じ符号にて示す。また、全体の構成は図1とほぼ同
じであるので第3の実施例特有の構成についてのみの説
明にとどめる。
【0043】DMAコントローラチャネル18〜21は
それぞれオーナシップビット(OSB)判別回路22〜2
5,DMAコントローラチャネルのバス権要求生成回路
93〜96(図1に図示せず)から構成され、バス調停
回路50はバス権要求生成回路78,6ビットフリーラ
ンカウンタ97(図1に図示せず)から構成される。動
作についてメモリ構成を示す図5(b)を参照しながら
説明する。DMAコントローラは、まずメモリ空間上の
ディスクリプタ領域91をアクセスし、次のディスクリ
プタの先頭アドレスを示すチェインポインタ領域87,
データ転送を行うべきメモリ空間上のバッファの先頭ア
ドレスを示すバッファポインタ領域88,バッファポイ
ンタが示すメモリ空間上のバッファ内のデータに関する
送受信情報を示すステータス領域89、及び該バッファ
ポインタ領域88が示すメモリ空間上のバッファ内のデ
ータ長をバイト単位で示す、データ長領域90を読み込
み、バッファ領域92に対するデータ転送を開始する。
ステータス領域89をDMAコントローラが読み込んだ
時、該OSB判別回路22〜25が該ステータス領域8
9内オーナシップビットのセット/リセットを判別し、
セットされていれば該6ビットフリーランカウンタ97
の値がall1になるのを待つ。6ビットフリーランカ
ウンタ97の値がall1 になると、all1 を示す信号線
98がアサートして各DMAコントローラチャネルバス
権要求生成回路93〜96にバス権要求信号99〜10
2を出力させ、バス権要求生成回路78がバス権要求信
号49を発行する。この後再度ステータス89を読み込
み、オーナシップビットがMPUによりリセットされた
ことを確認した後データ転送を開始する。
それぞれオーナシップビット(OSB)判別回路22〜2
5,DMAコントローラチャネルのバス権要求生成回路
93〜96(図1に図示せず)から構成され、バス調停
回路50はバス権要求生成回路78,6ビットフリーラ
ンカウンタ97(図1に図示せず)から構成される。動
作についてメモリ構成を示す図5(b)を参照しながら
説明する。DMAコントローラは、まずメモリ空間上の
ディスクリプタ領域91をアクセスし、次のディスクリ
プタの先頭アドレスを示すチェインポインタ領域87,
データ転送を行うべきメモリ空間上のバッファの先頭ア
ドレスを示すバッファポインタ領域88,バッファポイ
ンタが示すメモリ空間上のバッファ内のデータに関する
送受信情報を示すステータス領域89、及び該バッファ
ポインタ領域88が示すメモリ空間上のバッファ内のデ
ータ長をバイト単位で示す、データ長領域90を読み込
み、バッファ領域92に対するデータ転送を開始する。
ステータス領域89をDMAコントローラが読み込んだ
時、該OSB判別回路22〜25が該ステータス領域8
9内オーナシップビットのセット/リセットを判別し、
セットされていれば該6ビットフリーランカウンタ97
の値がall1になるのを待つ。6ビットフリーランカ
ウンタ97の値がall1 になると、all1 を示す信号線
98がアサートして各DMAコントローラチャネルバス
権要求生成回路93〜96にバス権要求信号99〜10
2を出力させ、バス権要求生成回路78がバス権要求信
号49を発行する。この後再度ステータス89を読み込
み、オーナシップビットがMPUによりリセットされた
ことを確認した後データ転送を開始する。
【0044】本実施例では、一定時間待つために、6ビ
ットのフリーランカウンタを使用しているが、この待ち
サイクル数は任意であってよい。また、待たなくてもよ
い。本発明は待つための手段に何ら制限を与えるもので
はない。該ディスクリプタはチェインポインタ,バッフ
ァポインタ,ステータス、データ長領域で構成されてい
るが、他のいかなる構成でもよく、本発明はディスクリ
プタの構成に特に制限を与えるものではない。
ットのフリーランカウンタを使用しているが、この待ち
サイクル数は任意であってよい。また、待たなくてもよ
い。本発明は待つための手段に何ら制限を与えるもので
はない。該ディスクリプタはチェインポインタ,バッフ
ァポインタ,ステータス、データ長領域で構成されてい
るが、他のいかなる構成でもよく、本発明はディスクリ
プタの構成に特に制限を与えるものではない。
【0045】図6は第5の実施例を示すもので、各DM
Aコントローラのチャネルアドレス出力端子信号のタイ
ミングを説明するタイムチャートである。
Aコントローラのチャネルアドレス出力端子信号のタイ
ミングを説明するタイムチャートである。
【0046】本実施例では、DMAコントローラチャネ
ルは、チャネル0,チャネル1,チャネル2,チャネル
3の4個あるものとする。
ルは、チャネル0,チャネル1,チャネル2,チャネル
3の4個あるものとする。
【0047】DMA転送サイクル中のチャネル0,チャ
ネル1,チャネル2,チャネル3は、各DMAコントロ
ーラチャネルの内どのチャネルが動作しているかを示し
ている。通信制御装置がバス権を獲得したことを示す出
力端子104(図1に図示せず)は、DMAコントロー
ラがバスマスタとして動作している期間アサート(アク
ティブ‘L’レベル出力)したままである。チャネル0
のチャネルアドレス出力信号44はチャネル0のDMA
転送サイクル期間アサートする。同様に、チャネル1の
チャネルアドレス出力信号45,チャネル2のチャネル
アドレス出力信号46,チャネル3のチャネルアドレス
出力信号47は同様にそれぞれチャネル1,チャネル
2,チャネル3のDMA転送サイクルの期間アサート
(アクティブ‘L’レベル出力)する。本実施例では各
DMAコントローラチャネルに対応した端子からチャネ
ル指示信号が出力されるので外付けの回路(デコーダ)
が不要である特徴を持つ。
ネル1,チャネル2,チャネル3は、各DMAコントロ
ーラチャネルの内どのチャネルが動作しているかを示し
ている。通信制御装置がバス権を獲得したことを示す出
力端子104(図1に図示せず)は、DMAコントロー
ラがバスマスタとして動作している期間アサート(アク
ティブ‘L’レベル出力)したままである。チャネル0
のチャネルアドレス出力信号44はチャネル0のDMA
転送サイクル期間アサートする。同様に、チャネル1の
チャネルアドレス出力信号45,チャネル2のチャネル
アドレス出力信号46,チャネル3のチャネルアドレス
出力信号47は同様にそれぞれチャネル1,チャネル
2,チャネル3のDMA転送サイクルの期間アサート
(アクティブ‘L’レベル出力)する。本実施例では各
DMAコントローラチャネルに対応した端子からチャネ
ル指示信号が出力されるので外付けの回路(デコーダ)
が不要である特徴を持つ。
【0048】本実施例では、DMAコントローラが4チ
ャネル存在したため、各チャネルに対応したチャネルア
ドレス出力は4本であったが、本発明では、2本の端子
からバイナリ信号を出力してもよく、DMAコントロー
ラのチャネル数,各チャネルに対応したチャネルアドレ
ス出力の方法に何ら制限を与えるものではない。
ャネル存在したため、各チャネルに対応したチャネルア
ドレス出力は4本であったが、本発明では、2本の端子
からバイナリ信号を出力してもよく、DMAコントロー
ラのチャネル数,各チャネルに対応したチャネルアドレ
ス出力の方法に何ら制限を与えるものではない。
【0049】図1に第1の実施例として示した、通信制
御装置本体1を通信システムに適用した第6の実施例を
図7に示す。
御装置本体1を通信システムに適用した第6の実施例を
図7に示す。
【0050】113は通信システム、111はMPU、
110はリードオンリメモリ(以下ROMと略す)、1
09はランダムアクセスメモリ(以下RAMと略す)、1
−1〜1−4は通信制御装置、112はこれらを接続す
るシステムバスである。また、Rx1〜Rx8はそれぞ
れ通信回線RD1〜RD8からの受信データを復調する
受信変換回路、Tx1〜Tx8は送信データ2,5をそ
れぞれ通信回線TD1〜TD8に出力する送信変換回路
である。MPU111は、ROM110内のプログラムに従い、シス
テムバス112に接続される他のバススレーブの制御を
行う。通信制御装置1−1〜1−4は、MPU111によりバ
ス権を与えられるとシステムバス112のバスマスタと
なり、システムバス112を介してRAM109との間でのデ
ータ転送を行う。すなわち、送信データの生成(MPU
によるRAMへのデータ書き込み)、RAMに転送され
る受信データの解釈を行う。
110はリードオンリメモリ(以下ROMと略す)、1
09はランダムアクセスメモリ(以下RAMと略す)、1
−1〜1−4は通信制御装置、112はこれらを接続す
るシステムバスである。また、Rx1〜Rx8はそれぞ
れ通信回線RD1〜RD8からの受信データを復調する
受信変換回路、Tx1〜Tx8は送信データ2,5をそ
れぞれ通信回線TD1〜TD8に出力する送信変換回路
である。MPU111は、ROM110内のプログラムに従い、シス
テムバス112に接続される他のバススレーブの制御を
行う。通信制御装置1−1〜1−4は、MPU111によりバ
ス権を与えられるとシステムバス112のバスマスタと
なり、システムバス112を介してRAM109との間でのデ
ータ転送を行う。すなわち、送信データの生成(MPU
によるRAMへのデータ書き込み)、RAMに転送され
る受信データの解釈を行う。
【0051】MPU111は、4ケの通信制御装置1−1〜1
−4に対応したバスアクノリッジを備え、いずれかの通
信制御装置1−1〜1−4にバス権を与える制御を行
う。バス権が与えられた通信制御装置は通信回線とRA
Mとの間でDMAデータ転送を行う。本構成例では上記
実施例で述べた特徴を有する、多チャネル通信回線間の
パケット交換、ATM通信におけるセル交換を実現する
ことができる。
−4に対応したバスアクノリッジを備え、いずれかの通
信制御装置1−1〜1−4にバス権を与える制御を行
う。バス権が与えられた通信制御装置は通信回線とRA
Mとの間でDMAデータ転送を行う。本構成例では上記
実施例で述べた特徴を有する、多チャネル通信回線間の
パケット交換、ATM通信におけるセル交換を実現する
ことができる。
【0052】本実施例では、通信制御装置本体を4ケ描
いてあるが、数に制限を与えるものではない。又、MP
Uは、バスアクノリッジを各通信制御装置本体に対応し
て備えずに、他のいかなる制御方法をとってもかまわな
い。更に本実施例では、ROM,RAM、MPUを各1ケず
つ描いてあるが、数に制限を与えるものではなく、いか
なる組み合わせの構成にしてもよい。基盤113を複数
設けて、他の何らかの制御装置を用いて制御する構成に
してもかまわない。
いてあるが、数に制限を与えるものではない。又、MP
Uは、バスアクノリッジを各通信制御装置本体に対応し
て備えずに、他のいかなる制御方法をとってもかまわな
い。更に本実施例では、ROM,RAM、MPUを各1ケず
つ描いてあるが、数に制限を与えるものではなく、いか
なる組み合わせの構成にしてもよい。基盤113を複数
設けて、他の何らかの制御装置を用いて制御する構成に
してもかまわない。
【0053】
【発明の効果】本発明によれば、送信中のアンダラン,
受信中のオーバランの発生を低減でき、データの再転送
率を低下させることによりシステム全体のスループット
向上、及び信頼性の向上が図れる効果がある。
受信中のオーバランの発生を低減でき、データの再転送
率を低下させることによりシステム全体のスループット
向上、及び信頼性の向上が図れる効果がある。
【0054】また、ソフトウェアの負担を軽減でき、又
ハードウェアとソフトウェアの分担を自由に設定可能
で、個々の応用に応じて最適なシステムを構築すること
ができる効果がある。
ハードウェアとソフトウェアの分担を自由に設定可能
で、個々の応用に応じて最適なシステムを構築すること
ができる効果がある。
【0055】以上によりユーザがソフトウェアを容易に
開発可能な通信制御装置を提供可能となる。
開発可能な通信制御装置を提供可能となる。
【図1】本発明の第1の実施例を示す通信制御装置のブ
ロック構成図である。
ロック構成図である。
【図2】第1の実施例を説明する動作フロー図である。
【図3】(a)は本発明の第2の実施例を示すブロック
構成図である。(b)は本発明の第2の実施例の動作を
示すタイムチャート図である。
構成図である。(b)は本発明の第2の実施例の動作を
示すタイムチャート図である。
【図4】(a)は本発明の第3の実施例を示すブロック
構成図である。(b)は本発明の第3の実施例の動作を
説明するタイムチャート図である。
構成図である。(b)は本発明の第3の実施例の動作を
説明するタイムチャート図である。
【図5】(a)は本発明の第4の実施例を示すブロック
構成図である。(b)は本発明の第4の実施例の動作を
説明するタイムチャート図である。
構成図である。(b)は本発明の第4の実施例の動作を
説明するタイムチャート図である。
【図6】本発明の第5の実施例の動作を説明するタイム
チャート図である。
チャート図である。
【図7】本発明の第1の実施例における通信制御装置を
適用した、第6の実施例を示すブロック構成図である。
適用した、第6の実施例を示すブロック構成図である。
1…通信制御装置、6,9…送信器、7,8…受信器、
10,13…送信FIFO、11,12…受信FIFO、1
8〜21…DMAコントローラチャネル、22〜25…
オーナシップビット判別回路、26…DMAチャンネル
から送信FIFO10へのデータバス、27…受信FIFO1
1からDMAチャンネルへのデータバス、28…受信F
IFO12からDMAチャンネルへのデータバス、29
…DMAチャンネルから送信FIFO13へのデータバ
ス、30,33…内部データバスから送信DMAチャン
ネルのバス、31,32…受信DMAチャンネルから内
部データバスへのバス、34〜37…チャンネル選択信
号線、38…DMAチャンネルアボート信号ライン、3
9…外部メモリ、40…外部バス、41…バスインター
フェイス、42…内部データバス、43…外部アボート
入力端子、44〜47…チャネルアドレス出力信号端
子、48…バスアクノリッジ信号端子、49…バス権要
求信号端子、50…バス調停回路、51…DMA転送サ
イクル期間制御回路、52…非DMA転送サイクル期間
制御回路、65〜68…ディスクリプタ/バッファ転送
状態保持回路、69…DMA転送サイクル数、70…バ
スアクノリッジアサート期間、74…DMA転送サイク
ル数カウンタ、75…サイクル数カウンタ、76,77
…比較器、78…バス権要求生成回路、83…DMAイ
ネーブルレジスタ、84…イネーブルビット、87…チ
ェインポインタ領域、88…バッファポインタ領域、8
9…ステータス領域、90…データ長領域、91…ディ
スクリプタ領域、92…バッファ領域、93〜96…バ
ス権要求生成回路、97…6ビットフリーランカウン
タ、109…RAM、110…ROM、111…MP
U、112…システムバス、113…通信システム、R
x1〜Rx8…受信データ復調回路、Tx1〜Tx8…送
信データ変換回路。
10,13…送信FIFO、11,12…受信FIFO、1
8〜21…DMAコントローラチャネル、22〜25…
オーナシップビット判別回路、26…DMAチャンネル
から送信FIFO10へのデータバス、27…受信FIFO1
1からDMAチャンネルへのデータバス、28…受信F
IFO12からDMAチャンネルへのデータバス、29
…DMAチャンネルから送信FIFO13へのデータバ
ス、30,33…内部データバスから送信DMAチャン
ネルのバス、31,32…受信DMAチャンネルから内
部データバスへのバス、34〜37…チャンネル選択信
号線、38…DMAチャンネルアボート信号ライン、3
9…外部メモリ、40…外部バス、41…バスインター
フェイス、42…内部データバス、43…外部アボート
入力端子、44〜47…チャネルアドレス出力信号端
子、48…バスアクノリッジ信号端子、49…バス権要
求信号端子、50…バス調停回路、51…DMA転送サ
イクル期間制御回路、52…非DMA転送サイクル期間
制御回路、65〜68…ディスクリプタ/バッファ転送
状態保持回路、69…DMA転送サイクル数、70…バ
スアクノリッジアサート期間、74…DMA転送サイク
ル数カウンタ、75…サイクル数カウンタ、76,77
…比較器、78…バス権要求生成回路、83…DMAイ
ネーブルレジスタ、84…イネーブルビット、87…チ
ェインポインタ領域、88…バッファポインタ領域、8
9…ステータス領域、90…データ長領域、91…ディ
スクリプタ領域、92…バッファ領域、93〜96…バ
ス権要求生成回路、97…6ビットフリーランカウン
タ、109…RAM、110…ROM、111…MP
U、112…システムバス、113…通信システム、R
x1〜Rx8…受信データ復調回路、Tx1〜Tx8…送
信データ変換回路。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 市毛 啓司 茨城県日立市幸町三丁目1番1号 株式会 社日立製作所日立工場内 (72)発明者 渡邊 泰夫 茨城県日立市幸町三丁目1番1号 株式会 社日立製作所日立工場内 (72)発明者 久保木 茂雄 茨城県日立市幸町三丁目1番1号 株式会 社日立製作所日立工場内 (72)発明者 古橋 健司 茨城県日立市幸町三丁目1番1号 株式会 社日立製作所日立工場内 (72)発明者 松下 裕二 茨城県日立市幸町三丁目2番1号 日立エ ンジニアリング株式会社内 (72)発明者 土佐 明 茨城県日立市弁天町三丁目10番2号 日立 原町電子工業株式会社内 (72)発明者 穂満 慶彰 茨城県日立市幸町三丁目2番1号 日立エ ンジニアリング株式会社内
Claims (7)
- 【請求項1】送信器,受信器,メモリ装置及び該送信/
受信器と該メモリ装置間でデータバスを介してダイレク
トメモリアクセス(DMA)データ転送を行う多チャネ
ルのDMAコントローラと、 第1のDMAコントローラチャネルがバスマスタとして
動作中に、前記第1のDMAコントローラチャネルより
も優先順位の高い第2のDMAコントローラチャネルの
バス権要求に対して、前記第1のDMAコントローラチ
ャネルが直ちにバス権を放棄する手段と、 前記放棄直前の前記第1のDMAコントローラチャネル
動作状態を記憶,保持する手段とを備え、 前記第1のDMAコントローラチャネルにバス権が復帰
した時、前記動作状態からDMA転送を継続して再開す
ることを特徴とする通信制御装置。 - 【請求項2】送信器,受信器,メモリ装置及び該送信/
受信器と該メモリ装置間でデータバスを介してDMAデ
ータ転送を行うDMAコントローラを備えた通信制御装
置において、 前記メモリ装置は少なくとも複数の送受信データ格納領
域(バッファ)と前記送受信データ格納領域の各々に関
する情報を格納する領域(ディスクリプタ)を有し、前
記DMAコントローラは前記ディスクリプタの読み出し
及び書き込みを終了したことを示す、ディスクリプタ内
に設けられたオーナシップビットをセットし、かつ他の
バスマスタ又はホストプロセッサが前記送受信データの
処理終了後、前記オーナシップビットをリセットするこ
とを特徴とする通信制御装置。 - 【請求項3】請求項2記載の通信制御装置において、前
記DMAコントローラによる前記ディスクリプタへの前
記オーナシップビットのセット機能を有効にするか無効
にするかを選択することが可能な選択手段を設けたこと
を特徴とする通信制御装置。 - 【請求項4】送信器,受信器,メモリ装置及び該送信/
受信器と該メモリ装置間でデータバスを介してDMAデ
ータ転送を行うDMAコントローラを備え、DMA転送
サイクル長を任意に設定する手段を有することを特徴と
する通信制御装置。 - 【請求項5】送信器,受信器,メモリ装置及び該送信/
受信器と該メモリ装置間でデータバスを介してDMAデ
ータ転送を行うDMAコントローラを備え、前記DMA
コントローラが一度バス権を放棄した後、再び前記DM
Aコントローラがバス権を要求するまでのサイクル数を
任意に設定する手段を有することを特徴とする通信制御
装置。 - 【請求項6】送信器,受信器,メモリ装置及び該送信/
受信器と該メモリ装置間でデータバスを介してDMAデ
ータ転送を行うDMAコントローラを備え、前記DMA
コントローラの動作を中断する外部指示信号を入力する
DMAアボート入力端子を有することを特徴とする通信
制御装置。 - 【請求項7】送信器,受信器,メモリ装置及び該送信/
受信器と該メモリ装置間でデータバスを介してDMAデ
ータ転送を行う多チャネルのDMAコントローラを備
え、バス権を獲得している前記DMAコントローラチャ
ネルを識別するチャネルアドレスを出力する出力端子を
有することを特徴とする通信制御装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6299996A JPH09259071A (ja) | 1996-03-19 | 1996-03-19 | 通信制御装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6299996A JPH09259071A (ja) | 1996-03-19 | 1996-03-19 | 通信制御装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH09259071A true JPH09259071A (ja) | 1997-10-03 |
Family
ID=13216596
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP6299996A Pending JPH09259071A (ja) | 1996-03-19 | 1996-03-19 | 通信制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH09259071A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009277096A (ja) * | 2008-05-15 | 2009-11-26 | Fuji Xerox Co Ltd | Dma制御システム、印刷装置、および転送指示プログラム |
US8412864B2 (en) | 2005-04-13 | 2013-04-02 | Sony Corporation | Information processing apparatus and information processing method |
-
1996
- 1996-03-19 JP JP6299996A patent/JPH09259071A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8412864B2 (en) | 2005-04-13 | 2013-04-02 | Sony Corporation | Information processing apparatus and information processing method |
JP2009277096A (ja) * | 2008-05-15 | 2009-11-26 | Fuji Xerox Co Ltd | Dma制御システム、印刷装置、および転送指示プログラム |
US8065448B2 (en) | 2008-05-15 | 2011-11-22 | Fuji Xerox Co., Ltd. | DMA control system, printing apparatus, transfer instruction method and computer readable medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20050193155A1 (en) | Data transfer apparatus and transfer control program | |
JP4008987B2 (ja) | バス通信システム及びバス調停方法並びにデータ転送方法 | |
CA2223930C (en) | Burst-broadcasting on a peripheral component interconnect bus | |
US20120042105A1 (en) | Bus arbitration apparatus | |
US6289406B1 (en) | Optimizing the performance of asynchronous bus bridges with dynamic transactions | |
KR100231897B1 (ko) | 디엠에이 채널의 사이즈 데이터를 수신하는 디엠에이 제어회로 | |
US6282598B1 (en) | PCI bus system wherein target latency information are transmitted along with a retry request | |
US6397279B1 (en) | Smart retry system that reduces wasted bus transactions associated with master retries | |
US7013357B2 (en) | Arbiter having programmable arbitration points for undefined length burst accesses and method | |
US20020184453A1 (en) | Data bus system including posted reads and writes | |
WO1995020192A1 (en) | Bus deadlock avoidance during master split-transactions | |
KR930002787B1 (ko) | 주변 제어기와 어댑터 인터페이스 | |
JP4313607B2 (ja) | バス接続回路及びバス接続システム | |
JP4198376B2 (ja) | バスシステム及びバスシステムを含む情報処理システム | |
KR100480605B1 (ko) | 네트워크 제어기의 송신부 버퍼 및 수신부 버퍼를제어하는 방법 및 네트워크 제어기 | |
US6721833B2 (en) | Arbitration of control chipsets in bus transaction | |
US5937206A (en) | System for converting states of DMA requests into first serial information and transmitting information to first bus whenever a state change of a request | |
JP3602435B2 (ja) | 制御チップセット間におけるデータトランザクション方法 | |
JPH1040215A (ja) | Pciバス・システム | |
JPH09259071A (ja) | 通信制御装置 | |
JPH07200432A (ja) | データ通信方法及びシステム連結装置 | |
JP2546901B2 (ja) | 通信制御装置 | |
US7117281B1 (en) | Circuit, system, and method for data transfer control for enhancing data bus utilization | |
JP4097377B2 (ja) | マイクロコンピュータ | |
JP2017004092A (ja) | 集積回路間のシリアル通信システム |