一種基于fpga的blvds總線數(shù)據(jù)傳送裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種基于FPGA的BLVDS總線數(shù)據(jù)傳送裝置,屬于BLVDS總線技術(shù)領(lǐng)域。
【背景技術(shù)】
[0002]BLVDS (總線型低電壓差分信號)總線具備250mV的低電壓差分信號以及快速的過渡時(shí)間,其抗干擾特性與數(shù)據(jù)高速傳輸特點(diǎn),使其在多點(diǎn)電纜以及背板有廣泛的應(yīng)用。目前,基于BLVDS總線的設(shè)計(jì)大多采用發(fā)送和接收兩條BLVDS總線,以保證總線處于驅(qū)動(dòng)狀態(tài)。這樣不可避免的增加了布線難度,加大了產(chǎn)品的設(shè)計(jì)和研發(fā)成本,而且也加大了總線的故障率。然而在利用一條BLVDS總線作為收發(fā)總線進(jìn)行數(shù)據(jù)通信時(shí),主站和從站都沒有驅(qū)動(dòng)總線的情況下,主站和從站的接收端所接收到的數(shù)據(jù)是未定義狀態(tài)(O或者I未知),這勢必造成信號完整性以及正確性問題。
【發(fā)明內(nèi)容】
[0003]目的:為了克服現(xiàn)有技術(shù)中存在的不足,本發(fā)明提供一種基于FPGA的BLVDS總線數(shù)據(jù)傳送裝置。
[0004]技術(shù)方案:為解決上述技術(shù)問題,本發(fā)明采用的技術(shù)方案為:
一種基于FPGA的BLVDS總線數(shù)據(jù)傳送裝置,包括CPU芯片、一條BLVDS總線、FPGA芯片,所述FPGA芯片包括:串行數(shù)據(jù)收發(fā)模塊、存儲器、編碼發(fā)送模塊、BLVDS數(shù)據(jù)收發(fā)模塊、解碼接收模塊;
所述串行數(shù)據(jù)收發(fā)模塊用于向CPU芯片、存儲器收發(fā)數(shù)據(jù),向編碼發(fā)送模塊發(fā)送CPU發(fā)送數(shù)據(jù)結(jié)束信號;
所述存儲器用于存儲收發(fā)數(shù)據(jù);
所述編碼發(fā)送模塊用于向BLVDS總線發(fā)送報(bào)文開頭信號、報(bào)文結(jié)束信號;
所述BLVDS數(shù)據(jù)收發(fā)模塊用于向BLVDS總線收發(fā)數(shù)據(jù);
所述解碼接收模塊用于解碼從BLVDS總線接收到的報(bào)文開頭信號、報(bào)文結(jié)束信號;所述CPU芯片與串行數(shù)據(jù)收發(fā)模塊一端相連接,串行數(shù)據(jù)收發(fā)模塊另二端分別與存儲器、編碼發(fā)送模塊相連接;存儲器另一端與BLVDS數(shù)據(jù)收發(fā)模塊相連接;編碼發(fā)送模塊、BLVDS數(shù)據(jù)收發(fā)模塊、解碼接收模塊并聯(lián)后與BLVDS總線相連接。
[0005]還包括數(shù)據(jù)量寄存器,所述數(shù)據(jù)量寄存器用于計(jì)算BLVDS接收數(shù)據(jù)的字節(jié)長度,所述數(shù)據(jù)量寄存器設(shè)置在解碼接收模塊內(nèi)。
[0006]所述報(bào)文開頭信號包括:兩字節(jié)高電平、0χ05、0χ64、收發(fā)數(shù)據(jù)幀的長度。
[0007]所述報(bào)文結(jié)束信號包括:0χ35。
[0008]作為優(yōu)選方案,所述CPU芯片設(shè)置為ΑΜ3352。
[0009]有益效果:本發(fā)明提供的一種基于FPGA的BLVDS總線數(shù)據(jù)傳送裝置,本發(fā)明利用FPGA兼容多種電氣特性以及靈活性和可擴(kuò)展性,在發(fā)送報(bào)文處添加報(bào)文頭,在接收報(bào)文處處理報(bào)文頭,從而過濾掉主站和從站未驅(qū)動(dòng)總線時(shí)的錯(cuò)誤數(shù)據(jù),確保信號完整性和正確性。1、將傳統(tǒng)的BLVDS收發(fā)兩條總線合并成一條,節(jié)約硬件開發(fā)成本,減少故障點(diǎn)。2、保證BLVDS總線上數(shù)據(jù)的完整性和正確性。
【附圖說明】
[0010]圖1為本發(fā)明的結(jié)構(gòu)示意圖;
圖2為FPGA芯片的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0011]下面結(jié)合附圖對本發(fā)明作更進(jìn)一步的說明。
[0012]如圖1、圖2所示,一種基于FPGA的BLVDS總線數(shù)據(jù)傳送裝置,包括CPU芯片1、一條BLVDS總線3、FPGA芯片2,所述FPGA芯片2包括:串行數(shù)據(jù)收發(fā)模塊21、存儲器22、編碼發(fā)送模塊23、BLVDS數(shù)據(jù)收發(fā)模塊24、解碼接收模塊25 ;
所述CPU芯片I與串行數(shù)據(jù)收發(fā)模塊21 —端相連接,串行數(shù)據(jù)收發(fā)模塊21另二端分別與存儲器22、編碼發(fā)送模塊23相連接;存儲器22另一端與BLVDS數(shù)據(jù)收發(fā)模塊24相連接;編碼發(fā)送模塊23、BLVDS數(shù)據(jù)收發(fā)模塊24、解碼接收模塊25并聯(lián)后與BLVDS總線3相連接。還包括數(shù)據(jù)量寄存器26,所述數(shù)據(jù)量寄存器26設(shè)置在解碼接收模塊25內(nèi)。
[0013]具體使用方式如下:
情況一:向BLVDS總線發(fā)送數(shù)據(jù)工作過程。CPU芯片通過串行數(shù)據(jù)收發(fā)模塊將數(shù)據(jù)幀發(fā)送存儲器內(nèi)部的FIFO中,當(dāng)一幀數(shù)據(jù)從CPU芯片側(cè)發(fā)送完畢后,串行數(shù)據(jù)收發(fā)模塊發(fā)送數(shù)據(jù)結(jié)束信號至編碼發(fā)送模塊;編碼發(fā)送模塊發(fā)送報(bào)文開頭信號:首先發(fā)送兩字節(jié)時(shí)間的高電平作為發(fā)送開始信號,從而保證進(jìn)入報(bào)文頭尾添加模塊,然后發(fā)送0x05,0x64,以及從數(shù)據(jù)幀的長度,3字節(jié)數(shù)據(jù)至BLVDS總線上;然后從FIFO中取出數(shù)據(jù)幀發(fā)送至BLVDS總線,待FIFO中的數(shù)據(jù)發(fā)送完成后,最后發(fā)送一字節(jié)的報(bào)文結(jié)束信號0x35以及2字節(jié)時(shí)間高電平。至此,完整一整幀的數(shù)據(jù)發(fā)送完畢。
[0014]情況二:從BLVDS總線接收數(shù)據(jù)工作過程。BLVDS數(shù)據(jù)收發(fā)模塊實(shí)時(shí)監(jiān)測總線上是否有數(shù)據(jù),當(dāng)解碼接收模塊接收到0x05、0x64兩字節(jié)數(shù)據(jù)后,表示一幀數(shù)據(jù)接收開始,第三字節(jié)為數(shù)據(jù)幀字節(jié)數(shù);將數(shù)據(jù)幀字節(jié)數(shù)存儲在數(shù)據(jù)量寄存器中,隨后BLVDS數(shù)據(jù)收發(fā)模塊接收的數(shù)據(jù),發(fā)送到存儲器的FIFO中;每接收一字節(jié)數(shù)據(jù),數(shù)據(jù)量寄存器中的數(shù)據(jù)幀字節(jié)數(shù)減一,當(dāng)數(shù)據(jù)幀字節(jié)數(shù)為零時(shí),進(jìn)入報(bào)文結(jié)束信號的校驗(yàn),接收的一個(gè)字節(jié)數(shù)據(jù)為0x35時(shí),表示接收數(shù)據(jù)幀正確,開始從FIFO中讀取接收數(shù)據(jù)并通過串行數(shù)據(jù)收發(fā)模塊,將數(shù)據(jù)發(fā)送到CPU芯片,直到發(fā)送完畢所有數(shù)據(jù),表示接收過程結(jié)束。
[0015]以上所述僅是本發(fā)明的優(yōu)選實(shí)施方式,應(yīng)當(dāng)指出:對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以做出若干改進(jìn)和潤飾,這些改進(jìn)和潤飾也應(yīng)視為本發(fā)明的保護(hù)范圍。
【主權(quán)項(xiàng)】
1.一種基于FPGA的BLVDS總線數(shù)據(jù)傳送裝置,包括CPU芯片、一條BLVDS總線,其特征在于:還包括FPGA芯片,所述FPGA芯片包括:串行數(shù)據(jù)收發(fā)模塊、存儲器、編碼發(fā)送模塊、BLVDS數(shù)據(jù)收發(fā)模塊、解碼接收模塊; 所述串行數(shù)據(jù)收發(fā)模塊用于向CPU芯片、存儲器收發(fā)數(shù)據(jù),向編碼發(fā)送模塊發(fā)送CPU發(fā)送數(shù)據(jù)結(jié)束信號; 所述存儲器用于存儲收發(fā)數(shù)據(jù); 所述編碼發(fā)送模塊用于向BLVDS總線發(fā)送報(bào)文開頭信號、報(bào)文結(jié)束信號; 所述BLVDS數(shù)據(jù)收發(fā)模塊用于向BLVDS總線收發(fā)數(shù)據(jù); 所述解碼接收模塊用于解碼從BLVDS總線接收到的報(bào)文開頭信號、報(bào)文結(jié)束信號; 所述CPU芯片與串行數(shù)據(jù)收發(fā)模塊一端相連接,串行數(shù)據(jù)收發(fā)模塊另二端分別與存儲器、編碼發(fā)送模塊相連接;存儲器另一端與BLVDS數(shù)據(jù)收發(fā)模塊相連接;編碼發(fā)送模塊、BLVDS數(shù)據(jù)收發(fā)模塊、解碼接收模塊并聯(lián)后與BLVDS總線相連接。2.根據(jù)權(quán)利要求1所述的一種基于FPGA的BLVDS總線數(shù)據(jù)傳送裝置,其特征在于:還包括數(shù)據(jù)量寄存器,所述數(shù)據(jù)量寄存器用于計(jì)算BLVDS接收數(shù)據(jù)的字節(jié)長度,所述數(shù)據(jù)量寄存器設(shè)置在解碼接收模塊內(nèi)。3.根據(jù)權(quán)利要求1所述的一種基于FPGA的BLVDS總線數(shù)據(jù)傳送裝置,其特征在于:所述報(bào)文開頭信號包括:兩字節(jié)高電平、0χ05、0χ64、收發(fā)數(shù)據(jù)幀的長度。4.根據(jù)權(quán)利要求1所述的一種基于FPGA的BLVDS總線數(shù)據(jù)傳送裝置,其特征在于:所述報(bào)文結(jié)束信號包括:0χ35。5.根據(jù)權(quán)利要求1所述的一種基于FPGA的BLVDS總線數(shù)據(jù)傳送裝置,其特征在于:所述CPU芯片設(shè)置為ΑΜ3352。
【專利摘要】本發(fā)明公開了一種基于FPGA的BLVDS總線數(shù)據(jù)傳送裝置,包括CPU芯片、一條BLVDS總線、FPGA芯片,所述FPGA芯片包括:串行數(shù)據(jù)收發(fā)模塊、存儲器、編碼發(fā)送模塊、BLVDS數(shù)據(jù)收發(fā)模塊、解碼接收模塊;所述CPU芯片與串行數(shù)據(jù)收發(fā)模塊一端相連接,串行數(shù)據(jù)收發(fā)模塊另二端分別與存儲器、編碼發(fā)送模塊相連接;存儲器另一端與BLVDS數(shù)據(jù)收發(fā)模塊相連接;編碼發(fā)送模塊、BLVDS數(shù)據(jù)收發(fā)模塊、解碼接收模塊并聯(lián)后與BLVDS總線相連接。本發(fā)明將傳統(tǒng)的BLVDS收發(fā)兩條總線合并成一條,節(jié)約硬件開發(fā)成本,減少故障點(diǎn)。保證BLVDS總線上數(shù)據(jù)的完整性和正確性。
【IPC分類】H04L12/40
【公開號】CN104883286
【申請?zhí)枴緾N201510244769
【發(fā)明人】李偉, 黃作兵, 樂凌志, 黃蕾, 趙永
【申請人】南京國電南自美卓控制系統(tǒng)有限公司
【公開日】2015年9月2日
【申請日】2015年5月14日