JESD204C入門(mén)第2部分:新特性及其內(nèi)容
在JESD204C入門(mén)系列的第1部分中,通過(guò)描述它解決的一些問(wèn)題,對(duì)JESD204標(biāo)準(zhǔn)的新版本進(jìn)行了說(shuō)明。通過(guò)描述新的術(shù)語(yǔ)和特性來(lái)總結(jié)B和C版本標(biāo)準(zhǔn)之間的差異,然后逐層概述這些差異。因?yàn)榈?/span>1部分已經(jīng)奠定了理解基礎(chǔ),現(xiàn)在我們來(lái)進(jìn)一步研究一下JESD204C標(biāo)準(zhǔn)幾個(gè)更值得注意的新特性。
64b/66b和64b/80b鏈路層
對(duì)于64b/66b鏈路層,66位數(shù)據(jù)塊由兩個(gè)同步頭位,后接八個(gè)八位位組的樣本數(shù)據(jù)組成,其中部分是基于IEEE 802.3第49條定義的數(shù)據(jù)塊格式。與IEEE標(biāo)準(zhǔn)不同的是,它沒(méi)有編碼——有效載荷數(shù)據(jù)只是轉(zhuǎn)換器樣本數(shù)據(jù),由傳輸層打包到數(shù)據(jù)幀中。由于沒(méi)有編碼來(lái)確保發(fā)生一定數(shù)量的數(shù)據(jù)轉(zhuǎn)換來(lái)提供dc平衡,因此必須對(duì)樣本數(shù)據(jù)進(jìn)行加擾。這些加擾的八位位組的幀數(shù)據(jù)被直接放入鏈路層,兩個(gè)同步頭位附加在其中。
64b/66b數(shù)據(jù)塊的格式如圖1所示。該示例展示了這樣的情況:一個(gè)數(shù)據(jù)通道由幀組成,每個(gè)幀包含來(lái)自一個(gè)轉(zhuǎn)換器的一個(gè)樣本。塊映射規(guī)則與來(lái)自JESD204B標(biāo)準(zhǔn)的幀映射規(guī)則非常相似。按順序完成八位位組到64位數(shù)據(jù)塊的映射,其中D0表示幀的第一個(gè)八位位組。例如,如果F = 8,D0表示JESD204C幀的第一個(gè)八位位組,D7表示JESD204C幀的最后一個(gè)八位位組。該幀的第一個(gè)八位位組的MSB是Converter0的Sample0的MSB(與JESD204B一樣)。例如,如果F = 2,D0和D1代表第一個(gè)幀,D2和D3代表第二個(gè)幀,以此類(lèi)推。
為了與JESD204B中使用的方法保持一致,多塊中的八位位組按MSB到LSB的順序被轉(zhuǎn)移到加擾器/解擾器中。
在E = 1的情況中,每個(gè)多塊都從幀邊界開(kāi)始。如果E > 1,擴(kuò)展多塊將從(必須從)幀邊界開(kāi)始。有關(guān)更多信息,請(qǐng)參考多塊(MB)和擴(kuò)展多塊(EMB)章節(jié)。
圖1.64b/66b數(shù)據(jù)塊格式示例,LMFS = 1.1.2.1,N = N’ = 16。
同步頭是一個(gè)2位未加擾值,位于每個(gè)數(shù)據(jù)塊的開(kāi)始位置,其內(nèi)容經(jīng)過(guò)解析之后,用于解碼單個(gè)同步轉(zhuǎn)換位。這些位要么采用0-1序列,表示邏輯1,要么采用1-0序列,表示邏輯0。表1列舉了同步頭的轉(zhuǎn)換位值。
表1.同步頭位值
同步頭位(0.1) | 同步轉(zhuǎn)換位 |
00 | 無(wú)效 |
01 | 1 |
10 | 0 |
11 | 無(wú)效 |
64b/80b數(shù)據(jù)塊的格式如圖2所示。除了樣本數(shù)據(jù)的八個(gè)八位位組和兩個(gè)同步頭之外,還具有兩個(gè)填充位,位于每個(gè)八位位組之間。填充位的值由17位PRBS序列決定,以減少雜散,并確保適當(dāng)數(shù)量的數(shù)據(jù)轉(zhuǎn)換以保持dc平衡。未加擾的填充位在樣本數(shù)據(jù)加擾之后插入到塊中。
Figure 2. 64b/80b block format example for LMFS = 1.1.2.1, N = N’ = 16.
圖2.64b/80b數(shù)據(jù)塊格式示例,LMFS = 1.1.2.1,N = N’ = 16。
提供64b/80b選項(xiàng)是為了與8b/10b保持相同的時(shí)鐘比,幫助簡(jiǎn)化鎖相環(huán)(PLL)設(shè)計(jì),同時(shí)最小化雜散。對(duì)于希望通過(guò)使用前向糾錯(cuò)或利用同步字提供的其他功能的應(yīng)用,相比8b/10b,更應(yīng)該選擇64b/80b,稍后將就這一問(wèn)題進(jìn)行詳細(xì)討論。
多塊(MB)和擴(kuò)展多塊(EMB)
JESD204C多塊中包含32個(gè)塊。每個(gè)多塊中的32個(gè)同步轉(zhuǎn)換位構(gòu)成一個(gè)32位同步字。稍后,我們將就此進(jìn)行詳細(xì)討論。擴(kuò)展多塊是一個(gè)E多塊容器,必須包含整數(shù)數(shù)量的幀。當(dāng)多幀不包含整數(shù)數(shù)量的幀時(shí),要求E > 1。多塊和擴(kuò)展多塊的格式如圖3所示。
多塊可以是2112 (32×66)位,或者是2560 (32×80)位,具體由所用的64位編碼方案決定。對(duì)于大多數(shù)場(chǎng)景,擴(kuò)展多塊只是一個(gè)多塊。JESD204C中引入了E參數(shù),確定了擴(kuò)展多塊中的多塊數(shù)量。E的默認(rèn)值為1。如上所述,當(dāng)幀F(xiàn)中的八位位組的數(shù)量不是2的倍數(shù)時(shí),該配置要求E > 1。E的公式為:E = LCM(F, 256)/256。發(fā)送12位樣本且N’=12時(shí),一般選擇這些配置,以最大化鏈路中的帶寬效率。這一要求確保EMB邊界與幀邊界一致。
圖4和圖5所示為E > 1的JESD204C配置示例。所示的JESD204C配置適用于以下情況:LMFS = 2.8.6.1,N’ = 12,E = 3。圖4顯示了傳輸層的映射情況。在這個(gè)配置中,每個(gè)通道有4個(gè)12位樣本,相當(dāng)于6個(gè)八位位組。由于多塊的每個(gè)塊都需要8個(gè)八位位組,因此該塊中填充了來(lái)自后續(xù)幀的2個(gè)八位位組(1.33個(gè)樣本)。
圖3.JESD204C多塊和擴(kuò)展多塊的格式。
LMFS = 2.8.6.1 N = 12 N’ = 12 | LMFS = 2.8.6.1 N = 12 N’ = 12 |
2 Lanes (L = 2) | 2個(gè)通道 (L = 2) |
8 Converters (M = 8) | 8個(gè)轉(zhuǎn)換器 (M = 8) |
1 Sample per Converter per Frame (S = 1) | 每轉(zhuǎn)換器每幀一個(gè)樣本(S = 1) |
12-Bit Nibble Group (N’ = 12) | 12位 半字節(jié)組 (N’ = 12) |
6 Octets per Lane (F = 6) | 每通道6個(gè) 八位位組(F = 6) |
ADC7 D11…D0 | ADC7 D11…D0 |
Nib. Grp 3 | 半字節(jié)組3 |
Cnv7Smpl0 | Cnv7Smpl0 |
Lane1, Octet 5 | 通道1,八位位組5 |
1 Frame of Data Has 6 Octets, so 2 More Octets Needed from Subsequent Frame to Fill the Block | 1個(gè)數(shù)據(jù)幀有6個(gè)八位位組, 所以需要從后續(xù)幀獲取2個(gè)八位位組,以填充塊 |
Scramble | 加擾 |
Serialize/SH Insert | 序列化/SH插入 |
Transport Layer | 傳輸層 |
64b/66b Link Layer | 64b/66b鏈路層 |
圖4.傳輸層映射,LMFS = 2.8.6.1,N’ = 12,E = 3。
圖5顯示了如何使用來(lái)自傳輸層的數(shù)據(jù)幀來(lái)形成塊和多塊。如圖所示,可以看到幀邊界與每三個(gè)塊的塊邊界對(duì)齊。由于多塊由32個(gè)塊組成,所以要在第三個(gè)多塊之后才能和多塊對(duì)齊。因此,E = 3。
LEMC是擴(kuò)展多塊計(jì)數(shù)器,大致相當(dāng)于8b/10b鏈路層中的LMFC。SYSREF對(duì)系統(tǒng)中的所有LEMC進(jìn)行對(duì)齊,并使用LEMC邊界來(lái)確定同步和通道對(duì)齊。
Scramble Serialize/SH Insert | 加擾 序列化/SH插入 |
Block 0 SH Octet0 | 塊0 SH 八位位組0 |
Lane1, Block0 Contain Sample 0 from Converters 7:4, Sample 1 from Converter 4, and Bits 11:8 of Converter 5 Sample 1. These 64 Bits Are Scrambled to Form a Scrambled Block of Data. | 通道1、塊0包含來(lái)自轉(zhuǎn)換器7:4的樣本0、來(lái)自轉(zhuǎn)換器4的樣本1,以及來(lái)自轉(zhuǎn)換器5樣本1的位11:8。這些64位都已加擾,以形成加擾數(shù)據(jù)塊。 |
Lane0, Block0 Contain Sample 0 from Converters 3:0, Sample 1 from Converter 0, and Bits 11:8 of Converter 1 Sample 1. These 64 Bits Are Scrambled to Form a Scrambled Block of Data. | 通道0、塊0包含來(lái)自轉(zhuǎn)換器3:0的樣本0、來(lái)自轉(zhuǎn)換器0的樣本1,以及來(lái)自轉(zhuǎn)換器1樣本1的位11:8。這些64位都已加擾,以形成加擾數(shù)據(jù)塊。 |
Frame 0 | 幀0 |
Block 2 | 塊2 |
Frame Boundaries Align with Block Boundaries on Every Third Block. | 幀邊界與每三個(gè)塊的塊邊界對(duì)齊。 |
Frame 3 | 幀3 |
MB | MB |
EMB = 3 | EMB = 3 |
Frame Boundaries Near a Multiblock Boundary Occur at 33 and 63 – Blocks, not Aligned. | 多塊邊界附近的幀邊界出現(xiàn)在塊33和63邊界處,沒(méi)有對(duì)齊。 |
SERDOUT1± | SERDOUT1± |
Multiblock and Frame Alignment Occurs at the End of 96th Block (Block 95) and 128th Frame (Frame 127). So, E = 3. | 多塊和幀對(duì)齊出現(xiàn)在第96個(gè)塊(塊95)和第128個(gè)幀(幀127)的末端位置。因此,E = 3。 |
SERDOUT0± | SERDOUT0± |
Frame 127 | 幀127 |
圖5.串行輸出多塊/幀對(duì)齊,LMFS = 2.8.6.1,N’ = 12,E = 3。
同步字
32位同步字由多塊中32個(gè)塊的每個(gè)同步頭位組成,其中第一個(gè)傳輸?shù)氖俏?。同步字用于提供通道同步,并使能確定性延遲。此外,它還可以選擇性地提供CRC錯(cuò)誤校驗(yàn)、前向糾錯(cuò),或者提供一個(gè)命令通道,供發(fā)射器與接收器通信。
32位同步字有三種不同的格式選項(xiàng)。在每種情況下,都需要多塊序列的結(jié)束,因?yàn)樗糜讷@得多塊同步和通道對(duì)齊。表2和表3顯示了兩個(gè)最常見(jiàn)用例中可用的不同位字段。
表2.CRC-12同步字
同步字位 | 域名 | 功能 |
0 | CRC11 | 12位CRC值的位11:9——適用于之前的多塊 |
1 | CRC10 | |
2 | CRC9 | |
3 | 1 | 始終為1 |
4 | CRC8 | 12位CRC值的位8:6——適用于之前的多塊 |
5 | CRC7 | |
6 | CRC6 | |
7 | 1 | 始終為1 |
8 | CRC5 | 12位CRC值的位5:3——適用于之前的多塊 |
9 | CRC4 | |
10 | CRC3 | |
11 | 1 | 始終為1 |
12 | CRC2 | 12位CRC值的位2:0——適用于之前的多塊 |
13 | CRC1 | |
14 | CRC0 | |
15 | 1 | 始終為1 |
16 | Cmd6 | 7位命令通道的位7:5 |
17 | Cmd5 | |
18 | Cmd4 | |
19 | 1 | 始終為1 |
20 | Cmd3 | 7位命令通道的位4:2 |
21 | Cmd2 | |
22 | Cmd1 | |
23 | 1 | 始終為1 |
24 | Cmd0 | 7位命令通道的位0 |
25 | 1 | 始終為1 |
26 | EoEMB | 擴(kuò)展多塊結(jié)束位 |
27 | 0 | 多塊結(jié)束導(dǎo)頻信號(hào) |
28 | 0 | |
29 | 0 | |
30 | 0 | |
31 | 1 |
表3.FEC同步字
同步字位 | 域名 | 功能 |
0 | FEC[25] | 26位前向糾錯(cuò)字的位25:4——適用于之前的多塊 |
1 | FEC[24] | |
2 | FEC[23] | |
3 | FEC[22] | |
4 | FEC[21] | |
5 | FEC[20] | |
6 | FEC[19] | |
7 | FEC[18] | |
8 | FEC[17] | |
9 | FEC[16] | |
10 | FEC[15] | |
11 | FEC[14] | |
12 | FEC[13] | |
13 | FEC[12] | |
14 | FEC[11] | |
15 | FEC[10] | |
16 | FEC[9] | |
17 | FEC[8] | |
18 | FEC[7] | |
19 | FEC[6] | |
20 | FEC[5] | |
21 | FEC[4] | |
22 | EoEMB | 擴(kuò)展多塊結(jié)束位 |
23 | FEC[3] | 26位前向糾錯(cuò)字的位3:0——適用于之前的多塊 |
24 | FEC[2] | |
25 | FEC[1] | |
26 | FEC[0] | |
27 | 0 | 多塊結(jié)束導(dǎo)頻信號(hào) |
28 | 0 | |
29 | 0 | |
30 | 0 | |
31 | 1 |
64b/66b鏈路操作
當(dāng)使用64b/66b鏈路層時(shí),鏈路的建立過(guò)程從同步頭對(duì)齊開(kāi)始,然后是擴(kuò)展多塊同步,最后是擴(kuò)展多塊對(duì)齊。
同步頭對(duì)齊
同步頭中的同步轉(zhuǎn)換位確保在每個(gè)塊邊界(66位)都有一個(gè)數(shù)據(jù)轉(zhuǎn)換。JESD204C接收器中的狀態(tài)機(jī)檢測(cè)到一個(gè)數(shù)據(jù)轉(zhuǎn)換,在66位后再查找另一個(gè)轉(zhuǎn)換。如果狀態(tài)機(jī)檢測(cè)到64個(gè)連續(xù)以66位間隔進(jìn)行的位轉(zhuǎn)換,則會(huì)實(shí)現(xiàn)同步頭鎖定(SH_lock)。如果沒(méi)有檢測(cè)到64個(gè)連續(xù)轉(zhuǎn)換,則重新啟動(dòng)狀態(tài)機(jī)。
圖6.JESD204C擴(kuò)展多塊(通道)對(duì)齊。
擴(kuò)展多塊同步
一旦實(shí)現(xiàn)同步頭對(duì)齊,接收器就會(huì)在轉(zhuǎn)換位中查找擴(kuò)展多塊結(jié)束(EoEMB)序列(100001)。同步字的結(jié)構(gòu)確保此序列只能在適當(dāng)?shù)臅r(shí)間發(fā)生。一旦確定EoEMB,狀態(tài)機(jī)將檢查每32個(gè)同步字,以確保存在多塊結(jié)束導(dǎo)頻信號(hào)(00001)。如果E = 1,EoEMB位也會(huì)存在導(dǎo)頻信號(hào)。如果E > 1,那么每個(gè)E × 32轉(zhuǎn)換位,導(dǎo)頻信號(hào)都將包含EoEMB位。一旦檢測(cè)到四個(gè)連續(xù)的有效序列,就可以實(shí)現(xiàn)擴(kuò)展多塊結(jié)束鎖定(EMB_LOCK)。繼續(xù)監(jiān)測(cè)每個(gè)E × 32轉(zhuǎn)換位,如果沒(méi)有檢測(cè)到有效的序列并重置對(duì)齊過(guò)程,則EMB_LOCK丟失。
擴(kuò)展多塊(通道)對(duì)齊
使用64b/66b鏈路層時(shí)的通道對(duì)齊與使用8b/10b鏈路層時(shí)的通道對(duì)齊非常相似,每個(gè)通道上的JESD204C接收器都使用一個(gè)彈性緩沖區(qū)來(lái)存儲(chǔ)傳入的數(shù)據(jù)。這被稱為擴(kuò)展多塊對(duì)齊,緩沖區(qū)開(kāi)始在EoEMB邊界(而不是在使用8b/10b鏈路層時(shí)ILAS期間的/K/至/R/邊界)存儲(chǔ)數(shù)據(jù)。圖6說(shuō)明了如何實(shí)現(xiàn)通道對(duì)齊。每個(gè)通道的接收緩沖區(qū)在接收到EoEMB的最后一位之后開(kāi)始緩沖數(shù)據(jù)(最后一個(gè)接收通道除外)。接收到最后一個(gè)接收通道的EoEMB之后,會(huì)觸發(fā)釋放所有通道的接收緩沖區(qū),所以現(xiàn)在所有通道都是對(duì)齊的。
錯(cuò)誤監(jiān)測(cè)和前向糾錯(cuò)
JESD204C同步字選項(xiàng)讓用戶能夠監(jiān)測(cè)或糾正JESD204數(shù)據(jù)傳輸中可能發(fā)生的錯(cuò)誤。糾錯(cuò)會(huì)導(dǎo)致額外的系統(tǒng)延遲。對(duì)于大多數(shù)應(yīng)用,使用CRC-12同步字進(jìn)行錯(cuò)誤監(jiān)測(cè)是可行的,因?yàn)樗峁┝舜笥? × 10-15的誤碼率(BER)。
JESD204C發(fā)射器中的CRC-12編碼器接收每個(gè)多塊的加擾數(shù)據(jù)位,并計(jì)算12個(gè)奇偶校驗(yàn)位。這些奇偶校驗(yàn)位在隨后的多塊中傳輸?shù)浇邮掌?。接收器同樣將從接收到的每個(gè)數(shù)據(jù)多塊中計(jì)算12個(gè)奇偶校驗(yàn)位,并與同步字中接收到的位進(jìn)行對(duì)比。如果所有奇偶校驗(yàn)位都不匹配,則接收到的數(shù)據(jù)中至少存在一個(gè)錯(cuò)誤,可以觸發(fā)錯(cuò)誤標(biāo)志。
對(duì)于對(duì)額外延遲不敏感但對(duì)錯(cuò)誤敏感的應(yīng)用(例如測(cè)試和測(cè)量設(shè)備),使用FEC可以得到優(yōu)于10 × 10-24的誤碼率。JESD204C發(fā)射器中FEC電路計(jì)算多塊中已加擾數(shù)據(jù)位的FEC奇偶校驗(yàn)位,并在下一個(gè)多塊的同步頭位流上對(duì)這些奇偶校驗(yàn)位編碼。接收器計(jì)算接收位的校驗(yàn)子,本地生成的奇偶校驗(yàn)位和接收到的奇偶校驗(yàn)位之間的差異就在于此。如果校驗(yàn)子為0,則假定接收到的數(shù)據(jù)位正確。如果校驗(yàn)子非0,則可以用它來(lái)確定最可能的錯(cuò)誤。
FEC奇偶校驗(yàn)位的計(jì)算方法與CRC相似。FEC編碼器接收多塊的2048位加擾數(shù)據(jù)位,并添加26位奇偶校驗(yàn)位,以構(gòu)建一個(gè)縮短的二進(jìn)制循環(huán)碼。該碼的發(fā)生器多項(xiàng)式為:
對(duì)于每個(gè)多塊,這個(gè)多項(xiàng)式可以糾正最多9位突發(fā)錯(cuò)誤。
總結(jié)
為了滿足未來(lái)幾年數(shù)據(jù)密集型應(yīng)用更快處理數(shù)據(jù)的需求,JESD204C將多千兆位接口定義為數(shù)據(jù)轉(zhuǎn)換器和邏輯器件之間必需的通信通道。高達(dá)32 GSPS的通道速率和64b/66b編碼使超高帶寬應(yīng)用能以最小的開(kāi)銷(xiāo)來(lái)提高系統(tǒng)效率。這些和其他標(biāo)準(zhǔn)改進(jìn)對(duì)于5G通信、雷達(dá)和電子戰(zhàn)應(yīng)用都大有裨益。再加上糾錯(cuò)功能,先進(jìn)的儀器儀表和其他應(yīng)用都能夠無(wú)錯(cuò)運(yùn)行多年。
有關(guān)JESD204及其在ADI公司產(chǎn)品中的實(shí)現(xiàn)的更多信息,請(qǐng)?jiān)L問(wèn)ADIJESD204串行接口頁(yè)面。有關(guān)ADI高速轉(zhuǎn)換器的更多信息,請(qǐng)?jiān)L問(wèn)我們的RF轉(zhuǎn)換器頁(yè)面和28 nm RF 數(shù)據(jù)轉(zhuǎn)換器頁(yè)面。有關(guān)ADI收發(fā)器產(chǎn)品的更多信息,請(qǐng)?jiān)L問(wèn)我們的RadioVerse?頁(yè)面。
作者簡(jiǎn)介
Del Jones是位于美國(guó)北卡羅來(lái)納州格林斯博羅的高速轉(zhuǎn)換器團(tuán)隊(duì)的應(yīng)用工程師。他自2000年以來(lái)一直為ADI工作,負(fù)責(zé)支持ADC、DAC和串行接口。加入ADI之前,他曾在電信行業(yè)擔(dān)任電路板和FPGA設(shè)計(jì)工程師。Del畢業(yè)于德克薩斯大學(xué)達(dá)拉斯分校,獲電氣工程學(xué)士學(xué)位。聯(lián)系方式:del.jones@analog.com。
評(píng)論