2013-10-14 105 views
0

我在VHDL程序中使用FOR-GENERATE和IF-GENERATE。這些命令是否可合成? 這些命令的優點和缺點是什麼。 我們可以在IF-GENERATE中使用FOR-GENERATE嗎? 因爲當我在IF-GENERATE中使用FOR-GENERATE時,它會產生一個錯誤在VHDL中合成FOR-GENERATE

+1

生成語句肯定是可綜合的,也可以是它們的任意組合。執行for-generate語句時出現的一個非常常見的錯誤與處理語句中的信號有關。發佈您的代碼,我們將會看到... – BennyBarns

回答

1

這些命令是否可綜合?
是的,如果你正確使用它們,它們是可綜合的。

優勢,這些命令的缺點
爲優勢,生成語句可以很容易地創建wellpatterned結構。有關缺點,請參閱下面的@ BennyBarns的評論。

我們可以在IF-GENERATE中使用FOR-GENERATE嗎?
任何VHDL併發語句都可以包含在GENERATE語句中,包括另一個GENERATE語句。


[LRM93 $ 9.7]

generation_scheme :: =
爲generate_parameter_speci網絡陽離子
|如果創建條件

隨着FOR方案
1.所有對象都是相似的。
2.Loop不能提前終止。

使用IF方案
1.允許有條件地創建組件。
2.不能使用ELSE或ELSIF子句。

+0

生成聲明本身不需要任何費用。只有您實例化的代碼(可能在for-generate-statement中反覆使用)當然會使用資源。 – BennyBarns