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

Ddr2存儲器的建模方法和邊界掃描測試方法

文檔序號:6740136閱讀:392來源:國知局
專利名稱:Ddr2存儲器的建模方法和邊界掃描測試方法
技術(shù)領(lǐng)域
本發(fā)明涉及存儲器領(lǐng)域,特別是涉及一種DDR2類型存儲器的建模方法及邊界掃描測試方法。
背景技術(shù)
在現(xiàn)有技術(shù)中,邊界掃描測試軟件是在主計(jì)算機(jī)上運(yùn)行的軟件,它同邊界掃描測試控制器有機(jī)結(jié)合,構(gòu)成功能完整的邊界掃描測試系統(tǒng)。該邊界掃描測試系統(tǒng)完成測試生成、測試向量的加載、測試響應(yīng)分析、故障顯示和輔助功能等任務(wù)。同時(shí)利用邊界掃描測試系統(tǒng)還可以對易失性存儲器進(jìn)行在線編程和數(shù)據(jù)讀寫。目前,邊界掃描測試系統(tǒng)經(jīng)常遇到大容量存儲器件(DDR2)測試的問題,現(xiàn)有技術(shù)中的測試方法都是根據(jù)存儲器的特點(diǎn)設(shè)計(jì)相應(yīng)的測試項(xiàng)目。在編寫測試項(xiàng)目的實(shí)現(xiàn)程序時(shí),不同程序員所編寫的程序不同,它們之間沒有共同點(diǎn)。而且在遇到新型的DDR2存儲器件時(shí),需要根據(jù)新類型的DDR2存儲器的具體參數(shù)重新修改實(shí)現(xiàn)程序,導(dǎo)致在產(chǎn)品維護(hù)過程中由于不具有易用性導(dǎo)致產(chǎn)品維護(hù)費(fèi)用高等問題。

