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

          新聞中心

          EEPW首頁 > 手機(jī)與無線通信 > 設(shè)計(jì)應(yīng)用 > 通信處理器MPC852T的無線接人點(diǎn)的系統(tǒng)設(shè)計(jì)

          通信處理器MPC852T的無線接人點(diǎn)的系統(tǒng)設(shè)計(jì)

          作者: 時(shí)間:2006-05-10 來源:網(wǎng)絡(luò) 收藏
          引言
          20世紀(jì)90年代以來,隨著個(gè)人數(shù)據(jù)的發(fā)展,為了實(shí)現(xiàn)任何人在任何時(shí)間,任何地點(diǎn)均能實(shí)現(xiàn)數(shù)據(jù)的目標(biāo),局域網(wǎng)得到了迅猛發(fā)展。局域網(wǎng)(wLAN),通常被稱為wi-Fi,這是一種可以在9l.44m內(nèi)進(jìn)行的技術(shù)。IEEE802.11委員會(huì)把孤立使用的無線局域網(wǎng)稱為自組無線局域網(wǎng)(Ad-boc Network),把互連使用的無線局域網(wǎng)稱為多區(qū)無線局域網(wǎng)(Infrastructure Network)
          無線AP是組建多區(qū)無線局域網(wǎng)的常用設(shè)備,配置多個(gè)接入點(diǎn)AP,就可以構(gòu)成一個(gè)連續(xù)的覆蓋區(qū)域,可提供移動(dòng)用戶漫游的能力。同時(shí),它在介質(zhì)訪問控制子層MAC中扮演無線工作站及有線局域網(wǎng)的橋梁,是一十兩端口的網(wǎng)橋。

          1 無線接入點(diǎn)AP的功能描述和
          無線接入點(diǎn)AP(Accss Point)通過一個(gè)標(biāo)準(zhǔn)的RJ-45接口用電纜連接到一個(gè)傳統(tǒng)的集線器或交換機(jī)端口,一個(gè)無線接入點(diǎn)可認(rèn)為是一個(gè)中繼器,在有線局域網(wǎng)和無線設(shè)備運(yùn)行的RF之間轉(zhuǎn)發(fā)幀。
          當(dāng)一個(gè)站在LAN上發(fā)送數(shù)據(jù)時(shí),接入點(diǎn)以指定的RF和無線幀格式轉(zhuǎn)發(fā)幀,而并不考慮該幀的目的地。同樣,當(dāng)一個(gè)無線設(shè)備發(fā)送一個(gè)幀時(shí),接入點(diǎn)通過所設(shè)定運(yùn)行的RF來接收幀,然后把幀轉(zhuǎn)發(fā)到有線局域網(wǎng)。兩個(gè)或者多個(gè)無線局域網(wǎng)接入點(diǎn),將為移動(dòng)無線設(shè)備提供一個(gè)接入到有線局域網(wǎng)的無線擴(kuò)展區(qū)域。當(dāng)建立一個(gè)無線局域網(wǎng)接人點(diǎn)時(shí),要配置一個(gè)BSS(Basic Service Set)標(biāo)識(shí)符。同樣,也要為那些無線局域網(wǎng)適配卡設(shè)定一個(gè)區(qū)域標(biāo)識(shí)符,其中接入點(diǎn)是為使用適配卡與其連接在一起的無線設(shè)備提供服務(wù)的。在多個(gè)無線接入點(diǎn)構(gòu)造的一個(gè)擴(kuò)展服務(wù)集(ESS,Extended Serice Set)中,通過定位接入點(diǎn),無線設(shè)備就實(shí)現(xiàn)了漫游功能,以及通過應(yīng)用無線局域網(wǎng)接入點(diǎn)服務(wù)的能力。一個(gè)基本的無線局域網(wǎng)是由一個(gè)連接到有限局域網(wǎng)的接入點(diǎn)和使用該接入點(diǎn)的一個(gè)或多個(gè)無線PC用戶所組成。
          基于的無線接入點(diǎn)AP由核心板和接口板組成,如圖l所示。核心板集成了摩托羅拉,32MB SDRAM以及4MB的Flash,為軟件提供了足夠的空間。核心板上還集成了一個(gè)l0M以太網(wǎng)口,不僅實(shí)現(xiàn)和有線局域網(wǎng)的橋接。還可以實(shí)現(xiàn)程序的以太網(wǎng)下載,從而燒寫進(jìn)FIash中。底板上則提供了非常豐富的外設(shè)接口:1個(gè)10M以太網(wǎng)接口,1個(gè)100M以太網(wǎng)接口,1個(gè)RS-232接口(COMI),1個(gè)BDM調(diào)試口(MPC8XX系列的EPBDM),還有1個(gè)PCMCIA接口,按入無線網(wǎng)卡,作為無線接入點(diǎn)的RF,實(shí)現(xiàn)數(shù)據(jù)的無線發(fā)送和接收。該系統(tǒng)具有體積小,耗電低,處理能力強(qiáng),網(wǎng)絡(luò)功能強(qiáng)大的特點(diǎn),能夠裝載和運(yùn)行嵌入式Linux的操作系統(tǒng),可以在這個(gè)系統(tǒng)平臺(tái)上進(jìn)行自主的應(yīng)用軟件和驅(qū)動(dòng)程序開發(fā)。

           


          2 功能介紹
          在無線接入點(diǎn)A P的中,選用了MotoIoraMPC852T。它是Motorola公司的PowerQUICC系列嵌入式通信。PowerQulCC處理器系列廣泛應(yīng)用于當(dāng)今市場上的DSL 調(diào)制解調(diào)器、SOHO路由器、遠(yuǎn)程接入服務(wù)器、DSLAM、中心局交換機(jī)設(shè)備、無線基礎(chǔ)設(shè)施基站、企業(yè)路由器以及媒體網(wǎng)關(guān)等領(lǐng)域。
          MPC852T PowerQUICC(Quad Integrated CommunicationController)內(nèi)部集成了微處理器和一些控制領(lǐng)域的常用器件,是一個(gè)多用途的通用芯片。它內(nèi)部集成了微處理器和常用外圍器件,可用于各種控制領(lǐng)域。它應(yīng)用于通信系統(tǒng)的低成本實(shí)現(xiàn),提供了更高的性價(jià)比,并在通信方面有所增強(qiáng)。MPC852 PowerQUICC集成了兩個(gè)處理塊,一個(gè)處理塊是嵌入的PowerPC核,另一個(gè)是通信處理模塊(CPM,C0MMunications processor Module)。由于cPM分擔(dān)了嵌入式PowerPC核的外圍工作任務(wù),這種雙處理器體系結(jié)構(gòu)功耗要低于傳統(tǒng)的體系結(jié)構(gòu)的處理器。嵌入式MFC852T內(nèi)核可達(dá)l00MHz,擴(kuò)展總線最大頻率是66MHz,50/60MHz內(nèi)核頻率支持l:1模式和2:1模式,80/100MHz內(nèi)核頻率支持2:l模式。MFC852T系統(tǒng)集成單元主要包括:總線監(jiān)視器、中斷監(jiān)視器、軟件看門狗、中斷定時(shí)器、時(shí)鐘合成器、PowerPC減量器、復(fù)位控制器及JTAG1149.l測試口。以上性能理想地適用于各種有線和無線的通信處理任務(wù),極大地滿足了控制層繁重的任務(wù)處理及傳輸層高帶寬的要求。

          3 核心板的
          MPC852T是32位地址,32位數(shù)據(jù)總線寬度,4KB的數(shù)據(jù)Cache和4KB指令Cache,分別帶有一個(gè)MMU,52MHz的主頻,52MbpS的總線速度。若外接8位或l6位數(shù)據(jù)寬度的外設(shè)芯片,與CPU相接時(shí),MPC852T的總線數(shù)據(jù)寬度是可設(shè)置的,可分配為8位、l6位或32位模式。在核心板中,選用了2片16lbit數(shù)據(jù)寬度,共4MB的Flash(MX29Lv160BTC,如有不同型號(hào),則是完全兼容的器件),速度70/90ns:2片16M8bit數(shù)據(jù)寬度的SDRAM(HY57V651620BTC-10S,如有不同型號(hào),則是完全兼容的器件)構(gòu)成,共32MB SDRAM。
          MPC852T共提供了4個(gè)PORT,即PoRTA、PortB、P0rtC和PortD,對(duì)應(yīng)的控制寄存器實(shí)現(xiàn)與其它信號(hào)引腳的復(fù)用。
          端口分配使用情況如表l所列。



          其中:一個(gè)SCC作為10M以太網(wǎng)接口,SMC(和P0rtB GPIO復(fù)用)作為兩線串口(TXD,RXD)。核心板未用的,通過核心板接口,引到接口板作為GPl0資源使用。
          同時(shí),由1個(gè)LED提供1個(gè)運(yùn)行指示.1個(gè)l0M局域網(wǎng)接口LINK/TRANSMIT/RECEIVE指示,如圖2所示。



          4 底層接口板的設(shè)計(jì)
          底層接口板有1個(gè)9V供電插座和1個(gè)供電模塊,用的是9V的直流電源,為核心板和接口板提供標(biāo)準(zhǔn)的3.3V和5V電壓。底層接口板還提供了一系列的接口:1個(gè)標(biāo)準(zhǔn)RS-232串口,1個(gè)標(biāo)準(zhǔn)10M快速以太網(wǎng)接口,1個(gè)標(biāo)準(zhǔn)的100M快速以太網(wǎng)接口,1個(gè)PCMCIA接口,1個(gè)BDM接口。其中,BDM接口和RS-232串口,可用于核心板硬件檢測,映象文件下載,運(yùn)行,F(xiàn)lash燒寫等。
          系統(tǒng)所用的無線網(wǎng)卡是LANEscapeTM XI-325H的無線網(wǎng)卡,PCMCIA接口,2.4GHz直接序列擴(kuò)頻,高速低功耗,發(fā)射功率為20dBm,遵循802.11h協(xié)議和Wi-Fi認(rèn)證,64bit/128bitWEP加密,支持TCP/IP,IPX,NetBEUI的協(xié)議,支持1Mbps、2Mbps、5.5Mbps和llMbps的自動(dòng)傳輸速率選擇,支持Ad-Hoc(對(duì)等),Infrastructure(基礎(chǔ)網(wǎng)絡(luò))和Roaming(漫游)的網(wǎng)絡(luò)模式,可以實(shí)現(xiàn)方便快捷無縫連接以太網(wǎng)和無線局域網(wǎng)。


          MPC852T的CPM部分的4個(gè)SCC均可配置為10M以太網(wǎng)控制器,F(xiàn)EM是10M/100M以太網(wǎng)自適應(yīng)控制器-通過這些以太網(wǎng)控制器,只需要簡單的線路接口單元就可構(gòu)成10M以太網(wǎng)口和10M/100M自適應(yīng)網(wǎng)口。該以太網(wǎng)口符臺(tái)IEEE8023規(guī)范。實(shí)際使用中,MPC852T設(shè)置多少個(gè)網(wǎng)口,應(yīng)根據(jù)主芯片的運(yùn)行主頻和接口要求統(tǒng)籌考慮。在50MHz的MPC852T芯片上,實(shí)現(xiàn)1個(gè)10M網(wǎng)口(采用SCCl實(shí)現(xiàn),如圖3所示)和1個(gè)lO/100M自適應(yīng)網(wǎng)口如圖4所示。




          MPC852T中I/O口的引腳幾乎都有多種功能,通過對(duì)有關(guān)的寄存器進(jìn)行設(shè)置或?qū)⒛承┮_設(shè)置成指定電位,使得有關(guān)I/0功能為設(shè)計(jì)指定功能。由于MPC852T的引腳多,各引腳的功能也多,為了能夠盡快地確定各引腳的功能,可利用摩托羅拉公司提供的引腳功能安排工具,檢查引腳功能上的沖突。

          5 無線接入點(diǎn)AP的系統(tǒng)軟件設(shè)計(jì)
          MPC852T是遵照P0werPC結(jié)構(gòu)體系的嵌入式芯片系列,因此可實(shí)現(xiàn)多任務(wù)操作,并支持多種內(nèi)存映射方式,完全可以運(yùn)行實(shí)時(shí)多任務(wù)操作系統(tǒng),以滿足通信控制設(shè)備所要求的實(shí)時(shí)性。
          嵌入式操作系統(tǒng)主要有Palm OS、Windows CE、EPOC、Linux CE、ONX、ECOS、LYNX等。高端嵌入式操作系統(tǒng)要求許多高級(jí)功能,如圖形用戶界面和網(wǎng)絡(luò)支持,但其價(jià)格很高,一般用戶難以接受。嵌入式Linux操作系統(tǒng)以價(jià)格低廉,功能強(qiáng)大有易于移植而被廣泛應(yīng)用。Linux是個(gè)和Unix相似,以核心為基礎(chǔ)的,完全內(nèi)存保護(hù),多任務(wù)多進(jìn)程的操作系統(tǒng)。它支持廣泛的計(jì)算機(jī)硬件,包括MOTOROLA、X86、Alpha、Sparce、MIPS、PPC、ARM、NEG等。
          在移植的Linux源代碼中,根據(jù)目標(biāo)進(jìn)行半裁減定制,以適合目標(biāo)系統(tǒng),盡量少占用系統(tǒng)內(nèi)存。操作系統(tǒng)定制后.將其連接到目標(biāo)的應(yīng)用程序上,成為應(yīng)用程序的一部分,并對(duì)低級(jí)系統(tǒng)的初始化文件進(jìn)行修改,使之符合目標(biāo)板的需要。對(duì)于MPC852T,所有軟件都固化在板上2片F(xiàn)lash內(nèi),F(xiàn)lash的內(nèi)容可通過燒寫工具來更新升級(jí)。開發(fā)應(yīng)用程序和更改其上的操作系統(tǒng)工作方式,可以采用一種交叉編譯的開發(fā)模式,即為MPC852T應(yīng)用。它不能直接在MPC823板上編輯、編譯和調(diào)試,而必須把工作寄宿到一臺(tái)PC機(jī)上完成。
          一個(gè)小型的Linux操作系統(tǒng)需要下面三個(gè)基本要素。
          ①引導(dǎo)工具.它完成系統(tǒng)的一些初始化工作,然后把操作系統(tǒng)調(diào)入到內(nèi)存中,跳到操作系統(tǒng)的入口。
          ②Linux內(nèi)核,由內(nèi)存管理,進(jìn)程管理和事務(wù)處理構(gòu)成。因?yàn)長inux內(nèi)核支持多種CPU體系,所以修改Linux內(nèi)核運(yùn)行到硬件平臺(tái)中,不需要太多的工作。
          ③初始化進(jìn)程,為Linux系統(tǒng)安裝inetd、telnetd、tftpd、bttpd等守護(hù)進(jìn)程,使得Linux系統(tǒng)成為名副其實(shí)的網(wǎng)絡(luò)操作系統(tǒng),可以Telnet遠(yuǎn)程管理,可以FTP傳遞文件。
          如果系統(tǒng)想成為完整的操作系統(tǒng),還得加上一個(gè)文件系統(tǒng),硬件驅(qū)動(dòng)程序和提供所需功能的一個(gè)或多個(gè)應(yīng)用程序,如1個(gè)串口、1個(gè)10M以太網(wǎng)接口、1個(gè)100M以太網(wǎng)接口、1個(gè)BDM調(diào)試接口、WLAN無限網(wǎng)卡的驅(qū)動(dòng)程序,802.1lb無線AP以及網(wǎng)關(guān)系統(tǒng)軟件,Web Server及TCP/IP協(xié)議等應(yīng)用程序。

          6 嵌入式LinuX無線接入點(diǎn)AP的實(shí)現(xiàn)
          由于嵌入式操作系統(tǒng)硬件資源的限制.要做到實(shí)現(xiàn)AP在嵌入式Linux操作系統(tǒng)上的應(yīng)用,就需要對(duì)Linux操作系統(tǒng)進(jìn)行特別定制,刪除AP不需要的部分,真正做到精簡系統(tǒng),過程大致可以分成兩個(gè)部分。
          (1)精簡內(nèi)核
          Linux內(nèi)核是可以根據(jù)特定的要求進(jìn)行定制的,筆者使用的是嵌入式Linux操作系統(tǒng)3.0for PowerPC版本.在/usr/src/linux目錄下,使用make menuconfig把可以拿掉的項(xiàng)目全部拿掉。如果嵌入式系統(tǒng)沒有軟驅(qū)和光驅(qū),則去掉內(nèi)核中對(duì)于軟驅(qū)(floppy)及光驅(qū)(cdrom)的支持選項(xiàng);如果AP不需要發(fā)聲,則不要聲音(sound)的支持。去掉所有的字符設(shè)備(character device)等。
          在去除的同時(shí) 要根據(jù)AP應(yīng)用軟件及一些特定功能的要求,在內(nèi)核中留下對(duì)需要驅(qū)動(dòng)的支持。例如:要保留對(duì)網(wǎng)絡(luò)的支持,保留對(duì)TCP/IP協(xié)議的支持,保留PPP(點(diǎn)對(duì)點(diǎn)協(xié)議)特定功能的支持。
          配置完成后,重新編譯內(nèi)核,然后修改Linux系統(tǒng)引導(dǎo)器Iilo的配置文件井最后以新編譯的核作為啟動(dòng)內(nèi)核。
          (2)縮小Llnux的文件系統(tǒng)
          嵌入式Linux本身是一種操作系統(tǒng),它的主要任務(wù)是管理計(jì)算機(jī)的系統(tǒng)資源,為用戶提供使用計(jì)算機(jī)及外部設(shè)備的接口,因此在對(duì)Linux進(jìn)行大幅度刪減縮小的同時(shí),也保留了一些基本的命令和目錄。這些保留的命令和目錄大致可以分成三類:一類是Linux操作系統(tǒng)啟動(dòng)所需要的,另一類是為了完成一些系統(tǒng)功能的,最后一類是使AP能夠正常工作的。
          完成裁減工作后重啟,若Linux能夠正常啟動(dòng)運(yùn)行,表明初步的Linux操作系統(tǒng)已構(gòu)架成功,這樣就要完成AP在此上面的實(shí)現(xiàn)。AP是以運(yùn)行腳本命令pcmcia將AP驅(qū)動(dòng)程序中已經(jīng)編好的目標(biāo)文件(.o文件)作為模塊加載到系統(tǒng)中啟動(dòng)的,Linux提供了depmod、insmod、rmmod以及其它一些命令來保證適當(dāng)?shù)哪K以正確的順序加載。同時(shí),AP啟動(dòng)時(shí)還要讀取配置文件,所謂配置文件就是方便用戶修改相應(yīng)的參數(shù),如AP的SSID,AP的信道號(hào)等所編制的簡單腳本文件。這些配置文件通知AP驅(qū)動(dòng)程序相關(guān)參數(shù)的設(shè)置。有了這些文件后,AP就能正常啟動(dòng)了。另外,AP的目標(biāo)文件在AP關(guān)閉后自動(dòng)卸載掉。
          最終實(shí)現(xiàn)的AP嵌入式Linux操作系統(tǒng)大概由以下幾個(gè)目錄組成。
          ◇/bin: 包含用戶的使用命令,如cp、Is、rm等,可根據(jù)情況對(duì)原系統(tǒng)的命令進(jìn)行刪減。
          ◇/boot:包含一些壓縮的內(nèi)核映像和啟動(dòng)必備的文件。
          ◇/dev包含系統(tǒng)所需要的設(shè)備文件,是Linux設(shè)備輸出,輸入所需要的,可以用命令mknod或是makedev來產(chǎn)生。
          ◇/etc:包含系統(tǒng)所需要的配置文件。
          ◇/lib包含執(zhí)行命令所需要的共享庫,命令ldd可以告訴哪些庫可以動(dòng)態(tài)連接在某一個(gè)執(zhí)行命令上,這樣可以將需要的庫拷入。
          ◇/mnt:此目錄一般為空。
          ◇/proc:是個(gè)空目錄,啟動(dòng)時(shí)內(nèi)核將系統(tǒng)啟動(dòng)狀態(tài)文件放人此目錄中,是proc文件系統(tǒng)所需要的目錄。
          ◇/sbin:包含系統(tǒng)命令,如init、getty、reboot等,有 些命令會(huì)影響整個(gè)系統(tǒng)。
          ◇/var:包含AP啟動(dòng)時(shí)的一些日志文件。
          ◇/usr:放入另外一些必要的命令,在目錄/ust/sbin及/usr/bin中。
          根據(jù)具體的情況進(jìn)行具體的刪減,最終在4MB存儲(chǔ)容量的巔入式Linux操作系統(tǒng)中完成對(duì)無線接入點(diǎn)AP的使用。

          結(jié)語
          在嵌入式Linux操作系統(tǒng)上實(shí)現(xiàn)基于MPC852T的無線接入點(diǎn)AP的系統(tǒng)設(shè)計(jì),充分發(fā)揮了MPC852T的強(qiáng)大控制能力和通信能力,以及Linux操作系統(tǒng)資源調(diào)度能力和實(shí)時(shí)性的特性,使AP具有較高的轉(zhuǎn)發(fā)速率,滿足了用戶的需求,而且構(gòu)成了一個(gè)結(jié)構(gòu)清晰、模塊化、易實(shí)現(xiàn)、易使用的嵌入式系統(tǒng)。

          linux相關(guān)文章:linux教程




          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁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); })();