FPGA+DSP協(xié)同平臺(tái)設(shè)計(jì)之調(diào)試技巧和注意事項(xiàng)
作為雙芯片的協(xié)同系統(tǒng),調(diào)試的開始階段需要對(duì)每個(gè)芯片進(jìn)行單獨(dú)測(cè)試。這種情況下就需要避免另外一個(gè)芯片對(duì)調(diào)試產(chǎn)生影響,比較好的辦法就是讓它停止工作。
對(duì)于FPGA芯片,如果沒有進(jìn)行配置,那么所有的管腳都處于高阻狀態(tài)。由于高阻態(tài)沒有驅(qū)動(dòng)能力,所以不會(huì)對(duì)DSP產(chǎn)生直接的影響。但是在某些情況下,會(huì)產(chǎn)生間接的影響。
例如,很多DSP會(huì)在系統(tǒng)復(fù)位的時(shí)候讀取某些地址信號(hào)來確定啟動(dòng)后的工作模式。如果這些信號(hào)連接到了FPGA的管腳上,那么上電后這些信號(hào)就會(huì)處于不確定的狀態(tài)。如果處于錯(cuò)誤的電平狀態(tài),就會(huì)對(duì)DSP產(chǎn)生很大的影響。
解決的辦法就是通過上拉或者下拉電阻來保證這些處于高阻態(tài)的信號(hào)處于正常的狀態(tài),如圖11.10所示。這樣,在FPGA的管腳處于高阻狀態(tài)的時(shí)候,管腳會(huì)被上拉到高電平或者下拉到低電平。
圖1 雙端口RAM模塊
DSP芯片和FPGA芯片不同,即使在沒有進(jìn)行配置的情況下,有些管腳也會(huì)處于輸出狀態(tài),比如地址信號(hào)和控制信號(hào)。那么在單獨(dú)調(diào)試FPGA芯片的時(shí)候,就要考慮到這些管腳是否會(huì)對(duì)FPGA產(chǎn)生影響。
特別是沒有用到(unused)的FPGA管腳,有些系統(tǒng)默認(rèn)的狀態(tài)是低電平。這些管腳如果和DSP的輸出管腳連接到一起,就會(huì)出現(xiàn)總線的沖突情況。因此,在工程項(xiàng)目設(shè)置的時(shí)候,要將UNUSED PIN指定為高阻態(tài)或者INPUT模式。2 FPGA測(cè)試點(diǎn)的設(shè)計(jì)
FPGA芯片的管腳資源一般都很豐富,除了滿足系統(tǒng)應(yīng)用外,還會(huì)剩余部分管腳沒有指定功能。這些剩余的管腳用來做測(cè)試點(diǎn)會(huì)方便系統(tǒng)的調(diào)試。
例如,DSP的地址和數(shù)據(jù)信號(hào)都屬于高速信號(hào),如果直接在這些信號(hào)上加測(cè)試點(diǎn)測(cè)試會(huì)影響到信號(hào)的波形質(zhì)量。特別是BGA封裝的DSP芯片,這些管腳不能用示波器設(shè)備的探頭或表筆直接測(cè)量。而且,板上的測(cè)試點(diǎn)太多也會(huì)影響布線的質(zhì)量和美觀。
充分利用FPGA的靈活性,可以將需要測(cè)試的信號(hào)指定到某個(gè)測(cè)試點(diǎn)上。這樣就不需要直接測(cè)試這些信號(hào)點(diǎn),而是通過測(cè)試點(diǎn)進(jìn)行間接的測(cè)量。
如圖2所示,如果需要測(cè)試DSP的信號(hào)ADDR[15]和DATA[0],可以把這兩個(gè)信號(hào)在FPGA內(nèi)部指定到測(cè)試點(diǎn)T1、T2。只要直接測(cè)試T1、T2就可以了。
此外,這些測(cè)試點(diǎn)還可以用來做功能擴(kuò)展。因?yàn)檫@些測(cè)試點(diǎn)都是雙向的普通I/O,可以作為連接器信號(hào)和其他板卡或者系統(tǒng)互聯(lián)。
3 借助FPGA的內(nèi)部邏輯分析儀來輔助調(diào)試
在前面的章節(jié)中曾經(jīng)介紹過FPGA的內(nèi)部邏輯分析儀功能,如Altera公司的Signal TAPII和Xilinx公司的Chip Scope等。這些工具可以用來測(cè)試FPGA運(yùn)行狀態(tài)下信號(hào)的變化情況,特別是總線的運(yùn)行狀態(tài)。
在FPGA+DSP的系統(tǒng)中,DSP的很多信號(hào)需要連接到FPGA的管腳。利用內(nèi)部邏輯分析儀功能,就可以通過FPGA來觀察這些信號(hào)的時(shí)序和狀態(tài),提高了調(diào)試的可視化程度。
fpga相關(guān)文章:fpga是什么
評(píng)論