娇小w搡bbbb搡bbb,《第一次の人妻》,中国成熟妇女毛茸茸,边啃奶头边躁狠狠躁视频免费观看

歷史上的今天

今天是:2025年02月16日(星期日)

正在發(fā)生

2018年02月16日 | 基于ARM和FPGA的CSMA/CA的MAC協(xié)議設(shè)計(jì)與實(shí)現(xiàn)

發(fā)布者:古寶奇緣 來(lái)源: eefocus關(guān)鍵字:ARM  FPGA  CSMA  MAC協(xié)議 手機(jī)看文章 掃描二維碼
隨時(shí)隨地手機(jī)看文章

    引言


    基于CSMA/CA的MAC協(xié)議的優(yōu)勢(shì)在于其簡(jiǎn)單和健壯性,適用于分布式網(wǎng)絡(luò),每個(gè)節(jié)點(diǎn)無(wú)需維持和動(dòng)態(tài)更新周圍相鄰節(jié)點(diǎn)的狀態(tài)信息,可以獨(dú)自決定何時(shí)接入信道,只要上層有數(shù)據(jù)需要傳輸,MAC層就會(huì)對(duì)信道進(jìn)行競(jìng)爭(zhēng),因此該協(xié)議的應(yīng)用也相當(dāng)廣泛。嵌入式技術(shù)的發(fā)展對(duì)MAC協(xié)議的實(shí)現(xiàn)也提供了很好的技術(shù)支撐。本文搭建了一種基于ARM和FPGA相結(jié)合的嵌入式開(kāi)發(fā)平臺(tái),并在此基礎(chǔ)上設(shè)計(jì)與實(shí)現(xiàn)了基于CSMA/CA的MAC協(xié)議。由于ARM和FPGA本身就是可重構(gòu)器件,同時(shí)將FPGA中的一些協(xié)議參數(shù)由ARM來(lái)設(shè)置,通過(guò)修改ARM的代碼就可以實(shí)現(xiàn)對(duì)FPGA中協(xié)議功能的調(diào)整,方便快捷,不再需要重新生成比特文件下載,有利于MAC協(xié)議可重構(gòu)的實(shí)現(xiàn)。

    1 協(xié)議功能描述

    1.1 報(bào)文結(jié)構(gòu)

    本設(shè)計(jì)實(shí)現(xiàn)的是基于CSMA/CA的MAC協(xié)議的基本訪問(wèn)模式,節(jié)點(diǎn)之間的通信只有數(shù)據(jù)幀(DATA)和應(yīng)答確認(rèn)幀(ACK)。圖1給出了報(bào)文結(jié)構(gòu),其中ACK沒(méi)有凈數(shù)據(jù)部分。由于考慮的是一跳范圍的無(wú)線通信,沒(méi)有中繼節(jié)點(diǎn)等,因此只有源節(jié)點(diǎn)號(hào)和目的節(jié)點(diǎn)號(hào)。

