- 相關(guān)推薦
高速紅外VFIR控制器的設(shè)計(jì)與實(shí)現(xiàn)
摘要:根據(jù)IRDA紅外串行物理層規(guī)范IRDA-1.4設(shè)計(jì)基于PCI總線的甚高速VFIR紅外控制器,詳細(xì)分析了控制器的硬件和軟件設(shè)計(jì)方法及實(shí)現(xiàn)過程。設(shè)計(jì)中使用PCI總線主控接口芯片S5933,實(shí)現(xiàn)復(fù)雜的PCI總線接口到相對簡單的用戶接口功能轉(zhuǎn)換;使用FPGA實(shí)現(xiàn)紅外控制器的傳輸控制和時序邏輯。PCI(Peripheral Component Interconnect)局部總線[1]是一種高性能、32位或64位地址數(shù)據(jù)多路復(fù)用的同步總線。它的用途是在高度集成的外設(shè)控制器件、擴(kuò)展卡和處理器/存儲器系統(tǒng)之間提供一種內(nèi)部的連接機(jī)構(gòu),它規(guī)定了互連機(jī)構(gòu)的協(xié)議、機(jī)械以及設(shè)備配置空間。PCI局部總線因具有極小延遲時間、支持線性突發(fā)數(shù)據(jù)傳輸、兼容性能以及系統(tǒng)能進(jìn)行全自動配置等特點(diǎn)受到業(yè)界青睞。PCI總線規(guī)范2.1版本還定義了由32位數(shù)據(jù)總線擴(kuò)充為64位總線的方法,使總線寬度擴(kuò)展,并對32位和64位PCI局部總線外設(shè)做到向前和向后兼容。
目前微機(jī)之間的紅外通信是基于IRDA-1.1標(biāo)準(zhǔn)的紅外無線串行SIR通信,參考文獻(xiàn)[2]給出了基于ISA總線的紅外無線串行通信卡的設(shè)計(jì)及實(shí)現(xiàn),該通信卡的數(shù)據(jù)速率為9.6kbps~115.2kbps,工作距離0~3m。但由于RS-232端口的最高數(shù)據(jù)速率上限為115.2kbps,不能滿足IRDA-1.4規(guī)范甚高速紅外VFIR 16Mbps速率要求,所以使用了PCI同步總線擴(kuò)展外設(shè)的方法設(shè)計(jì)甚高速紅外控制器。雖然ISA總線的傳輸速率能滿足甚高速紅外控制器設(shè)計(jì)要求,但目前許多微機(jī)系統(tǒng)已經(jīng)逐漸淘汰ISA/EISA標(biāo)準(zhǔn)總線。原因是高速微處理器和低速ISA總線之間不同步,造成擴(kuò)展外設(shè)只能通過一個慢速且狹窄的瓶頸發(fā)送和接收數(shù)據(jù),使CPU高性能受到嚴(yán)重影響。
1 HHH(1,13)編解碼
2001年5月,紅外無線數(shù)據(jù)協(xié)會IRDA發(fā)布了紅外串行物理層規(guī)范IRDA-1.4[4];它與前期發(fā)布的物理層規(guī)范的主要區(qū)別在于增加甚高速紅外VFIR 16Mbps數(shù)據(jù)速率的編解碼技術(shù)和幀結(jié)構(gòu),而其它如視角范圍、發(fā)射器最。ù螅┕夤β屎徒邮掌黛`敏度等規(guī)范基于相同。紅外串行物理層規(guī)范IRDA-1.4規(guī)定數(shù)據(jù)速率小于4Mbps采用RZI(歸零反轉(zhuǎn))調(diào)制,最大脈沖寬度是位周期的3/16或1/4;數(shù)據(jù)速率4Mbps采用4PPM(脈沖位置調(diào)制);數(shù)據(jù)速率16Mbps采用HHH(1,13)碼。
IRDA提出的VFIR編解碼技術(shù)-HHH(1,13)碼是碼率為2/3,(d,k)=(1,13)的RLL(run-length-limited)碼;它是一種功率消耗和頻帶利用率相對折中的高效編碼,其中參數(shù)d、k分別表示在兩個'1'之間最小和最大的'0'的數(shù)目,參數(shù)d決定接收信號中有無碼間干擾ISI,參數(shù)k決定接收器能否從接收序列中恢復(fù)時鐘。HHH(1,13)碼的帶寬效率使數(shù)據(jù)通信能夠選擇成本很低、上升/下降時間為19ns的LED。功率效率避免了LED的熱問題,它能保證1m距離范圍內(nèi)保持鏈接。1m距離16Mbps鏈路可達(dá)到過去4Mbps鏈路的驅(qū)動電流和功耗。HHH(1,13)碼和4PPM碼(用于4Mbps)的顯著區(qū)別是HHH(1,13)碼決不允許一個紅外脈沖緊跟前一個紅外脈沖,脈沖之間應(yīng)該保持一個chip時間差。由于光電管工作區(qū)域內(nèi)有少量載流子的慢輻射,使LED或光電二極光表現(xiàn)出拖尾效應(yīng),HHH(1,13)碼能夠兼容拖尾效應(yīng),從而允許在chip時間周期內(nèi)脈沖的擴(kuò)展。
雖然HHH(1,13)碼的設(shè)計(jì)過程比較復(fù)雜,但I(xiàn)RDA-1.4標(biāo)準(zhǔn)已經(jīng)詳細(xì)給出了編譯碼邏輯方程和電路,所以實(shí)現(xiàn)起來比較容易。筆者使用Altera MAX plus II進(jìn)行邏輯功能仿真,并用GW48 EDA實(shí)驗(yàn)系統(tǒng)進(jìn)行硬件偽真,驗(yàn)證HHH(1,13)碼編譯碼電路設(shè)計(jì)的正確性。
2 甚高速紅外VFIR控制器的硬件設(shè)計(jì)
由于PCI總線規(guī)定了嚴(yán)格的電氣特性,開發(fā)PCI總線的應(yīng)用具有很大難度,因此使用AMCC(Applied Micro Corporation)公司推出的PCI接口控制器S5933實(shí)現(xiàn)紅外控制器PCI總線接口規(guī)范[5]。甚高速紅外VFIR控制器原理框圖如圖1所示。選用Altera公司的FLEX10K系列現(xiàn)場可編程門陣列器件實(shí)現(xiàn)S5933與紅外TX/RXFIFO、寄存器的傳輸控制和邏輯時序以及紅外接口控制邏輯和紅外收發(fā)器接口功能模塊(CRC校驗(yàn)、編解碼以及串/并轉(zhuǎn)換)。甚高速紅外VFIR控制器工作原理如下:首先由AMCC S5933外部非易失性串行EEPROM AT24C02下載PCI配置空間,然后主機(jī)通過直通(PassThru)寄存器數(shù)據(jù)訪問方式向紅外接口控制寄存器寫控制命令[3]。紅外接口控制邏輯根據(jù)控制命令發(fā)出控制信號,使整個紅外控制器處于準(zhǔn)備狀態(tài)。當(dāng)上層協(xié)議發(fā)出數(shù)據(jù)發(fā)送事件時,紅外接口控制邏輯發(fā)出消息,通知主機(jī)啟動S5933總線主控讀操作,把上層數(shù)據(jù)寫到外部紅外TXFIFO數(shù)據(jù)緩沖器;同時紅外接口控制邏輯根據(jù)TXFIFO狀態(tài)把TXFIFO的數(shù)據(jù)發(fā)送到紅外收發(fā)器接口,進(jìn)行鎖存、并/串轉(zhuǎn)換、CRC校驗(yàn)和編碼,最后通過VFIR收發(fā)器發(fā)送數(shù)據(jù)。同理VFIR收發(fā)器接收到的數(shù)據(jù)經(jīng)過譯碼、CRC校驗(yàn)、串/并轉(zhuǎn)換和鎖存,寫入RXFIFO數(shù)據(jù)緩沖器。紅外接口控制邏輯觸發(fā)上層協(xié)議發(fā)出數(shù)據(jù)接收事件接收數(shù)據(jù),主機(jī)啟動S5933總線主控寫操作向上層協(xié)議遞交數(shù)據(jù),數(shù)據(jù)傳輸完成上層協(xié)議發(fā)回消息,通知數(shù)據(jù)接收完成。下面重點(diǎn)分析S5933與紅外TX/RXFIFO、紅外寄存器組訪問控制邏輯以及紅外接口控制邏輯和紅外接發(fā)器接口功能。
2.1 紅外TX/RXFIFO與紅外控制寄存器組控制邏輯
AMCC S5933支持3個物理總線接口:PCI總線接口、擴(kuò)充總線接口和非易失性EEPROM總線接口。非易失性EEPROM用于映射PCI的配置空間及設(shè)備BIOS的初始化;擴(kuò)充總線可以與外設(shè)設(shè)備互連。主機(jī)和外設(shè)之間可以利用S5933的郵箱寄存器
【高速紅外VFIR控制器的設(shè)計(jì)與實(shí)現(xiàn)】相關(guān)文章:
QDRII SRAM控制器的設(shè)計(jì)與FPGA實(shí)現(xiàn)03-30
路燈照明系統(tǒng)中的組群控制器設(shè)計(jì)與實(shí)現(xiàn)03-18
非接觸式IC卡節(jié)水控制器的設(shè)計(jì)與實(shí)現(xiàn)03-07
USB接口的高速數(shù)據(jù)采集卡的設(shè)計(jì)與實(shí)現(xiàn)03-18
基于S3C2410控制器的金融稅控機(jī)的設(shè)計(jì)與實(shí)現(xiàn)03-07
一種專用高速硬盤存儲設(shè)備的設(shè)計(jì)與實(shí)現(xiàn)03-18
基于Internet的智能家庭網(wǎng)絡(luò)控制器的實(shí)現(xiàn)03-18