一種基于fpga的芯片間互聯(lián)裝置制造方法
【專(zhuān)利摘要】本發(fā)明涉及芯片互聯(lián)【技術(shù)領(lǐng)域】,特別涉及一種基于FPGA的芯片間互聯(lián)裝置。本發(fā)明的一種基于FPGA的芯片間互聯(lián)裝置,是在現(xiàn)場(chǎng)可編程門(mén)陣列芯片中設(shè)置時(shí)鐘動(dòng)態(tài)調(diào)整模塊,低壓差分信號(hào)發(fā)送模塊,低壓差分信號(hào)接收模塊,其能夠?qū)崿F(xiàn)FPGA芯片間的信息傳遞,該裝置具有速率可調(diào),靈活性高的特點(diǎn)。
【專(zhuān)利說(shuō)明】—種基于FPGA的芯片間互聯(lián)裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及芯片互聯(lián)【技術(shù)領(lǐng)域】,特別涉及一種基于FPGA的芯片間互聯(lián)裝置。
【背景技術(shù)】
[0002]FPGA (現(xiàn)場(chǎng)可編程門(mén)陣列)芯片是一種可編程的邏輯器件,具有開(kāi)發(fā)周期短,可靠性高的特點(diǎn)。
[0003]其芯片間的互聯(lián)有很多可用技術(shù),LVDS(Low-Voltage Differential Signaling低壓差分信號(hào))接口,具有低噪聲、低功耗,高速率、低成本等特點(diǎn),在速率要求不是太高的情況下(通常這些芯片沒(méi)有集成serdes——串行器),常常作為芯片間的互聯(lián)接口,在現(xiàn)有的技術(shù)中一般都沒(méi)有涉及到一種傳輸數(shù)據(jù)可靠和傳輸速率可調(diào)的LVDS接口。
【發(fā)明內(nèi)容】
[0004]為了解決現(xiàn)有技術(shù)的問(wèn)題,本發(fā)明提供了一種基于FPGA的芯片間互聯(lián)裝置,其具有速率可調(diào),靈活性高的特點(diǎn)。
[0005]本發(fā)明所采用的技術(shù)方案如下:
一種基于FPGA的芯片間互聯(lián)裝置,是在現(xiàn)場(chǎng)可編程門(mén)陣列芯片中設(shè)置時(shí)鐘動(dòng)態(tài)調(diào)整模塊,低壓差分信號(hào)發(fā)送模塊,低壓差分信號(hào)接收模塊,其中,
所述的時(shí)鐘動(dòng)態(tài)調(diào)整模塊將要配置的時(shí)鐘參數(shù)計(jì)算好,通過(guò)串行外設(shè)接口寫(xiě)入到現(xiàn)場(chǎng)可編程門(mén)陣列芯片的動(dòng)態(tài)重置端口模塊中,以此來(lái)調(diào)節(jié)現(xiàn)場(chǎng)可編程門(mén)陣列芯片的時(shí)鐘管理模塊,輸出所需要的時(shí)鐘;
所述的低壓差分信號(hào)發(fā)送模塊包含發(fā)送先入先出隊(duì)列模塊,組幀模塊和并串轉(zhuǎn)換模塊,所述的低壓差分信號(hào)發(fā)送模塊接收對(duì)端的反饋信號(hào)來(lái)進(jìn)行流控處理;
所述的低壓差分信號(hào)接收模塊包含串并轉(zhuǎn)換模塊,解幀模塊和收先入先出隊(duì)列模塊,所述的低壓差分信號(hào)接收模塊給發(fā)送端發(fā)送接收準(zhǔn)備信號(hào)來(lái)進(jìn)行流控處理。
[0006]低壓差分信號(hào)發(fā)送模塊接收對(duì)端的反饋信號(hào)來(lái)進(jìn)行流控處理的具體步驟是:
A、對(duì)端芯片發(fā)送一個(gè)數(shù)據(jù)準(zhǔn)備好的信號(hào),當(dāng)對(duì)端模塊準(zhǔn)備接收數(shù)據(jù)時(shí),發(fā)送先入先出隊(duì)列模塊會(huì)每隔數(shù)據(jù)位寬的周期來(lái)讀一次發(fā)送先入先出隊(duì)列模塊中的數(shù)據(jù);
B、讀出的數(shù)據(jù)會(huì)經(jīng)過(guò)組幀模塊,按照?qǐng)?bào)頭、數(shù)據(jù)長(zhǎng)度、有效數(shù)據(jù)以及數(shù)據(jù)校驗(yàn)和包尾的協(xié)議格式組幀;
C、從組幀模塊出來(lái)的數(shù)據(jù)經(jīng)過(guò)并串轉(zhuǎn)換模塊后,轉(zhuǎn)換成串行數(shù)據(jù)發(fā)送到對(duì)端芯片;
D、在發(fā)送數(shù)據(jù)的同時(shí),低壓差分信號(hào)發(fā)送模塊會(huì)產(chǎn)生數(shù)據(jù)同步信號(hào)給對(duì)端芯片使對(duì)端接收數(shù)據(jù)時(shí)便于數(shù)據(jù)同步。
[0007]低壓差分信號(hào)接收模塊給發(fā)送端發(fā)送接收準(zhǔn)備信號(hào)來(lái)進(jìn)行流控處理的具體步驟是:
A、低壓差分信號(hào)接收模塊根據(jù)對(duì)端發(fā)送的同步信號(hào)對(duì)數(shù)據(jù)進(jìn)行同步;
B、同步后的數(shù)據(jù)經(jīng)過(guò)串并轉(zhuǎn)換模塊轉(zhuǎn)換成并行數(shù)據(jù); C、經(jīng)過(guò)解幀模塊提取出有效數(shù)據(jù),有效數(shù)據(jù)發(fā)送到接收先入先出隊(duì)列模塊中,在接收先入先出隊(duì)列模塊中設(shè)置數(shù)據(jù)的存儲(chǔ)閾值,當(dāng)達(dá)到閾值后表示接收端還沒(méi)有準(zhǔn)備好接收數(shù)據(jù),低壓差分信號(hào)接收模塊會(huì)將這一信號(hào)反饋回發(fā)送端,使發(fā)送端停止發(fā)送有效數(shù)據(jù),直到接收先入先出隊(duì)列模塊里的存儲(chǔ)數(shù)據(jù)小于閾值。
[0008]本發(fā)明的一種基于FPGA的芯片間互聯(lián)裝置,是在FPGA芯片中設(shè)置時(shí)鐘動(dòng)態(tài)調(diào)整模塊,LVDS發(fā)送模塊,LVDS接收模塊。
[0009]CPU 通過(guò)與 FPGA 的 spi (Serial Peripheral Interface—串行外設(shè))接口動(dòng)態(tài)配置LVDS的接口時(shí)鐘速率,待時(shí)鐘配置完成后,數(shù)據(jù)從發(fā)送fifo (先入先出隊(duì)列)寫(xiě)入數(shù)據(jù),當(dāng)對(duì)端芯片發(fā)出數(shù)據(jù)接收指令后,按照一定的周期從fifo中讀取所需要發(fā)送的數(shù)據(jù),將數(shù)據(jù)按照?qǐng)?bào)頭、數(shù)據(jù)長(zhǎng)度、有效數(shù)據(jù)以及數(shù)據(jù)校驗(yàn)和包尾的協(xié)議格式組幀,將組好的數(shù)據(jù)幀經(jīng)過(guò)并串轉(zhuǎn)換模塊轉(zhuǎn)換成串行數(shù)據(jù)發(fā)送到對(duì)端芯片中;對(duì)端芯片接收到數(shù)據(jù)后,按照發(fā)送端發(fā)送過(guò)來(lái)的同步信號(hào)進(jìn)行數(shù)據(jù)同步,同步完成后對(duì)串行數(shù)據(jù)進(jìn)行串并轉(zhuǎn)換,串并轉(zhuǎn)換后的數(shù)據(jù)經(jīng)過(guò)數(shù)據(jù)解幀模塊根據(jù)事先定義好的幀格式進(jìn)行解幀,解幀出來(lái)的數(shù)據(jù)寫(xiě)入接收f(shuō)ifo中,在fifo中設(shè)置一定的存儲(chǔ)閾值,當(dāng)fifo存儲(chǔ)的數(shù)據(jù)達(dá)到閾值時(shí),會(huì)往對(duì)端發(fā)送一差分信號(hào)告訴對(duì)端數(shù)據(jù)沒(méi)有準(zhǔn)備好,這時(shí)對(duì)端LVDS發(fā)送模塊停止發(fā)送有效數(shù)據(jù)直到接收端重新準(zhǔn)備好接收數(shù)據(jù)。
[0010]動(dòng)態(tài)配置LVDS接口的速率,就是要?jiǎng)討B(tài)配置LVDS的時(shí)鐘,將要配置的時(shí)鐘參數(shù)計(jì)算好,通過(guò)spi接口寫(xiě)入到FPGA的drp (動(dòng)態(tài)重置端口)模塊中,以此來(lái)調(diào)節(jié)FPGA的時(shí)鐘管理模塊,輸出所需要的時(shí)鐘。
[0011]本發(fā)明實(shí)施例提供的技術(shù)方案帶來(lái)的有益效果是:
通過(guò)本發(fā)明的一種基于FPGA的芯片間互聯(lián)裝置,能夠?qū)崿F(xiàn)FPGA芯片間的信息傳遞,該裝置具有速率可調(diào),靈活性高的特點(diǎn)。
【專(zhuān)利附圖】
【附圖說(shuō)明】
[0012]為了更清楚地說(shuō)明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對(duì)實(shí)施例描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0013]圖1為本發(fā)明的一種基于FPGA的芯片間互聯(lián)裝置的結(jié)構(gòu)架構(gòu)框圖。
【具體實(shí)施方式】
[0014]為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附圖對(duì)本發(fā)明實(shí)施方式作進(jìn)一步地詳細(xì)描述。
[0015]實(shí)施例一
如附圖1所示,一種基于FPGA的芯片間互聯(lián)裝置,在FPGA芯片中設(shè)置時(shí)鐘動(dòng)態(tài)調(diào)整模塊,LVDS發(fā)送模塊,LVDS接收模塊。
[0016]時(shí)鐘動(dòng)態(tài)調(diào)整模塊:
為實(shí)現(xiàn)速率的動(dòng)態(tài)可重配,采用動(dòng)態(tài)可重配時(shí)鐘的方案,在外部通過(guò)CPU與FPGA相連的spi或者iic接口將重配的時(shí)鐘參數(shù)實(shí)時(shí)的發(fā)送到FPGA中的時(shí)鐘動(dòng)態(tài)調(diào)整模塊,時(shí)鐘動(dòng)態(tài)調(diào)整模塊輸出的時(shí)鐘即為整個(gè)裝置的時(shí)鐘。
[0017]LVDS發(fā)送模塊:
對(duì)端芯片會(huì)發(fā)送一個(gè)數(shù)據(jù)準(zhǔn)備好的信號(hào),當(dāng)對(duì)端模塊準(zhǔn)備接收數(shù)據(jù)時(shí),fifo會(huì)每隔數(shù)據(jù)位寬的周期來(lái)讀一次fifo中的數(shù)據(jù),讀出的數(shù)據(jù)會(huì)經(jīng)過(guò)組幀模塊,按照包頭,數(shù)據(jù)長(zhǎng)度,有效數(shù)據(jù)以及數(shù)據(jù)校驗(yàn)和包尾的協(xié)議格式組幀,從組幀模塊出來(lái)的數(shù)據(jù)經(jīng)過(guò)并串轉(zhuǎn)換模塊后,轉(zhuǎn)換成串行數(shù)據(jù)發(fā)送到對(duì)端芯片,在發(fā)送數(shù)據(jù)的同時(shí),LVDS發(fā)送模塊會(huì)產(chǎn)生數(shù)據(jù)同步信號(hào)給對(duì)端芯片使對(duì)端接收數(shù)據(jù)時(shí)便于數(shù)據(jù)同步。
[0018]LVDS接收模塊:
接收模塊根據(jù)對(duì)端發(fā)送的同步信號(hào)對(duì)數(shù)據(jù)進(jìn)行同步,同步后的數(shù)據(jù)經(jīng)過(guò)串并轉(zhuǎn)換模塊轉(zhuǎn)換成并行數(shù)據(jù),經(jīng)過(guò)解幀模塊提取出有效數(shù)據(jù),有效數(shù)據(jù)發(fā)送到接收f(shuō)ifo中,在接收f(shuō)ifo中設(shè)置數(shù)據(jù)的存儲(chǔ)閾值,當(dāng)達(dá)到閾值后表示接收端還沒(méi)有準(zhǔn)備好接收數(shù)據(jù),LVDS接收模塊會(huì)將這一信號(hào)反饋回發(fā)送端,使發(fā)送端停止發(fā)送有效數(shù)據(jù)直到fifo里的存儲(chǔ)數(shù)據(jù)小于閾值。
[0019]以上所述僅為本發(fā)明的較佳實(shí)施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【權(quán)利要求】
1.一種基于FPGA的芯片間互聯(lián)裝置,是在現(xiàn)場(chǎng)可編程門(mén)陣列芯片中設(shè)置時(shí)鐘動(dòng)態(tài)調(diào)整模塊,低壓差分信號(hào)發(fā)送模塊,低壓差分信號(hào)接收模塊,其中, 所述的時(shí)鐘動(dòng)態(tài)調(diào)整模塊將要配置的時(shí)鐘參數(shù)計(jì)算好,通過(guò)串行外設(shè)接口寫(xiě)入到現(xiàn)場(chǎng)可編程門(mén)陣列芯片的動(dòng)態(tài)重置端口模塊中,以此來(lái)調(diào)節(jié)現(xiàn)場(chǎng)可編程門(mén)陣列芯片的時(shí)鐘管理模塊,輸出所需要的時(shí)鐘; 所述的低壓差分信號(hào)發(fā)送模塊包含發(fā)送先入先出隊(duì)列模塊,組幀模塊和并串轉(zhuǎn)換模塊,所述的低壓差分信號(hào)發(fā)送模塊接收對(duì)端的反饋信號(hào)來(lái)進(jìn)行流控處理; 所述的低壓差分信號(hào)接收模塊包含串并轉(zhuǎn)換模塊,解幀模塊和收先入先出隊(duì)列模塊,所述的低壓差分信號(hào)接收模塊給發(fā)送端發(fā)送接收準(zhǔn)備信號(hào)來(lái)進(jìn)行流控處理。
2.根據(jù)權(quán)利要求1所述的一種基于FPGA的芯片間互聯(lián)裝置,其特征在于,所述的低壓差分信號(hào)發(fā)送模塊接收對(duì)端的反饋信號(hào)來(lái)進(jìn)行流控處理的具體步驟是: A、對(duì)端芯片發(fā)送一個(gè)數(shù)據(jù)準(zhǔn)備好的信號(hào),當(dāng)對(duì)端模塊準(zhǔn)備接收數(shù)據(jù)時(shí),發(fā)送先入先出隊(duì)列模塊會(huì)每隔數(shù)據(jù)位寬的周期來(lái)讀一次發(fā)送先入先出隊(duì)列模塊中的數(shù)據(jù); B、讀出的數(shù)據(jù)會(huì)經(jīng)過(guò)組幀模塊,按照?qǐng)?bào)頭、數(shù)據(jù)長(zhǎng)度、有效數(shù)據(jù)以及數(shù)據(jù)校驗(yàn)和包尾的協(xié)議格式組幀; C、從組幀模塊出來(lái)的數(shù)據(jù)經(jīng)過(guò)并串轉(zhuǎn)換模塊后,轉(zhuǎn)換成串行數(shù)據(jù)發(fā)送到對(duì)端芯片; D、在發(fā)送數(shù)據(jù)的同時(shí),低壓差分信號(hào)發(fā)送模塊會(huì)產(chǎn)生數(shù)據(jù)同步信號(hào)給對(duì)端芯片使對(duì)端接收數(shù)據(jù)時(shí)便于數(shù)據(jù)同步。
3.根據(jù)權(quán)利要求1所述的一種基于FPGA的芯片間互聯(lián)裝置,其特征在于,所述的低壓差分信號(hào)接收模塊給發(fā)送端發(fā)送接收準(zhǔn)備信號(hào)來(lái)進(jìn)行流控處理的具體步驟是: A、低壓差分信號(hào)接收模塊根據(jù)對(duì)端發(fā)送的同步信號(hào)對(duì)數(shù)據(jù)進(jìn)行同步; B、同步后的數(shù)據(jù)經(jīng)過(guò)串并轉(zhuǎn)換模塊轉(zhuǎn)換成并行數(shù)據(jù); C、經(jīng)過(guò)解幀模塊提取出有效數(shù)據(jù),有效數(shù)據(jù)發(fā)送到接收先入先出隊(duì)列模塊中,在接收先入先出隊(duì)列模塊中設(shè)置數(shù)據(jù)的存儲(chǔ)閾值,當(dāng)達(dá)到閾值后表示接收端還沒(méi)有準(zhǔn)備好接收數(shù)據(jù),低壓差分信號(hào)接收模塊會(huì)將這一信號(hào)反饋回發(fā)送端,使發(fā)送端停止發(fā)送有效數(shù)據(jù),直到接收先入先出隊(duì)列模塊里的存儲(chǔ)數(shù)據(jù)小于閾值。
【文檔編號(hào)】G06F13/38GK104035904SQ201410315571
【公開(kāi)日】2014年9月10日 申請(qǐng)日期:2014年7月4日 優(yōu)先權(quán)日:2014年7月4日
【發(fā)明者】秦剛, 劉強(qiáng), 孫大軍, 李長(zhǎng)志 申請(qǐng)人:山東超越數(shù)控電子有限公司