<?xml version="1.0" encoding="UTF-8" ?><rdf:RDF 
  xmlns="http://purl.org/rss/1.0/"
  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  xmlns:atom="http://www.w3.org/2005/Atom"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xml:lang="ja">
  <channel rdf:about="http://w.atwiki.jp/verilog/">
    <title>my-memo</title>
    <link>http://w.atwiki.jp/verilog/</link>
    <atom:link href="https://w.atwiki.jp/verilog/rss10.xml" rel="self" type="application/rss+xml" />
    <atom:link rel="hub" href="https://pubsubhubbub.appspot.com" />
    <description>my-memo</description>

    <dc:language>ja</dc:language>
    <dc:date>2007-10-05T18:15:21+09:00</dc:date>
    <utime>1191575721</utime>

    <items>
      <rdf:Seq>
                <rdf:li rdf:resource="https://w.atwiki.jp/verilog/pages/24.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/verilog/pages/23.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/verilog/pages/22.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/verilog/pages/21.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/verilog/pages/20.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/verilog/pages/19.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/verilog/pages/18.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/verilog/pages/17.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/verilog/pages/16.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/verilog/pages/15.html" />
              </rdf:Seq>
    </items>
	
		
    
  </channel>
    <item rdf:about="https://w.atwiki.jp/verilog/pages/24.html">
    <title>STAメモ</title>
    <link>https://w.atwiki.jp/verilog/pages/24.html</link>
    <description>
      -クロック宣言
 create_clock -name CLKA -period 10 -waveform { 0 6 } CLKA
 ポートCLKAにCLKAという名前で1サイクル10ns立ち上がり0ns,
 立下りが6nsのクロックを生成
 
 create_clock -name CK_B -period 20 -waveform { 0 10 } CLKB
 ポートCLKBにCK_Bという名前で1サイクル20ns立ち上がり0ns,
 立下りが10nsのクロックを生成
 
 set_propagated_clock [all_clocks]
 上で定義したCLKA, CK_Bはクロックスキュー(CLKAとCK_Bのクロッ
 クピンにおける位相差)がない理想クロックの状態だが
 set_propagated_clockにより実際のクロック遅延が加わる。
 
 set_clock_uncertaity
----
[[トップページ]]    </description>
    <dc:date>2007-10-05T18:15:21+09:00</dc:date>
    <utime>1191575721</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/verilog/pages/23.html">
    <title>modelsimメモ書き</title>
    <link>https://w.atwiki.jp/verilog/pages/23.html</link>
    <description>
      **コンパイル + シミュレーション
 vcom RTLファイル
 vsim TOPモジュール
 ...

**ライブラリ作成
 
 * ライブラリNEWLIBを作成してパッケージPAC_AをNEWLIBに登録。
 vlib NEWLIB
 vmap NEWLIB NEWLIB
 vcom パッケージのファイル名 -work NEWLIB
----
[[トップページ]]    </description>
    <dc:date>2007-08-31T11:28:17+09:00</dc:date>
    <utime>1188527297</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/verilog/pages/22.html">
    <title>Synopsys-DesignCompilerメモ書き</title>
    <link>https://w.atwiki.jp/verilog/pages/22.html</link>
    <description>
      **RTL読み込み～合成
 read -f verilog -rtl {TOP.v TEST1.v TEST2.v }
 current_design TOP
 link
 compile
 write -f verilog -h -o TOP_gate.v
 quit

 *下位モジュールを#()で呼び出しているとき
 
 analyze -f verilog {TOP.v TEST1.v TEST2.v}
 elaborate TOP
 link
 compile
 write -f verilog -h -o TOP_gate.v
 quit
**接続
 create_cell [インスタンス名] [セル名]
 create_net  [wire名]
 connect_net [wire名] [接続するpin, port]
 disconnect_net [wire名] [接続を切り離すpin, port]
 (例)
