IT系メモ

興味のあったことや、勉強したことなどをメモしていきます。

2009-07-01から1ヶ月間の記事一覧

@(*)

always文のセンシビリティリストの信号を書く時に沢山信号があった場合は大変ですが、Verilog2001にはアスタリスクを書くことですべての信号を指定することができる。センシビリティリスト記述漏れによるラッチを発生するのを避けることができそう。

wireとtri

トライステートバスを使用している回路でwireではなく「tri」を使用しているものがあった。調べてみると文法上の意味に違いはないとのこと。モデリングするときに区別して指定したいときに使用する。 他にもsingle drive, multi driveなどもあるとのこと。こ…

数字の取り扱い

基本的なものでは「2'b00」のような2進数の取り扱いや、「2'h3」にような16進数表記が使える。bやhの前に付いているのはビット幅を表す。ビット幅は省略することができるが明示する方がいい。「444」のように指定がないものは符号付きになるが実装依存な…

localparam

localparam integer Loop_counter_width=16; localparam integer Stop_count = 2**Loop_counter_width -1; ローカル定数を使用することができるみたいだ。parameterと同じようにtimeやdelayを取ることができる。parameterとの違いはparameterは個々のmodule…

group

initial begin : test_loop integer i; for (i=0; ibeginの後に「コロン(:) 名前」が使える。これは内部でローカル変数を使えるようにするためのもの。begin〜end内で、「integer i;」と変数を宣言しているが、これが他のところに影響しないようにローカル変…

ASIC World

サンプルがあってわかりやすい。 http://www.asic-world.com/

PSL

assert !(a && b) ; assert always !(a && b); assert never (a && b) :

STARCの検証ガイドの資料 http://www.starc.jp/download/edsf2009/booth05.pdf

VVM

http://www.vmmcentral.org/

OVM(Open verification Methodology)

日本語の資料があったのでメモ http://www.ovmworld.org/userguides/OVMUG2.0Jrev01.pdf

Verilogのタイミング検証用記述方法でspecify~endspecifyがあるのを知った。パスに遅延をわりあて、タイミング制約を満たしているかを調べることができるそうだ。まだ書き方がよくわかっていない。

検証方法として、トップダウンから行う方法、ボトムアップから行う方法、プラットフォームでの検証、システムインターフェースアプローチがある。ボトムアップというのが従来から行われているもので、始めに機能ごとに検証を行ったあと、最後にシステム全体…

開ループタイミングではセットアップ時間は最大遅延の一部として計算され、ホールド時間は最小遅延時間の計算で用いられる。フリップフロップではアパーチャ時間や遅延はクロックの立ち上がりを基準にしているが、ラッチはクロックの立ち下がりを基準にして…

@arrayの配列を2進数表示したかったけれども、エクセルで変換してやった方が早そう。 #!/usr/bin/perl -w @GEN = (1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1); @array = (3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3); for($kk=0; $kk<=23; $…

メソ同期、プレシオ同期 mesochronousとplesiochronous。2つの信号間の平均遅延をスキューとよぶ。遅延差がないように設計した異なるクロック間のスキューが固定の場合をメソ同期という。2つの信号がほぼ同じ周波数でほぼ同期状態の信号をプレシオ同期とい…

タイミング

クロックに同期させて信号を送信する同期方式と、不定の間隔でデータを送信する非同期方式がある。クロックに同期させる方式ではデータが来るタイミングがわかるので、受信側に内部クロックを持っていても受信が可能。 クロックのずれを補正する仕組みを入れ…

SRAM

SRMAの構造はロウデコーダによってワード線が活性化される。それによってメモリセルが活性化する。そこから差動電流が流れ、ビット線に生じた差動電位をセンスアップによって読み出される。一本の信号線にH,Lが同時に入って、それによってシリアルの波になっ…

信号伝送

チップ上のメタル配線は抵抗とコンデンサからなる分散RC伝送路として考えることができる。RC伝送路は信号遅延を起こしたり、エッジを緩やかにしたりする。信号の立ち上がりが遅かった場合にはジッタが発生する可能性がある。クロック配線などの大きな負荷容…