<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 模擬技術(shù) > 設計應用 > 基于FPGA的數據無(wú)阻塞交換設計

基于FPGA的數據無(wú)阻塞交換設計

作者:白海斌,邵淼青 時(shí)間:2008-08-07 來(lái)源:中電網(wǎng) 收藏

  0 引言

本文引用地址:http://dyxdggzs.com/article/86729.htm

  隨著(zhù)和大規模的發(fā)展,的實(shí)現有了新的方法。在該設計中,完成數據信號(TXD、RXD)的交換,專(zhuān)用的時(shí)隙交換芯片完成握手線(xiàn)(RTS、CTS、DTR、DSR、DCD、RI)的交換。內部有硬件沖突監測功能,能夠自動(dòng)檢測到2個(gè)終端同時(shí)連接到同一個(gè)信道或2個(gè)信道連接到同一個(gè)終端,并自動(dòng)將舊的連接狀態(tài)拆除,建立新的鏈路。這樣就使原來(lái)的連接終端進(jìn)入空閑狀態(tài),保證終端和信道時(shí)間軸上的無(wú)縫隙切換。通過(guò)判斷RI的狀態(tài),它還可以監視信道DCE的狀態(tài),判斷出信道是否有請求,并上報給監控。

  技術(shù)指標如下:①交換規模:40×40×8;②最大切換建立時(shí)間:200μs;③握手線(xiàn)最大傳輸延時(shí):125μs;④數據線(xiàn)最大傳輸延時(shí):小于1μs;⑤串行數據速率:8.192 Mbps。

  1 硬件實(shí)現

  矩陣在主控單元的控制下,將終端數據端口和信道數據端口進(jìn)行物理交換。交換矩陣包括DTE端口40個(gè)(包含24個(gè)DTE接口,16個(gè)DTE/DCE可配置接口),DCE端口40個(gè)(包含24個(gè)DCE接口,16個(gè)DTE/DCE可配置接口)。矩陣是由數據線(xiàn)交換矩陣(TXD、RXD)、握手線(xiàn)交換矩陣(RTS、CTS、DTR、DSR、DCD、RI)和交換控制模塊(單片機實(shí)現)組成。交換控制模塊管理數據線(xiàn)和握手線(xiàn)2個(gè)交換模塊,連續對2個(gè)模塊進(jìn)行操作。數據線(xiàn)交換由可編程邏輯器件完成,握手線(xiàn)交換由時(shí)隙交換器件完成。

  數據線(xiàn)交換模塊由實(shí)現,選用30萬(wàn)門(mén)的可編程邏輯器件實(shí)現,其資源已經(jīng)滿(mǎn)足了數據線(xiàn)路交換的需求,并可以再擴展。握手線(xiàn)交換模塊選用TSI(TIME SLOT INTERCHANGE)芯片MT90820,具有16對收發(fā)數據流,最大可實(shí)現2 048×2 048通道無(wú)阻塞交換。交換矩陣的控制單元選用通用的8051系列單片機。CPLD_1、CPLD_2和CPLD_3選用MAX7064,可以接4組握手線(xiàn)(CPLD_1、CPLD_2和CPLD_3的功能也可以用一個(gè)較大資源的FPGA來(lái)實(shí)現,這里選用小的CPLD來(lái)完成)。功能如圖1所示。

 

  FPGA和CPLD內部的功能都是通過(guò)硬件描述語(yǔ)言VHDL實(shí)現的。FPGA完成數據信號的交換、傳輸切換命令、讀取DCE信道狀態(tài)等功能。它模擬了一個(gè)Intel的8位總線(xiàn)接口(連接控制單元);一個(gè)Motorola的16位總線(xiàn)接口(連接時(shí)隙交換芯片),從而進(jìn)行接口時(shí)序的變換。FPGA中的數據交換狀態(tài)寄存器與相對應握手線(xiàn)交換芯片中的所有寄存器一致,來(lái)確保數據線(xiàn)和握手線(xiàn)交換同步。CPLD完成4組串口握手線(xiàn)的串并轉換、組幀、DTE/DCE選擇等功能。

  CPLD_1只能接DTE,每個(gè)DTE的6條握手線(xiàn)(2發(fā)4收)對應2個(gè)8位寄存器、1個(gè)發(fā)送寄存器、1個(gè)接收寄存器。RST/DTR對應發(fā)送寄存器的前2位,CTS\DSR\DCD\JI對應接收寄存器的前4位。當有同步信號Syn時(shí)(8 kHz),每個(gè)發(fā)送寄存器串行移位輸出數據,4個(gè)發(fā)送寄存器每隔一幀循環(huán)地發(fā)送數據,則組成1個(gè)每幀為128時(shí)隙、128×8位、8.192 Mb/s數據流(STi),送入握手線(xiàn)交換矩陣。DTE0到DTE3依次占用了數據幀中的第0到第3時(shí)隙,剩余都空閑。接收數據流過(guò)程相反。由握手線(xiàn)交換矩陣送過(guò)來(lái)固定幀格式的數據流(STo)進(jìn)入CPLD,通過(guò)同步信號Syn提取第0到第3時(shí)隙的前4位,放入相應接收寄存器中,再依次對應到各DTE的握手線(xiàn)信號(CTS\DSR\DCD\RI)。這也就是信道(DCE)端口送來(lái)的握手信號,從而實(shí)現了交換。每個(gè)DTE占用的時(shí)隙是固定的,每幀中1個(gè)DTE占用1個(gè)時(shí)隙。如DTE0占用第0時(shí)隙,以此類(lèi)推。如圖2所示。

 

  CPLD_2只能接DCE,每個(gè)DCE的6條握手線(xiàn)(4發(fā)2收)也對應2個(gè)8位寄存器。CTS\DSR\DCD\RI對應發(fā)送寄存器的前4位,RST/DTR對應接收寄存器的前2位。當有同步信號Syn時(shí)(8 kHz),每個(gè)發(fā)送寄存器串行移位輸出數據,4個(gè)發(fā)送寄存器每隔一幀循環(huán)地發(fā)送數據,則組成1個(gè)數據流(STi),送入握手線(xiàn)交換矩陣。DCE0到DCE3依次占用了數據幀中的第0到第3時(shí)隙,剩余都空閑。接收數據流過(guò)程相反。由握手線(xiàn)交換矩陣送過(guò)來(lái)固定幀格式的數據流(STo)進(jìn)入CPLD,通過(guò)同步信號Syn提取第0到第3時(shí)隙的前4位,放入相應接收寄存器中,再依次對應到各DCE的握手線(xiàn)信號(RTS\DTR)。這也就是終端(DTE)端口送來(lái)的握手信號,從而實(shí)現了交換。每個(gè)DCE占用的時(shí)隙是固定的,每幀中1個(gè)DCE占用1個(gè)時(shí)隙。如DCE0占用第0時(shí)隙,以此類(lèi)推。如圖3所示。

  CPLD_3是CPLD_1和CPLD_2功能的合并??筛鶕脩?hù)的需要,在FPGA的控制下,在CPLD內部通過(guò)數據線(xiàn)和握手線(xiàn)的交叉變換可以把DTE變換成DCE,交叉方法類(lèi)似于通用的RS232數據交叉線(xiàn)的做法。這樣做主要為了把DTE當作DCE用。當該DTE端口與其他DTE端口進(jìn)行交換時(shí),要把它變成DCE端口用;當該DTE端口與DCE端口進(jìn)行交換時(shí),不進(jìn)行改變仍然作為DTE端口用。在確定是DTE或是DCE后,可依據CPLD_1和CPLD_2的方法,送人握手線(xiàn)交換矩陣。

  2 軟件實(shí)現

  軟件實(shí)現采用C語(yǔ)言進(jìn)行模塊化設計,主要包括主程序單元、切換單元、查詢(xún)單元、中斷單元、主動(dòng)上報單元和看門(mén)狗。主程序包括數據交換矩陣的初始化配置和各個(gè)功能模塊的判斷選擇。切換單元控制FPGA和時(shí)隙芯片進(jìn)行各個(gè)端口的切換連接、拆除連接、沖突檢測以及強拆連接。中斷單元是與監控通信的接口,負責接收監控傳來(lái)的命令;發(fā)送要主動(dòng)上報的信息。查詢(xún)單元可以查詢(xún)各個(gè)信道的狀態(tài),信道是否有請求(查詢(xún)信道振鈴信號RI是否有效)。主動(dòng)上報單元是指殲機上報、定時(shí)上報,來(lái)指示數據交換矩陣是否工作正常。

  3 結束語(yǔ)

  通過(guò)上面設計,可以做成一個(gè)單獨的模塊。DTE接口可以接數字電話(huà)、數字傳真等數據終端;DCE接口可以接GSM等數據信道;DTE/DCE接口可以根據用戶(hù)的需求來(lái)配置,比如用于計算機擴展的多串口與DTE或DCE的通信。該技術(shù)具有硬件平臺通用性好、應用范圍廣以及功能擴展容易等優(yōu)點(diǎn)。



關(guān)鍵詞: FPGA 集成電路 數據交換 串口

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>