999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于FPGA的RAID控制卡實現及仿真研究

2007-01-01 00:00:00劉景寧劉曉芳
計算機應用研究 2007年1期

摘要:首先介紹了基于FPGA的一種RAID控制卡的原理及系統設計、印刷電路板(PCB)的具體實現。由于板卡運行在66MHz總線時鐘之上,必須考慮高頻下電路的性能及電路的信號完整性等, 因而在PCB設計階段對電路的仿真顯得尤為重要。還將介紹基于IBIS模型的信號完整性仿真分析,并利用信號噪聲分析軟件(Hyperlynx)對高速電路設計中的PCB布局布線、匹配電阻設計和并行線串擾分析進行深入研究。根據仿真分析結果調整原設計,從而提高了信號質量,減少開發成本。

關鍵詞:現場可編程邏輯陣列; 磁盤陣列; 仿真; 輸入/輸出緩沖器信息標準; 信號完整性

中圖法分類號:TP302.2文獻標識碼:A

文章編號:1001-3695(2007)01-0261-03

本項目是針對RAID5系列的高性能光纖磁盤陣列系統[1],采用FPGA技術設計一款RAID系統控制卡,實現磁盤陣列啟動、數據緩存(Cache)以及數據XOR校驗等功能。

廉價冗余磁盤陣列(Redundant Array of Inexpensive Disks,RAID)通過將數據分布在多個通道的多個磁盤上,利用并行處理機制使多個獨立磁盤協調工作,達到提高存取速度和增大存儲容量的目的。此外,磁盤陣列通過增加數據的冗余度提高數據的安全性。但計算出冗余信息卻需要消耗系統大量的處理資源。以RAID 5為例,在數據的寫操作和數據的恢復過程中需要執行大量異或運算,過多的校驗計算任務占用了大量的CPU資源,這將導致磁盤陣列服務器對用戶請求的響應時間增加,系統的整體性能被削弱。因而采用擴展的硬件電路實現XOR運算,能夠將CPU從繁重的校驗任務中解脫出來,從而提高陣列服務器整體性能。

傳統的軟件實現RAID系統需要操作系統的支持,RAID的配置信息存在系統信息中,而不是存在硬盤上。當系統崩潰需重新安裝時,RAID的信息也會丟失。因此目前廣泛采用專用的硬件控制卡方式實現RAID系統。RAID控制卡實現系統的啟動及自身初始化及配置等工作。RAID控制卡是一個PCI從設備,接收并執行來自系統的命令,主要實現磁盤陣列系統的初始化、配置及系統的啟動、陣列管理等工作。另外,在磁盤陣列中采用Cache,其作用主要是加速讀操作和緩存小寫,解決RAID5中小寫效率低下的問題。因此,RAID控制卡使用NVRAM(NonVolatile RAM)即非易失性隨機存儲器來增強陣列Cache的性能。

在板卡設計過程中,由于PCB板上電子元器件密度較大,走線較密,信號頻率最高達到66MHz,因此不可避免地要出現EMC(電磁兼容)和EMI(電磁干擾)問題。另外,RAID控制卡在進行PCB設計時由于要滿足PCI協議、集成電路芯片及其他元件的布線要求,其PCB設計要注意的問題更多。本文從項目系統設計、印刷電路板(PCB)設計等方面對整個電路作詳細介紹,并對基于高速數字電路仿真的信號完整性、并行線串擾以及EMC等問題進行深入研究分析,提出基于PCI總線的FPGA的PCB設計中需注意的問題及解決方法,相信對高速電子電路設計有很好的參考作用。

1系統原理及硬件電路設計

本設計中采用PCI總線來作為控制卡與RAID之間數據傳輸的橋梁[2]。控制卡PCI接口工作在32位數據寬度、33MHz~66MHz的總線時鐘之上,數據最大傳輸率高達266Mbps。系統原理如圖1所示。

系統工作原理:系統上電后,FPGA由其專用的配置芯片進行主動配置,10秒鐘內控制卡完成自身初始化工作。在磁盤陣列BIOS的Init功能執行過程中,控制卡截獲中斷Int 19H,并將Flash中的陣列控制代碼作為新的中斷服務程序執行。至此,控制卡即實現對磁盤陣列的主動控制,從而接管數據校驗、數據緩存等操作。控制卡啟動后控制和協調整個系統,管理數據的流動。當數據用戶請求寫入數據時,控制卡緩存數據、計算數據的校驗和,并命令陣列存儲數據及校驗和。讀出數據時,控制卡命令陣列提取數據和相應的校驗信息,并緩存數據、校驗數據有效性。最近寫入或讀出的信息由控制卡緩存在本地的非易失的Cache中,以便進行數據保護和快速提取。

