<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 手機與無線通信 > 設計應用 > 實用以太網電話機(05-100)

          實用以太網電話機(05-100)

          ——
          作者:上海船舶運輸科學研究所 陳演平 張天鵬 謝兵森 馮秋雁時間:2006-08-22來源:電子產品世界收藏

            前言

          本文引用地址:http://www.ex-cimer.com/article/15868.htm

            實用以太網電話機的設計目的,是希望用撥打傳統電話的方法在以太網上進行電話交換,而上不增添任何的網關、服務器、多點控制單元等設備。這樣,只要把以太網電話機通過RJ45插口接入以太網,就可以撥號呼叫在同一上的另一臺以太網電話機并進行雙向通話。由于電話語音數據不經過專用設備的處理直接發給對方,還可縮短語音的網絡傳輸延遲時間。以太網電話機成本低廉,使用方便,通話免費,適合已建有局域網的中小型企事業單位應用。

            目前的許多商品化VoIP系統,其技術建立在ITU(國際電信聯盟)的H.323系列標準或IETF(互聯網工程任務組)制訂的SIP協議基礎上。這些VoIP系統功能強大、互聯性能好,適用于電信服務或大中型企業使用,但面面俱到的標準體系和昂貴的專用設備價格使這些系統在普通的局域網中難以得到普遍應用。而流行的PC機語音聊天或語音會議技術,則必須要有PC機來起到網絡語音終端的作用,顯然不如使用電話機方便和經濟。

            以太網電話機的話音傳輸和交換技術直接基于TCP/IP協議的底層協議,使得語音信號能夠以UDP數據包的形式在網絡上暢通傳輸;而上層應用協議則仿照傳統電話機的使用模式來建立,所以以太網電話機的使用方法完全和普通電話機一樣。從原理上來講,以太網電話機類似于Peer to Peer的PC機語音技術,但以太網電話機采用了嵌入式計算機技術,全部電路(含固化軟件)都可以安裝在普通電話機的機殼內,成本低、性能可靠、實用性強。

            硬件方案

            為了降低成本和縮小印刷電路板的尺寸,以太網電話機采用基于SOPC(System on Programmable Chip)技術的硬件方案,把32位嵌入式Nios II處理器和數字語音處理電路及有關的控制邏輯電路用一片FPGA芯片來實現。這樣,只要在FPGA片外再配上存儲器、網絡芯片、語音編解碼(CODEC)芯片、語音收發放大器及一些接口電路就可以構成功能齊全的以太網電話機。整機框圖見圖1,其中粗線框里的電路功能全部由Altera公司的Cyclone系列FPGA 芯片EP1C6Q240來實現。

            

           

           

            圖1 以太網電話機框圖

            處理器及存儲器

            處理器采用Altera公司在SOPC Builder軟件中提供的Nios II 軟核處理器。

            處理器外接8MByte的Flash RAM作為程序存儲器,16MByte的SDRAM作為數據存儲器。存儲器均留有很大的余量,便于以后產品升級。

            選定處理器后,在SOPC Builder 軟件中,可以添加存儲器接口、網絡接口、定時器、I/O接口、UART接口等,分配地址,設置中斷等級。


          上一頁 1 2 下一頁

          關鍵詞: 通訊 網絡 無線

          評論


          相關推薦

          技術專區

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();