復(fù)位設(shè)計(jì)中的結(jié)構(gòu)性缺陷及解決方案(二)
* 如果動(dòng)態(tài)功耗不是問題,用戶可以在mod_clk域邏輯開始運(yùn)作之前很長時(shí)間在啟動(dòng)代碼選擇啟用mod_clk. 因此,復(fù)位去斷言將有足夠的時(shí)間傳播。
* 這也可以在軟件中處理,在任何有效操作之前啟用了mod_clk后,設(shè)置兩三個(gè)mod_clk周期的延遲。
由于罕見的時(shí)鐘路徑導(dǎo)致復(fù)位去斷言時(shí)序問題
1. 問題
設(shè)計(jì)的復(fù)位架構(gòu)根據(jù)系統(tǒng)而不同。在一些安全關(guān)鍵設(shè)備中,整個(gè)復(fù)位狀態(tài)機(jī)在安全時(shí)鐘上工作,安全時(shí)鐘默認(rèn)啟用。 該時(shí)鐘也被用作設(shè)備的默認(rèn)系統(tǒng)時(shí)鐘。
圖13:罕見時(shí)鐘路徑的問題
在上圖中,復(fù)位狀態(tài)機(jī)(R觸發(fā)器)在default_clk上工作。此外,在復(fù)位去斷言過程中,default_clk是sys clk的源。因此,在邏輯上,這兩個(gè)時(shí)鐘(clk1和clk2)在復(fù)位去斷言過程中同步。但是,由于clk1和clk2之間存在巨大的罕見路徑,因此很難平衡這兩個(gè)時(shí)鐘并視其為同步。 因此,滿足A觸發(fā)器的復(fù)位去斷言變得具有挑戰(zhàn)性。
2. 解決方案
異步對待clk1和clk2,并在A觸發(fā)器中使用復(fù)位之前放置復(fù)位同步器?,F(xiàn)在需要從S2--》A滿足復(fù)位去斷言時(shí)序(見圖14)。這不應(yīng)是個(gè)問題。
圖14:解決方案
結(jié)束語
這部分主要專注于復(fù)位設(shè)計(jì)中的故障以及克服這些問題的可能的解決方案。然而,上述解決方案并非唯一的解決方案,也不普遍適用于所有設(shè)計(jì)。這些是一些通用的解決方案和建議的指導(dǎo)方針,在特殊情況下可能需要進(jìn)行修改。在這些情況下,此類問題不僅導(dǎo)致功能故障,還會(huì)增加一些額外的調(diào)試時(shí)間和工作,從而增加執(zhí)行周期時(shí)間。因此,設(shè)計(jì)人員需要在設(shè)計(jì)的早期階段考慮此類問題。
評論