1.1數據緩存的控制功能模塊設計

本設計采用NVRAM實現磁盤陣列Cache。NVRAM由小型鋰電池和低功耗的SRAM(Static RAM,靜態隨機存儲器)組成。當系統斷電后,由此鋰電池對SRAM供電,所以NVRAM既繼承ROM(Read Only Memory,只讀存儲器)的優點——具有非易失性,又摒棄ROM的缺點,支持快速寫操作。在本設計中,磁盤陣列控制器通過PCI總線讀寫NVRAM(選用ST公司 M48Z2M1Y),訪問磁盤陣列Cache。由FPGA芯片對NVRAM進行讀寫控制。NVRAM接口的引腳由信號Addr,DQ,En,Wn和Gn組成,其中信號Addr為單向地址信號;DQ為雙向數據信號。En,Wn和Gn信號分別為芯片使能、輸入使能及輸出使能等控制信號。當Wn為0寫NVRAM,為1讀NVRAM;當Gn信號為0時,DQ信號才輸出讀NVRAM的數據。讀NVRAM時,在A信號輸入地址,驅動控制信號(En=0;Wn=1;Gn=0),一個NVRAM讀周期(大約80ns)后,DQ信號輸出數據;寫NVRAM時,在A信號輸入地址,在DQ信號輸入寫數據,驅動控制信號(En=0;Wn=0;Gn=1),一個NVRAM寫周期(約80ns)后,數據寫入NVRAM。電路原理圖如圖2所示。

1.2陣列傳輸數據的XOR校驗功能模塊電路設計

在工作原理上,當接收到校驗計算任務后該控制卡能以PCI Master方式從內存讀取參加校驗計算的數據并通過硬件執行校驗計算。當校驗結果計算完畢后再以Master方式將其寫回內存。模塊的硬件邏輯設計采用了并行的思想,令數據在PCI總線上的傳輸過程和校驗計算過程在時間上重疊,使得整個校驗過程耗費的時間等同于數據在總線上傳輸的時間,從而最大限度地提高了校驗速度。該功能模塊不需要附加外圍電路,僅消耗FPGA 16KB的片內RAM以實現模塊功能。

1.3陣列啟動的控制功能模塊電路設計

根據PCI協議中利用擴展ROM實現系統啟動的相關介紹,我們可以在該陣列控制卡上實現擴展ROM,擴展ROM的代碼主要包含兩部分,即一部分是在Init功能中截獲BIOS的19H中斷;另一部分是自定義新的Int 19H中斷服務程序實現從控制卡啟動操作系統。具體方法是在板卡上用一塊Flash放置擴展ROM代碼和磁盤陣列控制代碼并編寫相應的控制邏輯以允許程序對其進行訪問。本設計選用AMD公司閃存系列——AM29DL640D,其存儲空間分為四個,兩個8Mb區和兩個24Mb區,以此來實現并發的存取操作。另外,AM29DL640D支持8位或16位數據模式,由BYTE#信號控制。當BYTE#為高時,DQ0~DQ15有效;為低時,DQ0~DQ7有效。另外,CE#,OE# ,WE#分別為片選信號,輸出使能信號和寫使能信號。Flash的控制邏輯由FPGA實現。

1.4PCI總線接口電路設計

目前大多數系統廠家的PCI總線接口均是采用國外的專用控制芯片,但用戶可能只用到PCI接口芯片的部分功能,造成一定的資源浪費,并且在設計上也不能根據系統要求靈活配置。基于以上考慮,本設計采用FPGA(現場可編程門陣列)實現PCI總線協議,將PCI接口邏輯與用戶其他邏輯集成到一個FPGA芯片上,從而實現緊湊的系統設計。當系統升級時,只需對FPGA器件重新進行邏輯設計,而無須更新PCB版圖。PCI規范定義了一系列的電氣兼容要求,如信號環境和I/O緩沖等,因而,考慮開發一個PCI接口之前必須根據這些電氣要求選擇合適的FPGA。當然FPGA的選擇還要考慮其他一些設計要求,如邏輯資源是否豐富,是否需要實現內部RAM,內部RAM的規模有多大等等。除電氣規范外,FPGA必須同時滿足PCI規范的嚴格時序要求。本設計選用Altera 公司Cyclone系列——EP1C12Q240C6[3,7]。我們復用Altera的pci_mt32宏核來實現對設備的PCI接口的設計。通過IP復用技術可以減少開發時間,并且有助于提高設計的穩定性。