**remove_design
 read -f verilog -netlist TOP_gate.v 
 /* ファイルがネットリストのときは-netlist指定 */
 current_design TOP
 remove_design -h TEST1
 /*  TEST1階層以下全てを削除 */
 remove_design  TEST2
 /*  TEST2階層のみ削除 */

----
[[トップページ]]    </description>
    <dc:date>2007-08-23T13:55:14+09:00</dc:date>
    <utime>1187844914</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/verilog/pages/21.html">
    <title>tcl</title>
    <link>https://w.atwiki.jp/verilog/pages/21.html</link>
    <description>
      **foreach
 #!/usr/bin/tcl
 set list { watasi ha tensai }
 
 foreach list_val $list {
    puts $list_val
 }

**while
 #!/usr/bin/tcl
 set x 1
 while {$x &lt;= 5} {
	puts $x
	incr x
 }

**for
 for {set i 0} { $i &lt; 10 } {incr i } {
    puts $i
 }
 
 for {set j 9} { $j &gt;= 0 } {incr i -1} {
    puts $j
 }

----
[[トップページ]]    </description>
    <dc:date>2007-08-16T11:52:02+09:00</dc:date>
    <utime>1187232722</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/verilog/pages/20.html">
    <title>RTL-Compilerメモ書き</title>
    <link>https://w.atwiki.jp/verilog/pages/20.html</link>
    <description>
      **新しいインスタンスを追加、接続。
 ### セル BUF_1、インスタンス名 inst1 をTOPモジュールに追加。
 edit_netlist new_instance -name &quot;inst1&quot; BUF_1 TOP
 
 ### セル MUX_1、インスタンス名 inst2 をTOPモジュールに追加。
 edit_netlist new_instance -name &quot;inst2&quot; MUX_1 TOP
 edit_netlist connect inst1/A inst2/Z

**mux記述のRTLに対して複合セルではなくmuxで合成を行う。

 ### スクリプトの頭の方に以下を追加。
 set hdl_case_bmux 1
 set hdl_binary_mux_threshold 0
 
 ### elaborate後に以下を追加。
 
 ### muxに合成したいモジュールを指定。
 set mux_module_list &quot; \
 module1 \
 module2 \ 
 &quot;
 
 foreach mux_module_list $mux_module_list {
   puts ${mux_module_list}
   edit_netlist dedicate_subdesign [find / -inst ${mux_module_list} ]
   set_attr map_to_mux true [find / -inst ${mux_module_list}/mux* ]
 }

----
[[トップページ]]    </description>
    <dc:date>2007-08-16T13:18:33+09:00</dc:date>
    <utime>1187237913</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/verilog/pages/19.html">
    <title>Perlからpsqlのデータベースに接続</title>
    <link>https://w.atwiki.jp/verilog/pages/19.html</link>
    <description>
       #!/usr/bin/perl
 use Pg;
 
 # DATABASEへの接続を開始
 # USERNAME, DBNAME, PASSWORDを編集してください。
 $conn = Pg::connectdb(&quot;user=USERNAME dbname=DBNAME password=PASSWORD&quot;);
 
 # SELECT文を編集してください。
 $sql = &quot;select * from TABLENAME&quot;;
 
 # コマンドの引渡し
 $result = $conn-&gt;exec($sql);
 
 # 行、列の値を取得。 
 $row = $result-&gt;ntuples;
 $field = $result-&gt;nfields;
 
 for my $i( 0..($row-1) ) {
   for my $j( 0..($field-1) ) {
      print $result-&gt;getvalue($i, $j), &quot;\t|\t&quot; ;
   }
   print &quot;\n&quot;;
 }
----
[[トップページ]]    </description>
    <dc:date>2007-08-16T10:31:08+09:00</dc:date>
    <utime>1187227868</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/verilog/pages/18.html">
    <title>cvs</title>
    <link>https://w.atwiki.jp/verilog/pages/18.html</link>
    <description>
      *バージョン管理ソフト cvs