a.JPG

      1.2 組網(wǎng)設(shè)計(jì)

    本文設(shè)計(jì)的MAC協(xié)議除了滿足基本的的物理載波偵聽(tīng)和虛擬載波偵聽(tīng)相結(jié)合檢測(cè)信道忙閑的機(jī)制外,還包括幀間間隔、隨機(jī)退避、應(yīng)答確認(rèn)和重傳機(jī)制。

    有數(shù)據(jù)要發(fā)送的節(jié)點(diǎn)會(huì)首先監(jiān)聽(tīng)媒介,若為忙則繼續(xù)等待,若空閑的時(shí)間超過(guò)或者等于DIFS或者EIFS則會(huì)進(jìn)入退避進(jìn)程。在執(zhí)行退避進(jìn)程過(guò)程中,節(jié)點(diǎn)將隨機(jī)產(chǎn)生一個(gè)退避時(shí)間來(lái)設(shè)置退避定時(shí)器,同時(shí)繼續(xù)監(jiān)聽(tīng)媒介,若空閑時(shí)間達(dá)到了一個(gè)時(shí)隙時(shí)間,則退避定時(shí)器減去一個(gè)時(shí)隙時(shí)間,如果在期間媒介變?yōu)榱嗣Γ吮苓M(jìn)程將掛起,直到媒介空閑時(shí)間再次達(dá)到DIFS或者EIFS后才會(huì)接著繼續(xù)進(jìn)行退避進(jìn)程。當(dāng)退避定時(shí)器變?yōu)?時(shí),節(jié)點(diǎn)才允許開(kāi)始發(fā)送數(shù)據(jù),同時(shí)也會(huì)啟動(dòng)超時(shí)重傳機(jī)制,如果在規(guī)定的時(shí)間內(nèi)沒(méi)有收到所希望的ACK,則會(huì)重傳數(shù)據(jù)幀,當(dāng)節(jié)點(diǎn)重傳的次數(shù)超過(guò)了重傳門(mén)限將會(huì)丟棄該數(shù)據(jù)幀,或者超過(guò)了數(shù)據(jù)幀最長(zhǎng)允許的發(fā)送時(shí)間,也會(huì)丟棄該數(shù)據(jù)幀;當(dāng)節(jié)點(diǎn)收到ACK時(shí),就會(huì)開(kāi)始準(zhǔn)備下一次數(shù)據(jù)的發(fā)送。

    接收節(jié)點(diǎn)收到正確且是發(fā)送給本節(jié)點(diǎn)的數(shù)據(jù)幀將會(huì)立刻回復(fù)源節(jié)點(diǎn)ACK。如果節(jié)點(diǎn)沒(méi)有收到正確的數(shù)據(jù)幀,則將使用EIFS;如果收到正確的數(shù)據(jù)幀,但是不是給本節(jié)點(diǎn)的,節(jié)點(diǎn)將解析出持續(xù)時(shí)間,更新NAV,將信道視為已被占用。

    1.3 功能劃分

    本設(shè)計(jì)充分利用ARM靈活便捷的優(yōu)勢(shì),用來(lái)實(shí)現(xiàn)隨機(jī)退避算法和協(xié)議參數(shù)的管理,如重傳次數(shù),幀間間隔的設(shè)置等。隨機(jī)退避算法采用的是第i次退避就在2i個(gè)時(shí)隙中隨機(jī)地選出一個(gè)值作為節(jié)點(diǎn)需要退避的值。協(xié)議參數(shù)的設(shè)置由ARM來(lái)完成,主要是考慮到FPGA不利于參數(shù)的修改,這樣也可以增強(qiáng)協(xié)議的可重構(gòu)性。而FPGA以其卓越的實(shí)時(shí)信號(hào)處理優(yōu)點(diǎn),用于管理MAC幀的收發(fā)控制等。

    2 協(xié)議設(shè)計(jì)

    MAC層的工作狀態(tài)主要是由物理載波偵聽(tīng)和虛擬載波偵聽(tīng)共同決定的(即:MAC_flag=CS_flag or NAV_flag),當(dāng)兩者都顯示為空閑時(shí),MAC層才會(huì)進(jìn)入發(fā)送數(shù)據(jù)幀狀態(tài)。同時(shí)該協(xié)議也需要時(shí)鐘計(jì)數(shù)參與其中,IFS_time是每個(gè)節(jié)點(diǎn)在進(jìn)入退避進(jìn)程前需要等待的時(shí)間,實(shí)現(xiàn)幀間間隔的功能;Backoff_time是每個(gè)節(jié)點(diǎn)在退避進(jìn)程中退避的時(shí)間;NAV_time是沒(méi)有在通信的節(jié)點(diǎn)預(yù)留信道的時(shí)間。這三個(gè)時(shí)間也關(guān)系著整個(gè)協(xié)議所處的狀態(tài)。圖2給出了具體的實(shí)現(xiàn)流程圖,具體實(shí)現(xiàn)過(guò)程步驟如下:b.JPG

    (1)若MAC_flag為false時(shí),表明信道空閑,此時(shí)進(jìn)入(2);若MAC_flag為true,則說(shuō)明現(xiàn)在信道已被占用,此時(shí)不管節(jié)點(diǎn)已經(jīng)處于什么狀態(tài)都會(huì)進(jìn)入第七步,除了正在發(fā)送數(shù)據(jù)的節(jié)點(diǎn),由于正在發(fā)送的節(jié)點(diǎn)是不可能監(jiān)聽(tīng)信道的,而且也無(wú)法接收其他節(jié)點(diǎn)的數(shù)據(jù),載波偵聽(tīng)機(jī)制在這種狀態(tài)下是失效的,因此不會(huì)出現(xiàn)正在發(fā)送數(shù)據(jù)的節(jié)點(diǎn)從發(fā)送狀態(tài)突然變?yōu)榻邮諣顟B(tài)。

    (2)執(zhí)行幀間間隔進(jìn)程,遞減IFS_time大小,直到為0就進(jìn)入(3)。IFS_time的初始值為DIFS。

    (3)退避進(jìn)程。退避時(shí)間的大小主要是由ARM提供,當(dāng)節(jié)點(diǎn)經(jīng)歷了一個(gè)時(shí)隙時(shí)間,退避時(shí)隙數(shù)減1,但當(dāng)節(jié)點(diǎn)沒(méi)有完全經(jīng)歷一個(gè)時(shí)隙時(shí)間,退避時(shí)隙數(shù)就不會(huì)變化。退避進(jìn)程結(jié)束后就會(huì)進(jìn)入(4)。

    (4)判斷發(fā)送類型,設(shè)計(jì)中發(fā)送類型Tx_tpye的初始值為1。若Tx_tpye為0,則為節(jié)點(diǎn)發(fā)送ACK,根據(jù)接收到的數(shù)據(jù)幀中的源/目的節(jié)點(diǎn)號(hào)以及序列號(hào)等組裝回復(fù)發(fā)送節(jié)點(diǎn)ACK,并初始化IFS_time和Backoff_time以備節(jié)點(diǎn)發(fā)送數(shù)據(jù)幀使用,同時(shí)設(shè)置NAV_flag為true,更新NAV_time的值,繼續(xù)虛擬載波偵聽(tīng),避免出現(xiàn)發(fā)送ACK的節(jié)點(diǎn)會(huì)優(yōu)先占用信道的情況;若Tx_tpye不為0,則表明節(jié)點(diǎn)可以開(kāi)始發(fā)送數(shù)據(jù)幀,轉(zhuǎn)入(5)。

    (5)發(fā)送數(shù)據(jù)幀前首先判斷是否超過(guò)最大允許發(fā)送的時(shí)間,若超過(guò)了就丟棄該數(shù)據(jù)幀,將IFS_time設(shè)置為EIFS,Backof_time初始化,超時(shí)計(jì)時(shí)器停止;若沒(méi)有超過(guò)最大允許發(fā)送時(shí)間,則節(jié)點(diǎn)正式發(fā)送數(shù)據(jù)幀,并啟動(dòng)單次超時(shí)計(jì)時(shí),發(fā)送完畢后就等待ACK,此時(shí)進(jìn)入(6)。

    (6)在等待ACK到來(lái)的同時(shí)判斷是否超時(shí)單次允許發(fā)送的時(shí)間,若超過(guò)了,則重傳次數(shù)遞加;然后判斷是否超過(guò)重傳門(mén)限,如果超過(guò)了門(mén)限,則丟棄該數(shù)據(jù)幀;如果沒(méi)有超過(guò),則將IFS_time設(shè)置為EIFS,而且還需要ARM的隨機(jī)退避算法根據(jù)重傳次數(shù)重新給一個(gè)退避時(shí)隙數(shù),同時(shí)修改數(shù)據(jù)幀中的重傳位以便接收節(jié)點(diǎn)識(shí)別。

    (7)保存當(dāng)前退避進(jìn)程中的Backoff_time和剛剛結(jié)束的幀間間隔的大小IFS_time,接收MAC幀并解析其中相關(guān)的數(shù)據(jù),為后續(xù)的組裝ACK做準(zhǔn)備,然后進(jìn)入(8),同時(shí)將NAV_flag設(shè)置為true,保證MAC層能處理完數(shù)據(jù)。

    (8)校驗(yàn)接收到的MAC幀是否正確,若不正確,則將IFS_time設(shè)置為EIFS,NAV_flag設(shè)置為false,NAV_time設(shè)置為0,這樣節(jié)點(diǎn)就進(jìn)入執(zhí)行幀間間隔進(jìn)程。若校驗(yàn)正確,則進(jìn)入(9)。

    (9)將FPGA解析出來(lái)的目的節(jié)點(diǎn)號(hào)與本節(jié)點(diǎn)的比較,判斷是否是發(fā)送給本節(jié)點(diǎn)的。如果不是發(fā)送給本節(jié)點(diǎn)的,那么就再比較本節(jié)點(diǎn)現(xiàn)在的NAV_time值是否大于接收到的MAC幀內(nèi)的NAV,若大于則本節(jié)點(diǎn)繼續(xù)按照現(xiàn)有的NAV_time值執(zhí)行下去;若小于接收到的MAC幀內(nèi)的NAV,則使用MAC幀內(nèi)的NAV來(lái)更新本節(jié)點(diǎn)的NAV_time值,然后以最新的NAV_time值遞減下去直到為0,虛擬載波偵聽(tīng)顯示空閑。但是在執(zhí)行NAV_time遞減過(guò)程中隨時(shí)都有可能收到新MAC幀,而且也不是發(fā)送給本節(jié)點(diǎn)的,照樣要執(zhí)行本步驟,并不是等到NAV_time變?yōu)?后再更新。如果是發(fā)送給本節(jié)點(diǎn)的,則會(huì)進(jìn)入(10)。

    (10)若節(jié)點(diǎn)接收到的是數(shù)據(jù)幀。即Rx_type為1,F(xiàn)PGA將接收到的數(shù)據(jù)幀上傳ARM;同時(shí)將IFS_time更新為SIFS,Backoff_time設(shè)置為0,這樣使得接收到數(shù)據(jù)幀到發(fā)送ACK之間的時(shí)間間隔為SIFS,并將Tx_tpye設(shè)置為0,NAV_flag變?yōu)閒alse,進(jìn)入(2),開(kāi)始準(zhǔn)備發(fā)送ACK。如果Rx_type為0,則節(jié)點(diǎn)接收到的是ACK,說(shuō)明一次數(shù)據(jù)收發(fā)過(guò)程結(jié)束,節(jié)點(diǎn)將初始化相關(guān)參數(shù),計(jì)時(shí)停止等,F(xiàn)PGA釋放空間,表明該數(shù)據(jù)幀已發(fā)送成功。

    3 仿真驗(yàn)證

    基于CSMA/CA的MAC協(xié)議的實(shí)現(xiàn)關(guān)鍵在于各個(gè)節(jié)點(diǎn)對(duì)各種情況的處理,因此對(duì)一個(gè)節(jié)點(diǎn)協(xié)議功能的仿真驗(yàn)證也能說(shuō)明設(shè)計(jì)的正確性。本設(shè)計(jì)中FPGA部分的設(shè)計(jì)是重點(diǎn),所以使用ModelSim進(jìn)行仿真觀察節(jié)點(diǎn)FPGA的處理過(guò)程。

    3.1 信道競(jìng)爭(zhēng)過(guò)程

    基于CSMA/CA的MAC協(xié)議中各個(gè)節(jié)點(diǎn)也不知道自身周圍的節(jié)點(diǎn)情況,因此節(jié)點(diǎn)競(jìng)爭(zhēng)信道時(shí)隨時(shí)都可能檢測(cè)到信道已被占用。圖3給出了節(jié)點(diǎn)在退避過(guò)程中檢測(cè)到物理載波偵聽(tīng)變?yōu)槊Γ⒖掏V雇吮苓M(jìn)程,將此時(shí)的退避時(shí)隙數(shù)掛起,即退避時(shí)隙數(shù)保留為31。待到信道重新空閑超過(guò)幀間間隔DIFS后,將以保留的退避時(shí)隙數(shù)繼續(xù)進(jìn)行退避進(jìn)程,變?yōu)?后開(kāi)始發(fā)送數(shù)據(jù)幀。在圖中還可以看到節(jié)點(diǎn)收到正確的ACK后,更新NAV的過(guò)程。從仿真圖的執(zhí)行流程可以說(shuō)明所設(shè)計(jì)的MAC協(xié)議滿足載波偵聽(tīng)機(jī)制、幀間間隔、隨機(jī)退避的功能要求。

