国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

高速動(dòng)車(chē)組CPCI總線和ISA總線協(xié)議轉(zhuǎn)換器的研發(fā)

2018-10-20 08:23:56朱孟祥蓋猛劉真
數(shù)碼設(shè)計(jì) 2018年7期

朱孟祥 蓋猛 劉真

摘要:本文提出一種協(xié)議轉(zhuǎn)換器,涉及一種適用于鐵道車(chē)輛主控CPU設(shè)備與MVB設(shè)備之間通信的CPCI總線和ISA總線的協(xié)議轉(zhuǎn)換器和轉(zhuǎn)換方法;實(shí)現(xiàn)高速CPCI總線和慢速I(mǎi)SA總線間穩(wěn)定、可靠通信,該協(xié)議轉(zhuǎn)換器已經(jīng)廣泛應(yīng)用在CRH5型動(dòng)車(chē)組、中國(guó)標(biāo)準(zhǔn)動(dòng)車(chē)組國(guó)產(chǎn)化牽引控制系統(tǒng)中,具有良好的應(yīng)用前景。

關(guān)鍵詞:轉(zhuǎn)換器;MVB;CPCI總線;ISA總線

中圖分類號(hào):TP336 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1672-9129(2018)07-0059-03

Abstract: in this paper, a protocol converter is proposed, which involves a protocol converter and conversion method for the CPCI bus and the ISA bus for the communication between the main CPU equipment and the MVB equipment of the railway vehicle. It realizes the stable and reliable communication between the high-speed CPCI bus and the slow ISA bus. The protocol converter has been widely used in the CRH5 type motor train. It has a good application prospect in the domestic traction control system of the Chinese standard EMU.

Keywords: converter; MVB; CPCI bus; ISA bus

引言

ISA總線(Industry Standard Architecture,工業(yè)標(biāo)準(zhǔn)體系結(jié)構(gòu))是IBM公司為PC制定的總線標(biāo)準(zhǔn),數(shù)據(jù)傳輸?shù)淖罡邆鬏斔俾适?6M/S;ISA總線的傳輸速率低、占用大量CPU資源。隨著總線技術(shù)的發(fā)展,ISA總線逐漸被高速CPCI總線取代。

CPCI(Compact Peripheral Component Interconnect)總線,是國(guó)際工業(yè)計(jì)算機(jī)制造者聯(lián)合會(huì)在上世紀(jì)提出的一種高速總線接口規(guī)范標(biāo)準(zhǔn);它以標(biāo)準(zhǔn)PCI總線電氣接口規(guī)范為基礎(chǔ),工業(yè)用高開(kāi)放性、高可靠性總線,它的總線時(shí)鐘頻率可以達(dá)到66MHz。

ISA總線具有很好的兼容性,多年的技術(shù)積累,ISA總線接口的成熟產(chǎn)品大量存在。由于CPCI總線的可熱插拔、高開(kāi)放性、高可靠性和高傳輸速率,在鐵道車(chē)輛牽引控制器中被廣泛應(yīng)用[1]。但是鐵道車(chē)輛的MVB通信設(shè)備還大量應(yīng)用ISA總線接口,在高速CPCI總線和慢速I(mǎi)SA總線間穩(wěn)定、可靠的通信,為設(shè)備間通信提供CPCI總線、ISA總線轉(zhuǎn)換器和轉(zhuǎn)換方法是廣大鐵道車(chē)輛技術(shù)研發(fā)人員所面臨的問(wèn)題。