發(fā)明內(nèi)容
本發(fā)明提供一種DDR2存儲器的建模方法,本建模方法對DDR2存儲器的各個(gè)屬性進(jìn)行抽象并設(shè)置為關(guān)鍵字描述,來構(gòu)建DDR2存儲器模型。DDR2存儲器模型具有易用性和重用性,修改方便,能夠減低產(chǎn)品維護(hù)費(fèi)用,降低邊界掃描測試程序的編寫難度。建立模型后加載模塊內(nèi)部進(jìn) 行解析然后完成測試程序生成。該模型具有統(tǒng)一的風(fēng)格,在測試程序?qū)用鎺缀跄馨ㄋ械腄DR2存儲器,即使用同一裝置同一流程進(jìn)行在線測試,使測試效率提高。一種DDR2存儲器建模方法,包括步驟101,通過預(yù)先設(shè)置的關(guān)鍵詞對DDR2存儲器的各個(gè)屬性分別進(jìn)行定義,以文本文件形完成模型文件的建立;步驟102,將所述模型文件添加上預(yù)定后綴并保存,完成DDR2存儲器建模;所述DDR2存儲器的各個(gè)屬性包括DDR2的信號線定義,DDR2的動作時(shí)序函數(shù)和DDR2存儲器信息定義;所述存儲器信息包括DDR2存儲器BANK數(shù)量、列地址數(shù)量、行地址數(shù)量。所述方法還包括使用注釋符號和注釋信息對定義的所述DDR2存儲器的各個(gè)屬性進(jìn)行注釋。所述注釋信息包括器件廠家、器件型號、以及封裝信息。對DDR2存儲器的信號線采用如下方式進(jìn)行定義(I)關(guān)鍵字I {地址信號線對應(yīng)管腳名稱I地址信號線對應(yīng)管腳名稱2…地址信號線對應(yīng)管腳名稱η}其中η為地址信號線位寬;通過關(guān)鍵字I實(shí)現(xiàn)對地址信號線與DDR2存儲器上管腳的對應(yīng)關(guān)系的說明;(2)關(guān)鍵字2 {數(shù)據(jù)信號線對應(yīng)管腳名稱I數(shù)據(jù)信號線對應(yīng)管腳名稱2…數(shù)據(jù)信號線對應(yīng)管腳名稱m}其中m為數(shù)據(jù)信號線位寬;通過關(guān)鍵字2實(shí)現(xiàn)對數(shù)據(jù)信號線與DDR2存儲器上管腳的對應(yīng)關(guān)系的說明;(3)關(guān)鍵字3控制信號線名稱對應(yīng)管腳名稱通過在關(guān)鍵字3后跟隨的控制信號線名稱和對應(yīng)管腳名稱實(shí)現(xiàn)對控制信號線與DDR2存儲器上管腳的對應(yīng)關(guān)系的說明。對DDR2存儲器信息的定義采用如下方式關(guān)鍵字4存儲器信息名稱賦值通過在關(guān)鍵字4后跟隨存儲器信息名稱和相應(yīng)賦值實(shí)現(xiàn)對存儲器必要信息取值的說明。DDR2存儲器的動作包括初始化、讀、寫,對動作時(shí)序進(jìn)行定義用于說明每個(gè)動作中對控制信號線的具體操作及其時(shí)序;動作時(shí)序的定義是采用函數(shù)來實(shí)現(xiàn)的,函數(shù)中采用操作碼來定義每項(xiàng)操作,通過操作碼順序的編排來定義操作時(shí)序。所述操作碼包括信號線值設(shè)置、信號線值生效、地址設(shè)置、數(shù)據(jù)設(shè)置、獲取數(shù)據(jù)設(shè)置;(I)信號線值設(shè)置操作的具體定義方式如下關(guān)鍵字5控制信號線名稱設(shè)置值通過在關(guān)鍵字5后跟隨的控制信號線名稱和對應(yīng)的電平設(shè)置值,實(shí)現(xiàn)對DDR2存儲器的控制信號線進(jìn)行賦值操作;(2)信號線值生效操作 的具體定義方式如下關(guān)鍵字6語句“關(guān)鍵字6”表示通過邊界掃描的方法使已經(jīng)用關(guān)鍵字5設(shè)置電平生效;(3)地址設(shè)置操作的具體定義方式如下關(guān)鍵字7地址值通過在關(guān)鍵字7后跟隨的地址值,實(shí)現(xiàn)對DDR2存儲器的地址線進(jìn)行賦值操作;(4)數(shù)據(jù)設(shè)置操作的具體定義方式如下關(guān)鍵字8數(shù)據(jù)值通過在關(guān)鍵字8后跟隨的數(shù)據(jù)值,實(shí)現(xiàn)對DDR2存儲器的數(shù)據(jù)線進(jìn)行賦值操作;(5)獲取數(shù)據(jù)設(shè)置操作的具體定義方式如下關(guān)鍵字9通過關(guān)鍵字9,實(shí)現(xiàn)獲取DDR2存儲器數(shù)據(jù)信號線數(shù)據(jù)操作。一種DDR2存儲器的邊界掃描測試方法,包括如下步驟步驟200,采用如權(quán)利要求lTl任意一項(xiàng)所述的建模方法構(gòu)建DDR2存儲器的模型文件;步驟201,用戶指定DDR2存儲器所需完成的測試項(xiàng)目;步驟202,加載模塊調(diào)用用戶指定測試項(xiàng)目對應(yīng)的實(shí)現(xiàn)程序,讀取DDR2存儲器模型文件中的信號線定義和存儲器信息;所述實(shí)現(xiàn)程序是預(yù)先編寫的,其調(diào)用了模型文件中的動作時(shí)序函數(shù);步驟203,加載模塊對步驟202調(diào)用的實(shí)現(xiàn)程序,進(jìn)行逐條解析并轉(zhuǎn)換為邊界掃描鏈上的數(shù)據(jù)加載到邊界掃描控制器并向DDR2存儲器執(zhí)行。本發(fā)明有益效果如下通過簡單、規(guī)范的建模方法,構(gòu)建DDR2存儲器的模型文件,對于參數(shù)不同的DDR2,只需要修改其中相關(guān)參數(shù)即可。且模型文件中給出了控制信號線定義、DDR2存儲器信息定義、和動作時(shí)序函數(shù),該動作時(shí)序函數(shù)數(shù)量不多,但涵蓋了 DDR2所需的所有動作,這些動作可以組成各種測試流程,因此在編寫測試項(xiàng)目的實(shí)現(xiàn)程序時(shí),大大減小了編寫難度,只需要調(diào)用動作時(shí)序函數(shù)并配以若干標(biāo)準(zhǔn)編程語言就可以完成測試程序的編寫,從而減小了設(shè)計(jì)人員工作量。而且,本發(fā)明能夠?qū)λ蠨DR2類型存儲器件進(jìn)行統(tǒng)一風(fēng)格的建模,當(dāng)DDR2存儲器變更或遇到新器件時(shí),無需修改測試程序,僅需簡單的根據(jù)器件特點(diǎn)對模型文件進(jìn)行編輯修改即可,提高了模型文件的易用性和重用性,進(jìn)一步減小了測試程序設(shè)計(jì)人員的工作量,提高了邊界掃描測試系統(tǒng)測試DDR2存儲器的通用性以及易用性,產(chǎn)品維護(hù)費(fèi)用得以降低。


