




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、基于SoC的數(shù)據(jù)采集與交互系統(tǒng)解決方案引言Internet的快速發(fā)展和成功促進(jìn)了以太網(wǎng)(Ethernet)技術(shù)的發(fā)展和應(yīng)用的擴(kuò)展,所涉及的領(lǐng)域十分廣 泛,如傳統(tǒng)的工業(yè)控制、信息家電、智能家居、安全監(jiān)控、樓宇自動(dòng)化、醫(yī)療、環(huán)境監(jiān)測(cè)等。大多數(shù) 的數(shù)據(jù)采集設(shè)備的通信接口符合UART通信標(biāo)準(zhǔn)。這種通信方式的數(shù)據(jù)傳輸半徑十分有限,并不能滿足遠(yuǎn)距離傳輸?shù)男枨?,并且不能接入Internet.因此數(shù)據(jù)的交互接入Internet就顯得非常重要了。1、系統(tǒng)的總體方案及各主要模塊設(shè)計(jì)系統(tǒng)以 Microsemi(Actel) 公司的基于 FLASH 架構(gòu)的SoC FPGA 產(chǎn)品Smart Fusion2器件為核心。系
2、統(tǒng)通過(guò)Fabric架構(gòu)實(shí)現(xiàn)多路 UART對(duì)外相應(yīng)數(shù)據(jù)進(jìn)行采集,進(jìn)行并 /串轉(zhuǎn)換寫入Fabric 的雙端口 RAM.SmartFusion2 的ARM Cortex-M3子系統(tǒng)經(jīng)過(guò)AHB/APB 總線矩陣以AHB/APB 方式訪問(wèn)Fabric的RAM ,將得到的數(shù)據(jù)經(jīng)過(guò) Ethernet以網(wǎng)頁(yè)的形式在 PC上顯示, 反之,以同樣的路徑將主控的指令傳輸?shù)酵獠康慕K端設(shè)備。PC機(jī)端以網(wǎng)頁(yè)形式實(shí)現(xiàn)數(shù)據(jù)交互。網(wǎng)頁(yè)存放于 SmartFusion2 內(nèi)部FLASH ,內(nèi)核 Cortex-M3基于實(shí)時(shí)操作系統(tǒng)(FreeRTOS)管理任務(wù),IP采用靜態(tài)方式,內(nèi)核 Cortex-M3 與Fabric采用AHB方式通
3、信.系統(tǒng)設(shè)計(jì)結(jié)構(gòu)框圖如圖 1所示。Vnirtfmh awFLSH場(chǎng)陞的編jTifnet叫 cbhcntTFPPSNMrUUPGCPM,口itrp用右R P IPt jlkFkDiir?t ns圖i系統(tǒng)設(shè)計(jì)結(jié)構(gòu)框圖系統(tǒng)硬件的設(shè)計(jì)可分為三個(gè)主要模塊,分別為PHY物理層模塊,SoC的Cortex-M3 內(nèi)核及FPGA系統(tǒng),UART模塊的數(shù)據(jù)采集系統(tǒng)。PHY 模塊PHY即物理層(Physical Layer)。物理層協(xié)議可定義電氣信號(hào)標(biāo)準(zhǔn)、連線的狀態(tài)、時(shí)鐘信號(hào)的要求、數(shù)據(jù)編碼的格式和數(shù)據(jù)傳輸所用的連接器等。物理層通過(guò)一個(gè)定義好的接口與數(shù)據(jù)鏈路層進(jìn)行通信。比如MAC可以利用標(biāo)準(zhǔn)的介質(zhì)無(wú)關(guān)性接口 ( MI
4、I接口)與PHY進(jìn)行數(shù)據(jù)交換通信。PHY還有個(gè)重要的功能就是實(shí)現(xiàn)以太網(wǎng)的 CSMA/CD 部分功能,這是硬件上實(shí)現(xiàn)的。它可以檢測(cè)到網(wǎng)絡(luò)鏈路上是 否有數(shù)據(jù)正在傳送,如果有數(shù)據(jù)在傳送中則進(jìn)行等待,當(dāng)檢測(cè)到網(wǎng)絡(luò)空閑,就再等待一定的時(shí)間(不同的PHY會(huì)有不同)后對(duì)數(shù)據(jù)進(jìn)行傳送。倘若兩塊網(wǎng)卡碰巧是同時(shí)發(fā)送數(shù)據(jù),這將造成沖突,這時(shí)PHY內(nèi)部的沖突檢測(cè)結(jié)構(gòu)可以檢測(cè)到?jīng)_突的發(fā)生,然后兩邊各自等待一定的時(shí)間進(jìn)行重發(fā)數(shù)據(jù)Smanrusifwi210 100MTKRJUIIMACOri-clnp Tcm nfltiiw KdwRrK)3LanaLi:nint. 一 人lVSH MHzMcJjJ I |TCtiDBd
5、sL-rlOOBase-TX=1 【廿11口女人K=5iCiRI 4S2S MHiMAI:2 pF 彳圖2 PHY電路連接圖PHY的電路圖連接圖如圖 2所示。KSZ8051采用MII與SmartFusion2 相連,由于MII兼容RMII接口,因此程序也可配置為 RMII模式。Management 采用2個(gè)引腳連接,分別為MDC和 MDIO , MII的時(shí)鐘由PHYKSZ8051 提供,KSZ8051的時(shí)鐘來(lái)自外部 25 MHz 晶振。媒體連接 采用 RJ 45,兼容 10 Mb/s 和 100 Mb/s.SoC 中的 Cortex-M3 模塊系統(tǒng)使用Cortex-M3 中的MAC模塊,如圖3
6、所示。通過(guò)AHB控制Ethernet MAC 模塊,對(duì)于MAC的配置是使用其內(nèi)部的寄存器,可以配置不同的接口模式,不同的速度。本系統(tǒng)配置為MII接口,100 Mb/s 速度。MsrH LiAja2irAtmthhXMmsEltitrmclLI ArMUt 1 - i *RMII 艮WM*閶0十十揖門狗11 NMR 叫IVGX!I Milr1 lt,A 1描M(rMHUHtoRnWIII/SMIIJ RIFED*IIRMTT RC.Mir RMil *SMT1 PUT圖 3 Cortex-M3 的 MACMAC(Media Access Control ,媒體訪問(wèn)控制子層協(xié)議),主要負(fù)責(zé)控制和連
7、接物理層。在發(fā)送數(shù)據(jù) 的時(shí)候,MAC協(xié)議可以事先判斷現(xiàn)在是否可以發(fā)送數(shù)據(jù),如果可以發(fā)送則將給數(shù)據(jù)加上一些控制信 息,最終將數(shù)據(jù)及附帶的控制信息以規(guī)定的格式發(fā)送到物理層;在接收數(shù)據(jù)的時(shí)候,MAC協(xié)議首先判斷輸入的信息是否發(fā)生傳輸錯(cuò)誤,如果沒(méi)有錯(cuò)誤,則去掉控制信息發(fā)送至邏輯鏈路層(LLC)層。以太網(wǎng)MAC協(xié)議由IEEE 802.3以太網(wǎng)標(biāo)準(zhǔn)定義。PHY與MAC 的接口方式有多種,如:MII , RMII , SMII , SSMII, GMII , SGMII , TBI 等。目前常見(jiàn)的 PHY 都提供標(biāo)準(zhǔn)的 MII 接口, RMII信號(hào)是對(duì)PHY內(nèi)部的MII的信號(hào)進(jìn)行編碼和解碼,這就是說(shuō)支持MI
8、I接口的PHY內(nèi)部都含有RMII信號(hào),也就是支持 RMII接口。具體使用何種接口的 PHY則必須根據(jù) MAC芯片對(duì)應(yīng)的功能和接口的標(biāo)準(zhǔn)來(lái)決定采用FreeRTOS實(shí)時(shí)操作系統(tǒng)管理整個(gè)系統(tǒng)的運(yùn)行。FreeRTOS使用Cortex-M3 內(nèi)核的定時(shí)器以10 ms時(shí)間片進(jìn)行任務(wù)的調(diào)度和切換。創(chuàng)建Webserver進(jìn)程和網(wǎng)頁(yè)進(jìn)行通信,網(wǎng)頁(yè)編輯語(yǔ)言HTML是不需要編譯的,因此將需要顯示的數(shù)據(jù)全部發(fā)送給網(wǎng)頁(yè)。這些數(shù)據(jù)存儲(chǔ)在FLASH中,目前測(cè)試是存儲(chǔ)在片內(nèi) FLASH ,網(wǎng)頁(yè)發(fā)來(lái)的控制數(shù)據(jù)進(jìn)行實(shí)時(shí)的處理。網(wǎng)頁(yè)的數(shù)據(jù)需要用LwIP協(xié)議棧進(jìn)行才T包,LwIP協(xié)議棧是把所有的協(xié)議封裝到一個(gè)單一的過(guò)程(進(jìn)程)中,從
9、而與操作系統(tǒng)內(nèi)核分開。應(yīng)用程序可能也駐留在 LwIP處理過(guò)程中,或者在單獨(dú)的過(guò)程中。TCP/IP棧和應(yīng)用程序之間的通信可以通過(guò)函數(shù)調(diào)用實(shí)現(xiàn),也可以通過(guò)更為抽象的 API4-5.本設(shè)計(jì)的應(yīng)用層使用常用的IPv4協(xié)議,DHCP和靜態(tài)IP都進(jìn)行測(cè)試,傳輸層和網(wǎng)絡(luò)層使用TCP/IP.打包之后的需要介質(zhì)層 MAC進(jìn)行處理,此MAC為Cortex-M3 內(nèi)核自帶的,支持多種 MAC接 口,本設(shè)計(jì)采用 MII接口,所采用的 PHY芯片也是 MII接口,采用 Micrel公司的KSZ8051 , 支持MII、RMII接口,10 Mb/s 和100Mb/s 傳輸速度,設(shè)計(jì)時(shí)采用100Mb/s 傳輸。網(wǎng)頁(yè)的數(shù)據(jù)需
10、要實(shí)時(shí)更新,設(shè)計(jì)網(wǎng)頁(yè)每隔500 ms發(fā)一次更新的命令,Cortex- M3 再將更新的數(shù)據(jù)發(fā)送給網(wǎng)頁(yè)。而這些數(shù)據(jù)來(lái)自APB3上,Cortex-M3 通過(guò)FIC_0和APB3進(jìn)行雙向通信,從而發(fā)送和接收數(shù)據(jù)。FPGA中Fabric和APB3進(jìn)行雙向通信,數(shù)據(jù)存儲(chǔ)在雙端口SRAM中,多路UART和SRAM進(jìn)行雙向通信。SRAM在系統(tǒng)起緩存的作用,用來(lái)解決兩端讀寫速度的不同。而對(duì)于UART的數(shù)據(jù)也定義了協(xié)議,這些協(xié)議是區(qū)分?jǐn)?shù)據(jù)的格式和內(nèi)容。對(duì)于 UART的個(gè)數(shù)可以 進(jìn)行增加,系統(tǒng) UART的同步使用FPGA硬件實(shí)現(xiàn),不受個(gè)數(shù)的限制。1.3 FPGA 的 UART 模塊本系統(tǒng)的主要功能是 UART數(shù)據(jù)
11、的采集與交互,使用網(wǎng)頁(yè)進(jìn)行人機(jī)交換,實(shí)現(xiàn)數(shù)據(jù)的實(shí)時(shí)更新和控制,并且把采樣點(diǎn)的采樣時(shí)間也傳輸過(guò)去,使用戶知道數(shù)據(jù)的具體時(shí)間,便于以后的查看。在本設(shè)計(jì)中需要在SmartFusion2 片內(nèi)的FPGA部分設(shè)計(jì)多路串口數(shù)據(jù)采集與存儲(chǔ)的控制器,實(shí)現(xiàn)對(duì)終端的多路串口數(shù)據(jù)進(jìn)行采集。使用的多路串口數(shù)據(jù)采集方法是在SmartFusion2 片內(nèi)的FPGA中設(shè)計(jì)一個(gè)UART控制器去采集多路數(shù)據(jù)6.控制器并不完成串轉(zhuǎn)并控制,而是實(shí)時(shí)監(jiān)測(cè)多路串口數(shù)據(jù)狀態(tài),并將多路串行數(shù)據(jù)實(shí)時(shí)切換送入RAM控制器,串行的數(shù)據(jù)經(jīng)過(guò) RAM控制器串行的進(jìn)入RAM中去。如圖 4所示。多FS用口FPG八邏輯資源加徜圖4串口復(fù)用數(shù)據(jù)采集當(dāng)多路串
12、口中任何一路,任何時(shí)候到來(lái)數(shù)據(jù)的時(shí)候,UART控制器都能感知這次串行數(shù)據(jù), 并開通相應(yīng)的信道,將某一路的串口數(shù)據(jù)送到RAM控制器。然后RAM控制器將該信道的串行數(shù)據(jù)寫入RAM中。這樣就可以完成對(duì)多路串口數(shù)據(jù)的采集工作。在該方案中,需要在 SmartFusion2 片上的FPGA內(nèi)設(shè)計(jì)一個(gè) UART控制器作為查詢機(jī)制中的主機(jī),各個(gè)終端串口作為從機(jī),提供串口數(shù)據(jù)。主機(jī)會(huì)定時(shí)的在SEL總線上發(fā)出從機(jī)的片選信號(hào),用于選通從機(jī)設(shè)備。當(dāng)從機(jī)被選中之后,從機(jī)自己會(huì)做出判斷,如果該從機(jī)有數(shù)據(jù)需要發(fā)送,則該從機(jī)立刻將串行的數(shù)據(jù)發(fā)出。如果從機(jī)沒(méi)有數(shù)據(jù)需要發(fā)送,則從機(jī)對(duì)該選擇信號(hào)SEL不做任何反應(yīng),定時(shí)時(shí)間到,主機(jī)
13、會(huì)自動(dòng)的去選通下一路從機(jī),從機(jī)工作原理與之類似。這樣的做法同樣可以完成對(duì)多 路串口數(shù)據(jù)的采集工作。2、系統(tǒng)軟件設(shè)計(jì)本設(shè)計(jì)采用FreeRTOS操作系統(tǒng),通過(guò)創(chuàng)建 Webserver進(jìn)程實(shí)現(xiàn)數(shù)據(jù)的交互。在初始化完成后, 執(zhí)行 Webserver進(jìn)程,Webserver進(jìn)程發(fā)送網(wǎng)頁(yè)的數(shù)據(jù)、更新網(wǎng)頁(yè)的數(shù)據(jù)、得到采集的數(shù)據(jù)。而 關(guān)于以太網(wǎng)的協(xié)議則使用 LwIP協(xié)議棧實(shí)現(xiàn)。對(duì)于硬件層則使用Cortex-M3 內(nèi)部的MAC和外部的PHY進(jìn)行傳輸。實(shí)現(xiàn)物理層的傳輸7.因此本設(shè)計(jì)的思路是發(fā)送接收數(shù)據(jù)給網(wǎng)頁(yè)和接收發(fā)送 APB3上對(duì)應(yīng)的地址的數(shù)據(jù)。將 UART的數(shù)據(jù)格式和網(wǎng)頁(yè) HTTP數(shù)據(jù)格式互換。軟件設(shè)計(jì)力I圖如
14、圖 5所示,WebServer進(jìn)程和網(wǎng)頁(yè)進(jìn)行通信,通信的協(xié)議采用 LwIP協(xié)議,對(duì)于 LwIP協(xié)議使用其中的IPv4應(yīng)用層,使用 TCP/IP傳輸,DHCP動(dòng)態(tài)獲取IP,數(shù)據(jù)鏈路層使用內(nèi) 部的MAC,采用100 Mb/s 的MII接口和PHY通信,PHY在物理層上和 PC機(jī)通信8.應(yīng)用層 ;I i 乩雉/II空朧;i *1 數(shù)據(jù)避稀展!圖5軟件設(shè)計(jì)框圖采用自動(dòng)連接的方式與以太網(wǎng)相連,對(duì)于HTTP數(shù)據(jù)采用監(jiān)聽(tīng)的方式,有HTTP數(shù)據(jù)則執(zhí)行相應(yīng)的操作。在網(wǎng)頁(yè)上顯示實(shí)時(shí)的日期和時(shí)間,這個(gè)日期和時(shí)間不是來(lái)自PC機(jī)的,而是來(lái)自SmartFusion2 的,能夠達(dá)到顯示數(shù)據(jù)的采樣時(shí)間,方便用戶查看和保存帶有
15、時(shí)間的數(shù)據(jù)。以太網(wǎng)的初始化首先是 MAC的初始化,將MAC初始化為MII接口,半字節(jié),100 Mb/s 模式。MAC初始化后就是對(duì)于協(xié)議的選擇,本系統(tǒng)選擇TCP/IP協(xié)議,通過(guò)tcpip_input 調(diào)用初始化網(wǎng)絡(luò)的配置。對(duì)于網(wǎng)絡(luò)的配置,首先是MAC地址、IP地址、網(wǎng)關(guān)、子網(wǎng)掩碼的配置(如果為DHCP則 只有MAC地址有效),可以配置為靜態(tài)IP和DHCP兩種模式。靜態(tài)IP使用netif_set_up 函數(shù), DHCP 使用dhcp_star 函數(shù)來(lái)開始。WebServer是系統(tǒng)的主任務(wù),負(fù)責(zé)網(wǎng)頁(yè)和 APB3上數(shù)據(jù)的交互。首先是使用 netconn_bind 函數(shù) 新建一個(gè)80端口(HTTP)的
16、網(wǎng)絡(luò),建立好后就一直處于監(jiān)聽(tīng)狀態(tài)的netconn_listen 函數(shù)。有網(wǎng)絡(luò)連接時(shí)則發(fā)送相應(yīng)的數(shù)據(jù)。如果有網(wǎng)頁(yè)打開數(shù)據(jù)的請(qǐng)求,則開始發(fā)送網(wǎng)頁(yè)的數(shù)據(jù)頭和主界面的 數(shù)據(jù),同時(shí)將網(wǎng)頁(yè)的運(yùn)行的程序也發(fā)送過(guò)去,這樣內(nèi)核就可以方便和網(wǎng)頁(yè)進(jìn)行通信。對(duì)于網(wǎng)頁(yè)的刷新和數(shù)據(jù)請(qǐng)求命令都是已經(jīng)發(fā)送給網(wǎng)頁(yè)了,如果有網(wǎng)頁(yè)的刷新請(qǐng)求則將更新的檢測(cè)數(shù)據(jù)和日期時(shí)間數(shù)據(jù)發(fā)送給網(wǎng)頁(yè)。有點(diǎn)擊控制命令,處理器則馬上響應(yīng),將控制命令轉(zhuǎn)換并發(fā)送給 APB3, 也就發(fā)送給了 UART.當(dāng)然,這里面所有的數(shù)據(jù)都是加了相應(yīng)的通信協(xié)議。如發(fā)送數(shù)據(jù)給網(wǎng)頁(yè)時(shí)則需要使用netconn_write 函數(shù),首先是網(wǎng)頁(yè)數(shù)據(jù)頭,然后是相應(yīng)的數(shù)據(jù)。如果無(wú)網(wǎng)絡(luò)連接、無(wú)網(wǎng)頁(yè)請(qǐng)求、請(qǐng)求完成等都是使用netconn_close 函數(shù)關(guān)閉網(wǎng)絡(luò),使用netbuf_delete 函數(shù)刪除網(wǎng)絡(luò),然后又去監(jiān)聽(tīng)是否有新的網(wǎng)絡(luò)存在并連接。圖6軟件設(shè)計(jì)流程圖以智能家居數(shù)據(jù)采集與交互為例,系統(tǒng)軟件設(shè)置流程圖如圖6所示,首先是時(shí)鐘和外設(shè)的初始化,再是以太網(wǎng)相關(guān)的初始化, 包才MAC和PHY的初始化,IP的獲取方式,設(shè)置MAC地址、IP地址、子網(wǎng)掩碼、網(wǎng)關(guān),設(shè)置傳輸?shù)膮f(xié)議等。硬件層、傳輸層設(shè)置以后就是應(yīng)用層,創(chuàng)建 Webserver應(yīng)用程序。此應(yīng)用程序也是主應(yīng)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 醫(yī)療機(jī)構(gòu)醫(yī)療廢物綜合管理考核試題及答案
- 2025年藥物臨床試驗(yàn)及倫理相關(guān)知識(shí)培訓(xùn)試題及答案
- 2024年勞務(wù)員之勞務(wù)員基礎(chǔ)知識(shí)??寄M試題【附答案】
- 樹的速寫課件
- 重癥護(hù)理知識(shí)考核試題及答案
- 臨床護(hù)理技術(shù)操作常見(jiàn)并發(fā)癥預(yù)防及處理習(xí)題(有答案)
- 2025年國(guó)家網(wǎng)絡(luò)安全宣傳周知識(shí)競(jìng)賽題庫(kù)(試題及答案)
- (2025)全國(guó)安全生產(chǎn)月《安全知識(shí)》必刷題庫(kù)及答案
- 宿舍安全知識(shí)競(jìng)賽題庫(kù)(含答案)
- 2025年夏季消防安全知識(shí)競(jìng)賽試題庫(kù)及答案
- 2025年秋季新學(xué)期教學(xué)工作會(huì)議上校長(zhǎng)講話:我們是不是“跑偏”了
- 2025年計(jì)算機(jī)一級(jí)考試題庫(kù)(附答案)
- 人卵母細(xì)胞成熟度分級(jí)
- 2025年四川大學(xué)生服務(wù)基層項(xiàng)目招募考試(醫(yī)學(xué)基礎(chǔ)知識(shí))歷年參考題庫(kù)含答案詳解(5套)
- 河北省承德市2024-2025學(xué)年高一下學(xué)期期末測(cè)試數(shù)學(xué)試卷
- 刑法基本原則課件
- 2025年會(huì)議接待考試題庫(kù)
- 2025年貴州省中考英語(yǔ)試卷
- 政府職能邊界界定-洞察及研究
- 南京保安考試試題及答案
- 預(yù)見(jiàn)性護(hù)理在骨科的應(yīng)用
評(píng)論
0/150
提交評(píng)論