新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > SPI-4接口的數(shù)據(jù)處理

SPI-4接口的數(shù)據(jù)處理

作者: 時間:2011-12-22 來源:網(wǎng)絡(luò) 收藏
從圖1所示的系統(tǒng)框圖中可以看出內(nèi)部處理是相當復(fù)雜的,為了讓讀者更好地了解接口的設(shè)計過程,筆者在框圖中劃分了內(nèi)部處理模塊,即分為LO接口處理模塊、用戶FIFO和參數(shù)配置3大部分。其中最關(guān)鍵的部分是I/O接口處理,它把高速數(shù)據(jù)在FPGA內(nèi)部利用Virtex-5器件內(nèi)部ISERDES、OSERDES和IODELAY資源進行了串并轉(zhuǎn)換和DPA(動態(tài)相位對齊)。

  圖1 Xilinx SPL-4解決方案框圖

  (1)Sink Core I/0接口設(shè)計

  對于數(shù)據(jù)通道,Sink Core的接收數(shù)據(jù)在FPGA I/O內(nèi)部通過ISERDES串并轉(zhuǎn)換后,把數(shù)據(jù)速率降低供內(nèi)部處理。這樣做的目的是降低了FPGA內(nèi)部系統(tǒng)頻率,使時序更加容易滿足。而對于狀態(tài)信`患通道,把內(nèi)部處理的數(shù)據(jù)直接經(jīng)過LO里的寄存器鎖存輸出,如圖2所示。

  圖2 Sink Core I/O接口

  (2)Source Core I/O接口設(shè)計

  Source Core的處理是內(nèi)部已經(jīng)處理好的數(shù)據(jù)經(jīng)過FPGA I/O內(nèi)部的OSERDES進行并串轉(zhuǎn)換輸出。而對于狀態(tài)信息通道,因為速率比較低,最高不超過數(shù)據(jù)通道速率的1/4。所以處理起來比較簡單,直接使用FPGA I/O內(nèi)部的寄存器鎖存輸出到內(nèi)部處理即可,如圖3所示。

  圖3 Source Core I/O接口

  (3)DPA功能

  對于數(shù)據(jù)對齊來說,由于在SPI-4中允許數(shù)據(jù)的偏移為±1個BIT,所以除了要做位對齊外,還需要做通道對齊。位對齊就是利用Xilinx Vitex-5器件內(nèi)部的IODELAY模塊用移相狀態(tài)機在其上面進行移相。多達64級,每級大約75ps,直到采樣時鐘對齊到數(shù)據(jù)窗口的中間位置。位對齊的效果如圖4所示。

  圖4 位對齊效果

  通道對齊利用協(xié)議指定的Training Pattern作為對齊信息和ISERDES模塊中的BITSLIP功能來進行,效果如圖5所示。

通道對齊前后效果

  圖5 通道對齊前后效果

  只有完成這兩個對齊過程,接收端的輸入數(shù)據(jù)才真正被處理完畢,這時數(shù)據(jù)就可以直接供給內(nèi)部做協(xié)議處理。

  (4)用戶FIFO

  該FIFO用于與用戶邏輯連接的,其原理是把內(nèi)部協(xié)議處理后的數(shù)據(jù)寫入FIFO,然后讀出FIFO的數(shù)據(jù)作為后級的用戶邏輯使用。有機地隔離了用戶邏輯和用戶FIFO,使用戶邏輯的設(shè)計更加清晰和容易。

  (5)參數(shù)配置

  該模塊主要做參數(shù)配置作用,用來配置支持的端口數(shù)、最大發(fā)送包長、遍歷長度及連續(xù)的DIP4和DIP2有效數(shù)目等。



評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