新聞中心

        EEPW首頁 > 手機與無線通信 > 設計應用 > MIPS千兆網閘系統實現及仿真分析

        MIPS千兆網閘系統實現及仿真分析

        作者: 時間:2006-07-28 來源:網絡 收藏
        摘要 網閘為兩個網絡提供完全的網絡隔離,同時允許信息在兩個網絡間安全傳輸。本文介紹網閘的原理,提供一套網閘架構的設計方案,給出其PCB信號完整性設計方法。該的精確度和穩定性得到了改善,它是新一代網絡安全控制模塊有價值的候選者。
        關鍵詞 網 網閘技術信號完整性

        引 言
        隨著互聯網的快速發展,網絡安全問題日益突出。目前采用最多的網絡安全措施是防火墻類軟件,但防火墻類軟件本身存在先天缺陷。防火墻隔離的網絡是基于TCP/IP協議來進行信息交換的,而TCP/IP本身存在漏洞;同時防火墻的運行離不開操作,操作也可能存在未知的漏洞。采用網絡隔離技術的網閘,能更有效阻斷已知和未知的攻擊,防范安全漏洞,隔離可信網絡和不可信網絡并能保持數據高效交換,從而提供更好的安全保護,是網絡安全技術的發展方向。 CPU作為RISCCPU體系結構的一種,無論是在高端的服務器還是在低端的嵌入式系統中,都得到了廣泛的應用。對網絡速度的要求、服務器的瓶頸、應用方式的變化,也在促使網絡向帶寬發展。千兆網閘系統的開發對于現在及將來的網絡安全意義重大。千兆網閘系統的PCB上有許多高速器件,時鐘速度和信號上升時間很快。PCB本身尺寸也在逐漸縮小,導致PCB密度增加。元器件和PCB的參數、損耗的影響、電源分配、元器件在PCB上的布局、高速信號的布線等因素,都會引起信號的完整性(SI)問題,導致系統工作不穩定,甚至完全不工作。因此高速設計本身已成為設計過程的重要部分。在千兆網閘的系統設計完成之后,必須仔細考慮其信號的完整性設計問題。

        1 設計指導原則
        1.1 網閘技術

        網絡隔離的思路在于:中斷直接連接,把協議剝離掉,還原成原始數據,對數據進行檢查和掃描,防止惡意代碼和病毒,不依賴于操作系統。網絡隔離技術具有最高的安全性,因此成為安全市場的黑馬,而基于網絡隔離技術的產品―網閘,則逐漸成為主流。網閘在OSI七層模型上全面進行隔離。采用三模塊結構―兩個主機子系統、控制電路和存儲介質組成的隔離設備。兩個獨立主機子系統分別連接安全與非安全網絡。保證存儲介質與安全網絡連通時,斷開與非安全網絡的連接;與非安全網絡連通時,斷開與安全網絡的連接,通過數據擺渡安全的數據交換。網閘從物理層進行網絡隔離,消除了數據鏈路的通信協議,剝離了TCP/IP協議和應用協議,在安全交換后再進行協議的恢復和重建。

        本文的網閘系統采用了動態開關技術―基于內存總線的設計。FPGA作為獨立控制電路,存儲介質為雙端口靜態存儲器,以下簡稱DPRAM(Dual Port SRAM)。DPRAM每一個端口的接口部分分別與外部、內部主機的內存系統相連,以在外部、內部主機兩個端口上的開關。兩個開關不能同時閉合,原理如圖1所示。

        1.2信號完整性
        1.2.1概述

        信號完整性是指信號在電路中以正確的時序和電壓做出響應的能力。如果電路中信號能夠以要求的時序、持續時間和電壓幅度到達IC,則該電路具有較好的信號完整性。反之,當信號不能正常響應時,就出現了信號完整性問題。從廣義上講,信號完整性問題主要表現為5個方面:延遲、反射、串擾、同步切換噪聲(SSN)和電磁兼容性(EMC)。

        延遲是指信號在PCB的導線上以有限的速度傳輸,信號從發送端發出到達接收端,其問存在一個傳輸延遲。信號的延遲會對系統的時序產生影響,在高速數字系統中,傳輸延遲主要取決于導線的長度和導線周圍介質的介電常數。反射是指當PCB上導線(高速數字系統中稱為傳輸線)的特征阻抗與負載阻抗不匹配時,信號到達接收端后有一部分能量將沿著傳輸線反射回去,使信號波形發生畸變,甚至出現信號的過沖和下沖。信號如果在傳輸線上來回反射,就會產生振鈴和環繞振蕩。串擾是指由于PCB上的任何兩個器件或導線之間都存在互容(mutualcapacitance)和互感,當一個器件或一根導線上的信號發生變化時,其變化會通過互容和互感影響其他器件或導線。串擾的強度取決于器件及導線的幾何尺寸和相互距離。當PCB上的眾多數字信號同步進行切換時(如CPU的數據總線、地址總線等),由于電源線和地線上存在阻抗,會產生同步切換噪聲,在地線上還會出現地平面反彈噪聲(簡稱地彈)。SSN和地彈的強度取決于集成電路的I/O特性、PCB電源層和地平面層的阻抗以及高速器件在PCB上的布局和布線方式。另外,同其他的電子設備一樣,PCB也有電磁兼容性問題,其產生也主要與PCB的布局和布線方式有關。

        1.2.2千兆系統的SI

        千兆系統有眾多高速信號,信號完整性更加突出。許多低速設備設計中無需考慮的方面,現在都很可能成為系統性能下降甚至崩潰的原因。下面著重討論千兆系統PCB信號完整性設計應重點考慮的一些方面。

        (l)高速器件模型

        能夠進行的前提是,芯片的電氣行為和互連信號線有足夠準確的描述。這主要通過對芯片的緩沖器和走線建模。對芯片的緩沖器建模主要通過SCICE網表描述和通過IBIS模型描述兩種方式。SPICE網表的非常精確,因為它是對緩沖器結構一個幾乎完整的描述;但從另外一方面看,這樣也會造成芯片設計細節的泄漏以及由于仿真涉及的大量計算造成不可容忍的緩慢速度。IBIS模型是行為級模型,只是采用I/V和V/t表的形式來描述芯片I/0單元和引腳的特性,不涉及內部細節,擁有較快的仿真速度;同時,IBIS規范是由國際標準組織ANSI/EIA來維護的,對于所有的仿真軟件有統一的描述規范,得到了絕大多數仿真軟件廠商的支持,因此IBIS模型是當前主要的I/O仿真模型規范。標準元件制造商現在都提供IBIS模型。仿真工具也可以自己建立模型。對于PCB的走線建模主要采用傳輸線模型,可以由2D、2.5D甚至3D的電磁場解析器來。比較熟悉的仿真工具SpecctraQuest中就內嵌了場解析器。

        (2)差分信號

        差分信號通過一對信號線來傳輸。一條信號線上傳輸通常所理解的信號;另一條信號線上則傳輸一個等值而方向相反的信號。如果一條信號線上的電壓高于另一信號線上的電壓,就可得到一種邏輯狀態;而如果前者低于后者就可得到另外一種邏輯狀態。這種信號的優點有:很容易識別小信號;對外部電磁干擾(EMI)是高度免疫的。

        (3)電源分配系統

        電源系統為信號轉換提供穩定的電壓參考,為所有的邏輯器件分配電源,是整個系統的驅動部分,地位十分重要。在電源系統中,電源模塊有極低的輸出阻抗。安裝在板上的電路通過電線、電纜或電路板走線連接到電源。這條線稱為電源分配線。電源分配線具有相對大一些的電感,增大大多數電源的低輸出阻抗。其直流特性可能比較好,但是高頻的阻抗將會增大。這些都影響了電源和地之間的阻抗。電容的寄生參數包括一個等效串連電感(ESL)和一個等效串連電阻(ESR)。電容的模型是電容、電感和電阻的串連。在電路板上布放的大旁路電容,與電源并聯。在一定頻率范圍內,此旁路電容提供了電源和地之間的一個低阻抗回路;但是在一些更高的頻率下,大旁路電容又會因為其引腳電感(ESL)的值增大而失去效果。此時,可以安放小電容陣列來實現第二級的旁路。N個容值為C、ESR值為R、ESI值為L的小電容并聯后,其容值為NC,等效串連電感變為L/N,等效串連電阻變為R/N。平行的電源平面和地平面提供了第三級的旁路電容。這些電容引腳電感和串連電阻值為零,在非常高的頻率下可以減少電源和地噪聲。電源、布線、大旁路電容、小旁路電容陣列與電源和地平面之間的固有電容,在這些因素的共同作用下,在整個工作頻率范圍內為每個邏輯器件提供了一個低的電源源端阻抗,組合起來統稱為多級電源分配系統(multilayereId powar distribution system)。因此,從板級的角度來看,電源分配系統由電源模塊VRM(Voltage Regulator Modtlle)、電源平面和地平面、各種電容組成。它們分別在不同的頻率范圍內做出響應。電源模塊響應的頻率范圍大約是從直流到lkHz,大的電解電容提供電流并在1 kHz~1 MHz的范圍內保持較低阻抗,高頻陶瓷電容組成的小電容陣列在1MHz到幾百MHz的頻率范圍內保持較低阻抗,電源和地平面對則在100 MHz以上發揮重要作用,如圖2所示。

        2 設計方案
        2.1 網閘系統設計
        2.1.1 內外網接口的實現

        考慮到x86架構的安全問題,采用了完全不同于英特爾x86架構的 CPU。由于整個系統的數據交換速度達到千兆,必須要求所選擇的處理器具有很高的處理性能。據此選擇了PMC-Sierra公司的。RM7065C處理器。它是具有指令預取功能的雙發射對稱超標量64位處理器,主頻600MHz,64位SysAD總線工作頻率為100MHz。GT64240是MarvelI公司的北橋芯片。該芯片擁有2個32/64位PCI接口,3個百兆網口,內建有DMA控制器和PCI仲裁器,其內部使用的Crossbar技術能夠提供高達100 Gbps的數據吞吐量,同時允許CPU、PCI、LAN、WAN和memoiy間數據的DMA無阻塞傳輸。Intel 82544GC千兆以太網芯片連接到北橋的PCIO口,數據傳輸采用DMA方式。82371AB是Intel 南橋芯片,與北橋的PCll口相連,為系統提供IDE接口;同時,通過ISA總線連接I/O芯片,再憑借I/0芯片為系統提供PS/2鼠標鍵盤接口。SDRAM為系統內存,采用標準168腳SDRAM插槽,工作時鐘頻率133 MHz,大小為256 Mb。EEPROM使用29C040存放BIOS,大小為4Mb。

        2.1.2隔離設備的實現

        隔離設備由存儲介質和FPGA控制芯片構成。選用的FPGA是Xilinx公司的XC2V40。它是Virtex-II家族中的一員。Virtex-II系列FPGA是Xilinx公司開發的新一代大規模SRAM工藝的主流產品,存儲介質使用的雙口SRAM采用的是兩片IDT公司的IDT70V3579S。采用位擴展方式將32位寬度的數據擴展成64位,以符合SDRAM的64位讀寫方式(64位數據位,8位校驗位)。

        MIPS體系架構中,空間地址是統一編址的。北橋負責完成地址映射。北橋的SDRAM控制器的SCS[3:0]片選端對應一定的地址段。當CPU訪問內存即這些地址段時,就會使能相應的SDRAM的片選信號。本設計使用L/R_SCS3選中FPGA,從而整個隔離設備開始工作。

        利用片選使能雙口SRAM,并把雙口SRAM掛在SDRAM總線上,把雙口SRAM當成SDRAM的一部分,但SDRAM和雙口SRAM不是同時選中。當SPU訪問到相應地址時就能對雙口SRAM進行操作,從而完成數據擺渡的工作。但是,SDRAM操作規范和雙口SRAM的操作規范并不相同,并且如果2個CPU同時寫同一雙口SRAM地址時也會出錯,因此FPGA既要完成不同規范之間的協議轉換,還要完成對雙口SRAM存儲資源的統一管理。

        為避免可能因為同時寫而出現錯誤,把兩片雙口SRAM中32K64位的資源以地址形式分成高低兩部分。考慮到CPU對Cache每次存取數據的大小是2 KB,為了取得較好的Cache命中率,相應地把雙口SRAM資源也分成2 KB大小的段。因為兩片雙口SRAM共有258KB容量,這樣就變成了總共128段,并劃分成了高64段和低64段。把高64段作為左端北橋寫入部分和右端北橋讀出部分,把低64段作為右端北橋寫入部分和左端北橋讀出部分。FPGA發出高7位地址L/R_SEG_AD[14:8]作為雙口SRAM的段地址(選中128段中的某一段),與北橋發出的14位地址L/R_ADD[13:0]中的低8位地址L/R_ADD[7:0](作為段內地址,選中某一段中的某8B)組成DPRAM的15位的完整地址,訪問DPRAM。其示意圖如圖4所示。


        2.2信號完整性設計
        2.2.1 Sl仿真

        實際設計中,運用Cadence公司的SpeccctraQuest(以下簡稱SQ)。SQ是一個功能強大并全面支持IBIS模型的仿真工具,它提供圖形化的拓撲結構顯示(在Sigxplorer中顯示,再調入SigWave顯示仿真結果的波形),可進行完整的有損傳輸線SI:釋放鼠線提取布線前或布線后的互連參數,從而控制驅動能力、阻抗匹配、防止串擾和反射等設計。由于網閘主板中信號數量非常多,對全部信號進行SI分析是不現實的,也是完全沒有必要的。這里采取了重點分析的策略,選取的重要信號是左邊外部子系統的共用信號L_SD_DP_CLK,它是北橋、兩片雙口SRAM―IDT公司的70V3579S(采用位擴展方式將32位數據擴展成64位以符合SDRAM讀寫方式)以及FPGA三者的共同時鐘信號,對它進行仿真分析,結果如圖6所示。

        較粗的一根線是主時鐘芯片發出的數據信號L_SD_DP_CLK,另外四根較細的線分別是北橋、FPGA、兩片雙口SRAM(每片各需要一個)的接收信號波形。無論是接收信號,還是發送信號,波形出現了嚴重的失真:在高電平和低電平的維持階段,信號很不平穩;在高電平處有明顯的振鈴效應;信號上升沿出現了非單調的情況,并且上升沿的切換時間很長;信號的下沖最大接近一900mV,某些信號在下沖幅值比較大時持續時間還比較長,可能會對接收端芯片造成損壞或影響。

        針對仿真出現的情況進行分析,注意到離驅動芯片越遠,越容易出現超過門限的負過沖,且持續時間更長,幅度更大。同時一個驅動芯片有多個接收芯片,要使驅動芯片盡量處于多個接收芯片的中間位置,保證信號完整性。根據分析結果,對布局進行了調整,為主時鐘驅動芯片騰出了空間,相應調整了其他接收芯片的相對位置,并注意調整了源端和負載端的端接電阻值。然后對此信號網絡進行了第2次布線前仿真,其仿真波形如圖7所示。

        圖7中,第1次出現的振鈴、非單調上升沿、下沖、上升沿切換時間過長等現象都得到了極大的改善;而且,與發送信號波形相比,除了一個接收信號稍微有一些差異以外,其他的接收信號幾乎與發送信號波形吻合,說明時延很小,信號完整性得到了保證。仿真結果令人滿意,這樣的布局也是可取的。前仿真作為對新設計探索性的仿真是成功的。

        2.2.2差分信號布線策略

        在千兆信號傳輸中,高速重要信號采用差分信號布線,可以更好地降低串擾、EMI等的影響。在差分線對的布局布線過程中,差分線對中的兩條PCB線應完全一致,即確保差分線對中的PCB線具有完全一樣的阻抗并且布線的長度也完全一致;同時差分線對的布局布線應盡可能地靠近。差分線用眼圖來分析仿真結果。仿真軟件設定隨機序列碼產生眼圖,并且可以輸入抖動與偏移參數分析其對眼圖的影響。

        2.2.3電源分配系統解決方案

        在千兆系統中,要避免SSN的干擾,保證電源分配系統在帶寬范圍內具有較低阻抗。一般在低頻段,采用去耦電容降低阻抗,高頻段主要考慮電源、地平面分布。SPECCTRAQuest可以分析由于封裝結構造成的SSN的影響。其中的Power Integrity軟件采用頻域分析電源分配系統,可以有效分析去耦電容數量與位置以及電源、地平面的影響效果。對EMC,則需要將控制EMC的各項設計規則應用在設計的每一個環節,實現在設計各環節上的規則驅動和控制,設計完成測試驗證后又可以形成新的規則應用到新的設計中。

        結語
        本文講述了網閘的實現原理,給出一套MIPS千兆網閘的實現方案。該設計為同樣采用MIPS IV指令集的國產CPU龍芯2號的推廣和應用提供了借鑒。同時提出的千兆系統PCB信號完整性設計方法具有很強的實用意義和先進性,不僅能夠有效提高產品設計的性能,而且可以大幅縮短產品開發周期,降低開發成本。



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 台南县| 巴林左旗| 湖北省| 蒙山县| 禹州市| 视频| 莆田市| 西贡区| 宿州市| 确山县| 犍为县| 梧州市| 积石山| 陵水| 东乌| 阿拉尔市| 都兰县| 天峨县| 资源县| 太湖县| 郎溪县| 中超| 米易县| 哈尔滨市| 铜山县| 宁陕县| 武汉市| 塔河县| 遵义市| 密山市| 廉江市| 丰城市| 凤庆县| 塔河县| 遂川县| 洪雅县| 视频| 沧州市| 沽源县| 栾城县| 长子县|