JP2004110159A - データ転送制御装置 - Google Patents
データ転送制御装置 Download PDFInfo
- Publication number
- JP2004110159A JP2004110159A JP2002268695A JP2002268695A JP2004110159A JP 2004110159 A JP2004110159 A JP 2004110159A JP 2002268695 A JP2002268695 A JP 2002268695A JP 2002268695 A JP2002268695 A JP 2002268695A JP 2004110159 A JP2004110159 A JP 2004110159A
- Authority
- JP
- Japan
- Prior art keywords
- descriptor
- area
- data transfer
- data
- storing
- 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
Images
Landscapes
- Bus Control (AREA)
Abstract
【解決手段】ディスクリプタ8の領域8aはネクストディスクリプタポインタを格納し、それによって次のデータの処理指定をするディスクリプタを指定し、領域8bは送信元アドレスを格納し、それによってDMA転送するデータが格納されたアドレスを指定し、領域8cはディスクリプタ有効ビットを格納し、それによってディスクリプタが有効であるか否かを指定し、領域8dは割り込みモードや転送バイト数を格納し、それに基づいて割り込みモードや転送バイト数などを指定し、5WORD目の領域8eにIDナンバを格納し、そのIDナンバによって使用しているディスクリプタを判別することができる。
【選択図】 図3
Description
【発明の属する技術分野】
この発明は、ダイレクト・メモリ・アクセス(DMA)転送方式でデータ転送を行うデータ転送制御装置に関する。
【0002】
【従来の技術】
従来、複写装置,ファクシミリ装置,プリント装置(プリンタ),画像読取装置(スキャナ)等の画像形成装置等の各種機器において、メモリに対してDMAデータ転送方式でデータの入出力を制御するデータ転送制御装置が用いられている(例えば、特許文献1参照)。
図5は、従来のデータ転送制御装置におけるDMAデータ転送方式の説明図である。
図6は、図5に示した各ディスクリプタのフォーマットを示す説明図である。
図7は、同じ形式で機能の異なる2つのDAMCを示す説明図である。
【0003】
従来のデータ転送制御装置は、DMA制御装置(DMAコントローラ:DMAC)とRAM(メモリ)からなり、図5に示すように、RAM20内には複数のディスクリプタ(ディスクリプタ領域)21a〜21n(nは正の整数)が設けられている。各ディスクリプタ21a〜21n内は、図6に示すように、「ネクストディスクリプタポインタ」「送信元アドレス」「ディスクリプタ有効ビット」「割り込みモード,転送バイト数」の4ワード(WORD)で構成されたディスクリプタ情報を格納している。
【0004】
DMAコントローラは、CPUからDMAデータ転送が指示されると、図5に示すように、第1ディスクリプタ21aの送信元アドレスと割り込みモード,転送バイト数を読み込み、その送信元アドレスのデータ領域にあるデータ22aをデータ転送する。その後、第1ディスクリプタ21aのネクストディスクリプタポインタから次のディスクリプタ情報の読み込み先である第2ディスクリプタ21bにアクセスし、その送信元アドレスと割り込みモード,転送バイト数を読み込み、上述と同様にしてデータ22bをデータ転送する。このようにして、第1ディスクリプタ21aから最終の第nディスクリプタ21nまでチェイン(chain)のようにたどって連続的にデータ転送を行う。
【0005】
また、図7の(a)と(b)に示すように、RAMに設けられたディスクリプタが4つであって同じ形式であるがその機能がそれぞれ異なる場合がある。同図の(a)ではディスクリプタ▲1▼〜▲4▼からなって機能1を有し、同図の(b)ではディスクリプタA〜Dからなって機能2を有する。
【0006】
【特許文献1】
特開平11−232211号公報
【0007】
【発明が解決しようとする課題】
しかしながら、従来のデータ転送制御装置では、データをDMA転送処理する際にどのディスクリプタが使われているのかを判断するためには、各ディスクリプタのチェインのように結びつけているアドレスをたどる必要があり、そのアドレスは大小の比較ではないので、デバッグ時にどのディスクリプタを使用しているのかを判断し難くて効率的でないという問題があった。
また、同じ形式で機能の異なるDMACの場合、ディスクリプタの使用順序を判断することができないという問題もあった。
この発明は上記の課題を解決するためになされたものであり、DMAデータ転送時にどのディスクリプタを使用しているのかを容易に判断できるようにすることを目的とする。
【0008】
【課題を解決するための手段】
この発明は上記の目的を達成するため、メモリ上に作成した複数のディスクリプタにそれぞれ格納されたディスクリプタ情報を参照し、各ディスクリプタを順にたどりながらそれぞれのディスクリプタによって指定された格納先からデータを読み出して連続的にデータを転送する制御を行う制御部を有するデータ転送制御装置において、上記メモリの各ディスクリプタにデバッグにおいて使用したディスクリプタを判別し易くするための個別の識別ナンバを格納する領域を設けたものである。
【0009】
また、上記のようなデータ転送制御装置において、上記メモリの各ディスクリプタにそれぞれの機能毎のディスクリプタの使用された順番を判断するための使用履歴ナンバを格納する領域を設けるとよい。
さらに、上記のようなデータ転送制御装置において、上記制御部に、それぞれ機能毎のディスクリプタの使用された順番を判断するための使用履歴ナンバを加算して保持する手段と、その各手段にそれぞれ保持された各使用履歴ナンバを加算して保持する手段を設け、その手段に保持した使用履歴ナンバを上記使用履歴ナンバを格納する領域に書き込むようにするとよい。
【0010】
【発明の実施の形態】
以下、この発明の実施形態を図面に基づいて具体的に説明する。
図1は、この発明の一実施形態であるデータ転送制御装置の構成を示すブロック図である。
図2は、図1に示したDMAC1内の構成を示すブロック図である。
図3は、図1に示したディスクリプタのフォーマットを示す図である。
図4は、各機能毎のディスクリプタに使用履歴ナンバを格納する領域を設けたときのフォーマットを示す図である。
【0011】
このデータ転送制御装置は、図1に示すように、DMA制御装置(DMAコントローラ:DMAC)1とRAM(メモリ)2からなり、DMAC1はディスクリプタ制御回路3と加算部4を有し、メモリ2上に作成した複数のディスクリプタにそれぞれ格納されたディスクリプタ情報を参照し、各ディスクリプタを順にたどりながらそれぞれのディスクリプタによって指定された格納先からデータを読み出して連続的にデータを転送する制御を行う制御部の機能を果たす。
【0012】
加算部4は、図2に示すように、それぞれ機能毎のディスクリプタの使用された順番を判断するための使用履歴ナンバのVALIDリセット信号を加算する加算回路4a〜4dと、各加算回路4a〜4dで加算されたVALIDリセット信号をそれぞれ保持するカウントレジスタ5a〜5dと、各カウントレジスタ5a〜5dにそれぞれ保持された各使用履歴ナンバのVALIDリセット信号を加算する加算回路6と、加算回路6によって加算された全VALIDリセット信号の加算値を保持するカウントレジスタ7を有し、そのカウントレジスタ7に保持した全VALIDリセット信号の加算値をディスクリプタの使用履歴ナンバの格納領域に書き込む。
【0013】
ディスクリプタ8は、図3に示すように、ネクストディスクリプタポインタを格納する領域8a,送信元アドレスを格納する領域8b,ディスクリプタ有効ビットを格納する領域8c,割り込みモード,転送バイト数を格納する領域8d,IDナンバを格納する領域8e,使用履歴ナンバを格納する領域8fからなる。すなわち、上記IDナンバを格納する領域8eが、メモリの各ディスクリプタにデバッグにおいて使用したディスクリプタを判別し易くするための個別の識別ナンバを格納する領域に相当する。
また、上記使用履歴ナンバを格納する領域8fが、メモリの各ディスクリプタにそれぞれの機能毎のディスクリプタの使用された順番を判断するための使用履歴ナンバを格納する領域に相当する。
【0014】
ディスクリプタ8の1WORD目はネクストディスクリプタポインタを格納する領域8aであり、そのネクストディスクリプタポインタによって次のデータの処理指定をするディスクリプタを指定する。2WORD目は送信元アドレスを格納する領域8bであり、その送信元アドレスによってDMA転送するデータが格納されたアドレスを指定する。3WORD目はディスクリプタ有効ビットを格納する領域8cであり、そのディスクリプタ有効ビットによってディスクリプタが有効であるか否かを指定する。4WORD目は割り込みモードや転送バイト数を格納する領域8dであり、そのデータに基づいて割り込みモードや転送バイト数などを指定する。
【0015】
また、5WORD目にIDナンバを格納する領域8eを新たに設けており、そのIDナンバによって使用しているディスクリプタを判別することができ、どのディスクリプタが意図したものであるか明確に区別することができる。
つまり、ディスクリプタとそのディスクリプタが指定するデータのアドレスが連続していないためにデバッグ時に判別し難いため、ディスクリプタにIDナンバを格納することにより、どのディスクリプタがどのデータに対応しているか判別し易くなる。
このIDナンバの上位何ビットかを機能別IDナンバなどに利用することにより、機能毎に異なったディスクリプタに機能別のIDナンバを割り振ることができ、機能毎のディスクリプタとデータの判別も行うことができ、デバッグ時にどの機能のディスクリプタが使用されているのかを判別し易くなる。
【0016】
さらに、6WORD目に使用履歴ナンバを格納する領域8fを新たに設けており、その使用履歴ナンバは、DMAC1から送られるVALIDリセット信号をDMAC1で加算していったものを書き込む領域である。
使用履歴ナンバの格納領域(レジスタ)は、デフォルト「0x00000000」で「0xffffffff」になると「0」に書き戻される。
VALIDリセット信号は、そのディスクリプタが使用されるとDMAC1から0が書き込まれる。つまり、そのディスクリプタが使用されるとカウントを1つ増やして使用履歴ナンバに書き込む。
そして、この使用履歴ナンバの値によって使用したディスクリプタの順番を知ることができる。
【0017】
つまり、有効でかつ未使用のディスクリプタはVALID bit=1、使用後は(chainしたとき)使用後VALID bit=0と同時に使用ディスクリプタナンバにカウント値を書き込む(ライトする)。
こうして、使用しているディスクリプタの順番を機能が別であっても知ることができる。
【0018】
このデータ転送制御装置は、各加算回路4a〜4dがそれぞれ機能毎のディスクリプタの使用された順番を判断するための使用履歴ナンバのVALIDリセット信号を加算すると、それぞれカウントレジスタ5a〜5dに保持し、加算回路6が各カウントレジスタ5a〜5dにそれぞれ保持された各使用履歴ナンバのVALIDリセット信号を加算すると、カウントレジスタ7に保持し、そのカウントレジスタ7に保持した全VALIDリセット信号の加算値をディスクリプタの使用履歴ナンバの格納領域に書き込む。
【0019】
例えば、図4に示すように、それぞれ異なる機能1と機能2の各ディスクリプタ9と10にそれぞれ異なる使用履歴ナンバをつけることにより、機能が異なるディスクリプタの使用順序も判別することができる。
また例えば、MACの受信と送信を行う際、それぞれの送信DMAC,送信ディスクリプタ,受信DMAC,受信ディスクリプタを用意しなければならない。ここで、機能▲1▼:送信DMAC,機能▲2▼:受信DMAC,送信ディスクリプタ3個,受信ディスクリプタ3個を用意し、そのMACのデバッグで全2重動作を確認したい場合、送信と受信がランダムにリードライトされていればよいが、通常の方法ではそれを判断することはできない。
【0020】
そこで、このデータ転送制御装置では、先ほどの使用履歴ナンバを参照すれば、どのようにディスクリプタが使用されてデータのやり取りが行われているかを知ることができる。
また、DMAC1内の機能毎のカウントレジスタを参照すれば、それぞれの機能でのデータのやり取りを知ることができ、アービタの機能を確認することができる。
例えば、機能▲1▼:セントロDMAC,機能▲2▼:MAC受信DMACをデバッグする際にDMAC1内の機能毎のカウントレジスタを読み取ることにより、各機能のデータがどれだけ優先度が高いかを知ることができる。
【0021】
このデータ転送制御装置は、ディスクリプタにIDナンバを付与しているので、デバッグ時にどのディスクリプタがどのデータを有しているなどの判断がつき易くなる。また、そのIDナンバは自由に設定できるので、そのディスクリプタのアドレスを書き込んだり、IDナンバを機能IDナンバ,ディスクリプタIDナンバなどに分けることによってデバッグの作業でのミスが起こり難くなる。
さらに、ディスクリプタの使用履歴ナンバを付与しているので、どのディスクリプタがいつ使用されているかが判断できるようになる。
したがって、DMACで機能の異なるディスクリプタを扱っても全てのVALID信号をインクリメントすることにより、どの機能のどこのディスクリプタが使用されているのかを判断することが容易になる。
さらにまた、各機能毎にレジスタを追加することにより、同時にそれぞれの機能を動作させたときにどの機能がどれだけデータのやり取りをしているかを判断することができる。
【0022】
【発明の効果】
以上説明してきたように、この発明のデータ転送制御装置によれば、DMAデータ転送時にどのディスクリプタを使用しているのかを容易に判断することができる。
【図面の簡単な説明】
【図1】この発明の一実施形態であるデータ転送制御装置の構成を示すブロック図である。
【図2】図1に示したDMAC1内の構成を示すブロック図である。
【図3】図1に示したディスクリプタのフォーマットを示す図である。
【図4】各機能毎のディスクリプタに使用履歴ナンバを格納する領域を設けたときのフォーマットを示す図である。
【図5】従来のデータ転送制御装置におけるDMAデータ転送方式の説明図である。
【図6】図5に示した各ディスクリプタのフォーマットを示す説明図である。
【図7】同じ形式で機能の異なる2つのDAMCを示す説明図である。
【符号の説明】
1:DMAC 2:RAM
3:ディスクリプタ制御回路 4:加算部
4a〜4d,6:加算回路
5a〜5d,7:カウントレジスタ
8:ディスクリプタ
8a:ネクストディスクリプタポインタを格納する領域
8b:送信元アドレスを格納する領域
8c:ディスクリプタ有効ビットを格納する領域
8d:割り込みモード,転送バイト数を格納する領域
8e:IDナンバを格納する領域
8f:使用履歴ナンバを格納する領域
9,10:使用履歴ナンバを格納する領域
Claims (3)
- メモリ上に作成した複数のディスクリプタにそれぞれ格納されたディスクリプタ情報を参照し、各ディスクリプタを順にたどりながらそれぞれのディスクリプタによって指定された格納先からデータを読み出して連続的にデータを転送する制御を行う制御部を有するデータ転送制御装置において、
前記メモリの各ディスクリプタにデバッグにおいて使用したディスクリプタを判別し易くするための個別の識別ナンバを格納する領域を設けたことを特徴とするデータ転送制御装置。 - 請求項1記載のデータ転送制御装置において、
前記メモリの各ディスクリプタにそれぞれの機能毎のディスクリプタの使用された順番を判断するための使用履歴ナンバを格納する領域を設けたことを特徴とするデータ転送制御装置。 - 請求項2記載のデータ転送制御装置において、
前記制御部に、それぞれ機能毎のディスクリプタの使用された順番を判断するための使用履歴ナンバを加算して保持する手段と、該各手段にそれぞれ保持された各使用履歴ナンバを加算して保持する手段を設け、該手段に保持した使用履歴ナンバを前記使用履歴ナンバを格納する領域に書き込むようにしたことを特徴とするデータ転送制御装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002268695A JP2004110159A (ja) | 2002-09-13 | 2002-09-13 | データ転送制御装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002268695A JP2004110159A (ja) | 2002-09-13 | 2002-09-13 | データ転送制御装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004110159A true JP2004110159A (ja) | 2004-04-08 |
Family
ID=32266853
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002268695A Pending JP2004110159A (ja) | 2002-09-13 | 2002-09-13 | データ転送制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004110159A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005339372A (ja) * | 2004-05-28 | 2005-12-08 | Hitachi Ltd | ダイレクトメモリアクセス転送制御装置及びそれを利用したシステム、並びにそのデバッグ支援方法及びシステム |
JP2006293800A (ja) * | 2005-04-13 | 2006-10-26 | Sony Corp | 情報処理装置、および情報処理方法 |
US7552249B2 (en) | 2004-12-24 | 2009-06-23 | Fujitsu Limited | Direct memory access circuit and disk array device using same |
-
2002
- 2002-09-13 JP JP2002268695A patent/JP2004110159A/ja active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005339372A (ja) * | 2004-05-28 | 2005-12-08 | Hitachi Ltd | ダイレクトメモリアクセス転送制御装置及びそれを利用したシステム、並びにそのデバッグ支援方法及びシステム |
US7552249B2 (en) | 2004-12-24 | 2009-06-23 | Fujitsu Limited | Direct memory access circuit and disk array device using same |
JP2006293800A (ja) * | 2005-04-13 | 2006-10-26 | Sony Corp | 情報処理装置、および情報処理方法 |
WO2006112270A1 (ja) * | 2005-04-13 | 2006-10-26 | Sony Corporation | 情報処理装置、および情報処理方法 |
US8412864B2 (en) | 2005-04-13 | 2013-04-02 | Sony Corporation | Information processing apparatus and information processing method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7171526B2 (en) | Memory controller useable in a data processing system | |
JP3641675B2 (ja) | 分割バッファアーキテクチュア | |
JP5217929B2 (ja) | 割込検出装置および情報処理システム | |
JP2004110159A (ja) | データ転送制御装置 | |
EP1267269A2 (en) | Apparatus and method for distribution of signals from a high level data link controller to multiple digital signal processor cores | |
JP2003186739A (ja) | 半導体記憶装置、制御装置及び半導体記憶装置の制御方法 | |
US20190121761A1 (en) | Bit Manipulation Capable Direct Memory Access | |
JP2002024157A (ja) | Dma処理方法およびdma処理装置 | |
JP4791341B2 (ja) | データ転送システム | |
JP2005190496A (ja) | データ転送方法及び装置 | |
JP5482302B2 (ja) | 情報処理装置、及び、情報処理方法 | |
JP2005258783A (ja) | データ転送装置、データ転送方法、画像形成装置及びオプションボード | |
JP2007334600A (ja) | 半導体集積回路装置 | |
JPH08212153A (ja) | 情報信号複写方法 | |
JP2008094011A (ja) | バッファ共有dma回路及び印刷装置 | |
JP2004320213A (ja) | 画像リングブリッジ方式、画像リングブリッジ装置 | |
JPH0567035A (ja) | Dma転送におけるデータアライメント方式 | |
JP2011118666A (ja) | 情報処理装置 | |
JPH07302239A (ja) | データ処理装置 | |
JPH05113948A (ja) | データ転送装置 | |
JPH07271517A (ja) | 情報処理装置 | |
KR19990069687A (ko) | 입출력 포트가 두 개인 메모리를 사용하여 데이터를송수신하는 상호연결망, 메모리 블럭 맵핑 방법 및 데이터송수신 방법 | |
JPH01195563A (ja) | バス制御装置 | |
JPH0628301A (ja) | ダイレクトメモリアクセス回路 | |
JP2005222469A (ja) | Dma転送制御システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Effective date: 20040916 Free format text: JAPANESE INTERMEDIATE CODE: A621 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070319 |
|
A131 | Notification of reasons for refusal |
Effective date: 20070424 Free format text: JAPANESE INTERMEDIATE CODE: A131 |
|
A521 | Written amendment |
Effective date: 20070625 Free format text: JAPANESE INTERMEDIATE CODE: A523 |
|
A02 | Decision of refusal |
Effective date: 20070717 Free format text: JAPANESE INTERMEDIATE CODE: A02 |