圖1是本發(fā)明實(shí)施例的DDR2存儲器建模方法的流程圖;圖2為本發(fā)明實(shí)施例的DDR2存儲器測試方法的流程圖。
具體實(shí)施方式
為了解決現(xiàn)有技術(shù)中在遇到DDR2存儲器件的情況下,需要設(shè)計(jì)人員編寫相應(yīng)的測試程序,無法達(dá)到通用測試的目的,從而導(dǎo)致設(shè)計(jì)人員工作量較大,維護(hù)困難的問題,本發(fā)明提供了一種DDR2存儲器的建模方法及邊界掃描測試程序加載方法,以下結(jié)合附圖以及實(shí)施例,對本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。圖1是本發(fā)明實(shí)施例的DDR2存儲器建模方法的流程圖,如圖1所示,根據(jù)本發(fā)明實(shí)施例的DDR2存儲器建模方法包括如下處理步驟101,通過預(yù)先設(shè)置的關(guān)鍵詞對DDR2存儲器的各個(gè)屬性分別進(jìn)行定義,以文本文件形完成模型文件的建立;其中,DDR2存儲器的各個(gè)屬性包括DDR2存儲器信號線定義、DDR2存儲器讀、寫、初始化的時(shí)序定義和存儲器信息(BANK數(shù)量、列地址數(shù)量、行地址數(shù)量)。在步驟101中,具體地1.可以通過關(guān)鍵字“地址”對DDR2存儲器地址信號線進(jìn)行定義;本發(fā)明采用如下方式進(jìn)行定義關(guān)鍵字I {地址信號線對應(yīng)管腳名稱I地址信號線對應(yīng)管腳名稱2···地址信號線對應(yīng)管腳名稱η},其中η為地址信號線位寬;本實(shí)施例中,DDR2存儲器地址信號定義關(guān)鍵詞為mt_defaddress,通過在mt_defaddress定義后跟隨的“ {} ”內(nèi)的信號線管腳名稱,實(shí)現(xiàn)對DDR2存儲器模型的地址信號線進(jìn)行定義。使用mt_defaddress定義DDR2存儲器地址信號線的具體定義方法如下“mt_defaddress {25 26 27 60 61 62 63 64 65 66 2421 22 23}”。上述定義語句表示此 DDR2存儲器芯片的第25 26 27 60 61 62 63 6465 66 24 21 22 23管腳分別為AO至A15信號。此定義為LSB至MSB方向。2.通過關(guān)鍵字“數(shù)據(jù)”對DDR2存儲器數(shù)據(jù)信號線進(jìn)行定義;本發(fā)明采用如下方式進(jìn)行定義 關(guān)鍵字2 {數(shù)據(jù)信號線對應(yīng)管腳名稱I數(shù)據(jù)信號線對應(yīng)管腳名稱2…數(shù)據(jù)信號線對應(yīng)管腳名稱m},其中m為數(shù)據(jù)信號線位寬;本實(shí)施例中 DDR2存儲器數(shù)據(jù)信號定義關(guān)鍵詞為mt_defdata。通過在mt_defdata定義后跟隨的“ {} ”內(nèi)的信號線管腳名稱,實(shí)現(xiàn)對DDR2存儲器模型的數(shù)據(jù)信號線進(jìn)行定義。具體定義方法如下“mt_defdata{C8 C2 D7 D3 D1D9 BI B9} ”。上述定義語句表示此DDR2存儲器芯片的第C8 C2 D7 D3 Dl D9B1 B9管腳分別為DBO至DB7信號。此定義為LSB至MSB方向。3.通過關(guān)鍵字“控制信號”對DDR2存儲器控制信號線進(jìn)行定義;DDR2存儲器的控制信號線包括片選信號CS、時(shí)鐘使能CKE、時(shí)鐘信號CLK、補(bǔ)充時(shí)鐘信號CLKN、寫信號WE、行地址選通信號RAS、列地址選通信號CAS、數(shù)據(jù)屏蔽信號DM0\DM1、數(shù)據(jù)選通信號DQS0\DQS1。對控制信號線定義用于說明控制信號線與DDR2存儲器上管腳的對應(yīng)關(guān)系。本發(fā)明采用如下方式進(jìn)行定義關(guān)鍵字3控制信號線名稱對應(yīng)管腳名稱本實(shí)施例中,DDR2存儲器必要控制信號定義關(guān)鍵詞為mt_defcontrol,通過在mt_defcontrol定義后跟隨的信號線名稱和對應(yīng)管腳名稱,實(shí)現(xiàn)對存儲器模型的必要控制信號線進(jìn)行定義,具體定義方法如下“mt_defcontrol RASF7”,上述定義語句表示管腳“F7”為此DDR2存儲器件的“RAS”信號。4.通過關(guān)鍵字“通知”對DDR2存儲器信息進(jìn)行定義。DDR2的存儲器信息包括BANK數(shù)量、列地址數(shù)量、行地址數(shù)量。本發(fā)明采用如下方式進(jìn)行存儲器信息的定義關(guān)鍵字4存儲器信息名稱賦值本實(shí)施例中,DDR2存儲器信息定義關(guān)鍵詞為INF0,通過在INFO定義后跟隨各種存儲器類型名稱,實(shí)現(xiàn)對DDR2存儲器模型的可選控制信號線進(jìn)行定義。具體定義方法如下INF0 BANK 3,此定義語句表示此存儲器件具有3個(gè)BANK。5.通過關(guān)鍵字對DDR2的3類動作時(shí)序進(jìn)行的定義;DDR2的動作包括初始化、寫和讀。對動作時(shí)序進(jìn)行定義用于說明每個(gè)動作中對控制信號線的具體操作及其時(shí)序。動作時(shí)序的定義是采用函數(shù)來實(shí)現(xiàn)的,動作時(shí)序函數(shù)中采用操作碼來定義每項(xiàng)操作,通過操作碼順序的編排來定義操作時(shí)序。本實(shí)施例中,定義DDR2初始化、寫和讀的關(guān)鍵詞分別為INIT、WriteCmd、ReadCmd。動作時(shí)序函數(shù)中使用的操作碼包括信號線值設(shè)置sa_setpinval、信號線值生效sa_run、設(shè)置地址mt_setaddrval、設(shè)置數(shù)據(jù)mt_setdatahighz、獲取數(shù)據(jù)值mt_getdataval ;其中, sa_setpinval的具體定義方式如下sa_setpinval控制信號線名稱設(shè)置值
通過在sa_setpinval后跟隨的控制信號線名稱和對應(yīng)的設(shè)置值,實(shí)現(xiàn)對DDR2存儲器的控制信號線進(jìn)行賦值操作。例如,“sa_setpinval CS O”語句表示對已經(jīng)用mt_defcontrol定義過的信號“CS”設(shè)置為低電平。從而完成對于DDR2存儲器的管腳設(shè)置值的操作?!?sa_run的具體定義方式如下sa_run上述語句表示通過邊界掃描的方法使已經(jīng)用sa_setpinval設(shè)置電平生效。sa_run與sa_setpinval配合完成對于DDR2存儲器的管腳設(shè)置值的操作。例如“sa_setpinvalCS O”配合sa_run,從而完成將信號“CS”設(shè)置為低電平。sa_run語句執(zhí)行后,立刻在DDR2存儲器的CS管腳上注入低電平。再例如,如下語句的組合完成了在CS信號線上產(chǎn)生一個(gè)上升沿。sa_setpinval CS Osa_runsa_setpinval CSlsa_run· mt_setaddrval的具體定義方式如下mt_setaddrval 地址值上述語句表示設(shè)置操作地址。例如mt_setaddrval 0x400表示操作地址為0x400?!?mt_setdatahighz的具體定義方式如下mt_setdataval 數(shù)據(jù)值上述語句表示設(shè)置數(shù)據(jù)。例如mt_setdataval 0x8000表示設(shè)置數(shù)據(jù)值為0x8000?!?mt_getdataval的具體定義方式如下mt_getdataval上述語句表示獲取DDR2存儲器數(shù)據(jù)信號線數(shù)據(jù)。在上述5類操作碼定義完成的情況下,可以根據(jù)DDR2存儲器的說明書公開的初始化、寫和讀這3個(gè)動作的時(shí)序,來完成INIT (I)、WriteCmd (2)、ReadCmd (3)函數(shù)的編寫。下面分別進(jìn)行介紹。(I) INITDDR2存儲器在讀、寫操作前,必須掛起和初始化到一個(gè)預(yù)定的狀態(tài)。初始化的時(shí)序操作要嚴(yán)格按照芯片手冊進(jìn)行編寫。在函數(shù)中使用的預(yù)定義信號必須是在管腳定義中聲明過的信號。下表是DDR2存儲器的預(yù)定義控制信號列表。
權(quán)利要求
1.一種DDR2存儲器建模方法,其特征在于,包括 步驟101,通過預(yù)先設(shè)置的關(guān)鍵詞對DDR2存儲器的各個(gè)屬性分別進(jìn)行定義,以文本文件形完成模型文件的建立; 步驟102,將所述模型文件添加上預(yù)定后綴并保存,完成DDR2存儲器建模; 所述DDR2存儲器的各個(gè)屬性包括DDR2的信號線定義,DDR2的動作時(shí)序函數(shù)和DDR2存儲器信息定義;所述存儲器信息包括DDR2存儲器BANK數(shù)量、列地址數(shù)量、行地址數(shù)量。
2.如權(quán)利要求1所述的方法,其特征在于,通過預(yù)先設(shè)置的關(guān)鍵詞對DDR2存儲器的各個(gè)屬性分別進(jìn)行定義之后,所述方法還包括 使用注釋符號和注釋信息對定義的所述DDR2存儲器的各個(gè)屬性進(jìn)行注釋。
3.如權(quán)利要求2所述的方法,其特征在于,所述注釋信息包括器件廠家、器件型號、以及封裝 目息。
4.如權(quán)利要求1所述的方法,其特征在于,對DDR2存儲器的信號線采用如下方式進(jìn)行定義 (1)關(guān)鍵字I{地址信號線對應(yīng)管腳名稱I地址信號線對應(yīng)管腳名稱2…地址信號線對應(yīng)管腳名稱η} 其中η為地址信號線位寬;通過關(guān)鍵字I實(shí)現(xiàn)對地址信號線與DDR2存儲器上管腳的對應(yīng)關(guān)系的說明; (2)關(guān)鍵字2{數(shù)據(jù)信號線對應(yīng)管腳名稱I數(shù)據(jù)信號線對應(yīng)管腳名稱2…數(shù)據(jù)信號線對應(yīng)管腳名稱m} 其中m為數(shù)據(jù)信號線位寬;通過關(guān)鍵字2實(shí)現(xiàn)對數(shù)據(jù)信號線與DDR2存儲器上管腳的對應(yīng)關(guān)系的說明; (3)關(guān)鍵字3控制信號線名稱對應(yīng)管腳名稱 通過在關(guān)鍵字3后跟隨的控制信號線名稱和對應(yīng)管腳名稱實(shí)現(xiàn)對控制信號線與DDR2存儲器上管腳的對應(yīng)關(guān)系的說明。
5.如權(quán)利要求1所述的方法,其特征在于,對DDR2存儲器信息的定義采用如下方式 關(guān)鍵字4存儲器信息名稱賦值 通過在關(guān)鍵字4后跟隨存儲器信息名稱和相應(yīng)賦值實(shí)現(xiàn)對存儲器必要信息取值的說明。
6.如權(quán)利要求1所述的方法,其特征在于,DDR2存儲器的動作包括初始化、讀、寫,對動作時(shí)序進(jìn)行定義用于說明每個(gè)動作中對控制信號線的具體操作及其時(shí)序; 動作時(shí)序的定義是采用函數(shù)來實(shí)現(xiàn)的,函數(shù)中采用操作碼來定義每項(xiàng)操作,通過操作碼順序的編排來定義操作時(shí)序。
7.如權(quán)利要求6所述的方法,其特征在于,所述操作碼包括信號線值設(shè)置、信號線值生效、地址設(shè)置、數(shù)據(jù)設(shè)置、獲取數(shù)據(jù)設(shè)置; (1)信號線值設(shè)置操作的具體定義方式如下 關(guān)鍵字5控制信號線名稱設(shè)置值 通過在關(guān)鍵字5后跟隨的控制信號線名稱和對應(yīng)的電平設(shè)置值,實(shí)現(xiàn)對DDR2存儲器的控制信號線進(jìn)行賦值操作; (2)信號線值生效操作的具體定義方式如下關(guān)鍵字6 語句“關(guān)鍵字6”表示通過邊界掃描的方法使已經(jīng)用關(guān)鍵字5設(shè)置電平生效; (3)地址設(shè)置操作的具體定義方式如下 關(guān)鍵字7地址值 通過在關(guān)鍵字7后跟隨的地址值,實(shí)現(xiàn)對DDR2存儲器的地址線進(jìn)行賦值操作; (4)數(shù)據(jù)設(shè)置操作的具體定義方式如下 關(guān)鍵字8數(shù)據(jù)值 通過在關(guān)鍵字8后跟隨的數(shù)據(jù)值,實(shí)現(xiàn)對DDR2存儲器的數(shù)據(jù)線進(jìn)行賦值操作; (5)獲取數(shù)據(jù)設(shè)置操作的具體定義方式如下 關(guān)鍵字9 通過關(guān)鍵字9,實(shí)現(xiàn)獲取DDR2存儲器數(shù)據(jù)信號線數(shù)據(jù)操作。
8.—種DDR2存儲器的邊界掃描測試方法,其特征在于,包括如下步驟 步驟200,采用如權(quán)利要求任意一項(xiàng)所述的建模方法構(gòu)建DDR2存儲器的模型文件; 步驟201,用戶指定DDR2存儲器所需完成的測試項(xiàng)目; 步驟202,加載模塊調(diào)用用戶指定測試項(xiàng)目對應(yīng)的實(shí)現(xiàn)程序,讀取DDR2存儲器模型文件中的信號線定義和存儲器信息;所述實(shí)現(xiàn)程序是預(yù)先編寫的,其調(diào)用了模型文件中的動作時(shí)序函數(shù); 步驟203,加載模塊對步驟202調(diào)用的實(shí)現(xiàn)程序,進(jìn)行逐條解析并轉(zhuǎn)換為邊界掃描鏈上的數(shù)據(jù)加載到邊界掃描控制器并向DDR2存儲器執(zhí)行。
全文摘要
本發(fā)明公開了一種DDR2存儲器建模方法和一種DDR2存儲器的邊界掃描測試程序加載方法。在所述建模方法中,步驟101,通過預(yù)先設(shè)置的關(guān)鍵詞對DDR2存儲器的各個(gè)屬性分別進(jìn)行定義,以文本文件形式完成模型文件的建立;步驟102,將所述模型文件添加上預(yù)定后綴并保存,完成DDR2存儲器建模。所述DDR2存儲器的各個(gè)屬性包括DDR2的控制信號線定義,DDR2的動作時(shí)序函數(shù)和DDR2存儲器信息定義;所述存儲器信息包括DDR2存儲器BANK數(shù)量、列地址數(shù)量、行地址數(shù)量。
文檔編號G11C29/00GK103035300SQ20121056082
公開日2013年4月10日 申請日期2012年12月20日 優(yōu)先權(quán)日2012年12月20日
發(fā)明者杜影, 李洋, 徐鵬程, 王石記 申請人:北京航天測控技術(shù)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
新巴尔虎左旗| 句容市| 隆昌县| 沾化县| 喀喇沁旗| 福泉市| 裕民县| 唐海县| 石门县| 余干县| 固安县| 章丘市| 邻水| 宜兰市| 灵璧县| 莱州市| 维西| 乌恰县| 新蔡县| 平度市| 赣州市| 石门县| 长泰县| 彭泽县| 台中县| 盐山县| 天水市| 攀枝花市| 通江县| 洛隆县| 香港 | 三河市| 阳新县| 高要市| 正安县| 华蓥市| 基隆市| 佳木斯市| 恩平市| 高青县| 读书|