基于Jupiter雙以太網(wǎng)處理器的嵌入式網(wǎng)關(guān)平臺(tái)
嵌入式網(wǎng)關(guān)是基于Internet技術(shù)的分布式設(shè)備網(wǎng)絡(luò)平臺(tái)的關(guān)鍵。它提供一個(gè)不同協(xié)議網(wǎng)絡(luò)通信系統(tǒng)(如RS232接口、RS485接口、RF接口等)和以太網(wǎng)甚至是萬(wàn)維網(wǎng)的連接。嵌入式網(wǎng)關(guān)提供嵌入式Web服務(wù)器以及對(duì)各種接口的連接方法。嵌入式Web服務(wù)器也是專門為嵌入式設(shè)備而設(shè)計(jì)的一種小巧精悍的Web服務(wù)器,能夠運(yùn)行于嵌入式TCP/IP協(xié)議棧上,并能夠提供幾乎所有的傳統(tǒng)Web服務(wù)器所能夠提供的功能。
本文引用地址:http://www.ex-cimer.com/article/151530.htm1 利用嵌入式網(wǎng)關(guān)的工廠管理方案
工廠內(nèi)部利用4 8 5線或者以太網(wǎng)來(lái)傳遞指令,并且可以采用2種方法對(duì)監(jiān)控對(duì)象故障發(fā)送報(bào)警信息:用標(biāo)準(zhǔn)的MODEM命令發(fā)送GSM短消息或通過(guò)SMTP客戶端發(fā)電子郵件。萬(wàn)維網(wǎng)與控制網(wǎng)的交互是借助于嵌入式網(wǎng)關(guān)進(jìn)行的。當(dāng)控制終端通過(guò)萬(wàn)維網(wǎng)向作為智能節(jié)點(diǎn)的現(xiàn)場(chǎng)設(shè)備發(fā)送控制信息時(shí),它首先基于TCP/IP協(xié)議將信息發(fā)送給網(wǎng)關(guān),再由網(wǎng)關(guān)根據(jù)現(xiàn)場(chǎng)設(shè)備總線采用相應(yīng)的TCP/IP協(xié)議、RS485協(xié)議、RS232協(xié)議發(fā)送給相應(yīng)的現(xiàn)場(chǎng)設(shè)備。反過(guò)來(lái)也是這樣,嵌入式網(wǎng)關(guān)主要負(fù)責(zé)現(xiàn)場(chǎng)協(xié)議間的相互轉(zhuǎn)化,通過(guò)嵌入式網(wǎng)關(guān)解決了不同協(xié)議標(biāo)準(zhǔn)的系統(tǒng)集成問(wèn)題,如圖1所示。
2 硬件子系統(tǒng)
Jupiter是韓國(guó)ADC公司生產(chǎn)的32位高速雙以太網(wǎng)處理器,是一款低成本、高性能、建立在以太網(wǎng)系統(tǒng)基礎(chǔ)之上的高性能價(jià)格比的處理器。該芯片內(nèi)含2個(gè)10/1 00Mb/s自適應(yīng)以太網(wǎng)接口,廣泛應(yīng)用于集線器和路由器的設(shè)計(jì),其最大優(yōu)點(diǎn)類似于ARM內(nèi)核的內(nèi)建32位EISC處理器,支持uClinux操作系統(tǒng),是當(dāng)今市場(chǎng)EISC系列的一個(gè)代表產(chǎn)品。Jupiter(EISC結(jié)構(gòu))與CISC芯片相比具有優(yōu)化嵌入式應(yīng)用專長(zhǎng)、代碼優(yōu)化,而芯片結(jié)構(gòu)外平相當(dāng)。Jupiter指令的易操作性使得硬件功能實(shí)現(xiàn)變得更簡(jiǎn)單。
Jupiter處理器工作頻率50MHz,采用16位單周期指令集,運(yùn)算速度快;內(nèi)含4K Cache、2個(gè)10/100Mb/s自適應(yīng)雙以太網(wǎng)控制器、最大支持640×480的彩色STNLCD控制器、2個(gè)串行的UART、2個(gè)DMA、串行SIO控制器、4個(gè)3 2位定時(shí)器及可編程I/O口、1個(gè)中斷控制器、DRAM控制器、ROM/SRAM控制器;芯片系統(tǒng)管理器還包括內(nèi)部3 2位總線的仲裁器和擴(kuò)展存儲(chǔ)器控制器;有8個(gè)3 2MB存儲(chǔ)器空間可供用戶擴(kuò)展;處理器內(nèi)建DHCP Client(含PPPoE、Proxy、DNS)及DHCP Server兩項(xiàng)功能,可廣泛應(yīng)用于IP共享器、Sohu網(wǎng)關(guān)、工業(yè)現(xiàn)場(chǎng)Web服務(wù)器和瀏覽器、家庭網(wǎng)關(guān)、ADSL、工控網(wǎng)絡(luò)控制器等。韓國(guó)ADC公司的Jupiter芯片與其他公司的比較如表1所示。
3 軟件結(jié)構(gòu)
傳統(tǒng)的嵌入式開(kāi)發(fā)所針對(duì)的是一些相對(duì)簡(jiǎn)單的應(yīng)用。通常只有一個(gè)簡(jiǎn)單(或固定的幾個(gè))的應(yīng)用運(yùn)行,實(shí)現(xiàn)的任務(wù)簡(jiǎn)單,并且是針對(duì)具體應(yīng)用的,所以不需要復(fù)雜的任務(wù)管理、調(diào)度機(jī)制。從工程設(shè)計(jì)夠用就行的角度看,使用簡(jiǎn)單的方法燒寫ROM,系統(tǒng)啟動(dòng)后直接執(zhí)行該程序就可以了,根本不需要操作系統(tǒng)參與,開(kāi)發(fā)人員能夠了解所有應(yīng)用啟動(dòng),資源管理細(xì)節(jié),并能夠管理它們。 嵌入式網(wǎng)關(guān)根本作用是把嵌入式設(shè)備同現(xiàn)有的以太網(wǎng)絡(luò)連接起來(lái),但又在很大程度上保持原有嵌入式網(wǎng)絡(luò)的各自功能,所以網(wǎng)關(guān)必須具有解析多種協(xié)議的能力。對(duì)于這種較為復(fù)雜的應(yīng)用,傳統(tǒng)嵌入式設(shè)計(jì)的方法已經(jīng)無(wú)法滿足要求,必須尋求操作系統(tǒng)以應(yīng)付多任務(wù)和復(fù)雜任務(wù)的處理。
uCliux是Linux操作系統(tǒng)的一種,是由Linux2.0內(nèi)核發(fā)展來(lái)的,是專為沒(méi)有MMU的微處理器設(shè)計(jì)的嵌入式Linux操作系統(tǒng)。因?yàn)榇蠖鄶?shù)內(nèi)核源代碼都被重寫,uClinux的內(nèi)核要比原Linux2.0內(nèi)核小的多,但保留了Linux 操作系統(tǒng)的主要優(yōu)點(diǎn):穩(wěn)定性,優(yōu)異的網(wǎng)絡(luò)能力以及優(yōu)秀的文件系統(tǒng)支持.uClinux中u表示Micr0,小的意思,C表示Cntrol,控制的意思,所以u(píng)Clinux就是MicrO-C0ntroller-Linux,字面上的理解就是“針對(duì)微控制領(lǐng)域而設(shè)計(jì)的Linux系統(tǒng)”。
uClinux可以通過(guò)定制使內(nèi)棱小型化,還可以加上GUI(圖形用戶界面)和定制應(yīng)用程序,并將其放在ROM、RAM、Flash或Disk On Chip中啟動(dòng)。由于嵌入式uClinux操作系統(tǒng)的內(nèi)核定制高度靈活性,開(kāi)發(fā)者可以很容易地對(duì)其進(jìn)行按需配置,來(lái)滿足實(shí)際應(yīng)用需要。又由于uClinux是源代碼公開(kāi)的,因此開(kāi)發(fā)人員只要了解內(nèi)核原理就可以自己開(kāi)發(fā)各類驅(qū)動(dòng)程序。
Jupiter芯片是沒(méi)有內(nèi)存管理單元(MMU)的處理器,而uClinux很好地解決了沒(méi)有MMU內(nèi)存管理問(wèn)題,采用存儲(chǔ)器的分頁(yè)管理.系統(tǒng)在啟動(dòng)時(shí)把實(shí)際存儲(chǔ)器進(jìn)行分頁(yè)。系統(tǒng)對(duì)于內(nèi)存的訪問(wèn)是直接的(它對(duì)地址的訪問(wèn)不需要經(jīng)過(guò)MMU,而是直接送到地址線上輸出),所有程序中訪問(wèn)的地址都是實(shí)際的物理地址。操作系統(tǒng)對(duì)內(nèi)存空間沒(méi)有保護(hù)(這實(shí)際上是很多嵌入式系統(tǒng)的特點(diǎn)),各個(gè)進(jìn)程實(shí)際上共享一個(gè)運(yùn)行空間(沒(méi)有獨(dú)立的地址轉(zhuǎn)換表)。
4 網(wǎng)關(guān)的uCIinux的開(kāi)發(fā)
Jupiter已向用戶免費(fèi)提供了uCinux操作系統(tǒng)源代碼及其相關(guān)參考通信類源程序。開(kāi)發(fā)板利用串行口與PC機(jī)串行口相連接,利用Cygwin仿真Linux操作系統(tǒng)環(huán)境,由ADC公司提供的EISCStudio軟件包對(duì)用戶程序進(jìn)行在線Debg通信與調(diào)試。提供C編譯器鏈接、反匯編窗口和存儲(chǔ)器窗口、匯編和C源程序調(diào)試窗口,可單步、宏單步、斷點(diǎn)設(shè)置、斷點(diǎn)運(yùn)行、連續(xù)運(yùn)行、全速運(yùn)行等,通過(guò)變量窗口可觀察并可修改源程序的變量,軟件支持模擬調(diào)試和在線調(diào)試兩種方式。
4.1 uClinux內(nèi)核的生成
首先安裝并運(yùn)行Cygwin(Windows環(huán)境下虛擬Linux系統(tǒng)的軟件)。
進(jìn)入X:cygwinhomeadministratoruClinux-eiSCuClInux-24.20(X為Cygwin安裝所在分區(qū))。
在Cygwin環(huán)境下執(zhí)行:
(1)>mike mroper;
(2)>make Jupiter_c0nfig;
(3)>make 01dconfig;
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評(píng)論