SX微控制器的虛擬外設及Internet應用
摘 要:主要介紹美國Ubicom公司的新一代微控制器——SX系列微處理器的特點(diǎn)、體系結構、應用范圍,并著(zhù)重闡述它的虛擬外設思想和Internet應用解決方案。
本文引用地址:http://dyxdggzs.com/article/149257.htm關(guān)鍵詞:SX微控制器 TCP/IP 嵌入式系統 虛擬外設
隨著(zhù)Internet的發(fā)展,現在的應用系統常和網(wǎng)絡(luò )聯(lián)系在一起。然而,對嵌入式系統設計人員來(lái)說(shuō),由于他們中的大部分人對Internet協(xié)議和相關(guān)協(xié)議不是太了解,開(kāi)發(fā)面向 Internet的應用程序是一項艱難復雜的任務(wù)。如何解決這項問(wèn)題也是現在世界上很多微控制器廠(chǎng)商所關(guān)注的。
目前,世界上有很多公司都在大力發(fā)展嵌入式微控制器技術(shù),并提供多種嵌入式 Internet應用解決方案。Ubicom公司是美國一家從事Internet 接入應用的微控制器制造公司,為嵌入式Internet應用提供了高性能微控制器和通信軟件。
隨著(zhù)芯片技術(shù)的迅速發(fā)展和系統設計水平的不斷提高,芯片集成度按照摩爾定律不斷發(fā)展、 CPU速度不斷提高、RISC技術(shù)和虛擬技術(shù)的應用越來(lái)越廣、外部電路逐漸地內部集成化,嵌入式系統的價(jià)格不斷下降,體積不斷縮小。嵌入式系統也逐漸趨向于經(jīng)濟型、微型化和智能化,不斷地從航天、工業(yè)應用走向家庭、社區??梢韵嘈?,將來(lái)的Internet不再僅僅是大型機和 PC機的天下,它會(huì )更加廣闊地運用在每一個(gè)地方。
1 SX微控制器介紹
Ubicom公司的SX系列可配置通信控制器是采用現代CMOS 工藝制造,體系結構與傳統的微控制器不同,它的內部沒(méi)有硬件實(shí)現的接口電路,受外界的干擾比較小,可以突破傳統微控制器時(shí)鐘頻率33 MHz的限制,達到100 MHz,并且它基于RISC的結構,具有高速的計算能力、靈活的 I/O控制、高效的數據處理能力,能夠進(jìn)行高級的處理過(guò)程。它 100 MHz的頻率和優(yōu)化的單周期指令集可以大幅提高它的吞吐量。它的結構是確定的而且是可以重新設計的。這些獨特的特征使得SX芯片可以通過(guò)軟件模塊(虛擬外設 )實(shí)現硬件的實(shí)時(shí)功能。由于用虛擬外設來(lái)實(shí)現硬件的功能,需要的時(shí)候才進(jìn)行加載,有利于資源的充分利用。而且,它利用快速閃存來(lái)存放軟件模塊,對程序設計來(lái)說(shuō)具有很大的靈活性。
2 虛擬外設
虛擬外設(virtual peripheral)是指通過(guò)軟件來(lái)實(shí)現硬件功能的軟件模塊,即把許多需要硬件來(lái)實(shí)現的功能接口,借助處理器的高速處理能力,通過(guò)編寫(xiě)相應的軟件模塊來(lái)實(shí)現。這種虛擬外設的思想,由于應用系統大部分功能采用軟件實(shí)現,從而大大減少了硬件的數量和開(kāi)發(fā)周期,降低了系統的成本。而SX是一種快速的具有完全控制能力的單片控制芯片,能夠完全通過(guò)虛擬外設實(shí)現硬件的實(shí)時(shí)功能。目前,Ubicom已經(jīng)實(shí)現了PWM、A/D、LCD模塊控制、頻率發(fā)生與測量、頻譜分析、 DTMF發(fā)生與檢測、開(kāi)關(guān)控制、Internet協(xié)議棧,以及串行通信接口、USB接口等多種接口。其中Internet協(xié)議棧是最重要的,因為它可以構造與互聯(lián)網(wǎng)相連的微控制器系統。這些虛擬外設通過(guò)函數調用的形式提供給用戶(hù),方便了用戶(hù)設計、縮短了開(kāi)發(fā)應用系統的周期。由于這些函數庫把源代碼提供給了用戶(hù),使得用戶(hù)通過(guò)修改已有的系統,很容易構造自己的應用系統,大大增加了系統的靈活性。
SX的虛擬外設作為中斷服務(wù)子程序在應用軟件中運行,由于 SX具有消除抖動(dòng)和確定性的中斷響應能力,每次都可在精確的時(shí)鐘周期內響應中斷。應用軟件只需在中斷時(shí)簡(jiǎn)單設置或清除相應的虛擬外設功能標志,并將主要的寄存器自動(dòng)地存儲到特殊的硬件堆棧中,就可使虛擬外設像外圍硬件電路一樣不受內部應用程序的干擾而正確執行,起到真正外設的作用。
3 Internet協(xié)議棧
Internet協(xié)議棧是SX虛擬外設的一個(gè)重要的實(shí)現,是基于 SX處理器的應用系統實(shí)現與Internet互聯(lián)的基礎。在Internet 上的多個(gè)計算機和應用程序的通信是通過(guò)不同的通信協(xié)議來(lái)實(shí)現的。這些協(xié)議定義了解釋數據傳輸的規則,是由世界上不同的人員和組織來(lái)定義開(kāi)發(fā)的。從根本上說(shuō), Internet是基于報文分組的網(wǎng)絡(luò ),對于每一個(gè)東西,它最后都被分成大小不同的帶有數據和頭的報文。然而,程序員更愿意使用基于流的數據傳輸機制。 UDP(User Datagram Protocol)協(xié)議是基于報文分組的,而TCP協(xié)議是基于流的傳輸機制的協(xié)議。在應用中,要根據不同的要求來(lái)選用相應的合適的協(xié)議。
SX系列芯片之所以稱(chēng)之為Internet通信控制器,就是因為憑借它高速的處理功能,從軟件上實(shí)現了Internet協(xié)議——TCP/IP協(xié)議棧。通過(guò)這些協(xié)議棧,程序員可以更加方便地開(kāi)發(fā)基于 Internet的嵌入式應用系統。Internet協(xié)議棧包括TCP、UDP 、PPP等虛擬外設,這些協(xié)議通過(guò)應用程序接口(API),可以方便地同應用程序連接起來(lái)。

