WIMAX系統(tǒng)中PCI接口的設(shè)計與實現(xiàn)
WIMAX是基于IEEE 802.16標準的寬帶無線接入城域網(wǎng)技術(shù),根據(jù)IEEE 802. 16標準,用Verilog HDL設(shè)計了PCI接口電路。
本文引用地址:http://cafeforensic.com/article/83566.htm并在FPGA上實現(xiàn)了PCI接口的功能,重點描述了狀態(tài)機控制模塊的設(shè)計和仿真結(jié)果,使用EDA技術(shù)提高了開發(fā)速度,滿足了系統(tǒng)的要求。
1. 引言
隨著計算機控制技術(shù)在各個領(lǐng)域的深入應(yīng)用,為計算機與被控設(shè)備之間提供方便、實用通信方法的PCI(Peripheral Component Interconnection)總線接口成為必不可少的接口部件,其主要功能是完成用戶設(shè)備與PCI總線間的信息傳送接口。
使用可編程器件進行PCI接口的設(shè)計,可以將其他用戶邏輯與PCI接口邏輯集成在一個芯片上,提高系統(tǒng)的開發(fā)速度,縮短二次開發(fā)周期、降低成本,提高系統(tǒng)的集成度和可靠性。
以下是在進行WiMAX(World Interoperability for Microwave Access)的SOC系統(tǒng)開發(fā)時,按照PCI總線2.2版本的規(guī)范,根據(jù)PCI總線傳輸時序來進行狀態(tài)機構(gòu)造,所設(shè)計的PCI總線接口既可支持PCI常規(guī)傳輸,也可支持PCI猝發(fā)(burst)傳輸。
2. WiMAX系統(tǒng)構(gòu)成
2.1 WiMAX硬件系統(tǒng)構(gòu)成
IEEE802.16協(xié)議由MAC(鏈路)子層和PHY (物理)子層構(gòu)成,WiMAX系統(tǒng)的硬件構(gòu)成如圖1所示,其中物理子層對基帶信號進行處理,也即圖中的‘基帶’模塊(BB: Base Band),該模塊的功能是進行編碼/解碼、同步、帶寬請求、IFFT / FFT(快速傅立葉變換/反變換)、交織/反交織等處理;圖1中的其余部分與軟件系統(tǒng)一起構(gòu)成MCA子層,其主要功能是入網(wǎng)注冊、獲取鏈路參數(shù)、測距、基本能力協(xié)商等配置管理工作以及QoS(quality of Service) 。
終端通過PCI總線與工作站進行通信,也可以通過自主開發(fā)的射頻天線系統(tǒng)進行無線傳輸。終端以無線方式與基站進行通信,而基站與基站之間通過Internet進行通信。
2.2 WiMAX硬件系統(tǒng)設(shè)計過程
圖1 WiMAX硬件系統(tǒng)構(gòu)成
在進行系統(tǒng)設(shè)計時,首先根據(jù)系統(tǒng)的功能和現(xiàn)有條件進行合理的軟硬件功能劃分,然后按照自頂向下的方法進行軟件和硬件系統(tǒng)的協(xié)同設(shè)計,硬件系統(tǒng)由圖1所示的各中層模塊構(gòu)成,在此基礎(chǔ)上再對各部分進行細分,直至底層各子模塊的功能全部描述完畢。然后運用EDA技術(shù),使用Verilog HDL語言進行各底層模塊、中層模塊直至頂層模塊的綜合功能設(shè)計、功能模擬和定時分析,通過仿真后下載到FPGA芯片中進一步進行功能驗證和參數(shù)測試,然后進行后端版圖的設(shè)計、直至流片成功。因篇幅所限下面只介紹系統(tǒng)中PCI模塊的設(shè)計仿真過程。
3.PCI總線接口模塊設(shè)計
3.1 PCI接口系統(tǒng)的功能模塊構(gòu)成
PCI接口由如下子模塊構(gòu)成:地址檢查模塊、glue模塊、校驗?zāi)K、數(shù)據(jù)retry模塊、空間配置計數(shù)模塊、狀態(tài)機模塊及外部三總線邏輯。
地址檢查模塊用來檢查接受到的地址是否在配置空間所配置的地址范圍之內(nèi);glue模塊在地址有效期間鎖存來自總線的PCI命令和地址信息,以備后用;校驗?zāi)K在讀周期產(chǎn)生校驗位,以確定所接受到的數(shù)據(jù)是否正確;數(shù)據(jù)retry模塊在PCI應(yīng)答了一個沒有READY(未準備好)的讀/寫操作時,PCI設(shè)備 retry數(shù)據(jù)(保持總線),直到計數(shù)器超時;PCI接口的核心模塊是空間配置模塊和狀態(tài)機模塊??臻g配置模塊提供一套現(xiàn)行的、可預(yù)見的系統(tǒng)配置機構(gòu)的配置措施,使之實現(xiàn)完全的設(shè)備再定位而無需用戶干預(yù)進行安裝、配置和引導(dǎo),并由與設(shè)備無關(guān)的軟件進行系統(tǒng)地址映射,以支持即插即用功能;狀態(tài)機控制保證了板卡能按正常的PCI時序工作,是PCI接口的核心部分。
3.2 PCI總線控制器狀態(tài)機模塊的設(shè)計及實現(xiàn)
狀態(tài)機模塊包含了所有PCI狀態(tài)機的狀態(tài)轉(zhuǎn)移和實現(xiàn),在一個給定的PCI操作期間,狀態(tài)機由IDLE狀態(tài)經(jīng)三條可能的路徑到達其它狀態(tài)。根據(jù)地址周期 PCI_CBE_l和PCI_IDESL上的值來決定是什么操作:配置空間的讀寫、內(nèi)存和I/O的讀或?qū)?。PCI設(shè)備的狀態(tài)機及轉(zhuǎn)移圖如圖2所示。因篇幅限制,狀態(tài)名、狀態(tài)變量說明參考如下verilog代碼注
圖2 狀態(tài)轉(zhuǎn)移圖
評論