JPS6019269A - 高速デ−タ転送方式 - Google Patents
高速デ−タ転送方式Info
- Publication number
- JPS6019269A JPS6019269A JP58127209A JP12720983A JPS6019269A JP S6019269 A JPS6019269 A JP S6019269A JP 58127209 A JP58127209 A JP 58127209A JP 12720983 A JP12720983 A JP 12720983A JP S6019269 A JPS6019269 A JP S6019269A
- Authority
- JP
- Japan
- Prior art keywords
- dma
- bus
- data transfer
- control circuit
- transfer
- 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; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔発明の属する技術分野〕
本発明は高速データ転送方式に関し、特にl)MA(D
irect Memory Access) 方式の高
速データ転送方式に関する。
irect Memory Access) 方式の高
速データ転送方式に関する。
従来D M A方式のデータ転送方式を個別部品で構成
した場合には個々の応用に応じた構成が自由にとれる反
面、実装面積等が大きくなったり、回路が複雑になって
しまう。これに対して果状回路技術を用いたLSI i
使う場合には回路の複A’(m化や実装面積が大きくな
るといった個別部品による構成の欠点はなくなるが、回
路構成が固定されてしまい、高速ディスク装置等への応
用が困難であった。
した場合には個々の応用に応じた構成が自由にとれる反
面、実装面積等が大きくなったり、回路が複雑になって
しまう。これに対して果状回路技術を用いたLSI i
使う場合には回路の複A’(m化や実装面積が大きくな
るといった個別部品による構成の欠点はなくなるが、回
路構成が固定されてしまい、高速ディスク装置等への応
用が困難であった。
第1図は従来のDMA転送方式の一例のプロノり図であ
る。
る。
この例はDMA用L 8 I 7d−用いた方式の構成
例である。マイクロプロセッサ(以下MPUと記す)1
はバス2を介してプログラムROM3からプログラムを
読み、それに応じてDMA制御部4.制御回路67]l
−制御して1(、AM5との間でデータ転送を行なうも
のである。MPUIからのコマンドにより制御回路6が
動作音スタートしてデータ転送が必要になるとデータ転
送要求信号7全用いてDMA制御部4に要求?出す。D
MA制御部4はこの信号を受付けると直ちにバス要求信
号8によりMPUIにバスの使用ケ要求する。このとき
MPUIはバス2を介してプログラムの実行全行なって
いる為に直チニはバスを放すことができず、−回のバス
の使用全終了後にバスケ放して確認信号9によりDMA
制御部4にバスの使用全許可し、これによシDMA制御
部4は制御部6とデータRAM5の間でデータ転送全行
なう。データ転送が終了するとDMA制御部4は1li
lJ御回路6に対して転送終了信号11を出して終了音
知らせMPUIへのバス要求信号8を切る。制御回路6
は実行終了信号10によ#)MPUIに転送終了全知ら
せ、データ転送を終了する。
例である。マイクロプロセッサ(以下MPUと記す)1
はバス2を介してプログラムROM3からプログラムを
読み、それに応じてDMA制御部4.制御回路67]l
−制御して1(、AM5との間でデータ転送を行なうも
のである。MPUIからのコマンドにより制御回路6が
動作音スタートしてデータ転送が必要になるとデータ転
送要求信号7全用いてDMA制御部4に要求?出す。D
MA制御部4はこの信号を受付けると直ちにバス要求信
号8によりMPUIにバスの使用ケ要求する。このとき
MPUIはバス2を介してプログラムの実行全行なって
いる為に直チニはバスを放すことができず、−回のバス
の使用全終了後にバスケ放して確認信号9によりDMA
制御部4にバスの使用全許可し、これによシDMA制御
部4は制御部6とデータRAM5の間でデータ転送全行
なう。データ転送が終了するとDMA制御部4は1li
lJ御回路6に対して転送終了信号11を出して終了音
知らせMPUIへのバス要求信号8を切る。制御回路6
は実行終了信号10によ#)MPUIに転送終了全知ら
せ、データ転送を終了する。
このように、従来のデータ転送方式においては、データ
転送に入るとき、MPUIからDMA制御部4ヘバスが
移る際に時間が無駄になるためその分だけデータ転送に
時間がかかり高速転送ができないという欠点があった。
転送に入るとき、MPUIからDMA制御部4ヘバスが
移る際に時間が無駄になるためその分だけデータ転送に
時間がかかり高速転送ができないという欠点があった。
本発明の目的は、上記欠点を除去し、DMA用LSI
を用いたデータ転送方式においても高速転送が可能な高
速データ転送方式を提供することにある。
を用いたデータ転送方式においても高速転送が可能な高
速データ転送方式を提供することにある。
本発明の高速データ転送方式は、高速ディスク装置等を
制御する制御回路と、該制御回路とやりとりtするデー
タを記憶する書込み・読出し可能なRAMと、前記制御
回路と前記RAMとの間でのデータ転送音制御するため
のLSI で作られたDMA制御部と、前記制御回路と
前記RAMと前記DMA制御部を制御するマイクロプロ
セッサと、該マイクロプロセッサからの信号によりセッ
トされてバス?切離し必要なデニタの転送が終了した時
点で前記制針回路または前記DMA制御部から出される
実行終了信号にニジセットされるDMA要求フラグを備
える付加回路と、前記マイクロプロセッサが前記制御回
路及びDMA制御部に対してコマンドを発行後直ちにバ
ス要求信号を発生し前記DMA要求フラグをセットする
プログラム部分子含むマイクロプロセッサ実行プログラ
ムを記憶する■tOMと會含んで構成される。
制御する制御回路と、該制御回路とやりとりtするデー
タを記憶する書込み・読出し可能なRAMと、前記制御
回路と前記RAMとの間でのデータ転送音制御するため
のLSI で作られたDMA制御部と、前記制御回路と
前記RAMと前記DMA制御部を制御するマイクロプロ
セッサと、該マイクロプロセッサからの信号によりセッ
トされてバス?切離し必要なデニタの転送が終了した時
点で前記制針回路または前記DMA制御部から出される
実行終了信号にニジセットされるDMA要求フラグを備
える付加回路と、前記マイクロプロセッサが前記制御回
路及びDMA制御部に対してコマンドを発行後直ちにバ
ス要求信号を発生し前記DMA要求フラグをセットする
プログラム部分子含むマイクロプロセッサ実行プログラ
ムを記憶する■tOMと會含んで構成される。
次に本発明の実施例について図面を用いて説明する。
第2図は本発明の実施例のブロック図である。
この実施例は、高速ディスク装置環音制御する制御回路
6と、この制御回路6とやりとpヶするデータ金記憶す
る書込み・読出し可能なRA M 5と、制御回路6と
l(AM5との間でのデータ転送を制御するためのLS
I で作られたDMA制御部4と、制御回路6と几AM
5とDMA制御部4 全制御するマイクロプロセッサ1
と、このマイクロプロセッサ1からのDMA要求フラグ
セント信号13によりセットされてバス會切離し、必要
なデータの転送が終了した時点で制御回路6から出され
る実行終了信号10によりリセットされるDMA要求フ
ラグ14t−備える付加回路12と、マイクロプロセッ
サ1が制御回路6及びDMA制御部4に対してコマンド
七発行後直ちにバス要求信号8′を発生しDMA要求フ
ラグ14tl−セットするプログラム部分子含むマイク
ロプロセッサ実行プログラムを記憶するプログラムRO
M3とを含んで構成される。
6と、この制御回路6とやりとpヶするデータ金記憶す
る書込み・読出し可能なRA M 5と、制御回路6と
l(AM5との間でのデータ転送を制御するためのLS
I で作られたDMA制御部4と、制御回路6と几AM
5とDMA制御部4 全制御するマイクロプロセッサ1
と、このマイクロプロセッサ1からのDMA要求フラグ
セント信号13によりセットされてバス會切離し、必要
なデータの転送が終了した時点で制御回路6から出され
る実行終了信号10によりリセットされるDMA要求フ
ラグ14t−備える付加回路12と、マイクロプロセッ
サ1が制御回路6及びDMA制御部4に対してコマンド
七発行後直ちにバス要求信号8′を発生しDMA要求フ
ラグ14tl−セットするプログラム部分子含むマイク
ロプロセッサ実行プログラムを記憶するプログラムRO
M3とを含んで構成される。
即ち、この発明ではマイクロプロセッサ1と1)MA制
御部4との間に本発明による付加回路12が置かれてお
シ、マイクロプロセッサ1はI)MA要求フラグ14を
セットできるようになっている。
御部4との間に本発明による付加回路12が置かれてお
シ、マイクロプロセッサ1はI)MA要求フラグ14を
セットできるようになっている。
次に、この実施例の動作について説明する。
MPU(マイクロプロセッサ)■はDMA制御部4及び
制御回路6に対してコマンド全セットした後MPU1か
らのDMA要求フラグセット信号13によシDMA要求
フラグ14′(Il−セットしMPU 自身に対するバ
ス要求信号8′七発生し、バスの使用終了後バス音数す
。この状態で制御回路6がデータ転送要求信号7により
DMA制御部4にデータ転送を要求し、これに応じてD
MA制御部4がバス要求信号8忙出力すると、MPUI
はすでにくくス音数している為に直ちに確認信号9′が
戻されてきてl)MA制御部4は制御回路6とRAM5
の間でデータ転送を行なう。データ転送が終了して制御
回路6から実行終了信号10が出力されるとDMA要求
フラグ14がリセットされてMPUIに対するバス要求
信号8′が切れMPUIは動作?再開する。
制御回路6に対してコマンド全セットした後MPU1か
らのDMA要求フラグセット信号13によシDMA要求
フラグ14′(Il−セットしMPU 自身に対するバ
ス要求信号8′七発生し、バスの使用終了後バス音数す
。この状態で制御回路6がデータ転送要求信号7により
DMA制御部4にデータ転送を要求し、これに応じてD
MA制御部4がバス要求信号8忙出力すると、MPUI
はすでにくくス音数している為に直ちに確認信号9′が
戻されてきてl)MA制御部4は制御回路6とRAM5
の間でデータ転送を行なう。データ転送が終了して制御
回路6から実行終了信号10が出力されるとDMA要求
フラグ14がリセットされてMPUIに対するバス要求
信号8′が切れMPUIは動作?再開する。
この様に本発明による付加回路12を用いることで従来
の構成で問題であったバスの受渡しに伴なう時間の無駄
會なくすことができ、高速なデータ転送に対応すること
ができる。なおりMA要求フラグ14は初期化信号15
11′il:より予めリセットされている。
の構成で問題であったバスの受渡しに伴なう時間の無駄
會なくすことができ、高速なデータ転送に対応すること
ができる。なおりMA要求フラグ14は初期化信号15
11′il:より予めリセットされている。
第3図に本発明と従来の転送方式における転送のタイム
チャートを示す。第3図に2いてデータ転送要求20は
一定時間毎に発生する。これに対して従来の方式ではD
MA制御部での遅れ21及びMPUからのバス受は渡し
による遅れ22の後で実際のデータ転送23が行なわれ
一回のデータ転送24はデータ転送要求20の時間をオ
ーバーするが本発明による転送方式を用いた場合にはバ
ス受は渡しによる遅れ22がなくなる為に一回のデータ
転送25はデータ転送要求20以内に終了することがで
きる。また、DMA要求フラグ14をセットしなければ
従来通りの転送も可能となる。
チャートを示す。第3図に2いてデータ転送要求20は
一定時間毎に発生する。これに対して従来の方式ではD
MA制御部での遅れ21及びMPUからのバス受は渡し
による遅れ22の後で実際のデータ転送23が行なわれ
一回のデータ転送24はデータ転送要求20の時間をオ
ーバーするが本発明による転送方式を用いた場合にはバ
ス受は渡しによる遅れ22がなくなる為に一回のデータ
転送25はデータ転送要求20以内に終了することがで
きる。また、DMA要求フラグ14をセットしなければ
従来通りの転送も可能となる。
以上詳細に説明したように、本発明は、マイクロプロセ
ッサが制御回路及びDMA制御部に対してコマンドtS
行後直ちにマイクロプロセッサ自身がバスの切離し全要
求するフラグをセットすることによって、DMA jt
+1llf1部がマイクロプロセッサに対してバスの切
離しを要求する前にバス全切離して2さ、DMA制御部
からのバスの切離し要求があった時には直ちにl)MA
制(至)部がバス七使用できるようにしたのでDMA要
求時の待ち時間音なく丁ことができ、高速にデータ転送
全行うことができるとめう効果を有する。
ッサが制御回路及びDMA制御部に対してコマンドtS
行後直ちにマイクロプロセッサ自身がバスの切離し全要
求するフラグをセットすることによって、DMA jt
+1llf1部がマイクロプロセッサに対してバスの切
離しを要求する前にバス全切離して2さ、DMA制御部
からのバスの切離し要求があった時には直ちにl)MA
制(至)部がバス七使用できるようにしたのでDMA要
求時の待ち時間音なく丁ことができ、高速にデータ転送
全行うことができるとめう効果を有する。
第1図は従来のDMA転送方式の一例のブロック図、第
2因は本発明の一実施例のブロック図、第3図は本発明
及び従来のデータ転送方式に2ける転送のタイム・チャ
ートでるる。 1・−・・−・マイクロプロセッサ(MPU)、2・・
・・・・バス、3・・・・・・プログラムFLoM、4
・・・、・・DMA制御部、5・・・・・・RAM、6
・・・・・・1ム1]御回路57・、・・・・データ転
送要求信号、8・・・・−・バス要求信号、9・・・・
・・バス要求確認信号、10・・・・・・実行終了信号
、11・・・・・・転送終了イ=号、12・・・・−・
付加回路、13・・・・・DλfA要求7ラグセソト信
号、14・・・・・・DMA 請求フラグ、15・・・
・・・初期化13号、20・・・・・・データ転送要求
、21・・・・・・l)MA制御部での遅れ、22・−
・・・・バス受渡しによる遅れ、23・・・・・・実際
のデータ転送時間、24・・・・・・従来方式でのデー
タ転送時間、25・・・・・・本発明でのデータ転送時
間。 第2図 第3図
2因は本発明の一実施例のブロック図、第3図は本発明
及び従来のデータ転送方式に2ける転送のタイム・チャ
ートでるる。 1・−・・−・マイクロプロセッサ(MPU)、2・・
・・・・バス、3・・・・・・プログラムFLoM、4
・・・、・・DMA制御部、5・・・・・・RAM、6
・・・・・・1ム1]御回路57・、・・・・データ転
送要求信号、8・・・・−・バス要求信号、9・・・・
・・バス要求確認信号、10・・・・・・実行終了信号
、11・・・・・・転送終了イ=号、12・・・・−・
付加回路、13・・・・・DλfA要求7ラグセソト信
号、14・・・・・・DMA 請求フラグ、15・・・
・・・初期化13号、20・・・・・・データ転送要求
、21・・・・・・l)MA制御部での遅れ、22・−
・・・・バス受渡しによる遅れ、23・・・・・・実際
のデータ転送時間、24・・・・・・従来方式でのデー
タ転送時間、25・・・・・・本発明でのデータ転送時
間。 第2図 第3図
Claims (1)
- 高速ディスク装置等を制御する制御回路と、該制御回路
とやりとり會するデータ全記憶する書込み・読出し可能
なRAMと、前記制御回路と前記RAMとの間でのデー
タ転送全制御するためのLSI で作られたDMA制御
部と、前記制御回路とAil記RA、Mと前記DMA
1tiIJ御部全制御するマイクロプロセッサと、該マ
イクロプロセッサからの信号によりセントされてバス全
切離し必要なデータの転送が終了した時点で前記制御回
路または前記DMA制御部から出される芙行終了信号に
ニジリセットされる請求フック會備える付加回路と%
Ail記マイクロプロセッサが前記制御回路及びI)M
A制御部に対してコマンドを発行後直ちにバス要求信号
を発生し前記DMA要求フラグ會セットするプログラム
部分を含むマイクロプロセッサ実行プログラム部分憶す
るROMと奮含むことを特徴とする高速データ転送方式
。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP58127209A JPS6019269A (ja) | 1983-07-13 | 1983-07-13 | 高速デ−タ転送方式 |
US06/630,787 US4729090A (en) | 1983-07-13 | 1984-07-13 | DMA system employing plural bus request and grant signals for improving bus data transfer speed |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP58127209A JPS6019269A (ja) | 1983-07-13 | 1983-07-13 | 高速デ−タ転送方式 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS6019269A true JPS6019269A (ja) | 1985-01-31 |
JPH0133861B2 JPH0133861B2 (ja) | 1989-07-17 |
Family
ID=14954419
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP58127209A Granted JPS6019269A (ja) | 1983-07-13 | 1983-07-13 | 高速デ−タ転送方式 |
Country Status (2)
Country | Link |
---|---|
US (1) | US4729090A (ja) |
JP (1) | JPS6019269A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62103749A (ja) * | 1985-07-05 | 1987-05-14 | Nec Corp | Dmaコントロ−ラ |
JPH02277155A (ja) * | 1989-04-19 | 1990-11-13 | Pfu Ltd | バス管理装置 |
JPH0330045A (ja) * | 1989-06-19 | 1991-02-08 | Internatl Business Mach Corp <Ibm> | マイクロプロセツサ用論理回路 |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62226257A (ja) * | 1986-03-27 | 1987-10-05 | Toshiba Corp | 演算処理装置 |
DE69033434T2 (de) * | 1989-07-31 | 2000-08-03 | Hitachi Ltd | Datenverarbeitungssystem und Datenübertragungs- und -verarbeitungsverfahren |
EP0454605A3 (en) * | 1990-04-25 | 1992-04-22 | International Business Machines Corporation | Bus request device in a direct memory access (dma) system |
US5136582A (en) * | 1990-05-29 | 1992-08-04 | Advanced Micro Devices, Inc. | Memory management system and method for network controller |
US5301282A (en) * | 1991-10-15 | 1994-04-05 | International Business Machines Corp. | Controlling bus allocation using arbitration hold |
JPH05165762A (ja) * | 1991-12-13 | 1993-07-02 | Toshiba Corp | Dmaコントローラ |
DE4213593A1 (de) * | 1992-04-24 | 1993-10-28 | Sel Alcatel Ag | Verfahren und Vorrichtung zur Übertragung von Datenpaketen |
US5469547A (en) * | 1992-07-17 | 1995-11-21 | Digital Equipment Corporation | Asynchronous bus interface for generating individual handshake signal for each data transfer based on associated propagation delay within a transaction |
JP3448689B2 (ja) * | 1993-02-22 | 2003-09-22 | 株式会社日立製作所 | Io制御方法および情報処理装置 |
US5752081A (en) * | 1995-06-08 | 1998-05-12 | Vlsi Technology, Inc. | Signalling system and method for allowing a direct memory access (DMA) input/output (I/O) device on the peripheral component interconnect (PCI) bus to perform DMA transfers |
US6006303A (en) * | 1997-08-28 | 1999-12-21 | Oki Electric Industry Co., Inc. | Priority encoding and decoding for memory architecture |
US6081860A (en) * | 1997-11-20 | 2000-06-27 | International Business Machines Corporation | Address pipelining for data transfers |
US20050038946A1 (en) * | 2003-08-12 | 2005-02-17 | Tadpole Computer, Inc. | System and method using a high speed interface in a system having co-processors |
US7213084B2 (en) * | 2003-10-10 | 2007-05-01 | International Business Machines Corporation | System and method for allocating memory allocation bandwidth by assigning fixed priority of access to DMA machines and programmable priority to processing unit |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS57114925A (en) * | 1981-01-06 | 1982-07-17 | Toshiba Corp | Hold control system |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4067059A (en) * | 1976-01-29 | 1978-01-03 | Sperry Rand Corporation | Shared direct memory access controller |
JPS5362945A (en) * | 1976-11-17 | 1978-06-05 | Toshiba Corp | Disc address system |
JPS5789128A (en) * | 1980-11-25 | 1982-06-03 | Hitachi Ltd | Controlling system for information interchange |
US4462084A (en) * | 1981-02-23 | 1984-07-24 | Gen Rad, Inc. | Bus request buffer circuit for interfacing between field maintenance processor and device specific adaptor |
US4493036A (en) * | 1982-12-14 | 1985-01-08 | Honeywell Information Systems Inc. | Priority resolver having dynamically adjustable priority levels |
-
1983
- 1983-07-13 JP JP58127209A patent/JPS6019269A/ja active Granted
-
1984
- 1984-07-13 US US06/630,787 patent/US4729090A/en not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS57114925A (en) * | 1981-01-06 | 1982-07-17 | Toshiba Corp | Hold control system |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62103749A (ja) * | 1985-07-05 | 1987-05-14 | Nec Corp | Dmaコントロ−ラ |
JPH02277155A (ja) * | 1989-04-19 | 1990-11-13 | Pfu Ltd | バス管理装置 |
JPH0330045A (ja) * | 1989-06-19 | 1991-02-08 | Internatl Business Mach Corp <Ibm> | マイクロプロセツサ用論理回路 |
Also Published As
Publication number | Publication date |
---|---|
JPH0133861B2 (ja) | 1989-07-17 |
US4729090A (en) | 1988-03-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPS6019269A (ja) | 高速デ−タ転送方式 | |
JPS58184668A (ja) | メモリの書込み制御方式 | |
JPH04363746A (ja) | Dma機能を有するマイクロコンピュータシステム | |
US6427181B1 (en) | Method of and apparatus for processing information, and providing medium | |
JPS63175962A (ja) | 直接メモリアクセス制御装置とマルチマイクロコンピュータシステム内におけるデータ転送方法 | |
JP3240863B2 (ja) | 調停回路 | |
JPS63184155A (ja) | マルチプロセツサシステムのダウンロ−ド方式 | |
JP2599184B2 (ja) | Dmacのリード転送制御装置 | |
JPH0145657B2 (ja) | ||
JP2577613Y2 (ja) | 情報処理装置 | |
JPS58169660A (ja) | マルチプロセツサシステムの構成方法 | |
JP2638505B2 (ja) | バスインタフェース装置 | |
JPS62172456A (ja) | マイクロコンピユ−タシステム等におけるインタ−フエ−スバス方式 | |
JPH06161947A (ja) | コンピュータシステム | |
JP2513037B2 (ja) | マイクロコンピュ―タ | |
JPS62225133A (ja) | 制御装置の電源供給方式 | |
JPH0816405A (ja) | システム初期化装置 | |
JPH03266160A (ja) | Dma制御方式 | |
JPH11120126A (ja) | 情報処理装置 | |
JPH05189344A (ja) | マイクロプロセッサ | |
JPH05257883A (ja) | データ処理装置 | |
JPH0668020A (ja) | メモリ制御装置 | |
JPS62266639A (ja) | 入出力用デバイスのインタフエ−ス装置 | |
JPS62145345A (ja) | 直接メモリアクセス間隔制御方式 | |
JPS6025006U (ja) | 負荷集中制御装置 |