魏艷艷 蔡葉芳 牛少平 郝沖 航空工業(yè)西安航空計(jì)算技術(shù)研究所 集成電路與微系統(tǒng)設(shè)計(jì)航空科技重點(diǎn)實(shí)驗(yàn)室
在航空飛機(jī)管理系統(tǒng)總線網(wǎng)絡(luò)中,有很多的成品用戶,它們使用的處理器主機(jī)接口都不盡相同,因此設(shè)計(jì)上會有支持各主機(jī)接口的不同邏輯版本,這樣開發(fā)成本高,設(shè)計(jì)驗(yàn)證工作量大,管理維護(hù)不方便。為了解決該問題,本文以成熟邏輯為基礎(chǔ),通過產(chǎn)品需求統(tǒng)型,擴(kuò)展部分技術(shù)需求,結(jié)合項(xiàng)目實(shí)際,進(jìn)行了高集成主機(jī)接口電路的設(shè)計(jì)。該設(shè)計(jì)為連入飛機(jī)管理系統(tǒng)總線網(wǎng)絡(luò)中的成品提供了一套統(tǒng)一、完整、高集成度的總線網(wǎng)絡(luò)接口解決方案。
主機(jī)接口是處理器和芯片之間數(shù)據(jù)交互、寄存器控制狀態(tài)信息傳遞的橋梁。主機(jī)接口主要實(shí)現(xiàn)處理器將發(fā)送數(shù)據(jù)、控制寄存器信息寫到芯片中,從芯片中讀取接收數(shù)據(jù)、相關(guān)寄存器狀態(tài)信息等功能。圖1 所示為主機(jī)接口電路設(shè)計(jì)圖,其內(nèi)部包括主機(jī)接口復(fù)用模塊、PCI 總線接口模塊、16 位異步總線接口模塊、32 位異步總線接口模塊和后端邏輯模塊,外部與處理器、芯片連接。
圖1 主機(jī)接口電路設(shè)計(jì)圖
該模塊主要實(shí)現(xiàn)主機(jī)接口管腳復(fù)用的處理。硬件上有1 套主機(jī)接口管腳,設(shè)計(jì)上按照管腳的I/O 屬性相同或包含的原則進(jìn)行復(fù)用,這樣可以減少芯片的對外引腳。
硬件一上電通過鎖存外部給的2 個(gè)離散量開關(guān)信號,從3 種主機(jī)接口中選擇出1 種,接著按照這種主機(jī)接口進(jìn)行工作,其他2 種主機(jī)接口不工作,這樣功耗低。
該模塊內(nèi)部集成MENTOR 公司的商用PCI32 核,兼容PCIv2.2 協(xié)議,其時(shí)鐘頻率為33MHz/66MHz,支持32 位地址數(shù)據(jù)線、32 位訪問方式、單數(shù)據(jù)段傳輸和突發(fā)傳輸兩種方式,支持PCI 標(biāo)準(zhǔn)配置空間,用戶可以根據(jù)需要配置。其結(jié)構(gòu)框圖如圖2 所示。
圖2 PCI 接口模塊結(jié)構(gòu)框圖
設(shè)計(jì)上支持PCI 從接口,使用目標(biāo)通道T0、T1 和T2,對應(yīng)BAR0、BAR1、BAR2 三個(gè)地址空間,其中T0 被配置為寄存器型的目標(biāo)設(shè)備,T1和T2 被配置為FIFO 類型的目標(biāo)設(shè)備。BAR0 空間保留,BAR1空間為16KB大小,BAR2空間為256KB大小,其基地址可配置。芯片的寄存器通過PCI 轉(zhuǎn)換接口(pcit_if)連接在T1上,數(shù)據(jù)緩沖連接在T2上。PCI 轉(zhuǎn)換接口用于PCI 接口與后端邏輯的時(shí)序轉(zhuǎn)換。
16 位異步總線接口可作為DSP6713、DSP6414、DSP2812 等處理器的外部存儲器接口,主要包括17 個(gè)地址線、16 個(gè)數(shù)據(jù)線、3 個(gè)片選線、1 個(gè)中斷線。
該接口支持32 位訪問方式(需要軟件將一次32 位主機(jī)訪問分為兩次16 位總線訪問),讀操作必須先讀低16 數(shù)據(jù),后讀高16 位數(shù)據(jù),寫操作必須先寫低16 位數(shù)據(jù),后寫高16 位數(shù)據(jù)。
32 位異步總線接口可作為32 位異步總線處理器的外部存儲器接口,主要包括16 個(gè)地址線、32 個(gè)數(shù)據(jù)線、3 個(gè)片選線、1 個(gè)中斷線。該接口支持32 位訪問方式。
設(shè)計(jì)上16 位和32 位異步總線接口的地址空間相同,地址線寬度可根據(jù)實(shí)際使用的地址空間大小進(jìn)行分配。文獻(xiàn)[2]是22位地址線,16 位數(shù)據(jù)線的異步總線接口設(shè)計(jì)。
該模塊主要完成對各主機(jī)接口與后端芯片連接的寄存器和數(shù)據(jù)緩沖存儲資源進(jìn)行選擇及控制處理功能。
設(shè)計(jì)中寄存器包括整個(gè)系統(tǒng)芯片內(nèi)部的控制狀態(tài)信息寄存器和系統(tǒng)要求實(shí)現(xiàn)的寄存器。數(shù)據(jù)緩沖用于存儲芯片收發(fā)消息的數(shù)據(jù)內(nèi)容,數(shù)據(jù)線32 位,地址線16 位。
本文采用硬件描述語言Verilog HDL 實(shí)現(xiàn)RTL 設(shè)計(jì),基于主機(jī)接口模型搭建虛擬仿真平臺,編寫測試用例和運(yùn)行腳本,通過QuestaSim 軟件進(jìn)行虛擬仿真驗(yàn)證。使用Xilinx XC5VLX330T 進(jìn)行FPGA 邏輯綜合,外接PCI 接口的MPC8245 處理器[3-4]或者具有異步總線接口的處理器,開發(fā)配套的驅(qū)動程序和測試軟件,模擬主機(jī)運(yùn)行測試程序在FPGA 原型驗(yàn)證平臺上進(jìn)行FPGA 功能驗(yàn)證。
本文針對航空飛機(jī)管理系統(tǒng)總線網(wǎng)絡(luò)多種處理器主機(jī)接口應(yīng)用的需求,以ASIC 芯片設(shè)計(jì)技術(shù)為技術(shù)手段,集成了3 種主機(jī)接口,并進(jìn)行了該電路的設(shè)計(jì)實(shí)現(xiàn),虛擬仿真驗(yàn)證和FPGA 原型驗(yàn)證。結(jié)果表明,該設(shè)計(jì)的各項(xiàng)功能都正確,滿足系統(tǒng)設(shè)計(jì)要求。該電路具有集成度高、通用性好、低功耗、對外管腳數(shù)目少等多種優(yōu)勢,并且具有高安全、高可靠的特性,已經(jīng)在型號產(chǎn)品的廣泛應(yīng)用中得到認(rèn)可,具有重要的推廣意義。