c.JPG

    3.2 數(shù)據(jù)傳輸過(guò)程

    從圖4中可以觀察到節(jié)點(diǎn)發(fā)送第一個(gè)數(shù)據(jù)幀后,超時(shí)計(jì)數(shù)器開(kāi)始計(jì)時(shí),但在規(guī)定時(shí)間內(nèi)沒(méi)有收到ACK,則重傳數(shù)據(jù)幀,重傳退避的時(shí)間是重新賦值的,并且?guī)g間隔不再是DIFS,而是EIFS;當(dāng)節(jié)點(diǎn)接收到正確的ACK后,開(kāi)始發(fā)送新的數(shù)據(jù)幀。說(shuō)明了所設(shè)計(jì)的MAC協(xié)議能夠?qū)崿F(xiàn)確認(rèn)重傳機(jī)制。

    4 結(jié)語(yǔ)

    在以ARM和FPGA為主的硬件結(jié)構(gòu)上,設(shè)計(jì)與實(shí)現(xiàn)了基于CSMA/CA的MAC協(xié)議,該協(xié)議具有載波偵聽(tīng)機(jī)制、隨機(jī)退避、確認(rèn)重傳等功能。經(jīng)過(guò)仿真測(cè)試,驗(yàn)證了所設(shè)計(jì)MAC協(xié)議的可行性。


