JP2002007311A - データ処理装置及びデータ処理方法 - Google Patents

データ処理装置及びデータ処理方法

Info

Publication number
JP2002007311A
JP2002007311A JP2000182269A JP2000182269A JP2002007311A JP 2002007311 A JP2002007311 A JP 2002007311A JP 2000182269 A JP2000182269 A JP 2000182269A JP 2000182269 A JP2000182269 A JP 2000182269A JP 2002007311 A JP2002007311 A JP 2002007311A
Authority
JP
Japan
Prior art keywords
access
data
bus
address
cpu
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
JP2000182269A
Other languages
English (en)
Inventor
Masami Suzuki
昌巳 鈴木
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 JP2000182269A priority Critical patent/JP2002007311A/ja
Publication of JP2002007311A publication Critical patent/JP2002007311A/ja
Withdrawn legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 バスの配線を必要最小限に抑えて各モジュー
ル間での通信を可能としながら、省電力で動作可能にす
る。 【解決手段】 マスター6は、第1及び第2の外部バス
2,3上のモジュール4 1,42,51,52と自己の間で
のデータの送受信を実行し、また、第1及び第2の外部
バス2,3上の各モジュール41,42,51,52同士の
データの送受信を実行させる。マスター6は、送信側及
び受信側のアドレス情報を外部バス2,3上に送出し
て、同一或いは異なる外部バス2,3上にあるモジュー
ル間での直接的なデータの送受信を可能としている。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、データを処理する
データ処理装置及びデータ処理方法に関し、詳しくは、
複数の処理手段の間でデータの転送を行うデータ処理装
置及びデータ処理方法に関する。
【0002】
【従来の技術】コンピュータシステム(或いはデータ処
理システム)は、例えば、複数のモジュール(例えば、
CPU、ペリフェラルチップ或いはプロセッサ等)を備
え、各種の処理を実現している。このようなコンピュー
タシステムでは、通常、各モジュールはバスによりデー
タの送受信等を行っている。例えば、マルチプロセッサ
・コンピュータ・システムは、複数のモジュールを統合
して、単一モジュールがもたらす能力を上回る処理能力
を増強している。
【0003】例えば、このようなシステムにおいて、モ
ジュール間でデータを転送する際には、調停を行う必要
があった。例えば、調停により、モジュールの反応速度
やデータ幅が決定される。
【0004】また、調停の手法としては、ハンドシェイ
クによるものが挙げられる。ハンドシェイクでは、例え
ば、CPU(マスター)が、バス(ハンドシェイク用の
制御信号線)を介してアドレスを送信するといったよう
にアドレスを指定する処理をした後に、ターゲット(Ta
rget)アドレスを持つ対話相手となるペリフェラルチッ
プ(スレーブ)が、アクセス準備完了の信号をCPUに
返すといったような処理がなされる。このようなハンド
シェイクにより、CPUの方が処理速度が速いような場
合にスレーブチップが処理開始可能となるまで、待つこ
とが可能とされ、また、CPUとペリフェラルチップと
の扱うデータ幅が異なるような場合に、両者に共通する
ようなデータ幅に調整するような処理がなされていた。
例えば、ARM社のAMBA BUSやMIPS社のBUS、PCI B
US等は、スレーブの反応速度やデータ幅をハンドシェイ
ク信号により決定している。
【0005】
【発明が解決しようとする課題】ところで、上述したよ
うに、調停は、ハンドシェイク制御信号用の専用の信号
線を用意して行われていた。しかし、基板上或いはウェ
ハ上に信号線を設けることは、その面積の増大につなが
る。また、ハンドシェイク制御信号を送るといったよう
に予め制御信号を送って調停をすると、実際のアクセス
(処理開始)までに遅延(Latency)が生じてしまう。
【0006】そこで、本発明は、上述の実情に鑑みてな
されたものであり、ハンドシェイク制御信号等の調停の
ための制御信号を送ることなく、各モジュール間でデー
タの転送を行うことができるデータ処理装置及びデータ
処理方法を提供することを目的としている。
【0007】
【課題を解決するための手段】本発明に係るデータ処理
装置は、上述の課題を解決するために、アドレス空間に
割り付けられたアクセス領域と、アクセス領域へのアク
セス条件とが対応付けされたアクセス条件テーブルが記
憶される記憶手段と、アクセス条件テーブルに基づい
て、アクセス領域に、対応付けされたアクセス条件に基
づいてアクセスするアクセス制御手段とを備える。この
ような構成を備えたデータ処理装置は、アドレス空間に
割り付けられたアクセス領域と、アクセス領域へのアク
セス条件とが対応付けされたアクセス条件テーブルに基
づいて、アクセス制御手段により、アクセス領域に、対
応付けされたアクセス条件に基づいてアクセスする。
【0008】このデータ処理装置は、アクセス条件の異
なるアクセス領域に対して、アクセス条件テーブルにあ
る条件に応じてアクセスする。
【0009】また、本発明に係るデータ処理方法は、上
述の課題を解決するために、アドレス空間に割り付けら
れたアクセス領域と、アクセス領域へのアクセス条件と
が対応付けされたアクセス条件テーブルに基づいて、ア
クセス領域に、対応付けされたアクセス条件に基づいて
アクセスする。
【0010】このデータ処理方法は、アクセス条件の異
なるアクセス領域に対して、アクセス条件テーブルにあ
る条件に応じてアクセスする。
【0011】
【発明の実施の形態】以下、本発明の実施の形態につい
て図面を用いて詳しく説明する。この実施の形態は、本
発明を、データ処理システムに適用したものである。例
えば、このようなデータ処理システムは、いわゆるカム
コーダに適用することができる。
【0012】図1に示すように、データ処理システム
は、主処理手段であるCPU部(CPUチップ)1と、
従属処理手段である複数のペリフェラルチップ21
2,23,24と、CPU部1とペリフェラルチップ
1,22,23,24との間でデータ転送を行うための外
部バス3とを備えている。
【0013】CPU部1は、データ処理システム全体を
制御する部分である。例えば、CPU部1として、RI
SC(Reduced Instruction Set Computer)が挙げられ
る。そして、CPU部1は、各ペリフェラルチップ
1,22,23,24を制御することができ、例えば、各
ペリフェラルチップ21,22,23,24との間でデータ
転送処理を行うことができる。例えば、CPU部1とペ
リフェラルチップ21,22,23,24の関係について
は、マスターとスレーブといった関係にある。
【0014】また、後で詳述するが、CPU部1は、ア
ドレス空間に割り付けられたアクセス領域とアクセス領
域へのアクセス条件とが対応付けされたアクセス条件テ
ーブルに基づいて、アクセス領域に、対応付けされたア
クセス条件に基づいてアクセスするアクセス制御手段と
しての機能を有している。ここで、アクセス領域とは、
例えば、ペリフェラルチップのメモリー領域等である。
【0015】具体的には、CPU部1は、図1に示すよ
うに、CPU11、バスインタープリタ12及び外部バ
スインターフェース13を備えており、CPU11によ
り内部バス14を介してバスインタープリタ12及びバ
スインターフェース13を制御している。ここで、バス
インタープリタ12は、外部バス(External BUS)3全
体を制御する部分であり、また、外部バスインターフェ
ース13は、外部バス3のプロトコルを実現する部分で
ある。
【0016】また、CPU部1の内部には、周辺回路部
としてのペリフェラル15があり、これもCPU11に
より内部バス14を介して制御されている。さらに、C
PU部1には外部RAM4が接続されており、CPU部
1は、バス16を介して外部RAM4に対するデータの
書き込みや読み出しを行っている。
【0017】外部バス3は、例えば、制御信号用の送信
がなされる制御バス(制御線、コントロールライン)、
キュー信号の送信がなされるキューバス、実際のデータ
の送信がなされるMUXアドレス及びデータバス(Ext
MUX Address-Data BUS,Ext MUX A-D BUS)といった三系
統のバスによって構成されている。
【0018】ペリフェラルチップ21,22,23,2
4は、各種処理を行う部分であり、例えばいわゆる周辺
処理チップである。例えば、データ処理システムがいわ
ゆるカムコーダに適用して構成された場合には、ペリフ
ェラルチップは、CCD(ChargeCoupled Device)から
の信号処理をするA/Dコンバータやフィルター等の信
号処理部となる。
【0019】CPU部1は、外部バス3を介して接続さ
れたこのようなペリフェラルチップ21,22,23,24
に所定のドレス空間を割り当てている。例えば、CPU
部1は、各ペリフェラルチップ21,22,23,24に4
MBずつアドレス空間を割り当てている。これにより、
メモリーを備えたペリフェラルチップ21,22,23
4については、CPU部1による当該メモリーへのア
ドレス空間の割り当てがなされていることになる。すな
わち、CPU部1は、メモリー空間にアドレス空間を割
り当てて管理している。そして、CPU部1は、各ペリ
フェラルチップのメモリーにアドレス空間に対応付けさ
せて、メモリーの扱うデータサイズ(ビット幅或いはデ
ータ幅)やレスポンスディレイ(例えば、反応遅延時
間)等のメモリーのアクセス条件(アクセス特性或いは
メモり特性)を規定している。すなわち、CPU部1が
管理しているアクセス領域はアクセス条件(アクセス特
性)によりパラメータ化(Parameterize)されている。
【0020】さらに、ペリフェラルチップ21,22,2
3,24はレジスターを備えており、CPU部1は、この
レジスターについてもアドレス空間を割り当てており、
さらに、それぞれについてアクセス条件(アクセス特性
或いはレジスター特性)を規定している。例えば、CP
U部1は、レジスターのアドレス空間に対応付けさせ
て、レジスターの扱うデータサイズやレスポンスディレ
イ等のアクセス条件を規定している。
【0021】そして、CPU部1は、上述したようなメ
モリーやレジスターのデータサイズやレスポンスディレ
イ等のアクセス条件の情報を、テーブルとして、外部バ
ス3全体をコントロールするバスインタープリタ12内
に持っている。さらに、CPU部1は、このようなテー
ブルを設計時に定義可能なプログラムとして持ってい
る。具体的には、以下のように、メモリーやレジスター
のアクセス条件等がアドレス空間に対応付けされて定義
されている。
【0022】先ずユーザ(セット設計者)は、システム
全体のメモリーマップを定義する。続いて、ユーザは、
そのメモリーマップの中で、それぞれのペリフェラルチ
ップの特性等により、データサイズやレスポンスディレ
イ等のメモリーやレジスターのアクセス条件を定義す
る。すなわち、メモリーやレジスターのアドレス空間
に、アクセス条件を対応付けする。
【0023】例えば、図1中に示すように、ユーザは、
第1のペリフェラルチップ21のメモリーの領域Aに対
応付けされたアドレス空間にデータサイズが32bitsで
あることを定義づけし、レスポンスディレイが0サイク
ルであることを定義づけする。ここで、サイクルとは、
処理タイミングの単位であり、データ処理システムは、
このサイクルを単位として処理を進めていくようになっ
ている。よって、0サイクルのレスポンスディレイと
は、遅延時間が必要とならないことを意味する。
【0024】同様にして、ユーザは、第2のペリフェラ
ルチップ22のメモリーの領域Bに対応付けされたアド
レス空間にデータサイズが16bitsであることを定義づ
けし、レスポンスディレイが2サイクルであることを定
義づけする。また、ユーザは、第3のペリフェラルチッ
プ23のメモリーの領域Cに対応付けされたアドレス空
間にデータサイズが8bitsであることを定義づけし、レ
スポンスディレイが0サイクルであることを定義づけす
る。また、ユーザは、第4のペリフェラルチップ24
メモリーの領域Dに対応付けされたアドレス空間にデー
タサイズが16bitsであることを定義づけし、レスポン
スディレイが2サイクルであることを定義づけする。各
メモリー及びレジスターのデータサイズやレスポンスデ
ィレイのこのような情報は、バスインタープリタ12に
テーブルとしてプログラムされる。
【0025】また、CPU部1は、各ペリフェラルチッ
プにアドレス空間を割り当てて処理するための十分な容
量をもって構成されており、例えば、4GBのアドレス
空間を管理できるように構成されている。
【0026】以上のようにデータ処理システムは構成さ
れている。そして、このデータ処理システムは、CPU
部1がペリフェラルチップ21,22,23,24のメモリ
ーやレジスターへアクセスする際に、アドレス(Target
アドレス)に定義されているアクセス条件を参照して
ターゲット(所望のメモリーやレジスター)にアクセス
する。すなわち、マスターであるCPU部1は、ターゲ
ットアドレスのメモリー(メモリー空間)或いはレジス
ター(レジスター空間)の特性を予め把握しており、こ
れに基づいてターゲットにアクセスする。
【0027】これにより、データ処理システムは、ハン
ドシェイクことなく、アクセス条件に基づくことによ
り、ペリフェラルチップのメモリー空間やレジスター空
間へ最適な条件でアクセスができるようになる。
【0028】例えば、アクセス条件をメモリー毎に定義
づけるということは、各ペリフェラルチップ毎に、メモ
リーへの最適なアクセス特性が異なっていることが前提
とされている。このような場合において、各ペリフェラ
ルチップのメモリーに共通するアクセス条件(一律のア
クセス条件)でアクセスすることも可能であるが、最適
なアクセス条件が異なるメモリーに一律な条件でアクセ
スしてしまうと無駄が多くなる。このようなことから、
各ペリフェラルチップのメモリー毎にアクセス条件をそ
れぞれ設定して、このアクセス条件に基づくことによ
り、最適に、且つ駆動電力等の無駄をなくしてアクセス
することができるようになる。
【0029】例えば、各ペリフェラルチップに対して最
大の能力を求める必要がなく、各ペリフェラルチップに
応じて必要最小限の特性のメモリーやレジスターを備え
る場合において、上述したように、メモリー或いはレジ
スター毎にアクセス条件を異ならせることは、無駄な消
費電力をなくす等の意味において意義があることであ
る。
【0030】また、アクセス条件にレスポンスディレイ
を含んでいるが、例えば、通常、CPU部1の所望の処
理への立ち上がりは、ペリフェラルチップ21,22,2
3,24の立ち上がりよりも早いので、このような理由か
ら、アクセス条件としてレスポンスディレイの定義を含
むことが必要になっている。
【0031】また、データ処理システムは、ハンドシェ
イク用の専用線をなくすことで基板上或いはウェハ上の
配線のスペースを節約することができ、これによる消費
電力の軽減を図ることもできる。
【0032】また、データ処理システムは、ハンドシェ
イクといった処理を予め行うことなくアクセスを可能に
しているので、アクセスを高速で行うことができる。す
なわち例えば、CPU部1は、外部バス3を介してアク
セスする時のレスポンスディレイをハンドシェイクしな
い分だけそのアクセス時間を短くすることができる。
【0033】ここで、CPU部1が第2のペリフェラル
チップ22のメモリー領域Aにアクセスする場合を挙げ
て具体的に説明する。
【0034】先ず、バスインタープリタ12がCPU1
1が内部バス14に出したターゲットアドレスに自動的
に必要なアクセス条件をテーブルから割り出して、外部
バスインターフェース13を駆動する。例えば、外部バ
スインターフェース13に伝えられるアクセス情報は、
ターゲットアドレスの第2のペリフェラルチップ22
メモリー空間のデータ幅が16bitsであり、レスポンス
ディレイが2サイクルであるといった情報である。
【0035】これにより、外部バスインターフェース1
3と第2のペリフェラルチップ22との間で、バス幅に
関わらず16bitsで外部バス3がドライブされる。ま
た、外部バスインターフェース12は、2サイクルのレ
スポンスディレイに従ってアクセスを開始する。例え
ば、レスポンスディレイが2サイクルとなっていること
で、通常システムが期待するレスポンスが1サイクルで
あれば、CPU部1には第2のペリフェラルチップ22
に対する待機状態が存在することを意味している。
【0036】また、例えば、バス幅に関係なく16bits
として定義されているデータ幅で第2のペリフェラルチ
ップ22が外部バス3をドライブするので、バス幅が余
るようであれば、CPU部1は、ドライブされていない
バスライン(いわゆるFloating Line)を存在させない
ように対処することもできる。すなわち、バス幅が余る
ようであれば、CPU部1は、外部バス3のバスライン
を有効に活用するような制御を行う。
【0037】このように、CPU部1は、第2のペリフ
ェラルチップ22のメモリー領域Aにアクセスすること
ができる。そして、上述したように、ターゲットアドレ
ス(メモリー領域A)をアクセスするときのアクセス条
件を予めCPU部1がわかっていることから、データ処
理システムは、例えば、ハンドシェイク用の信号線をシ
ステムから省き、消費電力の基板上或いはウェハ上のス
ペースを節約しながらも、ターゲットアドレス(メモリ
ー領域A)へアクセスすることができる。
【0038】なお、上述の実施の形態では、アクセス条
件として、レスポンスディレイやデータ幅等を採用した
例を挙げて説明した。しかし、これに限定されるもので
はなく、アクセス条件は、要は、メモリー或いはレジス
ターのアクセスの条件或いは制限となるような情報であ
ればよい。例えば、アドレス条件は、アクセス制限(Ac
cess Limitation)やエンディアン(Endian)等であっ
てもよい。アクセス制限としは、例えば、リセット直後
の128サイクルにしか書き込めないことや、次のリセ
ットまで1回しか書き込めないこと等が挙げられる。ま
た、エンディアンは、データの読み込み順序を示す情報
である。この情報により、データの前半(例えば、上位
8bits)を読み込み、その後、後半(例えば、下位8bi
ts)を読み込むようにするようなことができる。例え
ば、このような読み込み形態をリトル(Little)エンデ
ィアンという。また、先ず、データの後半(例えば、下
位8bits)を読み込み、その後、前半(例えば、上位8
bits)を読み込むようにすることができる。例えば、こ
のような読み込み形態をビッグ(Big)エンディアンと
いう。例えば、システム全体において一部のデータの読
み込みをリトルエンディアンで行う必要がある場合に、
このようなエンディアンの情報をアクセス情報としてお
くと効果的である。
【0039】次に、CPU部1におけるアクセス条件等
が記憶される構成部分の具体例について説明する。
【0040】図2に示すように、CPU部(CPUチッ
プ)1は、RAMテーブル用が記憶されたメモリー(RA
M Table for Parameterized Memory)21、インストラ
クションラッチ(Instruction Latch)22及び外部ア
クセス用のインストラクションデコーダ(Instruction
Decoder for External Access)23を備えている。例
えば、このような構成は、上述したバスインタープリタ
12における構成となる。また、CPU部1は、内部ア
ドレスバス(Internal Address Bus)24及び内部デー
タバス(Internal Data Bus)25を備えている。この
内部アドレスバス24及び内部データバス25は、図1
に示したCPU部1内の内部バス14に対応される。
【0041】このような構成において、CPU部1は、
様々な信号を内部アドレスバス24や内部データバス2
5に載せて各構成部に情報を送出している。
【0042】また、インストラクションラッチ22及び
インストラクションデコーダ23は、常に、内部データ
バス25をインストラクションフェッチサイクルにモニ
ターしている。CPU部1内にないアドレス空間をアク
セスするインストラクションが実行された場合にのみイ
ンストラクションラッチ22及びインストラクションデ
コーダ23は作動する。例えば、インストラクションと
しては、LDA,STA,MOV等のコマンドが挙げら
れる。
【0043】メモリー21は、RAMテーブル用にパラ
メータ化可能なメモリーであって、例えば、RAM(Ra
ndom Access Memory)である。具体的には、メモリー2
1は、2ビットRAMとして構成されている。ここで、
RAMテーブルは、外部アクセスするサイクルのアドレ
スとプログラムされた内容とが対応付けされて構成され
ている。プログラムされた内容とは、レスポンスディレ
イやデータ幅等のアクセス条件に関する情報である。こ
のようなメモリー21は、外部アクセスするサイクルの
アドレスが入力されると、RAMテーブルを参照してこ
の入力のアドレスに対応付けされたパラメータを、当該
アドレスと共に出力する。例えば、メモリー21は、ア
クセス条件として、レスポンスディレイ及びデータ幅の
2つのパラメータを出力する。
【0044】CPU部1は、この2つのパラメータが入
力される図示しない外部バスインターフェースを備えて
おり、外部バスインターフェースは、メモリー21から
出力された2つのパラメータに合わせた形態でターゲッ
トとされる外部メモリーをアクセスする。
【0045】また、インストラクションデコーダ23か
らは、図1に示すCPU11に対してCPU Halt信号を出
力している。CPU11は、このCPU Halt信号により、
通常のCPUアクセスサイクルよりも長いアクセス時間
(データ準備時間)を必要とする外部メモリーのために
当該CPU11を一時的にそのインストラクションを止
めるようにする。
【0046】また、外部リードの場合については、外部
メモリーから外部バスインターフェースを通して内部デ
ータバスに情報が載り、CPU11に送られる。これに
より、CPU11は、自動的に再起動して、次のインス
トラクションをフェッチ(Fetch)する。このとき、イ
ンストラクションデコーダ23が動き、CPU Halt信号が
リセットされる。
【0047】以上、アクセス条件等が記憶される構成部
分の具体例である。また、上述のCPU部1及びペリフ
ェラルチップ21,22,23,24の具体的な構成例を図
3に示す。
【0048】図3に示すように、データ処理システム
は、CPU部1及びペリフェラルチップ21,22を備え
ている。このデータ処理システムでは、各ペリフェラル
チップ21,22は、CPU部1に接続されている2本の
各外部バス31,32上に配置されており、この各外部バ
ス31,32を介してCPU部1に接続されている。な
お、この図3では、データ処理システムが2個のペリフ
ェラルチップ21,22を備えている例を示しているが、
これは便宜的なものであり、データ処理システムをより
多くのペリフェラルチップを備えて構成できることはい
うまでもない。なお、図において、ペリフェラルチップ
に21,22の番号を付しているが、以下の説明におい
て、特定しない一のペリフェラルチップを指す場合に
は、ペリフェラルチップ20として説明する。また、外
部バスについても31,32の番号を付しているが、以下
の説明において特定しない一の外部バスを指す場合に
は、外部バス3として説明する。
【0049】このデータ処理システムは次のように処理
を行う。CPU部1内のキューマネージャ41は、ペリ
フェラルチップ21,22から外部バス31,32のキュー
バス32を介して送られてくるキューを検出する。キュ
ーは、データ転送処理の開始を要求する情報を示す。
【0050】キューマネージャ41は、種類別に検出し
たキューをバッファにため込む一方、例えば4ビットの
キューID(Queue ID)として各種類を一つずつ優先
チャンネルセレクター42へ出力する。キューマネージ
ャ41は、キューの処理が完了した場合、キューを送っ
てきた要求源に対してキューが完了したことを知らせ
て、処理されたキューをリセットさせる。
【0051】優先チャンネルセレクター42には複数の
キューが送られてきており、優先チャンネルセレクター
42は、そのように送られてくる複数のキューの中から
優先順位を参照して一つのキューを選び出し、その選択
したキューをDMA43に送る。また、優先チャンネル
セレクター42は、データの転送が終了して転送終了
(End Of Transfer)信号を受けた場合やキューの内容
が変化した場合に、その都度、次に実行されるべき転送
のキューを計算する(DMA43に送るキューIDを選
択する)。ここで、転送終了信号は、後述するシーケン
サー及びステートマシン(Sequencer&State Machine)
から送られてくる信号である。
【0052】DMA43は、システム内のデータの転送
処理を開始させる部分である。このDMA43は、図示
しないシーケンサー、レジスター(Register)44、ス
テートマシン(State Machine)45等を備えている。
ここで、ステートマシン45は、システムに応じてその
設定が決定されており、例えば、外部バス3のバス幅や
パススルー(Pass thru)モード、バースト(Burst)モ
ードといった2つのデータ転送モードの何れか一のデー
タ転送モード用に決定されている。パススルーモードと
は、ペリフェラルチップ21,22とCPU部1との間で
データ転送を行うモードであり、また、バーストモード
とは、ペリフェラルチップ21,22間でデータ転送を行
うモードである。
【0053】具体的には、DMA43は、優先チャンネ
ルセレクター42からのキューIDを受けて、中央集中
調停等といったデータの転送のためのセットアップ或い
は初期化(Initialization)をしてからデータ転送処理
を開始する。例えば、中央集中調停とは、データ処理シ
ステムの各部が同期して処理開始できるようにするため
の処理である。この中央集中調停により、ペリフェラル
チップ21,22の相互間でデータの送受信が可能とされ
る場合(バーストモードの場合)、及びCPU部1と各
ペリフェラルチップ21,22とがデータの送受信が可能
とされる場合(パススルーモードの場合)をそれぞれ例
に挙げて説明する。各ペリフェラルチップ21,22の相
互間のデータ送受信であるバーストモードの場合は以下
のようになる。
【0054】CPU部1は、先ず、アドレス情報を各外
部バス31,32上に送出する。ここで、アドレス情報
は、外部バス3上においてデータの送信側とされるペリ
フェラルチップ2を示す情報(ソースアドレス、source
address)、或いはデータの受信側とされるペリフェラ
ルチップ2を示す情報(デスティネーションアドレス、
destination address)である。このようなアドレス情
報をCPU部1は各外部バス31,32に送出し、各ペリ
フェラルチップ21,22は、外部バス31,32それぞれ
からアドレス情報を受信する。また、CPU部1は、ア
ドレス情報と共に、そのようなデータ送受信において転
送されるデータの大きさ等の情報を送る。例えば、デー
タの転送は、「サイクル」といった複数の転送タイミン
グにより実現されるが、データの大きさとして例えばそ
のサイクル数を送る。これにより、送信側及び受信側で
は、何サイクル分のデータの転送が転送されるかが判断
できるようになる。そして、CPU部1は、それら情報
とともに、上述したようなデータ幅やレスポンスディレ
イ等といったアクセス条件の情報を送る。
【0055】各ペリフェラルチップ21,22は、アドレ
ス情報に基づいて自己がデータの送信側になっているこ
と、或いはデータの受信側になっていることを知る。具
体的には、ペリフェラルチップは、CPU部1がこのよ
うにアドレス情報等を外部バス31,32により放送して
いる間(中央集中調停している間)、外部バス31,32
をモニタして、必要な情報として、このような自己が送
信側或いは受信側とされた情報をアドレス情報から得
る。
【0056】そして、送信側のアドレス情報を受けた一
の該当する送信側のペリフェラルチップ2は、データを
外部バス3上に送出して、受信側のアドレス情報を受け
た一の該当する受信側の他のペリフェラルチップ2は、
送信側のペリフェラルチップ2が外部バス3上に送出し
たデータを受信する。すなわち、CPU部1からアドレ
ス情報が外部バス3上に送出された以後、すなわち、C
PU部1の中央集中調停以後、該当する各ペリフェラル
チップ21,22は、CPU部1から独立してデータの送
受信を行う。
【0057】データの送受信については、具体的には、
各ペリフェラルチップ21,22は、バスインターフェー
ス61を介して外部バス31,32のMUXアドレス及び
データバス33によって行う。通常、CPU部1がMU
Xアドレス及びデータバス33をドライブしているが、
ペリフェラルチップ21,22間で、データの転送がなさ
れる際には、CPU部1は、MUXアドレス及びデータ
バス33をペリフェラルチップ用21,22に開放して、
送信側のペリフェラルチップ2がMUXアドレス及びデ
ータバス33をドライブするようにする。そして、受信
側のペリフェラルチップ2は、送信側のペリフェラルチ
ップ2によってドライブされているMUXアドレス及び
データバス33によりデータを順番に受信する。
【0058】そして、ペリフェラルチップ2は、アドレ
ス情報とともに受け取ったデータの大きさを示す上述の
サイクル数に応じてデータの転送を行う。これにより、
ペリフェラルチップ2は、サイクル数の情報から転送終
了のサイクルを判断(検出)することにより、データ転
送を適切に終了させることができる。
【0059】以上のように、各ペリフェラルチップ
1,22の相互間のデータ送受信であるバーストモード
が実行されている。次に、ペリフェラルチップ21,22
とCPU部1との間のデータ送受信であるパススルーモ
ードの場合を説明する。
【0060】CPU部1は、先ず、アドレス情報を外部
バス31,32上に送出する。ここで、アドレス情報は、
CPU部1とデータの送受信の相手となる一のペリフェ
ラルチップ2を示す情報である。このようなアドレス情
報をCPU部1は外部バス3 1,32に送出し、各ペリフ
ェラルチップ21,22は、外部バス31,32からアドレ
ス情報を受信する。そして、送信側のアドレス情報を受
けた一の該当するペリフェラルチップ2は、CPU部1
との間でMUXアドレス及びデータバス33を介してデ
ータの送受信を開始する。ここで、CPU部1は、バス
インターフェース46,47を介してMUXアドレス及
びデータバス33に対するデータの送受信を行ってい
る。
【0061】このように、CPU部1からアドレス情報
が外部バス31,32上に送出されて行われた中央集中調
停以後、該当するペリフェラルチップ2は、CPU部1
との間でデータの送受信を行う。
【0062】DMA43は、以上のように、優先チャン
ネルセレクター42からのキューIDを受けて、中央集
中調停等といったデータの転送のセットアップ或いは初
期化(Initialization)を実行してから実際のデータの
転送処理を行っている。
【0063】なお、CPU部1において、上述したキュ
ーマネージャ41、優先チャンネルセレクター42、D
MA43及び2つのバスインターフェース46,47
は、バスマスターと称する部分を構成している。
【0064】ここで、CPU部1のDMA43の詳細な
構成例を図4に示す。このように構成されたDMA43
の処理は次のようになる。
【0065】DMA43は、キュー変換テーブル(Queu
e Translation Table)51により、上述の優先チャン
ネルセレクター42により選択されたキューIDをアド
レスに変換する。具体的には、キュー変換テーブル51
は、9ビット幅のRAM(Random Access Memory)とし
て構成されており、4ビットのキューコード(キューI
D)を9ビットのアドレスとして出力する。ここでいう
アドレスは、後述するRAMレジスター52において所
望のデータを選択するための情報となる。キュー変換テ
ーブル51から出力された9ビットのアドレスは、RA
Mレジスター(RAM Registers)52に入力される。
【0066】RAMレジスター52は、アドレスに基づ
いて、キュー(要求)された転送に必要なパラメータを
実行レジスター53に移動させる。例えば、RAMレジ
スター52は、必要なパラメータとして、データ送信側
のモジュールのアドレス情報を示すソースアドレス(So
urce Address)、データ受信側のモジュールのアドレス
情報を示すデスティネーションアドレス(Destination
Address)、データの転送量(例えば、転送バイト数
(図中の「# of Byte」))、及びそのほかの制御情報
(制御ビット)等を移動させる。例えば、制御情報に
は、上述したレスポンスディレイやデータ幅等のアクセ
ス条件の情報が含まれている。
【0067】実行レジスター53は、初めに、初期化シ
ーケンス(Initialization Sequence)を実行してRA
Mレジスター52により得たアドレス情報等を外部バス
1,32上に送出して、例えば、それからSDRAMの
ようなバーストデータ(BURSTData)転送を行う。な
お、初期化シーケンスの説明は省略する。
【0068】また、実行レジスター53には、テンプレ
ジスター(Temp Register)54が接続されている。実
行レジスター53は、転送最中であっても、割り込み処
理により優先順位の高いキューの内容を最優先に実行し
て転送処理を行ようになされており、テンプレジスター
54は、高い優先順位の転送処理が実行されている間、
低い優先順位で実行途中のデータ転送の途中パラメータ
を待ち状態或いは待避状態(Suspend)として保持す
る。そして、テンプレジスター54は、高い優先順位の
転送が終了してから、待ち状態にした途中パラメータを
実行レジスター53の戻して、これにより実行レジスタ
ー53は、転送途中の処理を再開する。
【0069】また、データ転送の実行中には、シーケン
サー及びステートマシン(Sequencer&State Machine)
55は、現在実行されているキューの4ビットのIDを
優先チャンネルセレクター42にフィードバックさせ
る。
【0070】ここで、シーケンサー及びステートマシン
55は、外部バス31,32を介して、データ処理システ
ム全体の同期をとったり、各種制御信号をペリフェラル
チップ21,22に送ったりする。また、シーケンサー及
びステートマシン55は、データの転送終了後、転送終
了(End Of Transfer)信号を優先チャンネルセレクタ
ー42へ送る。これにより優先チャンネルセレクター4
2では次のキューを選択する作業が開始される。
【0071】以上のようにDMA43が構成されてお
り、CPU部1は、このDMA43により、中央集中調
停等といったデータの転送のセットアップ或いは初期化
(Initialization)を行ってから実際にデータを送信す
る処理を開始することができる。
【0072】一方、ペリフェラルチップ21,22は、図
3に示すように、内蔵のDMA62によってデータの転
送処理を行う。ここで、図3には、一方のペリフェラル
チップ21の具体的な構成を示しているが、他方のペリ
フェラルチップ22も同様な構成をなしている。
【0073】ペリフェラルチップ21,22のDMA62
は、例えば、転送プロトコルの受け側となるバージョン
のDMAである。具体的には、送信側であれば、ペリフ
ェラルチップ2は、このDMA62により、制御線(コ
ントロールライン)31を介してCPU部1から送られ
てくる送信側のアドレス情報に基づいて、データを送信
する処理を行い、受信側であれば、ペリフェラルチップ
2は、このDMA62により、制御線31を介してCP
U部1から送られてくる受信側のアドレス情報に基づい
て、データを受信する処理を行う。
【0074】ここで、ペリフェラルチップ21,22のD
MA62の具体的な構成例を図5に示す。図4に示した
CPU部1側のDMA43と比べると構造の複雑さがな
くなっており、これは、例えば、中央集中調停等といっ
たデータの転送の際の初期化のためのアドレス情報等を
外部バス3にドライブする必要がなくなるからである。
一方で、ペリフェラルチップ21,22側のDMA62
は、アドレス情報等の初期化データを受けるためのコマ
ンドインプットレジスター(Command Input Register)
71を備えている。
【0075】そして、ペリフェラルチップ21,22は、
図3に示すように、キュー・ラウンド−ロビン・スレー
ブ(Queue Round-Robin Slave)63が、CPU部1側
のキューマネージャ41内のキュー・ラウンド−ロビン
・マスター(Queue Round-Robin Master)48と対にな
って、キューバス32を制御しながらデータをやりとり
する。
【0076】図6には、CPU部1及びペリフェラルチ
ップ21,22がMUXアドレス及びデータバス33を介
してデータを送受信するためのバスインターフェースの
具体的構成を示している。バスインターフェースは、図
3に示すように、CPU部1が第1及び第2の外部バス
1,32に対応して備える2つのバスインターフェース
46,47や、ペリフェラルチップ21,22が備えるバ
スインターフェース61である。
【0077】バスインターフェースは、2つの内部アウ
トプットドライバ(Internal Output Driver 64b)8
1,82、外部アウトプットドライバ(External Outpu
t Driver)83、アウトプットレジスター(Output Reg
ister For Initialization)84、インプットデータバ
ッファ(Input Data Buffer 32b)85及びアウトプッ
トデータバッファ(Output Data Buffer 32b)86を備
えている。
【0078】2つの内部アウトプットドライバ81,8
2は、内部バス用のバスドライバであり、内部アドレス
(Internal Address)用のバス87と内部データ(Inte
rnalData)用のバス88に対応して用意されている。例
えば、内部データ用のバス88をドライブする内部アウ
トプットドライバ81は、インプットデータバッファ8
5に記憶されているMUXアドレス及びデータバス33
からの外部データを、内部データ用のバス88に送出す
る。この内部アウトプットドライバ81,82は、両方
とも、バスインターフェースが搭載されているチップが
転送のソース(Source)、すなわちデータ送信側になっ
たとき、又はデスティネーション(Destination)、す
なわちデータ受信側になったときに使用される。
【0079】アウトプットレジスター84は、CPU部
1側のデータ転送のセットアップ(初期化)のためのも
のである。すなわち、このアウトプットレジスター84
は、CPU部1側のバスインターフェースでのみ実際に
機能する。具体的には、アウトプットレジスター84
は、CPU部1側において、ソースアドレス(Source A
ddress)、デスティネーション(Destination Addres
s)、及び転送バイト数(転送サイクル数)等を、外部
バス31,32上に送出する。また、外部アウトプットド
ライバ83は、MUXアドレス及びデータバス33を制
御するバスドライバである。例えば、外部アウトプット
ドライバ83は、アウトプットデータバッファ86に記
憶されている内部データ用のバス88からの内部データ
を、MUXアドレス及びデータバス33に送出する。
【0080】また、ペリフェラルチップ21,22側のバ
スインターフェースの場合、バスインターフェースは、
MUXアドレス及びデータバス33を介してCPU部1
から送られてくるコマンドインプット(Command Inpu
t)信号を、ペリフェラルチップ21,22のDMA62
に送る。コマンドインプット信号は、セットアップの時
にCPU部1側から送られてくるもので、この信号に基
づいてDMA62は、セットアップ動作として、CPU
部1のDMA43と同期をとる。これにより、上述した
ようにデータ転送のためのタイミングとされるサイクル
を同期して、CPU部1とペリフェラルチップ21,22
との間で同期して発生させることができるようになる。
【0081】以上、図3乃至図6にデータ処理システム
の具体的な構成を示した。しかし、これに限定されるこ
とはなく、本発明は、可能な限りにおいて他のシステム
に適用することができることは言うまでもない。
【0082】
【発明の効果】本発明に係るデータ処理装置は、アドレ
ス空間に割り付けられたアクセス領域と、アクセス領域
へのアクセス条件とが対応付けされたアクセス条件テー
ブルが記憶される記憶手段と、アクセス条件テーブルに
基づいて、アクセス領域に、対応付けされたアクセス条
件に基づいてアクセスするアクセス制御手段とを備える
ことにより、アドレス空間に割り付けられたアクセス領
域と、アクセス領域へのアクセス条件とが対応付けされ
たアクセス条件テーブルに基づいて、アクセス制御手段
により、アクセス領域に、対応付けされたアクセス条件
に基づいてアクセスすることができる。これにより、デ
ータ処理装置は、アクセス条件の異なるアクセス領域に
対して、その条件に応じてアクセスすることができるよ
うになる。
【0083】また、本発明に係るデータ処理方法は、ア
ドレス空間に割り付けられたアクセス領域と、アクセス
領域へのアクセス条件とが対応付けされたアクセス条件
テーブルに基づいて、アクセス領域に、対応付けされた
アクセス条件に基づいてアクセスすることにより、アク
セス条件の異なるアクセス領域に対して、その条件に応
じてアクセスすることができる。
【図面の簡単な説明】
【図1】本発明の実施の形態のデータ処理システムの構
成を示すブロック図である。
【図2】上述のデータ処理システムのCPU部のアドレ
ス空間を管理する部分を示すブロック図である。
【図3】上述のデータ処理システムのより具体的な構成
を示すブロック図である。
【図4】上述のデータ処理システムのCPU部のDMA
の構成を示すブロック図である。
【図5】上述のデータ処理システムのペリフェラルチッ
プのDMAの構成を示すブロック図である。
【図6】上述のデータ処理システム及びペリフェラルチ
ップのインターフェースの構成を示すブロック図であ
る。
【符号の説明】
1 CPU部、21,22,23,24 ペリフェラルチッ
プ、3 外部バス、12 バスインタープリタ

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 アドレス空間に割り付けられたアクセス
    領域と、上記アクセス領域へのアクセス条件とが対応付
    けされたアクセス条件テーブルが記憶される記憶手段
    と、 上記アクセス条件テーブルに基づいて、上記アクセス領
    域に、対応付けされたアクセス条件に基づいてアクセス
    するアクセス制御手段とを備えたことを特徴とするデー
    タ処理装置。
  2. 【請求項2】 上記アクセス領域がメモリー領域であっ
    て、 上記アクセス条件テーブルには、アクセス条件として、
    上記メモリー領域のデータ幅の情報又は当該メモリー領
    域へのアクセスの遅延量の情報のうちの少なくとも一の
    情報が書かれていることを特徴とする請求項1記載のデ
    ータ処理装置。
  3. 【請求項3】 上記アクセス条件テーブルは、書換え可
    能とされており、 上記アクセス条件テーブルには、セット設計時において
    決定されたアクセス条件が書かれていることを特徴とす
    る請求項1記載のデータ処理装置。
  4. 【請求項4】 上記記憶手段及び上記アクセス制御手段
    を有する主処理手段と、制御バスと、制御バスを介して
    上記主制御手段により制御される従属処理手段とを備え
    ており、 上記主処理手段は、上記従属処理手段のアクセス領域を
    アクセスする際に、上記アクセス制御手段により、上記
    アクセス条件テーブルに基づいて、上記アクセス領域
    に、対応付けされたアクセス条件に基づいてアクセスす
    ることを特徴とする請求項1記載のデータ処理装置。
  5. 【請求項5】 アドレス空間に割り付けられたアクセス
    領域と、上記アクセス領域へのアクセス条件とが対応付
    けされたアクセス条件テーブルに基づいて、上記アクセ
    ス領域に、対応付けされたアクセス条件に基づいてアク
    セスすることを特徴とするデータ処理方法。
JP2000182269A 2000-06-16 2000-06-16 データ処理装置及びデータ処理方法 Withdrawn JP2002007311A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000182269A JP2002007311A (ja) 2000-06-16 2000-06-16 データ処理装置及びデータ処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000182269A JP2002007311A (ja) 2000-06-16 2000-06-16 データ処理装置及びデータ処理方法

Publications (1)

Publication Number Publication Date
JP2002007311A true JP2002007311A (ja) 2002-01-11

Family

ID=18683062

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000182269A Withdrawn JP2002007311A (ja) 2000-06-16 2000-06-16 データ処理装置及びデータ処理方法

Country Status (1)

Country Link
JP (1) JP2002007311A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9188878B2 (en) 2011-01-28 2015-11-17 The University Of Tokyo Driving system and driving method, exposure apparatus and exposure method, and driving system design method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9188878B2 (en) 2011-01-28 2015-11-17 The University Of Tokyo Driving system and driving method, exposure apparatus and exposure method, and driving system design method

Similar Documents

Publication Publication Date Title
KR100932408B1 (ko) 스위치 매트릭스를 통한 데이터 전송을 개선하는 흐름 제어방법
US7395364B2 (en) Data transfer control apparatus
WO2016127552A1 (zh) 一种直接内存存取dma控制器及数据传输的方法
US9471521B2 (en) Communication system for interfacing a plurality of transmission circuits with an interconnection network, and corresponding integrated circuit
CN108959136B (zh) 基于spi的数据传输加速装置、系统及数据传输方法
JP2002366507A (ja) 複数チャネルdmaコントローラおよびプロセッサシステム
JPH04363746A (ja) Dma機能を有するマイクロコンピュータシステム
JP2000163312A (ja) マイクロプロセッサ
JP2001282704A (ja) データ処理装置及びデータ処理方法とデータ処理システム
US9128924B2 (en) Method and apparatus for wireless broadband systems direct data transfer
JP2002007311A (ja) データ処理装置及びデータ処理方法
JP2723970B2 (ja) データ転送制御装置
CN115328832B (zh) 一种基于pcie dma的数据调度系统与方法
JP4190969B2 (ja) バスシステム及びambaにおけるバス調停システム
CN108153703A (zh) 一种外设访问方法和装置
JP2002288115A (ja) Usbコントローラ
JP2001265711A (ja) データ転送装置およびバスシステム
JPH1185673A (ja) 共有バスの制御方法とその装置
JP2000047930A (ja) データ処理装置
CN115422100A (zh) 直接内存存取控制装置、数据传输方法和数据传输系统
CN116303174A (zh) 一种实现直接存储器访问快速传输的装置及其方法
JPH10124445A (ja) 情報処理装置およびコントローラ
JPH04365160A (ja) データ転送装置
JP2003067322A (ja) データ転送方法、ブリッジ回路、及びデータ転送システム
JP2000035939A (ja) インテリジェント型pcアドインボード

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: 20070904