SEM IP是一種比較特殊的IP。它的基本工作就是不停地后臺掃描檢測FPGA配置RAM中的數(shù)據(jù),一旦發(fā)現(xiàn)這些數(shù)據(jù)與預(yù)期值不符,即發(fā)出警告或者盡可能的修正。這個(gè)持續(xù)不斷的RAM掃描動(dòng)作帶來的負(fù)面影響,除了一些后臺資源的占用,就是產(chǎn)生了一定量噪聲。
噪聲的沖突
絕大多數(shù)設(shè)計(jì)里面SEM的噪聲完全可以忽略不計(jì);但是仍有部分高速應(yīng)用比如HSSIO和memory,可能會(huì)受到一定干擾。比較典型的一個(gè)例子是Spartan-6. 如果Spartan-6使用了其上的GTP核,或者其GPIO通道達(dá)到了300Mbps以上,但是鏈路裕量小于500ps,那么這些高速通道有可能會(huì)受到SEM(或者POST_CRC)掃描噪聲的影響而出現(xiàn)誤碼。如果你的設(shè)計(jì)符合上述情況,那么解決方法就是:關(guān)閉POST_CRC功能,升級至Spartan-6最新的SEM IP版本3.4,然后根據(jù)具體情況,關(guān)閉掉所使用的GTP區(qū)域的掃描。這樣做的代價(jià)是損失了GTP所在這一行資源的SEU保護(hù)。其他系列的HSSIO沒有類似影響。
另外一個(gè)例子,是UltraScale/+系列的Memory Controller。Memory Controller初始化的時(shí)候,需要在PHY中運(yùn)行BIST(Built-In Self Test),根據(jù)溫度和電壓計(jì)算內(nèi)部skew;其后還會(huì)對讀寫通道做時(shí)序校正,因此對精度要求較高。如果在此階段SEM IP就開始了內(nèi)部掃描,噪聲就有可能干擾校正的精度和準(zhǔn)確性,造成MIG calibration失敗。我們的推薦做法是延遲SEM IP的工作開始。做法很簡單,給SEM IP的icap_clk前加上一個(gè)BUFGCE, 使能端口CE默認(rèn)為低,這樣IP沒有時(shí)鐘,工作也就不會(huì)開始。直到MIG calibration全部正確完成,控制打開CE端即可。需要注意的是,一旦CE端口打開,就不能再次關(guān)閉,否則有可能造成SEM IP工作異常。如果不再需要SEM功能,可以徹底關(guān)閉CE端口,或者通過指令把SEM IP置入IDLE狀態(tài)。
資源的沖突
SEM IP的正確工作依賴核心接口原語ICAP。因此IP與其他邏輯的沖突也主要集中在ICAP的使用權(quán)爭奪上。最常見的沖突就是在動(dòng)態(tài)重配置的設(shè)計(jì)中使用了IP。動(dòng)態(tài)重配置的核心原語同樣是ICAP,所以SEM IP和Partial Reconfiguration不能同時(shí)工作。此種設(shè)計(jì)需要考慮‘時(shí)分復(fù)用’的方法,即需要?jiǎng)討B(tài)重配置的時(shí)候,Partial接管ICAP的控制權(quán),同于把SEM IP置入IDLE狀態(tài)。等到重配工作全部完成,ICAP遞交回給SEM IP。但是由于配置數(shù)據(jù)已經(jīng)部分改變,IP中存儲(chǔ)的黃金校驗(yàn)值已經(jīng)失效。 因此我們需要先重新初始化SEM IP,然后它才能繼續(xù)正常工作。
資源類型的沖突也常表現(xiàn)為SEM IP自我初始化失敗,這其實(shí)也是得不到ICAP控制權(quán)的一個(gè)結(jié)果。比如設(shè)計(jì)里面使用了Partial,或者M(jìn)ultiBoot,但是默認(rèn)FPGA配置完成后把ICAP控制權(quán)分配給這些邏輯,那么SEM IP在初次查詢ICAP接口時(shí)就會(huì)失敗,從而導(dǎo)致IP初始化異常。 但是只要正常釋放ICAP控制權(quán),IP就可以開始工作了。
以上為幾種常見的沖突情況。如果你碰到更多的異常,歡迎到中文論壇咨詢。
審核編輯:湯梓紅
-
FPGA
+關(guān)注
關(guān)注
1626文章
21678瀏覽量
602004 -
噪聲
+關(guān)注
關(guān)注
13文章
1118瀏覽量
47372 -
SEM
+關(guān)注
關(guān)注
0文章
206瀏覽量
14426 -
PHY
+關(guān)注
關(guān)注
2文章
301瀏覽量
51700
發(fā)布評論請先 登錄
相關(guān)推薦
評論