一種醫療CT數據采集系統解決方案
2.3 源同步模塊的具體實(shí)現
本文引用地址:http://dyxdggzs.com/article/256099.htm本CT數據采集系統采用SPARTAN6 FPGA進(jìn)行數據源同步的發(fā)送和接收。本小節具體介紹源同步數據的接收部分,數據的發(fā)送部分的實(shí)現方式基本相同。在源同步的接收端,將IOB配置成雙端模式,通過(guò)IOB接收來(lái)自發(fā)送端的時(shí)鐘和數據,將接收到的LVDS雙端信號經(jīng)過(guò)IBUFGDS模塊變?yōu)閱味诵盘?。由?a class="contentlabel" href="http://dyxdggzs.com/news/listbylabel/label/SPARTAN6">SPARTAN6的IOB中自帶IDELAY數據延遲模塊和ISERDES數據串并轉換模塊,因此將單端的時(shí)鐘信號輸入到IDELAY模塊進(jìn)行時(shí)鐘的延遲控制和ISERDES串并轉換,然后再將該時(shí)鐘通過(guò)BUFIO2輸入到BUFPLL進(jìn)行倍頻得到接收端的快時(shí)鐘和供內部使用的慢時(shí)鐘。數據的對齊則是通過(guò)狀態(tài)機控制其IOB中的SERDES模塊和IDELAY模塊,數據的接收是通過(guò)BUFPLL得到的快速時(shí)鐘,數據的處理是通過(guò)BUFPLL得到的慢時(shí)鐘。
3 標準以太網(wǎng)幀的實(shí)現
3.1 方案論證
傳統的以太網(wǎng)通信通常會(huì )有10M,100M,1000M,甚至更高的速率,在CT數據采集卡中,傳統的100M以太網(wǎng)無(wú)法滿(mǎn)足要求,必需采用1000M甚至更高的以太網(wǎng)進(jìn)行數據的傳輸。用FPGA實(shí)現以太網(wǎng)最簡(jiǎn)單的方法是使用FPGA的軟核或者自帶的硬核,比如通常我們所說(shuō)的NOISII,EDK,嵌入在FPGA里面的ARM等,甚至我們可以采用傳統的FPGA + ARM的方式來(lái)達到我們所要求的設計目標。為了最大限度的降低成本,本設計采用SPARTAN6 LX45T進(jìn)行數據的采集,在FPGA中實(shí)現以太網(wǎng),最先考慮的是用軟核去實(shí)現,軟核實(shí)現不需要深入了解底層原理及具體的通信協(xié)議,相對簡(jiǎn)單。但軟核有個(gè)不足,軟核的速率達不到我們的要求,據有關(guān)資料顯示,基于spartan6系列的軟核實(shí)現以太網(wǎng),主頻不到100M,通信速率遠遠達不到1000M,因此要在spartan6中實(shí)現標準1000M以太網(wǎng)只能采用純邏輯的方式進(jìn)行數據楨格式的轉換。
3.2 以太網(wǎng)標準及實(shí)現手段
傳統的OSI七層體系(如圖2)[4]:應用層,表示層,會(huì )話(huà)層,運輸層,網(wǎng)絡(luò )層,數據鏈路層,物理層;TCP/IP的結構體系分為:應用層,運輸層,網(wǎng)絡(luò )層,數據鏈路層和物理層,實(shí)現完整的以太網(wǎng)通信必須具備完整的4層結構體系。完整的以太網(wǎng)協(xié)議簇龐大,用純邏輯實(shí)現整個(gè)協(xié)議簇將消耗大量的FPGA資源,且工作量大,仿真工作復雜??紤]到CT數據采集的特點(diǎn),采用點(diǎn)對點(diǎn)的以太網(wǎng)通信并不需要絕對完整TCP/IP協(xié)議簇,采用自定制的方式將達到我們的設計要求且實(shí)現方便。因此,采用MAC地址固定,IP地址自獲取的方式(接收arp廣播并提取對方IP,將對方IP最后一位加1,設定為FPGA端的IP地址),不另外編寫(xiě)ICMP等協(xié)議,將大大減少項目開(kāi)發(fā)的時(shí)間。
西門(mén)子plc相關(guān)文章:西門(mén)子plc視頻教程
評論