1. JESD204B 基本協(xié)議
其實(shí)使用到ADI的東西,基本也就沒有太去關(guān)注協(xié)議這些東西,只是簡(jiǎn)簡(jiǎn)單單的有個(gè)了解就行,在實(shí)際調(diào)試的時(shí)候,用的也是Xilinx的評(píng)估版的JESD的IP,基本不需要自己做什么工作就能夠把整個(gè)系統(tǒng)運(yùn)行起來了。
下面這個(gè)圖是AD9680的一個(gè)基本的結(jié)構(gòu)框圖,可以看到這個(gè)ADC的作用就對(duì)輸入的信號(hào)進(jìn)行采集量化,在JESD204B鏈路建立之后,按照特定的格式組成數(shù)據(jù)幀,然后將數(shù)據(jù)幀通過JESD的接口將數(shù)據(jù)發(fā)送到FPGA上。其實(shí)基于JESD 204B的ADC和DAC在使用的時(shí)候,只需要去弄清楚鏈路是如何建立的就基本宣告JESD的驅(qū)動(dòng)成功了。
1.1 JESD204B鏈路參數(shù)
在JESD 204B的鏈路建立的過程中,最重要就是需要去關(guān)注鏈路所需要的參數(shù),這些參數(shù)是后面對(duì)FPGA當(dāng)中JESD IP的配置和對(duì)AD9680配置十分重要的,JESD IP的手冊(cè)可以參考PG066和PG198這兩個(gè)手冊(cè)。
無論是JESD的發(fā)送還是接收,關(guān)于鏈路建立的關(guān)鍵參數(shù)都是一致的,如下面從AD9680的手冊(cè)當(dāng)中截取出來的一些參數(shù)。
通過這些參數(shù)能夠確定JESD鏈路當(dāng)中所需要使用到的LANE的數(shù)量,JESD該如何來進(jìn)行組幀,組成的數(shù)據(jù)幀當(dāng)中哪些位是數(shù)據(jù)位哪些位是控制位,組成的數(shù)據(jù)幀是對(duì)應(yīng)哪一個(gè)ADC當(dāng)中的哪一個(gè)轉(zhuǎn)換器的。舉個(gè)基于AD9680和FPGA進(jìn)行全帶寬傳輸?shù)暮?jiǎn)單的例子,
L=4,M=2,F(xiàn)=2, N’=16, N=14, CS=2, K=32對(duì)應(yīng)到JESD的鏈路當(dāng)中就是
L=4需要4個(gè)lane來建立JESD 204鏈路,從FPGA角度來看就是需要使用到4個(gè)高速收發(fā)器接口。
M=2產(chǎn)生ADC數(shù)據(jù)的數(shù)據(jù)來源有兩個(gè),如下面的圖中所示
N’=16表示一個(gè)采樣點(diǎn)中包含16bit數(shù)據(jù),N=14表示ADC的采樣精度為14bit,CS=2表示在傳輸JESD的數(shù)據(jù)的時(shí)候有兩位的控制位,這樣就能夠很好地理解N’,N和CS的關(guān)系了。一般情況下一個(gè)采樣點(diǎn)包含了具體的數(shù)據(jù)和控制位。
F=2表示一個(gè)數(shù)據(jù)幀當(dāng)中有兩個(gè)字節(jié)的數(shù)據(jù),這兩個(gè)字節(jié)剛好能夠表示一個(gè)采樣點(diǎn)。
K=32表示一個(gè)多幀當(dāng)中有32個(gè)數(shù)據(jù)幀,通過前面的F參數(shù),不難計(jì)算出一個(gè)多幀包含有64個(gè)字節(jié)的數(shù)據(jù)。
上面只是一個(gè)對(duì)JESD鏈路當(dāng)中參數(shù)的一個(gè)簡(jiǎn)單的介紹,在實(shí)際的使用的時(shí)候,就是多看手冊(cè),弄清楚每個(gè)參數(shù)在具體的應(yīng)用當(dāng)中的作用就OK了。
下圖是一個(gè)ADC采樣點(diǎn)經(jīng)采樣后從傳輸層經(jīng)過數(shù)據(jù)鏈路層,最終經(jīng)過物理層進(jìn)行傳輸?shù)倪^程,在這個(gè)過程中,可以看到在具體的數(shù)據(jù)幀黨總,上面介紹的一些關(guān)鍵的參數(shù)的具體的表現(xiàn)形式。
1.2 JESD 204B的分層
就像學(xué)習(xí)以太網(wǎng)的時(shí)候,要先了解一下OSI的涉及參考模型一樣,在JESD當(dāng)中,也有一個(gè)參考的數(shù)據(jù)分層的物理模型,下圖所示的就是一個(gè)簡(jiǎn)單的JESD 204B的分層。主要有三個(gè)層級(jí),分別是傳輸層,數(shù)據(jù)鏈路層和物理層。
傳輸層:傳輸層負(fù)責(zé)將庶幾乎打包映射到有字節(jié)組成的JESD204B數(shù)據(jù)幀當(dāng)中。傳輸層的映射關(guān)系是由鏈路層的設(shè)置的參數(shù)來決定的。
數(shù)據(jù)鏈路層:數(shù)據(jù)鏈路層負(fù)責(zé)數(shù)據(jù)傳輸?shù)牡讓拥墓δ埽@些功能包括對(duì)數(shù)據(jù)進(jìn)行加擾,插入用于多芯片同步,通道對(duì)齊等控制字符,完成8B10B轉(zhuǎn)換,發(fā)送初始通道對(duì)齊序列(ILAS)等。ILAS是一個(gè)比較重要的序列,這個(gè)序列當(dāng)中包含了鏈路的一些信息,在接收方當(dāng)中,可以通過這個(gè)序列來知道當(dāng)前鏈路的一個(gè)配置的狀態(tài)。
物理層:物理層就是負(fù)責(zé)將數(shù)據(jù)進(jìn)行傳輸?shù)膶樱谖疫@里也就是指的FPGA和AD9680之間具體的高速接口了。
1.3 鏈路建立的過程
在我進(jìn)行JESD204B的調(diào)試過程中,我認(rèn)為最重要的一步就是鏈路建立的過程,只要能夠正確地建立起JESD204B鏈路的link,那么后續(xù)的工作就比較簡(jiǎn)單了。因此首先需要弄清楚鏈路建立的一個(gè)過程。
在JESD204B subclass1中鏈路的建立主要包含一下幾個(gè)步驟:
Code Group Synchronization (CGS) and SYNCINB±
Initial Lane Alignment Sequence (ILAS)
User Data and Error Detection
1.3.1 CGS & SYNC
在CSG階段,簡(jiǎn)而言之就是一個(gè)同步的階段,如果對(duì)Xilinx的高速接口有一定的了解的話,就知道高速接口當(dāng)中是如何實(shí)現(xiàn)數(shù)據(jù)和時(shí)鐘的恢復(fù)和數(shù)據(jù)的對(duì)齊的,在CSG階段,JESD的發(fā)送器會(huì)不停的發(fā)送/K28.5/字符。在JESD的接收器當(dāng)中,就會(huì)根據(jù)所接收到的數(shù)據(jù)來檢測(cè)是否接收到了/K28.5/字符,如果檢測(cè)到了,就會(huì)使SYNC信號(hào)拉高,從而提示JESD發(fā)送器,當(dāng)前已經(jīng)檢測(cè)到了/K28.5/也即已經(jīng)同步上了。
這里需要提一下SYNC信號(hào),在前面數(shù)據(jù)鏈路層當(dāng)中,我們可以在數(shù)據(jù)鏈路層當(dāng)中,有兩個(gè)用于控制數(shù)據(jù)鏈路層的信號(hào),分別是sysref和sync。JESD204B子類1是否同步上,跟這兩個(gè)信號(hào)有著很緊密的關(guān)系。
舉個(gè)簡(jiǎn)單的例子,ADC 轉(zhuǎn)換器AD9680作為JESD的發(fā)送方,F(xiàn)PGA作為JESD的接收方,兩者一個(gè)共同的參考信號(hào)sysref,鏈路是否建立是根據(jù)LMFC與sysref共同來決定的,作為數(shù)據(jù)的接收方,F(xiàn)PGA若成功檢測(cè)到當(dāng)前已經(jīng)同步上,需要拉高sync,告訴AD9680當(dāng)前FPGA已經(jīng)能夠同步了,數(shù)據(jù)的發(fā)送方才會(huì)進(jìn)行下一步的操作。若sync一直不拉高,那么鏈路的建立將會(huì)一直處于CGS階段,在JESD當(dāng)中也就只能接收到/K28.5/(0xBC).
JESD常用的字符如下:
1.3.2 ILAS 階段
在這個(gè)階段當(dāng)中,JESD的發(fā)送方,會(huì)發(fā)送JESD鏈路的配置信息。ILAS階段一般包含4個(gè)多幀。每個(gè)多幀以/R/字符表示開始,以/A/字符表示多幀結(jié)束。
在第一個(gè)多幀當(dāng)中,填充的主要是0~255的遞增數(shù)。
在第二個(gè)多幀當(dāng)中,以/R/字符表示開始,然后發(fā)送一個(gè)Q字符,用于表示開始發(fā)送鏈路配置數(shù)據(jù),從第三個(gè)字符開始發(fā)送鏈路配置數(shù)據(jù),鏈路配置數(shù)據(jù)一共14個(gè)字符,其余地方用遞增數(shù)進(jìn)行填充。
第三個(gè)和第四個(gè)多幀,結(jié)構(gòu)和第一個(gè)多幀一致。
1.3.3 用戶數(shù)據(jù)
在ILAS階段完成之后,就可以進(jìn)行用戶數(shù)據(jù)傳輸了。這些東西在JESD的IP里面都已經(jīng)集成地很好了,在使用IP地時(shí)候,能夠大大地減輕設(shè)計(jì)的難度。
-
接口
+關(guān)注
關(guān)注
33文章
8704瀏覽量
151963 -
dac
+關(guān)注
關(guān)注
43文章
2312瀏覽量
191609 -
鏈路
+關(guān)注
關(guān)注
1文章
73瀏覽量
14042 -
JESD204B
+關(guān)注
關(guān)注
5文章
77瀏覽量
19203
原文標(biāo)題:JESD204B接口簡(jiǎn)介
文章出處:【微信號(hào):gh_9d70b445f494,微信公眾號(hào):FPGA設(shè)計(jì)論壇】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
jesd204b
JESD204B的系統(tǒng)級(jí)優(yōu)勢(shì)
JESD204B串行接口時(shí)鐘的優(yōu)勢(shì)
JESD204B協(xié)議有什么特點(diǎn)?
如何去實(shí)現(xiàn)JESD204B時(shí)鐘?
一文讀懂JESD204B標(biāo)準(zhǔn)系統(tǒng)
JESD204B協(xié)議介紹
JESD204B的優(yōu)勢(shì)
JESD204B協(xié)議概述
![<b class='flag-5'>JESD204B</b><b class='flag-5'>協(xié)議</b>概述](https://file1.elecfans.com//web2/M00/A6/B6/wKgZomUMP92AFD_7AAAc-tQj0xQ122.png)
JESD204B SystemC module 設(shè)計(jì)簡(jiǎn)介(一)
![<b class='flag-5'>JESD204B</b> SystemC module 設(shè)計(jì)簡(jiǎn)介(<b class='flag-5'>一</b>)](https://file1.elecfans.com//web2/M00/A6/E9/wKgZomUMQTaAGi9HAAA3rv3fgCY712.png)
JESD204B標(biāo)準(zhǔn)及演進(jìn)歷程
JESD204B使用說明
![<b class='flag-5'>JESD204B</b>使用說明](https://file1.elecfans.com/web3/M00/02/D7/wKgZPGdiQ0mAchJNAABj_ya2LSw859.png)
評(píng)論