圖1所示為Ubicom公司用匯編語(yǔ)言實(shí)現的以太網(wǎng)協(xié)議棧,即 TCP/IP軟件的四層抽象分層:最底層,是專(zhuān)門(mén)用來(lái)傳輸IP包的物理層,即NIC設備驅動(dòng)程序;向上一層,是網(wǎng)絡(luò )層,負責數據在網(wǎng)上的端到端傳輸;再向上,是我們熟悉的TCP、UDP的傳輸層,一般的應用程序都是建立在傳輸層上的,例如Web服務(wù)、簡(jiǎn)單郵件服務(wù)。
由于SX芯片的高效性和高速處理能力,它提供的Internet 協(xié)議棧,可以很方便地構造Internet應用系統。例如,用HTTP 協(xié)議可以構造Web服務(wù)器,用SMTP協(xié)議可以構造郵件服務(wù)的客戶(hù)端,用 PPP協(xié)議構造點(diǎn)到點(diǎn)的系統。利用這些服務(wù),就可以方便地實(shí)現遠程控制系統,應用于諸如智能家電、機頂盒、遠程監控系統、防盜系統等系統中去。
4.1 Web服務(wù)器
Web的工作基于客戶(hù)機/服務(wù)器模型,由Web瀏覽器和Web 服務(wù)器構成,兩者之間采用HTTP協(xié)議進(jìn)行通信?;赟X的嵌入式 Web服務(wù)器包含了IP/ICMP協(xié)議、PPP協(xié)議、TCP協(xié)議及HTTP協(xié)議,能和Internet上的任何類(lèi)型的Web瀏覽器進(jìn)行交互式通信,并能夠提供各種類(lèi)型的網(wǎng)絡(luò )資源服務(wù),如:HTML、文本文檔、圖像、Java腳本、Java applets、PDF文檔等。這些資源通過(guò)虛擬外設存儲在外部擴展的EEPROM里。
當瀏覽器與Web服務(wù)器交互時(shí),HTTP通過(guò)統一資源定位器URL(Uniform Resource Locator)來(lái)確定Web服務(wù)器應該為瀏覽器提供哪些資源。為了節省空間,在SX系統上的文件系統不同于傳統的計算機文件系統,它是通過(guò)一種靈活的 Hush算法來(lái)實(shí)現的。EEPROM中的每一個(gè)文件都有一個(gè)不同的 Hush值與之相對應,存取的時(shí)候很快可以計算出文件的地址,因此,既可以節省空間,又提高了存取文件的速度。此外,它可以根據網(wǎng)頁(yè)中嵌入的特殊標志,來(lái)實(shí)現動(dòng)態(tài)網(wǎng)頁(yè),即顯示實(shí)時(shí)采集的數據和進(jìn)行控制操作。下面是用來(lái)讀取系統溫度的動(dòng)態(tài)網(wǎng)頁(yè)程序,其中的“瘃? ”字符是用來(lái)在網(wǎng)頁(yè)中插入溫度的標志,網(wǎng)頁(yè)存放在EEPROM中。
HTML>
HEAD>
TITLE> 實(shí)時(shí)溫度監視器/TITLE>
/HEAD>
BODY BGCOLOR=#404040 text=#80FF00>
center>現在的溫度是:font size=+2color=#FF99FF> 瘃/font>/center>
P>
font color=#FFFFFF>按'F5'鍵,刷新網(wǎng)頁(yè)來(lái)查看現在的溫度/font>
/BODY>
/HTML>
當用戶(hù)發(fā)出頁(yè)面請求時(shí),程序判斷“瘃頡閉餳父鱟址這幾個(gè)字符,在將TCP包的時(shí)候,把溫度值嵌入到網(wǎng)頁(yè)中去,從而實(shí)現通過(guò)網(wǎng)頁(yè)讀取系統的溫度。不過(guò),要注意“瘃頡弊址“? 字符是不在網(wǎng)頁(yè)上顯示的。
4.2 郵件客戶(hù)端
發(fā)送郵件的客戶(hù)端也可以通過(guò)TCP API來(lái)實(shí)現,即通過(guò)TCP協(xié)議的上一層協(xié)議SMTP(簡(jiǎn)單郵件傳輸協(xié)議)來(lái)完成郵件的發(fā)送。Web服務(wù)器使用TCP 連接2,郵件客戶(hù)端使用的是連接1。郵件客戶(hù)端不同于Web服務(wù)器需要等待遠程請求來(lái)建立TCP連接,它初始化并打開(kāi)一個(gè)遠程處在監聽(tīng)狀態(tài)的SMTP(簡(jiǎn)單郵件傳輸協(xié)議)服務(wù)器的TCP連接。監聽(tīng)指的是遠端服務(wù)器的半個(gè)Socket(套接字),它只包括遠程SMTP服務(wù)器的TCP端口,通常是25。一旦連接建立,SMTP服務(wù)器就將請求連接的客戶(hù)端的IP地址和端口號填充Socket。此時(shí),郵件客戶(hù)端就可以接收、發(fā)送數據了。SMTP協(xié)議是基于文本的用來(lái)實(shí)現簡(jiǎn)單命令響應的語(yǔ)言。下面的例子演示了 SMTP是如何工作的
220 Eserv/2.92 ESMTP server ready.
HELO sx
250 Hello 10.1.1.20
MAIL FROM:
250 OK
RCPT TO: joe@demo.sx
250 OK
DATA
354 send the mail data, end with.
Subject: Simple SX message
現在溫度是 28 攝氏度.
250 OK message accepted for delivery
QUIT
221 Service closing transmission channel
綜上所述,可以看出,如果把這種芯片嵌入到家電里,就可以通過(guò)網(wǎng)頁(yè)查看、控制空調、熱水器, 下班的時(shí)候打開(kāi)家里的熱水器,回家以后,就可洗個(gè)舒服的熱水澡;如果把這種芯片嵌入到環(huán)境比較惡劣的實(shí)驗環(huán)境里,就可以脫離輻射、高溫對人體的危害,而能得到實(shí)時(shí)的實(shí)驗數據。
5 嵌入式網(wǎng)絡(luò )產(chǎn)品的未來(lái)展望
由于近年來(lái)Internet及通信產(chǎn)業(yè)的迅猛發(fā)展,半導體制造商都試圖將各種通信協(xié)議集成在一個(gè)芯片內。但是,這種方法在實(shí)現過(guò)程中存在著(zhù)很多問(wèn)題,唯一的解決方案是利用軟件來(lái)完成協(xié)議處理功能。由于SX單片機具有100 MIPS的指令處理速度,加上它的虛擬外設軟件模塊,能夠滿(mǎn)足通常的嵌入式產(chǎn)品的對處理性能的要求;同時(shí),由于該單片機采用軟件來(lái)實(shí)現各種協(xié)議處理,便于將來(lái)在不改變硬件的情況下,只需改變內置程序即可升級整個(gè)嵌入式系統的功能?,F在Ubicom公司發(fā)布的新產(chǎn)品 IP2022更是體現了它的這種思想,而且,軟件模塊的選擇更加方便,功能也更加強大,相信未來(lái)的電器都會(huì )貼上“Web Inside”的標志。
參考文獻
1 樂(lè )德廣,郭東輝,等. 基于SX微處理器的嵌入式Internet技術(shù)及其應用系統的設計. 嵌入式系統論文集,2000.11
2 Ubicom, Inc. Application Note 37(Web Server Send Email Client Implementation with Ethernet as the Physical Layer). January 2000
tcp/ip相關(guān)文章:tcp/ip是什么
相關(guān)推薦
技術(shù)專(zhuān)區
- FPGA
- DSP
- MCU
- 示波器
- 步進(jìn)電機
- Zigbee
- LabVIEW
- Arduino
- RFID
- NFC
- STM32
- Protel
- GPS
- MSP430
- Multisim
- 濾波器
- CAN總線(xiàn)
- 開(kāi)關(guān)電源
- 單片機
- PCB
- USB
- ARM
- CPLD
- 連接器
- MEMS
- CMOS
- MIPS
- EMC
- EDA
- ROM
- 陀螺儀
- VHDL
- 比較器
- Verilog
- 穩壓電源
- RAM
- AVR
- 傳感器
- 可控硅
- IGBT
- 嵌入式開(kāi)發(fā)
- 逆變器
- Quartus
- RS-232
- Cyclone
- 電位器
- 電機控制
- 藍牙
- PLC
- PWM
- 汽車(chē)電子
- 轉換器
- 電源管理
- 信號放大器
評論