一種實(shí)現(xiàn)rs232向blvds總線轉(zhuǎn)換的方法
【專利摘要】本發(fā)明公開了一種實(shí)現(xiàn)RS232向BLVDS總線轉(zhuǎn)換的方法,將要發(fā)送的數(shù)據(jù)通過(guò)RS232接口發(fā)送到FPGA,F(xiàn)PGA接收到處理器發(fā)來(lái)的數(shù)據(jù),將其存儲(chǔ)到內(nèi)部的FIFO中,同時(shí),F(xiàn)PGA實(shí)時(shí)監(jiān)測(cè)FIFO的狀態(tài)標(biāo)志,當(dāng)監(jiān)測(cè)到FIFO空標(biāo)志為零,打開BLVDS總線使能輸出端口OE,取出FIFO的數(shù)據(jù),將其發(fā)送到BLVDS總線上,以實(shí)現(xiàn)多點(diǎn)或背板的數(shù)據(jù)通信。默寫設(shè)備只有RS-232接口,因此數(shù)據(jù)抗干擾性能以及只能實(shí)現(xiàn)點(diǎn)到點(diǎn)的數(shù)據(jù)通信制約了這些設(shè)備的應(yīng)用,而本發(fā)明的方法,可以實(shí)現(xiàn)RS-232向BLVDS總線的轉(zhuǎn)換,從而提高了數(shù)據(jù)抗干擾性能以及可以實(shí)現(xiàn)多點(diǎn)以及背板通信。
【專利說(shuō)明】—種實(shí)現(xiàn)RS232向BLVDS總線轉(zhuǎn)換的方法
[0001]
【技術(shù)領(lǐng)域】
[0002]本發(fā)明涉及一種實(shí)現(xiàn)RS232向BLVDS總線轉(zhuǎn)換的方法,屬于電力通信【技術(shù)領(lǐng)域】。
【背景技術(shù)】
[0003]總線是計(jì)算機(jī)各種功能部件之間傳送信息的公共通信干線,它是由導(dǎo)線組成的傳輸線束。目前國(guó)內(nèi)外常用的總線協(xié)議包括=PCI總線,其最大數(shù)據(jù)傳輸率為132MB/S,當(dāng)數(shù)據(jù)寬度升級(jí)到64位,數(shù)據(jù)傳輸率可達(dá)264MB/s。BLVDS(bus low voltage differentialsignaling,總線型低電壓差分信號(hào))總線具備250mV的低電壓差分信號(hào)以及快速的過(guò)渡時(shí)間,其抗干擾特性與數(shù)據(jù)高速傳輸特點(diǎn),使其在多點(diǎn)電纜以及背板有廣泛的應(yīng)用。
[0004]目前嵌入式芯片大多都支持RS232接口,實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn)的數(shù)據(jù)傳輸。RS232接口的傳輸速率以及傳輸穩(wěn)定性有限,同時(shí)也無(wú)法在多點(diǎn)以及背板通信使用。由于FPAG內(nèi)的I/O按組分類,每組能夠獨(dú)立支持不同的I/O標(biāo)準(zhǔn)。并可以通過(guò)軟件的靈活配置,實(shí)現(xiàn)RS232電氣特性以及BLVDS電氣特性,可以作為RS232向BLVDS總線轉(zhuǎn)換的橋梁。
【發(fā)明內(nèi)容】
[0005]本發(fā)明針對(duì)現(xiàn)有RS232接口無(wú)法實(shí)現(xiàn)多點(diǎn)以及背板通信,提供了一種RS232接口向BLVDS總線轉(zhuǎn)換的方法。
[0006]為解決上述技術(shù)問(wèn)題,本發(fā)明提供一種實(shí)現(xiàn)RS232向BLVDS總線轉(zhuǎn)換的方法,其特征是,
CPU通過(guò)RS232接口將數(shù)據(jù)發(fā)送至FPGA中,由FPGA實(shí)現(xiàn)RS232向BLVDS總線轉(zhuǎn)換; FPGA實(shí)現(xiàn)接口轉(zhuǎn)換的步驟為:
FPGA內(nèi)部的RS-232接收模塊實(shí)時(shí)接收CPU通過(guò)RS-232接口發(fā)送的字節(jié)數(shù)據(jù),將字節(jié)數(shù)據(jù)存儲(chǔ)到FIFO中,同時(shí),BLVDS總線模塊實(shí)時(shí)監(jiān)測(cè)FIFO中的狀態(tài)標(biāo)志端口,當(dāng)狀態(tài)標(biāo)志端口指示FIFO中存在數(shù)據(jù)時(shí),首先將BLVDS輸出子模塊的輸出使能端口 OE打開,然后從FIFO中取出一字節(jié)數(shù)據(jù),通過(guò)BLVDS總線發(fā)送,等待該字節(jié)數(shù)據(jù)發(fā)送完畢后,再次監(jiān)測(cè)FIFO中的狀態(tài)標(biāo)志端口,若有數(shù)據(jù),則重復(fù)上述步驟,否則,關(guān)閉BLVDS輸出子模塊的輸出使能端口OE0
[0007]字節(jié)數(shù)據(jù)中包括數(shù)據(jù)位數(shù)、停止位、奇偶校驗(yàn)位、停止位格式。
[0008]FIFO深度為16,寬度為8。
[0009]狀態(tài)標(biāo)志端口 EMPTY是FIFO模塊中指示是否有數(shù)據(jù)的狀態(tài)標(biāo)志端口。
[0010]狀態(tài)標(biāo)志端口 EMPTY為I表示FIFO中沒(méi)有數(shù)據(jù),為O表示FIFO中有數(shù)據(jù)。
[0011]BLVDS總線模塊負(fù)責(zé)將接收到的數(shù)據(jù)發(fā)送到BLVDS總線上。
[0012]本發(fā)明所達(dá)到的有益效果:
默寫設(shè)備只有RS-232接口,因此數(shù)據(jù)抗干擾性能以及只能實(shí)現(xiàn)點(diǎn)到點(diǎn)的數(shù)據(jù)通信制約了這些設(shè)備的應(yīng)用,而本發(fā)明的方法,設(shè)備將要發(fā)送的數(shù)據(jù)通過(guò)RS232接口發(fā)送到FPGA,F(xiàn)PGA接收到處理器發(fā)來(lái)的數(shù)據(jù),將其存儲(chǔ)到內(nèi)部的FIFO中,同時(shí),F(xiàn)PGA實(shí)時(shí)監(jiān)測(cè)FIFO的狀態(tài)標(biāo)志,當(dāng)監(jiān)測(cè)到FIFO空標(biāo)志為零,打開BLVDS總線使能輸出端口 0E,取出FIFO的數(shù)據(jù),將其發(fā)送到BLVDS總線上,以實(shí)現(xiàn)多點(diǎn)或背板的數(shù)據(jù)通信。因此,可以實(shí)現(xiàn)RS-232向BLVDS總線的轉(zhuǎn)換,從而提高了數(shù)據(jù)抗干擾性能以及可以實(shí)現(xiàn)多點(diǎn)以及背板通信。
【專利附圖】
【附圖說(shuō)明】
[0013]圖1為RS232向BLVDS總線轉(zhuǎn)換的總體構(gòu)架;
圖2為FPGA實(shí)現(xiàn)接口轉(zhuǎn)換的流程圖。
【具體實(shí)施方式】
[0014]下面結(jié)合附圖對(duì)本發(fā)明作進(jìn)一步描述。以下實(shí)施例僅用于更加清楚地說(shuō)明本發(fā)明的技術(shù)方案,而不能以此來(lái)限制本發(fā)明的保護(hù)范圍。
[0015]圖1為RS232向BLVDS總線轉(zhuǎn)換的總體構(gòu)架,CPU通過(guò)RS232方式將數(shù)據(jù)發(fā)送至FPGA,由FPGA實(shí)現(xiàn)RS232向BLVDS總線轉(zhuǎn)換。以FPGA作為RS-232到BLVDS總線轉(zhuǎn)換的核心,實(shí)時(shí)性和穩(wěn)定性強(qiáng)。
[0016]圖2為FPGA實(shí)現(xiàn)接口轉(zhuǎn)換的程序流程圖。具體轉(zhuǎn)換步驟為:FPGA內(nèi)部的RS-232接收模塊實(shí)時(shí)接收來(lái)自CPU等設(shè)備通過(guò)RS-232接口發(fā)送的字節(jié)數(shù)據(jù)。數(shù)據(jù)是包括數(shù)據(jù)位數(shù)、停止位、奇偶校驗(yàn)位、停止位格式。當(dāng)FPGA接收到CPU等設(shè)備發(fā)來(lái)的字節(jié)數(shù)據(jù)后,將字節(jié)數(shù)據(jù)存儲(chǔ)到FIFO中,F(xiàn)IFO深度為16,寬度為8。同時(shí),BLVDS總線模塊(負(fù)責(zé)將接收到的數(shù)據(jù)發(fā)送到BLVDS總線上)實(shí)時(shí)監(jiān)測(cè)FIFO的EMPTY (FIFO模塊中指示是否有數(shù)據(jù)的狀態(tài)標(biāo)志)端口是否為0,為I表示FIFO中沒(méi)有數(shù)據(jù),為O表示FIFO中有數(shù)據(jù)。當(dāng)FIFO中存在數(shù)據(jù)時(shí),首先將BLVDS總線模塊中的BLVDS輸出子模塊的使能端口 OE (輸出使能端口)打開,然后從FIFO中取出一字節(jié)數(shù)據(jù),通過(guò)BLVDS總線發(fā)送,等待該字節(jié)數(shù)據(jù)發(fā)送完畢后,再次監(jiān)測(cè)FIFO中的EMPTY端口,若有數(shù)據(jù),則重復(fù)上述步驟,否則,關(guān)閉BLVDS輸出子模塊使能端口 0E。以FIFO模塊進(jìn)行緩沖數(shù)據(jù)再發(fā)送,可以及時(shí)打開OE使能信號(hào),避免數(shù)據(jù)丟失。
[0017]以上所述僅是本發(fā)明的優(yōu)選實(shí)施方式,應(yīng)當(dāng)指出,對(duì)于本【技術(shù)領(lǐng)域】的普通技術(shù)人員來(lái)說(shuō),在不脫離本發(fā)明技術(shù)原理的前提下,還可以做出若干改進(jìn)和變形,這些改進(jìn)和變形也應(yīng)視為本發(fā)明的保護(hù)范圍。
【權(quán)利要求】
1.一種實(shí)現(xiàn)RS232向BLVDS總線轉(zhuǎn)換的方法,其特征是, CPU通過(guò)RS232接口將數(shù)據(jù)發(fā)送至FPGA中,由FPGA實(shí)現(xiàn)RS232向BLVDS總線轉(zhuǎn)換; FPGA實(shí)現(xiàn)接口轉(zhuǎn)換的步驟為: FPGA內(nèi)部的RS-232接收模塊實(shí)時(shí)接收CPU通過(guò)RS-232接口發(fā)送的字節(jié)數(shù)據(jù),將字節(jié)數(shù)據(jù)存儲(chǔ)到FIFO中,同時(shí),BLVDS總線模塊實(shí)時(shí)監(jiān)測(cè)FIFO中的狀態(tài)標(biāo)志端口,當(dāng)狀態(tài)標(biāo)志端口指示FIFO中存在數(shù)據(jù)時(shí),首先將BLVDS輸出子模塊的輸出使能端口 OE打開,然后從FIFO中取出一字節(jié)數(shù)據(jù),通過(guò)BLVDS總線發(fā)送,等待該字節(jié)數(shù)據(jù)發(fā)送完畢后,再次監(jiān)測(cè)FIFO中的狀態(tài)標(biāo)志端口,若有數(shù)據(jù),則重復(fù)上述步驟,否則,關(guān)閉BLVDS輸出子模塊的輸出使能端口OE0
2.根據(jù)權(quán)利要求1所述的實(shí)現(xiàn)RS232向BLVDS總線轉(zhuǎn)換的方法,其特征是,字節(jié)數(shù)據(jù)中包括數(shù)據(jù)位數(shù)、停止位、奇偶校驗(yàn)位、停止位格式。
3.根據(jù)權(quán)利要求1所述的實(shí)現(xiàn)RS232向BLVDS總線轉(zhuǎn)換的方法,其特征是,F(xiàn)IFO深度為16,寬度為8。
4.根據(jù)權(quán)利要求1所述的實(shí)現(xiàn)RS232向BLVDS總線轉(zhuǎn)換的方法,其特征是,狀態(tài)標(biāo)志端口 EMPTY是FIFO模塊中指示是否有數(shù)據(jù)的狀態(tài)標(biāo)志端口。
5.根據(jù)權(quán)利要求4所述的實(shí)現(xiàn)RS232向BLVDS總線轉(zhuǎn)換的方法,其特征是,狀態(tài)標(biāo)志端口 EMPTY為I表示FIFO中沒(méi)有數(shù)據(jù),為O表示FIFO中有數(shù)據(jù)。
6.根據(jù)權(quán)利要求1所述的實(shí)現(xiàn)RS232向BLVDS總線轉(zhuǎn)換的方法,其特征是,BLVDS總線模塊負(fù)責(zé)將接收到的數(shù)據(jù)發(fā)送到BLVDS總線上。
【文檔編號(hào)】G06F13/38GK104268108SQ201410457040
【公開日】2015年1月7日 申請(qǐng)日期:2014年9月10日 優(yōu)先權(quán)日:2014年9月10日
【發(fā)明者】李偉, 趙永, 黃蕾, 陳玉年, 樂(lè)凌志 申請(qǐng)人:南京國(guó)電南自美卓控制系統(tǒng)有限公司