PCI總線接口電路單元是整個設計的核心部分,在進行FPGA引腳分配時應充分考慮PCI協議和PCB布局布線等因素的制約。另外,板卡兼容3.3V和5V(即通用卡)的PCI信號,然而Cyclone系列FPGA引腳只支持3.3V PCI信號環境,因此在PCI金手指與FPGA芯片之間必須進行電平轉換。在硬件電路上采用IDT公司QuickSwitch系列芯片——QS3861。當QS3861處于使能狀態時,其輸出電壓隨輸入電壓變化,當輸入電壓上升時,芯片的內阻和輸出端電壓值也隨之增加,但輸出電壓的最大值由芯片工作電壓值決定,即

閾值電壓Vt的典型值為1V。例如,當Vcc為5V時,輸出電壓最大值為4V,即當輸入電壓值再繼續增大時,輸出端電壓被箝位在4V。利用這個特性,我們可以實現5V PCI信號到3.3V PCI信號的轉換[4,7]。電路原理圖如圖3所示。

圖3PCI接口模塊電路原理圖

1.5FPGA配置電路設計

Cyclone系列FPGA支持三種配置方式,即主動串行配置(AS)、被動串行配置(PS)和基于JATG(Joint Test Action Group)配置。控制卡支持AS和JATG兩種方式。對于AS配置方式,需由專用串行配置芯片(本設計選用EPCS4,容量為4MB)對FPGA進行主動配置,作為目標設備的FPGA產生控制信號和同步時序控制信號。當系統上電時,Cyclone先通過nCSO信號拉低nCS,再通過ADSO信號向配置芯片發送配置命令和地址,作為對配置命令的應答。配置芯片在DCLK的下降沿通過DATA0信號發送配置數據;在上升沿通過Cyclone鎖存配置數據。當配置完成時,Cyclone釋放CONF_DONE信號,由于外加上拉電阻作用,CONF_DONE置1。若CONF_DONE信號在配置結束后沒有被正常拉高,Cyclone拉低nSTATUS以啟動配置芯片重新進行配置。另外,由ByteBlasterⅡ下載電纜通過Quartus軟件將配置文件下載到配置芯片。電路原理圖如圖4所示。對于JATG配置方式,主要適用于在線配置,相關參考文章較多,本文不再介紹。

圖4配置電路原理圖

1.6其他電路模塊

控制卡除以上主要電路模塊以外,還包括了電源模塊、USB接口模塊和LCD接口模塊等,由于均為通用電路模塊,本文略。

2PCB關鍵技術

本設計采用四層板結構:信號層-地層-電源層-信號層。普通信號線寬10mil,地線≥30mil,電源線≥20mil。控制卡主要使用的電壓為3.3V和1.5V,因此對電源層進行了分割。其他電源(5V)則采取在信號層上走線(遵循電源布線的原則)的方式。

由于元件密度較大,信號頻率高和PCI協議規范復雜等問題,在控制卡關鍵電路的PCB設計中,應注意如下幾點:(1)關鍵信號一般要相鄰地平面[5],如PCI中的高頻信號、高速信號、時鐘信號等要相鄰地平面布線,以減少電磁輻射防止EMI。對于PCI控制信號中的CLK,CBEN[03],FRAME#,TRDY#,IRDY#等信號,布線時應該盡量走第一信號層。

(2)PCI信號線的走線長度的要求。CLK信號線的長度為2 500mil±100mil。其他信號走線長度應小于1 500mil。對于時鐘線可采取蛇形走線的方式。

(3)PCI總線信號PRSNT1#的PRSNT2#中必須有一個接地。

(4)對于不實現JTAG邊界掃描的板子,必須將引腳TDI與TDO連接起來,以使掃描鏈不至于斷開。

(5)從PCI金手指到去耦電容器焊盤的走線長度不超過250mil,線寬不小于20mil。

(6)注意FPGA去耦電容的布局,使去耦電容與FPGA電源和地端連線盡量短。

3PCB仿真

