三端子ネットのゼロスキュー配線の一手法 -...

6
1 三端子ネットのゼロスキュー配線の一手法 A Skew-zero Router for the Three Terminal Net 1 2 3 Masahiko Toyonaga 1) Mitsuru Matsushita 2 Yusuke Morimoto 3 1) 2 2 Information Science Division, Faculty of Science, Kochi University ( ) 0 3 1) RC 2) 3 % 1 VLSI ( ) 10 [1] VLSI [2] [3] 1 1(a) RC R C RC (FF) FF FF1 FF2 P R1,R2 C1,C2 1 1(a) P FF1 D1 P FF2 D2 D1<D2 D2 D1 1 1(b) P FF1 B B DT P FF1 D1 D1 D2 B VLSI D 1 =R 1 C 1 FF2 FF2 FF1 FF1 FF FF D 2 =R 2 C 2 P (a) P D1 D2 FF2 FF2 FF1 FF1 FF FF D 2 D 3 P B (b) B 1-1 1-2 H RC [1][3] H [4][5] RC H RC H 1- FF P0 P1 P2 P3 FF FF Technical Reports on Information and Computer Science from Kochi Vol. 7 (2015), No. 5

Upload: others

Post on 14-Feb-2021

0 views

Category:

Documents


0 download

TRANSCRIPT

  • 1

    三端子ネットのゼロスキュー配線の一手法

    A Skew-zero Router for the Three Terminal Net 豊永 昌彦 1) 松下 充 2) 森本 裕介 3)

    Masahiko Toyonaga 1) Mitsuru Matsushita 2) Yusuke Morimoto 3)

    1)高知大学 情報講座 2)高知大学理学部 2)高知大学院

    Information Science Division, Faculty of Science, Kochi University

    あらまし

    あらましあらまし

    あらまし デジタル回路の

    デジタル回路のデジタル回路の

    デジタル回路の同期式設計

    同期式設計同期式設計

    同期式設計で

    でで

    では,フリップフロップなど

    は,フリップフロップなどは,フリップフロップなど

    は,フリップフロップなど

    のの

    の同期素子

    同期素子同期素子

    同期素子へ

    へへ

    へクロック信号

    クロック信号クロック信号

    クロック信号を

    をを

    を同時配信

    同時配信同時配信

    同時配信す

    すす

    すること

    ることること

    ることが

    がが

    が前提

    前提前提

    前提で,

    で,で,

    で,

    その遅延差は,動作速度を左右する.

    その遅延差は,動作速度を左右する.その遅延差は,動作速度を左右する.

    その遅延差は,動作速度を左右する.性能向上には,

    性能向上には,性能向上には,

    性能向上には,ク

    クク

    ロック

    ロックロック

    ロック遅延

    遅延遅延

    遅延差

    差差

    差(クロッククロッククロック

    クロックスキュー

    スキュースキュー

    スキュー)ををを

    を 0にするにするにする

    にする配線手法が

    配線手法が配線手法が

    配線手法が求

    求求

    められる

    められるめられる

    められる.

    ..

    .本論文

    本論文本論文

    本論文は,

    は,は,

    は,新たな

    新たな新たな

    新たなスキューゼロ

    スキューゼロスキューゼロ

    スキューゼロ配線手法を提

    配線手法を提配線手法を提

    配線手法を提

    案する.

    案する.案する.

    案する.提案手法では,

    提案手法では,提案手法では,

    提案手法では,3 端子ネットに限定端子ネットに限定端子ネットに限定

    端子ネットに限定するものの

    するもののするものの

    するものの

    同期素子の

    同期素子の同期素子の

    同期素子の入力容量差

    入力容量差入力容量差

    入力容量差を考慮したゼロスキューを提供

    を考慮したゼロスキューを提供を考慮したゼロスキューを提供

    を考慮したゼロスキューを提供

    する.

    する.する.

    する.提案手法は

    提案手法は提案手法は

    提案手法は 1)入力容量入力容量入力容量

    入力容量差

    差差

    差を

    をを

    をもつ

    もつもつ

    もつ RC ネットワークネットワークネットワーク

    ネットワーク

    のの

    の等遅延

    等遅延等遅延

    等遅延点

    点点

    点の計算

    の計算の計算

    の計算式

    式式

    式,

    ,,

    ,および

    およびおよび

    および 2)等遅延点等遅延点等遅延点

    等遅延点で

    でで

    で 3端子配線端子配線端子配線

    端子配線

    する

    するする

    する迷路

    迷路迷路

    迷路配線

    配線配線

    配線法

    法法

    法の拡張

    の拡張の拡張

    の拡張で

    でで

    で構成

    構成構成

    構成される

    されるされる

    される.

    ..

    .簡単な

    簡単な簡単な

    簡単な回路の

    回路の回路の

    回路の実

    実実

    験験

    験によれ

    によれによれ

    によれば

    ばば

    ば,提案手法

    ,提案手法,提案手法

    ,提案手法により最良で数

    により最良で数により最良で数

    により最良で数%以内の誤差で以内の誤差で以内の誤差で

    以内の誤差で

    ゼロスキューが実現できる

    ゼロスキューが実現できるゼロスキューが実現できる

    ゼロスキューが実現できることが判明した.

    ことが判明した.ことが判明した.

    ことが判明した. キーワード:

    キーワード:キーワード:

    キーワード:信号

    信号信号

    信号遅延,等遅延配線

    遅延,等遅延配線遅延,等遅延配線

    遅延,等遅延配線,

    ,,

    ,迷路配線法,ゼロ

    迷路配線法,ゼロ迷路配線法,ゼロ

    迷路配線法,ゼロ

    スキュー配線法,素子入力容量

    スキュー配線法,素子入力容量スキュー配線法,素子入力容量

    スキュー配線法,素子入力容量 1...

    . はじめにはじめにはじめに

    はじめに デジタル回路の同期設計を採用するVLSI を高速化す

    るためには,クロック信号の遅延誤差(クロックスキュー)の制限が必要である.多くのシステムでは,そのクロックスキ

    ューを周期の 10%以内とする必要があるといわれる[1]. VLSI レイアウト設計においてゼロスキューを実現する

    には,配線途中に遅延素子を挿入して遅延を調整する

    方法[2]や配線長により遅延を調整する方法[3]がある. 図 1‐1(a)は,簡単な RCネットワークを示しており,簡単

    のため配線抵抗を R,配線容量をCとして信号遅延を RCで表している.また同期素子をフリップフロップ(FF)と表し,FFを出力素子,FF1及び FF2を入力素子,また分岐点をPと表している.また,配線抵抗,容量は,それぞれ R1,R2および C1,C2 とする.

    図 1‐1(a)の分岐点 P から FF1への信号遅延 D1,P から FF2への信号遅延 D2 について,いま D1

  • 2

    れたものである.そうすることにより,出力から入力までの

    信号経路で配線抵抗 R及び配線容量 Cを等しくしてゼロスキューを実現している.しかし,もし同期素子が不均一

    に配置されている場合や,各同期素子の入力容量が異

    なる場合には,その配線長調整は難しくなる. そこで本論文は,RC ネットワークバランス法を二つの

    点から改良する提案である.すなわち,1)入力容量を考慮した分岐点の計算法の確立,および 2)同分岐点を精度よく算出する迷路配線法の拡張法の提案である.

    本手法を実装し,簡単な3端子配線問題に対して有効であることがわかった.

    以下,第 2 章では,スキューゼロ配線に関する基本事項と問題定式化を説明する.第 3 章では,提案するスキューゼロ CR 配線の分岐点計算法と迷路配線法の拡張アルゴリズムを紹介する.またテストデータに適用した実

    験を第 4 章で紹介し,その特性を説明する.最後の 5 章でまとめる. 2...

    . 準備準備準備

    準備 (1) 三端子ネットの三端子ネットの三端子ネットの

    三端子ネットのゼロスキュー

    ゼロスキューゼロスキュー

    ゼロスキュー配線

    配線配線

    配線問題

    問題問題

    問題 三端子ネットのゼロスキュー配線問題を,次に定義す

    る. [三端子ネット三端子ネット三端子ネット

    三端子ネットゼロスキュー配線問題

    ゼロスキュー配線問題ゼロスキュー配線問題

    ゼロスキュー配線問題] 領域

    領域領域

    領域A上上上

    上に配置された

    に配置されたに配置された

    に配置された出力端子

    出力端子出力端子

    出力端子P0と異なる入力容と異なる入力容と異なる入力容

    と異なる入力容

    量をもつ

    量をもつ量をもつ

    量をもつ端子群

    端子群端子群

    端子群 Pi (i=1,2)ににに

    について,端子

    ついて,端子ついて,端子

    ついて,端子 P0からからから

    から Piへ等遅延となる

    へ等遅延となるへ等遅延となる

    へ等遅延となる最短経路を求めよ.

    最短経路を求めよ.最短経路を求めよ.

    最短経路を求めよ. 通常の配線問題は,2 端子の配線経路探索を目指し

    ているが,本問題では,3 端子間の配線経路探索を目指し,さらに 3 端子間のゼロスキューが制約として加わる.

    本問題を図 2-1 で説明する.図 2-1 において,配線接続を実線で表し,素子の出力を O,素子入力を G1,G2 としている.配線上にある P は分岐点である.三端子ネットゼロスキュー配線問題では,Pから G1 の遅延 D1 と経路 Pから G2 の遅延 D2 を等しくする配線経路を探索する.

    OP

    G1

    G2OP

    G1

    G2

    図 2-1 3端子ネットの RCネットワーク

    (2) 遅延計算モデル遅延計算モデル遅延計算モデル

    遅延計算モデル 本論文では,遅延計算に RC Lumpedモデル,および

    遅延モデルに Elmore遅延式[3]を用いる. RC Lumped モデルとは,回路における配線経路にお

    いて,分岐点や端子で区分された配線の抵抗 R,容量 Cをそれぞれ一まとめに記述した回路モデルである.図 2 2 は,図 2 1の RC Lumped Modelである.図 2-2において,O は出力端子,P は分岐点,G1,G2 は入力端子とする.出力端子から分岐点 P までの抵抗と容量をそれぞれ1 つまとめている.分岐点 Pから入力端子 G1,Pから入力

    端子 G2 についても同様に抵抗と容量をそれぞれ 1 つにまとめている.

    O

    G1

    G2

    P O

    G1

    G2

    P

    抵抗

    容量 図 2-2 RC Lumpedモデル

    3...

    . 三端子ネットゼロスキュー三端子ネットゼロスキュー三端子ネットゼロスキュー

    三端子ネットゼロスキュー配線法

    配線法配線法

    配線法 提案する三端子ネットゼロスキュー配線法を説明する.

    提案配線法は二つの技術で構成している. 具体的には,1)三端子ネットの入力容量を考慮した等遅延点 P の判定式,および 2)迷路配線法の拡張による等遅延点 P の三端子配線法である.

    (1) 入力入力入力

    入力容量を考慮した

    容量を考慮した容量を考慮した

    容量を考慮した等遅延

    等遅延等遅延

    等遅延点

    点点

    点判定式

    判定式判定式

    判定式 以後の議論では,配線の単位長さあたりの抵抗を r,単

    位長さあたりの容量を c とする.また図 2-2に示す回路で,G1,G2 の入力ゲート容量をそれぞれ CG1,CG2 とし,分岐点 Pから G1,Pから G2 の配線長を L1,L2,およびそれぞれの信号遅延を D1,D2 とする.

    以上から,分岐点 P から G1 までの配線抵抗は rL1,配線容量は cL1 であり,分岐点 Pから G2 までの配線抵抗はrL2,配線容量は cL2 である.それぞれの配線容量に G1,G2 の入力容量 CG1,CG2 を加えると Pから G1 までの信号遅延 D1 および分岐点 P から G2 までの信号遅延 D2 は,式(1)(2)として表せる.

    )( 1111 GCcLrLD += (1) )( 2222 GCcLrLD += (2)

    出力 O から G1,G2 までをゼロスキューにするには,D1=D2 を満たせばよいので,式(3)が得られる.

    )()( 222111 GG CcLrLCcLrL +=+ (3)

    ここで,分岐点 P から G1,および P から G2 の各配線長L1,L2 の長さ比をαとして L2=αL1 とすると式(3)を整理して式(4)が得られる.

    1122

    10 GG CcLCcL −−+= αα (4) この式(4)は,αに関する二次関数であり,その解は式(5)で求められる.

    1

    1112

    22

    2

    )(4

    cL

    CcLcLCC GGG ++±−=α (5)

    以上から,式(5)で算出したαにより L2=αL1 の関係を

    満たす配線長を保証すればゼロスキューを達成できる.

  • 3

    (2) 迷路配線法迷路配線法迷路配線法

    迷路配線法 迷路配線法[6]はもともと 2 端子間の配線経路を求める

    方法であり,三端子ネットに利用する場合は,2 組の端子ペアに 2 端子分割してから,それぞれのペア端子を始点S,終点 T として配線をおこなう手順をとる.

    迷路配線法では,まず配線領域 A を格子状の無ラベルのノードで覆ったグラフを定義し,始点 S から幅優先探索をおこなって終点 T までの経路を求める方法である.もし,配線領域内に配線障害があれば,そのノードを障害

    物(Obstacle)としてラベル付けをすればよい.迷路配線法は,二つのリストを利用する.1つを検索ノードリスト List1,および候補ノードリスト List2を使う.基本のアルゴリズムを図 3.1に示す.

    maze-router (List1, List2, S, T, GridGraph) { //preparation Set S and T to nodes in GridGraph;

    Set S to List1;

    Set List2=φφφ

    φ; //start While (List1!=φ

    φφ

    φ) { for each node Pi in List1 { If(the neighbor node Pn of Pi is T){ trace back from T to S; Return (Success Routing); } else if (Pn is blank){ Set Pn to List2; Set traceback code to node Pn; } } If(List2==φ

    φφ

    φ) { Return (Fail Routing); } Move List2 to List1; Set List2=φ

    φφ

    φ; }

    図 3.1 迷路法

    (a) 配線問題 (b) グリッドグラフ

    (c) 始点終点の定義 (d) 隣接ノード検索

    (e)検索終盤 (f)トレースバック処理

    図 3.2 迷路配線法の過程. まず,グリッドグラフ上に始点と終点のラベル付け S, T

    を行い,リスト List1 に始点 S を加え,List2 を空にする. 次に List1の全ノードPiに対して,1)もし Piに隣接する

    ノードがラベル T であれば,同ノードからトレースバックにより経路を算出して経路探索は成功して終了する.また,

    2)もし Pi に隣接するノードが無ラベルであれば,トレースバックコードを隣接するノードにラベル付けし,同ノードを

    List2 に加える.Pi の隣接ノードが障害物など 1),2)のどちらでもない場合には,何もしない.

    もし,経路探索が未達成で,List2 にノードが登録されておれば,それらのノードで List1 を上書きし,List2 を再び空にして検索処理に戻る.このとき,List2 のノードが検索処理後に空であれば,新たな経路の候補がないとして

    経路探索失敗として終了する. ここで,トレースバックコードとは,各ノードにラベル付

    けする検索元へ戻る方向コード,例えば「上,下,左,右」などのコードを指す.また,トレースバックとは,同トレースバ

    ックコードにより,ノードを順番にたどって T から S へ戻るノード列を探す処理を指す.本アルゴリズムの過程を図

    3.2(a),(b),(c),(d),(e),(f)に示す.

    (3) 三端子ネットゼロスキュー三端子ネットゼロスキュー三端子ネットゼロスキュー

    三端子ネットゼロスキュー配線法

    配線法配線法

    配線法 3.1節の議論から式(5)のαにより L2=αL1 とする L1,

    L2 の配線長をもつ配線を実装すれば,出力 O から G1,G2までの信号遅延を均等化,すなわちスキューゼロが実現

    できる.そこで本節は,配線長を L2=αL1 とする迷路配線法[6]の拡張法を説明する.

    提案配線法,RC バランス迷路配線法の概要は,まず,出力 Oから入力 G1の迷路配線法のトレースバック処理時に,L1 の長さと,マンハッタン長推定で見積った L2 の配線比率を式(5)により評価して分岐点 P の探索をおこなう.そして O から G1 の経路探索後に,同分岐点 Pと G2 をペアとする迷路配線法をおこなうものである.

    RC バランス迷路配線法のアルゴリズムを図 3.2.1に示す.

    まず,出力 Oと G1をグリッドグラフの相当する場所に始点 S と終点 T としてラベル付けを行い,List1 に始点 Sノードを,List2 を空にする.

    次に,List1 の要素がある限り繰返し処理をおこなう.そ

  • 4

    の内容は,List1 の端子 Pi について,その隣接点 Pn(上下左右の 4 点)について Pnが終点 T であれば,トレースバックをおこない経路を算出するが,本アルゴリズムでは,

    このとき,T から n番目のトレースバック点の距離を L1=nとし,G2とのマンハッタン長を L2として式(5)のαの計算および,同結果からΔ=|L2-αL1|を計算し,Δが最小となる点を P として検索する.L2 のマンハッタン長は,トレースバック点(x,y),G2(x2,y2)として以下で計算する.

    |||| 222 yyxxL −+−= (6) もし,隣接点 Pnが終点 T でなく,無ラベルであれば,ノ

    ード Pn にトレースバックコードを設定し,同ノードを List2に加える.もし,隣接点 Pnが終点 T でも,無ラベルでもなければ何もしない.

    以上をすべての List1 のノードについておこなった後,List2 が空ならば失敗として終了する.もし,List2 が空でなければ,List1を List2 で置き換え,List2 を空にして再び List1 の検索を繰り返す.

    以上の処理で,分岐点 P と O から G1 までの配線経路が得られる.次に,分岐点 P と G2 をグリッドグラフの相当する場所に始点Sと終点T としてラベル付けを行い,先ほどと同様に経路探索を行う.ここでは,経路が見つかれば

    成功として終了する.

    RC-Balanced-maze () { //preparation

    set O as ‘S’ and G1 as ‘T’ to GridGraph; set S to List1 and List2=φ

    φφ

    φ; //start

    while (List1 != φφφ

    φ) { for each node Pi in List1 { if(the neighbor nodes Pn of Pi is T){ traceback from T to S by searching P; break; } else if (Pn is blank){ add Pn to List2 and set the traceback-code; } } if(List2==φ

    φφ

    φ) { return (Fail); } move List2 to List1 and set List2=φ

    φφ

    φ; } set P as ‘S’ and G2 as ‘T’ to GridGraph;

    set S to List1 and List2=φφφ

    φ; //start

    while (List1 != φφφ

    φ) { for each node Pi in List1 { if(the neighbor nodes Pn of Pi is T){ traceback from T to S; return(success); } else if (Pn is blank){ add Pn to List2 and set the traceback-code; } } if(List2==φ

    φφ

    φ) { return (Fail); } move List2 to List1 and set List2=φ

    φφ

    φ; }

    }

    図 3.2.1 三端子ネットゼロスキュー配線アルゴリズム 三端子ネットゼロスキュー配線アルゴリズムの簡単な説

    明図を図 3.2.2に示す.

    (a) 配線問題 (b) Oと L1 の設定

    (c) 迷路探索 (d) トレースバック

    (d) トレースバック時の配線長 L2見積もり 図 3.2.2 三端子ネットゼロスキュー配線の例

    4...

    . 実験実験実験

    実験 提案する三端子ネットゼロスキュー配線法の有効性を

    調べるために,実験をおこなう.配線領域の規模は,100×100グリッドとし,3 端子をランダムに配して O,G1,G2 とする.配線層は,1 層である. 評価は,実現した Pから G1 への配線長 L1 と P から G2

    への推定長 L2´として,diff=L 2´-αL1 を誤差として調べることとした.

    なお,G1,G2 の入力ゲートのばらつきは,それぞれの容量比が,1:1から 1:4まで調べるものとした.また,単位長さあたりの配線抵抗・容量は TSMC0.18umを参考にして,G1,G2 の入力ゲート容量を配線容量の約 1000倍程度と仮定して計算するものとした.

  • 5

    実験結果を,表1に示す.表 1 において,test1,test2,test3,test4,test5は三端子をランダムに配置した5つのテストデータ名である.また,カラム1_1,1_2,1_3,および1_4は,G1,G2 の入力ゲート容量の比率,1:1,1:2,1:3,1:4の 4 種類での結果を示す.また,calc は,実際の P からG1 への配線長 L1 から求められた分岐点 Pから G2 までの距離 L2(=αL1),mh は同距離のマンハッタン長による推定値である.また,diff は calcと mhとの差である.

    表 1によれば,入力容量比が 1:1では,L2の配線長は30 グリッド前後であり,そのときの推定配線長との差は 1グリッド程度の誤差となっている.図 3-1(a)にこのときのtest1 の回路における三端子ネットゼロスキュー配線結果を示す.

    また,入力容量比が 1:2 では,L2 が 21から 40グリッドに対して誤差が test5を除いて同様に 1 グリッド程度の誤差となっているが,test5では,誤差が 19.65となっている.これは,本配線法で分岐位置 P を配線経路上で見つけられなかったことを意味する.原因としては端子間の位置

    関係で配線長による遅延調整が困難となることが原因と

    考えられる.図 3-1(b)に test2の結果を示す. 入力容量比が 1:3では,L2 が 13から 40グリッドに対し

    て test4と test5を除き誤差が 1グリッド程度であるが,test4 と test5 では誤差が 6.89,28.49となっている.これも,本配線法で分岐位置 P を配線経路上で見つけられなかったことを意味する.図 3-1(c)にこのときの test4 の結果を示す.

    入力容量比が 1:4 では,L2 が 13 から 40 グリッドに対して先ほどと同様に誤差が test4と test5を除き 1 グリッド程度で配線されていることがわかり,またここでも test4 及び test5 が大きな誤差となっている.図 3-1(d)にこのときの test5の結果を示す.

    5...

    . まとめまとめまとめ

    まとめ 同期式設計では,フリップフロップなど同期素子へ

    クロック信号が同時配信されることを前提とする.そ

    のためクロック信号の到着時間差(クロックスキュー)が0となる配線手法が研究されている.本論文は,3 端子ネットに限定し,素子入力容量差も含めた信号遅延スキューゼロ配線手法を提案する.提案手法では

    まず,1)RC ネットワークにおける入力容量を含む等遅延点の計算法の確立,および 2)同等遅延点で 3 端子配線をおこなう迷路配線法の拡張手法で構成する.実

    験評価から,提案手法は,従来のゼロスキュークロッ

    ク配線法に比べて,迂回が最少となることが確認でき

    た.一方,端子の位置によっては,調整が困難となる

    ことが判明した.今後,様々な端子位置に対してゼロ

    スキューを保証するための配線法への拡張を検討す

    る予定である.

    (a)G1,G2 の入力容量 1:1 の test1

    (b) G1,G2の入力容量 1:2の test2

    (c)G1,G2の入力容量 1:3の test4

    (d) G1,G2の入力容量 1:2の test5

    図 3-1 三端子ネットゼロスキュー配線結果

  • 6

    参考文献

    参考文献参考文献

    参考文献 [1]F. Minami and M. Takano, "Clock tree synthesis based on RC delay balancing", Proc. of IEEE Custom Integrated Circuits Conf., pp.28.3.1-28.3.4,1992. [2] V. Adler and E. G. Friedman, "Repeater design to reduce delay and powerin resistive interconnect", IEEE Trans. Circuits Syst. II, vol. 45, pp.607-616 (1998) [3] Ren-Song Tsay, ”Exact Zero Skew.” Proc. of ICCAD, pp.336-344(November, 1992) [4]H.B.Bakoglu, J.T.Walker and J.D.Meindl, “A symmetric clock-distribution tree and optimized high-speed interconnections for reduced clock skew in

    ULSI and WSI circuits,” Proc. IEEE Int. Conf. on Computer Design, pp.118-122,1986. [5]J.Rubinstein, P.Penfield and M.A.Horowits,"Signal Delay in RC Tree Networks," IEEE Trans. on CAD, CAD-2(3),pp.202-211,1983. [6]C. Y. Lee, “An algorithm for path connections and its application, ” IRE Trans. Electron. Comput., pp346-365, 1961. [7] 松下充, 森本裕介,豊永昌彦,“遅延等価配線の一手法”,平成 26 年度電気関係学会四国支部連合大会1-36(2014年 9月 13日徳島大)

    表 1 三端子ネットゼロスキュー配線結果

    calc mh dif calc mh dif calc mh dif calc mh diftest1 30.00 31 1.00 21.15 21 0.15 16.18 16 0.18 13.07 13 0.07test2 25.00 25 0.00 30.80 31 0.20 13.13 13 0.13 10.17 12 1.83test3 30.00 30 0.00 39.61 40 0.39 30.74 31 0.26 24.89 26 1.11test4 37.00 38 1.00 29.07 29 0.07 18.11 25 6.89 13.66 25 11.34test5 49.00 49 0.00 27.35 47 19.65 18.51 47 28.49 13.95 47 33.05

    1_1 1_2 1_3 1_4