欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種通用異步串口控制器的制作方法

文檔序號:6654027閱讀:313來源:國知局
專利名稱:一種通用異步串口控制器的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及計(jì)算機(jī)系統(tǒng),尤其涉及計(jì)算機(jī)領(lǐng)域中的數(shù)據(jù)交換領(lǐng)域。
目前,隨著計(jì)算機(jī)應(yīng)用的日益廣泛,對計(jì)算機(jī)的運(yùn)行速度、效率和穩(wěn)定性等也提出了越來越高的要求,但是目前更多的情況卻是,隨著計(jì)算機(jī)的中央處理器速度的加快,而其運(yùn)行效率卻相對降低,這主要是由于在現(xiàn)有的計(jì)算機(jī)系統(tǒng)中,一個中央處理器連接在一條系統(tǒng)總線上,中央處理器直接和連接在系統(tǒng)總線上的各種設(shè)備通信,而且系統(tǒng)和外部進(jìn)行數(shù)據(jù)交換的核心部件——通用異步串口控制器(UART)也只支持單條系統(tǒng)總線,并直接掛在這條唯一的系統(tǒng)總線,這樣就使得中央處理器和系統(tǒng)中的DMA不能保持并行工作,嚴(yán)重地影響了系統(tǒng)運(yùn)行的整體效率。在

