ispMACH 4000系列CPLD優(yōu)化參數(shù)指南
Lattice ispLEVER開發(fā)工具中關(guān)于ispMACH4000系列CPLD的一些常用constraint選項(xiàng)要點(diǎn)如下:
1. Dt_synthesisEDA
Yes: 允許fitter使用宏單元中的T觸發(fā)器來節(jié)省乘積項(xiàng)(PT )資源。建議選Yes。
2. Xor_synthesis
Yes: 允許fitter使用宏單元中的硬XOR門來節(jié)省乘積項(xiàng)(PT )資源。
當(dāng)寄存器的輸入包含異步輸入引腳信號時,由于目前ispLEVER版本優(yōu)化時考慮不夠全面,應(yīng)避免使用Yes選項(xiàng)。否則,最好選Yes。
3. Nodes_collapsing_mode
Fmax: 該選項(xiàng)以速度性能為目標(biāo)來優(yōu)化邏輯。
Area: 該選項(xiàng)以最佳資源利用率為目標(biāo)來優(yōu)化邏輯。
Speed: 該選項(xiàng)以速度性能為目標(biāo)且兼顧資源利用率來優(yōu)化邏輯。
一般情況下,如果沒有性能要求時,而宏單元占用較多時,可考慮Area選項(xiàng),尤其當(dāng)Utilize Clock Enable選為No時。如果性能要求為首選時,可先考慮Fmax選項(xiàng)。而Speed選項(xiàng)在性能上接近Fmax選項(xiàng),但資源利用率比Fmax選項(xiàng)好。以上選擇方法適合大多數(shù)情況,但具體設(shè)計(jì)對這三種選項(xiàng)都作嘗試,仍不失為可取的設(shè)計(jì)流程。
4. Max_pterm_collapse
該選項(xiàng)是指每個宏單元使用的最大乘積項(xiàng)數(shù)目。
一般情況下,選缺省值。如宏單元數(shù)未超過器件最大值,但fit失敗,可適當(dāng)降低該值,或與Max_fanin結(jié)合考慮。
5. Max_fanin
該選項(xiàng)是指每個宏單元的最多扇入數(shù)目。
一般情況下,選缺省值。如宏單元數(shù)未超過器件最大值,但fit失?。ㄈ鏸spLEVER提示某GLB輸入數(shù)超過36),可適當(dāng)降低該值,如選16,或與Max_pterm_collapse結(jié)合考慮。
6. Max_fanin_limit
要針對Fmax優(yōu)化模式。
若由于關(guān)鍵路徑的信號邏輯過于復(fù)雜使其扇入數(shù)目過多而引起fit失敗,可適當(dāng)降低該值,如選20。
7. Max_pterm_limitEDA
要針對Fmax優(yōu)化模式。
若由于關(guān)鍵路徑的信號邏輯過于復(fù)雜使其乘積項(xiàng)過多而引起fit失敗,可適當(dāng)降低該值,如選20。
Max_pterm_limit和Max_fanin對布通率的影響如下:若引腳鎖定且設(shè)計(jì)所用的occupied macrocell數(shù)與器件的最大值有一定余量的情況下fit 失敗,可適當(dāng)降低Collapsing Max. Product Term和Collapsing Max. Input的值,以便于通過fit。也就是說,若fit沒通過,可逐漸(分別)降低該兩項(xiàng)值(只要macrocell數(shù)沒超出器件允許值),來方便fit的布局和布線。例如,對ispMACH4000器件,一般來說,Collapsing Max. Product Term取16左右而Collapsing Max. Input取20左右時,有助于fit通過。但它有可能以犧牲性能為代價(jià)。
8. Clock_enable_optimization
一般選擇Keep_all來節(jié)省資源(即較少的Product Term和Macro Cell),但有時會對速度有一定影響。
9. Auto_buffering_for_high_glb_fanin
當(dāng)出現(xiàn)GLB的扇入數(shù)目過高,fitter會嘗試自動加buffer來降低其扇入數(shù),但這會增加延遲。
若引腳鎖定時fit失敗,尤其是許多輸出信號邏輯很復(fù)雜,可考慮選On。
10. Auto_buffering_for_low_bonded_io
要針對使用輸入寄存器的場合(尤其使用256MC/64IO)。
若設(shè)計(jì)中使用輸入寄存器,并且將輸入寄存器鎖定到固定GLB,或輸入寄存器較多且引腳鎖定,從而導(dǎo)致fit失敗,可選擇On,但這會增加延遲。
來源:ks990次