**初期設定
-環境変数の設定
 #.cshrc
 setenv CVSROOT     $HOME/CVS_DB
 setenv CVSEDITOR  &quot;/usr/bin/vim&quot;
-リポジトリ作成
 cd
 mkdir CVS_DB
 cvs init
**使用方法
-プロジェクトの登録
 cd [プロジェクトのあるディレクトリ]
 cvs import project1 vox start
-以下のコメントを編集。
 CVS: ----------------------------------------------------------------------
 CVS: Enter Log.  Lines beginning with `CVS:&#039; are removed automatically
 CVS:
 CVS: ----------------------------------------------------------------------
-無視するファイル指定
 cvs import -m &quot;Imported musi.pm&quot; project1 vox start
 cvs import -I *.pl project1
 (拡張子.plのファイルを無視)
-プロジェクトの呼び出し
 cvs checkout -d project1 project1
-修正バージョンの登録
 ファイルの先頭に以下を追加。
 /*
 * $Log: $
 */
 ↑の他には以下がある。
 $Revision:$ ... リビジョン
 $Date:$ ... 最終コミットの日付
 $Id:$ ... ファイル名、リビジョン、日付、作者
 
 以下のコマンドで登録
 cvs commit
-モジュール開放 &amp; ディレクトリ削除
 cvs release -d
-バージョン確認
 cvs status
-ログ確認
 cvs log filename
-最新バージョンに更新
 cvs update
-プロジェクトと情報確認
 cvs checkout -p project1 |&amp; less
 バージョン 1.1 のファイルを確認    </description>
    <dc:date>2007-08-28T11:55:01+09:00</dc:date>
    <utime>1188269701</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/verilog/pages/17.html">
    <title>リンク</title>
    <link>https://w.atwiki.jp/verilog/pages/17.html</link>
    <description>
      [[セキュリティ用語&gt;http://www.axio.co.jp/yogo/security/index.html]]
[[ネットワーク用語&gt;http://sv.nichibun.net/yogo/net_dic.html]]
----
[[トップページ]]    </description>
    <dc:date>2007-08-16T10:29:53+09:00</dc:date>
    <utime>1187227793</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/verilog/pages/16.html">
    <title>1行perl</title>
    <link>https://w.atwiki.jp/verilog/pages/16.html</link>
    <description>
      シェルからperlを実行する例。
 perl -e &#039;print &quot;ababa\n&quot;&#039;
 ababa
ファイル中の文字列&quot;ababa&quot;を&quot;kapapa&quot;に変換する。
 perl -pe &#039;s/ababa/kapapa/g&#039; &lt; [filename]
ファイル中の文字列&quot;ababa&quot;を&quot;kapapa&quot;に変換して上書き、
バックアップを.bakという名前で保存。
 perl -pi.bak -e &#039;s/ababa/kapapa/g&#039; [filename]
ファイル中の文字列&quot;ababa&quot;を&quot;kapapa&quot;に変換して上書き。
 perl -pi -e &#039;s/ababa/kapapa/g&#039; [filename]
オートスプリットモードを使用。
スプリットした結果は@Fに詰め込まれる。
 perl -ane &#039;foreach(@F){print &quot;$_\n&quot;;}&#039; &lt; [filename]
#right(){[[topへ&gt;トップページ]]}    </description>
    <dc:date>2007-03-22T12:59:40+09:00</dc:date>
    <utime>1174535980</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/verilog/pages/15.html">
    <title>path</title>
    <link>https://w.atwiki.jp/verilog/pages/15.html</link>
    <description>
      *pathの設定

$HOME/abababaの下の実行ファイルababa.batにパスを通す。
 
 set path=($path $HOME/abababa)
 ababa.bat
----
#right(){[[topへ&gt;トップページ]]}    </description>
    <dc:date>2007-08-16T10:28:46+09:00</dc:date>
    <utime>1187227726</utime>
  </item>
  </rdf:RDF>