關(guān)鍵字:ARM  FPGA  CSMA  MAC協(xié)議 引用地址:基于ARM和FPGA的CSMA/CA的MAC協(xié)議設(shè)計(jì)與實(shí)現(xiàn)

上一篇:基于ARM、嵌入式Linux和CC2530構(gòu)建的無(wú)線氣象數(shù)據(jù)通信系統(tǒng)開(kāi)發(fā)
下一篇:從單片機(jī)的應(yīng)用發(fā)展到嵌入式操作系統(tǒng)的應(yīng)用思考

推薦閱讀

隨著電子技術(shù)、通信技術(shù)以及計(jì)算機(jī)技術(shù)的迅猛發(fā)展,嵌入式系統(tǒng)已經(jīng)廣泛應(yīng)用于各領(lǐng)域,各種行業(yè)對(duì)嵌入式設(shè)備的系統(tǒng)功能、性能以及規(guī)模的要求都在日益提高,開(kāi)發(fā)者必須能夠針對(duì)客戶的需求及時(shí)對(duì)系統(tǒng)進(jìn)行維護(hù)和升級(jí),以延長(zhǎng)系統(tǒng)的使用周期,改善系統(tǒng)的性能。目前遠(yuǎn)程升級(jí)方式主要有:采用Boot加雙Loader的結(jié)構(gòu)式設(shè)計(jì)實(shí)現(xiàn)系統(tǒng)的完整升級(jí)、基于TFTP(Trivi...
日前,美國(guó)加利福尼亞州車輛管理局(DMV)發(fā)布了《2018年自動(dòng)駕駛脫離報(bào)告》,包括48家獲得加州路測(cè)資格公司從2017年12月到2018年11月的路測(cè)情況。公司每年上交給DMV報(bào)告中,會(huì)含有測(cè)試車輛的數(shù)量、測(cè)試?yán)锍蹋约霸跍y(cè)試中脫離的次數(shù),而脫離次數(shù)是指在自動(dòng)駕駛系統(tǒng)遇到無(wú)法處理的情況時(shí),駕駛員的人工干預(yù)次數(shù)。需要指出的是,所有數(shù)據(jù)都是企業(yè)自己提交,...
IGBT是一種復(fù)合全控型電壓驅(qū)動(dòng)式功率半導(dǎo)體器件,為世界公認(rèn)的電力電子第三次技術(shù)革命的代表性產(chǎn)品,具有高頻率、高電壓、大電流,易于開(kāi)關(guān)等優(yōu)良性能,被業(yè)界譽(yù)為功率變流裝置的“CPU”。近年來(lái),隨著國(guó)民經(jīng)濟(jì)的快速發(fā)展,功率半導(dǎo)體技術(shù)已經(jīng)日益廣泛地應(yīng)用于日常消費(fèi)品、工業(yè)制造、電力輸配、交通運(yùn)輸、航空航天、可再生能源及軍工等重點(diǎn)領(lǐng)域,只要涉及...

