26
1 タイミング制約を含んだ回路記述方式と その意味論 2014/11 西村俊二

タイミング制約を含んだ回路記述方式とその意味論

Embed Size (px)

Citation preview

Page 1: タイミング制約を含んだ回路記述方式とその意味論

1

タイミング制約を含んだ回路記述方式と

その意味論

2014/11 西村俊二

Page 2: タイミング制約を含んだ回路記述方式とその意味論

背景・目的

非動期回路の形式検証(プロパティ・チェッキング)を行う

ためにはタイミング制約の情報が不可欠である.

回路記述のみでは遅延値が不明であるため,検証が意味

をなさない.

回路記述とタイミング制約をもとに検証を行う手法/ツール

(Veraci)がある.

タイミング制約を含んだ回路記述が可能であれば,非動

期回路のプロパティ・チェッキングが可能となる.

2

Page 3: タイミング制約を含んだ回路記述方式とその意味論

背景・目的(修正)

非動期回路の形式検証(プロパティ・チェッキング)を行う

ためにはタイミング制約の情報が不可欠である.

回路記述のみでは遅延値が不明であるため,検証が意味

をなさない.

回路記述とタイミング制約をもとに検証を行う手法/ツール

(Veraci)がある.

タイミング制約を含んだ回路記述が可能であれば,非動

期回路のプロパティ・チェッキングが可能となる.

回路とタイミング制約を同時に記述する方法があれば,よ

り良い設計言語となり得る.3

Page 4: タイミング制約を含んだ回路記述方式とその意味論

もくじ

4

課題設定

理論の準備

回路の動作の表現

タイミング制約について

タイミング制約の導入

回路例

まとめ

Page 5: タイミング制約を含んだ回路記述方式とその意味論

課題設定:クロック切替え回路

次のクロック切替え回路のプロパティ・チェッキングを行いたい.

clk0

clk1

sel out

en0

en1

5

Page 6: タイミング制約を含んだ回路記述方式とその意味論

クロック切替え回路の動作

クロック切替え回路の動作は次のようになる.

clk0出力

clk0

clk1

sel

out

clk1出力切替え中

en0

en1

6

ON

OFF

OFF

ON

Page 7: タイミング制約を含んだ回路記述方式とその意味論

クロック切替え回路の問題

7

OFF ON

outen1

clk1

上のパス

下のパス

<clk1

out

en1

clk1出力切替え中

遅延値の関係によってはグリッチ・ノイズが発生する.

Page 8: タイミング制約を含んだ回路記述方式とその意味論

Arrowによる回路の表現

8

プログラミング言語HaskellのクラスであるArrowで回路を表現できる.

f g

>>

f

f

**

f g

g

g

直列合成 f >> g 並列合成 f ** g

Page 9: タイミング制約を含んだ回路記述方式とその意味論

クリプキ構造

クリプキ構造 (W, R, V) :

W : 可能世界の集合

R : 到達可能性 (R ⊆ W ×W)

V : 命題の解釈 (V : W → 真or偽)

例 :

W : 先祖代々の家族

R : 親

命題 : 「先祖代々色黒である」

9

Page 10: タイミング制約を含んだ回路記述方式とその意味論

回路の制限

回路中の経路(パス)を表現するためのオペレータ

L| , R| , |L , |R を導入.

10

f

f |R

f |L

R| f

L| f

Page 11: タイミング制約を含んだ回路記述方式とその意味論

ディレイを考慮した回路の動作を以下のように表現する.

回路の動作を表現

11

AND0

0

R|AND

a

bc

a cR|AND

0 0 W : 信号線

R : その接続関係

命題 : 信号値

(don’t care)

00

ac

Page 12: タイミング制約を含んだ回路記述方式とその意味論

一般の回路とプリミティブで異なるディレイモデルを用いる.

二つのディレイモデルを用いる

12

OR0

0a

bc

a×b cOR

0×0 0

0

vu

acf

a cR|f

v w

一般の回路 :

Data-dependent のモデル

プリミティブ :

Data-independent のモデル

Page 13: タイミング制約を含んだ回路記述方式とその意味論

下の二つの経路の遅延の大小関係を規定したい.

マイナスの経路,及び,経路LRを導入する.

分岐する経路の遅延 (1/3)

13

f

g

fork|L

f

-g

-fork|R

LR

f

g

a

bc

a×b cAND

a × b

=

LR

fork