高速CPCI總線和慢速I(mǎi)SA總線間穩(wěn)定、可靠通信的關(guān)鍵技術(shù)就是設(shè)計(jì)CPCI總線的局部接口去匹配ISA總線接口。目前應(yīng)用最廣泛的實(shí)現(xiàn)方案是使用PLX公司和AMCC公司生產(chǎn)的專用集成橋片進(jìn)行轉(zhuǎn)接,實(shí)現(xiàn)CPCI總線設(shè)備和ISA總線設(shè)備的通信。橋片的總線模式都提供了一個(gè)標(biāo)準(zhǔn)ISA總線接口,將橋片上的ISA總線接口和設(shè)備上的ISA總線接口直連;使用EEPROM (Electrically Erasable Programmable Read-Only Memory)帶電可擦可編程只讀存儲(chǔ)器來(lái)存儲(chǔ)橋片的配置信息;當(dāng)然還需要一個(gè)微控制器,提供ISA總線時(shí)鐘信號(hào),實(shí)現(xiàn)ISA總線的地址、控制信號(hào)和CPCI總線接口的匹配。使用這種設(shè)計(jì)構(gòu)架,給研發(fā)人員一種偷懶的借口,不需要對(duì)CPCI總線接口規(guī)范有深入了解,這不利于對(duì)現(xiàn)有產(chǎn)品的維護(hù)和對(duì)后續(xù)產(chǎn)品的研發(fā);更糟糕的是用戶受限于硬件橋片,不能根據(jù)自己的想法去控制CPCI總線時(shí)序。而且這給硬件設(shè)計(jì)人員增加了負(fù)擔(dān),相當(dāng)于額外設(shè)計(jì)一個(gè)CPCI總線轉(zhuǎn)ISA總線的接口板卡,增加了設(shè)計(jì)成本;并且大部分用戶只是使用了橋片的部分轉(zhuǎn)接功能,這造成大量的資源浪費(fèi)。

1 整體設(shè)計(jì)方案

由于當(dāng)前列車(chē)牽引控制器中主控單元CPU設(shè)備和控制板卡之間使用標(biāo)準(zhǔn)CPCI總線進(jìn)行通信,主控單元CPU設(shè)備和控制板卡上具有ISA總線接口的MVB設(shè)備也要進(jìn)行實(shí)時(shí)通信,為節(jié)省板卡面積、提高性價(jià)比和設(shè)計(jì)靈活性,設(shè)計(jì)一種CPCI總線和ISA總線的協(xié)議轉(zhuǎn)換器,用于實(shí)現(xiàn)具有CPCI總線接口的主控設(shè)備和具有ISA總線接口的MVB設(shè)備之間的實(shí)時(shí)通信。本設(shè)計(jì)提供一種CPCI總線和ISA總線的協(xié)議轉(zhuǎn)換器和轉(zhuǎn)換方法,解決現(xiàn)有技術(shù)中CPU上的CPCI總線和MVB設(shè)備上的ISA總線無(wú)法直接實(shí)時(shí)通信的問(wèn)題。本設(shè)計(jì)使用FPGA(Field-Programmable Gate Array)即現(xiàn)場(chǎng)可編程門(mén)陣列,編寫(xiě)硬件描述語(yǔ)言[2];該協(xié)議轉(zhuǎn)換器主要由4個(gè)模塊組成[3],分別為CPCI局部總線接口擴(kuò)展時(shí)序模塊、ISA總線接口時(shí)序模塊、CPCI總線匹配ISA總線時(shí)序接口模塊和時(shí)鐘管理模塊。本設(shè)計(jì)整體結(jié)構(gòu)框圖如圖1所示:

2 CPCI局部總線接口擴(kuò)展時(shí)序模塊

CPCI局部總線接口擴(kuò)展時(shí)序模塊主要完成對(duì)CPCI總線的訪問(wèn)空間IO/MEMORY進(jìn)行配置、CPCI總線的讀寫(xiě)訪問(wèn)控制、地址譯碼和命令譯碼。局部CPCI總線與CPCI局部總線接口擴(kuò)展時(shí)序模塊之間的接口連接如圖1所示。兩者之間的主要信號(hào)包括:地址與數(shù)據(jù)信號(hào)AD【31:0】、命令/字節(jié)使能信號(hào)C/BE【3:0】、從設(shè)備準(zhǔn)備好信號(hào)TRDY、停止數(shù)據(jù)傳送信號(hào)STOP、幀周期信號(hào)FRAME和主設(shè)備準(zhǔn)備好信號(hào)IRDY[4]。