史海拾趣

問(wèn)答坊 | AI 解惑

BL P11 型號(hào)

請(qǐng)問(wèn)各位大俠,本人在有些料件上看到下面的標(biāo)識(shí),但是不知道這些是哪家公司做的具體型號(hào)的管子,請(qǐng)賜教!拜謝. BL P11 BL K56 DF DN L6 DF DN   M6 DF S2N:L…

查看全部問(wèn)答∨

采用熱偶及2182A型納伏表的微熱量測(cè)量系統(tǒng)

微熱量測(cè)量用來(lái)決定各種能量關(guān)系。在進(jìn)行小尺寸樣品或者慢加熱速率的量熱學(xué)實(shí)驗(yàn)時(shí),常常需要使用微熱量測(cè)量技術(shù)。根據(jù)具體的應(yīng)用情況,微量熱計(jì)的設(shè)計(jì)可能有很大的變化,并且很多都是用戶自己設(shè)計(jì)制造的。在進(jìn)行測(cè)試時(shí),各種熱量測(cè)量技術(shù)使用戶能夠 ...…

查看全部問(wèn)答∨

這個(gè)錯(cuò)誤在哪里

Error: Bus name allowed only on bus line -- pin "D[3..0]" Error: Can\'t elaborate top-level user hierarchy…