由于控制板PCI時鐘頻率較高和布線密度較大,為保證板卡質量,減少開發成本,在設計中我們采用了仿真技術來預測可能引起的信號完整性、串繞以及EMC問題,檢測已經完成的布線的傳輸性能,綜合多方面考慮,定出合理的布線約束條件和終端匹配策略等。本設計選用高速仿真工具——Hyperlynx,其提供的BoardSim功能用于布線完成后對PCB的仿真,它包含快速仿真和詳細仿真兩種方式。快速仿真用于快速地分析設計中的信號完整性、電磁兼容性和串擾問題,生成串擾強度報告等。詳細仿真用于對指定網絡進行仿真,可以從示波器觀察波形,并可利用軟件提供的終端適配向導為電路計算出合適的匹配電阻,從而改善信號質量。

3.1仿真模型的建立

器件的仿真模型選用了IBIS模型[6]。IBIS模型是一種基于V/I曲線對輸入/輸出緩沖器快速、準確地提取電氣特性的模型,是反映芯片驅動和接收電氣特性的一種國際標準。它提供一種標準的文件格式來記錄驅動源輸出阻抗、上升—下降時間、輸入負載等參數,非常適合作振鈴、串擾等高頻效應的計算與仿真。IBIS模型一般可從芯片供應商的網站下載。本設計從相關網站上分別獲取以下器件的IBIS模型:QS3861,Cyclone,AM29DL640D,M48Z2M1Y等。

3.2仿真策略及結果分析

由于控制卡電路結構緊湊,PCB按照電路功能模塊進行布局。因此在仿真階段,主要從以下幾個方面對布線后的PCB進行板極仿真(BoardSim)。

3.2.1快速分析整板信號完整性(SI)和EMC問題

通過設置Board Wizard對整板進行SI和EMC快速分析。分析結果以報告形式給出。根據報告分析板上所有網絡的信號完整性,以下信號串擾較強:LPCI_REQN,LPCI_AD31,LPCI_AD21,LPCI_IDSEL,PCI_FRAMEN等。因此在關鍵信號仿真策略中,將對它們進行詳細仿真,并尋找其解決方法。

3.2.2時鐘網絡的SI分析

這部分仿真主要針對PCI時鐘信號進行仿真。將時鐘激勵源設置為66MHz。圖5為時鐘布線及修改前后仿真的波形。

圖5時鐘走線及修改前后的仿真波形圖

從圖5(a)可以看出,時鐘接收端波形正向過沖、負向過沖、振鈴現象較為嚴重。通過分析,在本設計中這些信號的完整性問題主要源于傳輸線過長、信號線網的阻抗失配,或阻抗不連續。由于PCI協議中對時鐘走線長度有很嚴格的規定,因此在保證傳輸線長度的前提下必須給時鐘信號加上適合的終端匹配來改善時鐘信號線的傳輸特性。終端匹配電阻的阻值可以通過Terminator Wizard來精確地計算出,匹配方式采取在信號接收端串聯一個50Ω的電阻。修改后的信號仿真波形得到了很大的改善(圖5(c))。

3.2.3PCI關鍵信號詳細仿真

本仿真策略主要是針對PCI中的高頻信號進行詳細仿真,對串擾嚴重的信號確定其調整策略。從PCI金手指到FPGA的布線密度較大許多信號線不可避免的需要平行