CPCI局部總線接口擴(kuò)展時(shí)序模塊與ISA總線接口時(shí)序模塊的接口連接如圖1所示。兩者之間的主要信號(hào)包括數(shù)據(jù)使能信號(hào)S_DATA_VLD、地址使能信號(hào)ADDR_VLD、讀使能信號(hào)barx_rd、寫(xiě)使能信號(hào)barx_wr、字節(jié)使能信號(hào)S_CBE、數(shù)據(jù)信號(hào)D【31:0】和地址信號(hào)A【31:0】。

采用XILINX公司的IP CORE模塊對(duì)CPCI總線的操作命令進(jìn)行識(shí)別,產(chǎn)生讀/寫(xiě)使能信號(hào)S_WRDN、地址使能信號(hào)ADDR_VLD、數(shù)據(jù)使能信號(hào)S_DATA_VLD、字節(jié)使能信號(hào)S_CBE和空間譯碼信號(hào)BASE_HIT。

由于CPCI總線和ISA總線的讀/寫(xiě)速度不一致,需要建立中間數(shù)據(jù)緩存區(qū)BUFFER,即當(dāng)CPCI總線的寫(xiě)操作即將發(fā)生時(shí),將CPCI總線數(shù)據(jù)寫(xiě)到數(shù)據(jù)緩存區(qū)BUFFER,再傳給ISA總線;當(dāng)CPCI總線的讀操作即將發(fā)生時(shí),將ISA總線數(shù)據(jù)先傳給數(shù)據(jù)緩存區(qū)BUFFER,再傳給CPCI總線。

當(dāng)前牽引控制器中基于ISA總線的MVB設(shè)備來(lái)自不同的供應(yīng)商,各供應(yīng)商的MVB通信設(shè)備支持的ISA總線的操作方式不一樣,可為 IO設(shè)備、MEMROY設(shè)備或兩者兼有,應(yīng)根據(jù)實(shí)際需求,對(duì)CPCI總線訪問(wèn)空間進(jìn)行配置,再根據(jù)CPCI總線提供的地址信號(hào)和地址使能信號(hào)ADDR_VLD,確定MVB設(shè)備的片選信號(hào),進(jìn)一步結(jié)合讀/寫(xiě)使能信號(hào)S_WRDN和空間譯碼信號(hào)BASE_HIT確定本次操作的空間IO/MEMORY,最終得到實(shí)際使用的讀使能信號(hào)barx_rd和寫(xiě)使能信號(hào)barx_wr。其中,讀使能信號(hào)barx_rd中x代表選擇的空間,取值為0、1或2;寫(xiě)使能信號(hào)barx_wr中x代表選擇的空間,取值為0、1或2。

3 CPCI總線匹配ISA總線時(shí)序接口模塊

CPCI總線匹配ISA總線時(shí)序接口模塊與CPCI局部總線接口擴(kuò)展時(shí)序模塊之間的接口連接如圖1所示,關(guān)鍵在于對(duì)停止數(shù)據(jù)傳送信號(hào)STOP的使用。由于CPCI總線是高速設(shè)備而ISA總線是慢速設(shè)備,且CPCI總線的讀/寫(xiě)操作時(shí)間是很快的,與CPCI總線直接通信的MVB設(shè)備響應(yīng)不及時(shí),數(shù)據(jù)包丟失嚴(yán)重。本設(shè)計(jì)使用的控制策略是:當(dāng)CPCI總線以IO方式訪問(wèn)時(shí),在CPCI總線讀/寫(xiě)操作中插入等待信號(hào)S_WAIT,對(duì)CPCI總線的從設(shè)備準(zhǔn)備好信號(hào)TRDY進(jìn)行控制;當(dāng)CPCI總線以MEMROY方式訪問(wèn)時(shí),在CPCI總線讀/寫(xiě)操作中插入停止數(shù)據(jù)傳送信號(hào)STOP,在MEMROY設(shè)備本次操作未完成之前,CPCI總線一直處于被打斷重連的狀態(tài),CPCI總線一直請(qǐng)求當(dāng)前的讀/寫(xiě)操作,直到當(dāng)前一次操作中不插入停止數(shù)據(jù)傳送信號(hào)STOP,CPCI總線才會(huì)發(fā)起下一次讀/寫(xiě)訪問(wèn)。停止數(shù)據(jù)傳送信號(hào)STOP由從設(shè)備發(fā)出,當(dāng)停止數(shù)據(jù)傳送信號(hào)STOP有效時(shí)表示從設(shè)備請(qǐng)求主設(shè)備終止當(dāng)前的數(shù)據(jù)傳送[5]。圖2為從設(shè)備準(zhǔn)備好信號(hào)TRDY、停止數(shù)據(jù)傳送信號(hào)STOP、幀周期信號(hào)FRAME和主設(shè)備準(zhǔn)備好信號(hào)IRDY的具體時(shí)序圖:

4 ISA總線時(shí)序接口模塊

ISA總線接口時(shí)序模塊通過(guò)數(shù)據(jù)使能信號(hào)S_DATA_VLD、地址使能信號(hào)ADDR_VLD、讀使能信號(hào)barx_rd、寫(xiě)使能信號(hào)barx_wr、字節(jié)使能信號(hào)S_CBE、數(shù)據(jù)信號(hào)D【31:0】和地址信號(hào)A【31:0】與CPCI局部總線接口擴(kuò)展時(shí)序模塊進(jìn)行通信;ISA總線接口時(shí)序模塊通過(guò)數(shù)據(jù)信號(hào)SD、地址信號(hào)SA、讀/寫(xiě)IO設(shè)備信號(hào)IOW/IOR、讀/寫(xiě)MEMORY設(shè)備信號(hào)MEMR/MEMW、地址鎖存信號(hào)BALE與局部ISA總線進(jìn)行通信。本協(xié)議轉(zhuǎn)換器CPU讀IO設(shè)備訪問(wèn)操作時(shí)序具體如圖3所示:

5 時(shí)鐘管理模塊

時(shí)鐘管理模塊主要利用FPGA內(nèi)部時(shí)鐘網(wǎng)絡(luò)及鎖相環(huán)產(chǎn)生頻率不同的時(shí)鐘,為CPCI局部總線接口擴(kuò)展時(shí)序模塊、ISA總線接口時(shí)序模塊和CPCI總線匹配ISA總線時(shí)序接口模塊提供工作時(shí)鐘。

6 協(xié)議轉(zhuǎn)換器軟件流程

協(xié)議轉(zhuǎn)換器訪問(wèn)流程如圖4所示,主控CPU設(shè)備通過(guò)CPCI總線對(duì)ISA總線接口的MVB設(shè)備的實(shí)時(shí)訪問(wèn)的過(guò)程為[6]:

1)確定CPCI總線本次操作的訪問(wèn)空間IO/MEMORY。當(dāng)CPCI總線以MEMROY方式訪問(wèn)時(shí),插入停止數(shù)據(jù)傳送信號(hào)STOP;當(dāng)CPCI總線以IO方式訪問(wèn)時(shí),插入等待信號(hào)S_WAIT;等待ISA總線設(shè)備準(zhǔn)備好進(jìn)行數(shù)據(jù)通信。

2)利用地址使能信號(hào)ADDR_VLD、讀使能信號(hào)barx_rd、寫(xiě)使能信號(hào)barx_wr和字節(jié)使能信號(hào)S_CBE確定CPCI總線訪問(wèn)ISA總線的實(shí)際地址信號(hào)SA,以及訪問(wèn)模式(讀操作或者寫(xiě)操作)。

3)根據(jù)需求作出ISA總線的地址鎖存信號(hào)BALE(MEMROY方式訪問(wèn))。

4)根據(jù)字節(jié)使能信號(hào)S_CBE,判斷32位數(shù)據(jù)中被使能的字節(jié)數(shù)據(jù),從中間數(shù)據(jù)緩存區(qū)BUFFER中篩選出相應(yīng)的8位數(shù)據(jù)或16位數(shù)據(jù)與MVB設(shè)備進(jìn)行實(shí)時(shí)數(shù)據(jù)交互。

