第 9 章 Timer 69
22.11 DPM (Dual Port Memory)
22.11.1 Event Output
図22.9にイベントリンク出力用DPMの構成を示す.Event out control register(図22.10参照)に対して,開始 アドレスFrom Addr (byte addressではなくword address)と終了アドレスTo Addr (word address)を設定すること により,複数パケットを一度に送信できる.From AddrとTo Addrは人間に分かりやすいようにこのような名前を付 けられているが,実際には全く同じ機能のレジスタが二つ用意されている.From Addr, To Addr共に,設定された word address−1のアドレスにDPMのプロセッサバス側からデータが書かれた瞬間に,DPMからLink0に対して 出力を開始する.
例えば,Mode0を使用し,From Addrを0x00に設定しTo Addrを0x07 (byte address: 0x1c)に設定したとする.
プロセッサバス側からDMACもしくはプロセッサによってPayload0, Payload1の順にDPMにデータが書かれたと すると,DPMのプロセッサ側から0x06番地にデータが書かれた瞬間にDPMからResponsive LinkのLink0に出力 を開始する.(この場合,実際にはFrom Addrには意味がない.)
171
第22章 Responsive Link
あるいは,Mode0を使用し,From Addrを0x1f(byte address 0x3c)に設定しTo Addrを0x2f(byte address: 0x7c) に設定し,さらにDMACをcontinuous modeで使用すると,Payload0〜3の領域とPayload4〜7の領域を使用して,
主記憶等に用意したDPMよりも大きな連続データをハードウェアのみで自動送信することができる.(DPMのアドレ スデコードの範囲内では,シャドウアドレスでもCSが生成されDPMにアクセスできるように設計しているため.)
Mode0 Mode1
Source Addr. Destination Addr.
Payload 0
Control & Status
Source Addr. Destination Addr.
Payload 1
Control & Status
Source Addr. Destination Addr.
Payload 2
Control & Status
Source Addr. Destination Addr.
Payload 4
Control & Status
Source Addr. Destination Addr.
Payload 5
Control & Status
Payload 0 Payload 1 Payload 2
0xC400_00XX
0x00
0x10
0x20
0x00
0x08
0x10
0x60 Source Addr. Destination Addr.
Payload 3
Control & Status
Source Addr. Destination Addr.
Payload 6
Control & Status
Source Addr. Destination Addr.
Payload 7
Control & Status 0x30
0x40
0x50
0x60
0x70
Payload 3 Payload 4 Payload 5
0x18
0x20
0x28
Payload 6 Payload 7
0x30
0x38
0x40
0x48
0x50
0x58
0x68
0x70
0x78
Payload 8 Payload 9 Payload 10 Payload 11 Payload 12 Payload 13 Payload 14
Source Addr. Destination Addr.
Control & Status
図 22.9: DPM for Event Output
173
第22章 Responsive Link
Control Register for Event Output
offset address 0xFFFE_F40X
From Addr. To Addr.
DMA Counter Current Packet Number
mode dreq int
0x0 0x4 0x8
図22.10: Event Out Control Register
DPM制御レジスタ
DPMの制御レジスタ(図22.10参照)に以下を設定することで,送信の制御を行う.
制御レジスタ (r/w)
• Mode0: mode bitに0を設定.すべてのパケットにheadrとtrailerを付加する.
• Mode1: mode bitに1を設定.最後に共通のheaderとtrailerを付加する(すべてのパケットの宛先が同一 となる).
• Int: 本ビットを1に設定すると,終了時にEOP(End Of Packet)割り込みを生成する.
• Dreq: 本ビットを1に設定すると,DMA Counterに設定した回数分だけDMAを行う.
• From Addr: 設定されたword address −1のアドレスにDPMのプロセッサバス側からデータが書かれた
瞬間にDPMからLink0に対して出力を開始する.
• To Addr: 設定されたword address−1のアドレスにDPM のプロセッサバス側からデータが書かれた瞬 間にDPMからLink0に対して出力を開始する.
DMA Counter (r/w) DMAの回数を指定する
Current Packet Number (r)現在送信されているパケット番号(図22.9のpayload番号に相当)を示す