圖1所示單系統(tǒng)總線系統(tǒng)中,中央處理器先對通用異步串口控制器進(jìn)行初始化,當(dāng)該通用異步串口控制器從外部接受到足夠的數(shù)據(jù)時就向中斷控制器發(fā)中斷,這個中斷經(jīng)過中斷控制器的判優(yōu)處理,然后發(fā)送給中央處理器,中央處理器接受到這個中斷后,查詢中斷控制器的中斷向量控制器,判斷是否是通用異步串口控制器發(fā)送的中斷,然后中央處理器查詢通用異步串口控制器的中斷狀態(tài)寄存器,如果是接受中斷,就初始化相應(yīng)的DMA控制寄存器,并退出對總線的控制權(quán),由DMA申請系統(tǒng)總線的控制權(quán);當(dāng)DMA得到系統(tǒng)總線的控制權(quán)后,就獨(dú)自占有系統(tǒng)總線,進(jìn)行通用異步串口控制器的數(shù)據(jù)寄存器到存儲器(片內(nèi)或片外)的數(shù)據(jù)傳輸,當(dāng)中央處理器在對DMA初始化時設(shè)置的數(shù)據(jù)量被DMA傳輸完成之后,DMA就取消對系統(tǒng)總線的控制,同時向中斷控制器發(fā)出中斷信號,該中斷信號經(jīng)過中斷控制器的判優(yōu)后,發(fā)送給中央處理器;中央處理器查詢中斷控制器的中斷狀態(tài)寄存器,當(dāng)發(fā)現(xiàn)是一個DMA發(fā)來的中斷信號,先取得系統(tǒng)總線的控制權(quán),然后查詢相應(yīng)的DMA的中斷狀態(tài)寄存器,當(dāng)發(fā)現(xiàn)是DMA所傳輸?shù)臄?shù)據(jù)已經(jīng)全部傳輸完畢,就可重新設(shè)置DMA的控制寄存器;對于通用異步串口控制器的發(fā)送過程也相似。由于現(xiàn)有的通用異步串口控制器只能支持單總線結(jié)構(gòu),所以現(xiàn)有的系統(tǒng)所采用的基本都是單總線的結(jié)構(gòu),中央處理器和DMA都掛在同一條系統(tǒng)總線上,在DMA傳輸數(shù)據(jù)的時候,系統(tǒng)總線的控制權(quán)是由DMA獨(dú)自占有的,中央處理器想查詢相關(guān)的狀態(tài)寄存器或者設(shè)置控制寄存器,都需要先得到總線的控制權(quán),然后才能做相應(yīng)的操作。同樣,DMA如果需要傳輸數(shù)據(jù),也要先取得系統(tǒng)總線的控制權(quán),然后才能傳輸數(shù)據(jù)。這樣中央處理器和DMA不能同時工作,整個系統(tǒng)的效率在總線控制權(quán)的相互傳遞中,損失了很多。而且對中央處理器的多次中斷,都會嚴(yán)重影響系統(tǒng)的性能。
本發(fā)明的目的是提供一種支持雙總線訪問的、高效的通用異步串口控制器,以解決現(xiàn)有技術(shù)中的只能支持一條總線、效率低下的缺點(diǎn)。
為了實(shí)現(xiàn)上述目的,本發(fā)明構(gòu)造了一種通用異步串口控制器,包括通用異步串口控制器內(nèi)部控制邏輯、數(shù)據(jù)發(fā)送邏輯和數(shù)據(jù)接收邏輯,其特征在于,還包括第一接口邏輯、第二接口邏輯、第三接口邏輯、第四接口邏輯、第五接口邏輯和CPUDMA寄存器;所述的第一接口邏輯接收第一條系統(tǒng)總線的片選信號Ccs、讀寫信號Cwr和地址信號Caddr,生成內(nèi)部控制邏輯使能信號Cen并發(fā)送到所述的通用異步串口控制器內(nèi)部控制邏輯,生成的第一條系統(tǒng)總線讀寫使能信號302發(fā)送到所述的第四接口邏輯,生成的第一條系統(tǒng)總線數(shù)據(jù)寄存器使能信號301分別發(fā)送到所述的第三接口邏輯和第四接口邏輯;所述的第四接口邏輯由一組二選一選擇器和三態(tài)緩沖器構(gòu)成,接收由通用異步串口控制器內(nèi)部控制邏輯發(fā)送的控制邏輯讀數(shù)據(jù)總線信號CdataR,以及由數(shù)據(jù)發(fā)送邏輯發(fā)送的數(shù)據(jù)寄存器讀數(shù)據(jù)總線信號DrdataR,其選擇端接收從所述第一接口邏輯發(fā)送的第二條系統(tǒng)總線數(shù)據(jù)寄存器使能信號303,其輸出端連接到數(shù)據(jù)總線Cdata上,所述的數(shù)據(jù)總線Cdata的另一端連接到所述的通用異步串口控制器內(nèi)部控制邏輯中的控制邏輯寫數(shù)據(jù)端口CdataW;所述的第二接口邏輯接收第二條系統(tǒng)總線發(fā)送的片選信號Dcs、地址信號Daddr和第二條系統(tǒng)總線的讀寫信號Dwr,生成第二條系統(tǒng)總線數(shù)據(jù)寄存器使能信號303發(fā)送到所述的第三接口邏輯和第五接口邏輯,生成第二條系統(tǒng)總線讀寫使能信號304發(fā)送到所述的第五接口邏輯;
所述的第五接口邏輯采用一個三態(tài)緩沖器,接收所述第二接口邏輯發(fā)送的第二條系統(tǒng)總線數(shù)據(jù)寄存器使能信號303和第二條系統(tǒng)總線讀寫使能信號304,從數(shù)據(jù)接收邏輯接收數(shù)據(jù)總線信號DrdataR,將其發(fā)送到第二條系統(tǒng)總線中的數(shù)據(jù)總線Ddata;所述的第三接口邏輯由所述CPUDMA寄存器控制選擇使用中央處理器模式還是DMA模式,接收第一條系統(tǒng)總線的數(shù)據(jù)總線Cdata、第二條系統(tǒng)總線的數(shù)據(jù)總線Ddata、第一條系統(tǒng)總線數(shù)據(jù)寄存器使能信號301、第二條系統(tǒng)總線數(shù)據(jù)寄存器使能信號303、讀寫信號Cwr和第二條系統(tǒng)總線的讀寫信號Dwr,向所述的數(shù)據(jù)發(fā)送邏輯輸出數(shù)據(jù)寄存器寫數(shù)據(jù)總線DrdataW和數(shù)據(jù)寄存器寫使能信號DrWen,向所述的數(shù)據(jù)接收邏輯發(fā)送數(shù)據(jù)寄存器讀使能信號Ren;所述讀寫信號Cwr、地址信號Caddr和數(shù)據(jù)總線Cdata分別與所述通用異步串口控制器內(nèi)部控制邏輯的相應(yīng)端口Cwr、Caddr和CdataW直接相連接。
在中央處理器完成對DMA和UART的初始化后,中央處理器就可以做自己的事,數(shù)據(jù)的傳輸由DMA和UART完成就可以了,不用不斷的對中央處理器進(jìn)行中斷,也不用系統(tǒng)總線的來回切換而降低系統(tǒng)的性能,中央處理器可以和UART數(shù)據(jù)的傳輸完全并發(fā)操作,極大的提高了系統(tǒng)的性能。在DMA和UART的數(shù)據(jù)在傳輸?shù)臅r候,中央處理器不用中斷這在進(jìn)行的UART的數(shù)據(jù)傳輸,就可以查詢UART的內(nèi)部狀態(tài),甚至設(shè)置控制寄存器,這也極大的提高了數(shù)據(jù)傳輸?shù)男?,從整體上提高了系統(tǒng)的性能。
下面結(jié)合附圖對本發(fā)明作進(jìn)一步說明;圖1是現(xiàn)有的一個系統(tǒng)總線接口的通用異步串口控制器邏輯框圖;圖2是現(xiàn)有技術(shù)中的內(nèi)部只有一條系統(tǒng)總線的系統(tǒng)結(jié)構(gòu)簡圖;圖3是本發(fā)明所構(gòu)造的雙系統(tǒng)總線接口的通用異步串口控制器邏輯框圖;圖4是作為本發(fā)明實(shí)施方式的具有兩條系統(tǒng)總線的系統(tǒng)結(jié)構(gòu)簡圖。
圖1是帶有一個總線接口的通用異步串口控制器,該控制器分為3個部分一個是通用異步串口控制器內(nèi)部的控制邏輯,包括通用異步串口控制器所有的控制和狀態(tài)寄存器,中央處理器通過系統(tǒng)總線設(shè)置通用異步串口控制器內(nèi)部控制邏輯中的控制寄存器,控制邏輯依照控制寄存器的設(shè)置以及從數(shù)據(jù)發(fā)送邏輯和數(shù)據(jù)接收邏輯接收到的狀態(tài)信號,控制數(shù)據(jù)發(fā)送邏輯和數(shù)據(jù)接收邏輯的動作;數(shù)據(jù)發(fā)送邏輯主要是在內(nèi)部控制邏輯的控制下,接收從數(shù)據(jù)總線Cdata發(fā)來的數(shù)據(jù),然后從數(shù)據(jù)發(fā)送端TxD發(fā)送出去;數(shù)據(jù)接收邏輯主要是在內(nèi)部控制邏輯的控制下,接收從外部數(shù)據(jù)接收端RxD接收來的數(shù)據(jù),在內(nèi)部串并轉(zhuǎn)換,放到數(shù)據(jù)寄存器上,等待內(nèi)部總線上的主控器來來取走;因?yàn)橥ㄓ卯惒酱诳刂破髦挥幸粋€系統(tǒng)接口,所以只能與一條系統(tǒng)總線相連接,無法支持雙總線結(jié)構(gòu)。
在圖2所示現(xiàn)有技術(shù)中的只有一條系統(tǒng)總線的系統(tǒng)結(jié)構(gòu)簡圖中,系統(tǒng)總線負(fù)責(zé)把芯片內(nèi)部的各個部分連接在一起;中央處理器與該系統(tǒng)總線相連,負(fù)責(zé)控制并協(xié)調(diào)芯片中各個部分的工作;在系統(tǒng)總線上還有一個存儲器直接訪問控制器DMA,負(fù)責(zé)外設(shè)和存儲器之間的數(shù)據(jù)交換,從而使得數(shù)據(jù)的交換不需要對中央處理器進(jìn)行中斷;通用異步串口控制器UART也與系統(tǒng)總線相連接,在一般情況下,該通用異步串口控制器UART有兩條信號線與外部交換數(shù)據(jù),一條是串行數(shù)據(jù)輸出端TxD,一條是串行數(shù)據(jù)輸入端RxD,中央處理器或DMA通過通用異步串口控制器UART向外部發(fā)送數(shù)據(jù),在通用異步串口控制器UART中完成并串轉(zhuǎn)換,然后從串行數(shù)據(jù)輸出端TxD以串行的方式發(fā)送出去,同樣,從外部接受的串行數(shù)據(jù),要從串行數(shù)據(jù)輸入端RxD以串行方式輸入,然后數(shù)據(jù)在通用異步串口控制器UART內(nèi)部完成串并轉(zhuǎn)換,中央處理器或DMA再從系統(tǒng)總線上將數(shù)據(jù)取走;系統(tǒng)總線上還掛有一個中斷控制器,負(fù)責(zé)接收芯片內(nèi)部各個部件的中斷信號,如圖中所示的DMA中斷信號以及通用異步串口控制器UART的中斷信號,經(jīng)過優(yōu)先級判別后,把一個中斷信號通過連接在中央處理器和中斷控制器之問的中斷信號線發(fā)送給中央處理器;在系統(tǒng)總線上還連接了兩個存儲器,一個是片外存儲器,主要是存儲一些量比較大的程序和數(shù)據(jù);一個是片內(nèi)存儲器,主要是存一些需要高速與中央處理器交換的指令和數(shù)據(jù);在DMA傳輸數(shù)據(jù)的時候,系統(tǒng)總線的控制權(quán)是由DMA獨(dú)自占有的,中央處理器想查詢相關(guān)的狀態(tài)寄存器或者設(shè)置控制寄存器,都需要先得到總線的控制權(quán),然后才能做相應(yīng)的操作。同樣,DMA如果需要傳輸數(shù)據(jù),也要先取得系統(tǒng)總線的控制權(quán),然后才能傳輸數(shù)據(jù)。這樣中央處理器和DMA不能同時工作,整個系統(tǒng)的效率在總線控制權(quán)的相互傳遞中,損失了很多。而且對中央處理器的多次中斷,都會嚴(yán)重影響系統(tǒng)的性能。
圖3所示兩條虛線的中間是具有兩個系統(tǒng)總線接口的通用異步串口控制器的接口部分,在上虛線以上部分是兩個系統(tǒng)總線接口的信號線,下虛線以下部分是通用異步串口控制器的內(nèi)部邏輯。在實(shí)現(xiàn)支持雙總線接口的過程中,接口部分是整個結(jié)構(gòu)的關(guān)鍵部分,通用異步串口控制器的內(nèi)部邏輯部分與現(xiàn)有的通用結(jié)構(gòu)區(qū)別不大。第一條系統(tǒng)總線的信號線有第一條系統(tǒng)總線的片選信號Ccs,當(dāng)?shù)谝粭l系統(tǒng)總線選中通用異步串口控制器時,該信號有效;第一條系統(tǒng)總線的地址信號Caddr,這是一個總線信號,當(dāng)片選信號有效時,這個信號給通用異步串口控制器內(nèi)部提供寄存器的偏移地址;第一條系統(tǒng)總線的讀寫信號Cwr,這個信號是說明對內(nèi)部寄存器的操作是讀還是寫(高電平為寫操作,低電平為讀操作);第一條系統(tǒng)總線的數(shù)據(jù)信號Cdata,這個信號是個雙向的數(shù)據(jù)總線,當(dāng)對通用異步串口控制器內(nèi)部的寄存器進(jìn)行寫操作的時候,這個總線提供寫入的數(shù)據(jù),當(dāng)從通用異步串口控制器讀數(shù)據(jù)的時候,異步通用異步串口控制器把中央處理器讀的數(shù)據(jù)放到數(shù)據(jù)總線上,然后,中央處理器從總線上取走。第二條系統(tǒng)總線的信號線有第二條系統(tǒng)總線的片選信號Dcs,當(dāng)?shù)诙l系統(tǒng)總線選中通用異步串口控制器,這個信號有效;第二條系統(tǒng)總線的地址信號Daddr,這是一個總線信號,當(dāng)片選信號有效時,這個信號給通用異步串口控制器內(nèi)部提供寄存器的偏移地址,因?yàn)榈诙l系統(tǒng)總線只能對通用異步串口控制器的數(shù)據(jù)寄存器進(jìn)行讀寫操作,所以當(dāng)這個地址總線選中數(shù)據(jù)寄存器以外的其他的寄存器,不會對內(nèi)部形成實(shí)際的操作;第二條系統(tǒng)總線的讀寫信號Dwr,這個信號是說明對內(nèi)部寄存器的操作是讀還是寫(高電平為寫操作,低電平為讀操作);第二條系統(tǒng)總線的數(shù)據(jù)信號Ddata,這個信號是個雙向的數(shù)據(jù)總線,當(dāng)對通用異步串口控制器內(nèi)部的寄存器進(jìn)行寫操作的時候,這個總線提供寫入的數(shù)據(jù),當(dāng)從通用異步串口控制器讀數(shù)據(jù)的時候,異步通用異步串口控制器把存儲器直接訪問控制器DMA讀到的數(shù)據(jù)放到數(shù)據(jù)總線上,然后由DMA從總線上取走。
通用異步串口控制器的內(nèi)部邏輯包括通用異步串口控制器內(nèi)部控制邏輯、數(shù)據(jù)發(fā)送邏輯和數(shù)據(jù)接收邏輯,這部分的功能主要是把接口邏輯轉(zhuǎn)換好的數(shù)據(jù)和控制信號引入內(nèi)部,完成數(shù)據(jù)的并串轉(zhuǎn)換,然后通過串行數(shù)據(jù)輸出端(TxD)發(fā)送到外面去。把外面串行輸入的數(shù)據(jù)從串行數(shù)據(jù)接收端(RxD)采樣進(jìn)來,然后進(jìn)行串并轉(zhuǎn)換后,等待主設(shè)備(中央處理器或DMA)的讀取,其中,通用異步串口控制器內(nèi)部控制邏輯主要功能是保存中央處理器對通用異步串口控制器的主要控制信號,然后通過讀取數(shù)據(jù)發(fā)送邏輯和數(shù)據(jù)接收邏輯的相應(yīng)的狀態(tài)信號,生成一些內(nèi)部的控制信號來控制通用異步串口控制器的運(yùn)作,同時保存著通用異步串口控制器的內(nèi)部的大部分狀態(tài)信息,以備中央處理器的查詢,通用異步串口控制器內(nèi)部控制寄存器的輸入信號有控制邏輯使能信號Cen,這個信號是第一接口邏輯產(chǎn)生的;控制邏輯讀寫信號Cwr,這個信號就是第一條系統(tǒng)總線的讀寫信號Cwr;控制邏輯地址總線Caddr,這個總線信號提供內(nèi)部控制和狀態(tài)寄存器的偏移地址,這個信號連在第一條系統(tǒng)總線的地址總線Caddr上;控制邏輯寫數(shù)據(jù)總線CdataW,這個信號是直接從第一條系統(tǒng)總線的數(shù)據(jù)總線Cdata接來的,用于向內(nèi)部控制寄存器寫值;輸出信號有控制邏輯讀數(shù)據(jù)總線CdataR,這個信號接到第四接口邏輯中,用于中央處理器讀取通用異步串口控制器內(nèi)部寄存器的值;數(shù)據(jù)發(fā)送邏輯控制信號,通用異步串口控制器內(nèi)部控制邏輯通過這組信號控制數(shù)據(jù)發(fā)送邏輯的工作;數(shù)據(jù)接收邏輯控制信號,通用異步串口控制器內(nèi)部控制邏輯通過這組信號控制數(shù)據(jù)接收邏輯的工作;數(shù)據(jù)發(fā)送邏輯的功能主要是在內(nèi)部控制邏輯的控制下,保存從系統(tǒng)數(shù)據(jù)總線寫入通用異步串口控制器的發(fā)往外部的數(shù)據(jù),控制完成數(shù)據(jù)的并串轉(zhuǎn)換,按照幀格式的要求通過串行數(shù)據(jù)輸出端口TxD,發(fā)送到外部;輸入信號有數(shù)據(jù)寄存器寫數(shù)據(jù)使能信號DrWen,這個信號是由第三接口邏輯生成;數(shù)據(jù)寄存器寫數(shù)據(jù)總線DrdataW,這個信號也是由第三接口邏輯產(chǎn)生,是內(nèi)部寫數(shù)據(jù)總線;數(shù)據(jù)發(fā)送邏輯控制信號,這個信號是由通用異步串口內(nèi)部控制邏輯產(chǎn)生;輸出信號有串行數(shù)據(jù)輸出端口TxD,通用異步串口控制器發(fā)送到外部的串行數(shù)據(jù)就是從這個端口發(fā)送到外部的。數(shù)據(jù)接收邏輯的主要功能是在內(nèi)部控制邏輯的控制下,按照一定的幀格式的要求通過串行數(shù)據(jù)輸入端口RxD采樣外部串行數(shù)據(jù),控制完成數(shù)據(jù)的串并轉(zhuǎn)換后,保存在內(nèi)部的緩沖器中,等待中央處理器或DMA來通過數(shù)據(jù)寄存器讀數(shù)據(jù)總線DrdataR讀取這些從外部采樣到的數(shù)據(jù),輸入的信號有數(shù)據(jù)寄存器讀使能信號DrRen,這個信號是從第三控制邏輯來的;數(shù)據(jù)接收邏輯控制信號,這個信號是從通用異步串口內(nèi)部控制邏輯來的;串行數(shù)據(jù)輸入信號RxD,這個信號是外部輸入通用異步串口控制器的串行數(shù)據(jù)輸入端;輸出信號是數(shù)據(jù)寄存器讀數(shù)據(jù)總線DrdataR。
因?yàn)樵谕ㄓ卯惒酱诳刂破髦?,?shù)據(jù)寄存器的讀寫有兩個來源,即中央處理器和DMA,而控制和狀態(tài)寄存器卻只有一個來源,就是中央處理器,所以在通用異步串口控制器中需要把數(shù)據(jù)寄存器的讀寫入口和控制狀態(tài)寄存器的讀寫入口分開進(jìn)行控制。為了適應(yīng)這一需要,本發(fā)明所構(gòu)造的通用異步串口控制器的接口部分包括五個部件,即第一接口邏輯、第二接口邏輯、第三接口邏輯、第四接口邏輯和第五接口邏輯第一接口邏輯的作用是通過從第一條系統(tǒng)總線輸入的片選信號Ccs和地址信號Caddr,生成內(nèi)部控制邏輯使能信號Cen、第一條系統(tǒng)總線數(shù)據(jù)寄存器使能信號301,第一條系統(tǒng)總線讀寫使能信號302;這幾個信號是這樣產(chǎn)生的當(dāng)片選有效,而且地址信號不是數(shù)據(jù)寄存器的地址,內(nèi)部控制邏輯使能信號Cen有效,其他情況無效;當(dāng)片選有效,而且地址信號是數(shù)據(jù)寄存器的地址,第一條系統(tǒng)總線數(shù)據(jù)寄存器使能信號301有效,其他情況無效;當(dāng)片選有效而且是總線是讀有效時,第一條系統(tǒng)總線讀寫使能信號302有效。第四接口邏輯的內(nèi)部邏輯是一組二選一選擇器和三態(tài)緩沖器,其輸入的兩個選擇信號分別是控制邏輯讀數(shù)據(jù)總線CdataR和數(shù)據(jù)寄存器讀數(shù)據(jù)總線DrdataR,選擇端是從第一接口邏輯來的第一條系統(tǒng)總線數(shù)據(jù)寄存器使能信號301,當(dāng)這個使能端為有效時,把數(shù)據(jù)寄存器輸出總線選通到選擇器的輸出端;當(dāng)個使能端為無效時,把控制邏輯數(shù)據(jù)輸出總線選通到選擇器的輸出端,這個輸出端接到三態(tài)緩沖器的數(shù)據(jù)輸入端,當(dāng)從第一接口邏輯來的讀使能信號有效時,開通三態(tài)緩沖器,連接到數(shù)據(jù)總線Cdata上,否則斷開連接。第二接口邏輯的功能和第一接口邏輯相似,第二接口邏輯的作用是通過從第二條系統(tǒng)總線輸入的片選信號Dcs、地址信號Daddr、第二條系統(tǒng)總線數(shù)據(jù)寄存器使能信號303、第二條系統(tǒng)總線讀寫使能信號304;當(dāng)片選有效,而且地址信號是數(shù)據(jù)寄存器的地址,第二條系統(tǒng)總線數(shù)據(jù)寄存器使能信號303有效,其他情況無效;當(dāng)片選有效而且是總線是讀有效時,第二條系統(tǒng)總線讀寫使能信號304有效,其他情況無效。第五接口邏輯的內(nèi)部是一個三態(tài)緩沖器,當(dāng)從第二接口邏輯來的第二條系統(tǒng)總線數(shù)據(jù)寄存器使能信號303和第二條系統(tǒng)總線讀寫使能信號304都有效時,三態(tài)緩沖器開通;當(dāng)這個條件不成立時,三態(tài)緩沖器斷開。第三接口邏輯的輸入信號有CPUDMA寄存器發(fā)出的模式選擇位,第一條系統(tǒng)總線的數(shù)據(jù)總線Cdata、第二條系統(tǒng)總線的數(shù)據(jù)總線Ddata、第一條系統(tǒng)總線數(shù)據(jù)寄存器使能信號301、第二條系統(tǒng)總線數(shù)據(jù)寄存器使能信號303、第一條系統(tǒng)總線讀寫信號Cwr、第二條系統(tǒng)總線讀寫信號Dwr;輸出的信號有數(shù)據(jù)寄存器寫數(shù)據(jù)總線DrdataW、數(shù)據(jù)寄存器寫使能信號DrWen和數(shù)據(jù)寄存器讀使能信號Ren。CPUDMA寄存器的作用是存儲模式選擇位,以選擇數(shù)據(jù)寄存器的訪問是由中央處理器完成還是DMA完成,因?yàn)橥ㄓ卯惒郊拇嫫鞯臄?shù)據(jù)器的讀和寫都會改變內(nèi)部狀態(tài),而且是不可恢復(fù),所以要防止對數(shù)據(jù)寄存器非授權(quán)的讀和寫訪問,這一個模式選擇位就是完成這個任務(wù)的復(fù)位后是0,表示是中央處理器訪問,在這種設(shè)置下,如果DMA來訪問數(shù)據(jù)寄存器,不會產(chǎn)生實(shí)際的操作;當(dāng)把這一位設(shè)置為1時,表示是DMA訪問方式,只有DMA來訪問數(shù)據(jù)寄存器才會產(chǎn)生實(shí)際效果,如果中央處理器來訪問數(shù)據(jù)寄存器,將不會產(chǎn)生實(shí)際的操作。但是,在這種設(shè)置下,不管DMA是否正在訪問數(shù)據(jù)寄存器,中央處理器都可以通過第一條系統(tǒng)總線來訪問控制寄存器和狀態(tài)寄存器。當(dāng)設(shè)置為中央處理器模式時,把第一條系統(tǒng)總線的數(shù)據(jù)總線Cdata連接到數(shù)據(jù)寄存器寫數(shù)據(jù)總線DrdataW上,當(dāng)設(shè)置為DMA方式時,把第二條系統(tǒng)總線的數(shù)據(jù)總線Ddata連接到數(shù)據(jù)寄存器寫數(shù)據(jù)總線DrdataW上。當(dāng)?shù)谝粭l系統(tǒng)總線的讀寫信號Cwr和第二條系統(tǒng)總線的讀寫信號Dwr在高電平時為寫操作,在低電平時為讀操作時,在所述的CPUDMA寄存器中的模式選擇位選擇CPU方式的情況下,第一條系統(tǒng)總線的系統(tǒng)總線數(shù)據(jù)寄存器使能信號(301)和第一條系統(tǒng)總線讀寫信號Cwr進(jìn)行“與”操作之后連接到數(shù)據(jù)寄存器寫使能信號DrWen上;第一條系統(tǒng)總線的系統(tǒng)總線數(shù)據(jù)寄存器使能信號(301)和第一條系統(tǒng)總線讀寫信號Cwr的反相信號進(jìn)行“與”操作之后連接到數(shù)據(jù)寄存器讀使能信號DrRen上。在所述的CPUDMA寄存器中的模式選擇位選擇DMA方式的情況下,第二條系統(tǒng)總線的總線數(shù)據(jù)寄存器使能信號(303)和第二條系統(tǒng)總線讀寫信號Dwr進(jìn)行“與”操作之后連接到數(shù)據(jù)寄存器寫使能信號DrWen上;第二條系統(tǒng)總線的總線數(shù)據(jù)寄存器使能信號(303)和第二條系統(tǒng)總線讀寫信號Dwr的反相信號進(jìn)行“與”操作之后連接到數(shù)據(jù)寄存器讀使能信號DrRen上。當(dāng)?shù)谝粭l系統(tǒng)總線的讀寫信號Cwr和第二條系統(tǒng)總線的讀寫信號Dwr在高電平時為讀操作,在低電平時為寫操作的時候,在所述的CPUDMA寄存器中的模式選擇位選擇CPU方式的情況下,第一條系統(tǒng)總線的系統(tǒng)總線數(shù)據(jù)寄存器使能信號(301)和第一條系統(tǒng)總線讀寫信號Cwr的反相信號進(jìn)行“與”操作之后連接到數(shù)據(jù)寄存器寫使能信號DrWen上;第一條系統(tǒng)總線的系統(tǒng)總線數(shù)據(jù)寄存器使能信號(301)和第一條系統(tǒng)總線讀寫信號Cwr進(jìn)行“與”操作之后連接到數(shù)據(jù)寄存器讀使能信號DrRen上。在所述的CPUDMA寄存器中的模式選擇位選擇DMA方式的情況下,第二條系統(tǒng)總線的總線數(shù)據(jù)寄存器使能信號(303)和第二條系統(tǒng)總線讀寫信號Dwr的反相信號進(jìn)行“與”操作之后連接到數(shù)據(jù)寄存器寫使能信號DrWen上;第二條系統(tǒng)總線的總線數(shù)據(jù)寄存器使能信號(303)和第二條系統(tǒng)總線讀寫信號Dwr進(jìn)行“與”操作之后連接到數(shù)據(jù)寄存器讀使能信號DrRen上。
工作過程是這樣的設(shè)置CPUDMA寄存器中的模式選擇位為中央處理器模式當(dāng)中央處理器來訪問通用異步串口控制器的控制狀態(tài)寄存器時,控制邏輯使能信號Cen有效,中央處理器可以對內(nèi)部的控制狀態(tài)寄存器進(jìn)行讀寫訪問。這時第一條系統(tǒng)總線數(shù)據(jù)寄存器使能信號301無效,數(shù)據(jù)寄存器的讀使能信號DrWen和寫使能信號DrRen都不可能有效,即使是DMA來訪問數(shù)據(jù)寄存器。這樣就保護(hù)了數(shù)據(jù)寄存器的內(nèi)容不會被DMA非授權(quán)訪問。這時如果中央處理器發(fā)送的地址是數(shù)據(jù)寄存器,控制邏輯使能信號Cen就無效了,不會對控制狀態(tài)寄存器訪問了,這時讀使能信號DrWen和寫使能信號DrRen會把第一條系統(tǒng)總線的相應(yīng)信號接通,完成第一條系統(tǒng)總線對數(shù)據(jù)寄存器的操作,而不會管第二條系統(tǒng)總線來的信號;當(dāng)設(shè)置好CPUDMA寄存器中的模式選擇位為存儲器直接訪問(DMA)模式當(dāng)DMA發(fā)出的地址是通用異步串口控制器的控制狀態(tài)寄存器時,因?yàn)榈诙涌谶壿嬛械淖g碼部分不管數(shù)據(jù)寄存器以外的地址,所以即使DMA發(fā)出的地址是控制狀態(tài)寄存器的地址,也不會產(chǎn)生實(shí)際的操作,不會影響通用異步串口控制器內(nèi)部的狀態(tài)。當(dāng)DMA發(fā)出的是數(shù)據(jù)寄存器的信號時,第二接口邏輯相應(yīng)的使能信號有效,第五接口邏輯的相應(yīng)信號有效,第三接口邏輯的開關(guān)切換到連接第二條系統(tǒng)總線的方向,使得第三接口邏輯的產(chǎn)生數(shù)據(jù)寄存器寫數(shù)據(jù)使能信號DrWen、數(shù)據(jù)寄存器寫數(shù)據(jù)總線DrdataW和寫使能信號DrRen都由第二條系統(tǒng)總線產(chǎn)生,進(jìn)而完成對內(nèi)部數(shù)據(jù)寄存器的訪問。這時中央處理器如果發(fā)出的地址是數(shù)據(jù)寄存器的地址,因?yàn)榈谌涌谶壿嫷拈_關(guān)都轉(zhuǎn)向第二條系統(tǒng)總線這邊,所以即使這時中央處理器發(fā)出的地址是數(shù)據(jù)寄存器的地址,也不會對內(nèi)部的數(shù)據(jù)寄存器產(chǎn)生影響。在DMA對數(shù)據(jù)寄存器訪問的時候,如果中央處理器訪問控制狀態(tài)寄存器,因?yàn)榭刂菩盘枖?shù)據(jù)信號從第一接口邏輯,第二接口邏輯產(chǎn)生,所以不會影響到第二接口邏輯、第三接口邏輯、第五接口邏輯。此時對數(shù)據(jù)寄存器的操作,所以中央處理器可以對內(nèi)部的控制狀態(tài)寄存器訪問,從而實(shí)現(xiàn)了操作的并發(fā)性。
圖4所示的兩條系統(tǒng)總線第一條系統(tǒng)總線和第二條系統(tǒng)總線,負(fù)責(zé)把芯片內(nèi)部的各個部件連接在一起;第一條系統(tǒng)總線上的主設(shè)備只有1個,就是中央處理器,中央處理器通過第一條系統(tǒng)總線初始化系統(tǒng)中的各個部件;第二條系統(tǒng)總線上的主設(shè)備是DMA,它來控制第二條系統(tǒng)總線的數(shù)據(jù)流的傳輸。第一條系統(tǒng)總線上連了一個中央處理器,中央處理器通過第一條系統(tǒng)總線來控制協(xié)調(diào)芯片中各個部件的工作,查詢系統(tǒng)中各個部件的狀態(tài)寄存器的狀態(tài),設(shè)置控制寄存器;系統(tǒng)中還有一個存儲器直接訪問部件DMA,負(fù)責(zé)把外設(shè)和存儲器之間的數(shù)據(jù)直接交換,不用每一個數(shù)據(jù)的交換都要中斷中央處理器,DMA連接著兩條系統(tǒng)總線,第一條系統(tǒng)總線是用于中央處理器來初始化DMA和查詢DMA的狀態(tài)的,在中央處理器初始化好DMA后,DMA就可以通過第二條系統(tǒng)總線來完成存儲器和通用異步串口控制器的數(shù)據(jù)交換;系統(tǒng)中還有一個通用異步串口控制器,一般情況下,通用異步串口控制器有兩條信號線與芯片外部交換數(shù)據(jù),一條是串行數(shù)據(jù)輸出端TxD,一條是串行數(shù)據(jù)輸入端RxD,中央處理器或DMA通過通用異步串口控制器發(fā)送給芯片外部的數(shù)據(jù),在通用異步串口控制器中完成并串轉(zhuǎn)換,然后從串行數(shù)據(jù)輸出端TxD串行的發(fā)送出去,同樣從外部接受的串行數(shù)據(jù),要從RxD端串行輸入,然后數(shù)據(jù)在通用異步串口控制器內(nèi)部完成串并轉(zhuǎn)換,中央處理器或DMA再從總線上取走,在有兩個系統(tǒng)總線的結(jié)構(gòu)中,中央處理器可以通過第一條系統(tǒng)總線向通用異步串口控制器數(shù)據(jù)寄存器發(fā)送要向外部發(fā)送的數(shù)據(jù),也可通過第一條系統(tǒng)總線把外部接收到通用異步串口控制器的數(shù)據(jù)接受到中央處理器或存儲器中。DMA可以通過第二條系統(tǒng)總線向通用異步串口控制器數(shù)據(jù)寄存器寫入要向外部發(fā)送的數(shù)據(jù),也可通過第二條系統(tǒng)總線把外部接收到通用異步串口控制器的數(shù)據(jù)接收到存儲器中;在芯片內(nèi)部系統(tǒng)總線上還有一個中斷控制器負(fù)責(zé)接受芯片內(nèi)部各個部件的中斷信號,如圖DMA的中斷信號,通用異步串口控制器的中斷信號,經(jīng)過優(yōu)先級判別后,把一個中斷信號通過連接在中央處理器和中斷控制器之間的中斷信號線發(fā)送給中央處理器;在系統(tǒng)總線上還連了兩個存儲器,這兩個存儲器與兩個系統(tǒng)總線都連接上,一個是片外存儲器,主要是存儲一些量比較大的程序和數(shù)據(jù);一個是片內(nèi)存儲器,主要是存一些需要高速與中央處理器交換的指令和數(shù)據(jù);通用異步串口控制器的雙總線接口的兩個接口的功能是有區(qū)別的;一個接口是給中央處理器用的,中央處理器既可以通過這個總線設(shè)置通用異步串口控制器的內(nèi)部寄存器,查詢內(nèi)部寄存器的狀態(tài),還可以通過這條總線把向外發(fā)送的數(shù)據(jù)寫到通用異步串口控制器的數(shù)據(jù)寄存器中,把通用異步串口控制器從外部接收來的數(shù)據(jù)通過這條總線接口接收到中央處理器內(nèi)部,或?qū)懙酱鎯ζ髦小A硪粋€接口是給DMA專用的,通過這個接口和相應(yīng)的系統(tǒng)總線不能設(shè)置通用異步串口控制器的內(nèi)部寄存器,也不能查詢內(nèi)部寄存器的狀態(tài),只能通過這條總線把向外發(fā)送的數(shù)據(jù)從存儲器寫到通用異步串口控制器數(shù)據(jù)寄存器中,把通用異步串口控制器從外部接收來的數(shù)據(jù)通過這條總線接口接收到存儲器中。
具有雙總線接口的通用異步串口控制器的整個數(shù)據(jù)的傳輸過程是這樣的中央處理器通過第一條系統(tǒng)總線初始化好DMA后,就初始化通用異步串口控制器UART,把它設(shè)置為中央處理器模式或DMA模式,通用異步串口控制器UART內(nèi)部的CPUDMA寄存器中有一位模式選擇位,在設(shè)置為中央處理器時,通用異步串口控制器的發(fā)送中斷和接收中斷都會發(fā)送到中斷控制器,然后中央處理器通過查詢中斷控制器和通用異步串口控制器的中斷狀態(tài)寄存器得知中斷源,然后通過第一條系統(tǒng)總線完成相應(yīng)數(shù)據(jù)發(fā)送和接收功能。當(dāng)設(shè)置為DMA方式時,通用異步串口控制器的發(fā)送中斷和接收中斷就不會發(fā)送到中斷控制器了,而是直接發(fā)送給DMA的相應(yīng)控制端。當(dāng)通用異步串口控制器發(fā)送中斷或接收中斷的條件成立時,就向DMA的相應(yīng)的發(fā)送中斷端口或接收中斷端口發(fā)中斷,當(dāng)DMA接收到相應(yīng)的中斷信號后,DMA就通過第二條系統(tǒng)總線從通用異步串口控制器發(fā)送或接收數(shù)據(jù)。在DMA發(fā)送或接收數(shù)據(jù)的同時,中央處理器可以并行的工作。這樣當(dāng)DMA與通用異步串口控制器交換數(shù)據(jù)的時候,中央處理器可以同時查詢通用異步串口控制器的狀態(tài)寄存器,或?qū)懣刂萍拇嫫?,而不需等DMA完成數(shù)據(jù)傳輸后得到系統(tǒng)總線的使用權(quán)再進(jìn)行。
權(quán)利要求
1.一種通用異步串口控制器,包括通用異步串口控制器內(nèi)部控制邏輯、數(shù)據(jù)發(fā)送邏輯和數(shù)據(jù)接收邏輯,其特征在于,還包括第一接口邏輯、第二接口邏輯、第三接口邏輯、第四接口邏輯、第五接口邏輯和CPUDMA寄存器;所述的第一接口邏輯接收第一條系統(tǒng)總線的片選信號Ccs、讀寫信號Cwr和地址信號Caddr,生成的內(nèi)部控制邏輯使能信號Cen發(fā)送到所述的通用異步串口控制器內(nèi)部控制邏輯,生成的第一條系統(tǒng)總線讀寫使能信號(302)發(fā)送到所述的第四接口邏輯,生成的第一條系統(tǒng)總線數(shù)據(jù)寄存器使能信號(301)分別發(fā)送到所述的第三接口邏輯和第四接口邏輯;所述的第四接口邏輯接收由通用異步串口控制器內(nèi)部控制邏輯發(fā)送的控制邏輯讀數(shù)據(jù)總線信號CdataR,以及由數(shù)據(jù)發(fā)送邏輯發(fā)送的數(shù)據(jù)寄存器讀數(shù)據(jù)總線信號DrdataR,其選擇端接收從所述第一接口邏輯發(fā)送的第二條系統(tǒng)總線數(shù)據(jù)寄存器使能信號(303),其輸出端連接到數(shù)據(jù)總線Cdata上;所述的第二接口邏輯接收第二條系統(tǒng)總線發(fā)送的片選信號Dcs、第二條系統(tǒng)總線的地址信號Daddr和第二條系統(tǒng)總線的讀寫信號Dwr,生成的第二條系統(tǒng)總線數(shù)據(jù)寄存器使能信號(303)發(fā)送到所述的第三接口邏輯和第五接口邏輯,生成的第二條系統(tǒng)總線讀寫使能信號(304)發(fā)送到所述的第五接口邏輯;所述的第五接口邏輯接收所述第二接口邏輯發(fā)送的第二條系統(tǒng)總線數(shù)據(jù)寄存器使能信號(303)和第二條系統(tǒng)總線讀寫使能信號(304),從數(shù)據(jù)接收邏輯接收數(shù)據(jù)總線信號DrdataR,將其發(fā)送到第二條系統(tǒng)總線中的數(shù)據(jù)總線Ddata;所述的第三接口邏輯由所述CPUDMA寄存器控制選擇使用中央處理器模式還是DMA模式,接收第一條系統(tǒng)總線的數(shù)據(jù)總線Cdata、第二條系統(tǒng)總線的數(shù)據(jù)總線Ddata、第一條系統(tǒng)總線數(shù)據(jù)寄存器使能信號(301)、第二條系統(tǒng)總線數(shù)據(jù)寄存器使能信號(303)、第一條系統(tǒng)總線的讀寫信號Cwr和第二條系統(tǒng)總線的讀寫信號Dwr,向所述的數(shù)據(jù)發(fā)送邏輯輸出數(shù)據(jù)寄存器寫數(shù)據(jù)總線DrdataW和數(shù)據(jù)寄存器寫使能信號DrWen,向所述的數(shù)據(jù)接收邏輯發(fā)送數(shù)據(jù)寄存器讀使能信號Ren;所述讀寫信號Cwr、地址信號Caddr和數(shù)據(jù)總線Cdata分別與所述通用異步串口控制器內(nèi)部控制邏輯的相應(yīng)端口Cwr、Caddr和CdataW直接相連接。
2.根據(jù)權(quán)利要求1所述的通用異步串口控制器,其特征在于,所述的第四接口邏輯由一組二選一選擇器和三態(tài)緩沖器構(gòu)成。
3.根據(jù)權(quán)利要求1所述的通用異步串口控制器,其特征在于,所述的第五接口邏輯采用一個三態(tài)緩沖器。
4.根據(jù)權(quán)利要求3所述的通用異步串口控制器,其特征在于,所述的三態(tài)緩沖器當(dāng)?shù)诙l系統(tǒng)總線數(shù)據(jù)寄存器使能信號(303)和第二條系統(tǒng)總線讀寫使能信號(304)都有效時開通。
5.根據(jù)權(quán)利要求1所述的通用異步串口控制器,其特征在于,所述CPUDMA寄存器內(nèi)只有一位模式選擇位,控制所述第三接口邏輯選擇中央處理器模式還是DMA模式。
6.根據(jù)權(quán)利要求5所述的通用異步串口控制器,其特征在于,在所述CPUDMA寄存器控制所述第三接口邏輯選擇DMA模式的情況下,中央處理器可以在DMA訪問數(shù)據(jù)寄存器時,通過第一條系統(tǒng)總線來訪問控制寄存器和狀態(tài)寄存器。
9.根據(jù)權(quán)利要求1所述的通用異步串口控制器,其特征在于,第一條系統(tǒng)總線的讀寫信號Cwr和第二條系統(tǒng)總線的讀寫信號Dwr在高電平時為寫操作,在低電平時為讀操作。
10.根據(jù)權(quán)利要求9所述的通用異步串口控制器,其特征在于,當(dāng)所述的CPUDMA寄存器中的模式選擇位選擇CPU方式時,第一條系統(tǒng)總線的系統(tǒng)總線數(shù)據(jù)寄存器使能信號(301)和第一條系統(tǒng)總線讀寫信號Cwr進(jìn)行“與”操作之后連接到數(shù)據(jù)寄存器寫使能信號DrWen上;第一條系統(tǒng)總線的系統(tǒng)總線數(shù)據(jù)寄存器使能信號(301)和第一條系統(tǒng)總線讀寫信號Cwr的反相信號進(jìn)行“與”操作之后連接到數(shù)據(jù)寄存器讀使能信號DrRen上。
11.根據(jù)權(quán)利要求9所述的通用異步串口控制器,其特征在于,當(dāng)所述的CPUDMA寄存器中的模式選擇位選擇DMA方式時,第二條系統(tǒng)總線的總線數(shù)據(jù)寄存器使能信號(303)和第二條系統(tǒng)總線讀寫信號Dwr進(jìn)行“與”操作之后連接到數(shù)據(jù)寄存器寫使能信號DrWen上;第二條系統(tǒng)總線的總線數(shù)據(jù)寄存器使能信號(303)和第二條系統(tǒng)總線讀寫信號Dwr的反相信號進(jìn)行“與”操作之后連接到數(shù)據(jù)寄存器讀使能信號DrRen上。
12.根據(jù)權(quán)利要求1所述的通用異步串口控制器,其特征在于,第一條系統(tǒng)總線的讀寫信號Cwr和第二條系統(tǒng)總線的讀寫信號Dwr在高電平時為讀操作,在低電平時為寫操作。
13.根據(jù)權(quán)利要求12所述的通用異步串口控制器,其特征在于,當(dāng)所述的CPUDMA寄存器中的模式選擇位選擇CPU方式時,第一條系統(tǒng)總線的系統(tǒng)總線數(shù)據(jù)寄存器使能信號(301)和第一條系統(tǒng)總線讀寫信號Cwr的反相信號進(jìn)行“與”操作之后連接到數(shù)據(jù)寄存器寫使能信號DrWen上;第一條系統(tǒng)總線的系統(tǒng)總線數(shù)據(jù)寄存器使能信號(301)和第一條系統(tǒng)總線讀寫信號Cwr進(jìn)行“與”操作之后連接到數(shù)據(jù)寄存器讀使能信號DrRen上。
14.根據(jù)權(quán)利要求12所述的通用異步串口控制器,其特征在于,當(dāng)所述的CPUDMA寄存器中的模式選擇位選擇DMA方式時,第二條系統(tǒng)總線的總線數(shù)據(jù)寄存器使能信號(303)和第二條系統(tǒng)總線讀寫信號Dwr的反相信號進(jìn)行“與”操作之后連接到數(shù)據(jù)寄存器寫使能信號DrWen上;第二條系統(tǒng)總線的總線數(shù)據(jù)寄存器使能信號(303)和第二條系統(tǒng)總線讀寫信號Dwr進(jìn)行“與”操作之后連接到數(shù)據(jù)寄存器讀使能信號DrRen上。
全文摘要
本發(fā)明公開了一種計(jì)算機(jī)領(lǐng)域中的通用異步串口控制器,具有支持雙總線訪問的結(jié)構(gòu),包括通用異步串口控制器內(nèi)部控制邏輯、數(shù)據(jù)發(fā)送邏輯和數(shù)據(jù)接收邏輯、第一接口邏輯、第二接口邏輯、第三接口邏輯、第四接口邏輯、第五接口邏輯和CPUDMA寄存器,當(dāng)DMA與通用異步串口控制器交換數(shù)據(jù)時,中央處理器可以與其并行工作,同時查詢通用異步串口控制器內(nèi)部狀態(tài)或設(shè)置控制寄存器,從而充分地利用了系統(tǒng)資源,提高了系統(tǒng)的工作效率。
文檔編號G06F13/14GK1365058SQ0110742
公開日2002年8月21日 申請日期2001年1月9日 優(yōu)先權(quán)日2001年1月9日
發(fā)明者鹿甲寅, 梁松海, 李美云, 朱子宇 申請人:深圳市中興集成電路設(shè)計(jì)有限責(zé)任公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
长兴县| 汝南县| 通山县| 拉孜县| 大邑县| 五指山市| 新建县| 赣州市| 上高县| 沈丘县| 台北县| 莎车县| 邢台市| 凌云县| 陆川县| 泰安市| 嵊州市| 建始县| 寻甸| 东至县| 伊宁县| 泾川县| 桑日县| 澜沧| 贵德县| 文化| 长宁区| 高青县| 泗阳县| 隆尧县| 丰顺县| 高雄市| 东兰县| 北辰区| 和平县| 大冶市| 方山县| 凌海市| 贺兰县| 临安市| 衡南县|