摘 要: 設計并實現(xiàn)一個能完成IP協(xié)議功能的ASIC器件;討論器件的穩(wěn)定工作條件。任何數(shù)字化的工業(yè)設備都可以使用這個IP協(xié)議器件直接連接到基于IP的網(wǎng)絡中。
關鍵詞:嵌入式系統(tǒng); IP; ASIC
引 言
為了實現(xiàn)網(wǎng)絡信息處理,嵌入式系統(tǒng)中必須具有強大的網(wǎng)絡連接功能。嵌入式系統(tǒng)的網(wǎng)絡連接功能不僅需要傳輸信息,同時還必須具有相應的信息識別能力,以提高系統(tǒng)的網(wǎng)絡安全性。
近年來在嵌入式系統(tǒng)和SOC(片上系統(tǒng))技術發(fā)展的推動下,嵌入IP協(xié)議的微處理器或單片機系統(tǒng)已經(jīng)出現(xiàn)[3],為嵌入式網(wǎng)絡技術的應用奠定了基礎。但對于工業(yè)設備來說,特別是對于工業(yè)生產(chǎn)中使用的儀器儀表,采用軟件嵌入IP協(xié)議存在無法并行處理和成本過高的缺點。因此,采用硬件實現(xiàn)IP協(xié)議具有重要的意義。
IP硬件電路設計有嵌入處理器和ASIC兩種方法。使用嵌入處理器的方法設計IP協(xié)議時,需要選擇相應的處理器和附加電路,并根據(jù)所嵌入的處理器編制相應軟件實現(xiàn)IP協(xié)議。這種方法可以采用已有的IP協(xié)議軟件,軟件實現(xiàn)比較方便。使用ASIC技術設計IP協(xié)議屬于硬件實現(xiàn)IP方法,IP協(xié)議的執(zhí)行全部為硬件執(zhí)行。這種實現(xiàn)方法具有的優(yōu)點就是IP協(xié)議的執(zhí)行不受軟件干擾,具有一定的IP協(xié)議層抗干擾能力。ASIC實現(xiàn)IP協(xié)議實現(xiàn)的是一個專用數(shù)字硬件電路,只需要通過相應的控制信號就可以實現(xiàn)IP協(xié)議的功能,具有比較高的性能價格比。
針對工業(yè)設備對IP協(xié)議的需要,本文設計并實現(xiàn)了一個能完成IP協(xié)議功能的ASIC器件。對于工業(yè)控制設備來說,這種器件就是一個實現(xiàn)IP功能的專用器件,只要把要發(fā)送的數(shù)據(jù)傳送給該器件,就可以實現(xiàn)通信過程與控制系統(tǒng)并行操作。任何數(shù)字化的工業(yè)設備,都可以使用這個IP協(xié)議器件直接連接到基于IP的網(wǎng)絡。
一、 協(xié)議分析與IP電路結構設計
IP協(xié)議的功能,是對來自上層協(xié)議的數(shù)據(jù)進行打包和解包處理,通過數(shù)據(jù)報在一個個IP協(xié)議模塊間傳送,直到數(shù)據(jù)報到達目的模塊[2]?;ヂ?lián)網(wǎng)網(wǎng)絡中每個主機和網(wǎng)關設備上都有IP模塊,數(shù)據(jù)報在一個個模塊間通過路由處理網(wǎng)絡地址傳送到目的地址。IPv4的數(shù)據(jù)報報頭格式如圖1所示。IP在提供網(wǎng)絡層服務時,采用了統(tǒng)一的報頭,以使處于各子網(wǎng)中的IP都能根據(jù)報頭對數(shù)據(jù)作出相應的處理。
圖 1 IP協(xié)議報頭格式
IP中使用以下4個關鍵技術實現(xiàn)數(shù)據(jù)報傳輸:
?。?)服務類型(ToS)。ToS是一個參數(shù)集,代表Internet能夠提供的服務,用于指定用戶所希望得到的服務質量。服務類型由網(wǎng)關使用,可用于特定的網(wǎng)絡或是用于下一個要經(jīng)過的網(wǎng)絡,也可用于下一個要對數(shù)據(jù)報進行路由選擇的網(wǎng)關上選擇實際傳送的參數(shù)。
?。?)生存時間(TTL)。生存時間是用戶設置的數(shù)據(jù)報在網(wǎng)絡傳輸過程中的保存時間。生存時間由發(fā)送者設置,由所經(jīng)過的路由處理。如果在到達目的節(jié)點之前生存時間已經(jīng)為零,則IP就會自動拋棄此數(shù)據(jù)報。
?。?)選項(options)。選項包括時間戳、安全和特殊路由要求等。對于控制函數(shù)來說選項是重要的,但對于通常的通信來說一般沒有必要。
(4)報頭校驗碼(checksum)。設置報頭校驗碼的目的,是保證數(shù)據(jù)的正確傳輸。如果校驗出錯,IP將拋棄整個數(shù)據(jù)報。必須注意,與一般工業(yè)控制系統(tǒng)使用的簡單通信協(xié)議不同,IP協(xié)議發(fā)現(xiàn)校驗碼出錯后,并不立即通知發(fā)送端,而是放棄剛剛接收到的一段報文,把糾正報文出錯的任務留給TCP協(xié)議完成。這種方式不僅提高了通信效率,還可以簡化傳輸質量,保證程序。
在設計IP協(xié)議ASIC硬件電路中,有幾個問題需要考慮:
?。?)應用系統(tǒng)的核心處理器,通過控制信號實現(xiàn)對IP協(xié)議器件的使用操作,因此,必須考慮如何通過硬件電路實現(xiàn)核心處理器與IP硬件電路之間的數(shù)據(jù)交換。
?。?)如果IP硬件應用于終端設備(例如工業(yè)控制系統(tǒng)的控制設備)而不是作為交換節(jié)點,IP協(xié)議中有關路由選擇處理的部分可以省略。
?。?)為保證IP協(xié)議的健壯性,電路設計中必須十分注意電路并行協(xié)議操作中不同電路部分的延時不均勻問題。所有功能電路的延時不超過允許范圍,必要時要犧牲速度,保證協(xié)議操作的正確性。
(4)如果每次傳輸?shù)臄?shù)據(jù)量不大(例如作為工業(yè)設備組成的工業(yè)網(wǎng)絡控制系統(tǒng)),可以不考慮IP協(xié)議中的報文分片處理。應用系統(tǒng)只要使每次發(fā)送的數(shù)據(jù)長度符合一個IP數(shù)據(jù)報的長度要求,就能正確無誤地利用IP網(wǎng)絡傳輸數(shù)據(jù)。這樣不僅可以簡化硬件電路,還能節(jié)省緩沖存儲器的容量。
根據(jù)以上討論,IP專用電路的設計,實際上就是通過計數(shù)器、寄存器、RAM來實現(xiàn)外部握手和內部流水線處理電路。由于接收與發(fā)送互相獨立,電路設計中可以把接收和發(fā)送分為兩個各自獨立的部分。由此,IP協(xié)議ASIC專用電路結構框圖如圖2所示。
二、 IP協(xié)議ASIC電路握手操作
IP協(xié)議器件中,發(fā)送電路的任務是對要發(fā)送的數(shù)據(jù)進行加IP報頭的處理,再把打好包的IP數(shù)據(jù)報發(fā)送給MAC層。接收電路的任務是對接收到的IP報進行報頭校驗和拆報處理,最后把數(shù)據(jù)傳輸給微處理器系統(tǒng)。
設計IP協(xié)議硬件電路,一個重要的問題就是數(shù)據(jù)報的接收和發(fā)送機制。使用硬件實現(xiàn)IP協(xié)議的關鍵有兩個:一個是流水線操作,另一個是數(shù)據(jù)存儲方式。
流水線操作是指IP協(xié)議的實現(xiàn)操作采用流水線方式,各操作步驟實行并行處理。作為網(wǎng)絡層協(xié)議,IP協(xié)議操作的速度取決于兩個因素:一個因素是數(shù)據(jù)報存儲方式,另一個因素是MAC層的收發(fā)速度。從IP層所處的位置看,由于IP網(wǎng)絡的接入網(wǎng)以全雙工方式工作,作為硬件器件的工作時鐘必須以發(fā)送和接收時鐘為準。本設計中,以應用系統(tǒng)調用IP協(xié)議信號作為發(fā)送電路操作允許信號,MAC層調用IP協(xié)議信號作為發(fā)送和接收觸發(fā)同步信號,采用同步觸發(fā)時鐘并行控制的技術,實現(xiàn)了IP協(xié)議操作步驟的流水線并行處理。
數(shù)據(jù)報中數(shù)據(jù)的存儲可以有兩種方式:
(1) IP協(xié)議專用RAM方式。采用這種方式時,IP協(xié)議需要有專用的接收和發(fā)送RAM。在發(fā)送操作時,應用系統(tǒng)先將要發(fā)送的數(shù)據(jù)寫入IP專用RAM中,再調用 IP協(xié)議進行發(fā)送處理。在接收操作時,MAC層將接收到的IP協(xié)議數(shù)據(jù)報寫入IP專用RAM中,再由IP協(xié)議進行處理。
?。?) 系統(tǒng)RAM方式。這種方式不需要有IP協(xié)議專用RAM,IP協(xié)議硬件通過握手線使用應用系統(tǒng)或MAC層中的RAM。
對比兩種方式:第一種方式可以把RAM設計在IP協(xié)議電路內部,不需要占用應用系統(tǒng)和MAC層資源,但需要提供系統(tǒng)對IP協(xié)議電路進行數(shù)據(jù)傳送的接口電路;第二種方法不需要采用專用RAM,因此IP協(xié)議電路比較簡單,但需要在IP協(xié)議電路與應用系統(tǒng)和MAC層之間設計出合適的接口電路,做到既要滿足 IP流水線操作的要求,又不會增加應用系統(tǒng)資源負擔。
本文設計的IP協(xié)議硬件中,采取了上述兩種方式綜合的方法:在IP內設置相應數(shù)量RAM模塊,這個RAM模塊不僅是IP協(xié)議的數(shù)據(jù)RAM,同時也是應用系統(tǒng)和MAC層的通信緩沖區(qū)。通過握手線與微處理器和MAC層器件連接,握手線中的時鐘信號控制IP協(xié)議器件中發(fā)送或接收流水線的工作節(jié)拍,使整個協(xié)議處理實現(xiàn)了并行操作。電路模塊如圖3所示。
圖 3 RAM控制邏輯
三、 流水線方式對電路延遲均勻要求的分析
硬件實現(xiàn)IP協(xié)議的特點是協(xié)議操作并行,所有協(xié)議操作的基本內容完全按照協(xié)議的執(zhí)行內容并行完成。例如發(fā)送數(shù)據(jù)過程中數(shù)據(jù)的操作如下:
讀入1字節(jié)-數(shù)據(jù)處理-發(fā)送1字節(jié)
讀入1字節(jié)-數(shù)據(jù)處理-發(fā)送1字節(jié)
讀入1字節(jié)-數(shù)據(jù)處理-發(fā)送1字節(jié)
……
為實現(xiàn)上述操作,除了需要使用外部觸發(fā)信號作為統(tǒng)一時鐘外,各部分電路延遲的誤差還要受到相應的限制。
如圖4所示,IP協(xié)議硬件電路采用的是同步時序電路,以便使各電路能協(xié)調并行工作。
IP協(xié)議的操作,就是對要傳送的數(shù)據(jù)報進行相應處理,因此,電路是否正常由數(shù)據(jù)的穩(wěn)定性決定。如果電路能在規(guī)定的時間內進入穩(wěn)定狀態(tài),則數(shù)據(jù)在處理過程中就不會出現(xiàn)問題;否則,數(shù)據(jù)就會發(fā)生不確定性的變化,這種情況就叫作硬件電路的非正常操作結果。出現(xiàn)非正常操作結果的IP協(xié)議器件是不穩(wěn)定的。
影響IP協(xié)議器件穩(wěn)定性的因素是各級電路操作時間長度和觸發(fā)時鐘周期。從圖4中可以看出,各級電路的操作時間長度必須小于觸發(fā)信號周期,也就是說,必須在一個觸發(fā)周期內完成本級電路的所有操作。根據(jù)有限狀態(tài)機和時序邏輯電路理論可知,各級處理電路都必須是同步時序邏輯電路。另外,各級電路的操作時間長度取決于電路的級聯(lián)層數(shù)和每級的時間延遲。由此可知,要保證IP協(xié)議器件工作穩(wěn)定,必須同時滿足如下2個條件:
?。?) 各級模塊電路處理時間必須小于最小觸發(fā)周期;
?。?) 各級模塊電路內部延遲能滿足處理時間要求。
作為硬件電路,其處理速度實際上就是數(shù)據(jù)在邏輯電路中的傳輸速度,因此,可以通過計算數(shù)據(jù)傳輸經(jīng)過邏輯門的最大時間延遲,確定每級邏輯模塊電路的工作時間。
在IP協(xié)議流水線操作中,設外部觸發(fā)時鐘周期為TCLK,各模塊電路的傳輸延遲時間為ti,采用MOS器件的ASIC電路邊沿動作時間均為tp,各模塊內部傳輸經(jīng)過N級電路,其中每一級的延遲為Δti,則每個模塊電路的總延遲為
ti=NΔti
為保證器件工作穩(wěn)定,需要有
TCLK>ti=NΔti
結束語
嵌入IP協(xié)議的微處理器或單片機系統(tǒng)是嵌入式網(wǎng)絡技術應用的基本技術[2],但工業(yè)設備采用軟件嵌入IP協(xié)議存在無法并行處理或成本過高的缺點。本文針對工業(yè)設備對IP協(xié)議需要所設計的IP協(xié)議專用器件克服了這些不足,為工業(yè)設備提供了實用的、具有較高性能價格比的網(wǎng)絡技術。任何數(shù)字化工業(yè)設備,都可以使用這個IP協(xié)議器件直接連接到基于IP的網(wǎng)絡。
硬件實現(xiàn)的IP協(xié)議,其并行工作的數(shù)字電路系統(tǒng)必須保證數(shù)據(jù)處理的穩(wěn)定性。根據(jù)有限狀態(tài)機和時序邏輯電路理論,實現(xiàn)并行工作的各級處理電路都必須是同步時序邏輯電路。
使用ASCI技術設計IP協(xié)議屬于硬件,是并行操作實現(xiàn)IP協(xié)議技術,不僅IP協(xié)議的執(zhí)行不受軟件和系統(tǒng)中斷干擾,還具有一定的IP協(xié)議層抗干擾能力。由于ASIC實現(xiàn)的IP協(xié)議是一個專用數(shù)字硬件電路,只需要通過相應的控制信號就可以實現(xiàn)IP協(xié)議的功能,具有比較高的性能價格比。
參考文獻
1 Douglas E C,David L S.Internetworking With TCP/IP Vol Ⅰ:Principles,Protocols and Architecture.Second Edition.Department of Computer Science Purdue University, 1998(8)
2 Gary R W,W Richard S.TCP/IP Illustrated,volume 2:The Implementation.Addison Wesley Publishing Company,1995
3 嵌入式系統(tǒng)論文集.中國嵌入式系統(tǒng)主題研討會,2000