<li id="wkceg"></li>
<rt id="wkceg"><delect id="wkceg"></delect></rt>
<bdo id="wkceg"></bdo>
<strike id="wkceg"><acronym id="wkceg"></acronym></strike>

  • 帳號(hào):
    密碼:
    智動(dòng)化 / 文章 /

    如何透過Simulink進(jìn)行ISO 26262專案
    [作者 Tom Erkkinen]   2018年09月17日 星期一 瀏覽人次: [17402]


    不論是傳統(tǒng)或自主車輛,負(fù)責(zé)與安全相關(guān)嵌入式系統(tǒng)的汽車工程師都正在尋找有效率的方法以達(dá)成適用於座乘用車開發(fā)功能安全標(biāo)準(zhǔn)ISO 26262 [1]所規(guī)範(fàn)的嚴(yán)格流程。


    當(dāng)幾乎所有媒體都聚焦自主車輛,看起來(lái)在建議並不缺乏。不過這些建議通常著重於最新的程式碼編寫方法或摧毀程式臭蟲的工具。如同產(chǎn)業(yè)專家長(zhǎng)期以來(lái)意識(shí)到的,安全性其實(shí)更貼近於讓系統(tǒng)以及其需求正確運(yùn)作,而不僅僅是關(guān)注軟體的運(yùn)行和如何編程[2]。


    透過Simulink進(jìn)行的模型化基礎(chǔ)設(shè)計(jì)(Model-Based Design)以連續(xù)和離散時(shí)間的模擬為骨幹,讓你可以在實(shí)際在試驗(yàn)場(chǎng)或執(zhí)行車隊(duì)測(cè)試之前,先在種類廣泛的駕駛條件與過失駕駛情境下設(shè)計(jì)和測(cè)試完整的系統(tǒng)。它還支援ISO 26262規(guī)範(fàn)的流程活動(dòng),包含工具的資格認(rèn)證。IEC安全驗(yàn)證套裝組(IEC Certification Kit)詳細(xì)說明這項(xiàng)支援,並提供國(guó)際認(rèn)證機(jī)構(gòu)TUV SUD的工具認(rèn)證和報(bào)告。


    本文將說明如何透過TUV SUD認(rèn)可的Simulink工作流程來(lái)進(jìn)行ISO 26262專案計(jì)畫。文中首先介紹ISO 26262與模型化基礎(chǔ)設(shè)計(jì),並接著涵蓋下列幾項(xiàng)任務(wù):


    * 需求開發(fā)


    * 建立設(shè)計(jì)模型


    * 產(chǎn)生程式碼


    * 設(shè)計(jì)驗(yàn)證


    * 程式碼驗(yàn)證


    * 工具資格認(rèn)證


    ISO 26262與模型化基礎(chǔ)設(shè)計(jì)

    ISO 26262除了涵蓋手動(dòng)設(shè)計(jì)及編寫程式碼的指南之外,也包含模型化基礎(chǔ)設(shè)計(jì)。它認(rèn)可使用模型化基礎(chǔ)設(shè)計(jì)所帶來(lái)的幾項(xiàng)好處[3]:


    無(wú)縫地利用模型,可帶來(lái)相當(dāng)一致且有效率的開發(fā)。


    這項(xiàng)標(biāo)準(zhǔn)提及「廣泛使用」數(shù)學(xué)模型,並註記建模工具利用了「半正式圖解方法(semi-formal graphical methods)」來(lái)進(jìn)行軟體開發(fā)。它說明到,建模不僅是捕捉(嵌入式軟體)將要實(shí)現(xiàn)的功能,也協(xié)助了真正的實(shí)體系統(tǒng)(車輛模型與環(huán)境模型)模擬,以創(chuàng)造一個(gè)完整的系統(tǒng)模型:


    如此一來(lái),就有可能建立出具備高度細(xì)節(jié)、非常複雜的車輛系統(tǒng)模型,以可接受的運(yùn)算速度來(lái)模擬接近現(xiàn)實(shí)的行為。當(dāng)車輛/環(huán)境模型逐漸在開發(fā)過程中被真實(shí)系統(tǒng)與其真實(shí)的環(huán)境取代,功能模型可以在程式碼生成時(shí)作為嵌入式軟體在控制單元上實(shí)現(xiàn)的藍(lán)圖。[3]


    圖1為一個(gè)典型的Simulink閉迴系統(tǒng)模型。它由一個(gè)控制器與受控體、加上訊號(hào)處理器組合而成。在ISO 26262,系統(tǒng)設(shè)計(jì)規(guī)格是一項(xiàng)軟體開發(fā)的輸入值,但其實(shí)不僅於此,因?yàn)榘踩允且粋€(gè)根本的系統(tǒng)議題[2]。



    圖1 : Simulink系統(tǒng)設(shè)計(jì)模型。
    圖1 : Simulink系統(tǒng)設(shè)計(jì)模型。

    你的系統(tǒng)設(shè)計(jì)接著會(huì)繼續(xù)精進(jìn),直到變成具備充分細(xì)節(jié),讓你可以產(chǎn)生產(chǎn)品程式碼的軟體藍(lán)圖。ISO 26262以「模型演化(model evolution)」描述了這個(gè)模型的精進(jìn)過程[2]:


    在實(shí)務(wù)上,功能模型[有一個(gè)]從早期規(guī)格模型,經(jīng)過設(shè)計(jì)模型,再到實(shí)現(xiàn)模型,最後自動(dòng)轉(zhuǎn)換為程式碼的演變(模型演化)。


    ISO 26262針對(duì)多種依據(jù)汽車安全完整度等級(jí)(Automotive Safety Integrity Levels,ASILs)的活動(dòng)各提出方法建議。你可以利用這些指南,依照你的使用情況,來(lái)建立一個(gè)適當(dāng)?shù)墓ぷ髁鞒?。圖2提供一個(gè)ISO 26262流程總覽。色塊箭頭代表了開發(fā)活動(dòng),而線段的虛線箭頭代表驗(yàn)證與有效性檢測(cè)活動(dòng)。參照自ISO 26262的「模型演化」則以圓點(diǎn)(…)虛線箭頭表示。



    圖2 : 使用Simulink進(jìn)行ISO 26262軟體開發(fā)與驗(yàn)證的流程。
    圖2 : 使用Simulink進(jìn)行ISO 26262軟體開發(fā)與驗(yàn)證的流程。

    需求開發(fā)

    你可以透過編寫功能和安全需求來(lái)展開安全相關(guān)的開發(fā)流程。ISO 26262建議可以利用「在軟體架構(gòu)設(shè)計(jì)和軟體安全性需求之間的雙向可追蹤性」來(lái)驗(yàn)證軟體架構(gòu)設(shè)計(jì)。為了達(dá)成這項(xiàng)任務(wù),你可以使用Simulink需求管理工具(Simulink Requirements)來(lái)編寫需求,並在模型、測(cè)試、及程式碼追蹤需求的符合情況。Simulink需求管理工具支援其他工具的雙向追蹤,包含MicrosoftR WordR、Microsoft ExcelR、以及IBMR RationalR DOORSR。在Simulink需求管理工具裡面可以進(jìn)行需求的實(shí)現(xiàn)和驗(yàn)證狀態(tài)的監(jiān)控與管理。需求連結(jié)也會(huì)在接下來(lái)產(chǎn)生的程式碼出現(xiàn)(圖3)。



    圖3 : Simulink內(nèi)的需求規(guī)格。
    圖3 : Simulink內(nèi)的需求規(guī)格。

    建立設(shè)計(jì)模型

    如同在「ISO 26262與模型化基礎(chǔ)設(shè)計(jì)」段落所提,ISO 26262描述了功能模型從高階可執(zhí)行規(guī)格到準(zhǔn)備拿來(lái)產(chǎn)生產(chǎn)品程式碼的細(xì)節(jié)設(shè)計(jì)之間的演化。傳統(tǒng)的修改和精煉包含了:


    * 利用Simulink控制模塊組(Simulink Control Design)的離散化工具,將模塊從連續(xù)時(shí)間(S domain)轉(zhuǎn)換為離散時(shí)間(Z domain)。


    * 利用定點(diǎn)設(shè)計(jì)工具箱(Fixed-Point Designer),將資料從雙重精確度轉(zhuǎn)換為單精確度或定點(diǎn)資料。


    * 利用事件導(dǎo)向系統(tǒng)模擬軟體(StateflowR),加上診斷、模式邏輯、狀態(tài)機(jī)、以及排程。


    針對(duì)ASIL B到D,ISO 26262強(qiáng)烈建議使用模型化準(zhǔn)則,於此,你可以使用Simulink提供的MAAB Style Guidelines [4]和High Integrity Guidelines for ISO 26262。這兩種準(zhǔn)則都可以透過Simulink驗(yàn)證標(biāo)準(zhǔn)檢測(cè)工具(Simulink Check)自動(dòng)檢查。它可以在特定議題加上旗幟標(biāo)示,例如插入的模塊尚未完成、編輯中等等。你也可以加入自己的準(zhǔn)則和檢查。


    產(chǎn)生程式碼

    ISO 26262指明「軟體單元的實(shí)現(xiàn)包含開源程式碼的產(chǎn)生以及目標(biāo)程式碼的編譯」。為了達(dá)到這個(gè)目的,你可以使用嵌入式程式碼轉(zhuǎn)碼器(Embedded CoderR)來(lái)產(chǎn)生C、C++程式碼,並從Simulink模型產(chǎn)生你的AUTOSAR程式碼。這些程式碼遵從MISRA CR:2012自動(dòng)程式碼準(zhǔn)則[5]。ISO 26262提到,模型化基礎(chǔ)設(shè)計(jì)和手動(dòng)編寫程式碼的程式碼準(zhǔn)則可能不同,並以MISRAR作為範(fàn)例。


    IEC安全驗(yàn)證套裝組提供嵌入式程式碼轉(zhuǎn)碼器在C、C++、和AUTOSAR的工具資格認(rèn)證支援(包含ASIL A-D)。其TUV SUD報(bào)告聲明:


    嵌入式程式碼轉(zhuǎn)碼器符合ISO 26262於工具支援和自動(dòng)化之需求。


    嵌入式程式碼轉(zhuǎn)碼器通常適用於以下三種情況之其中一種:


    1.為用於產(chǎn)生產(chǎn)品程式碼之模型產(chǎn)生C程式碼


    2.為用於產(chǎn)生產(chǎn)品程式碼之模型之AUTOSAR應(yīng)用軟體元件產(chǎn)生C程式碼與描述文件


    3.為用於產(chǎn)生產(chǎn)品程式碼之模型產(chǎn)生C++程式碼


    嵌入式程式碼轉(zhuǎn)碼器提供選項(xiàng),以進(jìn)行程式碼在記憶體和速度上面的優(yōu)化。除此之外,你可以產(chǎn)生利用硬體加速器,例如ARM和Intel的SIMD的處理器專用的優(yōu)化方式。你也可以利用ISO 26262描述的模型到程式碼(model-to-code)、處理器迴圈(processor-in-the-loop,PIL)測(cè)試驗(yàn)證,經(jīng)過優(yōu)化的程式碼是否符合模擬結(jié)果的規(guī)定誤差範(fàn)圍。


    可執(zhí)行目標(biāo)程式碼會(huì)以你的編譯器和連結(jié)器從開源程式碼產(chǎn)生。IEC安全驗(yàn)證套裝組內(nèi)的工作流程,支援轉(zhuǎn)碼器、編譯器、以及處理器的優(yōu)化。只要是PIL測(cè)試會(huì)被用來(lái)驗(yàn)證可執(zhí)行目標(biāo)程式碼,這項(xiàng)支援對(duì)於大量生產(chǎn)的ECUs非常重要。


    設(shè)計(jì)驗(yàn)證

    ISO 26262建議了幾種靜態(tài)和動(dòng)態(tài)方法來(lái)驗(yàn)證軟體設(shè)計(jì)與實(shí)現(xiàn),包括單元及整合層級(jí)的活動(dòng)。針對(duì)模型化基礎(chǔ)設(shè)計(jì),它提到「依據(jù)軟體開發(fā)流程,測(cè)試目標(biāo)可以是由模型導(dǎo)出的程式碼或者模型本身」。


    Simulink測(cè)試工具箱(Simulink Test)在Simulink環(huán)境為ISO 26262的驗(yàn)證和有效性檢測(cè)活動(dòng)提供了一個(gè)架構(gòu)。你可以使用它來(lái)為模型和從模型產(chǎn)生程式碼來(lái)編寫、管理、以及執(zhí)行系統(tǒng)的、以模擬為基礎(chǔ)的測(cè)試。圖4為一個(gè)測(cè)試序列和估測(cè)模塊的範(fàn)例。



    圖4 : 建模與編寫複雜測(cè)試情境的Simulink測(cè)試序列和估測(cè)模塊。
    圖4 : 建模與編寫複雜測(cè)試情境的Simulink測(cè)試序列和估測(cè)模塊。

    IEC Certification Kit (for ISO 26262)的TUV SUD報(bào)告書釐清了Simulink測(cè)試工具箱的角色,在於幫助驗(yàn)證和有效性檢測(cè)的自動(dòng)化:


    [Simulink測(cè)試工具箱]


    讓Simulink模型與產(chǎn)生的程式碼的核心驗(yàn)證與有效性檢測(cè)活動(dòng)得以自動(dòng)化。接下來(lái)的事件反映出依據(jù)功能安全標(biāo)準(zhǔn)ISO 26262在軟體開發(fā)流程的必要活動(dòng):


    * Simulink模型的測(cè)試開發(fā)與執(zhí)行


    * 模型與程式碼之間背向(back-to-back)測(cè)試的測(cè)試開發(fā)與執(zhí)行


    * 測(cè)試結(jié)果估測(cè)


    * 產(chǎn)生測(cè)試報(bào)告


    * 需求與測(cè)試案例之間的可追蹤性鑑定


    ISO 26262建議以結(jié)構(gòu)覆蓋度分析來(lái)判斷測(cè)試完整性及鑑定不在計(jì)畫中的功能性。它列出三種方法來(lái)增加嚴(yán)謹(jǐn)程度,後面兩種方法非常建議ASIL-D等級(jí)使用。


    * 陳述覆蓋度


    * 分支覆蓋度


    * MC/DC覆蓋度


    標(biāo)準(zhǔn)中提到模型化基礎(chǔ)設(shè)計(jì),「可以在模型層級(jí)以類似的結(jié)構(gòu)覆蓋度量來(lái)執(zhí)行模型的覆蓋分析」。它繼續(xù)指出,如果結(jié)構(gòu)覆蓋度不足,「應(yīng)再增加制定其他測(cè)試案例或提出理由」。


    Simulink程式碼覆蓋度測(cè)試工具(Simulink Coverage)為模型和產(chǎn)生的程式碼提供了結(jié)構(gòu)覆蓋,而且可以很容易地利用Simulink測(cè)試工具箱執(zhí)行測(cè)試。如果你的模型覆蓋不足,則可以使用Simulink設(shè)計(jì)驗(yàn)證工具(Simulink Design Verifier)來(lái)自動(dòng)產(chǎn)生另外的測(cè)試案例以達(dá)到要求的覆蓋程度。它內(nèi)含一個(gè)度量?jī)x表板來(lái)衡量專案的品質(zhì),並滿足ISO 26262在「複雜性低且軟體元件與介面規(guī)模有限的執(zhí)行」要求(圖5)。



    圖5 : 度量?jī)x表板顯示了模型指南的遵照程度。
    圖5 : 度量?jī)x表板顯示了模型指南的遵照程度。

    IEC安全驗(yàn)證套裝組提供工具資格認(rèn)證支援,包含Simulink驗(yàn)證標(biāo)準(zhǔn)檢測(cè)工具、Simulink程式碼覆蓋度測(cè)試工具(包含模型與程式碼的覆蓋度)、Simulink設(shè)計(jì)驗(yàn)證工具、Simulink測(cè)試工具箱的TUV SUD認(rèn)證與報(bào)告。


    程式碼驗(yàn)證

    ISO 26262為軟體設(shè)計(jì)和實(shí)現(xiàn)的驗(yàn)證提供了幾種選擇。在IEC安全驗(yàn)證套裝組描述的第一種方法能夠允許有限的追蹤檢查,來(lái)偵測(cè)生成的程式碼中不在預(yù)期內(nèi)的功能,像是程式碼並未追蹤至模塊或訊號(hào)。這個(gè)套裝組為了這個(gè)目的自動(dòng)產(chǎn)生一個(gè)追蹤矩陣?;蛘?,也可以在軟體迴圈(software-in-the-loop,SIL)測(cè)試階段利用Simulink程式碼覆蓋度測(cè)試工具比較模型覆蓋與程式碼覆蓋,或使用Simulink程式碼檢查器(Simulink Code Inspector?)。


    最後,可以透過Polyspace查錯(cuò)器(Polyspace Bug Finder)檢查是否遵照了MISRA。使用MISRA檢查與程式碼覆蓋分析對(duì)混合了自動(dòng)產(chǎn)生程式碼和手寫程式碼軟體的專案特別有幫助。再更嚴(yán)謹(jǐn)一點(diǎn),還可以使用Polyspace程式碼驗(yàn)證器(Polyspace Code Prover)來(lái)證實(shí),程式碼不會(huì)出現(xiàn)像是除以零這種執(zhí)行階段錯(cuò)誤(run-time errors)。


    IEC安全驗(yàn)證套裝組提供工具認(rèn)證支援,Polyspace產(chǎn)品有TUV SUD的認(rèn)證和報(bào)告。


    在編譯及產(chǎn)生可執(zhí)行程式碼之後,在目標(biāo)處理器上執(zhí)行程式碼時(shí),可以利用PIL測(cè)試來(lái)重複利用模型測(cè)試(圖6)。



    圖6 : 嵌入式處理器的PIL範(fàn)例
    圖6 : 嵌入式處理器的PIL範(fàn)例

    ISO 26262強(qiáng)烈建議ASILs C與D採(cǎi)用背向測(cè)試。它指出在一個(gè)具代表性的目標(biāo)硬體環(huán)境測(cè)試的重要性,並強(qiáng)調(diào)察覺測(cè)試環(huán)境與硬體環(huán)境之間差異的重要性:


    測(cè)試環(huán)境及目標(biāo)環(huán)境的差異可能在開源程式碼與目標(biāo)程式碼出現(xiàn),比如,資料文字與處理器顯示文字的位元寬度不同。


    不過每一位電腦工程師都應(yīng)該要知道[6],在平臺(tái)之間存在許多潛在的數(shù)值差異,特別是浮點(diǎn)資料。有的差異在開始時(shí)十分細(xì)微,但卻會(huì)累積、增長(zhǎng),尤其是在回饋控制系統(tǒng)。因此ISO 26262列出幾種背向測(cè)試的迴圈方法:


    軟體單元測(cè)試可以在不同環(huán)境執(zhí)行,例如:


    —模型迴圈測(cè)試


    —軟體迴圈測(cè)試


    —處理器迴圈測(cè)試


    —硬體迴圈測(cè)試


    Simulink測(cè)試工具箱可以將迴圈測(cè)試自動(dòng)化,包含透過嵌入式程式碼轉(zhuǎn)碼器進(jìn)行SIL與PIL,以及透過Simulink即時(shí)控制工具(Simulink Real-Time)進(jìn)行HIL,並經(jīng)由Simulink程式碼覆蓋度測(cè)試工具,提供包含覆蓋度量的pass/fail報(bào)告。


    工具資格認(rèn)證

    ISO 26262-8描述了其它的過程,包含版本控管、結(jié)構(gòu)管理、以及文件。這些過程可分別由Simulink Projects、Simulink模型差分化與合併、以及Simulink報(bào)告產(chǎn)生器支援。


    這項(xiàng)標(biāo)準(zhǔn)也提供了工具資格認(rèn)證指南。它不允許工具供應(yīng)商認(rèn)證自己的工具,而是要使用者為特定的專案進(jìn)行工具認(rèn)證。IEC安全驗(yàn)證套裝組可以藉由提供典型的使用案例、參考工作流程、產(chǎn)品分級(jí)分析、軟體工具文件、工具認(rèn)證報(bào)告、以及有效性檢測(cè)報(bào)告來(lái)有效地預(yù)先驗(yàn)證工具。


    TUV SUD審核並稽查MathWorks工具開發(fā)與品質(zhì)流程,以及錯(cuò)誤回報(bào)能力,並且認(rèn)證了每個(gè)產(chǎn)品版本的結(jié)果。IEC安全驗(yàn)證套裝組包含這些在遵循適當(dāng)驗(yàn)證與有效性檢測(cè)工作流程時(shí)所需要的TUV SUD認(rèn)證和報(bào)告。這一個(gè)套裝組如同文章稍早所提,依據(jù)典型的工具使用案例提供了參考工作流程。


    IEC安全驗(yàn)證套裝組提供更多細(xì)節(jié)資訊,包含映射ISO 26262目標(biāo)於Simulink所支援的能力(圖7)。



    圖7 : 節(jié)錄自IEC安全驗(yàn)證套裝組的ISO 26262-to-Simulink映射
    圖7 : 節(jié)錄自IEC安全驗(yàn)證套裝組的ISO 26262-to-Simulink映射

    請(qǐng)注意使用經(jīng)過認(rèn)證的工具並不保證在考量中的軟體或系統(tǒng)的安全性。


    (本文由鈦思科技提供;作者Tom Erkkinen任職於MathWorks公司)


    參考文獻(xiàn)

    [1] ISO 26262 Road vehicles — Functional safety


    [2] Nancy G. Leveson, Engineering a Safer World, Systems Thinking Applied to Safety


    [3] ISO 26262-6 — Part 6: Product development at the software level


    [4] MAAB Style Guidelines


    [5] MISRA C:2012


    [6] David Goldberg, What Every Computer Scientist Should know about Floating-Point Arithmetic


    [7] ISO 26262 Road vehicles — Functional safety


    [8] Nancy G. Leveson, Engineering a Safer World, Systems Thinking Applied to Safety


    [9] ISO 26262-6 — Part 6: Product development at the software level


    [10] MAAB Style Guidelines


    [11] MISRA C:2012


    [12] David Goldberg, What Every Computer Scientist Should know about Floating-Point Arithmetic


    相關(guān)文章
    ? 2024年嵌入式系統(tǒng)的三大重要趨勢(shì)
    ? NASA太空飛行器任務(wù)開發(fā)光學(xué)導(dǎo)航軟體
    ? 近即時(shí)模擬與控制協(xié)助自主水下載具機(jī)動(dòng)運(yùn)行
    ? 資料科學(xué)與機(jī)器學(xué)習(xí)協(xié)助改善頸部損傷評(píng)估
    ? 配電網(wǎng)路的即時(shí)模擬環(huán)境開發(fā)
    comments powered by Disqus
      相關(guān)新聞
    » 凌華科技攜手立普思推出AMR 3D x AI視覺感知方案 助力NVIDIA Isaac 生態(tài)系統(tǒng)發(fā)展
    » 泓格科技「AIoT即刻啟動(dòng),打造ESG實(shí)踐力」研討會(huì)即將登場(chǎng)
    » 臺(tái)達(dá)電子公佈一百一十四年一月份營(yíng)收
    » 臺(tái)達(dá)代子公司Delta International Holding Limited B.V.公告 發(fā)行總額美金525,000,000元
    » 臺(tái)達(dá)電子公佈一百一十三年十二月份營(yíng)收 單月合併營(yíng)收新臺(tái)幣387.39億元
      相關(guān)產(chǎn)品
    » 安勤擴(kuò)展EMS系列新品 搭載英特爾最新處理器開拓AI應(yīng)用
    » 凌華COM-HPC模組搭載第13代Intel Core處理器 可支援24效能核心
    » 凌華推出PCIe-ACC100加速5G虛擬化無(wú)線電存取網(wǎng)路應(yīng)用
    » 凌華推出新款COM-HPC Client Type與COM Express Type 6模組化電腦
    » 安勤推出新款採(cǎi)用EtherCAT的高效能Slot PC解決方案

    ?
    刊登廣告 新聞信箱 讀者信箱 著作權(quán)聲明 隱私權(quán)聲明 本站介紹

    Copyright ©1999-2025 遠(yuǎn)播資訊股份有限公司版權(quán)所有 Powered by O3
    地址:臺(tái)北數(shù)位產(chǎn)業(yè)園區(qū)(digiBlock Taipei) 103臺(tái)北市大同區(qū)承德路三段287-2號(hào)A棟204室
    電話 (02)2585-5526 #0 轉(zhuǎn)接至總機(jī) / E-Mail: webmaster@hope.com.tw
    主站蜘蛛池模板: 凌云县| 广西| 平和县| 德惠市| 唐海县| 怀来县| 开化县| 蕲春县| 眉山市| 噶尔县| 渝中区| 鸡泽县| 新营市| 唐河县| 沙河市| 通江县| 明水县| 望谟县| 丰原市| 洪泽县| 武平县| 佛山市| 青川县| 托里县| 长子县| 板桥市| 鄯善县| 望谟县| 合江县| 原阳县| 星座| 三原县| 富源县| 石家庄市| 合作市| 福建省| 博客| 汉川市| 五莲县| 宝兴县| 马尔康县|