安防之家訊: 本文將通過(guò)ADSP-TS101這款芯片為例簡(jiǎn)要說(shuō)明一下數(shù)字信號(hào)處理的fpga實(shí)現(xiàn)過(guò)程。為了完成配置FPGA的時(shí)序,需要DSP有靈活可控的引腳信號(hào)。而ADSP-TS101的4個(gè)標(biāo)志引腳信號(hào)FLAG3~FLAG0允許在A(yíng)DSP-TS101和其他的設(shè)備之間傳遞位信號(hào)。任何一個(gè)標(biāo)志引腳既可以作為輸入也可以作為輸出,且ADSP -TS101的許多指令都可以以標(biāo)志引腳的輸入作為執(zhí)行條件,可以在多處理器和其他接口之間進(jìn)行高效的通信和同步。因此,可以將此4個(gè)管腳和FPGA進(jìn)行連接,模擬完成FPGA的配置時(shí)序。
存儲(chǔ)芯片選用Spansion公司的高性能FLASH芯片S29JL064H,最小訪(fǎng)問(wèn)周期為55 ns,其可以配置成8M×8 b的存儲(chǔ)方式。而Virtex-Ⅱ系列FPGA的配置數(shù)據(jù)包括配置數(shù)據(jù)幀和配置寄存器數(shù)據(jù),配置寄存器數(shù)據(jù)都為40×32 b,即1 280 b,配置數(shù)據(jù)幀會(huì)因器件不同而有變化,對(duì)于XC2V1000器件來(lái)說(shuō),配置數(shù)據(jù)幀為4 082 592 b,總的配置數(shù)據(jù)不到4 Mb。所以,此存儲(chǔ)芯片完全可以滿(mǎn)足FPGA和DSP程序的存儲(chǔ)。對(duì)于FLASH存儲(chǔ)空間的劃分,采用一分為二的方法,DSP和FPGA程序各占一半空間。即,從地址0
x00000~0
x3FFFFF這4 MB空間用來(lái)存儲(chǔ)DSP程序,剩余的4MB空間0
x400000~0
x7FFFFF存儲(chǔ)FPGA程序。
由DSP的RD信號(hào)充當(dāng)FPGA的配置時(shí)鐘CCLK,F(xiàn)LAG0信號(hào)模擬FPGA的PROG_B信號(hào),F(xiàn)LAG1和FLAG2分別作為FPGA的DONE信號(hào)和BUSY信號(hào)的輸入。此系統(tǒng)在設(shè)計(jì)時(shí),采用了DSP,F(xiàn)PGA,F(xiàn)LASH共用數(shù)據(jù)總線(xiàn)的方式,所以當(dāng)DSP從FLASH芯片中讀取FPGA的加載數(shù)據(jù)并出現(xiàn)在總線(xiàn)上的時(shí)候,可以直接被FPGA抓取來(lái)完成FPGA程序的正常加載。系統(tǒng)上電后,DSP啟動(dòng)DMA通道0,從FLASH地址0開(kāi)始,把一個(gè)256 word的程序塊傳送到內(nèi)部存儲(chǔ)器地址0
x00~0
xFF。然后,DSP開(kāi)始從0
x00執(zhí)行加載核,加載核將后續(xù)應(yīng)用代碼和數(shù)據(jù)加載至地址0
xFF之后的內(nèi)部存儲(chǔ)器內(nèi)。最后,加載核啟動(dòng)一個(gè)256 word的DMA,使其自身被工作程序代碼覆蓋。至此,DSP即從地址0
x00開(kāi)始執(zhí)行工作程序。在工作程序中首先從FLASH存儲(chǔ)器中讀取FPGA的加載程序,并給出相應(yīng)的加載時(shí)序,完成FPGA程序加載。以上就是關(guān)于數(shù)字信號(hào)處理的fpga實(shí)現(xiàn)的一個(gè)簡(jiǎn)單的例子,希望對(duì)大家有幫助。
安防之家專(zhuān)注于各種
家居的安防,
監(jiān)控,
防盜,安防監(jiān)控,安防器材,安防設(shè)備的新聞資訊和O2O電商導(dǎo)購(gòu)服務(wù),敬請(qǐng)登陸安防之家:http://anfang.jc68.com/