




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
-PAGEI-本科畢業(yè)設(shè)計(jì)(論文)-PAGE1-APB-WDT控制器的設(shè)計(jì)和驗(yàn)證摘要APB-WDT控制器是一種用于系統(tǒng)中的看門狗定時(shí)器(WatchdogTimer)的控制器??撮T狗定時(shí)器是一種計(jì)時(shí)器,用于監(jiān)測(cè)系統(tǒng)是否處于正常運(yùn)行狀態(tài)。如果系統(tǒng)在設(shè)定的時(shí)間內(nèi)未能重新啟動(dòng)計(jì)時(shí)器,則會(huì)被視為出現(xiàn)故障,并采取相應(yīng)的應(yīng)急措施,例如觸發(fā)系統(tǒng)復(fù)位。APB-WDT控制器的意義在于提供一種可靠的系統(tǒng)監(jiān)控機(jī)制。在嵌入式系統(tǒng)或其他關(guān)鍵系統(tǒng)中,系統(tǒng)的穩(wěn)定性和可靠性至關(guān)重要。通過(guò)使用看門狗定時(shí)器可以及時(shí)檢測(cè)系統(tǒng)的異常情況,并采取相應(yīng)的措施,防止系統(tǒng)崩潰或陷入無(wú)限循環(huán)等問(wèn)題。APB-WDT控制器的設(shè)計(jì)目標(biāo)是提供一個(gè)簡(jiǎn)單且可定制的看門狗定時(shí)器,以滿足不同系統(tǒng)的需求。它通常與其他系統(tǒng)組件(如處理器、存儲(chǔ)器等)集成在一起,通過(guò)監(jiān)控系統(tǒng)的活動(dòng)狀態(tài)來(lái)確保系統(tǒng)的正常運(yùn)行。該控制器通過(guò)提供配置選項(xiàng)和接口,使得開(kāi)發(fā)人員能夠根據(jù)具體應(yīng)用場(chǎng)景對(duì)看門狗定時(shí)器進(jìn)行定制和調(diào)整,以達(dá)到最佳的系統(tǒng)保護(hù)效果。本論文提出了一種基于APB(AdvancedPeripheralBus)和WDT(WatchdogTimer)的控制器設(shè)計(jì)和驗(yàn)證方法。APB-WDT控制器是一種用于監(jiān)測(cè)和重置系統(tǒng)的關(guān)鍵組件,能夠在系統(tǒng)出現(xiàn)異常情況時(shí)自動(dòng)重啟系統(tǒng),提高系統(tǒng)的可靠性和穩(wěn)定性。本文首先介紹了APB總線和WDT的基本原理和特性,然后詳細(xì)描述了APB-WDT控制器的設(shè)計(jì)流程和關(guān)鍵模塊。設(shè)計(jì)過(guò)程包括功能分析、寄存器設(shè)計(jì)、狀態(tài)機(jī)設(shè)計(jì)和接口設(shè)計(jì)等。為了驗(yàn)證設(shè)計(jì)的正確性和可靠性,采用了模擬仿真和驗(yàn)證方法。仿真結(jié)果表明,APB-WDT控制器能夠正常工作,并能夠在系統(tǒng)出現(xiàn)異常情況時(shí)及時(shí)重置系統(tǒng)。關(guān)鍵詞:APB,WDT,控制器,設(shè)計(jì),驗(yàn)證-PAGEIV-DesignandverificationofAPB-WDTcontrollerAbstractTheAPB-WDTcontrollerisacontrollerusedfortheWatchdogTimerinasystem.Thewatchdogtimerisatypeoftimerusedtomonitorwhetherthesystemisoperatingnormally.Ifthesystemfailstorestartthetimerwithinthesettime,itwillbeconsideredamalfunctionandcorrespondingemergencymeasureswillbetaken,suchastriggeringasystemreset.ThesignificanceofAPB-WDTcontrolleristoprovideareliablesystemmonitoringmechanism.Inembeddedsystemsorothercriticalsystems,thestabilityandreliabilityofthesystemarecrucial.Byusingawatchdogtimer,abnormalsituationsinthesystemcanbedetectedinatimelymanner,andcorrespondingmeasurescanbetakentopreventsystemcrashesorinfiniteloops.ThedesigngoaloftheAPB-WDTcontrolleristoprovideasimpleandcustomizablewatchdogtimertomeettheneedsofdifferentsystems.Itisusuallyintegratedwithothersystemcomponents(suchasprocessors,memory,etc.)toensurethenormaloperationofthesystembymonitoringitsactivitystatus.Thiscontrollerprovidesconfigurationoptionsandinterfaces,allowingdeveloperstocustomizeandadjustthewatchdogtimeraccordingtospecificapplicationscenariostoachievethebestsystemprotectioneffect.ThispaperproposesacontrollerdesignandverificationmethodbasedonAPB(AdvancedPeripheralBus)andWDT(WatchdogTimer).TheAPB-WDTcontrollerisakeycomponentusedformonitoringandresettingsystems,whichcanautomaticallyrestartthesystemincaseofabnormalsituations,improvingsystemreliabilityandstability.ThisarticlefirstintroducesthebasicprinciplesandcharacteristicsofAPBbusandWDT,andthendescribesindetailthedesignprocessandkeymodulesofAPB-WDTcontroller.Thedesignprocessincludesfunctionalanalysis,registerdesign,statemachinedesign,andinterfacedesign.Inordertoverifythecorrectnessandreliabilityofthedesign,simulationandvalidationmethodswereadopted.ThesimulationresultsshowthattheAPB-WDTcontrollercanworknormallyandcanresetthesysteminatimelymannerincaseofabnormalsituations.KeyWords:APB,WDT,controller,design,verification目錄摘要 IAbstract II引言 11 研究背景 12 研究目的 13 研究意義 24 APB-WDT控制器 34.1APB總線介紹 34.1.1架構(gòu)特點(diǎn): 34.2.2總線結(jié)構(gòu): 34.2.3傳輸協(xié)議: 34.2.4性能優(yōu)化: 34.2.5擴(kuò)展性: 34.2 WDT定時(shí)器原理 44.2.1.基本原理: 44.2.2.重置機(jī)制: 44.2.3.觸發(fā)操作: 44.2.4.定時(shí)器配置: 44.2.5.應(yīng)用場(chǎng)景: 54.3 APB-WDT控制器設(shè)計(jì) 54.3.1apb_wdt框圖 54.3.1apb_wdt的特征 64.4 APB-WDT控制器功能 64.4.1 柜臺(tái) 74.4.2 中斷 74.4.3 系統(tǒng)重置 94.4.4 暫停模式 124.4.5 外部時(shí)鐘使能 124.4.6 復(fù)位脈沖?度 124.4.7 超時(shí)時(shí)間值 124.4.8 APB接? 124.4.8.1APB3.0?持 134.4.8.2APB4.0?持 134.4.8.3從APB從站讀取和寫(xiě)? 154.2.8.4從未使?的位置讀取 154.2.8.532位總線系統(tǒng) 174.2.8.516位總線系統(tǒng) 174.2.8.58位總線系統(tǒng) 175 RTL代碼的功能進(jìn)行驗(yàn)證 186 驗(yàn)證工具 217 APB-WDT控制器性能驗(yàn)證 227.1硬件測(cè)試環(huán)境搭建 227.2實(shí)驗(yàn)結(jié)果與分析 23參考文獻(xiàn) 29·Ⅳ··PAGE15·PAGE1引言研究背景隨著嵌入式系統(tǒng)在各個(gè)領(lǐng)域的廣泛應(yīng)用,系統(tǒng)的可靠性和穩(wěn)定性變得尤為重要。在嵌入式系統(tǒng)中,控制器是系統(tǒng)的核心組件之一,負(fù)責(zé)監(jiān)測(cè)系統(tǒng)狀態(tài)并采取相應(yīng)的措施來(lái)確保系統(tǒng)的正常運(yùn)行。然而,由于系統(tǒng)復(fù)雜性的增加和外部干擾的存在,系統(tǒng)可能會(huì)遭遇各種異常情況,如軟件錯(cuò)誤、硬件故障或外部干擾等。這些異常情況可能導(dǎo)致系統(tǒng)崩潰或無(wú)法正常工作,給應(yīng)用帶來(lái)嚴(yán)重的影響。為了提高嵌入式系統(tǒng)的可靠性,探索并設(shè)計(jì)一種高效可靠的控制器是至關(guān)重要的。APB(AdvancedPeripheralBus)是一種常用的總線協(xié)議,廣泛應(yīng)用于嵌入式系統(tǒng)中。它提供了一種高速、低功耗的數(shù)據(jù)傳輸方式,能夠滿足多種外設(shè)對(duì)數(shù)據(jù)傳輸?shù)男枨?。WDT(WatchdogTimer)是一種用于監(jiān)測(cè)系統(tǒng)狀態(tài)的計(jì)時(shí)器,當(dāng)系統(tǒng)在設(shè)定的時(shí)間內(nèi)沒(méi)有接收到WDT的重置信號(hào)時(shí),WDT會(huì)觸發(fā)系統(tǒng)重啟。通過(guò)結(jié)合APB和WDT,可以設(shè)計(jì)出一種高效的APB-WDT控制器,用于監(jiān)測(cè)系統(tǒng)狀態(tài)并在系統(tǒng)出現(xiàn)異常情況時(shí)自動(dòng)重啟系統(tǒng),從而提高系統(tǒng)的可靠性和穩(wěn)定性。然而,APB-WDT控制器的設(shè)計(jì)和驗(yàn)證是一個(gè)復(fù)雜的過(guò)程,需要考慮多個(gè)因素,如功能需求、接口設(shè)計(jì)、狀態(tài)機(jī)設(shè)計(jì)等。此外,為了確保設(shè)計(jì)的正確性和可靠性,需要進(jìn)行充分的驗(yàn)證工作,包括仿真和驗(yàn)證方法的應(yīng)用。因此,對(duì)APB-WDT控制器的設(shè)計(jì)和驗(yàn)證進(jìn)行深入研究,對(duì)于提高嵌入式系統(tǒng)的可靠性和穩(wěn)定性具有重要意義。研究目的嵌入式系統(tǒng)可靠性:嵌入式系統(tǒng)廣泛應(yīng)用于各個(gè)領(lǐng)域,包括航空航天、醫(yī)療設(shè)備、汽車電子、工業(yè)控制等。這些領(lǐng)域?qū)ο到y(tǒng)的可靠性要求非常高,因?yàn)橄到y(tǒng)故障可能導(dǎo)致嚴(yán)重的后果,如生命安全問(wèn)題或巨大經(jīng)濟(jì)損失。APB-WDT控制器作為一種可靠性增強(qiáng)機(jī)制,可以有效監(jiān)測(cè)系統(tǒng)狀態(tài)并在出現(xiàn)異常情況時(shí)重置系統(tǒng),提高嵌入式系統(tǒng)的可靠性。系統(tǒng)穩(wěn)定性:穩(wěn)定性是嵌入式系統(tǒng)的重要指標(biāo)之一。系統(tǒng)中的軟件和硬件可能會(huì)出現(xiàn)錯(cuò)誤或故障,導(dǎo)致系統(tǒng)崩潰或無(wú)法正常工作。APB-WDT控制器可以監(jiān)測(cè)系統(tǒng)狀態(tài)并在出現(xiàn)異常情況時(shí)重置系統(tǒng),從而保持系統(tǒng)的穩(wěn)定運(yùn)行狀態(tài),避免不可預(yù)測(cè)的錯(cuò)誤或死鎖情況。故障容忍能力:嵌入式系統(tǒng)中的故障容忍能力對(duì)于一些關(guān)鍵應(yīng)用非常重要。APB-WDT控制器可以作為一種故障容忍機(jī)制,能夠檢測(cè)系統(tǒng)狀態(tài)并在出現(xiàn)異常情況時(shí)及時(shí)重置系統(tǒng),從而防止故障進(jìn)一步擴(kuò)散,保持系統(tǒng)的可用性。設(shè)計(jì)驗(yàn)證方法:探究APB-WDT控制器的設(shè)計(jì)和驗(yàn)證方法有助于提供一種可行的設(shè)計(jì)和驗(yàn)證流程,以確??刂破鞯恼_性和可靠性。通過(guò)模擬仿真和驗(yàn)證方法,可以驗(yàn)證設(shè)計(jì)的控制器在各種場(chǎng)景下的工作情況,進(jìn)一步提高控制器的可信度。綜上所述,探究APB-WDT控制器的設(shè)計(jì)和驗(yàn)證對(duì)于提高嵌入式系統(tǒng)的可靠性和穩(wěn)定性,增強(qiáng)系統(tǒng)的故障容忍能力,以及提供可行的設(shè)計(jì)驗(yàn)證方法具有重要意義。這將有助于滿足各種應(yīng)用場(chǎng)景對(duì)系統(tǒng)可靠性的要求,并推動(dòng)嵌入式系統(tǒng)的發(fā)展和應(yīng)用。研究意義提高系統(tǒng)可靠性:嵌入式系統(tǒng)在各個(gè)領(lǐng)域的應(yīng)用越來(lái)越廣泛,對(duì)系統(tǒng)的可靠性要求也越來(lái)越高。設(shè)計(jì)和驗(yàn)證高效可靠的APB-WDT控制器可以有效監(jiān)測(cè)系統(tǒng)狀態(tài),并在系統(tǒng)出現(xiàn)異常情況時(shí)及時(shí)重置系統(tǒng),從而提高系統(tǒng)的可靠性。這對(duì)于一些對(duì)系統(tǒng)穩(wěn)定性要求較高的應(yīng)用場(chǎng)景,如航空航天、醫(yī)療設(shè)備等,具有重要意義。降低系統(tǒng)故障風(fēng)險(xiǎn):嵌入式系統(tǒng)可能會(huì)面臨各種異常情況,如軟件錯(cuò)誤、硬件故障或外部干擾等。這些異常情況可能導(dǎo)致系統(tǒng)崩潰或無(wú)法正常工作,給應(yīng)用帶來(lái)嚴(yán)重的影響。通過(guò)設(shè)計(jì)和驗(yàn)證APB-WDT控制器,可以及時(shí)檢測(cè)系統(tǒng)狀態(tài),并在出現(xiàn)異常情況時(shí)重置系統(tǒng),從而降低系統(tǒng)故障風(fēng)險(xiǎn),保護(hù)應(yīng)用的正常運(yùn)行。提高系統(tǒng)穩(wěn)定性:穩(wěn)定性是嵌入式系統(tǒng)的重要指標(biāo)之一。設(shè)計(jì)和驗(yàn)證高效可靠的APB-WDT控制器可以幫助系統(tǒng)保持穩(wěn)定的運(yùn)行狀態(tài)。通過(guò)監(jiān)測(cè)系統(tǒng)狀態(tài)并重置系統(tǒng),可以有效避免系統(tǒng)出現(xiàn)不可預(yù)測(cè)的錯(cuò)誤或死鎖情況,提高系統(tǒng)的穩(wěn)定性。拓展嵌入式系統(tǒng)的應(yīng)用領(lǐng)域:隨著嵌入式系統(tǒng)應(yīng)用領(lǐng)域的不斷擴(kuò)大,對(duì)系統(tǒng)可靠性和穩(wěn)定性的要求也越來(lái)越高。設(shè)計(jì)和驗(yàn)證高效可靠的APB-WDT控制器可以為嵌入式系統(tǒng)提供一種可靠的控制器設(shè)計(jì)和驗(yàn)證方法,進(jìn)一步拓展嵌入式系統(tǒng)的應(yīng)用領(lǐng)域,滿足各種應(yīng)用場(chǎng)景對(duì)系統(tǒng)可靠性的要求。綜上所述,探究APB-WDT控制器的設(shè)計(jì)和驗(yàn)證對(duì)于提高嵌入式系統(tǒng)的可靠性和穩(wěn)定性,降低系統(tǒng)故障風(fēng)險(xiǎn),拓展應(yīng)用領(lǐng)域具有重要的研究意義。APB-WDT控制器4.1APB總線介紹APB(AdvancedPeripheralBus)總線是一種由ARM公司提出的低功耗、高效率的片上總線架構(gòu)。它被廣泛應(yīng)用于嵌入式系統(tǒng)中,用于連接處理器和外設(shè),實(shí)現(xiàn)數(shù)據(jù)和控制信號(hào)的傳輸。下面是對(duì)APB總線的介紹:4.1.1架構(gòu)特點(diǎn):簡(jiǎn)單性:APB總線采用簡(jiǎn)單的點(diǎn)對(duì)點(diǎn)連接方式,每個(gè)外設(shè)都通過(guò)獨(dú)立的總線連接到處理器,使得系統(tǒng)設(shè)計(jì)和調(diào)試更加方便。低功耗:APB總線采用時(shí)鐘同步的方式進(jìn)行數(shù)據(jù)傳輸,可以根據(jù)需要靈活調(diào)整時(shí)鐘頻率,從而降低功耗。高效率:APB總線采用突發(fā)傳輸機(jī)制,可以在一個(gè)時(shí)鐘周期內(nèi)傳輸多個(gè)數(shù)據(jù),提高數(shù)據(jù)傳輸效率。4.2.2總線結(jié)構(gòu):主設(shè)備(Master):主設(shè)備是APB總線的控制者,負(fù)責(zé)發(fā)起讀寫(xiě)操作和控制總線的訪問(wèn)。主設(shè)備可以是處理器、DMA控制器等。從設(shè)備(Slave):從設(shè)備是APB總線上的外設(shè),負(fù)責(zé)接收主設(shè)備的讀寫(xiě)請(qǐng)求并執(zhí)行相應(yīng)的操作,如存儲(chǔ)器、UART、SPI控制器等。時(shí)鐘和復(fù)位信號(hào):APB總線使用統(tǒng)一的時(shí)鐘信號(hào)和復(fù)位信號(hào),以保證整個(gè)系統(tǒng)的同步性和正確性。4.2.3傳輸協(xié)議:APB總線采用基于時(shí)鐘的同步傳輸協(xié)議,數(shù)據(jù)傳輸在時(shí)鐘的上升沿或下降沿進(jìn)行。傳輸類型包括讀(Read)和寫(xiě)(Write)操作,主設(shè)備通過(guò)地址線指定要訪問(wèn)的從設(shè)備和數(shù)據(jù)的傳輸方向。APB總線支持突發(fā)傳輸,主設(shè)備可以通過(guò)一次地址傳輸多個(gè)數(shù)據(jù)。4.2.4性能優(yōu)化:APB總線可以通過(guò)調(diào)整時(shí)鐘頻率和突發(fā)傳輸長(zhǎng)度來(lái)優(yōu)化性能和功耗之間的平衡。可以通過(guò)合理設(shè)計(jì)總線拓?fù)浣Y(jié)構(gòu)和優(yōu)化外設(shè)的響應(yīng)時(shí)間來(lái)提高系統(tǒng)的整體性能。4.2.5擴(kuò)展性:APB總線支持多主設(shè)備和多從設(shè)備的連接,可以靈活擴(kuò)展系統(tǒng)的功能和外設(shè)數(shù)量。可以通過(guò)總線橋接器(Bridge)將多個(gè)APB總線連接起來(lái),實(shí)現(xiàn)不同外設(shè)之間的通信??傊珹PB總線作為一種簡(jiǎn)單、低功耗、高效率的片上總線架構(gòu),被廣泛應(yīng)用于嵌入式系統(tǒng)中。它提供了靈活的數(shù)據(jù)和控制信號(hào)傳輸方式,能夠滿足不同應(yīng)用領(lǐng)域?qū)ο到y(tǒng)性能、功耗和可擴(kuò)展性的要求。通過(guò)合理設(shè)計(jì)和優(yōu)化,APB總線可以有效提高系統(tǒng)的可靠性和穩(wěn)定性,推動(dòng)嵌入式系統(tǒng)的發(fā)展。WDT定時(shí)器原理WDT(WatchdogTimer)定時(shí)器是一種常用的硬件定時(shí)器,用于監(jiān)測(cè)系統(tǒng)的運(yùn)行狀態(tài)并在系統(tǒng)出現(xiàn)故障或異常情況時(shí)采取相應(yīng)的措施。下面是關(guān)于WDT定時(shí)器的原理介紹:4.2.1.基本原理:WDT定時(shí)器是一個(gè)獨(dú)立的硬件計(jì)數(shù)器,它在系統(tǒng)啟動(dòng)時(shí)開(kāi)始計(jì)數(shù),并以固定的時(shí)間間隔遞減計(jì)數(shù)值。系統(tǒng)軟件需要定期重置WDT定時(shí)器的計(jì)數(shù)值,以防止計(jì)數(shù)器溢出。如果計(jì)數(shù)器溢出,說(shuō)明系統(tǒng)出現(xiàn)故障或異常情況,WDT定時(shí)器會(huì)觸發(fā)相應(yīng)的操作。4.2.2.重置機(jī)制:在正常運(yùn)行狀態(tài)下,系統(tǒng)軟件會(huì)定期重置WDT定時(shí)器的計(jì)數(shù)值,以保持計(jì)數(shù)器的值在一個(gè)安全范圍內(nèi)。這可以通過(guò)向WDT定時(shí)器寫(xiě)入特定的值或執(zhí)行特定的操作來(lái)實(shí)現(xiàn)。如果系統(tǒng)軟件在規(guī)定的時(shí)間內(nèi)未能重置WDT定時(shí)器,即未能及時(shí)喂狗(FeedtheDog),WDT定時(shí)器會(huì)認(rèn)為系統(tǒng)出現(xiàn)故障或異常情況,觸發(fā)相應(yīng)的操作。4.2.3.觸發(fā)操作:當(dāng)WDT定時(shí)器計(jì)數(shù)器溢出時(shí),觸發(fā)操作可以有多種方式,具體取決于系統(tǒng)設(shè)計(jì)。常見(jiàn)的觸發(fā)操作包括:系統(tǒng)復(fù)位:WDT定時(shí)器溢出時(shí),可以觸發(fā)系統(tǒng)復(fù)位操作,將系統(tǒng)恢復(fù)到初始狀態(tài)。中斷請(qǐng)求:WDT定時(shí)器溢出時(shí),可以觸發(fā)中斷請(qǐng)求,通知系統(tǒng)軟件進(jìn)行相應(yīng)的處理。異常處理:WDT定時(shí)器溢出時(shí),可以觸發(fā)異常處理程序,執(zhí)行特定的錯(cuò)誤處理操作。4.2.4.定時(shí)器配置:WDT定時(shí)器的時(shí)間間隔可以根據(jù)系統(tǒng)需求進(jìn)行配置。通常,時(shí)間間隔應(yīng)該足夠長(zhǎng)以容忍正常系統(tǒng)操作,但又不能太長(zhǎng)以防止系統(tǒng)長(zhǎng)時(shí)間處于不可用狀態(tài)。定時(shí)器的配置參數(shù)包括計(jì)數(shù)器的位寬和初始計(jì)數(shù)值,可以根據(jù)系統(tǒng)的時(shí)鐘頻率和所需的定時(shí)時(shí)間來(lái)確定。4.2.5.應(yīng)用場(chǎng)景:WDT定時(shí)器廣泛應(yīng)用于嵌入式系統(tǒng)和關(guān)鍵應(yīng)用中,例如工業(yè)控制系統(tǒng)、汽車電子、醫(yī)療設(shè)備等。它可以用于監(jiān)測(cè)系統(tǒng)的運(yùn)行狀態(tài),防止系統(tǒng)死鎖、死循環(huán)或其他異常情況,提高系統(tǒng)的可靠性和穩(wěn)定性??傊?,WDT定時(shí)器是一種用于監(jiān)測(cè)系統(tǒng)運(yùn)行狀態(tài)的硬件定時(shí)器。通過(guò)定期重置計(jì)數(shù)器,WDT定時(shí)器可以檢測(cè)系統(tǒng)是否正常運(yùn)行。當(dāng)計(jì)數(shù)器溢出時(shí),觸發(fā)相應(yīng)的操作,如系統(tǒng)復(fù)位、中斷請(qǐng)求或異常處理。應(yīng)用WDT定時(shí)器可以提高嵌入式系統(tǒng)的可靠性,防止系統(tǒng)故障和異常情況的發(fā)生。APB-WDT控制器設(shè)計(jì)4.3.1apb_wdt框圖圖4-3-1顯示了APB-WDT模塊主要接口為以下功能分組:APB從接?具有當(dāng)前計(jì)數(shù)寄存器的讀?致性的寄存器塊中斷/系統(tǒng)復(fù)位?成塊由遞減計(jì)數(shù)器和控制邏輯組成異步定時(shí)器時(shí)鐘?持所需的時(shí)鐘域交叉同步器;僅當(dāng)WDT_ASYNC_CLK_MODE_ENABLE=1時(shí)存在圖4-3-1apb-wdt構(gòu)圖4.3.1apb_wdt的特征可配置的APB2、APB3和APB4接??持,apb_wdt?于AMBA實(shí)現(xiàn)的可綜合組件??膳渲玫腁PB數(shù)據(jù)總線寬度為8、16和32位。16?32位的可配置看?狗計(jì)數(shù)器寬度。計(jì)數(shù)器從預(yù)設(shè)值遞減計(jì)數(shù)到0,以指?發(fā)?超時(shí)??蛇x的外部時(shí)鐘使能信號(hào)可控制計(jì)數(shù)器計(jì)數(shù)的速率。可編程超時(shí)范圍(周期)。在配置期間對(duì)該值進(jìn)?硬編碼的選項(xiàng)可?于減少寄存器要求??蛇x的雙可編程超時(shí)周期,當(dāng)?shù)却?個(gè)踢球的持續(xù)時(shí)間為與后續(xù)踢球所需的不同??梢赃x擇對(duì)這些值進(jìn)?硬編碼??删幊毯陀簿幋a的復(fù)位脈沖?度。防?apb_wdt計(jì)數(shù)器意外重新啟動(dòng)。防?意外禁?apb_wdt。使?外部暫停使能信號(hào)可選擇?持暫停模式。測(cè)試模式信號(hào)可減少功能測(cè)試所需的時(shí)間。可選擇?持異步外部定時(shí)器時(shí)鐘。啟?此功能后,即使APB總線時(shí)鐘關(guān)閉,也可以?成定時(shí)器中斷和系統(tǒng)復(fù)位。APB-WDT控制器功能apb_wdt是APB從外設(shè),可?于防?SoC中的沖突部件或程序可能導(dǎo)致的系統(tǒng)鎖定。該組件可以根據(jù)??定義的選項(xiàng)進(jìn)?配置、綜合和編程。圖4.4.1給出了系統(tǒng)中使?的apb_wdt外設(shè)的示例。圖4.4.1apb_wdt示例柜臺(tái)apb_wdt從預(yù)設(shè)(超時(shí))值按降序計(jì)數(shù)到零。當(dāng)計(jì)數(shù)器達(dá)到零時(shí),根據(jù)所選的輸出響應(yīng)模式,會(huì)發(fā)?系統(tǒng)復(fù)位或中斷。當(dāng)WDT_ASYNC_CLK_MODE_ENABLE=1時(shí),當(dāng)定時(shí)器計(jì)數(shù)器翻轉(zhuǎn)到其最?值時(shí),wdt_intr與內(nèi)部定時(shí)器時(shí)鐘域中斷(irq_tc)?起置位。?旦在pclk域(irq_pc)中同步并檢測(cè)到邊沿,定時(shí)器時(shí)鐘域中斷就會(huì)在內(nèi)部清除。當(dāng)計(jì)數(shù)器達(dá)到零時(shí),它會(huì)回繞到選定的超時(shí)值并繼續(xù)遞減。??可以將計(jì)數(shù)器重新啟動(dòng)到其初始值。這是通過(guò)隨時(shí)寫(xiě)?重啟寄存器來(lái)編程的。重新啟動(dòng)看?狗計(jì)數(shù)器的過(guò)程有時(shí)被稱為踢狗。作為防?意外重啟的安全功能,必須將值0x76寫(xiě)?當(dāng)前計(jì)數(shù)器值寄存器(WDT_CRR)。中斷apb_wdt可以編程為在發(fā)?超時(shí)時(shí)?成中斷(然后系統(tǒng)復(fù)位)。當(dāng)將1寫(xiě)?看?狗定時(shí)器控制寄存器(WDT_CR)的響應(yīng)模式字段(RMOD,位1)時(shí),apb_wdt會(huì)?成中斷。當(dāng)WDT_NEW_RMOD=0時(shí),如果在第?次超時(shí)發(fā)?時(shí)中斷未清除,則會(huì)?成系統(tǒng)復(fù)位。當(dāng)WDT_NEW_RMOD=1時(shí),即使在第?次超時(shí)發(fā)?時(shí)中斷被清除,也會(huì)產(chǎn)?系統(tǒng)復(fù)位。圖4.4.2-1顯?了如何根據(jù)WDT_ASYNC_CLK_MODE_ENABLE的值?成頂層看?狗定時(shí)器中斷(wdt_intr)。當(dāng)apb_wdt配置為?持異步定時(shí)器時(shí)鐘時(shí),DW_apb_wdt設(shè)計(jì)中有兩個(gè)時(shí)鐘域;即定時(shí)器時(shí)鐘域(tclk)和APB時(shí)鐘域(pclk)。因此,中斷的?成還取決于為WDT_ASYNC_CLK_MODE_ENABLE參數(shù)配置的值。圖4.4.2-1定時(shí)器中斷產(chǎn)?當(dāng)WDT_ASYNC_CLK_MODE_ENABLE=0時(shí),只有在pclk域(irq_pc)中檢測(cè)到內(nèi)部定時(shí)器時(shí)鐘域中斷信號(hào)(irq_tc)邊沿后,wdt_intr才會(huì)置位。因此,在此配置中,當(dāng)pclk關(guān)閉時(shí),?法產(chǎn)?WDT中斷。DW_apb_wdt可以編程為在發(fā)?超時(shí)時(shí)?成中斷(然后系統(tǒng)復(fù)位)。當(dāng)將1寫(xiě)?看?狗定時(shí)器控制寄存器(WDT_CR)的響應(yīng)模式字段(RMOD,位1)時(shí),apb_wdt會(huì)?成中斷。當(dāng)WDT_NEW_RMOD=0時(shí),如果在第?次超時(shí)發(fā)?時(shí)中斷未清除,則會(huì)?成系統(tǒng)復(fù)位。當(dāng)WDT_NEW_RMOD=1時(shí),即使在第?次超時(shí)發(fā)?時(shí)中斷被清除,也會(huì)產(chǎn)?系統(tǒng)復(fù)位。apb_wdt從預(yù)設(shè)(超時(shí))值按降序計(jì)數(shù)到零。當(dāng)計(jì)數(shù)器達(dá)到零時(shí),根據(jù)所選的輸出響應(yīng)模式,會(huì)發(fā)?系統(tǒng)復(fù)位或中斷。當(dāng)WDT_ASYNC_CLK_MODE_ENABLE=1時(shí),當(dāng)定時(shí)器計(jì)數(shù)器翻轉(zhuǎn)到其最?值時(shí),wdt_intr與內(nèi)部定時(shí)器時(shí)鐘域中斷(irq_tc)?起置位。?旦在pclk域(irq_pc)中同步并檢測(cè)到邊沿,定時(shí)器時(shí)鐘域中斷就會(huì)在內(nèi)部清除。當(dāng)計(jì)數(shù)器達(dá)到零時(shí),它會(huì)回繞到選定的超時(shí)值并繼續(xù)遞減。??可以將計(jì)數(shù)器重新啟動(dòng)到其初始值。這是通過(guò)隨時(shí)寫(xiě)?重啟寄存器來(lái)編程的。重新啟動(dòng)看?狗計(jì)數(shù)器的過(guò)程有時(shí)被稱為踢狗。作為防?意外重啟的安全功能,必須將值0x76寫(xiě)?當(dāng)前計(jì)數(shù)器值寄存器(WDT_CRR)。圖3-2顯?了如何根據(jù)WDT_ASYNC_CLK_MODE_ENABLE的值?成頂層看?狗定時(shí)器中斷(wdt_intr)。當(dāng)pb_wdt配置為?持異步定時(shí)器時(shí)鐘(WDT_ASYNC_CLK_MODE_ENABLE=1)時(shí),apb_wdt設(shè)計(jì)中有兩個(gè)時(shí)鐘域;即定時(shí)器時(shí)鐘域(tclk)和APB時(shí)鐘域(pclk)。因此,中斷的?成還取決于為WDT_ASYNC_CLK_MODE_ENABLE參數(shù)配置的值。定時(shí)器時(shí)鐘域中斷和邊沿檢測(cè)APB時(shí)鐘域中斷進(jìn)?“或”運(yùn)算以?成最終中斷輸出(wdt_intr)。因此,?旦定時(shí)器計(jì)數(shù)器翻轉(zhuǎn)到其最?值,wdt_intr就會(huì)置位,并且它會(huì)保持置位狀態(tài),直到通過(guò)以下?式將其從pclk域中清除:讀取WDT_EOI寄存器或?qū)?x76寫(xiě)?WDT_CRR寄存器(看?狗計(jì)數(shù)器重新啟動(dòng))。即使pclk被禁?,該邏輯也允許?成看?狗定時(shí)器中斷。wdt_intr保持有效狀態(tài),直到pclk重新啟動(dòng)并且中斷得到服務(wù)。因此,通過(guò)此配置,?需激活系統(tǒng)時(shí)鐘(pclk)即可檢測(cè)看?狗定時(shí)器中斷。圖4.4.2-2顯?了當(dāng)WDT_ASYNC_CLK_MODE_ENABLE=0時(shí)中斷產(chǎn)?和清除的時(shí)序圖。圖4.2.2-2WDT_ASYNC_CLK_MODE_ENABLE=0時(shí)的中斷?成圖4.2.2-3顯?了當(dāng)WDT_ASYNC_CLK_MODE_ENABLE=1時(shí)中斷產(chǎn)?和清除的時(shí)序圖圖4.2.2-3WDT_ASYNC_CLK_MODE_ENABLE=1時(shí)的中斷?成當(dāng)WDT_ASYNC_CLK_MODE_ENABLE=1時(shí)?成wdt_intr中斷,該中斷是異步的,因?yàn)樗趖clk的上升沿置為有效,并在pclk的上升沿置為?效。系統(tǒng)重置當(dāng)將0寫(xiě)?看?狗定時(shí)器控制寄存器(WDT_CR)的輸出響應(yīng)模式字段(RMOD,位1)時(shí),apb_wdt在發(fā)?超時(shí)時(shí)會(huì)?成系統(tǒng)復(fù)位。WDT可以是配置為使其在apb_wdt復(fù)位時(shí)始終啟?。如果是這種情況,它將覆蓋WDT_CR寄存器(WDT使能字段)的位0中寫(xiě)?的任何內(nèi)容。圖4.4.3-1顯?了計(jì)數(shù)器重啟和系統(tǒng)復(fù)位?成的時(shí)序圖。圖4.4.3-1計(jì)數(shù)器重啟和系統(tǒng)復(fù)位如果在看?狗計(jì)數(shù)器達(dá)到零的同時(shí)發(fā)?重啟,則不會(huì)?成系統(tǒng)復(fù)位。當(dāng)WDT_ASYNC_CLK_MODE_ENABLE=1時(shí),系統(tǒng)復(fù)位在定時(shí)器時(shí)鐘域(sys_rst_tc)中?成,并同步到pclk域。?旦在pclk域(sys_rst_pc)中檢測(cè)到邊沿,定時(shí)器域復(fù)位就會(huì)被清除。最終輸出wdt_sys_rst是定時(shí)器時(shí)鐘域復(fù)位和邊沿檢測(cè)pclk域復(fù)位的OR輸出。只要滿?以下條件,它就會(huì)保持有效狀態(tài):2個(gè)pclk周期的synchronizatin_delay+WDT_CR.RPL(編程復(fù)位脈沖?度)即使pclk被禁?,該邏輯也允許檢測(cè)wdt復(fù)位。wdt_sys_rst保持有效狀態(tài),直到pclk重新啟動(dòng),并且預(yù)期的復(fù)位脈沖持續(xù)時(shí)間此后到期。因此,復(fù)位后使pclk可?所需的時(shí)間將進(jìn)?步增加總復(fù)位脈沖?度。圖4.4.3-2顯?了當(dāng)WDT_ASYNC_CLK_MODE_ENABLE=1時(shí)系統(tǒng)復(fù)位產(chǎn)?的時(shí)序圖。圖4.4.3-2系統(tǒng)復(fù)位?成wdt_sys_rst系統(tǒng)復(fù)位在WDT_ASYNC_CLK_MODE_ENABLE=1時(shí)?成,是異步的,因?yàn)樗趖clk的上升沿置位,并在pclk的上升沿置低。4.4.3.1當(dāng)WDT_NEW_RMOD=1時(shí)系統(tǒng)復(fù)位當(dāng)發(fā)?超時(shí)時(shí),即當(dāng)看?狗定時(shí)器控制寄存器(WDT_CR.RMOD)的響應(yīng)模式字段設(shè)置為1時(shí),apb_wdt可以編程為?成wdt_intr(然后系統(tǒng)復(fù)位)。圖4.4.3.1-1顯?了WDT_NEW_RMOD設(shè)置為0時(shí)的時(shí)序圖,這是默認(rèn)的系統(tǒng)復(fù)位?為,其中如果在第?次超時(shí)發(fā)?時(shí)中斷未清除,則apb_wdt會(huì)?成系統(tǒng)復(fù)位。圖4.4.3.1-1WDT_NEW_RMOD=0時(shí)WDT系統(tǒng)復(fù)位時(shí)序圖當(dāng)WDT_NEW_RMOD設(shè)置為1時(shí),?論wdt_intr是否被清零(通過(guò)讀取WDT_EOI寄存器),如果發(fā)?第?次超時(shí),apb_wdt都會(huì)產(chǎn)?系統(tǒng)復(fù)位。對(duì)于后續(xù)超時(shí),將?成中斷和系統(tǒng)復(fù)位。然?,可以通過(guò)執(zhí)?重啟來(lái)避免產(chǎn)?系統(tǒng)復(fù)位,即在第?次或后續(xù)超時(shí)發(fā)?之前將0x76寫(xiě)?WDT_CRR寄存器。僅當(dāng)通過(guò)配置(即,if(WDT_HC_RMOD==1&&WDT_DFLT_RMOD==1))或通過(guò)編程WDT_CR將響應(yīng)模式設(shè)置為1時(shí),才會(huì)啟?系統(tǒng)復(fù)位(當(dāng)WDT_NEW_RMOD=1時(shí))的這種?為。RMOD寄存器位設(shè)置為1。圖4.4.3.1-2和圖4.4.3.1-3分別顯?了wdt_intr在第?次超時(shí)期間被清除和在第?次超時(shí)期間未清除時(shí)的WDT系統(tǒng)復(fù)位時(shí)序圖。圖4.4.3.1-2第?次超時(shí)期間wdt_intr被清零時(shí)的WDT系統(tǒng)復(fù)位時(shí)序圖圖4.4.3.1-3第?次超時(shí)期間wdt_intr未清零時(shí)的WDT系統(tǒng)復(fù)位時(shí)序圖暫停模式apb_wdt可配置為在接?上包含暫停信號(hào),該信號(hào)在系統(tǒng)暫停時(shí)“凍結(jié)”看?狗計(jì)數(shù)器。在暫停模式期間,如果計(jì)數(shù)器凍結(jié)在零計(jì)數(shù),則不會(huì)?成中斷或系統(tǒng)復(fù)位。當(dāng)暫停被移除時(shí),中斷或系統(tǒng)復(fù)位在時(shí)鐘的下?個(gè)上升沿被置位。如果wdt_clk_en存在,則僅當(dāng)wdt_clk_en置位時(shí)才會(huì)?成中斷或復(fù)位。如果取消暫停時(shí)計(jì)數(shù)器不為零,則不會(huì)?成中斷或系統(tǒng)復(fù)位。外部時(shí)鐘使能apb_wdt可配置為包含外部時(shí)鐘使能(wdt_clk_en),?于控制計(jì)數(shù)器遞減的速率。當(dāng)計(jì)數(shù)器達(dá)到零時(shí),必須置位wdt_clk_en才能?成中斷或系統(tǒng)復(fù)位。如果在wdt_clk_en為低電平時(shí)發(fā)?重啟,則重啟會(huì)在內(nèi)部延?,直到wdt_clk_en的下?個(gè)上升沿,以便可以看到它并可以重新啟動(dòng)計(jì)數(shù)器。中斷的清除與時(shí)鐘使能?關(guān),但只有當(dāng)時(shí)鐘使能為?電平時(shí)才會(huì)產(chǎn)?中斷和復(fù)位。當(dāng)WDT_ASYNC_CLK_MODE_ENABLE=1時(shí),不能包含使能的外部時(shí)鐘。復(fù)位脈沖?度復(fù)位脈沖?度是系統(tǒng)復(fù)位有效的pclk周期數(shù)。當(dāng)產(chǎn)?系統(tǒng)復(fù)位時(shí),它會(huì)在復(fù)位脈沖?度加上兩個(gè)同步延遲周期指定的周期數(shù)內(nèi)保持有效狀態(tài),或者直到系統(tǒng)復(fù)位(通過(guò)復(fù)位控制器,參?第35?的圖3-1)。?旦計(jì)數(shù)器被置位,重新啟動(dòng)就不會(huì)影響系統(tǒng)復(fù)位。超時(shí)時(shí)間值apb_wdt可以配置為具有固定或??定義的超時(shí)期限范圍。在這兩種情況下,可以選擇的值都受到WDT計(jì)數(shù)器寬度的限制。如果選擇的超時(shí)周期范圍?于計(jì)數(shù)器寬度,則超時(shí)周期將被截?cái)嘁赃m合計(jì)數(shù)器寬度。對(duì)于??定義的超時(shí)時(shí)間范圍,該值在配置時(shí)受到限制,并且不接受?于計(jì)數(shù)的值。APB接?apb_wdt外設(shè)具有標(biāo)準(zhǔn)AMBA2.0APB接?,?于讀取和寫(xiě)?內(nèi)部寄存器。主機(jī)處理器通過(guò)AMBAAPB2.0/3.0/4.0接?訪問(wèn)apb_wdt外設(shè)上的內(nèi)部寄存器。該外設(shè)?持8、16或32位的APB數(shù)據(jù)總線寬度,通過(guò)APB_DATA_WIDTH參數(shù)設(shè)置。apb_wdt內(nèi)的數(shù)據(jù)、控制和狀態(tài)寄存器是字節(jié)可尋址的。apb_wdt中控制或狀態(tài)寄存器(WDT組件版本寄存器、組件參數(shù)寄存器和組件類型寄存器除外)的最?寬度為8位。因此,如果APB數(shù)據(jù)總線為8、16,或32位寬,對(duì)apb_wdt控制和狀態(tài)寄存器的所有讀寫(xiě)操作僅需要?次APB訪問(wèn)。WDT_CCVR寄存器寬度取決于WDT_CNT_WIDTH參數(shù),該參數(shù)可以在8到32之間變化。根據(jù)定時(shí)器的寬度和APB數(shù)據(jù)總線的寬度(APB_DATA_WIDTH),APB接?可能需要對(duì)前?提到的寄存器執(zhí)?單次或多次訪問(wèn)。4.4.8.1APB3.0?持apb_wdt寄存器接?符合AMBAAPB2.0、APB3.0和APB4.0規(guī)范。SLAVE_INTERFACE_TYPE參數(shù)?于選擇寄存器接?的APB接?類型。為了符合AMBAAPB3.0規(guī)范,apb_wdt?持以下信號(hào):PREADY?該信號(hào)始終設(shè)置為其默認(rèn)值,對(duì)于所有APB進(jìn)程來(lái)說(shuō)該值都為?電平。PSLVERR?當(dāng)訪問(wèn)受保護(hù)的寄存器?沒(méi)有相關(guān)信息時(shí),該信號(hào)會(huì)發(fā)出錯(cuò)誤以下部分討論對(duì)apb_wdt外設(shè)的APB3和APB4寄存器訪問(wèn):授權(quán)級(jí)別。當(dāng)SLVERR_RESP_EN參數(shù)設(shè)置為1時(shí),PSLVERR信號(hào)被使能,以便apb_wdt提供來(lái)?寄存器接?的任何從機(jī)錯(cuò)誤響應(yīng)。4.4.8.2APB4.0?持apb_wdt寄存器接?符合AMBAAPB2.0、APB3.0和APB4.0規(guī)范。為了符合AMBAAPB4.0規(guī)范,apb_wdt?持以下信號(hào):PSTRB?該信號(hào)指定APB4寫(xiě)選通總線。在ABP4.0寄存器接?的寫(xiě)事務(wù)中,PSTRB信號(hào)指?PWDATA字節(jié)的有效性。apb_wdt有選擇地寫(xiě)?PSTRB信號(hào)中相應(yīng)位為?的尋址寄存器的字節(jié)。由相應(yīng)PSTRB位選通為低電平的字節(jié)不會(huì)被修改。PPROT?該信號(hào)?持APB4協(xié)議的保護(hù)功能。僅WDT_TORR寄存器?持APB4保護(hù)功能。保護(hù)級(jí)別寄存器(WDT_PROT_LEVEL)定義了APB4保護(hù)級(jí)別,即僅當(dāng)PPROT權(quán)限?于保護(hù)級(jí)別寄存器中編程的保護(hù)權(quán)限時(shí)才更新受保護(hù)寄存器(WDT_TORR)(?表4.2.8.1-1)。否則,如果PSLVERR_RESP_EN設(shè)置為?,則PSLVERR被置位并且受保護(hù)的寄存器不會(huì)更新。如果PSLVERR_RESP_EN為低電平,則不會(huì)實(shí)現(xiàn)保護(hù)功能和PSLVERR?成邏輯。PSLVERR為PPROT和WDT_PROT_LEVEL組合置位,如表4.4.8.1-1所?。對(duì)于所有其他組合,PSLVERR被驅(qū)動(dòng)為低電平。表4.4.8.1-1PPROT級(jí)別、WDT_PROT_LEVEL中編程的保護(hù)級(jí)別和從機(jī)錯(cuò)誤響應(yīng)4.4.8.3從APB從站讀取和寫(xiě)?當(dāng)寫(xiě)?和讀取DesignWareAPB從站時(shí),您應(yīng)考慮以下事項(xiàng):如果可能的話,APB外設(shè)的??應(yīng)始終設(shè)置為等于APB數(shù)據(jù)總線的??。與ahb不同,APB總線沒(méi)有傳輸??或字節(jié)通道的概念。APB從屬?系統(tǒng)是?端字節(jié)序;apb執(zhí)?從?端AHB到?端APB的轉(zhuǎn)換。所有APB從機(jī)編程寄存器均按32位邊界對(duì)?,與APB總線?關(guān)最?APB_DATA_WIDTH為32位。?于此值的寄存器在內(nèi)存映射中占?多個(gè)位置。apb不返回任何ERROR、SPLIT或RETRY響應(yīng);它總是向AHB返回OKAY響應(yīng)。APB從機(jī)不需要完整的32位地址總線paddr。從設(shè)備甚?包括低位,盡管它們實(shí)際上并未在32位或16位系統(tǒng)中使?。4.2.8.4從未使?的位置讀取從特定寄存器中未使?的位置或未使?的位讀取總是返回零。與會(huì)返回錯(cuò)誤的AHB從站接?不同,APB從站中沒(méi)有錯(cuò)誤機(jī)制,因此apb中也沒(méi)有錯(cuò)誤機(jī)制。圖4.4.8.4-1顯?了寄存器映射與三個(gè)可能的APB_DATA_WIDTH值的讀/寫(xiě)操作之間的關(guān)系:8位、16位和32位APB總線。圖4.4.8.4-1不同APB總線數(shù)據(jù)寬度的讀/寫(xiě)位置4.2.8.532位總線系統(tǒng)對(duì)于32位總線系統(tǒng),所有編程寄存器都可以通過(guò)?次操作來(lái)讀取或?qū)?,如圖4.4.8.4-1所?。因?yàn)樗屑拇嫫鞫嘉挥?2位邊界上,所以在32位總線情況下實(shí)際上不需要paddr[1:0]。但出于可?性?的,這些位仍然存在于配置的代碼中。如果寫(xiě)?不在32位邊界上的地址位置,則底部位將被忽略/不使?。4.2.8.516位總線系統(tǒng)對(duì)于16位總線系統(tǒng),存在兩種情況,如圖4.4.8.4-1所?:要寫(xiě)?或讀取的寄存器?于或等于16位在這種情況下,可以通過(guò)?次事務(wù)來(lái)讀取或?qū)?寄存器。在讀取事務(wù)的情況下,?于16位寬的寄存器在未使?的位中返回零。寫(xiě)??于寄存器寬度的位位置不會(huì)發(fā)?任何事情,即僅將相關(guān)位寫(xiě)?寄存器。要寫(xiě)?或讀取的寄存器>16且<=32位在這種情況下,需要兩個(gè)AHB事務(wù),這?創(chuàng)建兩個(gè)APB事務(wù)來(lái)讀取或?qū)?寄存器。第?個(gè)事務(wù)應(yīng)讀/寫(xiě)低兩個(gè)字節(jié)(半字),第?個(gè)事務(wù)應(yīng)讀/寫(xiě)?半字。因?yàn)榭偩€?次讀取?個(gè)半字,所以在16位總線情況下實(shí)際上不需要paddr[0]。但出于連接?的,這些位仍然存在于配置的代碼中。如果寫(xiě)?不在16位邊界上的地址位置,則底部位將被忽略/不使?。4.2.8.58位總線系統(tǒng)對(duì)于8位總線系統(tǒng),存在三種情況,如圖4.4.8.4-1所?:要寫(xiě)?或讀取的寄存器?于或等于8位在這種情況下,可以通過(guò)?次事務(wù)來(lái)讀取或?qū)?寄存器。在讀取事務(wù)的情況下,?于8位寬的寄存器在未使?的位中返回零。寫(xiě)??于寄存器寬度的位位置不會(huì)發(fā)?任何事情,即僅將相關(guān)位寫(xiě)?寄存器。要寫(xiě)?或讀取的寄存器>8且<=16位在這種情況下,需要兩個(gè)AHB事務(wù),這?創(chuàng)建兩個(gè)APB事務(wù)來(lái)讀取或?qū)?寄存器。第?個(gè)事務(wù)應(yīng)該讀/寫(xiě)低字節(jié),第?個(gè)事務(wù)應(yīng)該讀/寫(xiě)?字節(jié)。要寫(xiě)?或讀取的寄存器>16且<=32位在這種情況下,需要四個(gè)AHB事務(wù),這?創(chuàng)建四個(gè)APB事務(wù)來(lái)讀取或?qū)?寄存器。第?個(gè)事務(wù)應(yīng)該讀/寫(xiě)低字節(jié),第?個(gè)事務(wù)應(yīng)該讀/寫(xiě)第?個(gè)字節(jié),依此類推。由于總線?次讀取?個(gè)字節(jié),因此在8位總線情況下,paddr的所有低位都會(huì)被解碼。RTL代碼的功能進(jìn)行驗(yàn)證當(dāng)今數(shù)字電路設(shè)計(jì)中,RTL(RegisterTransferLevel)代碼已經(jīng)成為了一種廣泛使用的設(shè)計(jì)描述語(yǔ)言。驗(yàn)證是數(shù)字電路設(shè)計(jì)過(guò)程中至關(guān)重要的一環(huán),它確保設(shè)計(jì)滿足規(guī)范要求,并且在實(shí)際運(yùn)行中能夠正確地完成所預(yù)期的功能。因此,對(duì)RTL代碼進(jìn)行功能驗(yàn)證是保證設(shè)計(jì)質(zhì)量和可靠性的重要步驟。5.1.隨機(jī)讀取操作只有當(dāng)控制器支持從存儲(chǔ)器數(shù)組隨機(jī)讀取數(shù)據(jù)時(shí),它才能支持代碼在位執(zhí)行(XIP)。這種隨機(jī)讀取能力是通過(guò)使用以下方法提出的控制器實(shí)現(xiàn)的。為隨機(jī)讀取數(shù)據(jù)提供了一個(gè)讀取數(shù)據(jù)命令寄存器。默認(rèn)讀取數(shù)據(jù)命令值設(shè)置在此寄存器中。這個(gè)默認(rèn)命令可以由軟件設(shè)置和更改。當(dāng)主控制器從閃存數(shù)組地址空間讀取數(shù)據(jù)時(shí),使用讀取數(shù)據(jù)的控制器命令寄存器中的值作為當(dāng)前命令??刂破鲝腁XI4總線獲取其它控制信息,例如地址,數(shù)字根據(jù)長(zhǎng)度和突發(fā)類型。它使用這些信息來(lái)讀取閃存內(nèi)存。通過(guò)這種方法,SPI內(nèi)存控制器克服了加載多個(gè)寄存器的額外延遲處罰,并支持默認(rèn)設(shè)置的快速處罰XIP。5.2.隨機(jī)寫(xiě)入操作類似于隨機(jī)讀取數(shù)據(jù)的方法,在控制器中提供了一個(gè)寫(xiě)入數(shù)據(jù)命令,用于隨機(jī)寫(xiě)入數(shù)據(jù)寄存器。默認(rèn)寫(xiě)入數(shù)據(jù)命令值設(shè)置在其中。該默認(rèn)命令也可以由軟件更改。當(dāng)主控當(dāng)制器將數(shù)據(jù)寫(xiě)入閃存數(shù)據(jù)數(shù)組的地址空間時(shí),在數(shù)據(jù)命令寄存器中使用控制器寫(xiě)入閃存內(nèi)存的值作為當(dāng)前命令執(zhí)行。當(dāng)?shù)貙?shí)施本文的設(shè)計(jì)XIP(Execute-in-place)該模型允許將地址發(fā)送到設(shè)備,然后在兩個(gè)并行接收引腳上的數(shù)據(jù)。XIP該模型只需要一個(gè)地址來(lái)執(zhí)行更快的內(nèi)存讀取操作,而不是生命命令代碼和地址,它為應(yīng)用程序提供了極大的靈活性,可節(jié)省指令費(fèi)用,減少隨機(jī)訪問(wèn)時(shí)間等。如圖所示,XIP模式模擬波形。由圖可以看出,讀取數(shù)據(jù)時(shí),XIP使能位置高的模式(xip_en=1、高電平有效),即XIP模式已開(kāi)啟,在雙線模式下(spi_dual_mode=1)快速讀取數(shù)據(jù),通過(guò)仿真驗(yàn)證,實(shí)現(xiàn)設(shè)計(jì)目標(biāo)。pclk表示APB的時(shí)鐘。presetn是APB復(fù)位信號(hào)。Pwdata表示APB編寫(xiě)數(shù)據(jù)總線。在編寫(xiě)周期中,總線控制(橋接單元)驅(qū)動(dòng)。penable表示APB使能控制。在單個(gè)PCLK用于時(shí)序讀取或?qū)懭氩僮鞯闹芷趦?nèi)激活。pwrite表示讀控制。paddr表示APB地址總線。使用低地址總線8解碼寄存器的位置。psel是apbAPB連續(xù)兩次選擇外設(shè)PCLK周期。高電通常被激活,當(dāng)它被激活時(shí),表示外部設(shè)置已被選中進(jìn)行讀寫(xiě)操作。驗(yàn)證工具DC驗(yàn)證工具(DesignCompilerVerificationTool)是一種常用的硬件設(shè)計(jì)驗(yàn)證工具,用于驗(yàn)證和優(yōu)化數(shù)字電路設(shè)計(jì)。它是由Synopsys公司開(kāi)發(fā)的一款綜合工具,用于驗(yàn)證設(shè)計(jì)的功能正確性、時(shí)序約束、功耗和面積等方面的性能。DC驗(yàn)證工具在設(shè)計(jì)流程的早期階段使用,可以通過(guò)對(duì)設(shè)計(jì)進(jìn)行邏輯綜合、約束條件設(shè)置和優(yōu)化來(lái)實(shí)現(xiàn)設(shè)計(jì)的驗(yàn)證和驗(yàn)證目標(biāo)的達(dá)成。下面是DC驗(yàn)證工具的一些主要功能和特點(diǎn):1.邏輯綜合:DC驗(yàn)證工具通過(guò)將高級(jí)RTL設(shè)計(jì)轉(zhuǎn)換為門級(jí)電路描述,實(shí)現(xiàn)了邏輯結(jié)構(gòu)的優(yōu)化和綜合。這有助于識(shí)別和糾正設(shè)計(jì)中的潛在問(wèn)題,并提供更好的電路性能。2.約束條件設(shè)置:DC驗(yàn)證工具允許用戶設(shè)置設(shè)計(jì)的時(shí)序約束條件,以確保電路在特定的時(shí)鐘頻率下正常工作。通過(guò)正確設(shè)置約束條件,可以避免時(shí)序故障和時(shí)鐘偏移等問(wèn)題。3.優(yōu)化和面積控制:DC驗(yàn)證工具采用多種優(yōu)化算法,幫助設(shè)計(jì)者優(yōu)化電路的性能和面積。它可以根據(jù)用戶定義的約束條件自動(dòng)進(jìn)行綜合優(yōu)化,以達(dá)到更好的電路性能和更小的芯片面積。4.功耗分析:DC驗(yàn)證工具還提供了功耗分析的功能,可以評(píng)估設(shè)計(jì)在不同工作模式和負(fù)載條件下的功耗情況。這有助于設(shè)計(jì)者優(yōu)化電路的功耗,并滿足功耗約束。綜上所述,DC驗(yàn)證工具是一種用于驗(yàn)證和優(yōu)化數(shù)字電路設(shè)計(jì)的綜合工具。它提供了邏輯綜合、約束條件設(shè)置、優(yōu)化和面積控制以及功耗分析等功能,幫助設(shè)計(jì)者確保設(shè)計(jì)的功能正確性、時(shí)序約束和性能目標(biāo)的實(shí)現(xiàn)。APB-WDT控制器性能驗(yàn)證7.1硬件測(cè)試環(huán)境搭建如圖所?,Verilogapb_wdt測(cè)試平臺(tái)包括被測(cè)設(shè)計(jì)(DUT)、AHB和APB橋總線模型以及Verashell的實(shí)例。Verashell包含?個(gè)AHB主總線功能模型(BFM)、兩個(gè)AHB從BFM、?個(gè)AHB監(jiān)視器、APB從BFM、?個(gè)APB監(jiān)視器、測(cè)試激勵(lì)、BFM配置和測(cè)試結(jié)果。AHB監(jiān)視器監(jiān)視來(lái)?AHB主BFM和從BFM的活動(dòng);APB監(jiān)視器監(jiān)督APB從站BFM的活動(dòng)。·16··PAGE18·PAGE17.2實(shí)驗(yàn)結(jié)果與分析APB-WDT控制器的核心作用在于提高系統(tǒng)的穩(wěn)定性與可靠性,通過(guò)監(jiān)控和重置因軟件錯(cuò)誤或其他原因卡死的系統(tǒng),保障正常運(yùn)行。它通過(guò)與APB接口的無(wú)縫集成,確保數(shù)據(jù)傳輸?shù)母咝Ш图嫒菪?,同時(shí)通過(guò)精確的定時(shí)機(jī)制,可配置的超時(shí)行為,以及低功耗設(shè)計(jì),滿足不同應(yīng)用場(chǎng)景的需求。在設(shè)計(jì)和驗(yàn)證過(guò)程中,通過(guò)仿真、時(shí)序分析、面積以及功耗評(píng)估,確保了控制器的功能正確性、時(shí)序準(zhǔn)確性、穩(wěn)定性、可靠性和效率。這樣的設(shè)計(jì)不僅提升了系統(tǒng)的自我恢復(fù)能力,降低了系統(tǒng)故障的風(fēng)險(xiǎn),也優(yōu)化了功耗,特別是對(duì)于便攜式和低功耗設(shè)備而言,具有重要的意義??傊?,APB-WDT控制器是提升系統(tǒng)整體性能和可靠性的關(guān)鍵組件。APB-WDT控制器的設(shè)計(jì)與驗(yàn)證是微電子和嵌入式系統(tǒng)領(lǐng)域中的一個(gè)關(guān)鍵環(huán)節(jié)。APB是一種用于微控制器內(nèi)部的高帶寬接口,而WDT(看門狗計(jì)時(shí)器)是一種用于檢測(cè)和恢復(fù)系統(tǒng)異常(如軟件死鎖)的重要機(jī)制。設(shè)計(jì)和驗(yàn)證APB-WDT控制器涉及到確保其在各種條件下都能可靠工作,從而提高整個(gè)系統(tǒng)的穩(wěn)定性和可靠性。下面是設(shè)計(jì)和驗(yàn)證APB-WDT控制器時(shí)可能考慮的一些關(guān)鍵點(diǎn)和結(jié)論。1.接口兼容性:確保WDT控制器能夠無(wú)縫地與APB接口集成,這包括了數(shù)據(jù)傳輸?shù)臅r(shí)序、協(xié)議以及信號(hào)電平的兼容性。2.定時(shí)精度:WDT的定時(shí)器精度對(duì)于系統(tǒng)恢復(fù)是至關(guān)重要的。設(shè)計(jì)時(shí)需要考慮振蕩器的穩(wěn)定性和計(jì)數(shù)器的分辨率。3.可配置性:提供足夠的配置選項(xiàng)以適應(yīng)不同的應(yīng)用場(chǎng)景,比如定時(shí)周期、超時(shí)行為(如系統(tǒng)重置或中斷觸發(fā))等。4.低功耗:對(duì)于便攜式或低功耗設(shè)備,WDT控制器的設(shè)計(jì)需要盡可能減少電源消耗。5.測(cè)試和診斷功能:集成測(cè)試模式,以便在系統(tǒng)級(jí)測(cè)試(System-LevelTesting,SLT)中驗(yàn)證WDT功能的正確性和可靠性。驗(yàn)證結(jié)論1.功能驗(yàn)證:通過(guò)仿真和原型板測(cè)試,驗(yàn)證WDT控制器滿足所有功能要求,包括在預(yù)定時(shí)間內(nèi)檢測(cè)系統(tǒng)掛起并執(zhí)行相應(yīng)的恢復(fù)措施。2.時(shí)序驗(yàn)證:確認(rèn)WDT控制器與APB接口之間的時(shí)序是準(zhǔn)確的,沒(méi)有違反接口協(xié)議的情況。從上圖可以看出WDT控制器與APB接口之間數(shù)據(jù)到達(dá)時(shí)間為12.16時(shí)鐘clk1(上升沿)為20.0020.00時(shí)鐘網(wǎng)絡(luò)延遲(理想)為3.0023.00時(shí)鐘不確定性-0.3022.70數(shù)據(jù)所需時(shí)間22.49數(shù)據(jù)所需時(shí)間22.49數(shù)據(jù)到達(dá)時(shí)間-12.16均符合APB-WDT控制器的設(shè)計(jì)標(biāo)準(zhǔn)3.所需面積:確認(rèn)WDT控制器與APB接口所需的面積圖中所知時(shí)鐘clk1的關(guān)鍵路徑長(zhǎng)度為9.16,關(guān)鍵路徑長(zhǎng)clk周期為20.00違規(guī)路徑數(shù),最嚴(yán)重的持有違規(guī),總持有違規(guī),暫停違規(guī)次數(shù)均為0.00,組合面積為3529.881603,Buf/Inv區(qū)域?yàn)椋?66.636806,單元格區(qū)域?yàn)?710.553581設(shè)計(jì)面積為8710.553581,總體編譯時(shí)間為8.19整體編譯掛鐘時(shí)間為8.48。均符合APB-WDT控制器的設(shè)計(jì)標(biāo)準(zhǔn)功耗分析:驗(yàn)證設(shè)計(jì)滿足低功耗要求,特別是在待機(jī)模式下的功耗。由上圖可知電池內(nèi)部電源=235.1096uW(98%),總動(dòng)態(tài)功率=239.1674uW(100%),電池泄漏功率=135.8190nW,凈開(kāi)關(guān)功率=4.0579uW(2%)均符合APB-WDT控制器的設(shè)計(jì)標(biāo)準(zhǔn)完成這些設(shè)計(jì)和驗(yàn)證工作后,可以得出結(jié)論,即APB-WDT控制器設(shè)計(jì)是成功的,能夠提高系統(tǒng)的穩(wěn)定性和可靠性。然而,需要注意的是,這只是一個(gè)大致的框架,實(shí)際的設(shè)計(jì)和驗(yàn)證工作會(huì)更加詳細(xì)和復(fù)雜,可能還會(huì)涉及到更多的考慮因素和驗(yàn)證步驟。
總結(jié)與展望總結(jié):在本論文中,我們?cè)敿?xì)探討了APB-WDT控制器的設(shè)計(jì)與驗(yàn)證過(guò)程,旨在通過(guò)提升嵌入式系統(tǒng)的可靠性和穩(wěn)定性,應(yīng)對(duì)系統(tǒng)可能遭遇的軟件錯(cuò)誤、硬件故障或外部干擾等異常情況。通過(guò)深入分析APB總線和WDT定時(shí)器的基本原理和特性,我們?cè)O(shè)計(jì)了一個(gè)能夠在系統(tǒng)異常時(shí)自動(dòng)重啟的高效APB-WDT控制器。控制器設(shè)計(jì)考慮了功能需求、接口設(shè)計(jì)、狀態(tài)機(jī)設(shè)計(jì)等多個(gè)方面,并通過(guò)模擬仿真和驗(yàn)證方法確保了設(shè)計(jì)的正確性和可靠性。仿真結(jié)果證明了控制器能夠正常工作,并能夠及時(shí)重置異常狀態(tài)的系統(tǒng)。本論文的
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 各種奧數(shù)考試題及答案
- 高速飆車考試題及答案大全
- 2025江蘇無(wú)錫市第二人民醫(yī)院編外員工招聘80人考前自測(cè)高頻考點(diǎn)模擬試題附答案詳解(模擬題)
- 鋼結(jié)構(gòu)簡(jiǎn)單考試題及答案
- 2025年日語(yǔ)專業(yè)考核題庫(kù)及答案
- 南通面試語(yǔ)文真題及答案
- 食品安全誠(chéng)信承諾責(zé)任書(shū)(6篇)
- 傳統(tǒng)技藝革新承諾書(shū)7篇
- 浙江省寧波市聯(lián)合教研體2025-2026學(xué)年高一上學(xué)期10月聯(lián)考地理試題(含答案)
- 項(xiàng)目管理進(jìn)度監(jiān)控預(yù)警通知模板
- 低壓電工試題庫(kù)-含答案
- 非標(biāo)自動(dòng)化設(shè)備項(xiàng)目進(jìn)度表
- 【幼兒自主游戲中科學(xué)探究活動(dòng)實(shí)踐研究文獻(xiàn)綜述1900字】
- 肝膿腫的診斷和治療
- YY 9706.102-2021醫(yī)用電氣設(shè)備第1-2部分:基本安全和基本性能的通用要求并列標(biāo)準(zhǔn):電磁兼容要求和試驗(yàn)
- GB 7691-2003涂裝作業(yè)安全規(guī)程安全管理通則
- GA 36-2018中華人民共和國(guó)機(jī)動(dòng)車號(hào)牌
- 危險(xiǎn)化學(xué)品雙重預(yù)防機(jī)制培訓(xùn)課件
- 跌倒墜床原因分析預(yù)防措施
- 52206馬工程組織行為學(xué)課件
- 各類食物營(yíng)養(yǎng)與配餐(蛋類的營(yíng)養(yǎng))課件
評(píng)論
0/150
提交評(píng)論