《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 基于單片機控制的以太網(wǎng)交換機設(shè)計與實現(xiàn))
基于單片機控制的以太網(wǎng)交換機設(shè)計與實現(xiàn))
談宏華
摘要: 隨著計算機性能的提高及通信量的聚增,傳統(tǒng)局域網(wǎng)已經(jīng)越來越超出了自身負荷,,交換式以太網(wǎng)技術(shù)應(yīng)運而生,,大大提高了局域網(wǎng)的性能。網(wǎng)絡(luò)交換機能顯著的增加帶寬,,可以建立地理位置相對分散的網(wǎng)絡(luò),。局域網(wǎng)交換機的每個端口可并行、安全,、實時傳輸信息,,而且性能穩(wěn)定、結(jié)構(gòu)靈活,、易于安裝,、便于管理,能很好地滿足企業(yè)網(wǎng)和電信運營商寬帶接入的需求,。
Abstract:
Key words :
  引 言

  隨著計算機性能的提高及通信量的聚增,,傳統(tǒng)局域網(wǎng)已經(jīng)越來越超出了自身負荷,交換式以太網(wǎng)技術(shù)應(yīng)運而生,,大大提高了局域網(wǎng)的性能。網(wǎng)絡(luò)交換機能顯著的增加帶寬,,可以建立地理位置相對分散的網(wǎng)絡(luò),。局域網(wǎng)交換機的每個端口可并行、安全,、實時傳輸信息,,而且性能穩(wěn)定、結(jié)構(gòu)靈活,、易于安裝,、便于管理,能很好地滿足企業(yè)網(wǎng)和電信運營商寬帶接入的需求。

  1 網(wǎng)絡(luò)交換機的硬件設(shè)計

  隨著人們對網(wǎng)絡(luò)應(yīng)用中的安全性和高帶寬的需求,,網(wǎng)絡(luò)交換機的用途越來越廣,。本交換機采用了AL101芯片的ROX總線,將3個8口交換芯片連接起來,,組成了1個24端口交換機,,滿足了用戶對多交換端口的需求。

  1.1 電路性能要求

  交換機的高速PCB電路板,,在EMC和ESD上都有比較高的要求,。它采用了75MHz、50MHz的高速時鐘,,需要晶振的精度小于50PPM,,同時時鐘需要通過時鐘分配電路送給不同的芯片,它需要分配的時鐘之間的相位差小于2ns,。

  交換機有24個10/100M自適應(yīng)端口,,每個端口都能達到線速交換。根據(jù)用戶需要可對端口進行10/100M速率,、全/半雙工,、流量控制、靜態(tài)MAC地址,、鏡像,、VLAN等設(shè)置。

  1.2 交換機的原理框圖

  本交換機的交換技術(shù)采用存儲-轉(zhuǎn)發(fā)方式,,主要由接口單元,、交換單元、管理單元,、燈顯示單元和電源接口單元五部分組成,。其組成的方框圖如圖1所示。

<a class=單片機控制的網(wǎng)絡(luò)交換機設(shè)計與實現(xiàn)" onclick="get_larger(this)" src="http://files.chinaaet.com/images/20100826/4dbcfb20-80ec-4227-80c3-0aab9894e052.jpg" />

  RJ45接口收到以太網(wǎng)幀結(jié)構(gòu)的數(shù)據(jù)包后,,經(jīng)過變壓器隔離和阻抗匹配后送到PHY(物理接口芯片),,在此芯片中完成模擬信號到RMII接口的數(shù)字信號的變換,并獲得鏈路狀態(tài),、沖突,、信息是否超長,速率等信息,。