5)根據(jù)ISA總線協(xié)議規(guī)定的讀/寫(xiě)信號(hào)脈沖寬度,確定出讀/寫(xiě)IO設(shè)備信號(hào)IOW/IOR或者讀/寫(xiě)MEMORY設(shè)備信號(hào)MEMR/MEMW,進(jìn)而完成主控CPU設(shè)備通過(guò)CPCI總線對(duì)ISA總線接口的MVB設(shè)備的實(shí)時(shí)訪問(wèn)。

7 結(jié)論

CPCI總線和ISA總線的協(xié)議轉(zhuǎn)換器在實(shí)際應(yīng)用中有以下優(yōu)點(diǎn):

1)操作方便,CPCI總線和ISA總線的協(xié)議轉(zhuǎn)換器是基于FPGA實(shí)現(xiàn)的,通過(guò)協(xié)議轉(zhuǎn)換代替?zhèn)鹘y(tǒng)的轉(zhuǎn)換橋片,無(wú)需更改牽引控制器結(jié)構(gòu)和系統(tǒng)其它設(shè)備。

2)靈活性強(qiáng),可根據(jù)需求調(diào)整CPCI總線和ISA總線的轉(zhuǎn)換時(shí)序,實(shí)現(xiàn)不同的功能。

3)功能多,支持ISA總線的8位或16位數(shù)據(jù)寬度,支持CPCI總線設(shè)備對(duì)ISA總線設(shè)備的IO操作方式或MEMORY操作方式。

該CPCI總線和ISA總線的協(xié)議轉(zhuǎn)換器目前已經(jīng)批量應(yīng)用在CRH5型動(dòng)車(chē)組國(guó)產(chǎn)化牽引控制系統(tǒng)中,能很好地滿足主控CPU設(shè)備通過(guò)CPCI總線對(duì)ISA總線接口的MVB設(shè)備的實(shí)時(shí)訪問(wèn)。實(shí)現(xiàn)了高速動(dòng)車(chē)組技術(shù)的自主化創(chuàng)新。

參考文獻(xiàn)

[1]侯金彪. PCI總線與ISA總線轉(zhuǎn)換設(shè)計(jì)研究[J]. 計(jì)算機(jī)應(yīng)用與軟件,2013,30(8):236-241.

[2]張松,李筠.FPGA的模塊化設(shè)計(jì)方法[J].電子測(cè)量與儀器學(xué)報(bào),2014,28(5):560-565.

[3]王杰,王誠(chéng),謝龍漢.Xilinx FPGA /CPLD 設(shè)計(jì)手冊(cè)[M].北京:人民郵電出版社,2011: 1-360.

[4]劉 韜,樓興華. FPGA數(shù)字電子系統(tǒng)設(shè)計(jì)與開(kāi)發(fā)實(shí)例導(dǎo)航[M].北京:人民郵電出版社,2005: 2-419.

[5]張旭東,付強(qiáng),何松華,等. 基于PCI接口的多通道高速數(shù)據(jù)采集系統(tǒng)[J].數(shù)據(jù)采集與處理,2000,15( 2) : 240-244.

[6]張亞偉,朱孟祥,秦嬌梅,等. CPCI總線和ISA總線的協(xié)議轉(zhuǎn)換器和轉(zhuǎn)換方法:中國(guó),201510062421.1[P]. 2016-03-23.

界首市| 金溪县| 资兴市| 麟游县| 田阳县| 阜新市| 开阳县| 社会| 寿光市| 广河县| 沅江市| 昭苏县| 无为县| 平舆县| 濮阳市| 乳源| 义乌市| 洛宁县| 开阳县| 南漳县| 徐汇区| 武清区| 吴旗县| 嵩明县| 新野县| 吉安县| 银川市| 加查县| 高淳县| 潞西市| 阳曲县| 淄博市| 陇南市| 绍兴市| 来宾市| 庄浪县| 乐陵市| 县级市| 嘉义县| 朔州市| 彰化市|