專利名稱:用于提供網(wǎng)絡(luò)接入主系統(tǒng)的微控制器設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及用于提供網(wǎng)絡(luò)接入主系統(tǒng)的微控制器設(shè)備,該設(shè)備包括與主系統(tǒng)耦合的可以視作外圍單元的外圍接口,和與所述要接入的網(wǎng)絡(luò)耦合的網(wǎng)絡(luò)接口。
現(xiàn)有技術(shù)描述隨著互聯(lián)網(wǎng)應(yīng)用范圍的迅速擴(kuò)展,電子工業(yè)特別是計算機(jī)工業(yè)的一個發(fā)展方向,是擴(kuò)大不同類型和用途的裝置的通信,和為這些裝置建立網(wǎng)絡(luò)接入?!熬W(wǎng)絡(luò)接入”和“通信”兩詞是一般用語,可以按日常使用的互聯(lián)網(wǎng)接入來理解。在本說明書中,互聯(lián)網(wǎng)接入一詞應(yīng)按廣泛的意義來理解,即涉及所有種類的網(wǎng)絡(luò)接入。
按常規(guī)的網(wǎng)絡(luò)通信辦法,是在計算機(jī)間建立連接,而通信的建立和維持,由具有多層分層結(jié)構(gòu)的計算機(jī)操作系統(tǒng)保證。網(wǎng)絡(luò)通信是以標(biāo)準(zhǔn)的和固定的協(xié)定為基礎(chǔ)的,一視同仁,在國際級別上亦如此。這些協(xié)定包括預(yù)定數(shù)量的各有其相應(yīng)功能的協(xié)議。這些協(xié)議是在數(shù)據(jù)實際傳輸前的信號序列。
這些協(xié)議的詳細(xì)定義和說明,構(gòu)成公眾的和可供使用的信息。RFC(Request For Comments,請求注釋)文件包括作為標(biāo)準(zhǔn)的有效互聯(lián)網(wǎng)協(xié)議,這些文件可以通過向NIC.DDN.MIL發(fā)送FTP或Kermit找到,地址是rfc/rfc####.txt或rfc/rfc####.PS,其中符號“####”是當(dāng)省去開頭的零時被請求的協(xié)議的RFC號碼。舉例說,地址FTP//NIC.DDN.MIL/rfc/rfc####.txt 或FTP//NIC.DDN.MIL/rfc/rfc####.ps中的符號“####”,指請求的協(xié)議的RFC號碼。用在本說明書中協(xié)議的RFC標(biāo)識符是PPP協(xié)議1661和1570和1334IP協(xié)議791和815和1332
TCP協(xié)議793在RFC中沒有直接規(guī)定HTTP協(xié)議,但可以訪問下述地址得到http//www.w3.org,而且在那里經(jīng)??烧业阶钚碌陌姹?。
該種通信要求兩端都有計算機(jī)的分層體系,有鑒于此,可用的環(huán)境和協(xié)定使沒有裝備基于計算機(jī)操作系統(tǒng)的電子裝置,不可能參與任何直接網(wǎng)絡(luò)通信。
在非常廣泛的技術(shù)領(lǐng)域內(nèi),正在使用各種電子裝置,其中,整個網(wǎng)絡(luò)都需要它們的瞬時狀態(tài)的知識,或它們的控制或調(diào)整的知識,例如用于遙測、遙控、或過程控制。需求是非常高的,但迄今為止,只能由執(zhí)行該類任務(wù)的獨立的計算機(jī)來滿足。在大多數(shù)的實際應(yīng)用中,由于價格的限制或空間、能量、或抗御天氣等受限制的可用性,使用獨立的計算機(jī)結(jié)構(gòu)是不可能的。
發(fā)明目的本發(fā)明的目的,是提供一種微控制器設(shè)備,能夠滿足上面指出的要求,并通過與標(biāo)準(zhǔn)總線連接,能為所有電子裝置建立網(wǎng)絡(luò)接入,使這些電子裝置至少有某種有意義的狀態(tài)或參數(shù),以數(shù)字形式供使用。要向之提供網(wǎng)絡(luò)接入的該類電子裝置,下面稱為“主系統(tǒng)”。
發(fā)明概述要達(dá)到該目的,應(yīng)當(dāng)認(rèn)識到,微控制器是小型的、質(zhì)量約為克的、價格低廉又智能化的裝置,可用微碼編程,并且在適當(dāng)?shù)慕Y(jié)構(gòu)安排和程序下,它們能提供主系統(tǒng)和網(wǎng)絡(luò)間的通信。
按照本發(fā)明,是提供一種微控制器設(shè)備,建立通向主系統(tǒng)的網(wǎng)絡(luò)接入,該種微控制器設(shè)備包括-與主系統(tǒng)耦合的外圍接口;-與要接入的網(wǎng)絡(luò)耦合的網(wǎng)絡(luò)接口;-與網(wǎng)絡(luò)接口耦合的存儲裝置,用于存儲與送至和來自網(wǎng)絡(luò)的業(yè)務(wù)有關(guān)的數(shù)據(jù);和-由微碼操作的控制單元,它有一存儲器并與所有列出的裝置耦合,而且被編程,通過檢驗、處理、并且在從主系統(tǒng)到網(wǎng)絡(luò)通信的情況下,在單一層結(jié)構(gòu)內(nèi)產(chǎn)生標(biāo)準(zhǔn)網(wǎng)絡(luò)協(xié)議,為主系統(tǒng)提供網(wǎng)絡(luò)接入,無需使用任何獨立的操作系統(tǒng)。
由此可見,按照本發(fā)明的設(shè)備不包含任何獨立的操作系統(tǒng),從而能以低廉的價格制作又有低的功耗,要求的空間也小。
在一個優(yōu)選的實施例中,與網(wǎng)絡(luò)接口耦合的存儲裝置包括輸入和輸出緩存器,有控制線路與控制單元連接,輸入緩存器適于存儲經(jīng)網(wǎng)絡(luò)接口從網(wǎng)絡(luò)來的數(shù)據(jù),而輸出緩存器適于存儲要經(jīng)網(wǎng)絡(luò)接口傳送至網(wǎng)絡(luò)的數(shù)據(jù)。
在又一個實施例中,存儲在輸入緩存器中的數(shù)據(jù)被順序處理,包括檢驗接收數(shù)據(jù)中包含的協(xié)議,和執(zhí)行條件滿足時為建立通信而要求的判定。
在該設(shè)備要建立新的網(wǎng)絡(luò)連接之前,控制單元考察是否有足夠的空閑容量可供使用,而只有找到足夠可用容量時才連接。
在順序處理輸入數(shù)據(jù)時,對HTTP協(xié)議的考察包括考察“GET”和“POST”命令。如果找到“GET”命令,則讀取輸出緩存器中以前獲得的信息,而如果找到“POST”命令,則為主系統(tǒng)存儲收到的信息。
在又一個實施例中,控制單元中用微碼編制的微程序包括產(chǎn)生標(biāo)準(zhǔn)的互聯(lián)網(wǎng)協(xié)議,并在向網(wǎng)絡(luò)發(fā)送信息的情況下,把產(chǎn)生的互聯(lián)網(wǎng)協(xié)議添加到該信息中。
按照本發(fā)明的微控制器設(shè)備,能夠用于所有技術(shù)領(lǐng)域,因為主系統(tǒng)能由測量物理參數(shù)(如,溫度、速度、壓力)的裝置和由各個安全系統(tǒng)、加熱裝置構(gòu)成,或由自動工業(yè)過程控制裝置構(gòu)成。廣泛的可應(yīng)用性證明,大量生產(chǎn)能進(jìn)一步從根本上降低成本。
因此,為主系統(tǒng)提供簡單的網(wǎng)絡(luò)接入,開創(chuàng)了無限廣闊的應(yīng)用。
附圖簡要描述現(xiàn)在參考附圖,說明按照本發(fā)明的微控制器設(shè)備的結(jié)構(gòu)設(shè)計和工作原理。附圖中
圖1畫出按照本發(fā)明的微控制器設(shè)備的示意結(jié)構(gòu)設(shè)計;圖2是流程圖,表明該設(shè)備的一般工作原理;圖3是流程圖,表明輸入緩存器中信號的處理;圖4是流程圖,表明如何建立新的連接;圖5是流程圖,表明HTTP命令的處理;和圖6是流程圖,表明輸出緩存器中信號的處理。
優(yōu)選實施例描述按照本發(fā)明的設(shè)備的主要任務(wù),在于提供通向主系統(tǒng)的雙向的網(wǎng)絡(luò)接入,如互聯(lián)網(wǎng)或網(wǎng)內(nèi)接入。圖1所示各單元,分別連接在與主系統(tǒng)及互聯(lián)網(wǎng)耦合的雙向總線之間。
該設(shè)備的主要單元由微控制器制成的控制單元1構(gòu)成,微控制器有自己的存儲器并有預(yù)定的存儲容量,還能存儲微碼。該存儲容量比一般用途的個人計算機(jī)的容量要小得多,通常在16kbytes以下??刂茊卧?與該設(shè)備的所有其他單元耦合,而其運行由以微碼編寫的命令控制。控制單元1的任務(wù)包括網(wǎng)絡(luò)通信的控制、主系統(tǒng)的接口的服務(wù)、數(shù)據(jù)傳送及與外圍寄存器的連接的協(xié)調(diào)、和實現(xiàn)來自網(wǎng)絡(luò)的請求。從某種觀點看,該設(shè)備也可以視作主系統(tǒng)的外圍設(shè)備,因為該設(shè)備接收主系統(tǒng)的數(shù)據(jù)并把它們存儲在寄存器中。來自網(wǎng)絡(luò)的請求的處理,由識別和使用適當(dāng)?shù)膮f(xié)議產(chǎn)生。通過用相同協(xié)議和施加特定操作,控制單元1能把存儲在寄存器中的信息轉(zhuǎn)發(fā)至網(wǎng)絡(luò)。
網(wǎng)絡(luò)通信不要求該設(shè)備持續(xù)地和有效地運行,在所有不活動時間,該設(shè)備自動地切換至等待模式,以利于降低功耗。控制單元1支持等待模式并產(chǎn)生需要的控制信號,只要該模式的所有條件都被滿足。應(yīng)當(dāng)指出,在該設(shè)備中,控制單元1有最高的功耗。
控制單元1與它使用的微碼例行程序有關(guān)。這些例行程序是操作程序的例行程序,有助于網(wǎng)絡(luò)協(xié)議及外圍接口與網(wǎng)絡(luò)接口的適當(dāng)?shù)暮秃罄m(xù)的處理。從實際電路的實現(xiàn)方面考慮,哪些部分或單元建立在微控制器內(nèi),及哪些部分可以作為獨立電路來制作,都是無關(guān)要緊的。在有高度集成設(shè)計的情況下,可以降低物理尺寸和功耗,價格也變少。當(dāng)然,最佳的實現(xiàn)辦法,是整個設(shè)備作為單個集成單元制作。該設(shè)備能夠執(zhí)行的工作范圍不受集成度的影響。為便于將來擴(kuò)展,建議提供的設(shè)備的存儲量和處理能力要略有富裕。
該設(shè)備的重要部分由其協(xié)議解釋能力構(gòu)成,這與常規(guī)計算機(jī)網(wǎng)絡(luò)提供的通信方式完全不同,而且該功能可以視作獨立的協(xié)議管理器,對執(zhí)行要求的功能性任務(wù)是必不可少的。
常規(guī)的通信協(xié)議使用的主要功能,由操作系統(tǒng)提供。按照本發(fā)明的的設(shè)備,沒有獨立的操作系統(tǒng),因此,它不用常規(guī)的基于操作系統(tǒng)的通信方式。協(xié)議解釋器用于執(zhí)行該任務(wù),因為除傳送與協(xié)議有關(guān)的信息外,它還要評價并解釋包含在協(xié)議標(biāo)題內(nèi)的信息。因為在計算機(jī)通信中,每個協(xié)議包含在疊加的分層體系的各層內(nèi),協(xié)議標(biāo)題轉(zhuǎn)發(fā)的信息,按順序排列在所有被轉(zhuǎn)發(fā)的數(shù)據(jù)包內(nèi)。協(xié)議解釋器利用如下事實,即任何給定信息的所有參數(shù)都包含在該數(shù)據(jù)包中。由此可見,沒有必要作分層處理,從而沒有必要大量的處理和存儲容量。在設(shè)計網(wǎng)絡(luò)協(xié)議時,最初的目的是使有不同構(gòu)造設(shè)計的計算機(jī)之間能夠通信,因此作出積木式設(shè)計和分層結(jié)構(gòu)。
按照本發(fā)明的設(shè)備,不能視作提供通信的普遍使用的系統(tǒng),它也不用任何一般用途的計算機(jī),因此,沒有必要使用多層系統(tǒng)來提供與網(wǎng)絡(luò)的通信。通過使用單個協(xié)議解釋器,整個系統(tǒng)變得十分簡單。
回到所說的優(yōu)選實施例,控制單元1與實時時鐘2耦合,以提供運行需要的時間和日期數(shù)據(jù)。最好使用石英控制的時鐘2,以提供足夠精度的時間數(shù)據(jù)。時間數(shù)據(jù)規(guī)定的格式是時/分/秒,而日期是年/月/日。
該設(shè)備包括寄存器3,這是設(shè)備與主系統(tǒng)間通信的最重要的裝置。主系統(tǒng)通過寄存器3傳送信息,該信息就是后來要向網(wǎng)絡(luò)轉(zhuǎn)發(fā)的信息。寄存器3在把信息從網(wǎng)絡(luò)轉(zhuǎn)發(fā)主系統(tǒng)中起重要作用。該寄存器由存儲電路構(gòu)成,而控制單元與設(shè)備的所有總線都要訪問存儲在寄存器3中的信息。
輸入緩存器4用于存儲從網(wǎng)絡(luò)來的數(shù)據(jù)??刂茊卧?能夠直接解釋并處理這些數(shù)據(jù)。輸入緩存器4是存儲電路,從網(wǎng)絡(luò)經(jīng)過網(wǎng)絡(luò)接口7到達(dá)的數(shù)據(jù),直接存儲在該輸入緩存器內(nèi)。在對這些數(shù)據(jù)進(jìn)行運算時,控制單元1能把更多數(shù)據(jù)寫入輸入緩存器4,而且還能改變數(shù)據(jù)的順序。
輸出緩存器5是該設(shè)備提供網(wǎng)絡(luò)通信的另外的部件。在這里發(fā)生要通過網(wǎng)絡(luò)傳送的數(shù)據(jù)的存儲,它就是控制單元1收集表征協(xié)議信息的存儲區(qū)。輸出緩存器5也由存儲電路構(gòu)成,數(shù)據(jù)傳送的控制由控制單元1提供。輸出緩存器5的內(nèi)容可以直接傳送至網(wǎng)絡(luò)。
控制單元1與執(zhí)行保護(hù)存儲數(shù)據(jù)任務(wù)的NV RAM控制器6相連,以防萬一電源失效。NV RAM控制器6不斷監(jiān)控電源,如果它的值下降到某個臨界極限值以下,那么,例如通過提供存儲器保護(hù),使數(shù)據(jù)得以保持,以保證該設(shè)備的安全運行。只有在電源電壓回到正常范圍時,才能開始正常的運行。NV RAM控制器6有內(nèi)部的電源,而且它含有智能邏輯電路,如果電源電壓起伏不定,該邏輯電路防止任何錯誤的存儲器控制。
按照本發(fā)明的設(shè)備用網(wǎng)絡(luò)接口7裝置與網(wǎng)絡(luò)耦合,網(wǎng)絡(luò)接口的任務(wù)是提供該設(shè)備需要的所有電子的和邏輯的參數(shù),使該設(shè)備從網(wǎng)絡(luò)看去像正常的站。單是網(wǎng)絡(luò)接口7就能協(xié)調(diào)網(wǎng)絡(luò)上的數(shù)據(jù)業(yè)務(wù),它能從網(wǎng)絡(luò)接收信息又能把該信息寫入輸入緩存器4。網(wǎng)絡(luò)接口7自動地把存儲在輸出緩存器5的信息,傳送至網(wǎng)絡(luò)。它按照相關(guān)網(wǎng)絡(luò)的要求執(zhí)行定時功能,并監(jiān)控該設(shè)備的狀態(tài)。它發(fā)送關(guān)于網(wǎng)絡(luò)狀態(tài)的信息至控制單元1,并響應(yīng)控制單元1的指令,把狀態(tài)信息傳送至網(wǎng)絡(luò)。網(wǎng)絡(luò)接口7是在性質(zhì)上已知的、常規(guī)的單元,它可以是例如RS 232或Ethernet型網(wǎng)絡(luò)接口。
外圍接口8的任務(wù),是在該設(shè)備與主系統(tǒng)間提供標(biāo)準(zhǔn)總線連接。該單元可以用,例如Philips公司的IIC總線,或用Motorola Inc.的SPI總線,或用任何其他標(biāo)準(zhǔn)總線接線制成。該設(shè)備可以用主總線和從總線兩種模式,據(jù)此,電路設(shè)計人員有寬廣范圍的可能性可以利用。在主總線模式,由于有外圍總線8提供的連接,該設(shè)備自動地接收從主系統(tǒng)到達(dá)的數(shù)據(jù)。如果由于任何原因,主系統(tǒng)不能執(zhí)行與該設(shè)備那怕最低級別的通信時,能夠使用該種功能。在從總線模式,該設(shè)備執(zhí)行作為主系統(tǒng)外圍裝置的任務(wù),由此,主系統(tǒng)既能夠從網(wǎng)絡(luò)接收數(shù)據(jù)也能夠向網(wǎng)絡(luò)發(fā)送數(shù)據(jù)。
按照本發(fā)明的設(shè)備的工作原理,現(xiàn)在結(jié)合流程圖2至5加以說明,并舉例說明如何處理從網(wǎng)絡(luò)到達(dá)并指向主系統(tǒng)狀態(tài)數(shù)據(jù)的請求命令。
圖2的流程圖表明該設(shè)備的主要功能單元的工作原理。流程圖上的大寫字母表示在不同流程圖間建立邏輯連接的相關(guān)運行階段。在開始命令之后,該設(shè)備執(zhí)行檢驗功能,首先被檢查的單元是網(wǎng)絡(luò)接口7??刂茊卧?考察開始命令發(fā)布前的等待狀態(tài)中,網(wǎng)絡(luò)是否存在任何可能影響正常運行的失效。如果檢測出該種失效,則控制網(wǎng)絡(luò)接口,使之到達(dá)初始的基態(tài)。
第二檢驗階段是檢查外圍接口8??刂茊卧?檢驗外圍接口中的寄存器,并確定IIC總線的控制器是否正常運行。如果檢測出任何失效,控制單元1將使外圍接口8進(jìn)入初始狀態(tài)。
第三檢驗階段是檢查微碼的完整性,其中,控制單元1計算微碼完整性的控制和。如果在存儲的和計算的數(shù)值間發(fā)現(xiàn)任何偏差,則停止運行并送出失效信號。
在檢驗輸入緩存器4時,控制單元1只確定是否有任何緩存器包含等待處理的信息。如果找到該種信息,那么,開始輸入信息的處理階段,該階段示于圖3。該階段與狀態(tài)X相關(guān)。如果沒有找到該種要處理的信息,下一步是檢查輸出緩存器5的狀態(tài)。該檢查在圖3所示功能執(zhí)行之后開始,這一步也可從圖2和圖3的狀態(tài)Z看出。
控制單元1考察指示輸出緩存器5狀態(tài)的寄存器狀態(tài),并證實哪一個輸出緩存器5包含要轉(zhuǎn)發(fā)的信息。如果存在該種信息,則開始圖6所示并以狀態(tài)W指出的處理。如果控制單元1沒有找到該種數(shù)據(jù),則控制該設(shè)備進(jìn)入等待模式。使設(shè)備進(jìn)入等待模式的條件,也可以在進(jìn)行其他階段時遇到,該條件以狀態(tài)V表示。
因為即使網(wǎng)絡(luò)處于等待模式,控制單元1也能檢查網(wǎng)絡(luò)的活動性,所以在網(wǎng)絡(luò)狀態(tài)變?yōu)榛顒訒r,處理重新開始,而該種活動性將觸發(fā)下一個循環(huán)。
從本發(fā)明設(shè)備的運行觀點看,輸入緩存器4內(nèi)容的處理具有重大意義。從網(wǎng)絡(luò)來的信息,將通過網(wǎng)絡(luò)接口7直接寫入輸入緩存器4。收到的信息的處理,畫在圖3。為了對該過程有清楚的了解,下面解釋表1所示信號序列的處理方法。表1的數(shù)據(jù)準(zhǔn)確地表示輸入緩存器4的內(nèi)容。被存儲的數(shù)據(jù)代表用于互聯(lián)網(wǎng)業(yè)務(wù)的標(biāo)準(zhǔn)TCP/IP分組。表中的列表示順序到達(dá)的信息比特的位置,而每一行對應(yīng)于4字節(jié)即32比特。各行內(nèi)容按順序彼此相接。因為用于互聯(lián)網(wǎng)業(yè)務(wù)的信號序列的詳細(xì)描述,不能成為本說明書的目的,所以下面僅對理解本發(fā)明可能需要的那些信號部分,加以說明。
表10 1 2 301 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+| 0×C0 | 0×21 |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+| 版本 | IHL | 服務(wù)類型 | 總長度 |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+|識別| 標(biāo)志 |分段偏移 |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+| 運行時間 | 協(xié)議 |標(biāo)題檢查和 |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+| 源地址 |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+|目的地址 |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+| 連項 | 填充 |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+| 源端口 |目的地端口 |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+| 序號 |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+| 確認(rèn)號 |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+| | |U|A|P|R|S|F| || 數(shù)據(jù)偏移 | 保留|R|C|S|S|Y|I| 窗口 || | |G|K|H|T|N|N| |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+| 檢查和| 緊急指針 |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+| 選項 | 0|+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+| G ET |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+| A ·HT |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+| M LCR′ LF′ |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+分組可以分為兩個主要部分,第一部分是協(xié)議的標(biāo)題,第二部分是由分組載運的數(shù)據(jù)。
標(biāo)題包括若干個性質(zhì)不同的部分,分別是-PPP協(xié)議標(biāo)題(表1中第一行);-IP協(xié)議標(biāo)題(表1中行2-7);-TCP協(xié)議標(biāo)題(表1中行14);-HTTP REQUEST數(shù)據(jù)(表1中行15和16)。
圖3的判定和操作過程已經(jīng)用小寫字體的字母表示。過程的第一步a是考察,確定信號序列是否包含PPP協(xié)議標(biāo)題??疾斓谝蛔止?jié)的值(表1,行1,第一字節(jié))是否為c0。如果該值不是c0,過程隨即終止而產(chǎn)生狀態(tài)Z。如果找到預(yù)期的值,下一步是檢驗PPP分組(步驟b)和它的存儲(步驟c)。在檢驗步驟中,只要考察PPP分組標(biāo)題在第21比特之后是否包含信息。如果存在該種信息,則把它存儲在控制單元1的有效存儲器內(nèi)。
在判定d中,考察IP協(xié)議標(biāo)題是否接著出現(xiàn)。在該判定中,考察值21是否在前面的標(biāo)題中存在。如果存在,那么,下一段數(shù)據(jù)屬于IP協(xié)議標(biāo)題,然后用操作e繼續(xù)處理。否則,過程再次終止(狀態(tài)Z)。對IP協(xié)議的考察要求有IP協(xié)議標(biāo)題的知識。開始的四比特表示版本號碼。通常用版本4,所舉實施例只能處理該種版本的信號。在操作步驟e中,檢驗IP協(xié)議的標(biāo)題,其中考察第一字段“運行時間”。如果該字段的值是0,則過程停止,而如果該值不同于0,則考察IP協(xié)議標(biāo)題的控制和。該值應(yīng)為IP協(xié)議標(biāo)題中字節(jié)的二進(jìn)制反碼總和的二進(jìn)制反碼。判定f考察IP協(xié)議標(biāo)題中給定的目的地址是否與分配給本發(fā)明設(shè)備的互聯(lián)網(wǎng)地址相同。在相同的情況下,步驟g執(zhí)行TCP協(xié)議標(biāo)題的檢驗。該檢驗涉及TCP協(xié)議標(biāo)題的控制和??刂坪褪菍CP協(xié)議標(biāo)題從開始字節(jié)的值直至該分組整個長度末端的值求和。TCP協(xié)議參數(shù)的存儲由步驟h執(zhí)行。關(guān)于TCP協(xié)議各個參數(shù),要指出的是,它包括長度為16比特的源端口的地址,同樣長度的目的地端口地址,而這些地址用于該兩部分連接時的識別。在本例的情況下,發(fā)送端的端口的地址是6843,目的地端口的值是“1”?!靶蛱枴笔?2比特長的數(shù)字,是數(shù)據(jù)分組中數(shù)據(jù)第一字節(jié)按連續(xù)增加次序的順序號碼。TCP協(xié)議中緊接字段“保留”的六比特,有重要意義,如果該協(xié)議是指新的連接,其中的比特SYN是1,而如果繼續(xù)舊的連接,則它的值是0。該比特的考察發(fā)生在操作i。在新的連接的情況下,產(chǎn)生狀態(tài)U,圖4指出新的連接的建立。
如果連接已經(jīng)在早些時候建立,那么開始步驟j,步驟j只是在TCP協(xié)議標(biāo)題的基礎(chǔ)上判定,下一信息將是HTTP協(xié)議標(biāo)題??隙ǖ捻憫?yīng)將產(chǎn)生圖5所示狀態(tài)T,而沒有響應(yīng)則由狀態(tài)Z繼續(xù)處理。
進(jìn)來信息的處理由圖5所示過程繼續(xù),其中首先判定HTTP協(xié)議中預(yù)期的“GET”字是否到達(dá)。該命令表示遠(yuǎn)程部分的請求。按照本發(fā)明的設(shè)備的基本任務(wù),是執(zhí)行進(jìn)來的HTTP請求。最簡單的請求包括關(guān)鍵字GET、一個空格、和被請求信息的標(biāo)識符。被請求的信息最好是在控制單元1的存儲器中能夠找到的文件的地址。在本例中,該地址是A.HTML。符號“CR”和“LF”是回車信號和換行命令,沒有別的功能。
回到圖5,隨著命令GET的識別,本例的地址從控制單元1讀取存儲的文件內(nèi)容,假定它是遠(yuǎn)程溫度傳感器信號,或是表示主系統(tǒng)狀態(tài)的若干數(shù)據(jù)??刂茊卧?把這些數(shù)據(jù)填入輸出緩存器5,還把由進(jìn)來協(xié)議標(biāo)題存儲的數(shù)據(jù)產(chǎn)生的標(biāo)準(zhǔn)響應(yīng)標(biāo)題,添加到這些數(shù)據(jù)上。該操作能夠通過例行微程序設(shè)計工作方法,根據(jù)互聯(lián)網(wǎng)標(biāo)準(zhǔn)的知識而完成。
數(shù)據(jù)的傳送將由圖2的狀態(tài)W觸發(fā),因為圖2說明的操作包含對輸出緩存器5內(nèi)容的考察。只要在輸出緩存器5中找到數(shù)據(jù),控制單元1按圖6的次序,產(chǎn)生要發(fā)送的分組的外向的協(xié)議標(biāo)題,把它們存儲在輸出緩存器5中,然后把它們轉(zhuǎn)發(fā)至網(wǎng)絡(luò)。如果考察GET命令的結(jié)果是否定的,那么,控制單元在HTTP標(biāo)題中搜索POST命令。找到該命令意味著信息已從網(wǎng)絡(luò)接收,其結(jié)果是,控制單元1把與接收信息對應(yīng)的數(shù)據(jù)發(fā)送至主系統(tǒng)。按照本發(fā)明的設(shè)備的本例實施例,不適合處理GET和POST以外的進(jìn)來的命令,但是,根據(jù)本文公開的信息,能夠?qū)崿F(xiàn)許多其他功能,只是所有這些附加的功能,要求使用相關(guān)的硬件和軟件單元及適當(dāng)?shù)奈⒊绦颉?br>
在圖3的操作i中,考察連接是否是新的。如果是新的,則產(chǎn)生狀態(tài)U,開始圖4所示的過程。首先根據(jù)考察判定,是否有足夠的可用硬件容量來處理接收的分組。按照本發(fā)明的設(shè)備,有預(yù)定數(shù)量的硬件單元和處理容量,本發(fā)明的設(shè)備不能建立多于它的有限容量決定的同時的連接。在最簡單的實施例中,連接的數(shù)量最小可以是1,從而該考察只能是對接線的簡單考察。如果沒有找到足夠的可用容量,新連接的建立將被拒絕,同時控制單元1產(chǎn)生適當(dāng)?shù)捻憫?yīng)。
如果可以建立新的連接,那么,控制單元1將準(zhǔn)備建立該連接,即向發(fā)送端發(fā)出適當(dāng)?shù)捻憫?yīng)??刂茊卧?還考察進(jìn)入的分組的HTTP協(xié)議后面,是否有數(shù)據(jù)到達(dá)。連接的建立只有在數(shù)據(jù)已經(jīng)到達(dá)時(Y分支)才有意義,此時,處理被引導(dǎo)至圖3的步驟j。
根據(jù)上面的例子可以看到,按照本發(fā)明的設(shè)備能夠為主系統(tǒng)提供全數(shù)值的雙向互聯(lián)網(wǎng)接入,無需使用利用操作系統(tǒng)的計算機(jī)系統(tǒng)。已說明的控制單元1的操作方法,不要求比預(yù)期的通常微控制器更高的處理容量。
在已說明的配置中,按照本發(fā)明的設(shè)備,可以視作一種萬能的裝置,因為它的應(yīng)用是不受限制的。主系統(tǒng)可以是安全系統(tǒng)、遙控機(jī)械裝置、過程控制設(shè)備、家用的和工業(yè)的裝置,其中,它們的控制和狀態(tài)信息的讀取能夠通過標(biāo)準(zhǔn)總線進(jìn)行。
由于高度的通用性,值得把本發(fā)明的設(shè)備做在單片芯片內(nèi),假如大批生產(chǎn),價格能夠降得足夠低,不致為可能的廣闊應(yīng)用設(shè)置價格障礙。
權(quán)利要求
1.用于提供網(wǎng)絡(luò)接入主系統(tǒng)的微控制器設(shè)備,包括-與主系統(tǒng)耦合的外圍接口(8);-與所述要接入的網(wǎng)絡(luò)耦合的網(wǎng)絡(luò)接口(7);-與網(wǎng)絡(luò)接口(7)耦合的存儲裝置(4、5),用于存儲與送至和來自網(wǎng)絡(luò)的業(yè)務(wù)有關(guān)的數(shù)據(jù);和-由微碼操作并有存儲器的控制單元(1),所述單元與所有列出的裝置耦合且被編程,通過檢驗、處理,并且在從主系統(tǒng)到網(wǎng)絡(luò)的通信的情況下,在單一層結(jié)構(gòu)內(nèi)產(chǎn)生標(biāo)準(zhǔn)網(wǎng)絡(luò)協(xié)議,為主系統(tǒng)提供網(wǎng)絡(luò)接入,無需使用任何獨立的操作系統(tǒng)。
2.按照權(quán)利要求1的微控制器設(shè)備,其中與網(wǎng)絡(luò)接口(7)耦合的所述存儲裝置,包括輸入緩存器(4)和輸出緩存器(5),以控制線路與控制單元(1)連接,所述緩存器(4)適于存儲經(jīng)網(wǎng)絡(luò)接口(7)從網(wǎng)絡(luò)來的數(shù)據(jù),所述輸出緩存器(5)適于存儲要經(jīng)網(wǎng)絡(luò)接口(7)傳送至網(wǎng)絡(luò)的數(shù)據(jù)。
3.按照權(quán)利要求1的微控制器設(shè)備,其中在輸入緩存器(4)中存儲的數(shù)據(jù)被按順序處理,包括檢驗接收數(shù)據(jù)中包含的協(xié)議,和執(zhí)行條件滿足時為建立通信而要求的判定。
4.按照權(quán)利要求1的微控制器設(shè)備,其中在建立新的網(wǎng)絡(luò)連接之前,所述控制單元(1)考察是否有足夠的空閑容量可供使用,只有找到該可用的容量時才允許連接。
5.按照權(quán)利要求3的微控制器設(shè)備,其中,在對輸入數(shù)據(jù)進(jìn)行順序處理時,對HTTP協(xié)議的考察包括考察“GET”和“POST”命令,如果發(fā)現(xiàn)“GET”命令,則讀取所述輸出緩存器(5)中以前獲得的信息,如果發(fā)現(xiàn)“POST”命令,則為主系統(tǒng)存儲接收的信息。
6.按照權(quán)利要求1的微控制器設(shè)備,其中控制單元(1)用微碼編寫的所述微程序,包括產(chǎn)生標(biāo)準(zhǔn)的互聯(lián)網(wǎng)協(xié)議,并在向網(wǎng)絡(luò)發(fā)送信息的情況下,產(chǎn)生的互聯(lián)網(wǎng)協(xié)議被添加到該信息中。
全文摘要
用于提供網(wǎng)絡(luò)接入主系統(tǒng)的微控制器設(shè)備,包括:與主系統(tǒng)耦合的外圍接口(8);與要接入的網(wǎng)絡(luò)耦合的網(wǎng)絡(luò)接口(7);與網(wǎng)絡(luò)接口(7)耦合的存儲裝置(4、5),用于存儲與送至和來自網(wǎng)絡(luò)的業(yè)務(wù)有關(guān)的數(shù)據(jù);和由微碼操作并有存儲器的控制單元(1),該控制單元與所有列出的裝置耦合且被編程,通過檢驗、處理、并在從主系統(tǒng)到網(wǎng)絡(luò)的通信的情況下,在單一層結(jié)構(gòu)內(nèi)產(chǎn)生標(biāo)準(zhǔn)網(wǎng)絡(luò)協(xié)議,為主系統(tǒng)提供網(wǎng)絡(luò)接入,無需使用任何獨立的操作系統(tǒng)。
文檔編號H04L29/10GK1333892SQ9981561
公開日2002年1月30日 申請日期1999年8月12日 優(yōu)先權(quán)日1999年1月14日
發(fā)明者加博爾·伯爾簡 申請人:弗萊特斯塔克有限公司