一種醫(yī)療CT數(shù)據(jù)采集系統(tǒng)解決方案
對于FPGA底層,采用運(yùn)輸層接入用戶數(shù)據(jù),按照標(biāo)準(zhǔn)以太網(wǎng)形式將數(shù)據(jù)封裝成完整的UDP數(shù)據(jù)格式,向下再封裝成IP數(shù)據(jù)報(bào)形式:增加IP數(shù)據(jù)報(bào)的版本號,生存時(shí)間,原地址及目的地址等信息,向下再封裝成MAC數(shù)據(jù)幀,增加數(shù)據(jù)的MAC地址及CRC校驗(yàn)等信息。在實(shí)現(xiàn)完整的四層以太網(wǎng)的過程中均采用HDL語言進(jìn)行描述,不調(diào)用IPCORE。
本文引用地址:http://cafeforensic.com/article/256099.htm為了充分利用FPGA并行處理的優(yōu)勢,增加數(shù)據(jù)處理的速率,數(shù)據(jù)通常采用并行的方式進(jìn)行打包和編碼。但是光纖通信傳輸?shù)氖谴袛?shù)據(jù),一對,兩條,一收一發(fā)的方式。因此,借助于FPGA的ROCKET IO模塊,將并行的數(shù)據(jù)輸入到FPGA的GTP IP CORE將數(shù)據(jù)串行化及8B10B編碼等,GTP就相當(dāng)于傳統(tǒng)意義的PHY,在內(nèi)部完成了PCS(物理編碼子層)和PMA(物理媒介適配層),從PHY出來的信號直連MDI接入現(xiàn)成的光模塊,光模塊經(jīng)過光電轉(zhuǎn)換將電信號轉(zhuǎn)換成光信號在鏈路中進(jìn)行傳輸。
4 IEEE802.3z光纖協(xié)議的實(shí)現(xiàn)
自協(xié)商協(xié)議:
由于在以太網(wǎng)通信過程中,有10M的、100M、1000M甚至10G的,為了支持多種不同標(biāo)準(zhǔn)的混合通信,IEEE802.3Z提出了一套自協(xié)商協(xié)議(Auto-nego),通信的雙方通過互發(fā)各自的通信能力信息,進(jìn)行協(xié)商,從而達(dá)到最佳的通信模式,且只有當(dāng)自動(dòng)協(xié)商完成以后雙方才能進(jìn)行通信。自協(xié)商通常用于通信速率、流量控制,狀態(tài)等信息的交互,其基本單元為一個(gè)16bit的寄存器,通過配置這個(gè)寄存器達(dá)到協(xié)商的目的。如下圖所示:rsvd為保留位,默認(rèn)為0,D5為全雙工標(biāo)志位,D6為半雙工標(biāo)志位,為1時(shí)有效D7和D8和流量控制相關(guān),RF1、RF2表明通信雙方自協(xié)商的結(jié)果。D14為應(yīng)答標(biāo)志位,NP為下一頁標(biāo)志位,通常用于協(xié)商更為具體的內(nèi)容,在本數(shù)據(jù)采集系統(tǒng)中將其置為0(圖3)。
在本系統(tǒng)的設(shè)計(jì)過程中,由于數(shù)據(jù)量大,且連續(xù),因此采用傳統(tǒng)的Annex31B標(biāo)準(zhǔn)進(jìn)行流量控制及重傳基本不可能,數(shù)據(jù)的可靠性只能靠系統(tǒng)的設(shè)計(jì)及鏈路的鏈接進(jìn)行加固,且用FPGA實(shí)現(xiàn)流量控制較復(fù)雜且需消耗大量的邏輯資源,因此我們不進(jìn)行流量的控制,數(shù)據(jù)直接編碼進(jìn)行實(shí)時(shí)傳送。又由于上行數(shù)據(jù)量大,下行數(shù)據(jù)量較少,因此,上行鏈路采用UDP協(xié)議進(jìn)行以太網(wǎng)格式的傳送,下行鏈路直接用串口替代。這樣做還有一個(gè)好處就是將數(shù)據(jù)和指令進(jìn)行了完全的分離。具體實(shí)現(xiàn)過程如下:
本設(shè)計(jì)用6個(gè)狀態(tài)實(shí)現(xiàn)自動(dòng)協(xié)商的過程:IDLE,READY,CONF,ACK_CONF,SYNC,AUTO_OK;上電復(fù)位以后,F(xiàn)PGA進(jìn)入IDLE狀態(tài),連續(xù)發(fā)送IDLE指令,使對端能正確識別FPGA的通信速率,當(dāng)接收到3個(gè)以上的對方IDLE反饋以后,狀態(tài)機(jī)跳轉(zhuǎn)到READY狀態(tài),發(fā)送配置準(zhǔn)備狀態(tài),表明FPGA方已準(zhǔn)備進(jìn)行配置,在收到3個(gè)以上的PC反饋過來的配置準(zhǔn)備狀態(tài)指令以后,提取對端的通信模式的信息,寫入FPGA的寄存器,然后將其D14置1,作為反饋(FPGA的實(shí)際通信能力也許并不和對方對等,這樣設(shè)計(jì)簡化了自動(dòng)協(xié)商的過程,消耗的邏輯資源更低),表明FPGA和PC具有相同的通信能力,一直發(fā)送反饋,直到接收到PC反饋的具有3個(gè)連續(xù)相同的配置能力的配置指令的字符,則跳入到SYNC,發(fā)送到同步指令,如果收到對方的3個(gè)連續(xù)的SYNC指令表示自動(dòng)協(xié)商成功,否則協(xié)商失敗,重新跳入到IDLE進(jìn)行協(xié)商,當(dāng)跳入到AUTO_OK狀態(tài)則可以進(jìn)行用戶數(shù)據(jù)的發(fā)送,如圖4為自動(dòng)協(xié)商的過程。
西門子plc相關(guān)文章:西門子plc視頻教程
評論