1) 作業ディレクトリに、上記2つのファイルをコピーする。
2) VHDLアナライザ(vhdlan)で組み合わせ回路をコンパイルする。
% vhdlan comb.vhd
エラーメッセージ等があればエラーを修正して、再コンパイルする。
コンパイル後に、.sim, .mra 等のファイルができるので確認する。
3) テストベンチファイル test_comb.vhdの内容を理解し、コンパイルする。
% vhdlan test_comb.vhd
このファイルの後部にコンフィギュレーションも含まれている。
****** 以上でシミュレーションの準備は終了 *****
4) Sciroccoコンパイラを用いて、シミュレーション実行ファイル scsim を作成する。コンパイラの引数は、テストベンチで宣言したコンフィギュレーション名を用いる。
% scs CFG_ADDER
グラフィカルなツールが起動される。
5) VHDLシミュレータ Sciroco を起動する。
% scirocco
6) A, B, C, F, G信号を観測する。
下記の内容を含むレポートを提出する。
1) comb.vhdのディレクトリに移動し、デザインアナライザーを起動する。
% design_analyzer &
デザインアナライザのウインドウが開く。このメニューを使って、回路を合成する。
2) ライブラリを確認する。
Setup -> Defaultsでターゲットライブラリがclass.dbであることを確認する。
3) VHDLファイルを読み込む。
File -> Read
comb.vhd を選択し、OKをクリック。
4) 入出力ピンを確認する。
ウインドウ中央の COMB をクリックし、左の下向き矢印ボタンを押す。
(もしくは、COMB をダブルクリックする。)
5) 合成前の回路を確認する。
回路シンボルをダブルクリックしてさらに下位レベルへ移動する。
(もしくは、左のANDのボタンを押す。)
6) 回路を合成する。
Tool -> Design Optimization
デフォルトの設定でOK
これで、回路が合成される。
7) クリティカルパス(最大遅延パス)をハイライトする。
Analysis -> Highlight -> Critical Path
8) 合成された回路の、面積、クリテイカルパスの遅延時間とその経路を調べる。
Analysis -> Report
Timing, Reference, Areaをチェックして、Apply
リストより、
Combinational Area:
Total Cell Area:
クリティカルパス遅延:(data arrival time)
Start point:
End point:を調べる。
9) 再度、VHDLファイルを読み込む。
File -> Read
comb.vhd を選択し、OKをクリック。
10)速度最小で合成する。
COMBをダブルクリックして下位のレベルに移動する。
Attributes -> Optimization Constraints -> Design Constraints
Max Area の設定を消し、Apply
回路図上の出力ピンをクリックして選択する。
Attributes -> Optimization Constraints -> Timing Constraints
Maximum Delay の Rise Fall ともに 0.00 とし、Apply
Tool -> Design Optimization
デフォルトの設定でOK
これで、回路が合成される。
10) 7−8)を繰り返す。
今回の場合、回路が簡単で、上記2種類の合成結果が同じになることを確かめる。
inputs | outputs | ||||||||
En | A2 | A1 | A0 | Y5 | Y4 | Y3 | Y2 | Y1 | Y0 |
0 | X | X | X | 0 | 0 | 0 | 0 | 0 | 0 |
1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
1 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 1 | 0 |
1 | 0 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 0 | 0 |
1 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 |
1 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 |
1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
1) デザインアナライザーを起動する。
% design_analyzer &
デザインアナライザのウインドウが開く。このメニューを使って、回路を合成する。
2) ライブラリを確認する。
Setup -> Defaultsでターゲットライブラリがclass.dbであることを確認する。
3) VHDLファイルを読み込む。
File -> Read
3_6_dec.vhd を選択し、OKをクリック。
4) 入出力ピンを確認する。
ウインドウ中央の DECODER3_6 をクリックし、左の下向き矢印ボタンを押す。
(もしくは、DECODER3_6 をダブルクリックする。)
5) 合成前の回路を確認する。
回路シンボルをダブルクリックしてさらに下位レベルへ移動する。
(もしくは、左のANDのボタンを押す。)
6) 回路を合成する。
Tool -> Design Optimization
デフォルトの設定でOK
これで、回路が合成される。
7) クリティカルパス(最大遅延パス)をハイライトする。
Analysis -> Highlight -> Critical Path
8) 合成された回路図をプリントする。
File -> Plot
File 出力をチェックし、適当なポストスクリプトファイル名を入力し、OK
後は、ftp等でポストスクリプトプリンタへ送れば、プリントできる。
9) 合成された回路の、面積、クリテイカルパスの遅延時間とその経路を調べる。
Analysis -> Report
Timing, Reference, Areaをチェックして、Apply
リストより、
Combinational Area:
Total Cell Area:
クリティカルパス遅延:
Start point:
End point:を調べる。
10) 速度最小で合成する。
Attributes -> Optimization Constraints -> Design Constraints
Max Area の設定を消し、Apply
回路図上の出力ピンをクリックして選択する。
Attributes -> Optimization Constraints -> Timing Constraints
Maximum Delay の Rise Fall ともに 0.00 とし、Apply
Tool -> Design Optimization
デフォルトの設定でOK
これで、回路が合成される。
11) 7−9)を繰り返す。
下記の内容を含むレポートを提出する。