本發(fā)明屬于高速串行接口芯片技術(shù)領(lǐng)域,涉及一種jesd204b協(xié)議中幀組裝的方法。
背景技術(shù):
jesd204b是一種用于高速數(shù)據(jù)采集的接口,該標(biāo)準(zhǔn)提供一種將一個(gè)或多個(gè)數(shù)據(jù)轉(zhuǎn)換器與數(shù)字信號(hào)處理器件接口的方法,目前主要用在adc和fpga之間的連接。相比于通常的并行數(shù)據(jù)傳輸,這是一種更高速度的串行接口。其速度最高可達(dá)12.5gbps/通道,使用幀串行數(shù)據(jù)鏈路及嵌入式時(shí)鐘和對(duì)齊字符,減少了器件之間的走線數(shù)量,降低了走線匹配要求,并消除了建立與保持時(shí)序約束問題,從而簡化了高速轉(zhuǎn)換器數(shù)據(jù)接口的實(shí)施。
一個(gè)jesd204b系統(tǒng)主要包括:數(shù)據(jù)發(fā)送部分(tx),高速串行部分(phy),數(shù)據(jù)接收部分(rx)。在jesd204b的數(shù)據(jù)發(fā)送端,包含傳輸層和鏈路層。其中鏈路層包括加擾模塊,對(duì)齊模塊,8b10b編碼模塊等。由于在jesd204b系統(tǒng)中是采用的幀數(shù)據(jù)鏈路傳輸,因此,在傳輸層中需要將外部輸入的數(shù)據(jù)進(jìn)行幀組裝。組幀過程中的映射方式與jesd204b協(xié)議規(guī)定的配置參數(shù)有關(guān)。包括:轉(zhuǎn)換器數(shù)m、通道數(shù)l、每個(gè)轉(zhuǎn)換器中每幀傳輸?shù)臉颖緮?shù)s、每幀包含的字節(jié)數(shù)(octets)f?,F(xiàn)階段,jesd204b幀組裝部分在國內(nèi)還沒有統(tǒng)一標(biāo)準(zhǔn),因此無法有效地在jesd204b協(xié)議中進(jìn)行幀組裝。
技術(shù)實(shí)現(xiàn)要素:
有鑒于此,本發(fā)明的目的在于提供一種jesd204b協(xié)議中幀組裝的方法,能夠組裝出符合jesd204b協(xié)議要求的幀。
為達(dá)到上述目的,本發(fā)明提供如下技術(shù)方案:
一種jesd204b協(xié)議中幀組裝的方法,所述方法包括:
預(yù)先確定輸入發(fā)射端傳輸層的數(shù)據(jù)位寬;
利用轉(zhuǎn)換器對(duì)所述數(shù)據(jù)位寬進(jìn)行采樣,得到s個(gè)采樣樣本;
向每個(gè)所述采樣樣本中添加控制位和填充位,以形成完整的字;其中,所述控制位和填充位位于所述字的末尾;
根據(jù)每個(gè)幀中的字節(jié)數(shù),判斷是否將所述字分拆為字節(jié)并調(diào)整字節(jié)順序;
根據(jù)判斷結(jié)果對(duì)每個(gè)采樣樣本對(duì)應(yīng)的字或者字節(jié)進(jìn)行排序處理,并將排序處理的結(jié)果映射至對(duì)應(yīng)的通道中,形成每個(gè)通道內(nèi)的幀;
其中,當(dāng)每個(gè)幀中字節(jié)數(shù)為1時(shí),每個(gè)轉(zhuǎn)換器的通道數(shù)必須是偶數(shù)個(gè)。
進(jìn)一步地,按照下述公式確定輸入發(fā)射端傳輸層的數(shù)據(jù)位寬:
其中,dw表示所述數(shù)據(jù)位寬,f表示每個(gè)幀中的字節(jié)數(shù),l表示每個(gè)轉(zhuǎn)換器中的通道數(shù),n表示每個(gè)轉(zhuǎn)換器的分辨率,n'表示每個(gè)樣本傳輸?shù)奈粩?shù)。
進(jìn)一步地,根據(jù)每個(gè)幀中的字節(jié)數(shù),判斷是否將所述字進(jìn)行分拆包括:
當(dāng)每個(gè)幀中的字節(jié)數(shù)為1時(shí),將所述字分拆為長度相同的兩個(gè)字節(jié)。
進(jìn)一步地,根據(jù)判斷結(jié)果對(duì)每個(gè)采樣樣本對(duì)應(yīng)的字或者字節(jié)進(jìn)行排序處理包括:
將字?jǐn)?shù)據(jù)word0的字節(jié)數(shù)據(jù)oct0作為最后一個(gè)通道(l-1)中的首字節(jié)數(shù)據(jù);
將字?jǐn)?shù)據(jù)word0的字節(jié)數(shù)據(jù)oct1作為倒數(shù)第二個(gè)通道(l-2)中的首字節(jié)數(shù)據(jù);
將字?jǐn)?shù)據(jù)word1的字節(jié)數(shù)據(jù)oct2作為最后一個(gè)通道(l-1)中的第二個(gè)字節(jié)數(shù)據(jù);
將字?jǐn)?shù)據(jù)word1的字節(jié)數(shù)據(jù)cot3作為倒數(shù)第二個(gè)通道(l-2)中的第二個(gè)字節(jié)數(shù)據(jù);
以此類推,每個(gè)通道共有四個(gè)字節(jié)數(shù)據(jù),以完成字節(jié)數(shù)據(jù)到通道數(shù)據(jù)的映射。
進(jìn)一步地,根據(jù)每個(gè)幀中的字節(jié)數(shù),判斷是否將所述字進(jìn)行分拆包括:
當(dāng)每個(gè)幀中的字節(jié)數(shù)為2或4或8時(shí),不需要將所述字進(jìn)行分拆。
進(jìn)一步地,根據(jù)判斷結(jié)果對(duì)每個(gè)采樣樣本對(duì)應(yīng)的字進(jìn)行排序處理包括:
將字?jǐn)?shù)據(jù)按照倒序排列送入對(duì)應(yīng)的通道中去;
其中,將字?jǐn)?shù)據(jù)按照倒序排列送入對(duì)應(yīng)的通道中去包括:將字?jǐn)?shù)據(jù)word0作為最后一個(gè)通道(l-1)的最后一個(gè)字?jǐn)?shù)據(jù),將字?jǐn)?shù)據(jù)word1作為最后一個(gè)通道(l-1)的倒數(shù)第二個(gè)字?jǐn)?shù)據(jù),以此類推,每個(gè)通道共有兩個(gè)字?jǐn)?shù)據(jù),以完成字?jǐn)?shù)據(jù)到通道數(shù)據(jù)的映射。
本發(fā)明的有益效果為:
本發(fā)明在進(jìn)行幀組裝時(shí),可以預(yù)先確定輸入的數(shù)據(jù)位寬,根據(jù)不同的數(shù)據(jù)位寬,在進(jìn)行轉(zhuǎn)換器采樣時(shí),可以得到不同數(shù)量的采樣樣本。在本發(fā)明中,可以向采樣樣本中添加控制位和填充位,從而形成完整的字。針對(duì)每個(gè)幀中的字節(jié)數(shù),可以判斷是否需要對(duì)所述字進(jìn)行分拆。針對(duì)不同的判斷結(jié)果,可以采用不同的排序方式來形成每個(gè)通道內(nèi)的幀。由上可見,本申請(qǐng)?zhí)岢龅膸M裝方法,對(duì)于國內(nèi)自主實(shí)現(xiàn)jesd204b協(xié)議規(guī)范的高速串行接口電路具有一定的參考作用。
附圖說明
為了使本發(fā)明的目的、技術(shù)方案和有益效果更加清楚,本發(fā)明提供如下附圖進(jìn)行說明:
圖1為本發(fā)明中的進(jìn)行幀組裝的方法流程圖;
圖2為本發(fā)明中f為1時(shí)的幀組裝流程圖;
圖3為本發(fā)明中f為2或4或8時(shí)的幀組裝流程圖;
圖4為本發(fā)明中f為1并且l為2時(shí)幀組裝過程圖;
圖5為本發(fā)明中f為4并且l為1時(shí)的幀組裝過程圖。
具體實(shí)施方式
下面將結(jié)合附圖,對(duì)本發(fā)明的優(yōu)選實(shí)施例進(jìn)行詳細(xì)的描述。
請(qǐng)參閱圖1,本申請(qǐng)實(shí)施方式提供一種jesd204b協(xié)議中幀組裝的方法,所述方法包括:
s1:預(yù)先確定輸入發(fā)射端傳輸層的數(shù)據(jù)位寬;
s2:利用轉(zhuǎn)換器對(duì)所述數(shù)據(jù)位寬進(jìn)行采樣,得到s個(gè)采樣樣本;
s3:向每個(gè)所述采樣樣本中添加控制位和填充位,以形成完整的字;其中,所述控制位和填充位位于所述字的末尾;
s4:根據(jù)每個(gè)幀中的字節(jié)數(shù),判斷是否將所述字分拆為字節(jié)并調(diào)整字節(jié)順序;
s5:根據(jù)判斷結(jié)果對(duì)每個(gè)采樣樣本對(duì)應(yīng)的字或者字節(jié)進(jìn)行排序處理,并將排序處理的結(jié)果映射至對(duì)應(yīng)的通道中,形成每個(gè)通道內(nèi)的幀。其中,當(dāng)每個(gè)幀中字節(jié)數(shù)為1時(shí),每個(gè)轉(zhuǎn)換器的通道數(shù)必須是偶數(shù)個(gè)。
在本實(shí)施方式中,可以按照下述公式確定輸入發(fā)射端傳輸層的數(shù)據(jù)位寬:
其中,dw表示所述數(shù)據(jù)位寬,f表示每個(gè)幀中的字節(jié)數(shù),l表示每個(gè)轉(zhuǎn)換器中的通道數(shù),n表示每個(gè)轉(zhuǎn)換器的分辨率,n'表示每個(gè)樣本傳輸?shù)奈粩?shù)。
在本實(shí)施方式中,根據(jù)每個(gè)幀中的字節(jié)數(shù),判斷是否將所述字進(jìn)行分拆包括:
當(dāng)每個(gè)幀中的字節(jié)數(shù)為1時(shí),將所述字分拆為長度相同的兩個(gè)字節(jié)。
在本實(shí)施方式中,根據(jù)判斷結(jié)果對(duì)每個(gè)采樣樣本對(duì)應(yīng)的字或者字節(jié)進(jìn)行排序處理包括:
將字?jǐn)?shù)據(jù)word0的字節(jié)數(shù)據(jù)oct0作為最后一個(gè)通道(l-1)中的首字節(jié)數(shù)據(jù);
將字?jǐn)?shù)據(jù)word0的字節(jié)數(shù)據(jù)oct1作為倒數(shù)第二個(gè)通道(l-2)中的首字節(jié)數(shù)據(jù);
將字?jǐn)?shù)據(jù)word1的字節(jié)數(shù)據(jù)oct2作為最后一個(gè)通道(l-1)中的第二個(gè)字節(jié)數(shù)據(jù);
將字?jǐn)?shù)據(jù)word1的字節(jié)數(shù)據(jù)cot3作為倒數(shù)第二個(gè)通道(l-2)中的第二個(gè)字節(jié)數(shù)據(jù);
以此類推,每個(gè)通道共有四個(gè)字節(jié)數(shù)據(jù),以完成字節(jié)數(shù)據(jù)到通道數(shù)據(jù)的映射。
在本實(shí)施方式中,根據(jù)每個(gè)幀中的字節(jié)數(shù),判斷是否將所述字進(jìn)行分拆包括:
當(dāng)每個(gè)幀中的字節(jié)數(shù)為2或4或8時(shí),不需要將所述字進(jìn)行分拆。
在本實(shí)施方式中,根據(jù)判斷結(jié)果對(duì)每個(gè)采樣樣本對(duì)應(yīng)的字進(jìn)行排序處理包括:
將字?jǐn)?shù)據(jù)按照倒序排列送入對(duì)應(yīng)的通道中去;
其中,將字?jǐn)?shù)據(jù)按照倒序排列送入對(duì)應(yīng)的通道中去包括:將字?jǐn)?shù)據(jù)word0作為最后一個(gè)通道(l-1)的最后一個(gè)字?jǐn)?shù)據(jù),將字?jǐn)?shù)據(jù)word1作為最后一個(gè)通道(l-1)的倒數(shù)第二個(gè)字?jǐn)?shù)據(jù),以此類推,每個(gè)通道共有兩個(gè)字?jǐn)?shù)據(jù),以完成字?jǐn)?shù)據(jù)到通道數(shù)據(jù)的映射。
具體地,在發(fā)射端傳輸層中支持的輸入數(shù)據(jù)位寬為dw=m*s*n,其中m為一個(gè)設(shè)備中轉(zhuǎn)換器的個(gè)數(shù),s為每個(gè)轉(zhuǎn)換器每周期采樣個(gè)數(shù),n為轉(zhuǎn)換器分辨率。又因?yàn)閒=(m*s*n’)/(8l)。從而
當(dāng)f=1時(shí),其系統(tǒng)發(fā)射端組幀過程如圖2所示(設(shè)n=14,控制位c和填充位t位于word[1:0],若n=13,則word[15:3,t,c,c])。一個(gè)設(shè)備可有m個(gè)轉(zhuǎn)換器,每個(gè)轉(zhuǎn)換器分辨率為n,每個(gè)幀周期每個(gè)轉(zhuǎn)換器可以采樣s個(gè)樣本。在轉(zhuǎn)換器采樣樣本s過后,首先對(duì)樣本添加控制位c和填充位t,并組成一個(gè)完整的word[15:0],其中控制位c和填充位t位于每個(gè)word的末尾。此時(shí)若f=1,將字?jǐn)?shù)據(jù)word0的字節(jié)數(shù)據(jù)oct0作為最后一個(gè)通道(l-1)中的首字節(jié)數(shù)據(jù);將字?jǐn)?shù)據(jù)word0的字節(jié)數(shù)據(jù)oct1作為倒數(shù)第二個(gè)通道(l-2)中的首字節(jié)數(shù)據(jù);將字?jǐn)?shù)據(jù)word1的字節(jié)數(shù)據(jù)oct2作為最后一個(gè)通道(l-1)中的第二個(gè)字節(jié)數(shù)據(jù);將字?jǐn)?shù)據(jù)word1的字節(jié)數(shù)據(jù)cot3作為倒數(shù)第二個(gè)通道(l-2)中的第二個(gè)字節(jié)數(shù)據(jù);以此類推,每個(gè)通道共有四個(gè)字節(jié)數(shù)據(jù),以完成字節(jié)數(shù)據(jù)到通道數(shù)據(jù)的映射。
對(duì)于f=(2,4,8)的情況,則將字?jǐn)?shù)據(jù)按照倒序排列送入對(duì)應(yīng)的通道中去;
其中,將字?jǐn)?shù)據(jù)按照倒序排列送入對(duì)應(yīng)的通道中去包括:將字?jǐn)?shù)據(jù)word0作為最后一個(gè)通道(l-1)的最后一個(gè)字?jǐn)?shù)據(jù),將字?jǐn)?shù)據(jù)word1作為最后一個(gè)通道(l-1)的倒數(shù)第二個(gè)字?jǐn)?shù)據(jù),以此類推,每個(gè)通道共有兩個(gè)字?jǐn)?shù)據(jù),以完成字?jǐn)?shù)據(jù)到通道數(shù)據(jù)的映射。如圖3所示。
舉例說明,圖4為f=1,l=2,n=14,n’=16,cs=1,cf=0的情況。則由公式可得dw=14bits。需要一個(gè)轉(zhuǎn)換器,每個(gè)幀周期采樣一個(gè)樣本數(shù)據(jù)s0。將樣本轉(zhuǎn)換為數(shù)據(jù)word,即添加控制位c和填充位t。將數(shù)據(jù)word0拆分為兩個(gè)字節(jié)數(shù)據(jù)oct0和oct1,數(shù)據(jù)oct0送入通道1中作為通道1的首字節(jié)數(shù)據(jù),數(shù)據(jù)oct1送入通道0中作為通道0的首字節(jié)數(shù)據(jù)。
圖5為f=4,l=1,n=14,n’=16,cs=1,cf=0的情況。則由公式可得dw=28bits。需要一個(gè)轉(zhuǎn)換器,每個(gè)幀周期采樣2個(gè)樣本s0,s1。每個(gè)樣本加上控制位c和填充位t組成一個(gè)完整的word,最后將word0和word1交換并映射到通道lane中。
由此可見,在本申請(qǐng)中,可以根據(jù)相關(guān)參數(shù)的設(shè)置,轉(zhuǎn)換器采樣對(duì)應(yīng)位寬的數(shù)據(jù),然后經(jīng)過加控制位和填充位以及調(diào)整數(shù)據(jù)順序完成幀組裝,最后輸出數(shù)據(jù)到鏈路層。
需要注意的是,若n=16,因?yàn)閚’=16,則此時(shí)無法向樣本中添加控制位也無需填充位。
本發(fā)明的有益效果為:
本發(fā)明在進(jìn)行幀組裝時(shí),可以預(yù)先確定輸入的數(shù)據(jù)位寬,根據(jù)不同的數(shù)據(jù)位寬,在進(jìn)行轉(zhuǎn)換器采樣時(shí),可以得到不同數(shù)量的采樣樣本。在本發(fā)明中,可以向采樣樣本中添加控制位和填充位,從而形成完整的字。針對(duì)每個(gè)幀中的字節(jié)數(shù),可以判斷是否需要對(duì)所述字進(jìn)行分拆。針對(duì)不同的判斷結(jié)果,可以采用不同的排序方式來形成每個(gè)通道內(nèi)的幀。由上可見,本申請(qǐng)?zhí)岢龅膸M裝方法,對(duì)于國內(nèi)自主實(shí)現(xiàn)jesd204b協(xié)議規(guī)范的高速串行接口電路具有一定的參考作用。
最后說明的是,以上優(yōu)選實(shí)施例僅用以說明本發(fā)明的技術(shù)方案而非限制,盡管通過上述優(yōu)選實(shí)施例已經(jīng)對(duì)本發(fā)明進(jìn)行了詳細(xì)的描述,但本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,可以在形式上和細(xì)節(jié)上對(duì)其作出各種各樣的改變,而不偏離本發(fā)明權(quán)利要求書所限定的范圍。