ADSP TS201鏈路口通信的FPGA實(shí)現
O 引 言
隨著(zhù)電子技術(shù)的飛速發(fā)展,在實(shí)際應用中數據高速傳輸有著(zhù)越來(lái)越高的要求,鏈路口為數據傳送提供了高速、獨立的通信機制,得到廣泛應用。AD公司生產(chǎn)的TS201 DSP就具備這種端口。為了使不具備此接口的器件同樣也能通過(guò)鏈路口與TS201進(jìn)行高速通信,引入FPGA進(jìn)行設計。
FPGA器件因其集成度高、功能強大、現場(chǎng)可編程等優(yōu)點(diǎn)被廣泛應用于各種場(chǎng)合。通過(guò)在FPGA上參照鏈路口通信協(xié)議編寫(xiě)VHDL程序,完成數據傳送方式的轉換,實(shí)現此接口與其他設備通信,以滿(mǎn)足系統的高速通信要求。
本文設計了一種基于Xilinx公司Virtex4系列的FPGA的128位并行數據與ADSP TS201的鏈路口通信方式。
l ADSP TS20l鏈路口協(xié)議
ADSP TS201有4個(gè)鏈路口均采用LVDS(Low
Voltage Differential Signaling)電路,每個(gè)鏈路口都是由4位雙向差分數據線(xiàn)和另外3個(gè)控制信號構成。接收控制信號包括:Lxclkinp/n,Lxacko,Lxbcmpi;發(fā)送控制信號包括:Lxclkoutp/n,Lxacki和Lxbcmpo。其中,Lxclkoutp/n和Lxclkinp/n用于描述輸出或輸入信號的時(shí)鐘,Lxacko和Lxacki則表示接收端發(fā)出的信號和發(fā)送端接收的信號表明是否可以繼續發(fā)送,Lxbcmpi和Lxbcmpo說(shuō)明塊傳輸已經(jīng)完成。鏈路口每個(gè)方向(Rx或Tx)均可通過(guò)1位或4位數據總線(xiàn)通信,發(fā)送端發(fā)送數據到外部設備,接收通端從外部設備獲取數據。這里主要討論4位數據總線(xiàn)通信模式的具體實(shí)現。
在鏈路口通訊協(xié)議的時(shí)序上采用一些通用規則,具體規則如下:
①第一個(gè)數據(1位或4位)必須在鏈路口時(shí)鐘(Lxclkoutp)的第一個(gè)上升沿發(fā)送。
②后一個(gè)數據(1位或4位)必須在鏈路口時(shí)鐘(Lxclkoutp)最后一個(gè)下降沿發(fā)送。
③當鏈路口停止收發(fā)后Lxclkoutp被置為低。
④每次至少傳送4個(gè)字(128位)。傳送需要用16個(gè)名車(chē)略口周期,如圖1所示。
當Lxacki被置為高,即接收緩沖是空的,發(fā)送通道被初始化,發(fā)送端可以繼續發(fā)送數據。如圖2所示,第一個(gè)數據在第一個(gè)Lxclkoutp上升沿有效,最后一個(gè)數據在最后一個(gè)鏈路口時(shí)鐘下降沿之前發(fā)送。當鏈路口停止時(shí)Lxclkoutp被置為低。
圖3表示當Lxacki被置為低時(shí),說(shuō)明接收端沒(méi)有準備好接收更多數據的情況。此時(shí)若仍有數據傳送,則會(huì )造成數據的丟失。
當發(fā)送數據長(cháng)度可變時(shí)發(fā)送方用Lxbcmpo信號通告接收數據塊傳輸已完成。Lxbcmpo與接收端的Lxbcmpi輸入信號連接,當接收端識別該信息,就通知DMA通道數據塊傳送完畢。
Lxbcmpo信號通過(guò)在塊的最后4個(gè)字傳輸的第一個(gè)Lxclkout上升沿變低,指示塊傳輸完成。而在同一4個(gè)字的最后一個(gè)Lxclkout下降沿置位。若LTCTLx寄存器中的TBCMPE位被清除或當鏈路口傳輸由處理器核執行,Lxbcmpo無(wú)效。
評論