Page 14: タイミング制約を含んだ回路記述方式とその意味論

Δ := fork|L >> f >> LR >> -g >> -fork|R (下記経路)

とすると,

Δ >> fork|R >> g = fork|L >> f >> LR .

分岐する経路の遅延 (2/3)

14

f

g

fork|L

f

-g

-fork|R

LR

Page 15: タイミング制約を含んだ回路記述方式とその意味論

Δ := fork|L >> f >> LR >> -g >> -fork|R

とすると,

Δ >> fork|R >> g = fork|L >> f >> LR .

Δ は f 側の遅延と g 側の遅延の

「ずれ」を表す.

分岐する経路の遅延 (3/3)

15

f

g

fork|L

f

gfork|R

LR

Page 16: タイミング制約を含んだ回路記述方式とその意味論

タイミング制約をもたせた fork< を導入する.

fork< で分岐した信号が再び合流する点において,常に

左の経路の遅延 < 右の経路の遅延

であることを制約とする.

タイミング制約の導入 (1/2)

16

f

g

fork<

<

Page 17: タイミング制約を含んだ回路記述方式とその意味論

タイミング制約の導入 (2/2)

17

“正のクリプキ経路”を以下で定義する.(時間の進行方向)

プリミティブ(fork,fork< を含む)は正

f, g が正 ⇒ f >> g は正

f が正 ⇒ - ( - f ) は正

fork|R >> f >> -fork|L は正

fork|L >> f >> -fork|R は正

fork<|R >> f >> -fork<|L は正

fork

fork

fork<

fork< 無 し

Page 18: タイミング制約を含んだ回路記述方式とその意味論

下記の回路を例に fork と fork< の差異を説明する.

INVAND := fork >> BUF ** INV >> AND

回路例:INVAND (1/5)

18

or

(low)

Page 19: タイミング制約を含んだ回路記述方式とその意味論

回路例:INVAND (2/5)

19

1 0

1

1

1

0

0

0

t

t

入力波形は以下のように表現できる:

変化点を t として,

ある点から t に向かう正の経路があればその点では入力は 1

t においては入力は↓(立ち下がり)

t からある点への正の経路があればその点では入力は 0 .

Page 20: タイミング制約を含んだ回路記述方式とその意味論

fork >> BUF ** INV >> AND

回路例:INVAND (3/5)

20

(low)

0↓

t

X↑ 0

1

X

0

0 ↓

0

Δ : 正の経路

ΔΔΔΔ

Page 21: タイミング制約を含んだ回路記述方式とその意味論

fork >> BUF ** INV >> AND

回路例:INVAND (4/5)

21

0↓

t

X

1

1

X1 ↓

注意:fork の代わりに fork< を使った場合,Δ’ は正でない.

Δ’ : 正の経路

Δ’ Δ’ Δ’ Δ’

Page 22: タイミング制約を含んだ回路記述方式とその意味論

INVANDの結果をまとめると以下となる.

⇒ ゲート遅延を考慮した非同期回路についても形式検証

の適用が可能となった.

回路例:INVAND (5/5)

22

or

(low)

fork >> BUF ** INV >> AND

fork< >> BUF ** INV >> AND (low)

Page 23: タイミング制約を含んだ回路記述方式とその意味論

まとめ

回路とタイミング制約を同時に記述する方法を提案した.

Arrowの導入により構造ベースの回路表現が可能となった.

クリプキ意味論により,抽象的な遅延の概念を導入.

定理証明言語Agdaでの実装試行を行った.

課題

Veraci(回路記述とタイミング制約をもとに検証を行う手法/

ツール)との比較・検討

プロパティ記述からの回路生成についての検討.

23

Page 24: タイミング制約を含んだ回路記述方式とその意味論

補足:同期回路の制約

24

delay pfork<

FF FF

delay pfork<

MU

X1

MU

X0

MU

X0

FF

Page 25: タイミング制約を含んだ回路記述方式とその意味論

補足 : loop

25

f

g

g f

g

f

f

g

Page 26: タイミング制約を含んだ回路記述方式とその意味論

背景・目的(修正)

非動期回路の形式検証(プロパティ・チェッキング)を行う

ためにはタイミング制約の情報が不可欠である.

回路記述のみでは遅延値が不明であるため,検証が意味

をなさない.

回路とタイミング制約を同時に記述する方法があれば,よ

り良い設計言語となり得る

26