查看全部問(wèn)答∨

2440+WINCE5.0(6.0)項(xiàng)目外包

硬件平臺(tái): ● CPU Samsung S3C2440 ● Flash >=256MB ● RAM >=128MB ● 2.8寸 TFT 液晶屏帶觸摸 ● Audio 1341 ● 2路主USB 1路從USB ● 3路串口 擴(kuò)展4路串口 ● SD卡 ● WIFI模塊 ● 藍(lán)牙 ● GPRS模塊 ● >=24鍵 ...…

查看全部問(wèn)答∨

STM32F103xcde100腳擴(kuò)展存儲(chǔ)(fsmc)

100腳 芯片,  擴(kuò)一個(gè) 8位總線復(fù)用ram四個(gè)定時(shí)器接4個(gè)增量編碼器。引腳如何分配???  …

查看全部問(wèn)答∨

版主求助STM32F17USB通信死機(jī)

                                 使用STM32F107 USB HID通信時(shí),如果通信時(shí)把USB線拔掉,有時(shí)會(huì)導(dǎo)致STM32一直在USB中斷中,跳轉(zhuǎn)不出來(lái)。最初使用的 ...…

查看全部問(wèn)答∨

FPGA的定時(shí)器能不能自動(dòng)重裝初值

control寄存器:第1位為CONT位,0時(shí)為一次定時(shí),1時(shí)為反復(fù)計(jì)時(shí) periodl和periodh寄存器:都是定時(shí)器初值寄存器,在以下兩種情況下將重新裝載預(yù)置的定時(shí)周期第一,對(duì)這兩個(gè)寄存器進(jìn)行寫(xiě)操作時(shí)第二,內(nèi)部定時(shí)器下降為0時(shí)是不是能自動(dòng)重裝初值?…

查看全部問(wèn)答∨

DSP6713中,數(shù)據(jù)是如何通過(guò)EDMA傳輸?shù)?..

從前段采集來(lái)的數(shù)據(jù)存放在SRAM中,如果要做圖像處理,把處理好的數(shù)據(jù)通過(guò)MCBSP串口發(fā)送出去,那么這個(gè)數(shù)據(jù)是個(gè)什么樣的路徑在傳輸呢?是把數(shù)據(jù)從SRAM中搬運(yùn)到DSP內(nèi)部L2空間處理再通過(guò)MCBSP傳輸出去嗎?…

查看全部問(wèn)答∨

msp430g2553 20pin新手求解

老師出了這樣一道題,我實(shí)在沒(méi)看懂: 頻率測(cè)量,范圍分別是0-100HZ(精度0.1HZ)——秒閘門(mén)                                   ...…

查看全部問(wèn)答∨
小廣播
設(shè)計(jì)資源 培訓(xùn) 開(kāi)發(fā)板 精華推薦

最新單片機(jī)文章

 
EEWorld訂閱號(hào)

 
EEWorld服務(wù)號(hào)

 
汽車開(kāi)發(fā)圈

 
機(jī)器人開(kāi)發(fā)圈

電子工程世界版權(quán)所有 京ICP證060456號(hào) 京ICP備10001474號(hào)-1 電信業(yè)務(wù)審批[2006]字第258號(hào)函 京公網(wǎng)安備 11010802033920號(hào) Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
主站蜘蛛池模板: 建昌县| 甘孜| 海原县| 高尔夫| 乌海市| 阿拉善左旗| 田林县| 常宁市| 平遥县| 怀安县| 平利县| 始兴县| 龙川县| 马边| 敦化市| 封丘县| 绥化市| 吉安市| 柏乡县| 金湖县| 上林县| 湄潭县| 天津市| 饶河县| 萍乡市| 论坛| 航空| 安宁市| 泸水县| 同德县| 凤山市| 泾阳县| 巩留县| 米林县| 宣威市| 陆丰市| 汉源县| 博白县| 福泉市| 绥宁县| 文安县|