數(shù)據(jù)進入交換芯片(由三個芯片組成,,通過ROX總線形成一個環(huán)路,可以完成數(shù)據(jù)在三個芯片之間的交換),,交換芯片將獲得數(shù)據(jù)的目的地址和源地址,,并對以太網(wǎng)幀進行差錯校驗,。交換芯片將源地址保存在自己的MAC地址表中,然后將目的地址與MAC地址表中的地址相匹配,,以獲取數(shù)據(jù)將轉(zhuǎn)發(fā)的相應(yīng)端口,。如果目的端口在同一個交換芯片中,則從SGRAM中取出數(shù)據(jù)轉(zhuǎn)發(fā)到相應(yīng)的端口,;如果目的端口不在同一個交換芯片中,,數(shù)據(jù)則通過ROX總線傳輸?shù)较鄳?yīng)的交換芯片,然后轉(zhuǎn)發(fā)出去,;如果在MAC地址表中沒有找到相應(yīng)的目的地址,,就將幀轉(zhuǎn)發(fā)到除源端口之外的其它屬于同一VLAN的所有端口或者某一個上連端口(與交換芯片寄存器的設(shè)置有關(guān))。

  燈的顯示由PHY給出,,通過燈的顯示可以觀察每個端口的工作速率,、連接和數(shù)據(jù)收發(fā)等情況。
  交換芯片在每次開機或復(fù)位期間,,首先讀取外接EEPROM的內(nèi)容來對交換芯片寄存器進行初始化配置,。而交換芯片寄存器的內(nèi)容可以通過PC的管理程序或PC的超級終端進行讀寫,以此來控制或讀取交換機的工作配置,。
  2 網(wǎng)絡(luò)交換機的軟件設(shè)計
  整個網(wǎng)絡(luò)交換機系統(tǒng)的軟件包括單片機的控制軟件,、EEPROM配置數(shù)據(jù)和PC機的管理程序。
  單片機的控制軟件主要完成對寄存器的讀寫和與PC之間的通信,。通過這個管理單元,,可以將交換機配成各種工作模式,以滿足不同用戶的需求,。
  交換芯片通過I2C總線連接EEPROM(24C02),,用于保存配置數(shù)據(jù)。在設(shè)備開機或者復(fù)位時,,設(shè)備將從EEPROM讀出這些數(shù)據(jù),,用于系統(tǒng)初始化。
  PC機的管理程序是用戶將PC機的串口與系統(tǒng)設(shè)備連接,,通過PC機的管理程序界面,,很容易地對系統(tǒng)進行配置。
  2.1 單片機控制的軟件設(shè)計
  管理單元由單片機和串口組成,,通過PC來配置EEPROM或交換芯片的寄存器,。單片機主要完成對寄存器的讀寫和與PC之間的通信,串口起到一個與PC的連接作用,,微制控器與串口之間還有一個電平轉(zhuǎn)換芯片,完成微控制器與PC之間信號的轉(zhuǎn)換,。通過管理單元,,可以將交換機配成各種工作模式,,以滿足不同用戶的需求,如:10/100M速率設(shè)置,、全/半雙工設(shè)置,、流量控制、靜態(tài)MAC地址設(shè)置,,鏡像設(shè)置,,廣播風暴控制,VLAN設(shè)置等,。單片機的軟件流程如圖2所示,。
 
 
  各模塊介紹如下:
  main——主程序;
  init_uart——串口初始化,;
  delay——系統(tǒng)延遲,;
  helpMenu——幫助菜單;
  systemCheck——檢查系統(tǒng)設(shè)備ID,;
  whict>:——命令提示符(whict是武漢化工學院的縮寫),;
  D——查看系統(tǒng)的整個配置數(shù)據(jù);
  E——編輯系統(tǒng)的配置數(shù)據(jù),;
  F——對交換機的各種功能進行配置,、管理;
  R——讀系統(tǒng)的配置數(shù)據(jù),;
  W——系統(tǒng)將當前配置數(shù)據(jù)保存到EEPROM,;
  L——系統(tǒng)靜態(tài)MAC地址的配置;
  M——改變系統(tǒng)的密碼,;
  I——系統(tǒng)軟件復(fù)位,;
  S——系統(tǒng)將缺省配置下載到EEPROM。
 
此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載,。