LastUpDate:16:32 2003/11/24 TOP
Verilog-HDLファイルの出力とSynopsysによる論理合成
以下の説明は旧バージョンのものです

●準備

Verilogとの連携を図るため、準備を行います。
メニューの[表示]-[オブジェクトIDの表示]を選択して、IDを表示させます。 Verilogのmodule名には、このIDが使用されます。

VerilogライブラリとしてROHM社製、0.35μmテクノロジを使用しています。

●Verilog-HDLファイルの出力

メニューの[ファイル]-[Verolog-HDLを出力]を選択し、出力先のディレクトリを指定します。

出力先のディレクトリに、[top module]名でフォルダが作成されます。

  • Delay Over Plus
    0.2と指定した場合、遅延が2割増しとなります。
  • Debug線の付加
    選択することで、選択分岐エラーを検出するためのDebug線が付加されます。
  • ●遅延なしのシミュレーション

    出力されるファイル
    Makefile言わずもがな、make、g++、コマンド必須。
    add.dctop module論理合成用dc_shellスクリプト
    add.vtop module
    add_sim.vシミュレーションmodule
    arbiter.vアービタmodule,必要なくてもとりあえず。
    delay.data遅延情報
    delay.v遅延module群。トランジション関数の遅延は入っていません
    delayadd.cppBUFによる遅延moduleを合成するためのコード、make dc時にコンパイルされる。
    kemmakixuhzi.vシミュレーションで使用されるウージとケムマキmodule。論理合成は行われない。
    muller_c.vmullerのC素子module。リセット時に0を出力するもの(muller_c_r)と1を出力するもの(muller_c_s)
    pipe.v制御線module群。入出力数で区分
    pjoint.v選択分岐や競合合流部分の接続module群
    trafunc.vトランジション関数module群。機能記述なので遅延なし
    transition.vトランジションmodule群
    udata*.txtウージデータ。*には番号が入る

    シミュレーションは

    % make

    により行います。
    ライブラリが見つからないといわれる場合は、Makefileを編集してください
    終わったらsignalscanで波形を確認しましょう。

    k_12_dが出力されるデータです。QROQS上でもIDは12でした。 データは、k_12_aの立ち上がりエッジの時間の時に有効になるので、 00001と有効データが出力されていることが分かります。

    また、ファイルkdata12.txtを見ることでも出力データを確認できます。

    ●Synopsysによる論理合成

    遅延時間を含めたシミュレーションのために、論理合成を行います。

    % make dc

    により、多少時間がかかりますが、合成を行います。詳細は、

    1.遅延付加スクリプトのコンパイル
    2.トランジション関数の論理合成
    3.レポートファイルより遅延時間を取得
    4.遅延モジュールの生成
    5.トランジション関数、遅延モジュールを含めたtop moduleの論理合成
    
    となっています。
    たくさんWarningが出ますが無視してください。

    合成後、ここまでで新たに出力されるファイルとして主なものは、
    add.reptop module合成結果レポートです。面積はここから取得してください
    add.vnet論理合成をおこなったtop module
    delay.vnetトランジション関数の遅延を加算し、遅延を偶数個のINVで構成した遅延module
    delayadd遅延module生成用コマンド
    kdata*.txtケムマキに出力されるデータ。*にはIDが入る.

    ●遅延を含めたシミュレーション

    % make sim

    により、シミュレーションを行います。
    結果は先ほどと同じように、波形及びデータ出力ファイルで確認して下さい。


    Copyright(C)2002-2003 sakamoto All Rights Reserved.