布線,而隨著線與線之間的距離越來越近,相互間的電磁干擾和耦合程度的強度增大,串繞問題就會突顯出來,串繞有可能引起假時鐘,間歇性數據錯誤等,對鄰近信號的傳輸質量造成影響。由產生串繞的原理可知,縮短并行的線長,增加線與線之間的距離改變線寬,改變線厚度,減少介電常數減少電介質厚度,改變在層間的位置都可以減少串繞的強度。以下以串擾嚴重、仿真波形較差的LPCI_AD23信號為例,說明對關鍵信號的仿真過程。信號激勵源為66MHz。圖6(a)中實線為LPCI_AD23初始布線,虛線為串擾信號,圖6(b)為修改布線前的仿真波形。分析發現,波形失真主要由于走線過長而引發串擾。因此通過調整布局布線(調整后的布局布線(圖6(c))來減小走線長度以降低串擾。可以看出調整后的串擾信號明顯減少,仿真波形(圖6(d))也有了較大改善。

圖6LPCI_AD23調整前后布局布線以及仿真波形

本設計中,端接匹配電阻的方式對于串擾問題往往能得到較好的調整效果,但會導致在信號終端聚集大量電阻,且PCI金手指到FPGA信號密集、元器件較多,布局難度增大,因此調整策略以修改布線方式為主。對于少數無法通過調整布局布線獲得較好信號完整性的PCI關鍵信號,我們才采取端接匹配電阻的方式。

4結束語

對高速復雜的數字系統而言,信號完整性仿真分析對于電路板設計是至關重要的。利用仿真結果來修正設計的不足,及時解決電路板信號完整性問題,避免重復制版,縮短了設計周期,節約了設計成本。

目前該RAID控制卡已經投入使用,在66MHz的總線時鐘下,板卡能夠按照預訂功能正常工作。

參考文獻:

[1]張江陵, 馮丹. 海量信息存儲[M]. 北京:科學出版社, 2003.

[2]唐玉華. PCI總線的傳輸協議概述[J]. 計算機工程與科學,1998,20(2):7478.

[3]Cyclone Device Handbook[M]. Altera Corporation, 2003.

[4]Stratix PCI Development Board Datasheet[M]. Altera Corporation,2003.

[5]Howard W Johnson, Martin Graham. High Speed Digital Design[M].Prentice Hall, 1993. 341367.

[6]方國華,劉光斌,余志勇.基于IBIS模型的信號完整性仿真分析[J].電子產品可靠性與環境試驗,20-04,(6):6871.

[7]http://www.altera.com[EB/OL].

作者簡介:

劉景寧(1957),女,湖北武漢人,副教授,碩士生導師,主要研究方向為計算機存儲系統;

劉曉芳(1980),女,湖北武漢人,碩士研究生,主要研究方向為基于磁盤陣列的硬件設計;范俊(1980),湖北溪水人,男,主要研究方向為嵌入式軟硬件設計;童薇(1977),女,湖北武漢人,博士研究生,主要研究方向為基于磁盤陣列的硬件設計。

注:本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文

主站蜘蛛池模板: 亚洲无码视频图片| 国产日本欧美亚洲精品视| 午夜毛片免费看| 日本在线视频免费| 麻豆精品久久久久久久99蜜桃| 欧美激情福利| 伊人精品成人久久综合| 亚洲无码高清视频在线观看| 高清免费毛片| 亚洲精品国产乱码不卡| 国产a网站| 欧美激情视频二区| 欧美日韩一区二区在线播放| 国产精品亚洲一区二区三区z| 毛片免费高清免费| 国产精品成人一区二区| 亚洲一区网站| 国产第一页免费浮力影院| 热re99久久精品国99热| 91精品国产一区| 久久毛片网| 2018日日摸夜夜添狠狠躁| 国产成人禁片在线观看| 亚洲av日韩av制服丝袜| 免费看美女自慰的网站| 中文字幕日韩视频欧美一区| 国产情侣一区| 亚洲男女在线| 亚洲成A人V欧美综合天堂| 亚洲欧美日韩天堂| 人妻免费无码不卡视频| 欧美一区二区三区国产精品| 国产成人做受免费视频| 国内视频精品| 国产成人精品高清不卡在线| 热思思久久免费视频| 国产美女无遮挡免费视频| 国产乱子精品一区二区在线观看| 伊人久久大香线蕉aⅴ色| 第一区免费在线观看| 国产精品亚洲а∨天堂免下载| 性激烈欧美三级在线播放| 天堂网亚洲综合在线| 久久99精品久久久大学生| 欧美日韩成人在线观看| 手机永久AV在线播放| 青青草欧美| 国产精品成人免费视频99| 亚洲av日韩av制服丝袜| 青草国产在线视频| 国产黑人在线| 亚瑟天堂久久一区二区影院| 欧美a在线视频| 91蝌蚪视频在线观看| 国产精品亚洲va在线观看| 欧美精品导航| 亚洲大尺码专区影院| a在线观看免费| 欧美亚洲网| 无码高清专区| 欧美日韩午夜| 999福利激情视频| 亚洲人成网站观看在线观看| AV片亚洲国产男人的天堂| 国产微拍精品| 四虎永久免费网站| 青青青草国产| 亚洲日本韩在线观看| 国产高清免费午夜在线视频| 99久视频| 亚洲精品图区| 欧美三级视频网站| 另类欧美日韩| 91精品啪在线观看国产91九色| 99热这里只有成人精品国产| 国国产a国产片免费麻豆| 免费人成网站在线高清| 97在线观看视频免费| 国产永久免费视频m3u8| 国产香蕉国产精品偷在线观看 | 精品亚洲国产成人AV| 日本成人精品视频|