新聞中心

EEPW首頁(yè) > EDA/PCB > 設(shè)計(jì)應(yīng)用 > 基于FPGA+DSP導(dǎo)引頭信號(hào)處理中FPGA設(shè)計(jì)的關(guān)鍵技術(shù)

基于FPGA+DSP導(dǎo)引頭信號(hào)處理中FPGA設(shè)計(jì)的關(guān)鍵技術(shù)

作者: 時(shí)間:2012-03-28 來(lái)源:網(wǎng)絡(luò) 收藏

3.1.2跨R寸鐘域的處理

現(xiàn)代IC與設(shè)計(jì)巾使用的綜合工具可以保證設(shè)計(jì)能滿足每個(gè)數(shù)字電路觸發(fā)器對(duì)建立與保持時(shí)間的要求。然而,異步信號(hào)卻給軟件提出了難題。對(duì)新的時(shí)鐘域米說(shuō).從其它時(shí)鐘域傳柬的信號(hào)是異步的。大多數(shù)綜合丁具在判定算步信號(hào)是否滿足觸發(fā)器時(shí)序要求時(shí)遇到了麻煩。因?yàn)樗鼈儾荒艽_定觸發(fā)器處于非穩(wěn)態(tài)的時(shí)間,所以它們也就不能確定從一個(gè)觸發(fā)器通過(guò)組合邏輯到達(dá)下一個(gè)觸發(fā)器的總延遲時(shí)間。所以,最好的辦法是使用一些電路來(lái)減輕異步信號(hào)的影響。

同步措施歸納起來(lái)主要有兩方面,

1)對(duì)于跨越時(shí)鐘域控制信號(hào),用同步器來(lái)實(shí)現(xiàn)同步;

為了使同步。工作能正常進(jìn)行,從某個(gè)時(shí)鐘域傳來(lái)的信號(hào)應(yīng)先通過(guò)原時(shí)鐘域上的一個(gè)觸發(fā)器,然后不經(jīng)過(guò)兩個(gè)時(shí)鐘域間的任何組合邏輯,直接進(jìn)入同步器的第一個(gè)觸發(fā)器中(圖3)。這一要求非常重要,因?yàn)橥狡鞯牡谝患?jí)觸發(fā)器對(duì)組合邏輯所產(chǎn)生的毛刺非常敏感。如果一個(gè)足夠長(zhǎng)的信號(hào)毛刺正好滿足建立一保持時(shí)問(wèn)的要求,則同步器的第一級(jí)觸發(fā)器會(huì)將其放行,給新時(shí)鐘域的后續(xù)邏輯送出一個(gè)虛假的信號(hào)。

9.jpg
圖3同步器示意

一個(gè)經(jīng)同步后的信號(hào)在兩個(gè)時(shí)鐘沿以后就成為新時(shí)鐘域中的有效信號(hào)。信號(hào)的延遲是新時(shí)鐘域中的一到兩個(gè)時(shí)鐘周期。一種粗略的估算方法是同步器電路在新時(shí)鐘域中造成兩個(gè)時(shí)鐘周期的延遲,設(shè)計(jì)者需要考慮同步延遲將對(duì)跨時(shí)鐘域的信號(hào)時(shí)序造成的影響。

2)對(duì)于跨越時(shí)鐘域的數(shù)據(jù)總線,要通過(guò)FIFO或RAM達(dá)到同步的目的。

數(shù)據(jù)在時(shí)鐘域之間的傳遞是多個(gè)隨機(jī)變化的控制信號(hào)在時(shí)鐘域之間傳遞的一種實(shí)例。這種情況下,用同步器米處理同步問(wèn)題往往不能收到滿意的效果,因?yàn)槎辔粩?shù)據(jù)的變化將會(huì)使同步器的采樣錯(cuò)誤率大大增加。常用的數(shù)據(jù)同步方法有兩種:一種是用握手信號(hào);另一種是用FIFO,一個(gè)時(shí)鐘存數(shù)據(jù)。另一個(gè)時(shí)鐘取數(shù)據(jù)。

時(shí)鐘域之間的數(shù)據(jù)傳輸用得最多的是FIFO,采用Xilinx自帶的FIFO核來(lái)實(shí)現(xiàn)比較簡(jiǎn)單方便,圖4足Xilinx提供的FIFO核的一個(gè)簡(jiǎn)單的示意圖.wclk為寫(xiě)時(shí)鐘,rclk為讀時(shí)鐘,F(xiàn)IFO深度通過(guò)讀寫(xiě)使能wen和ren控制。

10.jpg
圖4 FIFO核示意圖

3.2、數(shù)據(jù)交互

實(shí)際應(yīng)用過(guò)程中,程序設(shè)計(jì)往往是由不同的設(shè)計(jì)人員分工完成,在最后系統(tǒng)聯(lián)調(diào)時(shí),這兩者之間的數(shù)據(jù)傳輸經(jīng)常占用大量的調(diào)試時(shí)間,成為約束工程進(jìn)度的關(guān)鍵兇素。因此,與FPGA間接口和傳輸方式的選擇與設(shè)計(jì),是系統(tǒng)設(shè)計(jì)中必須要考惑的問(wèn)題。

的一個(gè)特點(diǎn)是,F(xiàn)PGA要傳輸給DSP的數(shù)據(jù)比較多,需要傳遞幅度信息,和差支路數(shù)據(jù)等十幾組數(shù)據(jù).每組數(shù)據(jù)長(zhǎng)度在512~2K,而且讀取速度要求也比較高,一般要求百兆以上的讀取頻率。經(jīng)過(guò)工程實(shí)踐表明,采用通過(guò)EDMA通道同步讀取FIFO的方式實(shí)現(xiàn)通信是非常有效的方法。但是接口處的FIFO比較多,而且讀取速度有比較高,這勢(shì)必導(dǎo)致FPGA內(nèi)部對(duì)接口處資源的競(jìng)爭(zhēng),甚至?xí)?dǎo)致時(shí)序的不滿足。在實(shí)際工程調(diào)試中表現(xiàn)在DSP接收到的數(shù)據(jù)亂序,周期循環(huán)甚至亂碼。

要解決好FPGA和DSP的數(shù)據(jù)交互問(wèn)題,要注意以下兩個(gè)方面。



評(píng)論


相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