JPH11167547A - 周辺装置と外部インタフェースとを具備したディジタル信号処理装置 - Google Patents
周辺装置と外部インタフェースとを具備したディジタル信号処理装置Info
- Publication number
- JPH11167547A JPH11167547A JP10228491A JP22849198A JPH11167547A JP H11167547 A JPH11167547 A JP H11167547A JP 10228491 A JP10228491 A JP 10228491A JP 22849198 A JP22849198 A JP 22849198A JP H11167547 A JPH11167547 A JP H11167547A
- Authority
- JP
- Japan
- Prior art keywords
- data
- circuit
- operable
- dma
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/3001—Arithmetic instructions
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7828—Architectures of general purpose stored program computers comprising a single central processing unit without memory
- G06F15/7832—Architectures of general purpose stored program computers comprising a single central processing unit without memory on one IC chip (single chip microprocessors)
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30076—Arrangements for executing specific machine instructions to perform miscellaneous control operations, e.g. NOP
- G06F9/30083—Power or thermal control instructions
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30098—Register arrangements
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30098—Register arrangements
- G06F9/30101—Special purpose registers
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computational Mathematics (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Analysis (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Information Transfer Systems (AREA)
- Microcomputers (AREA)
- Bus Control (AREA)
Abstract
を提供することを目的とする。 【解決手段】ディジタル処理装置に関わる種々の周辺装
置をオンチップ周辺装置として装備する。周辺装置とし
て複数チャンネルシリアルポート、DMAインタフェー
スおよびタイマを含み、CPUと外部装置との間のデー
タ転送を行うDMA転送速度を読み取りおよび書き込み
で独立して制御し、転送に際して要求される初期化およ
び監視の量を削減することで全体として処理速度が向上
されたディジタル信号処理装置を実現する。
Description
け付けられた係属の明細書シリアル番号09/012,
813(TI処理番号T−25311)に関連し、それ
は此処に明示することにより参照されている。
に関わり、詳細にはオンチップ周辺装置と種々の外部イ
ンタフェースポートとを含むマイクロプロセッサ集積回
路に関する。
イクロプロセッサの性能改善のために、クロック速度の
増加、並列処理の追加といった努力を休み無く行ってい
る。随意アクセスメモリ(RAM)の大規模なブロック
がマイクロプロセッサ内に含まれているが、これはデー
タ格納およびプログラム格納用であってメモリアクセス
時間を短縮している。直接メモリアクセス(DMA)回
路がしばしば具備されており、マイクロプロセッサに接
続されている周辺装置とマイクロプロセッサに接続され
ているメモリとの間のデータ転送を行っている。DMA
回路の初期化およびDMA転送操作の監視をマイクロプ
ロセッサ上で動作するソフトウェアで行っている。DM
A回路は独立に制御される1つまたは複数のチャンネル
を具備している。6チャンネルDMA制御装置の詳細な
説明が米国特許第5,305,446号、リーチ(Leac
h )その他に付与の中で、特に図10,11,12aお
よび12bを参照して行われており、これは此処にあげ
ることで参照されている。
れたDMA転送操作に対してマイクロプロセッサ上で動
作するソフトウェアに要求される初期化および監視の量
を削減することである。
み転送を種々の転送速度で出来るようにすることであ
る。
間を短縮するために、種々の機能ブロック、例えば中央
処理装置、メモリ回路、および周辺回路が容易に再使用
出来るコア回路として設計されている。マイクロプロセ
ッサが更に複雑になるに従って、ますます周辺回路がC
PUと共に単一集積回路上に配置されるようになる。周
辺回路から、外部発信元から、またその他のマイクロプ
ロセッサ内の発信元から発せられる割り込み要求信号の
数が、選択採用された事前設計CPUコア上で利用出来
る割り込み入力の数を超える可能性がある。
上での入力信号の不足を解消するための方法を提供する
ことである。
するために、種々の型式の入力/出力装置がマイクロプ
ロセッサ集積回路内に含まれている。シリアルポートは
マイクロプロセッサに共通に含まれる入力/出力装置の
1つのクラスの例である。
集積回路用のオンチップ周辺装置および外部インタフェ
ースの動作並びに制御を改善することである。
の1つの形式はデータ処理装置であって、これは命令を
実行するための中央処理装置(CPU)、中央処理装置
に接続されそのCPUで実行される命令を格納するため
のメモリ回路、およびこのCPUに接続され、各々が異
なるパラメータセットを有する二重位相フレームでデー
タの転送および受信を行うように動作可能なシリアルポ
ートインタフェースとを含む。
て、これは命令を実行するための中央処理装置(CP
U)、前記中央処理装置に接続されたメモリ制御装置、
および前記メモリ制御装置に接続されたメモリ回路とを
含む。このデータ処理装置は更に、前記メモリ制御装置
に接続された外部メモリインタフェース回路を含む。こ
のデータ処理装置は更に、前記直接メモリアクセス制御
装置に接続されたホストポートインタフェースを含む。
このデータ処理装置は更に、前記メモリ制御装置に接続
された周辺バス制御装置、および前記周辺バス制御装置
に接続された外部メモリインタフェース制御装置を含
む。データ処理装置は更に少なくとも1つの外部信号を
含むことが可能で、これは前記中央処理装置のリセット
アドレスに配置されるメモリ型式を定義するためのもの
である。このデータ処理装置は更に少なくとも1つの外
部信号を含むことが可能で、これは前記メモリ回路のサ
イズ及び位置を認識するためのものである。このデータ
処理装置は更に、前記周辺バス制御装置に接続されたプ
ログラム可能タイマを含むことも可能である。このデー
タ処理装置は更に前記中央処理装置にクロック信号を供
給するためのプログラム可能フェイズロックループ回路
を含むことも可能である。このデータ処理装置は更にパ
ワーダウン回路を含み、これは前記装置の予め選択され
た部分にクロック信号が到達することをプログラム可能
なように防止するためのものである。
て、中央処理装置に接続されたプログラムメモリ回路内
に格納されたソフトウェア命令を実行するように動作可
能な中央処理装置と、処理装置で処理されるべきデータ
を格納するように動作可能なメモリ回路と、読み取りア
ドレス回路と書き込みアドレス回路とを有し、メモリ回
路との間でデータを転送するように動作可能な直接メモ
リアクセス(DMA)制御装置とを含み、このDMA制
御装置は更に中央処理装置に割り込みを行うように動作
可能なDMA割り込み回路を有する。この装置は更に、
データをメモリ回路との間で転送するように動作可能な
アドレス生成回路を有する周辺装置を含むことが可能で
ある。この装置は更に補助チャンネル制御回路を含むこ
とが可能であり、これは周辺装置が第一データワードを
メモリ回路に対してその周辺装置のアドレス生成回路を
用いて転送させ、また中央処理装置へDMA回路のDM
A割り込み回路を用いて割り込みさせるように動作可能
である。
命令を実行するための中央処理装置(CPU)を含む。
このCPUは固定数の割り込み入力端子を有する。この
データ処理装置はまた多数の割り込み要求信号線を有
し、ここで割り込み要求信号線の数は割り込み入力端子
の数よりも少ない。また好適に割り込み選択器が具備さ
れていて、これは割り込み要求信号の部分集合を選択
し、選択された部分集合を割り込み入力端子に接続する
ように動作可能である。
はプログラム可能読み取りアドレス回路とプログラム可
能書き込みアドレス回路とを有する。
ル操作を実行するための回路を有し、これは発信元アド
レスからのデータをスプリット宛先アドレスに転送する
ように動作可能であり、またスプリット発信元アドレス
からのデータを宛先アドレスに同時に受信するように動
作可能である。
ジスタを含み、これはDMA制御装置が後続の転送操作
の異なる機能に対して使用することが出来る。
ァを含み、これは選択された発信元バスと選択された宛
先バスとの間に接続することが出来る。
法形式もまた開示されており此処に特許請求されてい
る。本発明のその他の目的が開示されており、また更に
別の目的は此処に開示された内容から明らかであろう。
を参照して以下の詳細な説明を参照することにより明ら
かとなろう。
ロック図であり、これは本発明の1つの実施例を含む。
マイクロプロセッサ1はVLIWディジタル信号処理装
置(”DSP”)である。簡単にするために、図1Aは
本発明の実施例の理解に関連するマイクロプロセッサ1
の一部のみを示す。DSPの一般的構成の詳細は良く知
られており、何処で探すことが出来るであろう。例えば
米国特許第5,072,418号、フレデリック・ボー
タウド(Frederic Boutaud)その他に付与、がDSPを
詳細に記述しており、これは本明細書でも参照されてい
る。米国特許第5,329,471号、ギャレイ・スボ
ボダ(Gary Swoboda)その他に付与、がDSPの試験お
よびエミュレート方法を詳細に記述しており、これは本
明細書でも参照されている。本発明の実施例に関連する
マイクロプロセッサ1の詳細部分が以下に十分詳細に説
明されており、マイクロプロセッサ技術分野で通常の技
量を有する者が本発明を実施しかつ使用出来るようにし
ている。
置(CPU)10,データメモリ22,プログラムメモ
リ23,周辺機器60および直接メモリアクセス(DM
A)61を具備した外部メモリインタフェース(EMI
F)が示されている。CPU10は更に命令フェッチ/
復号ユニット10a−c、算術演算とロード/ストアユ
ニットD1、掛け算器M1、ALU/シフトユニットS
1、算術論理ユニット(”ALU”)L1,データの読
み取りおよびデータの書き込みが行われる共有多重ポー
トレジスタファイル20aを含む複数の実行ユニットを
有する。復号された命令は命令フェッチ/復号ユニット
10a−cから機能ユニットD1,M1,S1およびL
1に対して図示されていない種々の制御線の組を介して
提供される。データはレジスタファイル20aとロード
/ストアユニットD1との間は第一のバス32aの組を
介して、掛け算器M1との間は第二のバス34aの組を
介して、ALU/シフトユニットS1との間は第三のバ
ス36aの組を介して、そしてALU L1との間は第
四のバス38aの組を介して提供される。データはメモ
リ22とロード/ストアユニットD1相互間で第五のバ
ス40aの組を介して提供される。上記の全データ経路
はレジスタファイル20bおよび実行ユニットD2,M
2,S2,およびL2で二重化されていることに注意さ
れたい。命令はフェッチユニット10aにより命令メモ
リ23からバス41の組を介してフェッチされる。エミ
ュレーションユニット50は集積回路1の内部動作への
アクセスを提供し、これは外部試験システム51で制御
可能である。
集積回路マイクロプロセッサ1、その範囲は箱42で表
されている、の一部として示されていることに注意され
たい。メモリ22−23をマイクロプロセッサ1集積回
路42の外部に置くことも、またその一部を集積回路4
2の上に残し、一部を集積回路42の外部に置くことも
可能である。また、別の数の実行ユニットを使用するこ
とも可能である。
ムの中に組み込まれている場合、追加メモリまたは周辺
装置が図1に図示されるようにマイクロプロセッサ1に
接続されるはずである。例として、随意アクセスメモリ
(RAM)70、読み取り専用メモリ(ROM)71お
よびディスク72が外部バス73経由で接続されている
ように示されている。バス73は外部メモリインタフェ
ース(EMIF)に接続されており、これはマイクロプ
ロセッサ42内の機能ブロック61の一部である。直接
メモリアクセス(DMA)制御装置もまたブロック61
内部に含まれている。DMA制御装置は一般的にデータ
をメモリとマイクロプロセッサ1内部の周辺装置との
間、およびメモリとマイクロプロセッサ1外部の周辺装
置との間で移動させるように使用される。データはブロ
ック61からプログラムメモリ23にバス43経由で転
送出来る;データはデータメモリ22との間でバス44
経由で転送出来る。その他の型式の周辺装置、例えばタ
イマ82、がホストポートバス80経由で接続されてい
る。バスインタフェースがブロック60内部にホストポ
ートバス80用に含まれている。
ム例が、米国特許第5,072,418号に記載されて
おり、これは本明細書でも参照されており特に米国特許
5,072,418号の図2−18が参考になる。性能
を改善したりまたは価格を下げるために本発明の特徴を
取り入れたマイクロプロセッサを用いて米国特許5,0
72,418号に記載されているシステムを更に改善す
ることが出来る。この様なシステムは、工業プロセス制
御、自動車システム、電動機制御、ロボット制御システ
ム、衛星遠距離通信システム、エコー除去システム、モ
デム、ビデオ画像システム、音声認識システム、暗号を
具備したボコーダ・モデムシステム等が含まれるが、こ
れらに限定されるわけではない。
的特徴の説明が係属の明細書シリアル番号09/01
2,813(TI管理番号T−25311)に提示され
ている。図1Aのマイクロプロセッサに対する完全な命
令セットの説明がまたこの係属の明細書に提示されてい
る。
1内のDMA制御装置を用いてデータのブロックを外部
発信源から内部プログラムメモリ23へ、リセット信号
76に応じて転送できる。このデータのブロックは初期
プログラムを含み、これはマイクロプロセッサ1で実行
することが可能でありおそらくはブートストラップロー
ダである。ブートストラップローダーはマイクロプロセ
ッサ1用の大規模プログラムをロードするために使用さ
れる。いずれの場合も、マイクロプロセッサ1はマイク
ロプロセッサ内のブートPROMまたはROMを必要と
することなく動作状態となる。これは好都合であるが、
それはPROM/ROMが比較的大きく典型的にはブー
ト用にしか使用されないためである。従ってブートPR
OM/ROMの必要性を取り除くことで節約されたマイ
クロプロセッサ1内の空間を更に有用な機能のために効
果的に使用したり、または低価格装置を制作するために
マイクロプロセッサ1の寸法を小さくすることが出来
る。
ェースピン75を介してブロック61に提供しDMA制
御装置を初期化するために使用される。これに代わる実
施例として、構成回路81が構造パラメータをバス80
上でインタフェースピン84を介してブロック61に提
供しDMA制御装置を初期化するために使用される。ブ
ロック77は”OR”機能を提供し回路74または81
からの構造パラメータがブロック61へ送られるように
している。
セッサの更に詳細なブロック図である。多重チャンネル
シリアルポート120が周辺バス110に接続されてい
る。
辺バス110に接続されている。その生成方法ならびに
特長を図4を参照して更に詳細に説明する。
に、2つの別々のDMAチャンネル、DMA0 140
およびDMA1 141用に具備されている。本発明に
おいては、本発明の特徴に基づいてDMA0 100の
みがブートローディングを提供するように構成されてい
るが、これは本発明の制限条件と考えられるべきではな
い。DMA制御装置140および141は周辺機器バス
110によるプログラム制御を受けるように構成されて
おり、これはデータバス40b経由でCPU10に接続
されている。DMA0 140は図1A内のROM71
の様な外部発信元からプログラムメモリ23またはデー
タメモリ22にデータを転送するように動作出来る。
40はリセット信号76がオン状態からオフ状態に遷移
した際にブートロードを実行するように初期化される。
この初期化の詳細は後ほど説明する。この初期化ステッ
プの後、DMA0 140はメモリ転送要求を開始す
る。外部メモリインタフェース(EMIF)103はバ
ス142経由DMA0 140からのメモリ要求に応答
し、バス73上のデータ源からのデータにアクセスす
る。データワードがEMIF103で準備された後、D
MA0 140はこのデータワードをプログラムメモリ
制御装置104に転送し、これはそのデータワードをプ
ログラムメモリ23の中にバス106経由でDMA0
140で指定されたアドレスに書き込む。このブートロ
ード処理手順の間、CPU_Reset_信号79はオ
ン状態にDMA0 140によって保持され、CPU1
0によっていかなる命令処理も実行されないようにして
いる。
0がいくつかの割り込み入力信号161(a−f)の中
から好適に選択し、選択された割り込み信号をCPU1
0に対して割り込み信号INT(4−15)経由で提供
する。
ユニット並びにレジスタファイルのブロック図であっ
て、種々の機能ブロックを接続するバスの更に詳細な図
を示す。此の図の中で特に断りが無い限り全てのデータ
バスは32ビット幅である。バス40aはアドレスバス
DA1を有し、これはmux200aで駆動される。こ
れによりロード/ストアユニットD1 12aまたはD
2 12bのいずれかで生成されたアドレスをレジスタ
ファイル20aにロードまたはストアするためのアドレ
スを提供することが可能となる。データバスLD1はア
ドレスバスDA1で指定されたメモリ22内のアドレス
からデータをロードユニットD1 12a内のレジスタ
にロードする。ユニットD1 12aは提供されたデー
タをレジスタファイル20aの中にストアする前に処理
する。同様にデータバスST1はレジスタファイル20
aからのデータをメモリ22にストアする。ロード/ス
トアユニットD1 12aは下記の演算を実行する:3
2ビット加算、減算、線形および円形アドレス計算。ロ
ード/ストアユニットD2 12bはD1 12aと同
様に演算を行い、mux200bの支援の下アドレスの
選択を行う。
の演算を実行する:32/40ビット算術演算および比
較演算;32ビットの最上位ビット計数;32および4
0ビット用の計数の正規化;および論理演算。ALU
L1 18aは32ビット発信元被演算子用入力src
1と第二32ビット発信元被演算子用入力src2とを
有する。入力msb_srcは8ビット値であって40
ビット発信元被演算子を形成するために使用される。A
LU L1 18aは32ビット宛先被演算子用の出力
dstを有する。出力msb_dstは8ビット値であ
って、40ビット宛先被演算子を形成するために使用さ
れる。レジスタファイル20a内の2つの32ビットレ
ジスタは40ビット被演算子を保持するために連結され
る。Mux211は入力src1に、32ビット被演算
子がレジスタファイル20aからバス38a経由で、ま
たはレジスタファイル20bからバス210経由で得ら
れるように接続されている。Mux212は入力src
2に、32ビット被演算子がレジスタファイル20aか
らバス38a経由で、またはレジスタファイル20bか
らバス210経由で得られるように接続されている。A
LUユニットL218bはユニットL1 18aと同様
に演算を行う。
記の型式の演算を実行する:32ビット算術演算;32
/40ビットシフトおよび32ビットビット単位演算;
32ビット論理演算;分岐;及び定数発生。ALU S
1 16aは32ビット発信元被演算子用入力src1
と32ビット発信元被演算子用入力src2とを有す
る。入力msb_dstは8ビット値であって40ビッ
ト発信元被演算子を形成するために使用される。ALU
L1 16aは32ビット宛先被演算子用の出力ds
tを有する。出力msb_dstは8ビット値であっ
て、40ビット宛先被演算子を形成するために使用され
る。Mux213は入力src2に、32ビット被演算
子がレジスタファイル20aからバス38a経由で、ま
たはレジスタファイル20bからバス210経由で得ら
れるように接続されている。ALUユニットL2 16
bはユニットL1 16aと同様に演算を行うが、更に
制御レジスタファイル102との間でレジスタ転送を行
える。
掛け算を実行する。掛け算器M114aは32ビット発
信元被演算子用入力src1と、32ビット発信元被演
算子用入力src2とを有する。掛け算器M1 14a
は32ビット宛先被演算子用出力dstを有する。Mu
x214は入力src2に、32ビット被演算子がレジ
スタファイル20aからバス34a経由で、またはレジ
スタファイル20bからバス210経由で得られるよう
に接続されている。掛け算器M2 14bは掛け算器M
1 14aと同様に演算を行う。
ロセッサ用の2つのメモリマップを示す。このメモリは
バイト単位でアドレス指定が可能であり、その全アドレ
ス範囲は4Gバイト(32ビット内部アドレスに相当す
る)である。メモリマップは内部プログラムメモリ2
3,内部データメモリ22および3つの外部メモリ空間
と内部周辺機器空間に分割されている。内部メモリの区
間はホストポートインタフェース(HPI)60でアク
セス可能である。
プログラム/キャッシュメモリ23と512kバイトの
オンチップデータメモリ22とで構成される。キャッシ
ュまたはプログラムとして構成可能なプログラムメモリ
は256ビット命令フェッチパケットの2kの中に構成
されている。CPU10は1つのフェッチパケットの全
ての命令を一度にフェッチする。パケットは最大8つの
32ビット命令をCPUサイクル毎に、または最小1命
令を1サイクル毎に処理する。バイトデータメモリはC
PUによってバイト単位でアドレス指定が可能であり
(読み取りと同様書き込みも)、バイト単位、二分の一
ワード単位およびワード単位での転送を支援する。
の外部データアクセスは、外部メモリインタフェース
(EMIF)103を通る(図1c参照)。外部メモリ
は3つの空間−CE0,CE1およびCE2に分割され
ている。各々はチップ可能化信号を有し、これは対応す
る空間との間で相互にデータアクセスが行われている間
オンとなる。各々の外部空間には別々の内部周辺バスレ
ジスタが割り当てられていて、これは非同期メモリにア
クセスする際に、読み取り/書き込みサイクルの形状を
決定する。
2空間はまたその他の型式のメモリとインタフェースす
る事ができる。SBSRAMまたはSDRAMメモリを
これら2つの空間に割り当てることができるが、それは
リセット76中に信号グループCE0_TYPEおよび
CE2_TYPE(ピンDC2−DC5)上の信号レベ
ルを制御する事で実施される。
してのみインタフェースすることが出来る。しかしなが
ら空間CE0およびCE2が常に32ビット幅であるの
に対して、CE1メモリ空間は信号グループCE1_W
IDTHピン上の信号レベルを制御することにより8ま
たは16ビットに構成することも出来る。EMIFは読
み取りサイクルの間に自動的にバイトおよび二分の一ワ
ードをワード単位にパックする、この機能は典型的に8
−または16−ビットEPROMからブートする際に使
用される。このCE1メモリ空間はROMインタフェー
ス用に使用できるが、それはROMサイクルが非同期S
RAM読み取りサイクルに類似しているためである。C
E1空間は8−ビットまたは16−ビット幅の読み取り
サイクルのみを許している外部メモリ空間であるので、
全ての外部メモリ空間からの読み取りサイクルは32ビ
ット幅外部メモリからのバイトまたは二分の一ワードサ
イズデータとしてアクセス出来ることに注意されたい。
EMIFデータ書き込みサイクルはバイト、二分の一ワ
ードまたはワード単位で同様に外部メモリに転送可能で
あり、これはバイト選択用BE_制御信号を用いて行わ
れる。データ読み取りサイクルは常に全4バイトをラッ
チし(4つ全てのBEがアクティブ)、続いてCPUは
もしもデータサイズが32ビット未満の場合は適切なバ
イトを内部的に抽出する。プログラムメモリ制御装置1
04またはDMA100/101で要求されたEMIF
書き込みは常に32ビット幅であって、これはデータメ
モリ制御装置105で開始された8−、16−、または
32ビット転送とは異なっている。
内部プログラムメモリに対してCPU及びDMA要求
と、必要な調停とを実行する、外部メモリインタフェー
ス(EMIF)を通して、外部メモリにCPU要求を実
行する、キャッシュとして構成されている場合に内部プ
ログラムメモリを管理する。
このメモリは2kの256ビットフェッチパケットを含
むことが出来て、これは16k32ビット命令と等価で
ある。CPUプログラムメモリ制御装置を通して内部プ
ログラムメモリに対して単一サイクルで256ビット幅
のスループットを有する。
うに、CPU制御並びに状態レジスタ内のプログラムキ
ャッシュ制御(PCC)フィールド(ビット7−−5)
で選択された4つのモードで使用することが出来る。こ
れらのモードとは: 1)写像:選択されたメモリマップに応じて、プログラ
ムメモリはいずれかのアドレスに配置される: マップ1内の00000000−0000FFFF マップ0内の01400000−0140FFFF どの様にメモリ写像を選択するかに際してブート構成、
リセット、およびメモリマップを参照する。このモード
に於いて、プログラムは内部メモリアドレス範囲に対し
てそのアドレスのフェッチパケットをフェッチする。い
ずれのキャッシュモードに於いても、このアドレス範囲
へのCPUアクセスは全てNOPを含むフェッチパケッ
トを戻す。写像モードはリセット時の内部プログラムメ
モリのデフォルト状態である。 2)可能:キャッシュ可能モードに於いて、あるアドレ
スに対しての最初のプログラムフェッチはキャッシュ不
成功を引き起こす。キャッシュ不成功に際して、フェッ
チパケットは外部メモリインタフェース(EMIF)か
らロードされ、同時に内部キャッシュメモリ−32ビッ
ト命令の中に格納される。フェッチパケット内の8つ全
ての命令が受信されると、これはCPUへ送られて実行
される。この期間中CPUはそっくりそのまま停止され
ている。待ち状態を被る回数は外部メモリの型式、その
メモリ状態、およびDMAまたはCPUデータアクセス
の様なその他の要求とEMIFとのぶつかり合いに依存
する。キャッシュされたアドレスからのその後の全ての
読み取りは、キャッシュヒットとなりそのフェッチパケ
ットは待ち状態を受けずにCPUに送られる。プログラ
ムメモリモードからキャッシュ可能モードへの変更に際
して、プログラムキャッシュはフラッシュされる。この
モード変遷のみがキャッシュをフラッシュする唯一の手
段である。 3)凍結:キャッシュ凍結期間中、キャッシュはその現
在の状態を保持する。凍結されたキャッシュへのプログ
ラム読み取りは、可能化されたキャッシュへの読み取り
と同一であるが、キャッシュ不成功時に外部メモリイン
タフェースから行われるデータ読み取りがキャッシュの
中に格納されない点が異なる。その同一アドレスからの
後続の読み取りもまたキャッシュ不成功となり、そのデ
ータは再び外部メモリからフェッチされる。キャッシュ
凍結は重要なプログラムデータがキャッシュの中に上書
きされることを防止する。 4)バイパス:キャッシュがバイパスされると、全ての
プログラム読み取りは外部メモリからデータをフェッチ
する事になる。このデータはキャッシュメモリの中には
格納されない。キャッシュ凍結と同様、キャッシュバイ
パスではキャッシュはその状態を保持する。このモード
は必ず外部プログラムデータがフェッチされることを保
証する。
ッシュは21kフェッチパケット、従って2kフレーム
を含む。(キャッシュ用語の中でブロックまたはライン
という用語がフレームと同じ意味で使用される。)キャ
ッシュまたはフレームサイズの幅は256ビットであ
る。キャッシュ内の各フレームは1フェッチパケットで
ある。
ドレスを使用する方法を示す: 5ビットフェッチパケットアラインメント:アドレスの
下位5ビットはゼロと見なされるが、これは全てのプロ
グラムフェッチ要求がフェッチパケット境界(8ワード
または32バイト)上に並んでいるためである。 11ビットタグブロックオフセット:キャッシュは直接
写像されるために、任意の外部アドレスは唯1つの2k
フレームに写像する。64kバイトアドレスの偶数倍で
ある任意の2つのフェッチパケットは写像マップを同一
フレームに分離する。従ってCPUアドレスのビット1
5:5は11ビットブロックオフセットを生成し、これ
は任意の個別のフェッチパケットをどの2kフレームに
写像するかを決定する。 10ビットタグ:キャッシュは最大外部アドレス空間を
64Mバイト(00000000から03FFFFFF
F)と仮定している。従ってビット25:16はタグに
対応し、これは外部メモリ空間内でのフェッチパケット
の元の位置を決定する。このキャッシュは別の2kx1
1タグRAMを有し、これは全てのタグを有している。
このRAMは10ビットタグに加えてキャッシュフラッ
シュの中で使用される有効ビットを含む。
ームの内容が有効データであるか否かを示す。キャッシ
ュフラッシュ中にこれらの有効ビットは消去されていず
れのキャッシュフレームも有効データを持たないことが
示される。キャッシュフラッシュはキャッシュが写像モ
ードからキャッシュ可能モードに遷移する際にのみ生じ
る。
たフェッチパケットアドレスのブロックオフセットに対
応するタグがフェッチパケットアドレスのビット25:
16に対応しない時か、またはそのロケーションの有効
ビットが消去された場合である。可能化状態の場合は、
キャッシュはフェッチパケットを対応するフレームの中
にロードし、有効ビットをセットし、タグを要求された
アドレスのビット25:16にセットし、そして全ての
8命令が利用できるようになった後にこのフェッチパケ
ットをCPUに送り出す。
ムメモリに対して読み取り及び書き込みを行うことが出
来る。CPUとDMAとの間の優先順位はDMAチャン
ネル要求のPRIビットで指定される。もしもDMAが
高位の優先順位を与えられている場合(PRI=1)、
CPUはDMAがその全ての要求を完了するまで待たさ
れる。CPUに優先順位がある場合は、DMAアクセス
はCPUが要求を停止するまで延期される。キャッシュ
モードでは、DMA書き込みはプログラムメモリ制御装
置により無視される。キャッシュモードでは、読み取り
は不定値で戻される。キャッシュモードではDMA読み
取り並びに書き込みの両方に対して、DMAはその要求
が完了したことの通知を受ける。リセットされるとプロ
グラムメモリシステムは写像モードとなる。この機能に
よりDMAがブートロードコードを内部プログラムメモ
リの中に入れることが可能になる。ブートロードコード
の更に詳細な情報に関しては、ブート構成、リセット、
メモリマップを参照されたい。
接続する:CPUと直接メモリアクセス制御装置(DM
A)とを内部データメモリに接続し必要な調停を行う。
CPUを外部メモリインタフェース(EMIF)に接続
する。CPUを周辺機器バス制御装置を通してオンチッ
プ周辺機器に接続する。
器に対する、CPUとDMAとの間の調停を実施する。
と、同様に全てのCPUデータ要求に対するサービスを
行う。図6はデータの流れ方向と同時にモジュール間の
マスタ(要求側)とスレーブ(資源側)との関係を示
す: 下記に対するCPU要求データ読み取りおよび書き込
み: 1.内部データメモリ。 2.周辺機器バス制御装置を通してオンチップ周辺機
器。 3.EMIF。 内部データメモリに対するDMA要求読み取り及び書き
込み。 CPUは要求をデータメモリ制御装置に対して2つのア
ドレスバス(DA1およびDA2)を通して送る。格納
データはCPUデータ格納バス(ST1およびST2)
を通して送信される。ロードデータはCPUロードバス
(LD1およびLD2)を通して受信される。CPUデ
ータ要求は内部データメモリ、内部周辺機器空間のいず
れかのアドレスに基づいて、周辺機器バス制御装置、ま
たは外部メモリインタフェースを通して写像される。デ
ータメモリ制御装置はまた、DMAを内部データメモリ
に接続し、オンチップデータRAMに関してCPU/D
MA調停を実施する。
ータRAMの64kバイトは16ビット半ワードで構成
された8kブロックからなる4ブロックとして構成され
る。これらのブロックは各々のブロックが後続の半ワー
ドを含む16ビットデータ上のインタリーブの中に構成
される。このインタリーブにより2つのデータポートと
DMAが近隣の16ビットデータの読み取りを資源の競
合をすることなく行うことが出来る。
半ワード、および32ビットワードの読み取り並びに書
き込みが出来る。データメモリ制御装置は2つのCPU
の間で、各々の16ビットブロックに基づいて独立に調
停を行う。下記のデータ配列制約が存在する: ワード:ワードは偶数4バイト境界(ワード境界)上に
整列されている。ワードは常に最下位の2ビットが0の
バイトアドレスで開始される。ワードアクセスは2つの
隣接した16ビット幅ブロックを必要とする。 半ワード:半ワードは偶数の2バイト境界(半ワード境
界)上に整列されている。半ワードは常に最下位ビット
が0であるバイトアドレスから開始される。半ワードは
単一16ビット幅ブロックを必要とする。 バイト:バイトアドレスに関しては整列上の制約は存在
しない。16ビット幅ブロックに対して調停は実施され
るが、そのブロックはバイト幅アクセスをサポートする
ために依然としてバイト可能状態を有する。しかしなが
ら、バイトアクセスはバイトアドレス写像を行うために
全部で16ブロックを必要とする。
1)の1つの周期を参照する。(装置入力クロックでは
無い。)CPUサイクルは1つのCPU処理パイプライ
ン位相を参照している。実行パケット内の全ての命令は
1つのCPUサイクル内の1つのパイプライン位相を通
して進行する。しかしながら、CPUサイクルはメモリ
区切りによって複数のCPUクロックに拡張される。C
PUサイクルの複数のCPUクロックへの拡張は、待ち
状態として知られている。)
つのCPUが同時にメモリアクセスを行える。1つのC
PUサイクルの中で、2つの異なる内部メモリブロック
へ同時に2つのアクセスが待ち状態無しで発生する。同
一の内部メモリブロックへの2つの同時アクセスは1つ
のCPUクロックに対して全CPUパイプラインを区切
り、2つのアクセスを2つのCPUクロックの中に提供
する。これらの規則はアクセスがロードであるか格納で
あるかにかかわらず適用される。同一の実行パケットか
らのロードおよび格納は、同一CPUサイクル中にデー
タメモリ制御装置で監視される。将来または過去のCP
Uサイクルからのロードおよび格納は、現在のサイクル
でのデータメモリアクセスに対して待ちを生じることは
無い。従って、内部データメモリアクセスは同一の16
ビット幅ブロックへ同一フェッチパケットアクセス内の
命令の間で競合が生じた場合にのみ待ち状態を発生させ
る。この状態は内部メモリ競合と呼ばれる。此処でデー
タメモリ制御装置はCPUをべつの追加のCPUクロッ
クに切り出し、アクセスを順に並べ、各々のアクセスを
別々に実行する。2つのアクセスの優先順位を付ける際
に、全てのロードが全ての格納アクセスより前に生じ
る。もしも両方のアクセスが共にロードであるかまたは
共に格納の場合、DA1からのアクセスがDA2からの
アクセスよりも前に行われる。表3はCPUが2つのデ
ータアクセス(DA1およびDA2上で)を行った際
に、どの様なアクセス条件が内部メモリ競合を与えるか
を示している。
クセスで使用されているものと同一の16ビットバンク
を要求しない場合は、このDMA操作はバックグラウン
ドで行われる。表3はDMAとCPUとの競合を判別す
るために使用される。ひとつの軸がDMAアクセスを表
し、もう一方が1つのCPUデータポートからのCPU
アクセスを表すと仮定している。続いて、この分析をも
う一つのデータポートに対しても実施する。もしも両方
の比較で競合が生じない場合は、CPU/DMA内部メ
モリ競合が存在しないことになる。ここで、CPUアク
セスおよびDMAアクセスは互いにバックグラウンドで
行われる。もしも比較の結果競合が生じる場合は、CP
U/DMA内部メモリ競合が存在する。この場合、後ほ
ど説明するように優先順位がDMAチャンネルのPRI
ビットから解読される。もしもDMAチャンネルがCP
Uよりも高い優先順位として構成されている場合は(P
RI=1)、全てのCPUアクセスはDMAアクセスが
完了するまで延期され、全てのCPUは1CPUクロッ
クの間待ち状態を被る。もしも両方のCPUポートとD
MAとが同一メモリブロックにアクセスする場合、待ち
状態の数は2に増える。もしもCPUで要求されている
ブロックに対してDMAが複数の連続した要求を持って
いる場合、このCPUは必要なブロックに対する全ての
DMAアクセスが完了するまで待機させられる。この反
対に、もしもCPUがより高い優先順位にある場合は
(PRI=0)、両方のCPUデータポートがそのブロ
ックへのアクセスを終了するまでDMAアクセスは延期
される。
順列方法に2つの基準が存在する: 小エンディアン 大エンディアン、である。
ンディアン性をサポートしている。このエンディアン性
は装置のLENDIAN (小エンディアン)ピンで選択され
る。LENDIAN=1 およびLENDIAN=0 はそれぞれ小エンディ
アンおよび大エンディアンを選択する。この選択はCP
UおよびDMAの両方に適用される。メモリ内に存在す
るワードおよび半ワードデータ内のバイト順列方法は小
エンディアンおよび大エンディアンデータと同一であ
る。表4はメモリ内のデータワードのどのビットが宛先
レジスタのどのビットの中にロードされるかを、全ての
考えられる大または小エンディアンデータからのCPU
データロードに対して示している。メモリ内のデータは
第1列内のLDW命令から結果としてレジスタの中に入
れられたものと同一データと仮定している。表5はレジ
スタのどのビットが宛先メモリワードのどのビットの中
にストアされるかを、大および小エンディアンデータか
らの全ての考えられるCPUデータストアに対して示し
ている。発信元レジスタ内のデータは、第一列内のST
W命令から結果としてメモリの中に入れられたものと同
一データと仮定している。
より制御レジスタのアクセスを通して制御されている。
CPUおよびDMAはこれらのレジスタに周辺機器デー
タバスを通してアクセスする。DMAは周辺機器バス制
御装置に直接アクセスするのに対し、CPUはデータメ
モリ制御装置を通してアクセスする。
ワードアクセスに変換する。しかしながら、読み取りア
クセスに際してはCPUおよびDMAは両者ともワード
の正しい部分を抽出し、バイト並びに半ワードアクセス
を適切に実施することが出来る。しかしながらどのバイ
トが読みとられるかに係わらず、周辺機器制御レジスタ
読み込みによる副次的な影響は生じる。これとは反対
に、バイトまたは半ワード書き込みはCPUおよびDM
Aは正しい値のみを可能化されたバイトの中に提供する
ように実行される。正しいことが保証されている値が表
5に示されている。従って未定義の結果は可能化されて
いないバイトに書き込まれるはずである。もしも使用者
が可能化されていないバイト内の値に関心を持たない場
合はこれは許容出来る。そうでない場合は、周辺機器レ
ジスタにワードアクセスを用いてアクセスすべきであ
る。
4つのCPU待ち状態を生じる。これらの待ち状態はパ
イプラインレジスタがCPUと周辺機器との間のオンチ
ップ上の距離を横切る経路を遮断し、また同様に調停時
間を確保できるようにするために挿入されている。連続
したアクセスでは、最初のアクセスのみが3つのCPU
待ち状態を必要とするが、これは周辺機器バス制御装置
へのデータメモリ制御装置のインタフェースのパイプラ
イン化された性質のためである。
およびDMAの機能に関してこれらの間の調停を実施す
る。内部データアクセスと同様、DMA内のPRIビッ
トがCPUとDMA間の優先順位を決定する。もしもC
PUの間で競合が生じると(データメモリ制御装置経由
で)優先順位の低い方は優先順位の高い方が周辺機器バ
ス制御装置に対する全てのアクセスを完了するまで待機
させられる。周辺機器バスはあたかも単一資源であるか
のように調停されるので、優先順位の低い資源は優先順
位の高い方がアクセスしているものだけではなく全ての
周辺機器に対するアクセスを阻止される。
143のブロック図であってマイクロプロセッサ1のメ
モリ写像されたモジュールと相互接続されている。直接
メモリアクセス(DMA)制御装置143はメモリマッ
プ内のポイント間でCPUの仲介を受けずにデータ転送
を行う。DMAはデータの移動を内部メモリ、内部周辺
機器、または外部装置相互の間で、CPU動作のバック
グラウンドの中で行うことが出来る。DMAは4つの独
立したプログラム可能チャンネルを有し、DMA動作に
関して4つの異なる環境を用意できる。各々のDMAチ
ャンネルは異なる大きさ:8ビットバイト、16ビット
半ワード、または32ビットワードのデータ要素を転送
するように独立に構成することが出来る。これに加えて
第五番目(オプション)チャンネルは、例えばホストポ
ートインタフェースの様なアドレス生成能力を具備した
周辺機器からのサービス要求に対応出来るようにしてい
る。DMA動作を説明するに当たっていくつか重要な用
語がある:
位置からデータ要素を読み取る。
に読み取られたデータ要素をメモリ内の宛先位置に書き
込む。
りおよび書き込み転送の組み合わせ。
ーム毎に独立してプログラム可能な要素数を有する。フ
レーム転送が完了するとDMAは単一フレーム内の全て
の要素を移動する。
ブロック毎に独立してプログラム可能なフレーム数を有
する。ブロック転送が完了するとDMAは移動するよう
にプログラムされた全てのフレームを移動する。
々を以下の段落で説明する: 1)バックグラウンド動作:DMAはCPUとは独立に
動作する。 2)高スループット:要素はCPUクロック速度で転送
される。 3)4チャンネル:DMAは4つの独立したブロック転
送の内容を追跡できる。 4)補助チャンネル:このチャンネルはホストポート1
50の様なアドレス生成能力を具備した周辺機器がCP
Uメモリ空間の中へ要求を行えるようにしている。 5)スプリット動作:単一のチャンネルを使用して周辺
機器に対する受信並びに送信転送の両方を、コストを追
加することなく2つのDMAチャンネルの如く効果的に
実施することが出来る。 6)多重フレーム転送:各々のブロック転送は固定され
たプログラム可能な大きさの多重フレームで構成するこ
とが出来る。 7)プログラム可能優先順位:各々のチャンネルはCP
Uのメモリ写像された資源に対して、独立にプログラム
可能な優先順位を有する。 8)プログラム可能アドレス生成:各チャンネルの発信
元ならびに宛先アドレスレジスタは、それぞれ各読み取
りおよび書き込み転送に際してメモリを通して構成可能
な指標を持つことが出来る。アドレスは一定に保持され
るか、増加更新、減数更新されるか、またはプログラム
可能な値によって調整される。このプログラム可能な値
はフレームの最後の転送に対してと、先の転送に対して
と異なる指標を持つことが出来る。 9)全アドレス32ビットアドレス範囲:DMAはメモ
リマップ内の任意のポイントにアクセスできる(図3A
−3B参照): a)オンチップデータメモリ。 b)オンチッププログラムメモリ、これはキャッシュと
して利用されるよりもむしろメモリ空間内に写像される
場合である。 c)オンチップ周辺機器。 d)外部メモリインタフェース(EMIF)。 e)プログラム可能幅転送:各々のチャンネルは8ビッ
トバイト、16ビット半ワード、または32ビットワー
ドのいずれかを転送するように独立に構成することが出
来る。 f)自動初期化:ひとたびブロック転送が完了すると、
DMAチャンネルは自動的に自分自身を初期化して次の
ブロック転送に備える。 g)事象同期:各々の読み取り、書き込み、またはフレ
ーム転送は選択された事象によって開始される。 h)割り込み発生:各々のフレーム転送が完了するか、
または全ブロック転送また同様に種々のエラー条件に応
じて、各DMAチャンネルは割り込みをCPUに送る。
た制御レジスタにより制御並びに構成される。表7およ
び表8はDMA制御レジスタがCPU10のメモリ空間
に中に写像される様子を示している。これらのレジスタ
はDMAグローバル制御およびデータレジスタと、同様
に各チャンネル用の多数の独立した制御レジスタを含
む。このDMAグローバルデータレジスタはチャンネル
で選択された種々の機能に対して使用可能であり、これ
は表9に記述されている。図7はDMAグローバルデー
タレジスタを図示する。
び図9に図示されている。DMAチャンネル一次(図
8)および二次制御レジスタ(図9)はビットフィール
ドを含み、これは各々個別のDMAチャンネルを独立し
て制御する。これらのフィールドはそれぞれ表10およ
び表11に説明されている。
ップに関してDMを使用する際の特徴が詳細に説明され
ている。要求は4つの資源の1つに送られる: 1)外部メモリインタフェース 2)内部プログラムRAM 3)内部周辺機器バス 4)内部データRAM
計算される。従って、発信元アドレスはブロック転送を
通してこれら4つの空間の同じ1つを指すものと仮定さ
れる。この制約はまた宛先アドレスにも適用される。
セスを通しての手動、または自動初期化のいずれかによ
り、独立に開始されるはずである。加えて、各DMAチ
ャンネルは直接CPUアクセスを通して独立に停止また
は中断される。
DMA動作を開始するために、一度全てのその他のDM
A制御レジスタにはそれらの必要な値が書き込まれる、
DMA制御レジスタはその必要な値としてSTART=01b が
書き込まれなければならない。この値を既に開始されて
いるDMAチャンネルに書き込んでも何の影響も生じな
い。
ャンネルはSTART=10b を書き込むことで中断される。中
断時には、全ての書き込み転送と読み取り転送要求が完
了している要素の転送を完了する。また、もしもDMA
チャンネルが全て必要な読み取り同期を有する場合は、
完了するためにもう一つの要素の追加要素転送が許可さ
れる。中断されると、STATUS上の値は10b である。
込むことで停止される。此処で、DMAは直ちに停止
し、読み取り転送を完了した事で内部的に保持している
全てのデータを廃棄する。DMAチャンネルの実際の状
態はDMAチャンネル制御レジスタ内のSTART フィール
ドを読み取ることで監視出来る。DMA転送が完了する
と、自動初期化が可能状態であればDMAチャンネルは
停止状態に戻りSTATUS=00bとなる。
ック転送が完了した後自動的に自身を再初期化すること
が出来る。いくつかのDMA制御チャンネルは再ロード
レジスタを通して次のブロック転送に備えて事前ロード
されることが可能である。選択されたDMAグローバル
データレジスタは再ロードレジスタのように動作する。
この機能を用いてDMAチャンネルのいくつかのパラメ
ータを次のブロック転送に先だって都合よくセット出来
る。自動初期化は次の事が出来る:
ゆっくりとした時間を与え、この間にDMAを再構築し
て後続の転送に備えることが出来る。通常、CPUは現
在のブロック転送中の最後の書き込み転送が完了して次
のブロック転送の最初の読み取り同期化を行う前に、直
ちにDMAを再初期化しようとする。一般的に再ロード
レジスタによって、これらの値を次のブロック転送に備
えて現在のブロック転送が開始した後、いつでも再初期
化することが可能である。
例として、ブロック転送が完了した後DMAが先のブロ
ック転送を繰り返す場合がある。この場合、CPUは各
々のブロック転送用に再ロードレジスタに新たな値を事
前ロードすることは無い。その代わりに、第一ブロック
転送に際してロードするだけである。
レジスタ内に、START=11b を書き込むことにより、自動
初期化が可能となる。この場合、ブロック転送が完了し
た後、DMAチャンネルは再開始され、選択されたDM
Aチャンネルレジスタに再ロードされる。もしも中断後
の再開始の場合は、このSTART は自動初期化を可能とす
るために01b を再書き込みされなければならない。
装置を説明する。自動初期化に関して、後続のブロック
転送は同様であると仮定する。従って、再ロード値はブ
ロック転送中に修正されたこれらのレジスタ:転送カウ
ンタおよびアドレスレジスタ、に対してのみ選択可能で
ある。従って、DMAチャンネル転送カウンタ、また同
様にDMAチャンネル発信元および宛先レジスタは関連
する再ロードレジスタを有し、これはDMAチャンネル
一次制御レジスタ(表10)内の関連するRELOADフィー
ルドとして選択されたものとして有する。この再ロード
レジスタは個別のDMAグローバルデータレジスタ内に
格納される。
ドレスレジスタを再ロードしないことが可能であること
に注意されたい。この機能によりブロック転送中に変化
しないレジスタの値を保持することが出来る。従って、
DMAグローバルデータレジスタはブロック転送中に一
定であった値に専用である必要はない。単一チャンネル
が複数のチャンネルレジスタに対して同一の値を使用で
きる。例えば、スプリットモードに於いて、発信元およ
び宛先アドレスは同じはずである。同様に、多重チャン
ネルは同一再ロード値を使用するはずである。例えば、
2つのチャンネルは同一の転送計数再ロード値を有する
はずである。
スタは関連する再ロードレジスタで再ロードされる。D
MAチャンネル転送カウンタレジスタの場合、再ロード
は全ブロック転送の終了直後では無く、各々のフレーム
転送の終了後に発生することに注意されたい。DMAチ
ャンネル転送カウンタへの再ロード値は、自動初期化が
可能化された時ではなく、多重フレーム転送が構築され
た際にいつでも必要である。
送を書き込み転送が行われる前に実施し、この機能を容
易にするために必要なバッファリングを提供出来る。こ
れを支援するために、ブロックおよびフレーム終了時に
必要な再ロードは、DMAチャンネルの読み取り(発信
元)および書き込み(宛先)部分とは独立に発生する。
同様に、スプリットチャンネル動作の場合は後ほど説明
するように、発信元および宛先アドレスは独立に再ロー
ドされるが、これは関連する要素転送送信または受信が
それぞれブロック転送を完了した時点で行われる。
は、使用者により現在のブロック転送の最後のフレーム
が完了した後に続いて再書き込みされる。そうしない
と、新たな再ロード値が現在のブロック転送の後続のフ
レーム境界に影響を与えてしまう。しかしながら、もし
もフレームサイズが現行および次回ブロック転送で同じ
場合は、この制約は問題とはならない。DMAチャンネ
ル転送カウンタの完全な説明を次の段落で行う。
図示する。DMAチャンネル転送カウンタは転送される
フレーム毎にフレームの数および要素の数を表すビット
フィールドを含む。図11はDMAグローバルデータレ
ジスタが転送カウンタ用の再ロード値として使用できる
かを示している。
6ビット値はブロック転送内の全フレーム数を設定す
る。従ってもしもブロック転送が単一フレームを含む場
合、この値はデフォルトの1に設定されなければならな
い。ブロック転送当たりの最大フレーム数は65535
である。このカウンタはフレーム転送の最後の読み取り
転送が完了した時点で減数更新される。最後のフレーム
が転送されると、全カウンタにDMAチャンネル一次制
御レジスタ内のCNT RELOADフィールドで選択
されたDMAグローバルデータレジスタが再ロードされ
る。FRAMECOUNTへの初期値0および1は同一
の結果をもたらし、単一のフレームが転送されることに
注意されたい。
し16ビット値はフレーム当たりの要素数を設定する。
このカウンタは各要素の読み取り転送の後に減数更新さ
れる。フレーム転送毎の要素の最大数は65535であ
る。各フレーム内の最後の要素に達すると、ELEME
NT COUNTはDMAチャンネル一次制御レジスタ
内のCNT RELOADフィールドで選択されたDM
Aグローバルデータレジスタの最下位16ビットが再ロ
ードされる。この再ロードは自動初期化モードからは影
響されない。ブロック転送が開始される前に、このカウ
ンタ及び選択されたDMAグローバルデータレジスタに
は同一の最下位16ビットがロードされなければならな
い、これは最初および残りのフレームがフレーム毎に同
一数の要素を確実に持つようにするためである。また複
数フレーム転送に於いて、再ロード値が指定されなけれ
ばならず、これは自動初期化が可能化された時に行われ
るのでは無い。もしも要素計数が0に初期化されると、
動作は定義されない。
とによりDMA転送のトリガをかけることが、内部周辺
機器または外部ピンからの割り込みの様な事象により行
える。各々のチャンネルに対して3種類の同期が可能で
ある: 1)読み取り同期:各々の読み取り転送は実行する前に
選択された事象が発生するまで待機する。 2)書き込み同期:各々の書き込み転送は実行する前に
選択された事象が発生するまで待機する。 3)フレーム同期:各々のフレーム転送は実行する前に
選択された事象が発生するまで待機する。
一次制御レジスタ内のRSYNC及びWSYNCフィー
ルドで選択される。(図8)もしもこのレジスタ内でF
S=1の場合は、RSYNCで選択された事象は全フレ
ームを可能状態とする。31事象まで可能である。もし
もこれらのフィールドの値が00000bに設定される
と同期は不要である。この場合、読み取り、書き込みま
たはフレーム転送は資源がそのチャンネルで使用できる
状態になると直ちに行われる。これらのフィールド内の
値と事象との間の関連が表12に示されている。
ネルシリアルポート120を指しており、これは後ほど
説明する。
1)は読み取りおよび書き込み同期事象用にSTATお
よびCLRフィールドを含む。
の非動作から動作状態への遷移が各々のDMAチャンネ
ルでラッチされる。この遷移が生じると関連するSTA
TフィールドがDMAチャンネル二次制御レジスタ内に
設定される。もしも同期が選択されていない場合はST
ATビットの読み取りは常に1であることに注意された
い。また、単一の事象で複数の動作にトリガを掛けるこ
とが出来ることにも注意されたい。
ック転送が開始される前に懸案中の事象を消去する事に
より、DMAチャンネルは強制的に次の事象を待たされ
る。これとは反対に、ブロック転送が開始される前に事
象を設定することにより、第一要素転送に必要な同期事
象を強制的に実施することが出来る。事象(従って関連
するSTATビット)はそれぞれ対応するCLRまたは
STAT事象に1を書き込むことにより消去または設定
される。これらのビットにゼロを書き込んでも何の影響
も無いことに注意されたい。また、CLRビットの読み
取りは常に0であって関連の格納場所を持たない。設定
または消去用に別々のビットが用意されていて、別の部
分を設定することなく或るビットを消去したり、またそ
の反対が出来るようにしている。使用者が手動で行う事
象は同時に自動で行われる全ての事象よりも高い優先順
位を持つことに注意されたい。
事象に対してラッチされたSTATは、その事象に関連
した動作が完了した時点でのみ消去される。事象の消去
は可能な限り速やかに行われ、同期事象間の最小時間を
短くしている。この機能は事象が認識される処理量を効
果的に増大させる。同期の各種類の詳細な説明を以下に
行う:
にラッチされた条件は、DMAが関連する読み取り転送
要求を完了した時点で消去される。
にラッチされた条件は、DMAが関連する書き込み転送
要求を完了した時点で消去される。
DMAが新たなフレーム内で最初の読み取り転送要求を
完了した時点でRSYNC STATフィールドを消去
する。
ャンネルに対して、DMAは各読み取り転送および書き
込み転送用にアドレス計算を実行する。DMAは種々の
データ構造を生成できる。例えば、DMAは第n番目の
要素を貫く配列を横切ることが出来る。また、別々の発
信元から入力された1つのフレーム内で種々の要素を効
率的に取り扱い、また各々の発信元からのデータを互い
にグループとして纏めるようにプログラムすることが出
来る。
信元アドレスと宛先アドレスレジスタを図示し、これら
はそれぞれ次の読み取り転送および書き込み転送用アド
レスを保持している。
よびDST DIRフィールドはそれぞれDMAチャン
ネル発信元および宛先アドレスレジスタを増加更新、減
数更新したり、または影響を与えないように指標の設定
を行える。デフォルトとして、これらの値は00bに設
定されて、増加更新または減数更新が行われないように
なっている。もしも増加更新または減数更新が可能状態
となっていると、アドレス調整量はバイト単位の要素サ
イズとなる。例えば、もしも発信元アドレスが増加更新
に設定され、また16ビット半ワードが転送されるとす
ると、このアドレスは各々の読み取り転送の後2つづつ
増加更新される。
レス調整:表10に示されるように、SRC DIRお
よびDST DIRフィールドは、図14に図示される
ように独立に別々のDMAグローバルデータレジスタを
選択してアドレス調整量を決定することが出来る。別々
のDMAグローバルデータレジスタがDMAチャンネル
一次制御レジスタ内のINDEXフィールド経由で選択
される。基本アドレス調整とは異なり、このモードはそ
の要素転送が現行フレーム内で最後であるか否かに応じ
て異なる調整量を選ぶことを可能としている。通常調整
値(ELEMENT INDEX)は選択されたDMA
グローバルデータレジスタの最下位16ビットの中に含
まれている。フレームの最後に対する調整値(FRAM
E INDEX)はDMAグローバルデータレジスタの
最上位16ビットで決定される。これらのフィールドは
共に16ビット値を含む。従って、指標量は−3276
8から32767の範囲を取りうる。
ス調整を行う: 1)ELEMENT INDEX:1つのフレームの最
後の転送を除く全てに対し、ELEMENT INDE
Xは、DMAチャンネル発信元または宛先アドレスレジ
スタに対して、それぞれ各々の読み取りまたは書き込み
転送の後にSRC DIRまたはDST DIRフィー
ルドで選択されたように加算される量を決定する。 2)FRAME INDEX:もしも読み取りまたは書
き込み転送がフレームの最後の場合、FRAME IN
DEX(そしてELEMENT INDEXでは無い)
フィールドがアドレス調整用に使用される。これは単一
フレームでも多重フレーム転送でも生じる。
DMAチャンネル制御レジスタ内のESIZEフィール
ドを用いて、使用者はDMAが8ビットバイト、16ビ
ット半ワード、または32ビットワードを各々の転送時
に転送するように構成できる。以下のレジスタおよびビ
ットフィールドは適切な整列値を用いてロードされなけ
ればならない: 1)DMAチャンネル発信元および宛先アドレスレジス
タおよび全ての関連する再ロードレジスタ。 2)ELEMENT INDEX 3)FRAME INDEX
の倍数の値を含まねばならず、これによってワードアド
レスの上に整列される。半ワード転送の場合はこれらは
2の倍数でなければならず、これによって半ワードアド
レスの上に整列される。もしも整列されていない値がロ
ードされた場合は、動作は定義されない。バイト転送に
関しては整列に関する制約は存在しない。プログラムメ
モリに対する全てのアクセスは32ビット幅でなければ
ならない。また、32ビットレジスタ内の個別の8ビッ
トまたは16ビットフィールドにアクセスを試みる場合
はそのエンディアンを意識する必要がある。例えば、小
エンディアンの場合00bで終了するアドレスがLSバ
イトを選択する一方で、大エンディアンでは11bがL
Sバイトを選択する。
ードする例を説明する。自動初期化に際して、FRAM
E指標を転送する単一フレームブロックを再ロードレジ
スタの代わりに用いて次のアドレスを再計算することが
出来る。例えば、10バイトが固定の外部アドレスから
これに代わる位置(1バイトスキップ)に移動される単
一フレーム転送を考える: SRC DIR=00b,固定発信元アドレス。 DST DIR=11b,プログラム可能指標値 ELEMENT INDEX=10b,2バイト宛先飛
び越し量 FRAME INDEX=9x2=18=10010
b,−18バイト分の位置を訂正して宛先を同一場所か
ら再開始する。
する。ELEMENT COUNTとFRAME CO
UNTを共に用いて65535より大きなサイズの単一
フレームブロック転送を効率的に行える。ここで、要素
計数とフレーム計数の積を取って大規模で効果的な要素
計数を形成できる。下記が実行されなければならない: 1)もしもアドレスがプログラム可能値(DIR=11
b)を用いて調整されるように設定されている場合は、
もしもアドレス調整がDMAグローバルデータレジスタ
で決定される場合は、FRAME INDEXはELE
MENT INDEXに等しく無ければならない。これ
は発信元並びに宛先アドレスの両方に適用できる。もし
もアドレスがプログラム可能値で調整されるように設定
されていない場合は、この制約は適用されない、何故な
らばデフォルトによって同一アドレス調整が要素および
フレーム境界に対して生じるからである。 2)フレーム同期は不能化されなければならない(DM
Aチャンネル一次制御レジスタ内でFS=0である)。
これは大規模ブロックの中間部での同期要求を防止す
る。 3)第一フレーム内の要素数はEiである。後続のフレ
ーム内の要素数は((F−1)xEr)である。有効要
素計数は((F−1)xEr)+Eiである。ここで: F=FRAME COUNTの初期値 Er=ELEMENT COUNT再ロード値 Ei=ELEMENT COUNTの初期値
は、F=5,Er=32K,そしてEi=1に設定すれ
ば良い。
の位置に配置されているフレームの転送を行う(すなわ
ち、第一フレームの第一転送に続いて、第二フレームの
第一転送を行う): 1)ELEMENT INDEXをFxSに設定する。 2)FRAME INDEXを−(((E−1)xF)
−1)xSに設定する、ここで E=ELEMENT COUNT(フレーム当たりの要
素数)および同様にELEMENT COUNT RE
LOADの初期値、 F=FRAME COUNT(フレームの総数)の初期
値、 S=バイトで表した要素のサイズ、である。
2)の3フレーム(F=3)の転送を考える。従って、
ELEMENT INDEX=3x2=6、またFRA
MEINDEX=−(((4−1)x3)−1)x2=
−16である。発信元アドレスは変更されず、宛先が0x
80000000から開始されて増加更新されるものと仮定す
る。
格納作業が如何にして行われるかを示している。
う。スプリットチャンネル動作は単一のDMAチャンネ
ルが2つのチャンネルに対して、固定アドレスを有する
外部または内部周辺機器から入力(受信)および出力
(送信)ストリームの両方のサービスを行う能力を提供
することを可能とする。
るDMAグローバルデータレジスタを図示する。DMA
チャンネル一次制御レジスタ内のSPLITフィールド
で選択されたDMAグローバルデータレジスタはスプリ
ット転送でアクセスされるべき周辺機器のアドレスを決
定する:
はプロセッサー1への入力ストリームの発信元である。
選択されたDMAグローバル制御レジスタはこのスプリ
ット発信元アドレスを含む。
プロセッサー1からの出力データストリーム用の宛先で
ある。スプリット宛先アドレスはスプリット発信元アド
レスよりも1ワードアドレス(4バイトアドレス)大き
いと想定している。
に注意されたい。最下位2ビットはワードアドレスを強
制的に整列させるためにゼロに固定されている。三番目
の最下位ビットが0であるのは、スプリット発信元アド
レスが偶数ワード境界上にあると想定しているからであ
る。従ってスプリット宛先アドレスは奇数ワード境界上
にあると想定している。これらの関係は転送の幅に関係
なく保持される。内部周辺機器はこの協約に従う。外部
周辺機器に関して、設計アドレスの復号は好適にこの協
約に固執している。
プリット動作は送信要素転送と受信要素転送とで構成さ
れる。順番にこれらの各々は読み取りおよび書き込み転
送から構成される: 1)送信要素転送 a)送信読み取り転送:データはDMAチャンネル発信
元アドレスから読み取られる。発信元アドレスは続いて
構成通りに調整される。この事象は同期が取られていな
い。 b)送信書き込み転送:送信読み取り転送からのデータ
がスプリット宛先アドレスに書き込まれる。この事象は
WSYNCフィールドで示されるように同期が取られ
る。次に転送計数が減数更新される。DMAチャンネル
は内部的に係属の受信転送の数に追従する。 2)受信要素転送 a)受信読み取り転送:データはスプリット発信元アド
レスから読み取られる。この事象はRSYNCフィール
ドで示されるように同期が取られる。 b)受信書き込み転送:受信読み取り転送からのデータ
が宛先アドレスに書き込まれる。宛先アドレスは続いて
構成通りに調整される。この事象は同期が取られていな
い。
レーム計数しか存在していないので、ELEMENT
COUNTおよびFRAME COUNTは受信および
送信データの両方に対して同一である。スプリット動作
を適切に働かせるために、RSYNCおよびWSYNC
フィールドの両方を同期事象に設定しなければならな
い。また、フレーム同期はスプリットモードでは無効状
態にしておかなければならない。
る。しかしながら、送信転送は実行する前に全ての過去
の受信要素転送が完了するのを待つ必要はない。従っ
て、送信ストリームに関しては受信ストリームより先に
行うことが可能である。DMAチャンネル転送カウンタ
は、関連する送信転送が完了した後に減数更新(または
再初期化)される。しかしながら、発信元アドレスレジ
スタの再初期化は全ての送信要素転送が完了した後に行
われる。この形態は送信転送が受信転送より8以上先に
進んでいない場合に適用される。この場合、送信要素転
送は中止されるがこれはおそらく同期事象が欠落するこ
とが原因である。受信または送信要素転送が他に対して
7以下の場合、DMAチャンネルはこの情報を内部状態
として保持する。
する。優先順位は互いに競合する要求者のなかでどれが
複数の要求の中から1つの資源を支配するかを決定す
る。これらの要求者には下記が含まれる: 1)DMAチャンネル 2)CPUプログラムおよびデータアクセス。
タメモリ。 2)周辺機器バスを通してアクセスされる内部周辺機器
レジスタ。 3)内部プログラムメモリ 4)外部メモリインタフェース(EMIF)
る: 1)DMA対CPU優先順位:各々のDMAチャンネル
は、関連するDMAチャンネル制御レジスタ内のPRI
ビットを設定することにより独立に高い優先順位モード
と出来る。DMAグローバル制御レジスタ内のAUXP
RIは補助チャンネルに対して同一の機能を設定でき
る。高優先順位モードの場合、関連するチャンネルの要
求は高優先順位状態を示す信号と共に適切な資源に送ら
れる。これら全てのフィールドのディフォルトを0とす
る事で、高優先順位モードを無効とする。各々の資源は
この信号を自身の優先順位処理手順の中で用いて競合を
避けることが出来る。この信号をどの様に利用するかは
個別の資源の説明書を参照されたい。 2)DMAチャンネル間の優先順位:DMAは固定の優
先順位処理手順を有しており、チャンネル0の優先順位
が最も高く、チャンネル3の優先順位が最も低い。補助
チャンネルに対してはこの階層の中の任意の優先順位が
与えられる。
図示しており、これはチャンネル間の優先順位を規定し
ている。DMAグローバル制御レジスタ内のフィールド
は全てのDMAチャンネルに影響を与え、これらは表1
5に記述されている。このレジスタ内のフィールドは以
下の副セクションの中で参照される。
たはそれ以上のチャンネルが転送実行準備が出来ている
ときに、どのDMAチャンネルが読み取りまたは書き込
み転送を最初に実施するかを決定する。
バル制御レジスタ内のCH PRIフィールドをプログ
ラミングすることで構築出来る。デフォルトとして、C
HPRI=0000bでリセットされる。これは補助チ
ャンネルを最高位優先順位に設定し、続いてチャンネル
0、チャンネル1、チャンネル2と続き、チャンネル3
が最低位の優先順位となる。
に読み取りおよび書き込み転送に対して独立して行われ
る。いかなる種類であっても同期を待機しているプロセ
スにある全てのチャンネルはDMAの制御を失い、最低
優先順位チャンネルとなる。一度同期が受信されると、
そのチャンネルは最低優先順位チャンネルからDMAの
制御を再取得する。この規則はスプリットモード転送の
送信および受信ポートに対して独立に適用される。送信
ポーションは受信ポーションよりもより高い優先順位を
有する。
がひとつの資源を争っている場合は、どのDMAチャン
ネルが優先順位を持っているかの調停が論理的に最初に
行われる。次に最高位のDMAチャンネルとCPUとの
間の調停が行われる。通常、もしもチャンネルの優先順
位がCPUよりも低い場合は、全てのより低い優先順位
のチャンネルもまたCPUよりも低い優先順位となるは
ずである。同様に、もしもチャンネルがCPUよりも高
い優先順位を持っている場合は、全てのより高い優先順
位のチャンネルはCPUよりも高い優先順位となるはず
である。このDMA対CPUの調停は各々の個別の資源
によって決定される。より詳しい説明はそれらの資源の
説明書を参照されたい。PRIフィールドはそのチャン
ネルが中断または停止されたときにのみ修正されること
に注意されたい。
要な読み取り同期を受信すると、低位の優先順位のチャ
ンネルからDMAの制御を獲得する。スイッチングチャ
ンネルに於いて、現行のチャンネルは要求された読み取
りからの全てのデータが完了するのを許可する。続いて
DMAはどのより高い優先順位のチャンネルがDMA制
御装置読み取り動作の制御を獲得するかを決定する。そ
のチャンネルは続いてその読み取り動作を開始する。同
時に、先行のチャンネルからの書き込み転送の完了が許
可される。
並びに書き込みに関して同一の資源を争っている場合
は、より高い優先順位のチャンネルが勝つ。例えばチャ
ンネル0がEMIFから読み取りを行おうとし、またチ
ャンネル1がEMIFに書き込もうとしている場合、チ
ャンネル0の読み取りが最初に行われる。もしも1つの
チャンネルが同一の資源に対して読み取り並びに書き込
みの両方を要求している場合、書き込みが最初に行われ
る。
する。DMAチャンネル動作に関して、使用者に重大な
マイルストンまたは起きそうな問題を通知するためにい
くつかの条件が利用できる。これらの事象(CONDビ
ットフィールドで示される)はDMAチャンネル二次制
御レジスタ内に保持される。
して、DMAがCPUのチャンネルxに対して対応する
割り込み有効(IE)ビットフィールドを通して割り込
みトリガをかける方法をも提供している。もしもCON
Dビットおよびその対応するIEビットが設定される
と、その条件が有効化されて関連するDMAチャンネル
からCPUへの割り込み信号の状態を変化させる。もし
もDMAチャンネルx制御レジスタ内のTCINTビッ
トが設定されると、全ての有効化された条件の論理OR
を取ってDMA_INTx信号が形成される。それ以外
の場合はDMA_INTx信号は無効である。この論理
図が図17に示されている。割り込み選択器で選択され
てDMA_INTが低状態から高状態に変化すると割り
込み条件が生成されてCPUでラッチされる。
X COND,WDROP,およびRDROPビットは
警告条件として取り扱われる。もしもこれらの条件が有
効化されて稼働している場合、これらはTCINTビッ
トの値に関係なくDMAチャンネルを運転状態から中断
状態に移行する。
されると、そのCONDビットは使用者が0を書き込む
ことによってのみ消去される。それ以外の場合はCON
Dビットは以下の章で示されるように自動的に消去され
る。使用者が1をCONDビットに書き込んでも無効で
ある。従って手動でその条件を強制的に作ることは出来
ない。
で消去される。1つの例外はブロック完了事象(BLO
CK IE)に対する割り込み有効であって、これはリ
セット時に設定される。従って、デフォルトとしてブロ
ック転送完了条件のみがCPU割り込みに作用できる唯
一の条件である。その他の条件は関連するIEビットを
設定することで有効化出来る。
タ内の各々の条件を記述している。システムアプリケー
ションに応じて、これらの条件はエラーを提示する。注
意事項として、最終フレーム条件は再ロードレジスタ値
を自動初期化用に変更するように使用できる。フレーム
指標および要素計数再ロードは全てのフレームに使用さ
れる。従ってブロック転送に於いて最終フレーム転送を
除く全てが完了するのを待ってこれらの値を変更する。
それ以外の場合は、現行(次回分では無く)ブロック転
送が影響される。
含むDMA制御装置の内部データ移動経路を示す。
元および宛先の1つを選択することが出来る: 1)EMIF 103 2)内部プログラムメモリ23 3)内部データメモリ22 4)内部周辺機器バス110
々のインタフェースからDMA制御装置に用意されてい
る。
込みバスを有する。しかしながら補助チャンネルはDM
Aに対してアドレス生成を提供するので、そのバスの名
称規約は異なっている。例えば、補助チャンネルからD
MAを通してのデータ書き込みは補助書き込みバスを通
して実行される。同様に、補助チャンネルからDMAを
通してのデータ読み取りは補助読み取りバスを通して実
行される。
O300保持経路であって、これは内部プログラムおよ
びデータメモリ、同様に外部同期DRAM(SDRA
M)または同期バーストSRAM(SBSRAM)を含
む高性能メモリへのバーストを容易にするために具備さ
れている。チャンネルの保持レジスタ310a,310
b,310cまたは310dと組み合わされて、これは
効果的に11段FIFOとなる。
在している: 1)アドレスFIFO320は読み取りアドレスの2つ
の最下位ビットおよび読み取り進行サイクル時のend _
of_frame およびend _of_block 状態を格納する。 2)36ビット幅データFIFO300は、32ビット
読み取りデータワードを読み取り確認のためにアドレス
FIFOから送られるデータと共に格納する。 3)2段の中間段310a−310dはアドレス段から
送られるデータをデータFIFOに行く前に格納する
が、読み取りデータ待ち時間には2サイクルの肯定確認
が必要だからである。
中に、全ての書き込みadvの読み取り肯定確認(ac
k)が始まる。これらのackの開始によりアドレスF
IFO320からのデータが取り除かれ、これらをデー
タFIFO300内に読み取りデータと共に配置する。
従ってデータ項目はこれらの段を通って分配される。計
数論理回路340が存在し、これは各々の段に格納され
ている項目数を追跡している。
IFOを制御している。1つのチャンネルがFIFOの
制御権を得るには下記の条件が全て適用されなければな
らない: 1)そのチャンネルは有効状態の読み取りまたは書き込
み同期を有していないこと。スプリットモードは読み取
りおよび書き込み同期を必要とするため、FIFOはス
プリットモード中のチャンネルでは使用されない。もし
もフレーム同期のみが有効な場合はFIFOはそのチャ
ンネルで使用されることに注意されたい。 2)チャンネルが動作中であること。 3)FIFOがその他全てのチャンネルからのデータを
受け付けていないこと。 4)このチャンネルが上記3つの条件を満たすものの中
で最も高い優先順位のチャンネルであること。
キングを最小化する。Head-of -line ブロッキングはD
MAがその第一要求を行う前に一連の低位優先順位に対
するより高い優先順位の待ちを要求する際に生じる。そ
の後より高位の優先順位のチャンネルはその要求をその
保持レジスタを通して完了する。保持レジスタはDMA
制御装置を通した場合ほど高い処理量は実現しない。ギ
ャップの中で低位優先順位のチャンネルは読み取り転送
を開始することは無いが、その書き込み転送を完了する
ことによってFIFOをフラッシュすることが出来る。
より高位の優先順位のチャンネルは未だFIFOの制御
に入っていないので、そのアクセスの中でギャップが生
じ、そこではより低位の優先順位のチャンネルがその転
送をFIFOから流す。FIFOが消去されて、もしも
高位優先順位チャンネルが停止されていなければ、これ
はFIFOの制御を獲得する。
って読み取り転送を可能とする。この特徴により要素転
送の最後に利用可能な転送帯域幅での変更に対する罰則
を最小と出来る。従ってDMAは予想転送の読み取りお
よび書き込み部分に於いて別々のウィンドウを利用する
ことが出来る。もしも要求を行っているDMAチャンネ
ルがそのFIFOを用いている場合は、その資源はCP
Uクロックサイクル速度で読み取りまたは書き込みアク
セスを持続することが出来る。しかしながら、第一アク
セスを実行する際にはいくらかの待ち時間が生じるはず
である。資源とDMA制御装置との間のハンドシェイキ
ングにより、後続の要求と受信された読み取り転送デー
タの待ち時間の速度が制御される。
クロック速度で持続するために、FIFOは満杯にする
ことは出来ない。FIFOが満杯になるのを避けるため
に、読み込み要求が最後に空になったFIFO位置にデ
ータを入れる前にデータがFIFOから書き出され始め
なければならない。周辺機器ハンドシェイク動作から、
我々は11ワードのFIFO段が必要と判断した。従っ
て、どの時点でもDMAは書き込み転送の完了を待って
いる11個までの読み取り転送待ち行列をFIFOの中
に持っている。
の資源に対する任意の懸案要求から読み取りデータを捕
獲する。例えば、DMAがデータをパイプライン化され
ているSDRAMまたはSBSRAMの様な外部メモリ
から内部データメモリにデータを読みとる場合を考え
る。CPUには要求を行うDMAチャンネルよりも高位
の優先順位が与えられており、EMIFの競合プログラ
ムフェッチを行うと仮定する。また、同時にこのCPU
は内部メモリの全てのバンクにアクセスし、DMAを排
除していると仮定する。この場合、FIFOは懸案DM
Aアクセスを完了しプログラムフェッチを進めることを
可能とする。DMAがパイプライン化された要求構造を
しているため、どの時点でもDMAはそのデータが未だ
到着していない11個までの懸案読み取り転送要求を持
つことが可能である。11個の要求が未処理となると、
DMAは後続の読み取り転送要求を中止する。
タを有する。もしもDMAチャンネルが内部FIFOで
はなくむしろその保持レジスタを通してデータを転送し
ているとすると、読み取り転送はその結果として行われ
る。一度読み取り転送要求が開始されると、次の読み取
り転送は読み取りデータが保持レジスタ内に到着するま
で開始されない。DMA制御装置がスプリットモードで
あるか否かによって追加の制約が適用される: 1)スプリットモード:2つのレジスタがスプリットモ
ード用の別々の送信および受信データストリーム保持レ
ジスタとして働く。送信および受信読み取り転送のいず
れに対しても、関連する書き込み転送要求が完了するま
で次の読み取り転送要求は出されない。 2) 非スプリットモード:しかしながら、スプリットモ
ードで無い場合は、データが到着すると次の読み取り転
送は関連する書き込み転送が完了するのを待たずに行わ
れる。しかしながら、2つの保持レジスタしか無いの
で、読み取り転送は書き込み転送の1つだけ前に居る。
イクル処理量で要素転送を実行することが可能である
が、それは読み取り転送および書き込み転送に対して別
々の資源にアクセスし、またこれらの資源の両方が単一
サイクル処理量を有する場合である。ひとつの例は単一
サイクル外部SBSRAMから内部データメモリに、別
のチャンネルまたはCPUから競合を受けることなく行
われる非同期ブロック転送であろう。DMA性能は下記
で制限される:
ち時間。 2)読み取り、書き込み、またはフレーム同期に対する
待ち。 3)他のDMAチャンネルとの資源に対する競合。
ン、DMAC(0−3)を次に説明する。DMA動作完
了ピンは各々のチャンネル(DMAC0−DMAC3)
に対して事象を発生する外部論理回路へのフィードバッ
ク方法を提供する。DMAチャンネル二次制御レジスタ
内のDMAC ENビットフィールドで決定されるよう
に、このピンはRSYNC STST,WSYNC S
TAT,BLOCK COND,またはFRAME C
ONDの状態を反映することが可能であり、または高ま
たは低汎用目的出力として取り扱われる。もしもDMA
CがRSYNCSTATまたはWSYNC STATを
反映している場合、外部的に一度同期事象が認識される
とDMACは低から高状態へ遷移する。その同一事象の
サービスが終わると(その状態ビットが消去されること
で示されるように)、DMACは高から低状態へ遷移す
る。チップから送り出される前にDMAC信号はCLK
OUT2(CPUクロック速度の1/2)で同期され
る。これらの信号の有効期間は最低2 CLKOUT2
周期幅が保証されている。また、たとえ同期前であって
もパルスは1CPUクロック周期幅だけなので、最小2
CLKOUT周期の有効高パルスがDMACピンに出現
する。
ストシステム51内のエミュレータを用いて、CPUを
実行パケット境界上で停止させて、単一ステップ動作、
ベンチマークテスト、プロフィール抽出、またはその他
のデバッグ用途で使用する。使用者はこの時にDMAが
一時中断をするかまたは実行継続するかの構成を行うこ
とが出来る。この機能はDMA一時制御レジスタ内のE
MODビットを0または1にそれぞれ設定することで実
施される。もしも一時中断の場合は、STATUSフィ
ールドがそのチャンネルの一時中断状態を反映する。補
助チャンネルはエミュレーション停止中も実行を継続す
る。米国特許第_____(明細書TI−24946)
にはマイクロプロセッサ1のエミュレーションが完全に
詳細に説明されており、此処に記述することで参照され
ている。
ス(HPI)はパラレルポートであって、これを通して
ホストプロセッサはCPUのメモリ空間に直接アクセス
を行える。ホスト装置はインタフェースのマスタなの
で、そのアクセスの容易さを増加させる。ホストおよび
CPUは情報を内部または外部メモリを経由して交換で
きる。加えて、ホストはメモリ写像された周辺機器に対
して直接アクセスを有する。CPUのメモリ空間への接
続性はDMA制御装置を通して提供される。CPUにア
クセス不能な専用アドレス並びにデータレジスタはHP
IをDMA補助チャンネルに接続し、これは続いてHP
IをCPUのメモリ空間に接続する。インタフェースを
構成するために、HPIおよびCPUはHPI制御レジ
スタ(HPIC)にアクセス出来る。ホストはホストア
ドレスレジスタ(HPIA)およびホストデータレジス
タ(HPID)また同様にHPICに外部データ並びに
インタフェース制御信号(図19)を用いてアクセスす
ることが出来る。
の簡略図を示す。このHPIは経済的な16ビット外部
インタフェースに自動的に後続の16ビット転送を結合
して、CPUに対して32ビットデータを提供する。ホ
スト装置がデータをHPIDを通して転送するとき、D
MA補助チャンネルはCPUのアドレス空間にアクセス
する。HPIは高速back-to-backホストアクセスを支援
する。メモリ写像された資源に対する競合が無い場合
は、HPIは4CPUクロック毎に1つの16ビット値
を転送することが出来る。従ってDMA補助チャンネル
は8CPUクロック毎に1つの32ビットアクセスを実
行できる。
PIデータバスおよびインタフェースを構成しかつ制御
する制御信号から構成されている。このインタフェース
は種々のホスト装置を極わずかの論理回路の追加または
全く必要とせずに接続することが出来る。
5)は情報をホストと交換する。チップアーキテクチャ
が32ビットワード構造であるため、ホストとの全ての
転送は2つの連続する16ビット半ワードから成ってい
る。ホストデータ(HPID)書き込みアクセスに際し
て、HBE−1:0バイトは選択を可能とし、このバイ
トは32ビットワードでかき込まれる必要がある。HP
IA,HPICアクセス、同様にHPID読みとりアク
セスは32ビットアクセスとして実行され、バイト有効
化は使用されない。専用のHHWILピンは第一または
第二半ワードが転送されているか否かを指示する。内部
制御レジスタビットは、第一または第二半ワードが1つ
のワードの上位半ワードの中に設定されたか否かを判定
する。ホストは実行中のHPIアクセスの第一半ワード
/第二半ワード(HHWIL低/高)の順序を壊しては
ならない。
びHDS2−)、読みとり/書き込み選択(HR/W
−)、およびアドレスストローブ(HAS−)はHPI
が種々の工業標準に基づくホスト装置と、極僅かの論理
回路を追加するかまたは全く追加する必要なく、インタ
フェースを取れるようにしている。HPIはホストとマ
ルチプレクスされているかまたは専用のアドレス/デー
タバス、1データストローブおよび読みとり/書き込み
ストローブ、または読みとりおよび書き込み用の2つの
別々のストローブと容易にインタフェースを取ることが
できる。
レジスタがアクセスされているかを示す。これらの入力
を用いて、ホストはHPIA(これはCPUメモリ空間
内のポインタとして働く),HPIC,またはHPID
へのアクセスを指定できる。これらの入力はHHWIL
と共に、ホストアドレスバスビットまたはこれらのビッ
トの機能によって共通に駆動される。HPICに書き込
むことにより、ホストはCPUに割り込みを欠けること
が可能であり、一方CPUはホストへの割り込み出力H
INT−を能動化することができる。
ンの自動アドレス更新でアクセスする事が出来る。この
機能により順番に並んでいるワード位置への読みとりま
たは書き込みが容易になる。加えて、自動更新HPID
読みとりは自動更新されたアクセスでのデータの事前フ
ェッチを行うので、後続のホスト読みとり要求での待ち
時間が減少される。HPI準備完了ピン(HRDY−)
はホスト待ち状態の挿入を可能とする。待ち状態は、H
PI経由でアクセスされたメモリマップ内の点への待ち
時間と、同様にホストアクセスの速度とによっては必要
である。ホストアクセスの速度によっては、先のHPI
D書き込みアクセスまたは事前フェッチされたHPID
読みとりアクセスが完了する前にホストがホストポート
へアクセスを試みようとした際に準備中状態を強制する
場合もある。この場合、HPIはHRDY−経由でホス
トを切り離す。HRDY−は自動的に(ソフトウェアの
ハンドシェイクは不要)ホストアクセス速度をDMA補
助チャンネルからのデータ配信速度に調整するための簡
便な方法を提供する。HRDY−ピンの特長を利用でき
ないハードウェアシステムの場合、HPIC内のHRD
Yビットがソフトウェアハンドシェイクを使用するのと
同じように利用できる。
置に対してフレキシブルなインタフェースを実現する。
表17はHPIピンとそれらの機能を表示している。こ
の章の残りの部分でピンを詳細に説明する。
る。HDはHPI読みとりアクセスを実行していない場
合は高インピーダンスに置かれている。
あるかを示す。これら2つのピンの状態はHPIアドレ
ス(HPIA)、HPIデータ(HPID)、またはH
PI制御(HPIC)レジスタへのアクセスを選択す
る。HPIAレジスタはHPIメモリ内へのポインタと
して働き、HPICは転送に関する制御並びに状態ビッ
トを含み、またHPIDは転送される実データを含む。
加えて、HPIDレジスタはオプションの自動アドレス
更新でアクセス出来る。表18はHCNTL0/1ビッ
ト機能を説明している。
は最下位ではない・・・これはHPICレジスタ内のH
WOBビットで指定されており、この章で後ほど説明す
る。)HHWILは第一半ワードに対しては低、また第
二半ワードに対しては高状態を取る。
ビットワードのどの部分が書き込まれるべきかを示す。
HBE−1:0の値はHPIAまたはHPICアクセス
またはHPID読み取りに際して重要ではない。HPI
D書き込みに際し、HBE0−は半ワード中の最下位バ
イトを有効とし、HBE1−は半ワード中の最上位バイ
トを有効とする。表19は有効な組み合わせを示す。バ
イト書き込みに対して、半ワードアクセスのいずれか
(両方ではない)の1つのHBE−のみが活性低状態に
有効化される。半ワードデータ書き込みに対して、両方
のHBE−が半ワードアクセスのいずれか(両方ではな
い)内で活性低状態に保持されなければならない。ワー
ドアクセスに対して、両方の半ワードアクセス内で両方
のHBE−が活性低状態に保持されなければならない。
それ以外の組み合わせは無効である。バイト有効および
CPUのエンディアン性(LENDIANピン経由で選
択される)は、アクセスで示された論理アドレスを決定
する。
ホストはHPIを読みとるためにはHR/Wを高状態に
駆動し、HPIに書き込むためには低状態に駆動しなけ
ればならない。読み取り/書き込み選択出力または読み
取りまたは書き込みストローブのいずれかを具備してい
ないホストはこの機能のためにアドレスラインを使用で
きる。
備が完了していることを示す。不活性高の場合、HRD
Y−はHPIが先のHPID書き込みまたはHPID読
み取り事前フェッチアクセスの現行読み取りアクセスの
内部部分を完了させるために使用中であることを示す。
HCS−はHRDYを有効化する;すなわちHCS−が
低の場合HRDYは常に低である。
S2− CS−,HDS1−,HDS2−は下記のいずれかによ
ってホストとの接続を可能とする: 読み取り/書き込み選択を具備した単一ストローブ出
力。 別々の読み取りおよび書き込みストローブ出力。この場
合、読み取りまたは書き込み選択は読み取りおよび書き
込み選択に対して異なるアドレスを使用して実施でき
る。
052入力の等価回路を示す。一緒に使用することによ
り、HCS−,HDS1−,およびHDS2−は活性低
内部HSTRB−信号を生成する。HSTRB−はHC
S−が活性低でHDS1−およびHDS2−のいずれか
(両方では無い)が活性低の場合にのみ、活性低となる
ことに注意されたい。HSTRB−の立ち下がり(HA
S−が非活性高状態に固定されたとき)は、HCNTL
1:0,HHWIL,HR/W−,およびHBR−1:
0をサンプリングする。従って、最後に落ちたHDS1
−,HDS2−,またはHCS−がサンプリング時間を
制御する。HCS−はHPIの有効入力として働き、ア
クセス中は低状態でなければならない。しかしながら、
HSTRB−信号がアクセス間の実際の境界を決定する
ため、HCS−はHDS1−およびHDS2−の両方が
共に非活性高または活性低となるまで、後続のアクセス
の間低状態に留まっているはずである。
を具備したホストは、これらのストローブをHDS1−
またはHDS2−のいずれかに接続する。単一データス
トローブを具備したホストは、使用されていないピンを
高状態としてそのストローブをHDS1−またはHDS
2−のいずれかに接続する。HDSの接続に係わらず、
HR/W−は転送の方向を決定するために要求される。
HDS1−及びHDS2−は内部的に排他論理NORが
取られているので、高状態の真データストローブを具備
したホストは、その他のHDS入力を低状態に接続して
そのストローブをHDS入力の1つに接続することが出
来る。
ス型式に対してHPI読み取りアクセスを開始する。 2.書き込みに際して、その立ち上がりは全てのアクセ
ス型式に対してHPI書き込みアクセスを開始する。 3.HPI制御入力をラッチする立ち下がりは下記を含
む:HHWIL,HR/W−,HBE01:0,HCN
TL1:0。HAS−もまた制御入力のラッチに影響を
与える;以下の説明を参照。
制御を行う。別の言葉で言えば、HCS−が活性低の場
合にのみ、準備中状態は非活性高状態で駆動されたHR
DY−ピンで示される。
W−,及びHHWILをアクセスサイクルの初期の段階
で取り除くことが出来るので、バス状態をアドレスから
データ情報に切り替えるのに更に多くの時間が捻出でき
る。この特徴により、マルチプレクスアドレス及びデー
タ型バスへのインタフェースが容易になる。この型のシ
ステムに於いて、ALE信号がしばしば提供され、これ
は通常HAS−に接続された信号である。
を具備したホストはHASをそれらのALEピンまたは
等価のものに接続する。次にHHWIL,HCNTL0
/1,およびHR/W−はHAS−の立ち下がりでラッ
チされる。使用時にはHAS−はHCS−,HDS1−
またはHDS2−の遅いものよりも先んじる必要があ
る。別々のアドレスおよびデータバスを具備したホスト
はHASを高状態に接続できる。この場合、HHWI
L,HCNTL0/1,およびHR/Wは、HASが非
活性(高状態)に留まっている間に、HDS1−,HD
S2−,またはHCS−の一番最後ものの立ち下がりで
ラッチされる。
ットで制御される。チップがリセット中は高状態で駆動
される。この信号は後ほど更に詳しく説明する。
ない場合と、使用されている場合のHPIアクセスタイ
ミングを示す。HSTRB−は図20に記述されてい
る、内部的に生成されたストローブを表す。HADは典
型的にホストアドレスラインで駆動される制御信号を表
す:HCNTL1:0,HR/W−,HHWIL,およ
びHBE−1:0。HCNTL1:0およびHR/Wは
両方の半ワードアクセスに対して同一の値を持たなけれ
ばならない。HHWILは第一半ワード転送に対しては
低、また第二に対しては高でなければならないことを示
すために別々に示されている。もしもHASが使用され
ていない場合は(図21に示されるように高状態に固
定)、HSTRB−の立ち下がりでこれらの信号がラッ
チされる。図22に示されるようにHASが使用されて
いる場合は、HASの立ち下がりでこれらの値がラッチ
される。この場合、HASの立ち下がりはHSTRBの
立ち下がりよりも先行しなければならない。読み取りに
際して、HSTRB−の立ち下がりよりも少し遅れてデ
ータは有効となる。もしも有効データがHPID内に未
だ存在していない場合は、このデータはHRDY−の立
ち上がりで設定され、HSTRBの立ち上がりまで保持
される。書き込みに際して、ホストはHSTRB−の立
ち上がりに関連してデータを設定しなければならない。
用する3つのレジスタを纏めたものである。HPIDは
現行のアクセスが読み取りの場合、HPIメモリから読
みとられたデータ、または現行のアクセスが書き込みの
場合、HPIメモリへ書き込まれる予定のデータを含
む。現行のアクセスが発生するアドレスをHPIメモリ
内に含む。このアドレスは30ビットワードのアドレス
であるため、最後の2ビットはHPIA書き込みによっ
ては影響されず、常に0として読み込まれる。
ットを設定しインタフェースを初期化するようにアクセ
スされた第一レジスタである。従って、HPICは同一
の高および低半ワード内容を具備した32ビットレジス
タとして構成される。ホスト書き込みに際して、両方の
半ワードは同一で無ければならない。低側半ワードおよ
び高側半ワードは実際は同一の格納位置であることに注
意されたい。読み取り専用に予約された値には格納場所
は割り当てられていない。低側半ワードへのCPU書き
込みのみがHPIC値とHPI動作に影響を与える。通
常、HPICは構成ビットを設定しインタフェースを初
期化するようにアクセスされた第一レジスタである。従
って、HPICは同一の高および低半ワード内容を具備
した32ビットレジスタとして構成される。
トウェアハンドシェイク 先に説明したように、HRDY−ピンはホストに対して
HPIDアクセスが完了していないことを示すことが出
来る。例えば、現行HPIDアクセスは先行するHPI
Dアクセス書き込みが完了するか、または先行するHP
ID事前フェッチ読み取りが完了するのを待たされる。
また、現行のHPID読み取りアクセスはその要求した
データが到着するのを待たされる。しかしながら、HP
IC内のHRDYおよびFETCHビットはソフトウェ
アハンドシェイクを可能とし、これはハードウェア準備
完了制御が必要とされないシステム内でHPI接続を可
能とする。全ての事前フェッチされたデータはHPIレ
ジスタが書き込まれるかまたは、次のHPI読み取りの
後か、いずれかが先に来るまで保持される。FETCH
およびHRDYビットは下記に示すように読み取り転送
を実行するように使用される: 1.ホストがHRDYビットを設定するためにポーリン
グする。 2.ホストが希望するHPIA値を書き込む。このステ
ップはもしもHPIAが既にその希望する値に設定され
ている場合は飛ばされる。 3.ホストが1をFETCHビットに書き込む。 4.ホストがHRDYビットを設定するためにポーリン
グする。 5.ホストがHPID読み取り動作を実行する。この場
合、HPIは既に準備完了状態(HRDYビット=1)
にある。 −もしもこれが後更新を具備した読み取りで有った場
合、4へ。 −同一位置からの読み取りの場合、3へ。 −異なるアドレスからの読み取りの場合、2へ。
込み動作に使用できる: 1.ホストがHRDYビットを設定するためにポーリン
グする。 2.ホストが希望するHPIA値を書き込む。このステ
ップはもしもHPIAが既にその希望する値に設定され
ている場合は飛ばされる。 3.ホストはHPID書き込み動作を実行する。 −別の書き込み動作の場合、1へ。
いて互いに割り込みをかけることが出来る。この副章は
この処理工程に関する更に詳しい情報を提供する。
めにDSPINTを使用する ホストはCPUにHPIC内のDSPINTビットへ書
き込むことで割り込みをかけることが出来る。DSPI
NTビットは内部DSPINT信号に直結されている。
DSPINT=0の時にDSPINT=1を書き込むこ
とにより、ホストはDSPINT信号に0から1の遷移
を引き起こすことが出来る。割り込み選択器を用いて適
切に選択されると、この遷移はCPUによって割り込み
条件として検出される。CPUはDSPINT=1を書
き込むことによってDSPINTビットを消去すること
が出来る。ホストまたはCPUのどちらかがHPICに
DSPINT=0を書き込んだとしても、DSPINT
ビットにも信号にも影響を与えない。
HINT−を使用する CPUはHPIC内のHINTビットに書き込むことに
より、活性低割り込み条件をHINT−信号上に送るこ
とが出来る。HINTビットは反転されてHINTピン
に直結される。CPUはHINT=1を書き込むことに
よりHINT活性低を送ることが出来る。ホストはDS
PINT=1を書き込むことによりHINT−を非活性
高状態に消去することが出来る。ホストまたはCPUの
どちらかがHPICにHINT=0を書き込んだとして
も、HINTビットにもHINT信号にも影響を与えな
い。このビットはホストインタフェース側で2度読み取
られ、もしもCPUが2つの読み取り動作の間にこれら
のビットの一方または両方を変更した場合、ホストによ
る第一及び第二半ワードの読み取りは異なるデータを表
す。
てHPIAを初期化することで開始し、次にHPIDに
データを書き込んだり、そこからデータを読み取ったり
する。HPIDの読み取りまたは書き込みは内部サイク
ルを開始し、これは希望するデータをHPIDとDMA
補助チャンネルとの間で転送する。任意のHPIレジス
タへのホストアクセスは、HPIバス上で2度の半ワー
ドアクセスを要求する:第一はHHWIL低で、そして
第二はHHWIL高で行われる。典型的にホストは第一
半ワード/第二半ワード(HHWIL低/高)の順番は
壊さない。もしもこの順番が不適切に壊されると、デー
タが失われたり、予期しない動作が結果として生じる可
能性がある。第一半ワードアクセスは先行のHPI要求
が完了するまで待たなければならない。先行要求にはH
PID書き込みおよび事前フェッチHPID読み取りが
含まれる。従ってHPIはHPIがこの要求を開始でき
るまでHRDY−高状態を主張しない。第二半ワードア
クセスは常にHRDY−活性低で行われるが、それは先
行する全てのアクセスが第一半ワードアクセスまでに完
了してしまうからである。
(この章の図の中の全ての数値は16進数である) データにアクセスする前に、ホストは最初にHPIC,
特にHWOBビットを初期化し、続いてHPIAを初期
化しなければならない(HWOBがHPIAアクセスに
影響を与えるため、この順序でなければならない。)H
WOBを初期化した後、ホストはHPIAに正しい半ワ
ード整列で書き込むことが出来る。表22および表23
は、それぞれHWOB=1およびHWOB=0に対する
初期化順序を図示している。この例に於いて、HPIA
は80001234h に設定される。これらの全てのアクセスに
於いて、HPIC内のHRDYビットが設定されること
に注意されたい(ビット19および3)。
セス 此処で先に説明したようにHPIが初期化されると仮定
すると、ホストは自動更新を行わずにそのアドレスに読
み取りアクセスを行おうとする。ホストはアドレス8000
1234h のワードの読み取りを欲しており、その位置のワ
ードの値が789ABCDEh であると仮定する。表24および
表25は、それぞれHWOB=1およびHWOB=0に
対するこのアクセスを図示している。第一半ワードアク
セスに際し、HPIは全ての先行の要求が完了するまで
待つ。この時間の間、HRDY−は非活性高状態にに保
持される。従ってHPIは読み取り要求をDMA補助チ
ャンネルに送る。もしも先行の要求のし掛かりが無い場
合は、これはHSTRB−の立ち下がりで生じる。HR
DY−はDMA補助チャンネルが要求されたデータをH
PIDの中にロードするまで高状態に留まる。全ての補
助チャンネル読み取りはワード読み取りであるため、第
二読み取りアクセスの初めに、そのデータは既にHPI
D内に存在している。従って第二半ワードHPID読み
取りは決して準備中条件に遭遇することはなく、HRD
Y−は低状態に留まっている。HPIがワード読み取り
のみを行うので、バイト有効は重要でないことに注意さ
れたい。
セス 自動更新機能の結果、効率的な順番のホストアクセスが
実現できる。HPID読み取りおよび書き込みアクセス
の両方に対して、これはホストが更新されたアドレスを
HPIAの中にロードする手間を省く。読み取りアクセ
スに関して、次のアドレスで指定されたデータのフェッ
チが現行の読み取りが完了した後に直ちに開始される。
後続の読み取りの間の間隔は通常事前フェッチデータで
あるので、次のアクセスへの待ち時間は削減される。全
ての事前フェッチデータは、いずれかのHPIレジスタ
が書き込まれるかまたは次のHPI読み取りの後か、い
ずれにせよ先に行われるものが終わるまで残っている。
事前フェッチはまたホストがFETCH=1をHPIC
に書き込んだ後にも起こすことが出来る。もしも次のH
PIアクセスがHPID読み取りの場合、データの再フ
ェッチは行われず、事前フェッチされたデータがホスト
へ送られる。それ以外の場合は、HPIは事前フェッチ
が完了するまで未だ待たなければならない。
スを示す。第一半ワードアクセスが完了した後(第一H
STRB−の立ち上がりで)、アドレスは次のワードま
たは80001238h に更新される。その位置のデータは8765
4321h であると仮定する。このデータは事前フェッチさ
れHPIDの中にロードされる。事前フェッチはHST
RB−の立ち上がりで第二半ワード読み取りに対して開
始される。
ード部分(HEOBで選択されるように下位半ワードま
たは上位半ワード)は、ホストからやってくるデータで
上書きされ、第一HBE−1:0はHHWILピンが低
状態の間にラッチされる。HPIDの第二半ワード部分
はホストからやってくるデータで上書きされ、第二HB
E−1:0対はHHWILピンが高状態の間にラッチさ
れる。この書き込みアクセスの最後に(HSTRB−の
第二立ち上がりで)、HPIDは32ビットワードとし
てHPIAで指定されたアドレスに4つの関連するバイ
ト有効と共に転送される。
=1およびHWOB=0の場合のHPID書き込みアク
セスを図示する。ホストは5566h を場所80001234h の下
位16ビットに書き込み、この場所は既にHPIAで指
定されている。この場所は値0で始まると仮定されてい
る。HPIは全ての先行する転送がHRDY−を不活性
高状態に設定することで完了するまでホストを保持す
る。また、一度第一半ワードが準備完了状態となると、
第二半ワードは決して準備中状態にはならない。もしも
HPID内で待ち状態の処理待ちの書き込みが無い場合
は、書き込みアクセスは通常は準備中状態を経ずに進行
される。HBE−1:0は下位16ビットを転送する場
合にのみ有効であることに注意されたい。
OB=0に対する、自動更新有りのホスト書き込みデー
タを図示する。これらの例は5.4.4,と同じであるが、H
CNTL1:0の値と続けてアドレス80001238のワード
の上位バイトに33を書き込む点が異なっている。更新
はHSTRB−の立ち上がりで次のHPID書き込みア
クセスに際して行われる。もしも次のアクセスがHPI
DまたはHPICアクセス、またはHPID読み取りの
場合、自動更新は行われない。
成されなければならない。しかしながら、高速動作に対
しては使用者は単一半ワードアクセスを実行することも
可能である。これらはいくつかの場合には有用である: HPIC:表22に於いて全HPICには第一書き込み
の後に正しく書き込まれていることに注意されたい。H
PICに書き込む際に、ホストはHHWILに注意を払
う必要もないし、また両方の半ワードに対して2つの連
続した書き込みを行う必要も無い。同様に、ホストはH
PICを一度だけ読みとるように選択することも可能で
ある、何故ならば2つの半ワードとも同一の値を含んで
いるためである。 HPIA:表22に於いて、HHWILおよびHWOB
で自動的に選択されたHPIAアクセスの部分は各半ワ
ードアクセスの後に更新されることに注意されたい。従
ってHPIAの上位または下位16ビットのみを変更す
るためには、ホストは修正変更したいと欲している半ワ
ードをHHWILとHWOBとの組み合わせを通して選
択する必要があるだけである。同様に、ホストはHPI
Aの希望する半ワードのみを読みとるように選択するこ
とも可能である。 HPID読み取りアクセス:読み取りアクセスは実際第
一半ワードアクセスでトリガを掛けられる(HHWIL
が低状態)。従って、もしも読み取りに際してホストは
第一半ワードのみに関心がある(HWOBで選択された
下位または上位半ワード)、これは第二アドレスを要求
する必要が無い。しかしながら、事前フェッチは第二半
ワードが読みとられない限り生じない。第一半ワードの
後続の読み取り(HHWIL低)または新たな値のHP
IAへの書き込みは、全ての事前フェッチに勝る。一
方、第二半ワードのみの読み取り(FFWIL高)は認
められず、結果として未定義の動作となる。 書き込みアクセス:書き込みアクセスは第二半ワードア
クセス(FFWILが高状態)でトリガを掛けられる。
従って、もしもホストが後続の書き込みアクセス中に、
HHWIL高(および関連するバイト有効)で選択され
たHPIDの一部を変更したいだけの場合は、単一サイ
クルのみを開始する必要があるだけである。この技術は
一義的にメモり充填に使用される。これを行うために、
ホストは第一アクセスの両方の半ワードにHBE1:0
=00を書き込む。後続の書き込みアクセスに際して、
ホストは第一書き込みアクセスで行ったのと同様に、H
HWILで選択されたHPIDの部分に同一の値を確実
に書き込む。この場合、ホストは全ての書き込みアクセ
スに際して自動更新書き込み(HCNTL1;0=0
1)を実行する。
がら、ブートモードによってはホストがCPUのメモリ
空間(アクセスする前に外部メモリを構成するためにE
MIF構成レジスタを含む)に書き込むことを可能とす
る。装置はリセット状態ではないが、CPU自体はブー
トが完了するまでリセット状態にある。 更に詳しくは後のブートロードの称 参照されたい。
くつかの外部装置に対して接続要素不要のインタフェー
スを支援する:CPU速度の1倍および1/2倍で実行
される同期バーストSRAM(SBSRAM)。CPU
速度の1/2倍で実行される同期DRAM(SDRA
M)。非同期SRAM,ROM,およびFIFOを含む
非同期装置。EMIFはこれらのインタフェースに対し
て高度にプログラム可能なタイミングを提供する。
図4に示すように4つの要求発信者からの外部バスの要
求にサービスを行う:CPUプログラムフェッチにサー
ビスを行うオンチッププログラムメモリ制御装置(PM
C)。CPUデータフェッチにサービスを行う、オンチ
ップデータメモリ制御装置(DMC)。オンチップDM
A制御装置。外部共有メモリ装置。
と、EMIFはこれらの優先順位付けを行い、必要なサ
イクルを実行しなければならない。EMIFのブロック
図が図23に示されている。表32はEMIF信号を記
述している。
ットは強制的に全てのレジスタ値をそれらのリセット値
とする。リセット中、全ての出力はそれらの無効レベル
に駆動されるが、クロック出力(SDCLK,SSCL
K,CLKOUT1およびCLKOUT2)は例外であ
って、これらはその信号を使用している外部論理回路が
同期を取れるように連続して駆動される。
スはEMIF内のメモリ写像されたレジスタの組を通し
て維持される。任意のEMIFレジスタへの書き込み
は、そのレジスタを使用している全ての仕掛かり中のE
MIFアクセスが完了するまで完了しない。このメモリ
写像されたレジスタが表33に示されている。
4)は全てのCE空間に共通なパラメータを構成する。
EMIFでサポートされている4つのCE空間に対応し
ている。MTYPEフィールドは対応するCE空間に対
するメモリ型式を識別する。もしもMTYPEがSDR
AMまたはSBSRAMを選択している場合は、レジス
タ内の残りのフィールドは適用されない。もしも非同期
型が選択された場合(ROMまたは非同期)、残りのフ
ィールドはアドレスの整形およびその空間へアクセスす
るための制御信号とを指定する。CE空間制御レジスタ
の修正変更はCE空間が無効となるまで生じない。
Mパラメータを制御し、これはそれが関連するCE空間
制御レジスタ(図25)のMTYPEフィールド内のS
DRAMメモリ型式を指定する。SDRAM制御レジス
タは全てのSDRAM空間を制御するので、各々の空間
は同一のリフレッシュおよびページ特性を備えたSDR
AMを含まなければならない。
37)はSDRAMのリフレッシュRERIODをCL
KOUT2サイクル(CPUクロック速度の1/2倍)
で制御する。オプションとして、このリフレッシュ周期
はCPUへの割り込みを送ることが出来る。従って、こ
のカウンタはSDRAMがそのシステムで使用されない
場合は、汎用タイマとして使用される。COUNTER
値はCPUで読み取ることが出来る。カウンタがゼロに
達すると、これはRERIODで自動的に再ロードさ
れ、割り込みがCPUに送られる。
ト、4バンクSDRAMをサポートし、システム設計者
に高速かつ高密度メモリに対するインタフェースを提供
する。以下の章はEMIF SDRAMインタフェース
を説明している。EMIFは表38に示されるSDRA
M命令を支援する。16Mビットおよび64MビットS
DRAMインタフェースが図28および図29に示され
ている。
された関連の信号を説明している。表39はEMIF経
由で構成することが可能な全てのSDRAMを示す。
E3はSDRAMで使用可能である。従って、n=0,
n=2またはn=3である。またCLKOUT2はSD
CLKと同一のタイミングなので、SDRAMの複数の
CE空間が使用されかつ追加のドライブ機能が必要なシ
ステムで使用出来る。
れる場合は、SDRAMを初期化するために必要な機能
を実行する。SDRAM初期化はEMIF SDRAM
制御レジスタ内のINITに1を書き込むことで要求さ
れる。初期化の事象の実際の手順は下記の通りである: 1.SDRAMとして構成された全てのCE空間に対し
てDCAB命令を実行する。 2.3つのリフレッシュ命令を実行する。 3.SDRAMとして構成された全てのCE空間に対し
てMRS命令を実行する。
効でない(ホスト要求)場合は、リセット後直ちに実行
される。もしも/HOLDが有効の場合、DCAB命令
はそのホールド条件が取り除かれるまで実行されない。
この場合、外部の要求者はSDRAM初期化を実行しそ
の制御を行うまで、SDRAMバンクのいずれに対して
もアクセスを試みてはならない。
AM制御装置はSDRAMの有効行を監視して行の境界
がアクセス中にまたがらないようにしている。この監視
を行うために、EMIFは開かれているページのアドレ
スを格納し、そのアドレスを後続のSDRAMバンクの
アクセスに備えて比較を実行する。この格納および比較
は各々のCE空間に対して独立して実施される。
F SDRAM制御レジスタのSDWIDフィールド内
にプログラムされたページサイズの関数である。もしも
SDRAM制御フィールド内のSDWID=0の場合
は、EMIFはSDRAMとして構成されたCE空間が
4つの8ビット幅SDRAMを有すると予測し、これら
のページサイズは512である。従って比較される論理
バイトアドレスビットは26:11である。もしもSD
WID=1の場合は、EMIFはSDRAMのCE空間
が2つの16ビット幅SDRAMを有すると予測し、こ
のページサイズは256である。従って比較される論理
バイトアドレスビットは23:10である。
と、EMIFはDCAB命令を実行し新たな行アクセス
を開始する。また、アクセスの方向の変更(読み取りか
ら書き込みまたは書き込みから読み取り)はページ欠落
を引き起こす。現行のアクセスを単に終了するだけで
は、有効SDRAM行を強制的に閉じさせる条件とはな
らないことに注意されたい。EMIFは先を見越してこ
の有効行を閉じる必要が生じるまで開いたまま残してい
る。この機能により無効化/再有効化のオーバーヘッド
が減り、インタフェースをメモリアクセスのアドレス場
所指定に全面的に利用できる。
はEMIFのSDRAMリフレッシュモードを選択す
る。RFENフィールド内の値が0であると、全てのE
MIFリフレッシュを無効とする、使用者はリフレッシ
ュが外部装置内で行われることを保証しなければならな
い。RFENフィールド内の値が1の場合は、以下に説
明するようにEMIFがSDRAMのリフレッシュを実
行出来るように有効化する。
間制御レジスタ(図25)のMTYPEフィールドを具
備したSDRAMを使用するように選択された全てのC
E空間に対して全ての/CE信号を有効とする。REF
Rは自動的にDCAB命令に先立って行われる。これは
SDRAMを具備した全てのCE空間が動作していない
ことを保証する。DCAB命令に続いて、EMIFは”
先行”リフレッシュの実行を開始し、これをその他のS
DRAMアクセスが仕掛かり中で無ければEMIF S
DRAM制御レジスタ内のPERIOD値で定義された
速度で行う。
リフレッシュ要求の数を監視しそれらを実行する。EM
IF SDRAM制御ブロックの中で小さな2ビットカ
ウンタがリフレッシュ要求の未処理件数を監視する。こ
のカウンタはリフレッシュ要求を受ける毎に増加更新
し、リフレッシュサイクルが実行される毎に減数更新す
る。このカウンタは値が11または00で飽和する。リ
セット時にはこのカウンタは自動的に11にセットさ
れ、アクセスが開始される前にいくつかのリフレッシュ
が必ず行えるようにしている。
SDRAM制御装置はSDRAMリフレッシュ要求の優
先順位付けを、ENIF要求者からそこに送られたその
他のデータアクセス要求との間で行う。下記の規則に従
う:カウンタの値が11の場合はページ情報レジスタを
無効とし、制御装置に現行SDRAMページを強制的に
閉じさせる。値が11であることは緊急リフレッシュ条
件を示している。従って、EMIF SDRAM制御装
置は3つのREFR命令を実行し、これによってDCA
B命令に続いて現行アクセスの残りを処理する前にカウ
ンタを00まで減数更新する。もしもSDRAMが複数
のCE空間内に存在する場合は、DCABリフレッシュ
手順がSDRAMを含む全ての空間内で発生する。SD
RAMインタフェースのアイドリング時間中に、EMI
Fからの仕掛かり中の要求が1つも無い場合は、このS
DRAMインタフェースはカウンタ値がゼロで無い限り
REFR命令を実行する。この機能により、後に行われ
る実際のSDRAMアクセス中に緊急リフレッシュが行
われる可能性が減少する。もしもSDRAMが複数のC
E空間内に存在する場合、このリフレッシュは全てのイ
ンタフェースが無効ページ情報を具備してアイドリング
中の場合にのみ発生することに注意されたい。
AS−先行−RASリフレッシュサイクルをSDRAM
に対して実行する。SDRAM製造者の中にはこれを自
動リフレッシュと呼ぶ者も居る。REFR命令の前に、
DCAB命令が全てのCE空間に対して実行され、全て
の動作中のバンクが確実に閉じられるようにSDRAM
に指示する。ページ情報はREFR命令の前後で常に無
効である;従ってリフレッシュサイクルは常にページを
欠落させる。非動作サイクルがリフレッシュ命令の前に
必要なことを注意されたい。
てMRS命令を、EMIF SDRAM制御レジスタの
INITフィールドがセットされると必ず自動的に実行
する。INITは装置がリセットされるか、または使用
者が書き込むことでセット出来る。DCABおよびRE
FR命令と同様に、MRS命令はSDRAMとして構成
されている全てのCE空間に対してMTYPEフィール
ドを通して保持するように実行される。MRSサイクル
に続いて、INITビットは自分自身で消去して複数の
MRSサイクルが発生することを防止している。続いて
バスの制御をEMIFに戻す前にその元の値に戻さなけ
ればならない。これに代わる方法として、使用者がEM
IFグローバル制御レジスタ内のHOLDおよびHOL
DAビットをポーリングして、外部保持の完了を検出す
ると、EMIF SDRAM制御レジスタ内のINIT
ビットを設定することによってEMIFを再初期化する
ことが出来る。
0030をMRS命令中に使用する。表41はモードレジス
タビット、EMIFピン、およびそのモードレジスタ値
の間の写像を示す。
たSDRAM構成を示す。
定するため、EMIFインタフェースは行および列アド
レス選択の中でアドレスを適切にシフトする。表43は
バイトアドレスのビット間の翻訳とそれらが行および列
アドレスとしてEAピン上に現れる様子を示している。
SDRAMはアドレス入力を制御と同様にアドレスとし
ても使用する。この考察の中で下記の項目が全体像を明
らかにする:SDRAMのバンク選択ビット(16Mビ
ットSDTAM上のEA11;64MビットSDRAM
上のEA13,EA12)に対応するアドレスラインが
SDRAM制御装置により内部的にラッチされる。これ
によりバンク選択がREADおよびWRT命令中に確実
に正しく保持される。従って、EMIFはこれらの値を
行および列アドレスの両方で示されるように維持する。
EMIFはバンク選択(SDA10)以下のアドレスビ
ットを、/RASが有効低で無い限り強制的に低とし、
アクセスのページの終了時点のDCAB命令中に高状態
とする。これによりREADまたはWRT命令に続いて
発生する自動事前チャージを防止することが出来る。
EMIFをSDRAM速度制限から解除する。これらの
パラメータの3つはEMIF SDRAM制御レジスタ
経由でプログラム可能である;残りの2つは表44に示
されるように一定値と仮定される。3つのプログラム可
能値はSDRAMのEMIF制御がこれらの最小タイミ
ング要求に従うことを保証する。個別のSDRAMに対
して適切なパラメータに関してはSDRAMデータシー
トを参照されたい。
化(DCAB)はハードウェアリセット後、またはEM
IF SDRAM制御レジスタ内のINIT=1の時に
実行される。このサイクルはまたページ境界を閉じる際
に、REFR,MRSの前にSDRAMによっても要求
される。DCAB命令中に、SDA10は高状態に駆動
されて全てのSDRAMバンクが無効状態になることを
保証する。
されたバンクがACTV命令中の行アドレスで有効化さ
れる。この例では4つの読み取り命令が4つの異なる列
アドレスに対して実行される。EMIFは3つのCAS
待ち時間と1つのバースト長とを使用する。3サイクル
の待ち時間により、データは対応する列アドレスの3サ
イクル後に現れる。最後の列アクセスに続いて、DCA
Bサイクルがそのバンクを無効とするために実行され
る。1つのアイドリングサイクルが最後の読み取り命令
とDCAB命令との間に挿入されていて、SDRAMタ
イミング要求に合わせている。データの転送はDCAB
命令中およびその前に完了していることに注意された
い。もしも新たなアクセスが仕掛かり中で無い場合は、
DCAB命令はページ情報が無効となる時点まで実行さ
れない。列アクセスおよびDCAB命令中のEA[1
3:11]の値は、ACTV命令中にラッチされた値で
ある。
1バースト長である。バンクはACTV命令中の列アド
レスで有効化される。書き込みに際しては待ち時間が無
いので、データはその列アドレスと同一サイクルで出力
される。無効バイトへの書き込みは適切なDQM入力経
由で無効化される;この機能はバイトおよび半ワード書
き込みに有効である。最後の書き込み命令に続いて、1
アイドリングサイクルが挿入されてSDRAMタイミン
グ要求に整合させる。続いてそのバンクはDCAB命令
によって無効化され、メモリインタフェースは新たなペ
ージアクセスを開始することが出来る。もしも仕掛かり
中の新たなアクセスが存在しない場合は、DCAB命令
はページ情報が無効となる(章6.3.2参照)時まで
実行されない。列アクセスおよびDEAC命令の間EA
[13:11]上の値は、ACTV命令中にラッチされ
た値である。
ストSRAMに直接インタフェースを取る。このメモリ
インタフェースは高速メモリインタフェースをSDRA
Mのいくつかの制限を受けることなく可能とする。最も
注目すべき点は、SBSRAMはSRAM装置であるの
で同一方向への随意アクセスが単一サイクルで行える事
である。SBSRAMインタフェースはCPUクロック
速度またはこの1/2の速度のいずれかで動作する。こ
の選択はEMIFグローバル制御レジスタ内のSSCR
Tビットの設定に基づいて行われる。
行動作を決定するSSCLKの立ち上がりでSBSRA
Mによりにラッチされる。これらの信号はSBSRAM
用のチップ選択ラインが低状態の場合にのみ有効であ
る。/AD信号はSBSRAM装置が、アドレスを十分
早く提供することの出来ない制御装置とインタフェース
するためにアドレスを内部的に生成出来るようにするた
めに使用される。EMIFはアドレスを要求される速度
で生成できるからこの信号を使用する必要は無い。
取りデータがアドレス及び制御情報に続いていることを
意味する。結果として、EMIFはいくつかのサイクル
を読み取りと書き込み命令の間に挿入し、ED[31:
0]バス上で競合が生じないようにしている。EMIF
はこのやり直しの損失を最小に維持する。バス上で向き
を変更する際に最初に2サイクルの損失が存在する。一
般的に規則は次の通りである;バーストシーケンスの最
初のアクセスは2サイクル開始損失を被る。
クセス毎に新たなアドレスがSBSRAMストローブさ
れ、これらは/SSADSストローブ低で指示される。
最初のアクセスは2サイクルの初期開始損失を必要とす
る;その後全てのアクセスが単一SSCLKサイクルで
生じる。
セス毎に新たなアドレスがSBSRAMの中にストロー
ブされる。最初のアクセスは2サイクルの初期開始損失
を必要とする;その後全てのアクセスは単一SSCLK
サイクルで行うことが出来る。
ル型式を提供し、種々のメモリおよび周辺機器型式とイ
ンタフェースを取るために使用される;SRAM,EP
ROM,FLASH,同様にFPGAおよびASIC設
計を含む。
す。
を示す。図39はFIFOとのインタフェースを示す。
図40、図41、および図42は8−、16−、および
32ビットROMへのインタフェースを示す。ROMは
どのCE空間ともインタフェースされるが、これはしば
しばCE1空間で使用されるがそれはこの空間が32ビ
ット未満の幅に対して構成されているためである。
PEフィールドで選択された8−および16−ビット幅
ROMアクセスモードをサポートする。これらの狭い幅
のメモリ空間からデータを読みとる際に、EMIFは複
数の読み取りを32ビット幅値の中に詰め込む。このモ
ードは第一に8−ビットおよび16−ビットROM装置
へのワードアクセスを意図している。従って、下記の制
約が適用される:読み取り動作は、アクセスサイズまた
はメモリ幅に関係なく常に32ビット読み取りである。
アドレスは狭いメモリに対する正しいアドレスを提供す
るために適切にシフトアップされる。シフト量は16ビ
ットROMに対しては1、また8ビットROMに対して
は2である。従って、高アドレスビットはシフトアウト
され、/CE空間が全EAバスに広がる場合はアクセス
は取りまとめられる。表47は全ての可能な非同期メモ
リ幅に対するCE1空間へのアクセス中に、どのアドレ
スビットがEAバス上に存在するかを示す。EMIFは
常に下位アドレスを最初に読み取り、これらを最下位バ
イトに詰め込み、後続のアクセスを高位順位のバイトの
中に詰め込む。
ォーマットは、LENDIANビットの値に関係なく常
に小エンディアンである。
シフトされバイト幅ROMへアクセスするためにEA上
にバイトアドレスを生成する。EMIFは常に4つの後
続バイトをワードアクセス内の4バイト(バイトアドレ
ス=4N)境界の上に整列させる。バイトは下記のアド
レス順序でフェッチされる:4N,4N+1,4N+
2,4N+3。バイトは下記の小エンディアン順序で最
上位バイトから最下位バイトへ、32ビットワードの中
へ詰め込まれる:4N+3,4N+2,4N+1,4
N。
フトされ16ビット幅ROMへアクセスするためにEA
上に半ワードアドレスを生成する。EMIFは常に2つ
の半ワードをワードアクセス内の4バイト(バイトアド
レス=4N)境界の上に整列させる。半ワードは下記の
アドレス順序でフェッチされる:4N,4N+2。半ワ
ードは下記の小エンディアン順序で最上位半ワードから
最下位半ワードへ、32ビットワードの中へ詰め込まれ
る:4N+2,4N。
プログラム性を可能とする。これを許容するプログラム
可能パラメータは: セットアップ:メモリサイクルの始まり(/CE低、ア
ドレス有効)と読み取りまたは書き込みストローブの有
効化の間の時間。 ストローブ:有効化と読み取り(/ARE)またはスト
ローブ(/AWE)の無効化との間の時間。 ホールド:読み取りまたは書き込みストローブの無効化
とこのサイクルの終わり(これはアドレス変更または/
CE信号の無効化のいずれか)との間の時間。 折り返し時間:装置出力(読み取りデータ)の無効化と
メモリ装置の中へのデータ駆動(書き込みデータ)の間
の時間。
間制御レジスタ(図25)内のフィールド経由でCPU
クロックサイクルの形でプログラム可能である。個別の
セットアップ、ストローブ、およびホールドストローブ
パラメータは読み取りおよび書き込みアクセスに対して
有効である。SETUP、HOLD、およびSTROB
Eフィールドは実際のサイクル計数を表すが、これとは
対照的にSDRAMパラメータはサイクル計数−1であ
る。SETUPおよびSTROBEフィールドは最小計
数1を有する。SETUPおよびSTROBEに対し
て、計数0は計数1として取り扱われる。HOLDは0
サイクルにセットされる。しかしながらTAフィールド
はサイクル計数−1に指定される。図43はこれらのパ
ラメータの使用方法を図示する。
CE0読み取りで、setup/strobe/hold が2/4/1に
セットされている。第二番目は同じであるが外部無効準
備完了のためストローブ幅が追加されている。第三番目
はCE1読み取りであって、setup/strobe/hold が4/
5/3にセットされている。1つの非同期読み取りは下
記のように進行する: セットアップ周期の開始時点で −/CEが有効低となる。 −/AOEが有効低となる。 −/BE[3:0]が有効となる。 −EAが有効となる。 ストローブ周期の開始時点で −/AREが有効低に引き下げられる。 ホールド周期の開始時点で −/AREが無効高に引き上げられる。 −データはCLKOUT1の立ち上がりでホールド周期
の開始(ストローブ周期の終わり)と同時に、/ARE
の低から高への遷移の直前にサンプリングされる。 ホールド周期の終了時点で −/CEは無効となるが、これは別の読み取りアクセス
が同一/CE空間に対して次のサイクルで予定されてい
ない限りに於いて行われる。 −/AOEは無効となるが、これは別の読み取りアクセ
スが同一/CE空間に対して次のサイクルで予定されて
いない限りに於いて行われる。
6/3のsetup/strobe/hold を具備した非同期書き込み
を図示している。1つの非同期書き込みは下記のように
進行する。 セットアップ周期の開始時点で −/CEが有効低となる。 −/BE[3:0]が有効となる。 −EAが有効となる。 −EDが有効となる。 ストローブ周期の開始時点で −/AWEが無効低になる。 ホールド周期の開始時点で −/AWEが無効高になる。 −データはCLKOUT1の立ち上がりでホールド周期
の開始(ストローブ周期の終わり)と同時に、/AWE
の低から高への遷移の直前にサンプリングされる。 ホールド周期の終了時点で −EDが三状態となるが、これは別の書き込みアクセス
が同一/CE空間に対して次のサイクルで予定されてい
ない場合にのみ行われる。 −/CEは無効となるが、これは別の書き込みアクセス
が同一/CE空間に対して次のサイクルで予定されてい
ない場合にらみ行われる。 −もしも次のアクセスが読み取りの場合、折り返し時間
のサイクルがAOEが有効となる前に挿入される。
方法を図示する。バスの競合を避けるためにEMIFは
プログラム可能折り返し時間サイクルを2つの状況で挿
入する: 1.別のCE空間への任意のアクセス(非同期であるか
否かに関わらず)が続く非同期CE空間への読み取りア
クセスの間。図43に於いて、これは第二CE0読み取
りとCE1読み取りとの間に生じる。この例において、
折り返し時間は2サイクルで、EMIF CE0空間制
御レジスタ内のTA=1でセットされる。 2.同一CE空間への書き込みアクセスが続く、非同期
CE空間への読み取りアクセスの間。1サイクルの一定
の折り返し時間が、同一CE空間への読み取りが続く、
書き込みの間に挿入される。これは図43の中でCE0
書き込みと第一CE0読み取りとの間に示されている。
1サイクルの一定の折り返し時間が、同一要求者から異
なるCE空間への2つの連続したアクセスの間に挿入さ
れる。この折り返しサイクルは2つのCE空間内のメモ
リ型式には無関係に生じる。挿入される折り返し時間サ
イクルの数はTA+1で、EMIF CE空間制御レジ
スタ内で定義される。折り返し時間周期の間、影響され
るCE空間の/CEおよび/AOEは無効となって、依
然としてバスを駆動しているその空間内の装置を遮断す
る。これらのサイクルは後続のアクセスとの間の時間が
TA+1サイクル未満の場合にのみ挿入される。
示している。プログラム可能整形に加えて、/ARDY
入力を無効化することによってストローブ周期の中に特
別サイクルを挿入する事が出来る。準備完了動作は下記
のように働く:準備完了は3つのCLKOUT1サイク
ルを取ってバス上に反応を引き起こす。もしも/ARD
YがCLKOUT1サイクルの間低状態である場合は、
ストローブ周期は/ARDYを認識する変化の後に完全
に3つのCLKOUT1サイクル分延長される。各々の
CLKOUT1の変化に対して、サンプリング周期が開
始された後その準備完了は無効低状態であり、ストロー
ブ幅は1クロック分延長される。
ルの無効/ARDYのため2クロック分延長される。
ットアップおよびストローブ時間が非常に小さい場合は
注意が必要である。例えば、ストローブ周期が1の場
合、/ARDYはセットアップ周期が終了する2サイク
ル前にサンプリングされる。この場合もしもセットアッ
プ周期が2の場合は、/ARDYはアクセスが開始され
るのと同一の変化エッジでサンプリングされる。
ホールドハンドシェイクにより外部装置とEMIFが外
部バスを共有出来るようになる。このハンドシェイク機
構は2つの信号を使用する: 1./HOLD非同期ホールド要求入力。外部装置はこ
のピンを低状態に駆動してバスアクセス要求を行う。ホ
ールドは有効動作中にEMIFが受信することの出来る
最高優先順位要求である。ホールドが要求されると、E
MIFは可能な限り早い時点でバスの駆動を中止する
が、これは必然的に現行アクセスの完了、装置無効化、
およびSDRAMバンク無効化を伴う。外部装置はバス
を駆動したいと望むのであれば/HOLDを低状態に駆
動し続けなければならない。/HOLD入力は内部的に
CPUクロックに同期されている。 2./HOLDA:ホールド肯定確認出力。EMIFは
その信号出力を高インピーダンス状態にした後、この信
号を有効低状態とする。次に外部装置はそのバスを要求
通りに駆動する。EMIFは全ての出力を高インピーダ
ンス状態にするが、クロック出力は除く:CLKOUT
1,CLKOUT2,SDCLKおよびSSCLK。
みないことを保証する機構は存在しない。設計者はシス
テムレベル、例えばリフレッシュの様に実行される必要
のある問題を意識する必要がある。ホスト要求の間、E
MIF内のリフレッシュカウンタはリフレッシュ要求を
記録し続ける、しかしながら/HOLD入力を無効高レ
ベルに戻すことで、バス制御がEMIFに許可して戻さ
れるまでリフレッシュサイクルは実行されない。使用者
はEMIFグローバル制御レジスタ内のNOHOLDビ
ットを設定することにより外部ホールドを防止する。
する優先順位手順を図示する。この優先順位手順は、D
MA制御装置を通して要求を発しているDMAが高順位
の場合は変更される。 このモードはDMAチャンネル
一次制御レジスタ内のPRIビットをセットする事によ
りDMA内にセットされる。
御装置もまた1つの要求者と考えられることに注意)の
優先順位付けがなされかつ選択されると、新たな要求は
その選択された要求者が要求を行うことを中止するかま
たは後続のより高い優先順位の要求が発生するまで認識
されない。この場合、先の要求者が発した全ての要求
は、新たな要求者がその要求を行う前に完了することが
許されている。
(図24)の調停ビットがセットされている場合(RB
TR8=1)、一度要求者がEMIFの制御を得ると、
それは要求者がEMIFを必要とする限り、またはより
高い優先順位の要求者がEMIFを要求するまでの間に
8ワード要求が発生するまでその制御を維持する。より
高い優先順位の要求者がEMIFを必要とする場合、現
行の制御装置が制御を放棄するかまたは8ワード要求が
完了するまで、それは制御を得ることは出来ない。もし
も長堤ビットがセットされていない場合は(RBTR8
=0)、要求者はEMIFの制御をそれがEMIFを必
要とする限り、またはより高い優先順位の要求者がEM
IFを要求するまで維持する。現行の制御装置は、発生
している要求の数に関係なく、より高い優先順位の要求
者で割り込みをかけられる。
T2,CLKOUT1,SSCLKおよびSDCLKを
無効化(高状態に保持)することが出来る。この機能は
EMIF SDRAM制御レジスタ内のCLK2EN,
CLK1EN,SSCEN、およびSDCENビットを
経由して実行される。
LK,CLKOUT1,CLKOUT2は高状態に保持
される。電源断3に於いて、EMIFはあたかもそれが
リセット状態にいるかの様に動作する。
EMIFを通してのエミュレータアクセスは、EMIF
状態を変更し一度停止が中止されることによる開始時損
失の影響を受ける。
成を提供している。これらの構成は装置が初期化に備え
てリセットされた後にマイクロプロセッサ1が同様な動
作を実行するかを決定する。外部入力ピンでセットされ
るこれらのブート構成は下記を決定する:その装置が選
択するメモリマップ。このメモリマップはアドレス0に
内部または外部メモリが写像されているか否かを決定す
る。アドレス0に於ける外部メモリの型式、(外部メモ
リがアドレス0に写像されている場合)。アドレス0の
メモリをCPUが実行を許可される前に初期化するため
に使用されるブートプロセス。
RESET−が有効低の間その装置はリセット状態に保
持される。この周期の間その装置は予め記述されたリセ
ット状態に初期化される。全ての三状態可能出力は三状
態に設定される。その他の全ての出力は関連する章で記
述された状態に戻される。リセット許可は装置CLKI
N同様にCPUクロックでラッチされる。従ってリセッ
トはCLKIN同様にCPUクロック(CLKOUT
1)サイクルに関して最小低時間を有する。装置をリセ
ットするための詳細なタイミング要求はデータシートの
中に記述されている。RESETの立ち上がりでプロセ
ッサが予め定められたブート構成で開始される。
ト構成を決定する。BOOTMODE[4:0]の値は
RESET−の立ち上がりでラッチされる。これらのピ
ンは適切にセットアップされて有効となっていて、この
立ち上がりを掴む必要がある。個部とのタイミング要求
に関してはデータシートを参照されたい。このブート構
成は下記を決定する(表49):装置メモリマップ。リ
セット位置、アドレス0に於けるメモリの型式。リセッ
ト時にどのブートロードプロセスが初期化されたか。
0)が存在する。これらの違いは、MAP0はアドレス
0に写像された外部メモリを有し、MAP1はアドレス
0に写像された内部メモリを有する点である。内部周辺
機器用に割り当てられた空間はその目的のために予約さ
れた空間を表すことに注意されたい。予約されている全
メモリ空間が割り当てられているわけでは無い。ここに
於ける周辺機器ならびに内部機器に関する説明を参照さ
れたい。
用のリセットアドレス、アドレス0に配置されたメモリ
の型式を決定する。BOOTMODEピンがMAP1を
選択するとき、このメモリは内部メモリである。装置モ
ードがMAP0にあるとき、メモリは外部メモリであ
る。外部メモリが選択されているとき、BOOTMOD
Eはまたリセットアドレスに於けるメモリの型式を決定
する。効果的に、これらのオプションは適切なEMIF
制御レジスタに代わりとなるリセット値を提供する。
50に示されるように決定される。3つの型のブートプ
ロセスが可能である: 1.非ブートプロセス:CPUは単にアドレス0に配置
されているメモリから起動を開始する。SDRAMの場
合、CPUはSDRAM初期化が完了するまで保持され
る。 2.ROMブートプロセス:ROMブートプロセスに於
いて、CE空間1の始まりに配置されているメモリはア
ドレス0にDMAによってコピーされる。ブートプロセ
スは装置が外部リセットから解放された時に始まるが、
この転送はCPUが内部的にリセットに保持されている
間に生じる。コピーされるメモリの量は32ビットの1
6Kワードである。このプロセスはまたROMの幅を選
択することも出来る。この場合、EMIFは後続の8ビ
ットバイトまたは16ビット半ワードを自動的に集めて
移動される32ビット命令ワードとすることが出来る。
これらの値は小エンディアン形式で外部メモリ、典型的
にはROM装置の中に格納されることが期待される。こ
の転送は自動的にチャンネル0で行われる。DMAチャ
ンネルは同期されていない32ビットの16Kワードの
単一フレームブロック転送をCE空間1の始まりからア
ドレス0へ実行するようにセットアップされている。M
AP0が選択されている場合、EMIFは全てのDMA
要求を何らかの代替リセット値で構成されるまで延期す
る。SDRAMの場合、EMIFはSDRAMが初期化
されるまで転送を延期する。CE空間1の位置は選択さ
れたメモリマップに依存する。DMA_INT0遷移が
有効となって、ブロック転送の完了を示す場合、CPU
はリセットから解除されてアドレス0からの始動が許可
される。DMA_INT0条件はCPUが未だリセット
状態にいるため、CPUによってラッチされないことに
注意されたい。また、DMA_INT0はROMブート
プロセスが選択されている場合、CPUを内部リセット
から覚醒させるだけである。この条件の後、DMAチャ
ンネル0二次制御レジスタ内のBLOCK CONDは
セットされた状態で維持される。これは使用者が後続の
DMA_INT0遷移をCPUおよびDMAに対して受
信出来るようにするために消去されなければならない。 3.HPIブートプロセス:HPIブートプロセスに於
いて、CPUはリセット状態に保持され、一方で残りの
装置はリセットから覚醒される。この周期の間、外部ホ
ストはHPIを通して必要に応じてCPUのメモリ空間
を初期化する、これには外部メモリ構成レジスタが含ま
れる。一度外部メモリが要求通りに構成されると、ホス
トは初期化を完了する必要のある外部区分にアクセスす
る。ひとたびホストが全ての必要な初期化を通過する
と、これは1をHPI制御レジスタ(HPIC)内のD
SPINTビットに書き込む。この書き込みはDSPI
NT信号上に有効な遷移を引き起こす。この遷移は続い
て、ブート構成論理を起動しCPUをそのリセット状態
から解放する。次にCPUはアドレス0からの起動を開
始する。DSPINT条件は、CPUが未だリセット状
態にあるためCPUによってラッチされない。また、D
SPINTはHPIブートプロセスが選択されている場
合、CPUを内部リセット状態から覚醒させるだけであ
る。
ック図であり、本発明の発明的特徴および優れた機能を
詳細に説明する。略語の説明は付録Aを参照されたい。
P)はテキサスインスツルメント社から市販されている
TMS320C2x,および’C5x,ディジタル信号
処理装置の中に見られる既知のシリアルポートインタフ
ェースを改善したものである。このシリアルポートの詳
細な説明は米国特許連番08/489,014号(明細
書TI−19942)の中に提供されており、これはこ
こに挙げることで参照されている。既存品と同様にMC
SPは下記の機能を提供する: 1.完全二重化通信 2.連続データストリームを可能とする二重バッファデ
ータレジスタ。 3.受信および送信に対する独立したフレーム化および
クロック。 4.工業標準コード、アナログインタフェースチップ
(AIC)、およびその他のシリアル接続されたA/D
およびD/A装置への直接インタフェース。 5.外部シフトクロック生成または内部プログラム可能
周波数シフトクロック。これに加えて、MCSPは下記
の機能を有する: 1.下記への直接インタフェース: T1/E1フレーム生成器 MVIPおよびST−BUS適合装置 IOM−2適合装置 AC97適合装置。必要な複数位相フレーム同期機能が
具備されている。 IIS適合装置 SPI装置 2.128チャンネルまでの複数チャンネル送信および
受信。 3.LSBまたはMSBを最初に転送するように8ビッ
トデータに圧縮伸張する8−、12−、16−、20
−、24−、または32−ビットμ−LawおよびA−
Lawを含む広範なデータサイズの選択 4.フレーム同期とデータクロックの両方用のプログラ
ム可能極性 5.高いプログラム可能性の内部クロックおよびフレー
ム生成。
タ経路と制御経路とを含む。表51に記載されている7
つの外部ピン121a−121gは制御並びにデータ経
路を外部装置に接続する。データはMCSPにインタフ
ェースしている装置に送信に関してはデータ送信(D
X)ピン、また受信に関してはデータ受信(DR)ピン
を経由して通信される。クロックおよびフレーム同期の
形式の制御情報はCLKX,CLKR,ESX,および
FSR経由で通信される。プロセッサ1はMCSPに内
部周辺機器バス110経由でアクセス可能な32ビット
幅制御レジスタ経由で通信する。CPU10またはDM
A100/101は受信されたデータをデータ受信レジ
スタ(DRR)から受信し、送信されるデータをデータ
送信レジスタ(DXR)に書き込む。DXRに書き込ま
れたデータはDXに送信シフトレジスタ(XSR)経由
でシフトアウトされる。同様にDRピン上の受信データ
はRSRの中にシフトされRBRの中にコピーされる。
続いてRBRはDRRにコピーされ、これはCPUまた
はDMAで読むことが出来る。これにより内部データの
移動と外部データ通信とが同時に行える。CPU10に
アクセス可能な残りのレジスタは、MCSPの制御機構
を構成する。これらのレジスタは表52に示されてい
る。制御ブロックは内部クロック生成、フレーム同期信
号生成、およびそれらの制御、並びに複数チャンネル選
択から構成される。この制御ブロックは重要な事象の通
知をCPUおよびDMAに、表53に示される4つの信
号経由して送る。
46に示されるように、32ビットシリアルポート制御
レジスタ(SPCR)およびピン制御レジスタ経由で構
成される。SPCRおよびPCRはMCSP状態情報を
含み、また希望する動作に構成出来るビットを含む。各
々のビットフィールドの動作を後の章で説明する。
およびPCRの各ビットフィールドを説明している。
よび送信制御レジスタ(RCRおよびXCR)はそれぞ
れ受信および送信動作の種々のパラメータを構成する。
各ビットフィールドの動作を後章で説明する。表56は
RCRおよびXCRの各ビットフィールドを記述してい
る。
バッファ化され送信動作は2重バッファ化されている。
DR上に到着する受信データはRSRの中にシフトされ
る。ひとたび全ワード(8−、12−、16−、20
−、24−、または32ビット)が受信されると、RS
Rは常に受信バッファレジスタ、RBRにコピーされ
る。RBRは次に、DRRがCPUまたはDMAで使用
中で無い限りDRRにコピーされる。
に書き込まれる。もしもXSR内にデータが存在しない
場合は、DXR内の値がXSRにコピーされる。それ以
外の場合は、DXR内のデータの最後のビットがDXに
シフトアウトされた後、DXRはXSRにコピーされ
る。送信フレーム同期の後、XSRは送信データをDX
上にシフトアウトし始める。
アル制御レジスタ内のRRST−およびXRST−ビッ
トで独立にリセットされる。もしもRRST−=XRS
T−=0の場合、全シリアルポートはリセット状態とな
る。装置リセット76はまたシリアルポートをリセット
状態とする。装置リセット76が取り除かれると、RR
ST−=XRST−=0,全シリアルポートをリセット
状態に保持する。表57はシリアルポートが受信機/送
信機リセット(XRST−=RRST−=0)および装
置リセット76によってリセットされた際のMCSOピ
ンの状態を示す。
期状態はカウンタと状態ビットのリセットを含む。受信
状態ビットRFULL,RRDY,およびRSYNCE
RRを含む。送信状態ビットはXEMPTY−,XRD
Y,およびXSYBCERRを含む。(R/X)SYN
CERRもまた使用者によってゼロに消去される。 2)シリアルポートの対応する部分(送信機/受信機)
の活動が停止する。FS(R/X)はそれらが出力の場
合無効状態に駆動され、もしもそれらが入力として構成
されている場合(FS(R/X)M=0の時)高インピ
ーダンス状態(高インピーダンス状態)に設定される。
CLK(R/X)はその極性ビットの値,CLK(R/
X)P,にセットされるが、それは内部サンプリング速
度生成器で駆動されるかまたはもしも送信および受信ク
ロックがMCSPへの入力として取り扱われる場合に高
インピーダンス状態(高インピーダンス状態)に置かれ
ている場合である。最終的にD(R/X)ピンは、送信
機そして/または受信機そして/または装置がリセット
されている時高インピーダンス状態にある。1つの例外
は内部サンプリング速度生成クロック、CLKG,であ
ってこれはシリアルポートのリセット状態に関係なく構
成されている通りに実行される。フレーム速度発生器か
らのフレーム同期信号FSGは無効状態(フレーム同期
極性ビット、FS(R/X)P上の値と同じ)に駆動さ
れ、リセット中にFS(R/X)M=1の場合FSR/
FSXを容易にする。 3)装置リセット76のためにMCSPがリセットの場
合は、全てのシリアルポートピンはhi−Z状態に駆動
される。そのシリアルポートがそのリセット状態に留ま
っているが、装置はそうで無い場合、DRおよびDXピ
ンは後の章で説明するように汎用目的I/Oとして使用
される。
プを含む: 1)SPCR内のXRST−=RRST−=0にセット
する。 2)シリアルポートがリセット状態(XRST−=RR
ST−=0)の時、表52に記述されたMCSP構成レ
ジスタのみ(そしてデータレジスタは含まず)をプログ
ラムする。 3)2ビットクロックだけ待つ。これは適切な同期が内
部的に行われることを保証する。 4)シリアルポートを有効化するためにXRST−=R
RST−=1をセットする。この時にSPCRに書き込
まれた値はリセットビットのみが1に変更され、残りの
ビットフィールドは上記ステップ2と同一の値に残され
る。
ステップ1および4)に於いて、送信機および受信機は
希望するビットのみを修正変更する事で別々にリセット
にセットしたり解除することが出来る。XRST−また
はRRST−の有効低状態周期の必要な長さは、最低2
ビットクロック(CLKR/CLKX)幅であることに
注意されたい。
PCR,PCR,RCR,XCR,およびSRGR内の
固有のビットフィールドは、シリアルポートの影響部分
がリセット状態の時に使用者によってのみ修正変更され
るべきである。(b)データレジスタDXRはCPUま
たはDMAによって、送信機がリセット状態でないとき
(XRST−=1)にのみ修正変更出来る。(c)複数
チャンネル選択レジスタMCR,XCER,およびRC
ERはこれらが複数チャンネル選択内の現行ブロックで
使用されていない限り、いつでも修正変更することが出
来る;複数チャンネルモードの事例の詳細は第0章を参
照されたい。
機が運転中に送信機をリセットしかつ構成する:
示される。RRDYおよびXRDYはそれぞれMCSP
受信機および送信機の準備完了状態を示す。シリアルポ
ートの書き込みおよび読み取りはRRDYおよびXRD
Yにポーリングを行うことによって、またはDMAへの
事象(REVTおよびXEVT)を使用することにより
またはそれらを生成するCPUに割り込み(RINTお
よびXINT)を掛けることによって同期を取られる。
DRRの読み取りおよびDXRへの書き込みはRRDY
およびXRDYに影響する。
T,RINT,およびRRDY;RRDY=1はRBR
内容がDRRにコピーされそのデータがCPUまたはD
MAに対して準備完了であることを示す。一度そのデー
タがCPUまたはDMAのいずれかによって読みとられ
ると、RRDYは0に消去される。また、装置リセット
またはシリアルポート受信機リセット(RRST−=
0)に於いて、RRDYは0に消去され、受信データが
存在せずまたDRR内にロードされていないことを示
す。RRDYはDMAへのMCSP受信事象(REV
T)を直接駆動する。また、CPUへのMCSP受信割
り込み(RINT)はSPCR内でRINTM=1の場
合、RRDYで駆動される。
T,XINT,およびXRDY:XRDY=1はDXR
内容がXSRにコピーされ、DXRが新しいデータワー
ドでロードされる準備が完了したことを示す。受信機が
リセットから非リセットへ遷移する時(XRST−が0
から1へ遷移する)XRDYはまた0から1へ遷移し、
DXRが新たなデータへの準備が完了したことを示す。
一度新たなデータがCPUまたはDMAによりロードさ
れると、XRDYは0に消去される。しかしながら、一
度このデータがDXRからXSRへコピーされると、X
RDYは再び0から1へ遷移する。そこで再びCPUま
たはDMAは、XSRが未だDX上にシフトアウトされ
ていないが、DXRに書き込むことが出来る。XRDY
はDMAへの送信同期事象(XEVT)を直接駆動す
る。また、CPUへの送信割り込み(XINT)もま
た、SPCR内でXINTM=00bの場合XRDYで
駆動される。
求される。受信割り込み(RINT)および送信割り込
み(XINT)はCPUにシリアルポート状態の変化を
信号通知する。これらの割り込みの構成に4つの選択肢
が存在する。これらはSPCR内の受信/送信割り込み
モードビットフィールド、(R/X)INTMで設定さ
れる。 1)(R/X)INTM=00b。SPCR内の(R/
X)RDYビットを追跡することにより、全てのシリア
ルワードに割り込みが掛けられる。RRDYおよびXR
DYビットは先に説明した。 2)(R/X)INTM=01b。1つのフレームの中
で16チャンネルブロック境界(複数チャンネル選択モ
ードに於いて)を横切った後毎に割り込みを行う。その
他のシリアル転送の場合、この設定は適用されず、従っ
て割り込みは発生しない。このことは後ほど詳細に説明
される。 3)(R/X)INTM=10b。フレーム同期パルス
を検出すると割り込みを行う。これはたとえ送信機/受
信機がリセット中であっても割り込みを発生する。これ
は入力されるフレーム同期パルスをCPUクロックに同
期させ、それをCPUへ(R/X)INT経由で送るこ
とにより実行される。これは後ほど詳細に説明される。 4)(R/X)INTM=11b。フレーム同期エラー
時の割り込み。
ている場合は(R/X)SYNCERRが読み込まれて
この条件を検出することに注意されたい。同期エラーは
後ほど更に詳細に説明される。
信号の典型的な動作を示す。シリアルクロックCLK
R,とCLKXはそれぞれ受信および送信用のビット間
の境界を定める。同様に、フレーム同期信号FSRおよ
びFSXはシリアルワードの始まりを定める。MCSP
はデータフレーム同期用の種々のパラメータの構成を可
能とする。これは受信と送信に関して独立して行うこと
が出来て、以下の選択肢を含む: 1)FSR,FSX,CLKX,およびCLKRの極性
は独立にプログラムされる。 2)単一または二重位相フレームの選択。 3)各々の位相に対してワードの個数はプログラム可能
である。 4)各位相に対してワード毎のビット数はプログラム可
能である。後続のフレーム同期はシリアルデータストリ
ームを再スタートするかまたは無視される。 5)フレーム同期から第一データビットまでのデータビ
ット遅延は0−、1−、または2−ビット遅延と出来
る。 6)右または左行揃え、同様に符号拡張またはゼロ充填
を受信データに対して選択できる。
る。受信および送信フレーム同期パルスはサンプル速度
発生器(後ほど説明する)によって内部的に生成される
か、または外部信号発生源により駆動する事ができる。
これはPCR内のモードビット、FS(R/X)Mをプ
ログラムする事により実現できる。FSRはまたSRG
R(後ほど説明する)内のGSYNCビットにより影響
される。同様に受信および送信クロックはPCR内のモ
ードビットCLK(R/X)Mをプログラムすることに
より入力または出力として選択できる。
=FSRM=0,外部フレーム同期パルス)、MCSP
はそれぞれ内部クロックの立ち下がり、CLKR_in
t,およびCLKX_int(図79)でこれらを検出
する。DRピンに到着する受信データはまたCLKR_
intの立ち下がりでサンプリングされる。これらの内
部クロック信号は外部信号発信源からCLK(R/X)
ピン経由で駆動されるかまたは内部的にMCSPに対す
るサンプル速度発生器クロック(CLKG)によって駆
動されるかのいずれかであることに注意されたい。
はサンプル速度発生器で駆動されることを意味し、これ
らは内部クロック、CLK(R/X)_intの立ち上
がりで生成される(それらの有効状態に遷移する)。同
様にDXピン上のデータはCLKX_intの立ち上が
りで出力される。
CLKXPは図55に示すように外部FSR,FSX,
CLKR,およびCLKX信号の相対的な極性を構成す
る。内部的にシリアルポートに対する全てのフレーム同
期信号(FSR_int,FSX_int)は有効高状
態である。もしもシリアルポートが外部フレーム同期に
対して構成されていて(FSR/FSXはMCSPへの
入力)、FSRP=FSXP=1の場合、外部の有効低
状態フレーム同期信号は受信機(FSR_int)およ
び送信機(FSX_int)へ送られる前に反転され
る。同様に、内部同期(FSR/FSXは出力ピンでG
SYNC=0)が選択されている場合、内部有効高同期
信号は、もしも極性ビットFS(R/X)P=1である
とFS(R/X)ピンに送られる前に反転される。図7
9はこの反転をXORゲートを用いて示している。
LKXPは送信データをシフトしクロックアウトするた
めに使用される信号変化方向をセットする。データは常
にCLKX_intの立ち上がりで送信されることに注
意されたい。もしもCLKXP=1で外部クロックが選
択されている場合(CLKXM=0でCLKXが入
力)、CLKX上の入力クロックでトリガを掛けられた
外部立ち下がり信号変化が、送信機に送られる前に立ち
上がりトリガクロックに反転される。もしもCLKXP
=1で内部クロックが選択されている場合(CLKXM
=1でCLKXが出力ピン)、内部(立ち上がりトリ
ガ)クロック、CLKX_int、はCLKXピンに送
り出される前に反転される。
ち上がりクロックでクロックされた(送信機により)デ
ータを確実にサンプリングできるようになされる。受信
クロック極性ビット、CLKRPは受信されたデータを
サンプリングするために使用される信号変化方向を設定
する。受信データは常にCLKR_intの立ち下がり
でサンプリングされることに注意されたい。従って、も
しもCLKRP=1で外部クロックが選択されている場
合(CLKRM=0でCLKRは入力ピン)、CLKR
上の入力クロックでトリガを掛けられた外部立ち上がり
信号変化が、受信機に送られる前に立ち下がりトリガク
ロックに反転される。もしもCLKRP=1で内部クロ
ックが選択されている場合(CLKRM=1)、内部立
ち下がりトリガクロックはCLKRピンに送り出される
前に立ち上がりに反転される。
受信機および送信機にクロックを掛けているシステムで
は、CLKRP=CLKXPであることに注意された
い。受信機は送信機と反対の信号変化方向を使用してお
り、この信号変化の周りで有効なデータのセットアップ
および保持が行われることを保証している。図50はデ
ータが立ち上がり信号変化を使用した外部シリアル装置
でクロックをかけられる様子を示し、これは同一クロッ
クの立ち下がりによりMCSP受信機でサンプリングさ
れたものである。
期はMCSP上の転送の始まりを示すために使用され
る。フレーム同期に続くデータストリームは2つの位
相、位相1および位相2を有する。1つのデータストリ
ーム内の位相の数は、RCRおよびXCR内の位相ビッ
ト(R/X)PHASEで選択できる。フレーム毎のワ
ード数およびワード毎のビット数はそれぞれ(R/X)
FRLEN(1/2)および(R/X)WDLEN(1
/2)経由で各々の位相に対して独立に選択することが
出来る。図51はフレームの例を示し、ここで第一位相
は各々12ビットの2ワードからなり、各々8ビットの
3ワードの第二位相が続いている。フレーム内の全ビッ
トストリームは連続していることに注意されたい。ワー
ド間にも位相間にも間隙は存在しない。
/XCR)内のビットフィールドを示し、これは受信機
および送信機の両方に関して各位相に対するワード/フ
レームおよびビット/ワードの数を制御する。フレーム
毎のワードの最大数は128、およびワード毎のビット
数は8−、12−、16−、20−、24−または32
−ビットである。
(1/2)を表59を参照して説明する。フレーム長は
フレーム毎に転送されるシリアルワードの数(−、12
−、16−、20−、24−または32−ビット)とし
て定義出来る。これはフレーム同期信号毎のワードまた
は論理タイムスロットまたはチャンネル数に相当する。
(R/X)CR内の7ビット(R/X)FRLEN(1
/2)フィールドは、表59に示すようにフレーム毎に
最大128ワードまでサポートする。(R/X)PHA
SE=0は単一位相データフレームを表し、また(R/
X)PHASE=1はデータストリームに関して二重位
相を選択する。単一位相フレームに対して、FRLEN
2は無関係である。使用者はプログラムをする際にフレ
ーム長をw引く1とすることに注意が必要である、ここ
でwはフレーム毎のワード数を表す。図51の例に於い
て、(R/X)FRLEN1=1または0000001
bおよびR/X)FRLEN2=2または000001
0bである。
2)を説明する。受信/送信制御レジスタ内の8ビット
(R/X)WDLEN(1/2)フィールドは、ワード
長をワード毎のビット数で、表58に示すようにフレー
ムの各位相に対して受信機および送信機用に定義してい
る。表60はこれらのフィールドの値がどのように個別
のビット単位のワード長を選択するかを示している。例
として図51では、(R/X)WDLEN1=001
b,および(R/X)WDLEN2=000bである。
もしも(R/X)PHASE=0で単一位相フレームを
示している場合は、(R/X)WDLEN2はMCSP
では使用されずその値は無用である。
データ充填を説明する。フレーム長およびワード長は効
果的にデータを充填するために操作する事が出来る。例
えば、図52に示すように4つの8ビットワードが単一
フレームの中で転送される状況を考える。この場合: (R/X)FRLEN1=0000011b,4ワード
フレーム (R/X)PHASE=0,単一位相フレーム (R/X)FRLEN2=X (R/X)WDLEN1=000b,8ビットワード
PUまたはDMAによってMCSP相互間で転送され
る。従って、DRRの4つの読み取りおよびDXRの4
つの書き込みが各フレームに対して必要である。
32ビットデータワードから成る単一位相フレームのデ
ータストリームとして取り扱われることも可能である。
この場合: (R/X)FRLEN1=0b,1ワードフレーム (R/X)PHASE=0,単一位相フレーム (R/X)FRLEN2=X (R/X)WDLEN1=101b,32ビットワード
がCPUまたはDMAによってMCSP相互間で転送さ
れる。従って、DRRの1つの読み取りおよびDXRの
1つの書き込みが各フレームに対して必要である。これ
は結果として先の場合に比較して転送回数がたった四分
の一となる。この操作はシリアルデータ移送に要求され
るバス時間の割合を減少させる。
説明する。フレームの開始はフレーム同期が有効である
と認められた第一クロックサイクルで定義される。フレ
ームの開始に対して、実際のデータ受信または送信の開
始を必要に応じて遅延することが出来る。この遅延はデ
ータ遅延と呼ばれる。RDATDLYおよびXDATD
LYはそれぞれ受信および送信に対するデータ遅延を指
定する。プログラム可能なデータ遅延の範囲はゼロから
2ビットクロック((R/X)DATDLY=00b−
10b)であり、表56に記述されまた図54に示され
る通りである。典型的には1ビット遅延が1サイクル有
効フレーム同期パルスに続くデータとして選択される。
ックCLK(R/X)_int(先に説明済み)の信号
変化に対して検出またはサンプリングされる。従って、
後続のサイクルまたはその後(データ遅延値に応じ
て)、データが受信または送信される。しかしながら、
データ遅延がゼロビットの場合、そのデータは同一シリ
アルクロックサイクル上で受信そして/または送信用に
準備完了でなければならない。受信に関して、この問題
は受信データが有効高状態FSR_intが検出される
CLKR_intの第一立ち下がりでサンプリングされ
るので解決される。しかしながら、データ送信はフレー
ム同期を生成するCLKX_intの立ち上がり変化で
開始されなければならない。従って第一データビットは
XSR従ってDXの中に存在すると考えられる。次に送
信機は、有効高状態に変化するフレーム同期、FSX_
intを非同期的に検出し、直ちに第一ビットがDXピ
ン上に送信されるように駆動を開始する。
る。この構成はシリアルポートが異なる型式のT1フレ
ーム化装置に対してインタフェースを取ることを可能と
し、ここでデータストリームはフレーム化ビットで先導
される。2ビットのデータ遅延を具備した(フレーム化
ビットは1ビット遅延の後に現れ、データは2ビット遅
延の後に現れる)この様なストリームを受信する間に、
シリアルポートは本質的にフレーム化ビットをデータス
トリームから図55に示すように廃棄する。送信に際し
て、第一転送ビットを遅延し、シリアルポートは空白周
期(高インピーダンス周期)をフレーム化ビットが存在
すべき場所に本質的に挿入する。ここでフレーム化装置
はそれ自身のフレーム化ビットまたは別の装置で生成さ
れたフレーム化ビットを挿入すると期待されている。
6は二重移送フレーム機能を使用するAudio Co
dec’97(AC97)企画の例を示す。第一位相は
単一の16ビットワードで構成される。第二位相は12
の20ビットワードで構成される。位相は下記のように
構成される: (R/X)PHASE=1b,二重位相フレーム (R/X)FRLEN1=0b,位相1でフレーム当り
1ワード (R/X)WDLEN1=010b,位相1でワード当
り16ビット (R/X)FRLEN2=0001011b,位相2で
フレーム当り12ワード (R/X)WDLEN2=011b,位相2でワード当
り20ビット CLK(R/X)P=0、CLKR_intの立ち下が
りでサンプリングされた受信データ;CLKX_int
の立ち上がりでクロックされた送信データ。 FS(R/X)P=0,有効高フレーム同期信号 (R/X)DATDLY=01b,1ビットクロックの
データ遅延
イミングを示す。最初にフレーム同期パルス自身が第一
ワードと重複していることを注意されたい。MCSP動
作に際して、フレーム同期信号の無効から有効への遷移
は実際にフレーム同期を示している。この理由により、
フレーム同期は高状態で任意の数のビットクロックであ
る。フレーム同期が認識された後にのみフレーム同期は
無効となり、また次にフレーム同期が認識されると再び
有効となる。
ることに注意されたい。データ遅延に関係なく送信は間
隙無しに生じることを注意されたい。位相2内の先行
(最終)ワードの最終ビットの直ぐ後ろに、次のデータ
フレームの位相1内の第一ワードの第一データビットが
続く。
動作のモードに応じて、パケットまたは転送の間にシリ
アルポート無効の周期を置くことが出来る。この場合、
受信および送信フレーム同期パルスはシリアルワード転
送毎に生じる。MCSPがリセット状態では無く、希望
する動作用に構成されている場合、シリアル転送は(R
/X)OHASE=0を(R/X)FRLEN1の中に
プログラムされたワードの必要数を具備した単一位相フ
レーム用にプログラムする事で開始出来る。ワード数は
1から128((R/X)FRLEN1=0x0から0
x7F)間での範囲を取ることが出来る。要求されるシ
リアルワード長は(R/X)CR内の(R/X)WDL
EN1フィールド内に設定される。転送に際して二重位
相が必要とされる場合は、RPHASE=1,(R/
X)FRLEN(1/2)は1から128ワードを表す
0x0から0x7Fの間の任意の値に設定出来る。
位相データの例を示す。転送は1データビット遅延で構
成されているのでDXおよびDRピン上のデータはFS
(R/X)が有効になって1ビットクロック後に利用で
きる。この章の全ての残りと同様にこれは以下の仮定を
行っている: (R/X)FRLEN1=0b,フレーム当り1ワード (R/X)PHASE=0,単一位相フレーム (R/X)FRLEN2=X,無効 (R/X)WDLEN1=000b,8ビットワード CLK(R/X)P=0、受信データは立ち下がり変化
でクロック;送信データは立ち上がり変化でクロック。 FS(R/X)P=0,有効高フレーム同期信号 (R/X)DATDLY=01b,1ビットデータ遅延
ーム同期(FSR_int)の有効高状態への遷移を受
信すると、それは受信機のCLKR_intの第一立ち
下がり変化で検出される。次にDRピン上のデータはR
DATDLYで設定された適切なデータ遅延の後、受信
シフトレジスタ(RSR)の中にシフトされる。RSR
の内容は次にRBRにシフトされる。RRDYはRBR
からDRRへのコピーが行われる度に有効化されて、受
信データレジスタ(DRR)がCPUまたはDMAで読
みとられるデータの準備が完了したことを示す。RRD
YはDRRがCPUまたはDMAで読みとられると無効
化される。
信フレーム同期が生じると、送信シフトレジスタ、XS
R内の値はXDATDLYで設定された適切なデータ遅
延の後にシフトアウトされてDXピン上に駆動される。
XRDYはDXRからXSRへのコピーの度に有効化さ
れて、データ送信レジスタ(DXR)に送信される次の
データが書き込まれたことを示す。XRDYはDXRが
CPUまたはDMAで書き込まれると無効化される。
を示す。1つのフレーム内のワードの総数は、単一位相
または二重位相に関わらずシリアル転送パケットと呼ば
れる。パケット周波数はフレーム同期信号間の周期で決
定される:
ーム同期信号間の距離を減らすことにより増加させるこ
とが出来る(パケット当たりのビット数でのみ制限され
る)。パケット送信周波数が増加されると、隣接する転
送に対するデータパケット間の無効周期がゼロに減少さ
れる。フレーム同期間の最小間隔はパケット毎に転送さ
れるビット数である。この距離はまた最大パケット周波
数を定める:
ト内のデータビットはビット間に無効状態を具備するこ
となく連続的に送信される。もしも図示されるように1
ビットデータ遅延が存在する場合、フレーム同期パルス
は先行パケット内で送信された最後のビットと重複す
る。
ームを可能とし、従ってフレーム同期パルスは本質的に
冗長となる。従って理論的に、複数パケット転送を開始
するには最初のフレーム同期パルスのみが必要である。
MCSPはシリアルポートの動作をこの方法で、後続の
フレーム同期パルスを無視することでサポートする。デ
ータは各クロック毎に受信機の中にクロックで送り込ま
れるかまたは送信機からクロックで送り出される。(R
/X)CR内のフレーム無視ビット、(R/X)FIG
をプログラムして、後続のフレーム同期パルスを希望す
るフレーム長またはワード数に達するまで無視するよう
に出来る。これは後ほど説明する。
MCSPは送信および受信フレーム同期パルスを無視す
るように構成する事が出来る。(R/X)CR内の(R
/X)FIGビットを、フレーム同期パルスを無視しな
いようにゼロにまたは、フレーム同期パルスを無視する
ように1にセットするようにプログラムすることが可能
である。この様にして使用者は(R/X)FIGビット
をデータを充填するかまたは予想しないフレーム同期パ
ルスを無視するように使用することが出来る。以下の段
落でデータ充填を説明する;また予期しないフレーム同
期パルスに対するMCSP動作をその次の段落で説明す
る。
ータ充填を説明する。ワード長およびフレーム長を変更
して32ビットシリアルワード転送を模擬する1つの方
法を図52を参照して説明されている、従ってより少な
いバス帯域幅しか必要としない。この例はフレーム当た
り複数のワードが存在する場合に適用される。次に図6
2に示される最大パケット周波数で動作するMCSPの
事例を考える。ここで各々のフレームは単一8ビットワ
ードのみを有する。このストリームは各8ビットワード
に対して1つの読み取りおよび1つの書き込みを行う。
図63はこのストリームを32ビットワードの連続した
ストリームとして取り扱うように構成されたMCSPを
示す。この例で最初のものを除く後続フレームを無視す
るように(R/X)FIGは1に設定されている。ここ
では、32ビット毎に1つの読み取りおよび1つの書き
込み転送のみが必要とされる。この構成は効果的に必要
とされるバス帯域幅を四分の一に削減する。
レーム同期パルスを説明する。先の章ではデータをパッ
クし効果的にバス帯域幅を使用するためにどのようにフ
レーム無視ビットが使用できるかを説明している。(R
/X)FIGビットはまた予期しないフレーム同期パル
スを無視するためにも使用できる。予期しないフレーム
同期パルスとはそれらが期待されていない時に生じるも
のである。従ってプログラムされたデータ遅延((R/
X)DATDLY)より1つまたは複数ビットクロック
より前に生じる全てのフレーム同期パルスは予期してい
ないと見なされる。フレーム無視ビットを1に設定する
ことにより、シリアルポートがこれらの予期しないフレ
ーム同期信号を無視するように出来る。
(RFIG=0)、予期されていないFSRパルスは新
たに入力されデータを選んでRSRの内容を廃棄する。
従って、もしもRFIG=0の場合は予期していないフ
レーム同期パルスは現行データ転送を破棄して、SPC
R内のRSYNCERRを1にセットし、新たなデータ
ワードの転送を開始する。これは後ほど更に詳細に説明
する。RFIG=1の時受信は予期しないフレーム同期
パルスを無視して継続される。
れると、これらのフレーム同期パルスは無視されない。
送信に際して、もしも無視しない場合は(XFIG=
0)、予期しないFSXパルスは現在の送信を破棄し、
その結果1つのデータパケットが失われ、SPCR内の
XSYNCERRを1にセットし、新たなデータワード
の送信を開始する。これは後ほど更に詳細に説明する。
XFIG=1の場合、予期しないフレーム同期信号を無
視して正常送信が継続される。
ドBが予期しないフレーム同期パルスで割り込みを掛け
られる例を示す。受信の事例では、Bの受信は破棄され
(Bは失われる)新たなデータワード(この例ではC)
が適切なデータ遅延の後に受信される。この状態は受信
同期エラーであり、従ってRSYNCERRフィールド
がセットされる。しかしながら、送信に関してはBの送
信が破棄され同一データ(B)が適切なデータ遅延の後
再送信される。この状態は送信同期エラーであり、従っ
てXSYNCERRフィールドがセットされる。同期エ
ラーについては後ほど説明する。これとは対照的に図6
5は予期しないフレーム同期信号が(R/X)FIG=
1をセットすることで無視されている場合のMCSP動
作を示す。ここで、ワードBの転送は予期しないフレー
ム同期では影響されない。
下記に示すように、システムエラーを構成する5つのシ
リアルポート事象が存在する: 1)受信オーバーラン(RFULL=1)。これはRB
Rが満杯となり先にDRR内に受信されたデータがCP
UまたはDMAによって未だ読みとられていない(RR
DY=1)時に発生する。RBRの内容はDRRが読み
とられるまでDRRには転送されない。 2)予期しない受信フレーム同期(RSYNCERR=
1)。これは受信中に、RFIG=1で予期しないフレ
ーム同期パルスが発生したときに生じる。予期しないフ
レーム同期パルスはRDATDLY引く1、またはそれ
以上のビットクロック分だけ次の関連するワードの先頭
ビットより早く発生したものとして定義される。これは
現行データ受信を破棄し再スタートを促す。もしも新た
なデータのRSRからRBRへのコピーが最後にRBR
からDRRへのコピーの後になされると、このRBR内
の新たなデータは失われる。これは受信が再スタートさ
れるためにRBRからDRRへのコピーが行われないた
めである。 3)送信データ上書き。ここで使用者はデータをDXR
の中にそれがXSRへコピーされる前に上書きする。そ
れ以前にDXR内にあったデータはDXへ転送されるこ
とは無いが、それは決してXSRにコピーされないから
である。 4)送信空(XEMPTY−=0)。もしも新たなフレ
ーム同期信号が新たなデータがDXRの中にロードされ
る前に到着すると、DXR内の旧データが再び送られる
ことになる。これはDXRに新たなデータがロードされ
るまで、新たなフレーム同期信号がFSXピンに到着す
る度に継続される。 5)予期しない送信フレーム同期(XSYNCERR=
1)。これは送信中に、XFIG=0で予期しないフレ
ーム同期パルスが発生した際に生じうる。再び、予期し
ないフレーム同期パルスはXDATDLY引く1、また
はそれ以上のビットクロック分だけ次の関連するワード
の先頭ビットより早く発生したものとして定義される。
これは現行データ送信を破棄し現行転送の再スタートを
促す。もしも最後にDXRからXSRへのコピーされて
から新たなデータがDXRに書き込まれると、XSR内
の現行値は失われる。それ以外の場合、前回値が再送信
される。
明される。
説明する。SPCR内のRFULL=1は受信機がオー
バーラン状態と成っていることを示す。オーバーランは
次の場合に生じる:RBRが満杯、そしてDRRが最後
にRBRからDRRへの転送が行われてから読みとられ
ていない(RRDY=1)。
なデータは更にRSRの中へシフトされる。一度1つの
完全なワードがRSRの中にシフトされて、RFULL
=1となると、受信機は停止しDRRが読みとられるま
で待機し、RBRからDRRへの転送を実行しない。こ
の時にDRピン上に到着する全てのデータは失われる。
このデータが喪失される理由は、シリアルワードを完全
に受信した際に、RRDY=0の時にのみRSRからD
RRへの転送のトリガが掛けられるためである。リセッ
トから受信部分が動作を開始した後、最小3ワードがR
FULLがセットされる前に受信されなければならない
ことに注意されたい。これは、最初のワードの前にRB
RからDRRへの転送が存在しないためである。
ットを0に消去し、後続の転送が適切に読みとられるよ
うにする:1)DRRの読み取り;2)受信機(RRS
T−=0)または装置のリセット。別のフレーム同期が
受信機を再スタートするために必要である。
リアルワードAはシリアルワードBの受信が完了する前
に準備完了になっていないので、BがDRRに転送され
ることは無い。従ってBが受信された後RFULLがセ
ットされる。DRRが最終的に読みとられた時値Aは未
だDRRの中にある。DRRの読み取りはシリアルワー
ドCが転送された後に生じるので、CがRSRの中にシ
フトされることは無い。
示すが、オーバーラン状態は次のシリアルワードの前に
DRRの内容を読みとることにより回避されている。こ
れはデータBのRBRからDRRへのコピーが次のシリ
アルワードがRSRからRBRへ転送される前に確実に
生じるようにしている。
NCERRを説明する。図68は受信機が全ての入力フ
レーム同期パルスを処理する際に使用する判断樹を示
す。この図は受信機が開始されたと仮定している、RR
ST−=1。予期しないフレーム同期パルスは外部発信
源または内部サンプリング速度発生器から発生される。
4つの事例のいずれか1つが発生しうる: 事例1:受信オーバーラン中のFSR_intパルス。
図66中のワードCの転送がこれの1つの例である。こ
のフレーム同期パルスは無視され受信機は停止状態のま
まである。 事例2:RFIG=1を具備した予期しないFSR_i
ntパルス。この事例は図65を参照して説明された。
ここで受信同期パルスは無視されて受信は継続される。 事例3:正常シリアルポート受信。受信が進まない理由
として3つの考えられる原因があることに注意された
い: 1)このFSRがRRST−=1の後最初。 2)このFSRがDRRが読みとられ、RFULLを消
去した後最初。 3)シリアルポートが内部パケットの合間の中にある。
従って最大パケット周波数に於いて、フレーム同期は関
連するワードの第一ビットの前にRDATDLYビット
クロックで受信することが出来る。これに代わる方法と
して、1つの予期しないフレーム同期パルスは、先行ワ
ードの最後のビットがDRピン上で受信する前のRDA
TDLY引く1ビットクロックの時点またはその前に生
じる時に検出することが出来る。
期パルスでは無いので受信は正常に継続する。 4)事例4:RFIG=0を具備した予期しない受信フ
レーム同期(予期しないフレームは無視されない)。こ
の事例は最大パケット周波数に対して図24に示されて
いる。図69は内部パケットの合間を具備したシリアル
ポートの正常動作中のこの事例を示す。両方の事例に於
いて、SPCR内のRSYNCERRビットがセットさ
れる。RSYNCERRは受信機がリセットされるかま
たは使用者がSPCR内のこのビットに0を書き込むこ
とによってのみ消去出来る。もしもSPCR内のRIN
TM=11bの場合、RSYNCERRは受信割り込み
(RINT)をCPUに駆動することに注意されたい。
はDXR内のデータが送信される前に上書きされると何
が発生するかを示している。最初プログラマがDXRに
データCをロードする。後続のDXRへの書き込みでC
がXSRにコピーされる前にDで上書きされる。従って
CがDX上に送信されることは無い。CPUはデータの
上書きを回避することが出来るが、それはDXRに書き
込む前にXRDYをポーリングするか、またはXRDY
(XINTM=00b)でトリガされるようにプログラ
ムされたXINTを待つことによって行われる。DMA
はXEVTの書き込み同期データ転送で上書きを回避す
ることが出来る。
を経験したか否かを示す。下記の条件のいずれかにより
XEMPTY−が有効(XEMPTY−=0)となる: 1)送信中のアンダーフロー。最後にDXRからXSR
へのコピーが行われてからDXRにロードされない、ま
たXSR内のデータワードの全てのビットがDX上にシ
フトアウトされてしまっている。 2)送信機がリセットされ(XRST−=0または装置
がリセット)そして再スタートされる。
次のフレーム同期までDXを高インピーダンス状態に設
定する。XEMPTY−はDXRがCPUまたはDMA
のいずれかでロードされた後、無効化される(XEMP
TY−=1)。もしもDXRがアンダーフローのために
停止した後再ロードされると、この装置は送信を再開す
る。内部フレーム生成の場合は、DXRからXSRへの
コピーで作られる単一FSX_intを再生成する(X
CR内でFSXM=1、またSRGR内でFSGM=
0)。それ以外の場合は、送信機は次のフレーム同期ま
で待つ。
Bを送信した後、プログラマは後続の同期の前にDXR
を再ロードすることに失敗する。従って、Bは再びDX
上に送信される。図72はほっておけば送信アンダーフ
ロー状態が起こる直前にDXRへの書き込みが行われる
事例を示す。Bが送信された後、Cが次のフレーム同期
パルスが発生する前にDXRに書き込まれ、それによっ
てCが成功裏にDX上に送信され、従って送信空状態が
避けられる。
NCERRを説明する。図73は送信機が全ての入力さ
れる同期信号を処理する際に使用する判断樹を示す。こ
の図は送信機が開始された時点を仮定している、XRS
T−=1。3つの事例のいずれか1つが生じうる: 事例1:XFIG=1を具備した予期しないFSX_i
ntパルス。この事例は図65を参照して説明される。 事例2:正常シリアルポート送信は先に説明した。送信
が進行しない理由として2つ考えられることに注意され
たい: 1)XRST−=1の後FSX_intパルスが最初に
生じる。 2)シリアルポートが内部パケットの合間の中にある。
従って、もしも最大パケット周波数で動作する場合、フ
レーム同期は関連するワードの第一ビットの前にXDA
TDLYビットクロックで受信できる。 事例3:XFIG=0を具備した予期しない送信フレー
ム同期。
0を具備した後続のフレーム同期の事例が図64に示さ
れている。図74は内部パケットの合間を具備したシリ
アルポートの正常動作の事例を示す。両方の事例で、S
PCR内のXSYNCERRビットがセットされる。X
SYNCERRは送信機リセットまたは使用者がSPC
R内のこのビットに0を書き込むことによってのみ消去
出来る。もしもSPCR内でXINTM=11bの場
合、XSYNCERRはCPUに対して受信割り込み
(XINT)を駆動する。更に、SPCR内のXSYN
CERRビットが読み取り/書き込みビットであること
に注意されたい。従ってそこへ1を書き込むことはエラ
ー状態を設定することである。通常は0を書き込むこと
が期待される。
RJUSTを説明する。SPCR内のRJUSTはRB
R内のデータがDRR内で右揃えかまたは左揃え(MS
Bに関して)であるかを選択する。右揃えが選択された
場合、RJUSTは更にそのデータが符号延長されるか
またはゼロが充填されるかを選択する。表61は12ビ
ット受信データ値0xABCに対するRJUSTの種々
のモードの結果を示す。
ドウェア,(R/X)COMPANDを説明する。圧縮
伸張(圧縮:COMpressおよび伸張:exPAND)ハードウェ
アはμ−lawまたはA−law形式のいずれにおいて
もデータの圧縮および伸張が可能である。米国および日
本で採用されている圧縮伸張規格はμ−lawである。
欧州圧縮伸張規格はA−lawと呼ばれている。μ−l
awおよびA−law、logPCMに対する仕様はC
CITT G.711勧告の一部である。A−lawお
よびμ−lawはそれぞれ13ビットと14ビットの可
変範囲を許している。この範囲外の任意の値は正の最大
値または負の最大値にセットされる。
ータを8ビット符号ワードに符号化する。従って圧縮伸
張されたデータは常に8ビット幅であるため、固有の
(R/X)WDLEN(1/2)は0にセットされなけ
ればならず、8ビット幅シリアルデータストリームを示
す。フレームのいずれの位相も8ビットワード幅を持た
ない場合、圧縮伸張はその部分(送信または受信)およ
び位相に対して自動的に無効化される。
定の圧縮伸張法則に従って符号化され、受信データは2
の補数形式で復号される。圧縮伸張が有効化されて、
(R/X)CR内の固有の(R/X)COMPAND設
定で希望する形式が選択される、これは表56に示され
る通りである。圧縮は図75に示すように、データをD
XRからXSRへ、またRBRからDRRへコピーする
処理過程の中で発生する。
6ビット左揃えデータ、すなわちLAW16でなければ
ならない。値は圧縮伸張法に応じて13−または14−
ビットのいずれかである。これは図76に示されてい
る。
データは左揃えの16ビットデータ、LAW16に伸張
される。これは更にSPCR内のRJUSTフィールド
を表62に示すようにプログラムすることにより、32
ビットデータに行揃えすることが出来る。
縮伸張ハードウェアは内部データの圧縮伸張に使用出来
る。これは次のように使用できる: a)線形形式を固有のμ−lawまたはA−law形式
に変換する。 b)μ−lawまたはA−law形式を線形形式に変換
する。 c)線形データを送信し、このデータを圧縮および再伸
張して圧縮伸張の量子化効果を観察する。これはXCO
MPANDおよびCOMPANDの両方が同一圧縮伸張
形式を有効とする場合にのみ有用である。
することの出来る2つの方法を示す。 1)シリアルポートの送信および受信部分の両方がリセ
ットされた時、DRRおよびDXRは圧縮伸張論理回路
を通して内部的に接続される。DXRからの値はXCO
MPANDでの選択に従って圧縮され、RCOMPAN
Dの選択に従って伸張される。データは書き込まれた後
4CPUクロック内で利用できる。この方法の特長はそ
の速度にある。欠点はフローを制御するためにCPUお
よびDMAで利用できる同期が存在しない点である。 2)MCSPはRCOMPANDおよびXCOMPAN
Dで好適に有効化された圧縮伸張によってディジタルル
ープバックモードの中で有効化される。受信および送信
割込(RINTM=0の時RINTまたXINTM=0
の時XINT)または同期事象(REVTおよびXEV
T)はそれぞれCPUまたはDMAがこれらの変換の同
期を取れるようにしている。ここで、この圧縮伸張の時
間は選択されているシリアルビット速度に依存する。
初に送信および受信される。しかしながら、8ビットデ
ータプロトコルによっては(これは圧縮伸張されたデー
タを使用しない)LSBを最初に転送するように要求す
るものがある。(R/X)CR内で(R/X)COMP
AND=01bに設定することで、8ビットワードのビ
ット順序がシリアルポートに送られる前に反転される
(LSB先頭)。圧縮伸張と同様、この機能は固有の
(R/X)WDLEN(1/2)が0にセットされて、
8ビットワードがシリアルに転送されることを示してい
る場合にのみ有効である。もしもいずれの位相も8ビッ
トワード長を持たない場合、このLSB先頭の順序はこ
の部分(送信または受信)および位相に対して自動的に
無効とされる。
ム化を説明する。MCSPは受信機および送信機の両方
に対して、クロック化およびフレーム化を選択するため
のいくつかの手段を有する。クロック化およびフレーム
化は両部分にサンプリング速度発生器によって送ること
が出来る。両部分は外部クロック化そして/またはフレ
ーム化を独立して選択できる。図38はクロックおよび
フレーム選択回路のブロック図を示す。この論理回路で
有効化される機能を下記の段落で説明する。
周器を含み、図79に示すようにプログラム可能データ
クロック(CLKG)およびフレーム化信号(FSG)
を可能とする。CLKGおよびFSGはMCSP内部信
号であって、受信そして/または送信クロック化(CL
KR/X)およびフレーム化(FSR/X)を駆動する
ようにプログラムする事が出来る。サンプリング速度発
生器は内部クロック発信源から駆動されるようにも、ま
た外部クロック発信源から導かれた内部クロックで駆動
されるようにもプログラムすることが出来る。この3つ
の段は下記の計算を行う: 1)クロック分周(CLKGDV):データビットクロ
ック当たりの入力クロック数。 2)フレーム周期分周(FPER):データビットクロ
ック内のフレーム周期。 3)フレーム幅計数(FWID):データビットクロッ
ク内の有効フレームパルスの幅。
ク同期モジュールは入力フレームパルスのクロック分周
の同期を可能とする。
グ速度発生器レジスタ(SRGR)はサンプリング速度
発生器の種々の機能の動作を制御する。以下の章はその
動作がどのようにしてSRGRビットフィールドを用い
て構成できるかを説明している。
/送信クロックモードが1にセットされると(CLK
(R/X)M=1)、データクロック(CLK(R/
X))は内部サンプリング速度発生器出力クロック,C
LKGで駆動される。種々のデータビットクロックを受
信機および送信機に対して独立して選択できる。これら
の選択肢は下記を含む: 1)サンプリング速度発生器への入力クロックはCPU
クロックまたは専用外部クロック入力(CLKS)のい
ずれかが可能である。 2)サンプリング速度発生器への入力クロック(CPU
クロックまたは外部クロックCLKS)信号発生源はC
LKGを駆動するために、プログラム可能な値(CLK
GDV)で分周することが出来る。
ロック(CLKSM=1)または外部クロック入力(C
LKSM=0)、CLKSのいずれかをサンプリング速
度発生器入力クロックとして選択する。任意の分周周期
がサンプリング速度発生器で計算されて分周され、この
入力クロック選択によってタイミングが取られる。
速度発生器データビットクロック速度を決定する。第一
分周器段は入力クロックからシリアルデータビットクロ
ックを生成する。この分周器段は1つのカウンタを使用
し、これはCLKGDVを事前ロードされており、それ
は分周比率値を含む。この段の出力はデータビットクロ
ックであって、これはサンプリング速度発生器出力、C
LKGに出力され、第二および第三分周器段への入力と
して作用する。
ロックの1/(CLKGDV+1)に等しい周波数を有
する。従ってサンプリング発生器入力クロック周波数は
1−256の値で分周される。CLKGDVが奇数また
は0に等しい時、CLKG衝撃係数は50%である。C
LKGDVが偶数値、2pで奇数分周を表していると
き、高状態期間はp+1サイクル、そして低状態期間は
pサイクルである。
れる。外部クロック(CLKS)が、CLKSM=0を
選択することで、サンプリング速度発生器クロック分周
器を駆動するために選択される。この場合、SRGR内
のCLKSPビットはCLKSの変化方向を選択し、こ
れに基づいてサンプリング速度発生器データビットクロ
ック(CLKG)およびフレーム同期信号(FSG)が
発生される。外部クロックの立ち下がり(CLKSP=
0)または立ち上がり(CLKSP=1)のいずれかが
データビット速度クロックおよびFSG上の遷移を引き
起こすことが出来る。
説明する。CLKSがサンプリング速度発生器を駆動す
るように選択されている場合(CLKSM=0),GS
YNCを使用してCLKSに対するCLKGのタイミン
グを構成することが出来る。GSYNC=1はMCSP
とそれと通信している外部装置とが、CLKSを同一位
相の関係を保ちながら分周することを保証する。もしも
GSYNC=0の場合は、この機能は無効化されて、従
ってCLKGは自由に動作し再同期されることは無い。
もしもGSYNC=1の場合は、FSR上の有効遷移が
CLKGの再同期およびFSGの生成にトリガを掛け
る。同期の後、CLKGは常に高状態で開始する。ま
た、FSRはCLKGを発生するCLKSの同一信号変
化で検出される。外部FSRが用意されているが、FS
GはGSYNC=1の時内部受信フレーム同期を駆動す
ることが出来る。GSYNC=1の時、FPERはフレ
ーム周期が外部フレーム同期パルスの到着で決定される
ために無視されることに注意されたい。
Rの種々の極性でのこの動作を示す。これら図では次の
ように仮定している:1つのCLKG幅のFSGに対し
てFWID=0。FPERは次の外部フレーム同期パル
スの到着で決定されるのでプログラムされていないこと
に注意されたい。図はCLKGが最初に同期状態にあっ
てGSYNC=1の場合と、同様にフレーム同期と同期
状態に無くてGSYNC=1の時に何が発生するかを示
している。
が満たされれば受信機と同期して動作することが可能で
ある: 1)FSXがサンプリング速度発生器フレーム同期FS
Gで駆動されるようにプログラムされている(SRGM
内でFSGM=1、かつXCR内でFSXM=1)。も
しも入力FRSがそのタイミングを有する場合、これは
CLKGの立ち下がりでサンプリングする事が可能であ
り、XCR内のFSXM=0と設定してFSRをFSX
に外部的に接続することにより代替として使用すること
が出来る。 2)サンプリング速度発生器クロックが送信および受信
ビットクロックを駆動しなければならない(SPCR内
のCLK(R/X)M=1)。従ってCLK(R/X)
ピンはその他の駆動信号発信源で駆動されてはならな
い。
Bを説明する。SPCR内のDLB=1を設定すること
によりディジタルループバックモードが有効となる。D
LBモード中、DR,FSR,およびCLKRはそれぞ
れ図78に示すようにマルチプレクサを通してDX,F
SX,CLKXに内部的に接続されている。DLBモー
ドは単一のDSP装置でシリアルポート符号を試験する
ことが出来る。図79はディジタルループバックモード
中の受信機制御入力のマルチプレクスを示す。
Mを説明する。表64はPCR内のディジタルループバ
ックビット(DLB)およびCLKRMビットがどの様
にして受信機クロックを選択するかを示している。ディ
ジタルループバックモード(DLB=1)に於いて、送
信機クロックが受信機を駆動する。CLKRMはCLK
Rピンが入力であるか出力であるかを決定する。
する。表65はどの様にして2つの送信クロック発信元
の1つが選択できるかを示している。
ータビットクロック化と同様、データフレーム同期もま
た全てのデータ遅延に関して、受信機および送信機に対
して独立にプログラム可能である。プログラミング選択
肢には下記が含まれる: 1)プログラム可能な同期パルス間の周期と、サンプリ
ング速度発生器レジスタ(SRGR)を用いたプログラ
ム可能有効幅とを具備したフレームパルス。 2)送信部はDXRからXSRへのコピーにより生成さ
れる、自身のフレーム同期信号にトリガを掛ける。 3)受信および送信部は共にそれぞれFSRおよびFS
Xピン上の外部フレーム同期を独立して選択する。
ンプリング速度発生器内の第二分周器段は12ビットカ
ウンタであって、これは生成されたデータクロックを0
から4095まで計数する。このカウンタの値がひとた
びプログラムされたフレーム周期(FPER)と一致す
ると、フレームカウンタはリセットされFSGが生成さ
れる。次に計数工程が再度開始される。従って、FPE
R+1の値が1から4096データビットのフレーム長
を決定する。GSYNC=1の時、FPERは無視され
る値となる。図83は16CLKG周期(FPER=1
5または00001111b)のフレームを示す。
IDフィールドはフレーム同期パルスの有効幅を制御す
る。フレーム周期(FPER)を追跡しているカウンタ
がFWID内にプログラムされている値に達すると、フ
レームパルスは無効となる。従って、FWID+1の値
が1から256データビットクロックの範囲の有効フレ
ームパルス幅を決定する。図83は有効幅2CLKG周
期(FWID=1)を具備したフレームを示す。
M,およびGSYNCで決定される。表66は受信フレ
ーム同期信号を提供する種々の発信元の選択方法を示
す。ディジタルループバックモード(DLB=1)に於
いて、送信フレーム同期信号が受信フレーム同期信号と
して使用され、DRがDXに内部的に接続されている。
びFSGMで決定される。表67は送信フレーム同期パ
ルスの発信元がどの様にして選択できるかを示す。3つ
の選択は: 1)外部フレーム同期入力。 2)サンプリング速度発生器フレーム同期信号、FS
G。 3)DXRからXSRへのコピーが行われたことを示す
信号。
受信および送信CPU割り込み(RINTおよびXIN
T)はSPCR内のRINTM=XINTM=10bを
セットすることでフレーム同期を検出するようにプログ
ラムされる。その他の型のシリアルポート割り込みとは
異なり、このモードはシリアルポートの関連する部分が
リセット中でも動作できる(例えば受信機かリセット中
にRINTを有効化させて)。この場合、FS(R/
X)MおよびFS(R/X)Pは依然固有の発信元およ
びフレーム同期の極性を選択する。従ってシリアルポー
トがリセット状態にあったとしても、これらの信号はC
PUクロックに同期され、続いてCPUにRINTおよ
びXINTの形式で送られるが、これはそれらがシリア
ルポートの受信および送信部に送り込まれた時点で行わ
れる。従って新たなフレーム同期パルスを検出すること
が可能で、その後CPUはそのシリアルポートを安全に
リセットから解除する事が出来る。
図84は二重速度ST−バスであるMitel ST−
バスと等価のMCSP構成を示す。この動作は最大パケ
ット周波数で実行されることに注意されたい。種々の制
御ビットが下記の様にセットされる: a)サンプリング速度発生器で内部的に生成されたCL
K(R/X)M=1,CLK(R/X)_int b)GSYNC=1,CLKGをFSR上の外部フレー
ム同期信号入力で同期する。またFSRは最小パルス幅
を形成するために内部的に生成されることを注意された
い。 c)CLKSM=1,外部クロック(CLKS)がサン
プリング速度発生器を駆動する。 d)CLKSP=0,CLKSの立ち下がりでCLKG
従ってCLK(R/X)_intを生成する。 e)CLKGDV=1,受信クロック(CLKRとして
示されている)はCLKS周波数の半分である。 f)FS(R/X)P=1,有効低フレーム同期パル
ス。 g)(R/X)FRLEN1=11111b,フレーム当たり
32ワード h)(R/X)WDLEN1=0,8ビットワード i)(R/X)PHASE=0,単一位相フレーム、従
って(R/X)FRLEN2=X。 j)(R/X)DATDLY=0,データ遅延無し。
る。この例は下記を除きST−BUSの例と同じであ
る: a)CLKGDV=0,CLKは分周を行うことなく
(単一速度クロック)CLK(R/X)_intを駆動
する。 b)CLKSP=1,CLKSの立ち上がりで内部クロ
ックCLKG,CLK(R/X)_intを生成する。
Rを検出する。この外部フレーム同期パルスは内部MC
SPクロックの再同期および内部で使用するフレーム同
期を生成するために使用される。内部フレーム同期は、
内部クロックの立ち下がりで検出されるように十分な幅
となるように生成される。
この例は下記を除きST−BUS例と同じである: a)GSYNC=0,CLKSがCLKGを駆動する。
CLKGは自由に実行され、FSRで再同期されること
は無い。 b)FS(R/X)M=0,フレーム同期は外部的に生
成される。フレーム化パルスは検出に備えて十分広い。 c)FS(R/X)P=0,有効高入力フレーム同期信
号。 d)(R/X)DATDLY=1,1ビットのデータ遅
延。 e)CLKSP=1,CLKSの立ち上がりでCLKG
従ってCLK(R/X)が生成される。
複数チャンネルはMCSPを先に説明したように単一位
相フレームで構成することにより、送信機および受信機
に対して独立に選択出来る。フレーム当たりのワード数
は(R/X)FRLEN1で表され、選択出来るチャン
ネル数を表す。
(TDM)データストリームを表す。時間分割マルチプ
レクスデータストリームを使用する際に、CPUはそれ
らのいくつかを処理する必要があるだけである。従っ
て、メモリ並びにバスの帯域幅を節約するために、複数
チャンネル選択は送信および受信用の特定チャンネルを
独立して有効化する事が可能である。最大128チャン
ネルビットストリームの中で最大32チャンネルを任意
の指定された時刻に有効化することが可能であるが、動
的手法(後ほど説明する)では128チャンネルの任意
の組み合わせを処理することが可能である。
記の結果となる: 1)ワードの最後のビットを受信してもRRDYは1に
セットされない。 2)ワードの最後のビットを受信した時点でRBRがD
RRにコピーされない。従ってRRDYは有効状態には
セットされない。このことはこのワードに対して割り込
みまたは同期事象が生成されないことを意味する。
記の結果となる: 1)DXが高インピーダンス状態である。 2)関連するワードのシリアル送信の終了時点でDXR
からXSRへの転送が自動的にはトリガされない。 3)XEMPTY−およびXRDYは同様に、関連する
シリアルワードの送信の終了時点で影響されない。
されているかまたは送信されたデータを持つことが出来
る。マスクされている場合は、送信チャンネルが有効で
あってもDXピンが強制的に高インピーダンスとされ
る。
で使用される:複数チャンネル制御(MCR)レジス
タ。送信チャンネル有効(XCER)レジスタ。受信チ
ャンネル有効(XCER)レジスタ。
ネル動作の制御を以下の章で説明する。
れている。
対してそれぞれ独立に有効化出来るが、これはMCR内
でRMCM=1およびXMCMを非ゼロの値に設定して
行われる。
で32個を指定された任意の時点で有効化出来る。この
128チャンネルは8ブロック(0から7)を含み、各
々のブロックは16個の連続したチャンネルを有する。
更に、偶数番号のブロック0,2,4,および6はパー
ティションAに属し、奇数番号のブロック1,3,5,
および7はパーティションBに属する。
任意のグループのチャンネルを有効化する過程で更新出
来る。この機能はそのフレーム内の任意の時刻で16個
の連続したチャンネルの2つのブロック(1つは奇数番
号、そしてもう一つは偶数番号)を制御する交互のピン
ポン手法を用いて実施できる。従って1つのブロックは
パーティションAにそしてもう一方はパーティションB
に属する。
意の2つを選択して、全部で32チャンネルを有効化出
来る。このブロックは図88に示されるようにこのフレ
ーム内の16チャンネル境界上に配置されている。MC
R内の(R/X)PABLKおよび(R/X)PBBL
KフィールドがそれぞれパーティションAおよびBの中
で選択されるブロックを決定する。この有効化は送信お
よび受信に対して独立して実行される。
たチャンネルがそのDXピンを送信周期の間に高インピ
ーダンス状態にセットする事を可能とする。対称な送信
および受信がソフトウェア的に利益があるシステムに於
いて、この機能は送信チャンネルを共有シリアルバス上
で無効化することを可能とする。同様の機能は受信には
不要であるが、それは複数受信がシリアルバス接続を生
じさせないからである。
複数のチャンネル動作の説明である: XMCM=00b:シリアルポートはXFRLEN1内
にプログラムされたワード数分のデータをDXピンを経
由して送信する。従って、DXは駆動され、マスクされ
ることは無い。 XMCM=01b:要求されたチャンネルまたは送信の
必要があるワードのみがXP(A/B)BLKおよびX
CER経由で選択される。
XRに書き込まれ、最終的に送信される。言葉を変えれ
ば、もしもXINTM=00bの場合、これはXINT
がDXRからXSRへのコピーの度に生成されることを
意味し、生成されたXINTの数はXCER経由で選択
されたチャンネル数に等しい(XFRLEN1に等しく
は無い)。 XMCM=10b:この場合、全てのチャンネルが有効
化されており、これはデータフレーム内の全てのワード
(XFRLEN1)がDXRに書き込まれ、そしてDX
RからXSRへのコピーがそれらを受信した時に発生す
る。しかしながら、DXはXP(A/B)BLKおよび
XCER経由で選択されたチャンネルのみを駆動し、そ
れ以外の場合は高インピーダンス状態に設定する。この
場合、もしもXINTM=00b,の場合DXRからX
SRへのコピーの度に発生される割り込みの数は、その
フレーム内のワード数(XFRLEN1)に等しいはず
である。 XMCM=11b:このモードは基本的にXMCM=0
1bおよび10bの場合の組み合わせであって、対称送
信および受信動作が実現できる。全てのチャンネルが無
効化されているので、DRおよびDXは高インピーダン
ス状態である。受信の際は、RP(A/B)BLKおよ
びRCER経由で選択されたチャンネルに対してのみ、
RBRからDRRへのコピーが生じる。もしもRINT
がRBRからDRRへのコピー毎に生成される場合は、
RCERの中で選択されたチャンネル数と同じ回数生じ
ることになる(RFRLEN1の中にプログラムされた
数とは異なる)。送信に際して、対称性を保つために受
信で使用されたのと同じブロックが使用され、従ってX
P(A/B)BLKは無視される。DXRがロードさ
れ、DXRからXSRへのコピーがRP(A/B)BL
K経由で有効化された全てのチャンネルに対して生じ
る。しかしながら、DXはXCER経由で選択されたチ
ャンネルに対してのみ駆動される。XCER内で有効化
されたチャンネルはRCER内で選択されたものの部分
集合またはそれと同一とすることが出来る。従って、も
しもXINTM=00b,の場合CPUへの送信割込は
RCER(XCERでは無い)の中で選択されたチャン
ネルの数と同じ回数発生されることになる。
するMCSPピン上の動作を下記の条件で示している: a)(R/X)PHASE=0,有効化された複数チャ
ンネル選択に対する単一位相フレーム b)FRLEN1=011b,4ワードフレーム。 c)WDLEN1=任意の有効シリアルワード長。 図89A−89Dに於いて、矢印は種々の事象が生じる
場所を単に例として示している。可能な場合はいつで
も、これらの事象が発生し得る時間枠が存在する。
信チャンネル有効(XCER)レジスタはそれぞれ、受
信および送信用の任意の32チャンネルを有効化するた
めに使用される。32チャンネルの中で、16チャンネ
ルはパーティションAの中のブロックに属し、別の16
個はパーティションBの中のブロックに属する。これら
は図90および図91に示されており、表69の中に示
されている(R/X)CEAおよび(R/X)CEBレ
ジスタフィールドは、それぞれパーティションAおよび
Bの16チャンネル幅ブロック内のチャンネルを有効化
する。MCR内の(R/X)PABLKおよび(R/
X)PBBLKフィールドは、どの16チャンネルブロ
ックが選択されるかを選択する。
ネル選択機能を使用して、32チャンネルの固定グルー
プが有効化される、そしてこの割り当ての変更が要求さ
れるまでCPUの介入を受けることなく有効状態を継続
する。任意の数のグループ、またはフレーム内の全ての
ワード/チャンネルにアクセスする事が可能であり、こ
れはブロック割り込みの終了に応答してフレーム処理の
途中でブロック割り当てレジスタを更新して行われる。
選択されているブロックに影響を与えないように注意し
なければならない。現在選択されているブロックはMC
R内のRCBLKおよびXCBLKフィールドを通し
て、それぞれ受信および送信用に読みとることが可能で
ある。関連するチャンネル有効レジスタは、現行ブロッ
クを指示するために固有の(R/X)P(A/B)BL
Kレジスタで選択されている場合は変更出来ない。同様
にMCR内の(R/X)PABLKおよび(R/X)P
BBLKフィールドは、現在選択されているブロックを
指し示しているかまたは指し示すように変更されている
途中では修正変更出来ない。もしもチャンネルの総数が
16またはそれ未満の場合、現行のパーティションが常
に指し示されていることに注意されたい。この場合、シ
リアルポートのリセットのみが有効化を変更出来る。
ャンネル動作中に16チャンネルブロック境界の終点
で、CPUへの受信割り込み(RINT)または送信割
込(XINT)が、SPCR内のRINTM=01bま
たはXINTM=01bの場合それぞれ生成される。こ
の割り込みは新たなパーティションを横切ったことを示
す。次に現在のパーティションがチェックされAそして
/またはBパーティション内のブロックの選択が、それ
らが現在のブロックを指し示していない場合は変更され
る。これらの割り込みは2CPUクロック長の有効高状
態パルスである。もしも(R/X)MCM=0の時、R
INTM=XINTM=01bであると(非複数チャン
ネル動作)、これはいかなる割り込みも生成しない。
説明する。クロック停止モードはSPITMプロトコルと
の互換性を提供する。クロック停止モードは単一位相フ
レーム構成で機能する。SPCR内のクロック停止モー
ドビットフィールド(CLKSTP)は表70に示す4
つの考えられるタイミング変異の1つを使用して、転送
の間にシリアルクロックを停止することが出来る。
き、フレーム同期は別のシリアルポートモードの動作と
は少し異なるかたちで生じる。これらの型のインタフェ
ースに於いて、フレーム化は本質的にクロックが存在す
るかまたは存在しないかによって実行され、含まれてい
るその他の信号はスレーブ有効信号であって、これは単
純にスレーブ装置(クロックを出力しない装置)上のシ
リアルデータ出力ドライバを有効化するように作用す
る。装置の中にはスレーブ有効化を持たないものもあ
る。スレーブ有効化を具備していたりまたは具備してい
ない装置とインタフェースを取るために、これに代わる
フレーム化手法が使用される。MCSPがSPIモード
で動作するように構成されている場合、送信機および受
信機は共にマスタとしてまたはスレーブとして動作す
る。
としてセットされ(DXRのロードで生成される)、F
SRと必要であればスレーブ装置上の有効入力に接続さ
れる。MCSPは内部的に連続クロックを生成し、転送
が完了した時点で外部インタフェースへのクロックをゲ
ートを介して遮断する。この場合、受信クロックは内部
の連続的に実行されている部分から提供されるので、受
信機および送信機は両方とも内部的にはクロックが停止
しないかの様に動作する。
ルポート論理回路はデータビット毎の内部クロックパル
スと丁度同じ数のみを用いて転送を実行する。もしもマ
スタ装置がスレーブ有効信号を提供する場合は、それは
FSX/FSRに接続され、その非同期形式で使用され
る。FSXは従って、DXピンへのデータの初期駆動の
みを制御する。もしもマスタ装置がスレーブ有効を提供
しない場合は、外部FSR/FSXピンは有効動作(F
SX/FSR極性制御ビットで定義されるように)レベ
ルに接続され、データはDXRにロードされると直ちに
DXピンに駆動される。入力クロックとマスタからのフ
レーム同期はCPUクロックに同期されて、リセットを
可能とする。送信されるべき第一データはDX上で利用
可能であるが、これはSPIクロックを検出した後にの
み有効化される。
受信機の両方に対して、クロックの停止はそのクロック
が外部的に生成されるか内部的に生成されるかに応じ
て、異なる方法で処理される。クロックが外部的に生成
される場合、クロックを生成している外部装置は送信さ
れたワードの間で適切にクロックを保持する。シリアル
ポートクロックが内部的に生成される場合、このクロッ
クは連続して発生されており、転送が完了した時に外部
インタフェースに対して単純にゲートで遮断される。こ
の場合、転送は外部自由実行クロックの場合と同じやり
方で実行される。
されるように、特定のSPIインタフェースに対して適
切なクロック手法を選択する。SPCR内のCLKST
Pビットフィールドは下記の1つを選択する: 1)クロック停止モードが有効であるか否か。 2)クロック停止モード中、停止時にクロックが高状態
かまたは低状態か。 3)クロック停止モード中、第一クロック変化が第一デ
ータビットの開始時点で生じるかまたは第一データビッ
トの途中で生じるか。
X,FSX,DX,CLKR,FSR,およびDR)を
シリアルポートピンとしてではなく汎用目的I/Oとし
て使用する事を可能とする: 1)シリアルポートの関連部分(送信機または受信機)
がリセット中;SPCR内の(R/X)RST−=0、
そして 2)シリアルポートの関連部分に対して汎用目的I/O
が有効化されている。
Pピンの各々を汎用目的入力または出力として構成する
ビットを有する。表71はどの様にしてこれが実現でき
るかを示す。FS(R/X)の場合、FS(R/X)M
=0はピンを入力として構成し、FS(R/X)M=1
はそのピンを出力として構成する。出力として構成され
た場合、FS(R/X)上に駆動される値は、FS(R
/X)P内に格納されていた値である。もしも入力とし
て構成された場合は、FS(R/X)Pは読み取り専用
ビットとなり、これはその信号の状態を反映している。
CLK(R/X)MおよびCLK(R/X)PはCLK
(R/X)と同様に働く。送信機が汎用目的I/Oとし
て選択されると、PCR内のDX_STATビットの値
がDX上に駆動される。DRは常に入力であり、その値
はPCR内のDR_STATビット内に保持される。C
LKSを汎用目的入力として構成するために、送信機お
よび受信機は共にリセット状態で、かつ(R/X)IO
EN=1でなければならないが、これはそれがMCSP
に対して常に入力でありまた送信および受信動作の両方
を反映するためである。
れは下記用途で使用される: 時間事象 計数事象 パルス発生 CPU割り込み DMAへ同期事象送信
し、内部または外部発信元からクロックされることが出
来る。このタイマはI−/O(TIM)を有しこれは入
力クロック、出力クロックとして、または汎用目的I−
/Oピンとして機能する。
D変換器に信号を送って変換を開始させたり、またはD
MA制御装置にトリガを与えてデータ転送を開始させる
ことが出来る。例えば外部クロックで、タイマは外部事
象を計数し、指定された事象数の後にCPUに割り込み
を掛けることが出来る。図93はこのタイマのブロック
図を示す。
ている。
スタ内のビットフィールドを説明している。
ロックサイクルの数を含む。この数はTSTATの周波
数を制御する。
ると何時でも更新する。タイマ周期レジスタ内の値に達
すると、これは次のCPUクロックのタイマ入力クロッ
クへの各サイクルで0にリセットする。
およびHLD− 表74はGOおよびHLD−がどの様にしてタイマ動作
の基本機能を有効とするかを示す。
る: 1.もしもタイマが現在ホールドされていない場合は、
タイマをホールドする。装置をリセットした後はタイマ
は既にホールド状態であることに注意。 2.希望する値をタイマ周期レジスタに書き込む。 3.タイマ制御レジスタのGOおよびHLDビットを1
にセットしてタイマを開始し、同時に希望する値をタイ
マ制御レジスタに書き込む。
かしながら、計数は1つのCPUクロックからタイマ計
数有効化発信元の1つの次のクロックへの低状態から高
状態への遷移で有効化される。この遷移は図93に示さ
れる信号変化検出回路で検出される。有効遷移が検出さ
れる度に、1つのCPUクロック幅クロック有効化パル
スが生成される。使用者に対して、これはカウンタがあ
たかも計数有効化発信元でクロックされているかのよう
に見える。従ってこの計数有効化発信元をクロック発信
元と呼ぶ。
と、タイマはゼロにリセットされる。このリセットはタ
イマカウンタとタイマ周期とが一致した後の次のCPU
クロック上で発生する。従ってカウンタはゼロからNま
で計数する。周期が2でCPUクロックの四分の一がタ
イマクロック発信元(CLKSRC=1)として選択さ
れた場合を考える。一度開始されるとタイマは以下の順
序で計数する:0,0,0,0,1,1,1,1,2,
0,0,0,1,1,1,1,2,0,0,0....
カウンタは0から2の間で計数するが、周期は12(=
3*4)CPUクロックサイクルでは無くて、8(=2
*4)CPUクロックサイクルであることに注意された
い。従って計数周期はTIMER PERIOD+1ではなくTIMER PE
RIODである。
マカウンタを更新させる。タイマ入力クロックを駆動す
るために3つの発信元が利用出来る: 1.TIMピン上の入力値。この信号は非同期外部入力
によって引き起こされる準安定状態を防止するために同
期が取られる。 2.CPUクロックの四分の一 3.DATOUT値。
RC,FUNC,およびI−/Oビットフィールドが選
択されてどの一つがタイマ入力クロックを駆動するかを
示している。
の値は常にタイマ制御レジスタ内のDATINビット内
に捕捉されている。図93に示されるように、DATI
Nの発信元は常に同期化器を通されており、TIMが入
力ピンの場合の準安定化を回避するようにしている。ま
たINVはTIMがタイマピン(FUNC=1)として
構成されているときにのみ使用される。
図98に示されるように、パルスモードとクロックモー
ドである。タイマグローバル制御レジスタのC/P−ビ
ットでモードを選択する事が出来る。パルスモードで
は、タイマ制御レジスタ内のPWIDでパルス幅を1ま
たは2入力クロック周期のいずれかにセット出来る。こ
の機能の目的はTSTATがTIM出力を駆動する場合
に、最小パルス幅を提供する事である。TSTATはこ
のピンをTIMがタイマピン(FUNC=1)として使
用されているときに駆動し、CPUクロックの四分の一
がクロック発信元(CLKSRC=0)である。従っ
て、TIMパルス幅は4または8CPUクロック幅であ
る。表76はパルスおよびクロックモードでの種々のT
STATタイミングパラメータの詳細式である。
装置がリセットされた後でタイマが計数を開始する前
に、TSTATは0に保持される。GO=1にセットし
てタイマを始動した後、周期およびカウンタレジスタが
ゼロの時、タイマの動作は選択されたC/Pモードに依
存する。パルスモードでは、それが保持されているか否
かに関わらずTSTAT=1である。クロックモードで
は、タイマが保持されている時(HLD−=0)、TS
TATはその以前の値を保ち、HLD=1の時、TST
ATは(1/2CPUクロック周波数)の周波数で留め
られる。 2.カウンタオーバーフロー。カウンタレジスタが周期
レジスタの値より大きな値にセットされると、カウンタ
はその最大値(FFFFFFFFh )に達し、0に戻って継続す
る。 3.有効タイマのレジスタへの書き込み。周辺機器バス
オーバーライドレジスタからの書き込みでカウンタレジ
スタが更新され、新たな状態で制御レジスタが更新され
る。 4.パルスモードでの小さなタイマ周期値。パルスモー
ドで周期が小さいと、TSTATを高状態に留めること
に注意されたい。この条件はTIMER PERIOD £PWID+1
の時に生じる。
期事象を駆動する。割り込みの周波数はTSTATの周
波数と同じである。TSTAT上の低状態から高状態へ
の遷移は、タイマカウンタが周期レジスタと等しくなる
時に常に発生する。
ケット境界上に停止させて、単独ステップ送り、ベンチ
マーク、プログラムファイリング、またはその他のデバ
ッグ用途に使える。エミュレーション停止中に、CPU
クロック四分の一がクロック源として選択されていると
き(CLKSRC=1)タイマは停止する。ここでカウ
ンタはこの様なサイクル中にCPUがエミュレーション
停止によって停止されない場合にのみ有効化される。従
って、単一ステップ動作中に計数が再有効化される。も
しもCLKSRC=0の場合、タイマはプログラムに従
って計数を継続する。
ルシリアルポート(MCSP)120、タイマ131お
よび132、DMAチャンネル140および141、そ
してホストポート150を含む。この周辺機器のセット
は、外部メモリインタフェース(EMIF)103およ
び外部割り込み信号INT(4−7)と共に、16割り
込み発信元を生成する。しかしながらCPU10は使用
可能な12の割り込みスロットを有する。本発明の1つ
の特徴によれば、割り込み選択器回路160は好適に1
6割り込み発信元の内のどの12個が使用されるかを選
択する。割り込み選択器160はまた、CPU10が効
果的に外部割り込み入力の極性を変更出来るようにす
る。
したDMA同期事象と2つの点が異なる事を除いて類似
していることに注意されたい。1つの相違はMCSPが
割り込みとDMA同期事象を別々に生成する点である。
第二の相違はDSPINTが取り除かれて4ビット符号
化を可能としている点である。
信元である。加えて、MCSPからのフレーム同期受信
信号(FSR)およびフレーム同期送信信号(FSX)
をRINTおよびXINT信号を直接駆動するようにプ
ログラムすることが可能である。これらの信号は同期が
取られているので、これらはDMAまたはCPUのいず
れかに送られる前に2つのレジスタを通過される。図9
9は1例としてINT4を使用した外部割り込み信号の
タイミングを示す。この図はまた2つの同期フリップフ
ロップを通る外部割り込み用遅延をも示す。この遅延は
2CPUクロック(CLKOUT1)サイクルで有るこ
とに注意されたい。しかしながら、もしもINT4入力
がCLKOUT1の立ち上がり変化に対してセットアッ
プおよびホールド時間中に遷移する場合は、この遅延は
3CLKOUT1サイクルまで延びる。一度同期が取ら
れると、関連する割り込みフラグ(IF4)がセットさ
れる前に3CLKOUT1サイクル遅延が追加される。
ACK)信号で示されるように、最も早い場合で1CL
KOUT1サイクル後に起きるように予定出来る。割り
込みは適切に有効化されない場合は、延期したりまたは
禁止する事が出来る。この場合、IACKもまた延期さ
れる。IACKに関して、CPUはINUM信号をセッ
トしてどの割り込みが行われたかを示す。外部的に、I
ACKピンパルスは2CLKOUT2サイクル幅に拡張
されCLKOUT2に同期される。またINUMピン信
号はこの外部IACKをセットアップおよびホールドの
1つのCLKOUT2サイクルとフレーム化し、4CL
KOUT2サイクル幅とする。図の中でINUMおよび
IACKはCLKOUT2の立ち上がりで無効ではある
が、内部回路はこの遷移を捕らえて、希望する波形をI
ACKおよびINUMピン上に発生することが出来る。
ジスタに含まれている。割り込みマルチプレクサレジス
タは表77の割り込み発信元と4から15(INT4−
INT15)のCPU割り込みとの間の写像を決定す
る。外部割り込み極性レジスタは外部割り込みの極性を
セットする。
り込み(EXT_INT4−EXT_INT7)の極性
を変更することを可能とする。通常、割り込み発信元の
低状態から高状態への遷移が割り込みとして認識され
る。このレジスタ内の関連するXIPビットを1にセッ
トすることで、外部割り込み発信元を反転して、効果的
にCPUが外部割り込みの高状態から低状態への遷移を
検出できるように出来る。もしも関連するXIPが0に
消去されると、非反転外部割り込みが通されて、CPU
は低状態から高状態への遷移を割り込みの信号通知とし
て認識する。
ールド(図101および102)は、割り込み発信元を
個別の割り込みの中へ写像させる。INTSEL4−I
NTSEL15は表79に示すようにCPU割り込みI
NT4−INT15に対応する。INTSELフィール
ドを表78内の希望する割り込み選択番号の値にセット
することにより、任意の割り込み発信元を任意のCPU
割り込みに写像できる。表79はまた割り込み発信元か
らCPU割り込みへのデフォルト写像を示す。
り込みを有効化する前に構成されなければならない。一
度レジスタがセットされると、使用者は少しの遅延の
後、割り込みフラグレジスタを消去してこの構成によっ
て引き起こされる全ての疑似的な遷移を取り除かねばな
らない。割り込み選択器は別の時間中にも構成出来る
が、修正変更されたフィールドの影響を受ける割り込み
に対して擬似的な割り込み条件がCPUによって検出さ
れる可能性がある。
またはエミュレーション停止中に異常な動作は行わな
い。レジスタ値はいずれ場合も保存される。
路を駆動し、これが全ての内部および外部クロックを生
成する。このPLLは外部発振器周波数を4倍し、その
結果生成されたクロックをCLKOUT1出力ピンに供
給する。CLKOUT1の内部版はプロセッサによって
命令サイクルクロックとして使用される。この装置のほ
とんどのタイミングパラメータはCLKOUT1クロッ
クに関連して定義され、特にその立ち上がり変化が使用
される。CLKOUT2は別の出力クロックで、CLK
OUT1からその半分の周波数でEMIF内に誘導され
る。2つのその他のクロック信号がPLL出力から誘導
される−SSCLKとSDCLK(これもまたEMIF
内)である。これらは外部SBSRAMおよびSDRA
M同期メモリにクロックを送るために使用される。
1倍モードで動作することも可能であり、その場合入力
クロック周波数はCLKOUT1出力周波数と同じであ
る。倍率計数を選択する際に考慮すべき要因には、基板
レベルでの雑音およびクロックのジッタが含まれる。4
倍モードは基板雑音を最小とし、一方1倍モードは内部
クロックジッタを減少させる。クロックモードは以下の
図103に示されるように2つのCLKMPDEピンで
制御される。
な時間は、CLKINおよびCLKOUT1周波数に依
存し、典型的には数十マイクロ秒程度である。同期時間
はリセット信号の存続時間に影響し、その間リセット状
態はPLLが適切な出力周波数に同期出来るように十分
長く保たれる必要がある。
期対象とするCLKOUT1周波数範囲を識別する。P
LLはまた2つのバイパスキャパシタを必要とし(PL
LVとPLLGとの間)、外部低域フィルタ構成部品
(R1,C1,C2)とEMIフィルタである。R1,
C1,C2の値、およびフィルタはCLKINとCLK
OUT1周波数に依存する。
の論理状態から別の論理状態にスイッチングする際に消
費される。チップの論理回路の一部または全てがスイッ
チングすることを防止することにより、データまたは動
作状況を喪失することなくかなりの電力節約が実現でき
る。
クロック入力を遮断し、その論理回路のほとんどがスイ
ッチングすることを防止する。Pd1は効果的にCPU
を運転停止する。別の電力節約は電源断モードPd2で
実現され、ここで全てのオンチップ構造(複数のバッフ
ァを含む)がPLLの出力(図104参照)で”停止”
される。
(PD2同様)、また外部クロック発信元(CLKI
N)がPLLに達するのを遮断する。Pd3からの復帰
はPd2からの復帰よりも時間がかかるが、それはPL
Lが電源投入後と丁度同じように再ロックされる必要が
有るためである。
方のPLLクロックモードで全チップを運転停止させ
る。Pd2およびPd3信号は両方ともPD_ピンに通
知してこれら2つの電源断モードが外部から認識できる
ようにしている。この章に書かれている電源断モードに
加えて、IDLE命令は複数のNOPを実行することで
より低いCPU電力消費を提供する。IDLE命令は割
り込みにサービスする場合にのみ終了される。
御状態レジスタ内のビット10−14(CSR PWR
Dフィールド)を設定してプログラムされる(図105
参照)。Pd2およびPd3モードは装置リセットでの
み廃棄される、一方Pd1モードはまた有効化された割
り込み、またはCSRのビット13および14で指示さ
れた任意の割り込み(有効化されていようがいまいが)
によって終了出来る(割り込みは信号変化で駆動され
る)。CSRに書き込みを行うとき、PWRDフィール
ドの全てのビットは同じ時間にセットされなければなら
ない。予約されたフィールド(CSRのビット15)に
書き込む際には、論理0が使用されなければならない。
表80参照。
を引き起こす命令(CSR内のアイドリングビットをセ
ットすることにより)の3−4命令後に実行される。下
記の命令フロー参照: INSTR1(MVK) 電源断モードはこの命令でセ
ットされる INSTR2 CPUが電源断を開始するよ
うに電源断論理回路に通知する。 INSTR3 電源断信号がCPUそして/
または周辺機器に送られる INSTR4 CPUが内部電源断信号を受
信する INSTR5 CPUがINSTR5または
INSTR6の前に実行を一次中止する INSTR6 CPUがINSTR5または
INSTR6で実行を再開する INSTR7 正常プログラム実行がここで
再開される
み、または任意の割り込み(有効であるか否かに関わら
ず)でトリガが掛けられる。第一番目の場合は論理1を
制御状態レジスタのビット13(PWRDフィールド)
に書き込むことで選択され、また第二番目の場合は論理
1をCSRのビット14に書き込むことで選択される。
もしもPd1が非有効化割り込みで終了された場合は、
プログラムの実行は電源断を引き起こした命令(CSR
内のアイドリングビットをセットすることにより)に続
く4番目または5番目に戻る。有効化された割り込みで
の復帰は、プログラムの実行は電源断を引き起こした命
令(CSRレジスタGIEおよびIERレジスタNMI
EビットもまたISFPを実行するためにセットされな
ければならない)に続く4番目または5番目に戻る前
に、対応する割り込みサービスフェッチパケットを最初
に実行する。
は、種々の量の不純物質を半導体基板の中に注入し、そ
の不純物を基板内の選択された深さに拡散させてトラン
ジスタ素子を形成する複数のステップを含む。不純物の
配置を制御するためにマスクが形成される。導電物質お
よび絶縁物質の複数の層が蒸着されて種々の素子を相互
接続させるためにエッチングされる。これらのステップ
はクリーンルームの環境で実施される。
に試験が含まれる。ウェーハー形状の段階で、個別の素
子は運転状態にバイアスされて基本動作機能の探針試験
が行われる。次にウェーハーが個別のダイスに分割さ
れ、これは裸のダイまたはパッケージとして販売され
る。パッケージに入れられた後、処理された部品は運転
状態にバイアスされて動作機能の試験が行われる。
の他の機能回路を含み、これは此処に説明した機能回路
と込み合わされて、組み合わされた機能の全ゲート数を
削減している。当業者にはゲート最小化技術は知られて
いるので、その様な実施例の詳細は此処では説明しな
い。
いて集積回路を設計する際に別の型式の単一セットにも
効果的に適用出来る。例えば、複数の状態信号を選択し
て限られた数の状態入力に供給する事ができる。
される”、”接続される”および”接続”は電気的な接
続を意味し、追加構成要素が電気的接続経路の中に入れ
られる場合を含む。
してきたが、この説明は制限的に解釈されることを意図
してはいない。本発明のその他の種々の実施例がこの説
明を参照する事により当業者には明らかであろう。従っ
て添付の特許請求の範囲は、実施例のこの様な修正変更
はいずれも本発明の真の範囲および精神をカバーするこ
とを意図している。
いて集積回路を設計する際に別の型式の単一セットにも
効果的に適用出来る。例えば、複数の状態信号を選択し
て限られた数の状態入力に供給する事ができる。
ロプロセッサのブロック図。
ロック図。
ロック図。
ットとレジスタファイルのブロック図。
モリマップの1つを図示する。
モリマップの1つを図示する。
れたブロック図。
ットアドレスを使用する方法を示す。
その他のマイクロプロセッサモジュールとの間のマスタ
(要求側)とスレーブ(資源)の関係を示す。
する。
示する。
示する。
する。
示す。
ジスタを図示する。
図示する。
DMAグローバルデータレジスタを図示する。
DMAグローバル制御レジスタを図示する。
ての可能化された条件のロジックを図示する。
を含むDMA制御装置の内部データ移動経路を示す。
簡略化されたブロック図を示す。
る。
52−入力の等価回路を示す。
HPIアクセスタイミングを示す。
PIアクセスタイミングを示す。
を具備したEMIFの簡略化されたブロック図を示す。
示す。
間制御レジスタを示す。
を図示する。
タを示す。
ースを示す。
ースを示す。
を示す。
す。
読み取りを具備したSDRAMを表す。
を表す。
BSRAM)に対するEMIFインタフェースを示す。
を示す。
示す。
タフェースを示す。
ェースを示す。
ンタフェースを示す。
インタフェースを示す。
インタフェースを示す。
る。
SP)のブロック図である。
CR)を示す。
号の典型的な動作を示す。
クロックを取られる様子を示しており、これはクロック
の立ち上がりを用いて行われ、これはMCSP受信機に
より同一クロックの立ち下がりと共にサンプリングされ
る。
位相は各々12ビットの2ワードから構成され、そして
各々8ビットの3ワードの第二位相が続く。
レームの中で送信される状態を示す。
る単一位相フレームのデータストリームを図示する。
ゼロから2ビットクロック((R/X)DATDLY=
00b−10b))であることを示す。
からフレームビットを本質的に除去する様を示す。
C97)標準の1例を示す。
単一位相データフレームの例を示す。
P動作を示す。
ット周波数に於けるMCSP動作を示す。
の連続ストリームとして取り扱う様に構成されたMCS
Pを示す。
時に予期せぬフレーム同期パルスで割り込まれた例を示
す。
SP動作を示す。
す。
ルスを取り扱う際に使用する判定機を示す。
ートの通常動作を示す。
過剰書き込みされた際に何が生じるかを表す。
す。
ーフロー状態送信の直前にDXRへ書き込まれる場合を
示す。
号を取り扱うために使用する判定機を示す。
アルポートの通常動作の事例を示す。
RRへのデータコピー処理の間に生じる圧縮を示す。
左揃え16ビットデータがコンパンディング法則に応じ
て13または14ビットの値となる。
出来る2つの方法を示す。
を表す。
R)を示す。
す。
す。
す。
SP構造を示す。
R)を図示する。
で、パーティションAおよびB内にブロックが割り当て
られる様子を図示する。
上の活動を示す。
上の活動を示す。
上の活動を示す。
上の活動を示す。
CER)を図示する。
CRE)を図示する。
フェースに対して適切なクロック方法を選択する様子を
示す。
す。
す。
す。
す。
スタ内のINTSELフィールドを示す。
レジスタ内のINTSELフィールドを示す。
る。
されたブロック図を示す。
(CSR PWRDフィールド)内のパワーダウンビッ
ト(10−14)の設定を示す。
Claims (34)
- 【請求項1】 データ処理装置であって:命令を実行す
るための中央処理装置(CPU)と;中央処理装置に接
続され、CPUで実行される命令を格納するためのメモ
リ回路と;そしてCPUに接続され、各々の位相が異な
る組のパラメータを有する二重位相フレームでデータの
送信および受信を行うように動作可能なシリアルポート
インタフェース回路とを含む、前記データ処理装置。 - 【請求項2】 請求項1記載のデータ処理装置に於い
て、シリアルポートインタフェース回路が更に、各々の
位相に対して異なる数のワードを選択するように動作可
能な、前記データ処理装置。 - 【請求項3】 請求項2記載のデータ処理装置に於い
て、シリアルポートインタフェース回路が更に:データ
送信出力;データ送信出力に接続され、複数のビットを
有する送信データワードをCPUから受信するように動
作可能なデータ送信レジスタと;シリアルデータストリ
ームが、データ送信レジスタからデータ送信ポートを経
由して時間分割マルチプレクス方式で、例えば複数のデ
ータチャンネルが利用できるように、送信されるように
動作するフレーム同期生成回路および制御回路と;そし
てその中を送信データワードが送信される複数のデータ
チャンネルの一部を、送信データワードの各々のビット
が複数のデータチャンネルから選択されたチャンネルに
割り当てられるように選択するよう動作可能な複数チャ
ンネル制御レジスタとを含む、前記データ処理装置。 - 【請求項4】 請求項3記載のデータ処理装置に於い
て、シリアルポート回路が更にデータ送信ポートに接続
された送信チャンネル有効化レジスタを含み、この送信
チャンネル有効化レジスタが送信データワードの1つま
たは複数のビットの送信を無効化するように動作可能
な、前記データ処理装置。 - 【請求項5】 請求項4記載のデータ処理装置に於い
て、シリアルポートインタフェース回路が更に:データ
受信ポートと;データ受信ポートに接続され、サンプリ
ング速度クロック生成回路と;外部クロック信号を受信
するためにサンプリング速度生成回路に接続された、外
部クロック入力と;外部フレーム同期信号を受信するた
めにサンプリング速度生成回路に接続された、フレーム
同期信号入力と;サンプリング速度生成回路に接続さ
れ、CPUで実行される別の選択された命令に応答して
サンプリング速度生成回路を制御するためのサンプリン
グ速度生成レジスタとを含み、 ここで、サンプリング速度生成回路が更にフレーム同期
信号入力に接続されたフレームパルス検出回路を含み;
そしてここで、サンプリング速度生成回路が、サンプリ
ング速度生成レジスタ内の制御ビットが第一状態の時に
は、フレームパルス検出回路に応答してサンプリング速
度生成回路を外部フレーム同期信号に再同期させ、サン
プリング速度生成レジスタ内の制御ビットが第二状態の
時には、自由実行状態とさせるように動作可能である、
前記データ処理装置。 - 【請求項6】 請求項5記載のデータ処理装置に於い
て、サンプリング速度生成回路が更に外部クロック入力
に接続されかつデータビットクロック出力を有するクロ
ック分周回路を含み、これが第一周波数を有する外部ク
ロック信号を第二周波数を有するデータビットクロック
に、CPUで実行される別の選択された命令に応答して
変換するように動作可能である、前記データ処理装置。 - 【請求項7】 請求項6記載のデータ処理装置に於い
て、サンプリング速度生成回路が更にマルチプレクサ回
路の第一入力に接続された内部クロック入力を含み;こ
こで外部クロック入力がマルチプレクサの第二入力に接
続され、マルチプレクサの出力がクロック分周回路に接
続されており;そしてここでマルチプレクサがCPUで
実行される別の選択された命令に応答する、前記データ
処理装置。 - 【請求項8】 データ処理装置であって:命令を実行す
るための中央処理装置(CPU)と、 前記中央処理装置に接続されたメモリ制御装置と、そし
て前記メモリ制御装置に接続されたメモリ回路とを含
む、前記データ処理装置。 - 【請求項9】 請求項8記載のデータ処理装置が更に:
前記メモリ制御装置に接続されたプログラム可能読み取
りおよび書き込みアドレス回路を有する、直接メモリア
クセス(DMA)制御装置を含む、前記データ処理装
置。 - 【請求項10】 請求項9記載のデータ処理装置が更
に:前記メモリ制御装置に接続された外部メモリインタ
フェース回路を含む、前記データ処理装置。 - 【請求項11】 請求項8記載のデータ処理装置が更
に:前記中央処理装置に接続された第二メモリ制御装置
と;そして前記第二メモリ制御装置に接続された第二メ
モリとを有する前記データ処理装置。 - 【請求項12】 請求項9記載のデータ処理装置が更
に:前記直接メモリアクセス制御装置に接続されたホス
トポートインタフェースを含む、前記データ処理装置。 - 【請求項13】 請求項11記載のデータ処理装置が更
に:前記メモリ制御装置に接続された周辺機器バス制御
装置と、前記周辺機器バス制御装置に接続された外部メ
モリインタフェース制御装置を含む、前記データ処理装
置。 - 【請求項14】 請求項13記載のデータ処理装置に於
いて、前記外部メモリインタフェース回路が複数の異な
る型式のメモリとプログラム可能なようにインタフェー
スを行う、前記データ処理装置。 - 【請求項15】 請求項8記載のデータ処理装置が更
に:前記中央処理装置用のリセットアドレスに配置され
ているメモリの型式を定義するための少なくとも1つの
外部信号を含む、前記データ処理装置。 - 【請求項16】 請求項8記載のデータ処理装置が更
に:前記メモリ回路の大きさと位置とを識別するための
少なくとも1つの外部信号を含む、前記データ処理装
置。 - 【請求項17】 請求項13記載のデータ処理装置が更
に:前記周辺機器バス制御装置に接続されたプログラム
可能タイマを含む、前記データ処理装置。 - 【請求項18】 請求項8記載のデータ処理装置が更
に:前記中央処理装置にクロック信号を提供するための
プログラム可能フェーズロックループ回路を含む、前記
データ処理装置。 - 【請求項19】 請求項8記載のデータ処理装置が更
に:クロック信号が前記装置の予め選択された部分に到
達することをプログラム可能なように防止するための電
源断回路を含む、前記データ処理装置。 - 【請求項20】 データ処理装置であって:中央処理装
置に接続されたプログラムメモリ回路内に格納されたソ
フトウェア命令を実行するように動作可能な中央処理装
置と;処理装置で処理されるべきデータを格納するよう
に動作可能なメモリ回路と;そして読み取りアドレス回
路と書き込みアドレス回路とを有し、メモリ回路との間
で相互にデータ転送を行うように動作可能で、更に中央
処理装置に割り込みをかけるように動作可能なDMA割
り込み回路を有する直接メモリアクセス(DMA)制御
装置とを含む、前記データ処理装置。 - 【請求項21】 データ処理装置であって:中央処理装
置に接続されたプログラムメモリ回路内に格納されたソ
フトウェア命令を実行するように動作可能な中央処理装
置と;処理装置で処理されるべきデータを格納するよう
に動作可能なメモリ回路と;読み取りアドレス回路と書
き込みアドレス回路とを有し、メモリ回路との間で相互
にデータ転送を行うように動作可能で、更に中央処理装
置に割り込みをかけるように動作可能なDMA割り込み
回路を有する直接メモリアクセス(DMA)制御装置
と;アドレス生成回路を有し、データメモリ回路との間
で相互にデータ転送するためのアドレスを提供するよう
に動作可能な周辺装置と;そして第一データワードをデ
ータメモリ回路に対して周辺装置から周辺装置のアドレ
ス生成回路を用いて転送し、中央処理装置にDMA制御
装置のDMA割り込み回路を用いて割り込みをかけるよ
うに動作可能な補助チャンネル制御回路とを含む、前記
データ処理装置。 - 【請求項22】 データ処理装置であって:中央処理装
置に接続されたプログラムメモリ回路内に格納されたソ
フトウェア命令を実行するように動作可能な中央処理装
置と;処理装置で処理されるべきデータを格納するよう
に動作可能なメモリ回路と;読み取りアドレス回路と書
き込みアドレス回路とを有し、メモリ回路との間で相互
にデータ転送を行うように動作可能な直接メモリアクセ
ス(DMA)制御装置とを含み;ここでプログラム可能
読み取りアドレス回路が後続のアドレスを第一アドレス
をプログラム可能な量だけ増数更新または減数更新する
ことで形成するように動作可能な、前記データ処理装
置。 - 【請求項23】 請求項22記載のデータ処理装置に於
いて、プログラム可能な量がフレーム内での転送用の第
一値と、フレームの最終転送用の第二値とを有する、前
記データ処理装置。 - 【請求項24】 請求項22記載のデータ処理装置が更
に:固定のスプリット宛先アドレスを保持し、CPUで
実行される選択された命令によってロードされるように
動作可能な回路と;固定スプリット発信元アドレスを保
持し、CPUで実行される選択された命令によってロー
ドされるように動作可能な回路と;スプリットチャンネ
ルデータ転送を実行し、第一データストリームを第一の
複数のデータワードを、読み取りアドレス回路の増数更
新または減数更新に応答して読み取ることで、また第一
の複数のデータワードを同一スプリット宛先アドレスに
書き込むことで転送するように動作可能な回路とを含
み;そしてここでスプリットチャンネルデータ転送を実
行するための回路が更に、第二データストリームを第二
の複数のデータワードを同一の固定スプリット発信元ア
ドレスから読み取ることで、また第二の複数のデータワ
ードを書き込みアドレス回路の増数更新または減数更新
に応答して書き込むことで同時に転送するように動作可
能な、前記データ処理装置。 - 【請求項25】 請求項22記載のデータ処理装置が更
に、読み取りアドレス回路に応答して受信された複数の
データワードを受信するようにデータバスに接続され、
複数のデータワードの一部をその複数のデータワードの
一部が書き込みアドレス回路に応答して書き込まれるま
で保持するように動作可能なFIFOバッファを含む、
前記データ処理装置。 - 【請求項26】 請求項25記載のデータ処理装置が更
に複数のDMAチャンネルを含み、ここで各々のDMA
チャンネルが関連するプログラム可能読み取りアドレス
回路とプログラム可能書き込みアドレス回路とを有し、
各々のDMAチャンネルがデータメモリ回路との間で相
互にデータを転送するように動作可能であり;そしてこ
こでFIFOバッファが複数のDMAチャンネルの任意
の1つと選択的に関連づけられる事が出来る、前記デー
タ処理装置。 - 【請求項27】 データ処理装置であって:中央処理装
置に接続されたプログラムメモリ回路内に格納されたソ
フトウェア命令を実行するように動作可能な中央処理装
置と;処理装置で処理されるべきデータを格納するよう
に動作可能なメモリ回路と;プログラム可能読み取りア
ドレス回路とプログラム可能書き込みアドレス回路とを
有し、データメモリ回路との間で相互にデータのフレー
ム転送を行うように動作可能な直接メモリアクセス(D
MA)制御装置と、ここでデータのフレームは連続形式
でデータメモリ回路との間で相互に転送される複数のデ
ータワードを含む更ものであり;DMA制御装置に接続
され、CPUで実行される選択された命令でロードされ
るように動作可能な、フレーム同期事象を選択するため
の回路とを含み;そしてここで、DMA制御回路が更
に、選択されたフレーム同期事象が発生した後にのみデ
ータの第一フレームの転送を開始できるように動作可能
である、前記データ処理装置。 - 【請求項28】 データ処理装置であって:中央処理装
置に接続されたプログラムメモリ回路内に格納されたソ
フトウェア命令を実行するように動作可能な中央処理装
置と;処理装置で処理されるべきデータを格納するよう
に動作可能なメモリ回路と;プログラム可能読み取りア
ドレス回路とプログラム可能書き込みアドレス回路とを
有し、データメモリ回路との間で相互にデータの転送を
行うように動作可能な直接メモリアクセス(DMA)制
御装置とを含み;そしてここでDMA制御装置が更に:
読み取りアドレス回路に接続された発信元アドレスレジ
スタと書き込みアドレス回路に接続された宛先アドレス
レジスタとを含み、CPUで実行される選択された命令
でロードされるように動作可能な複数の制御レジスタ
と;それぞれ複数の制御レジスタの一部に関連づけら
れ、CPUで実行される選択された命令によって初期化
データをロードされるように動作可能な、複数の再ロー
ドレジスタと;そして初期化データを複数の再ロードレ
ジスタから複数の制御レジスタのそれぞれに接続された
部分に転送することにより、制御レジスタを初期化する
ように動作可能な自動初期化回路とを含む、前記データ
処理装置。 - 【請求項29】 請求項28記載のデータ処理装置が更
に:DMA制御装置回路に接続され、CPUで実行され
る選択された命令で制御データをロードされるように動
作可能な複数のグローバル制御レジスタを含み;そして
ここで、複数のグローバル制御レジスタの同じ1つが発
信元再ロードレジスタとして選択出来て、第一DMA転
送動作中の発信元アドレスレジスタに関連づけられ、そ
してその後宛先再ロードレジスタとして選択されて、第
二DMA転送動作中の宛先アドレスレジスタと関連づけ
られる、前記データ処理装置。 - 【請求項30】 データ処理装置であって:中央処理装
置に接続されたプログラムメモリ回路内に格納されたソ
フトウェア命令を実行するように動作可能な中央処理装
置と;処理装置で処理されるべきデータを格納するよう
に動作可能なメモリ回路と;プログラム可能読み取りア
ドレス回路とプログラム可能書き込みアドレス回路とを
有し、データメモリ回路との間で相互にデータの転送を
行うように動作可能な直接メモリアクセス(DMA)制
御装置と;DMA制御装置回路に接続され、DMA制御
装置回路の状態を外部装置に表示するように動作可能な
出力状態ピンと;DMA制御装置回路に接続され、CP
Uで実行される選択された命令で状態ピン制御データを
ロードされるように動作可能な制御レジスタとを含み;
そしてここで、DMA制御回路は第一状態信号を複数の
状態信号の中から選択された出力状態ピンに、状態ピン
制御データに応答して提供するように動作可能である、
前記データ処理装置。 - 【請求項31】 データ処理装置であって:中央処理装
置に接続されたプログラムメモリ回路内に格納されたソ
フトウェア命令を実行するように動作可能な中央処理装
置と;処理装置で処理されるべきデータを格納するよう
に動作可能なメモリ回路と;読み取りアドレス回路と書
き込みアドレス回路とを有し、データメモリ回路との間
で相互にデータのフレーム転送を行うように動作可能な
直接メモリアクセス(DMA)制御装置と、ここでデー
タのフレームは連続形式でデータメモリ回路との間で相
互に転送される複数のデータワードを含む更ものであ
り、DMA制御装置は更に中央処理装置に割り込みをか
けるように動作可能なDMA割り込み回路を有し;ここ
でプログラム可能読み取りアドレス回路は第一アドレス
をプログラム可能な量だけ増数更新また減数更新するこ
とによって後続のアドレスを形成するように動作し、こ
こでプログラム可能な量はフレーム内での転送用の第一
値とフレームの最後の転送用の第二値とを有し;固定の
スプリット宛先アドレスを保持し、CPUで実行される
選択された命令によってロードされるように動作可能な
回路と;固定スプリット発信元アドレスを保持し、CP
Uで実行される選択された命令によってロードされるよ
うに動作可能な回路と;スプリットチャンネルデータ転
送を実行し、第一データストリームを第一の複数のデー
タワードを、読み取りアドレス回路の増数更新または減
数更新に応答して読み取ることで、また第一の複数のデ
ータワードを同一スプリット宛先アドレスに書き込むこ
とで転送するように動作可能な回路と;ここでスプリッ
トチャンネルデータ転送を実行するための回路が更に、
第二データストリームを第二の複数のデータワードを同
一の固定スプリット発信元アドレスから読み取ること
で、また第二の複数のデータワードを書き込みアドレス
回路の増数更新または減数更新に応答して書き込むこと
で同時に転送するように動作可能であり;読み取りアド
レス回路に応答して受信された複数のデータワードを受
信するようにデータバスに接続され、複数のデータワー
ドの一部をその複数のデータワードの一部が書き込みア
ドレス回路に応答して書き込まれるまで保持するように
動作可能なFIFOバッファと;DMA制御装置に接続
され、CPUで実行される選択された命令でロードされ
るように動作可能な、フレーム同期事象を選択するため
の回路とを含み、ここでDMA制御回路が更に、選択さ
れたフレーム同期事象が発生した後にのみデータの第一
フレームの転送を開始できるように動作可能であり;読
み取りアドレス回路に接続された発信元アドレスレジス
タと書き込みアドレス回路に接続された宛先アドレスレ
ジスタとを含み、CPUで実行される選択された命令で
ロードされるように動作可能な複数の制御レジスタと;
それぞれ複数の制御レジスタの一部に関連づけられ、C
PUで実行される選択された命令によって初期化データ
をロードされるように動作可能な、複数の再ロードレジ
スタと;初期化データを複数の再ロードレジスタから複
数の制御レジスタのそれぞれに接続された部分に転送す
ることにより、制御レジスタを初期化するように動作可
能な自動初期化回路と;DMA制御装置回路に接続さ
れ、DMA制御装置回路の状態を外部装置に表示するよ
うに動作可能な出力状態ピンと;ここで、DMA制御装
置回路に接続された複数の制御レジスタの1つは、CP
Uで実行される選択された命令で状態ピン制御データを
ロードされるように動作可能であり;ここでDMA制御
回路は第一状態信号を複数の状態信号の中から選択され
た出力状態ピンに、状態ピン制御データに応答して提供
するように動作可能であり;アドレス生成回路を有し、
データメモリ回路との間で相互にデータ転送するための
アドレスを提供するように動作可能な周辺装置と;そし
て第一データワードをデータメモリ回路に対して周辺装
置から周辺装置のアドレス生成回路を用いて転送し、中
央処理装置にDMA制御装置のDMA割り込み回路を用
いて割り込みをかけるように動作可能な補助チャンネル
制御回路とを含む、前記データ処理装置。 - 【請求項32】 データ処理装置であって:第一の数の
割り込み端子を有し、命令を実行するための中央処理装
置(CPU)と;CPUに接続され、CPUで実行され
る複数の命令を格納するためのメモリ回路と;そしてそ
の数が第一の数の割り込み端子よりも多い、複数の割り
込み要求入力と;そして複数の割り込み要求信号を受信
するために複数の割り込み要求入力に接続され、割り込
み端子に接続された複数の出力を有し、複数の割り込み
要求信号の部分集合を選択し、選択された部分集合を割
り込み端子に接続するように動作可能な割り込み選択器
とを有する、前記データ処理装置。 - 【請求項33】 請求項32記載のデータ処理装置が更
に:割り込み選択器に接続され、複数の写像フィールド
を有する写像ワードをCPUから、CPUで実行される
選択された命令に応答して受信するように動作し、ここ
で複数の写像フィールドの各々は割り込み端子の異なる
1つと関連づけられている、割り込みマルチプレクサレ
ジスタを含み;そしてここで割り込み選択器が選択され
た割り込み要求を、複数の写像フィールドの各々で選択
された割り込み要求信号から、関連する割り込み端子の
異なる1つに写像するように動作可能である、前記デー
タ処理装置。 - 【請求項34】 請求項33記載のデータ処理装置が更
に:割り込み選択器に接続され、複数の極性ビットを有
する極性ワードをCPUから、CPUで実行される選択
された命令に応答して受信するように動作し、ここで複
数の極性ビットの各々は複数の割り込み要求入力の異な
る1つと関連づけられている、割り込み極性レジスタを
含み;そしてここで割り込み選択器は更に、複数の割り
込み要求信号の各々の部分の有効極性を、複数の極性ビ
ットの関連する1つに応答して選択するように動作可能
である、前記データ処理装置。
Applications Claiming Priority (14)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US053076 | 1993-04-26 | ||
| US5191197P | 1997-07-08 | 1997-07-08 | |
| US5307697P | 1997-07-09 | 1997-07-09 | |
| US5207397P | 1997-07-09 | 1997-07-09 | |
| US5308197P | 1997-07-09 | 1997-07-09 | |
| US5482898A | 1998-04-03 | 1998-04-03 | |
| US09/055,011 US6167466A (en) | 1997-07-09 | 1998-04-03 | Multi-channel serial port with programmable features |
| US055011 | 1998-04-03 | ||
| US054828 | 1998-04-03 | ||
| US09/054,833 US6145027A (en) | 1997-07-09 | 1998-04-03 | DMA controller with split channel transfer capability and FIFO buffering allowing transmit channel to get ahead of corresponding receive channel by preselected number of elements |
| US052073 | 1998-04-03 | ||
| US053081 | 1998-04-03 | ||
| US051911 | 1998-04-03 | ||
| US054833 | 1998-04-03 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH11167547A true JPH11167547A (ja) | 1999-06-22 |
| JP4285803B2 JP4285803B2 (ja) | 2009-06-24 |
Family
ID=27568060
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP22849198A Expired - Lifetime JP4285803B2 (ja) | 1997-07-08 | 1998-07-08 | 周辺装置と外部インタフェースとを具備したディジタル信号処理装置 |
Country Status (3)
| Country | Link |
|---|---|
| EP (1) | EP0901081B1 (ja) |
| JP (1) | JP4285803B2 (ja) |
| DE (1) | DE69841596D1 (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN104050145A (zh) * | 2013-03-15 | 2014-09-17 | 希捷科技有限公司 | 集成式的系统与存储介质控制器 |
Families Citing this family (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7089344B1 (en) | 2000-06-09 | 2006-08-08 | Motorola, Inc. | Integrated processor platform supporting wireless handheld multi-media devices |
| EP1193607B1 (en) * | 2000-09-27 | 2005-03-30 | Texas Instruments Incorporated | Apparatus and method for the exchange of signal groups between a plurality of components in a digital signal processor having a direct memory access controller |
| DE60103221T2 (de) * | 2000-09-27 | 2005-05-04 | Texas Instruments Inc., Dallas | Gerät und Verfahren zur Signalgruppenübertragung zwischen digitalen Signalprozessoren in einer digitalen Signalverarbeitungseinheit |
| EP1333380A1 (en) * | 2002-01-30 | 2003-08-06 | STMicroelectronics Limited | DMA access generator |
| US20060090016A1 (en) * | 2004-10-27 | 2006-04-27 | Edirisooriya Samantha J | Mechanism to pull data into a processor cache |
| DE102017008186B4 (de) * | 2017-08-31 | 2022-12-15 | WAGO Verwaltungsgesellschaft mit beschränkter Haftung | Master eines Bussystems |
| CN109902042B (zh) * | 2019-01-30 | 2023-07-25 | 湖北三江航天红峰控制有限公司 | 一种实现dsp与zynq之间高速数据传输的方法及系统 |
| CN111078614B (zh) * | 2019-12-19 | 2023-05-09 | 成都理工大学工程技术学院 | 一种基于fpga的功能模块 |
| CN113760813B (zh) * | 2021-08-30 | 2024-05-24 | 凯迈(洛阳)电子有限公司 | 一种数字信号处理器启动控制的方法 |
| CN116909474B (zh) * | 2022-04-12 | 2024-07-02 | 荣耀终端有限公司 | 器件识别方法和相关装置 |
| CN115033519B (zh) * | 2022-06-30 | 2023-07-25 | 中国科学院长春光学精密机械与物理研究所 | 长时间工作的探测器spi寄存器的预防打翻方法 |
| CN119807091A (zh) * | 2024-12-20 | 2025-04-11 | 浙江大学 | 基于fpga的动态内存管理系统 |
Family Cites Families (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS63118856A (ja) * | 1986-11-06 | 1988-05-23 | Nec Corp | シリアル・バス・インタフエ−ス回路 |
| US4780814A (en) * | 1987-02-09 | 1988-10-25 | Intel Corporation | Global serial channel for microcontroller |
| JPH07129486A (ja) * | 1993-10-29 | 1995-05-19 | Mitsubishi Electric Corp | シリアル通信回路 |
-
1998
- 1998-07-08 EP EP19980305453 patent/EP0901081B1/en not_active Expired - Lifetime
- 1998-07-08 JP JP22849198A patent/JP4285803B2/ja not_active Expired - Lifetime
- 1998-07-08 DE DE69841596T patent/DE69841596D1/de not_active Expired - Lifetime
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN104050145A (zh) * | 2013-03-15 | 2014-09-17 | 希捷科技有限公司 | 集成式的系统与存储介质控制器 |
| JP2014182863A (ja) * | 2013-03-15 | 2014-09-29 | Seagate Technology Llc | 集積回路および記憶デバイス |
| US10031864B2 (en) | 2013-03-15 | 2018-07-24 | Seagate Technology Llc | Integrated circuit |
Also Published As
| Publication number | Publication date |
|---|---|
| EP0901081A3 (en) | 2000-05-17 |
| EP0901081B1 (en) | 2010-04-07 |
| JP4285803B2 (ja) | 2009-06-24 |
| EP0901081A2 (en) | 1999-03-10 |
| DE69841596D1 (de) | 2010-05-20 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6145027A (en) | DMA controller with split channel transfer capability and FIFO buffering allowing transmit channel to get ahead of corresponding receive channel by preselected number of elements | |
| US6167466A (en) | Multi-channel serial port with programmable features | |
| US5642489A (en) | Bridge between two buses of a computer system with a direct memory access controller with accessible registers to support power management | |
| EP1059589B1 (en) | Multi-channel DMA with scheduled ports | |
| US6480929B1 (en) | Pseudo-concurrency between a volatile memory and a non-volatile memory on a same data bus | |
| US6202106B1 (en) | Method for providing specific knowledge of a structure of parameter blocks to an intelligent direct memory access controller | |
| US5510740A (en) | Method for synchronizing clocks upon reset | |
| EP0700003B1 (en) | Data processor with controlled burst memory accesses and method therefor | |
| JP4285803B2 (ja) | 周辺装置と外部インタフェースとを具備したディジタル信号処理装置 | |
| US6415348B1 (en) | Flexible microcontroller architecture | |
| EP0646873A2 (en) | Single-chip microcomputer | |
| KR100344132B1 (ko) | 컴퓨터 메모리 인터페이스용 장치와, 휴대용 이동 컴퓨터와 그 컴퓨터에서의 프로그램 명령 페치 및 데이타 기록/판독 요청 수행 방법 | |
| JP2003502728A (ja) | プロセッサおよびコプロセッサを含むコンピュータ・システム | |
| JP2004503855A (ja) | 無線携帯マルチメディア装置をサポートする統合型プロセッサプラットフォーム | |
| WO1997015001A2 (en) | Risc microprocessor architecture | |
| EP1388066A1 (en) | Systems and methods using a system-on-a-chip with soft cache | |
| WO2006026428A1 (en) | Method and apparatus for transmitting memory pre-fetch commands on a bus | |
| US6892266B2 (en) | Multicore DSP device having coupled subsystem memory buses for global DMA access | |
| WO2002079971A1 (en) | Programmable cpu/interface buffer structure using dual port ram | |
| KR20030029030A (ko) | 메모리 제어 방법, 그 제어 방법을 이용한 메모리 제어회로 및 그 메모리 제어 회로를 탑재하는 집적 회로 장치 | |
| JP3113916B2 (ja) | 第1および第2のアドレスカウンタを含む装置 | |
| US6157971A (en) | Source-destination re-timed cooperative communication bus | |
| US6954869B2 (en) | Methods and apparatus for clock domain conversion in digital processing systems | |
| US20080016289A1 (en) | External memory interface engine | |
| US4974157A (en) | Data processing system |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050708 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080801 |
|
| A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20081104 |
|
| A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20081107 |
|
| A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20081128 |
|
| A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20081203 |
|
| A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20081224 |
|
| A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20090105 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090202 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20090224 |
|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090324 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120403 Year of fee payment: 3 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130403 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140403 Year of fee payment: 5 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| EXPY | Cancellation because of completion of term |