PCI總線具有支持多種外圍設備、獨立于處理器、數據傳輸快等優點,已經應用于PC機,工控機等多種場合,如數據采集卡,IO控制卡、總線卡等都采用了PCI總線結構。在某綜合測試系統設計時,為提高系統集成化、模塊化的要求,設計研制了基于PCI9054的塔康(TACAN)視頻信號產生板卡。 1 系統組成及設計要求 該系統主要由電源、PCI接口、FPGA邏輯、DSP、D/A轉換等電路組成。其中,電源電路為整個電路板提供電源,PCI接口電路提供PC機和電路板進行信息交互的通道,FPGA負責整個電路系統的邏輯,DSP電路負責整個電路系統的數據運算,D/A轉換電路將DSP產生的包絡數據轉化為模擬信號。塔康視頻信號產生電路的系統結構如圖1所示。 塔康視頻信號產生電路的工作流程為:PC通過PCI接口電路發送控制指令,FPGA通過PCI9054器件接收控制指令并把指令信息傳遞DSP,DSP接收到指令信息后,產生相應操作,D/A轉換電路將DSP產生的包絡數據轉化為模擬信號傳遞出來。塔康視頻信號產生電路將產生符合要求的正弦包絡信號和基準信號。其中,正弦包絡信號主要包含15 Hz正弦包絡信號和135 Hz正弦包絡信號,其函數式為: 式中,f=15 Hz,A0為直流成分,A1、A2分別為15 Hz正弦包絡和135 Hz正弦包絡的幅度。同時,系統在產生15 Hz正弦包絡時還可以產生主基準脈沖群,在產生135 Hz正弦包絡時產生輔助基準脈沖群。通過基準脈沖群信號和正弦包絡的正斜率過零點之間的時間間隔在正弦包絡總時間中占有的比例關系,可確定方位信息。 結合某型塔康的測試需求,該系統的具體設計要求是:15 Hz和135 Hz正弦包絡的信號深度均可調,幅度調整的范圍都是O~40%,最小調整間隔為1%:15 Hz正弦包絡和135Hz正弦包絡的幅度之和在總包絡的幅度所占大小不超過40%;15 Hz正弦包絡的相位在0°~359.9°內可調整,最小調整間隔是0.1°,135 Hz正弦包絡的相位在0°~39.9°內可調整,最小調整間隔也是0.1°。 2 系統硬件電路設計 2.1 電源電路 電源電路的主要功能是為整個電路板系統提供電源。電源電路從PCI插槽中取用3.3 V和5 V電源,通過電壓轉換器LDlll7S18和LDlll7 S12可分別得到1.8 V和1.2 V電壓,供不同的器件使用。 2.2 PCI接口電路 PCI接口電路的主要功能是提供PC和塔康視頻信號產生電路進行信息交互的通道。選用PLX公司的PCI9054器件,該器件符合PCI本地總線規范2.2版,突發傳輸速率可達到132 MB/s,本地總線支持復用/非復用的32位地址/數據,支持主模式、從模式以及DMA傳輸方式。該器件可靠性高,易于開發,滿足系統的要求。 PCI9054通過引導EEPROM進行配置,其與串行EEPROM(IDT70261)的接口電路如圖2所示。PCI9054提供4個引腳與串行IDT70261相連接,它們分別是EEDI,EEDO,EESK,EECS,對應于IDT70261的DI,D0,SK,CS等4個引腳。在上電復位時,PCI9054會通過EEPROM中引導并對寄存器進行配置,完成命令控制和地址映射。 PCI9054局部總線的接口與DSP不完全兼容,需要通過FPGA實現數據的傳輸。因此在FPGA內部構建一個雙口RAM,PCI9054的局部數據線LD[15..0]、局部地址線LA[14..0]與FPGA直接相連,同時PCI9054的局部控制線也與FPGA直接相連,如圖2所示。 2.3 FPGA邏輯電路 FPGA電路的功能是負責整個電路系統邏輯。這里選用ALTERA公司的EP2C8器件,該器件具有8 256個邏輯單元,內嵌36個M4K RAM塊,最大支持128個用戶IO引腳資源,完全滿足設計需要。EP2C8配置了2個下載口:JTAG調試接口和AS模式下載口,其中AS模式使用串行配置器件EPC-S4,存儲容量為4 Mbit。 2.4 DSP電路 DSP電路是整個電路系統的數據運算單元。選用TI公司的TMS320VC5416型DSP,其內嵌128 K×16 bit的RAM和16 K×16 bit的ROM,以及1個40 bit的算術邏輯單元,其主頻可達到160 MHz,滿足設計需要。 DSP作為數據運算中心,需要將運算后的數據傳遞給FPGA,由FPGA進行相關操作。因此,DSP的數據線A[15:0]、地址線D[15:0],其他控制線等與FPGA直接相連,同時DSP通過JTAG口下載程序。DSP接口電路如圖3所示。 2.5 D/A轉換電路 D/A轉換電路的功能是將DSP產生的包絡數據轉化為模擬信號。選用ADI公司的12 bit并行高速D/A轉換器AD9762,其最大數據刷新率為125 MS/s。D/A轉換電路如圖4所示。 3 系統軟件設計 3.1 FPGA功能實現 FPGA開發采用Altera綜合開發平臺Quartus II 6.0,利用VHDL語言開發了雙口RAM、總線控制、地址譯碼、D/A轉換器控制、脈沖序列產生、波道控制和詢問信號檢測等7個功能模塊,分別為:1)設計雙口RAM,用于實現PCI9054數據和DSP數據的交換:2)實現PCI9054本地總線邏輯控制,例如:對雙口RAM的讀寫邏輯;3)實現DSP的地址譯碼邏輯,根據不同的指令選擇不同的功能單元;4)實現D/A轉換器的邏輯控制;5)產生脈沖序列。根據需要,可產生基準脈沖、填充脈沖、應答脈沖、隨機脈沖,組成脈沖序列;6)實現波道控制和衰減控制;7)實現對詢問信號的檢測等。FPGA內部邏輯如圖5所示。 3.2 DSP程序設計 DSP片上程序以CCS2.0為開發平臺,主要包括器件初始化程序、系統初始化程序、包絡數據(由15 Hz和135 Hz正弦信號組成)產生程序、INTO中斷程序、INTl中斷程序和定時器中斷程序。其中,器件初始化程序完成片內外設的初始化(如鎖相環時鐘發生器參數的設置,定時器參數的設置,可屏蔽中斷的設置等);系統初始化程序完成整個系統的初始化(I0地址分配、全局變量的初始化設置和系統外設的初始化);包絡數據產生程序主要產生15 Hz正弦數據表和135Hz正弦數據表兩張函數表;INT0中斷程序完成接收PC指令:INTl中斷主要接收到詢問信號后完成應答功能;定時器中斷程序完成查找函數表并通過計算產生包絡數據,啟動D/A轉換電路產生包絡信號,同時產生脈沖選擇信號,控制FPGA輸出脈沖序列。DSP主程序流程如圖6所示。塔康包絡信號波形如圖7所示。 3.3 PCI驅動程序開發 根據Windows提供的驅動程序模型,使用VC++6.0和DriverStudio軟件編寫了WDM驅動程序。該驅動程序對PCI9054起到內存映射和中斷管理的作用。驅動程序安裝后,應用程序對PCI卡的訪問可通過調用WindowsAPI的函數CreateFile()實現。這樣,對端口的操作最終表現為對一個文件的操作。 4 結論 針對系統模塊化的設計要求,開發了基于PCI9054的塔康視頻信號產生板卡。基于PCI總線的塔康視頻信號產生電路適用于多種工控機平臺,通用性強,并且滿足設計要求,實際使用效果良好,因此具有良好的應用前景。 |