XST
XST
のBlock RAMへのロジックのマップを確かめる
(XST
にはロジックをBlock Select RAMへ割り当てるディレクティブ bram_map がある。Spartan3E Starter Kit
のDDR SDRAMコントローラ・バーストテスト用インプリメントのうちのcontroller.v にbram_map
ディレクティブをつけてみてやってみた。結果はBRAMにマップされなかった)
XST
のBlock RAMへのロジックのマップを確かめる2
(Xilinxからサンプルを取ってきて、
examples_v9\FPGA_Optimization\mapping_logic_onto_block_ram
のうちのbram_map_1.vhd をインプリメントしてみた。これはBRAMにマップされた)
XST
のBlock RAMへのロジックのマップを確かめる3
(今
回は簡単なステートマシンをBRAMへマップしてみる。ステートマシンをBRAMへマップしたいというのが今回の目的だ。いつものalways文を2つ使
用するステートマシンはBRAMにマップできなかったが、always文を1つ使用するステートマシンはBRAMにマップできた)
Chipscope Pro
Core Inserterを入れる際の便利なオプション
XST
のプロパティの -netlist_hierarchyの値をAs
OptimizedからRebuiltに変更すると、階層が再構築されてネットが見やすくなる。ChipScopeがかけやすくなる。これは、
ChipScopeを入れなくてもRebuiltに変更した方が良い。
XSTでインス
タンスをキープする(S属性)
XSTでネット名をキープする方法にはKEEP属性があったが、ネット名をキープしてくれない
ことも多い。当然インスタンスも名前がなくなっている。そんな時にS属性(S制約)を指定すると、FFが残ってくれる。最適化を抑制してくれる
XST に Dual
Port Memory を推論させる (Verilog HDL)
XST に Dual Port Memory を推論させようと思い、Verilog
HDL のコードを書いて、XST
で論理合成、そしてインプリメントを行った。使用するFPGAはZynq-7020、使用するISEのバージョンは14.7。