日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁(yè) > EDA > 電子設(shè)計(jì)自動(dòng)化
[導(dǎo)讀]上一篇主要講述了soc的骨架,crossbar互聯(lián)網(wǎng)路?,F(xiàn)在來講soc的神經(jīng)末梢,它們依附在骨架上,受和調(diào)控制,并將外部信息分享給核心以及其他成員。它是什么呢?

上一篇主要講述了soc的骨架,crossbar互聯(lián)網(wǎng)路。現(xiàn)在來講soc的神經(jīng)末梢,它們依附在骨架上,受和調(diào)控制,并將外部信息分享給核心以及其他成員。它是什么呢?

它就是我們所說的標(biāo)準(zhǔn)總線。soc上所有模塊想要被核心控制,都需要掛載到crossbar上,以便cpu下配置,以及cpu和dma進(jìn)行數(shù)據(jù)傳輸。我們以最簡(jiǎn)單的APB總線入手,來進(jìn)一步了解標(biāo)準(zhǔn)總線的工作原理。

1、APB協(xié)議簡(jiǎn)介

APB(Advanced Peripheral Bus) 作為高級(jí)外設(shè)總線是AMBA協(xié)議之一,也是最基本的總線協(xié)議。按照ARM官方定義,APB是一種低成本的接口協(xié)議,可以實(shí)現(xiàn)低功耗以及精簡(jiǎn)的接口設(shè)計(jì),降低接口設(shè)計(jì)的復(fù)雜度。

APB協(xié)議不支持流水線設(shè)計(jì),它主要應(yīng)用在低帶寬設(shè)計(jì)需求的接口中,高性能帶寬需求可以使用AXI總線。APB協(xié)議的實(shí)現(xiàn)與時(shí)鐘沿對(duì)齊,以簡(jiǎn)化外設(shè)接口的設(shè)計(jì)。每次傳輸至少需要消耗兩個(gè)時(shí)鐘周期。

在SOC設(shè)計(jì)中,AHB一般作為IP的配置接口,包括低速IP如I2C,UART,I2S等,也包括DDR,PCIe,Ethernet等高速IP,可以方便的實(shí)現(xiàn)CPU對(duì)外設(shè)IP的寄存器配置。系統(tǒng)中一般會(huì)實(shí)現(xiàn)一個(gè)AXI2APB或者AHB2APB的轉(zhuǎn)換橋?qū)PB口掛載在系統(tǒng)上。

APB的傳輸信號(hào)只與時(shí)鐘上升沿有關(guān),故其具備以下優(yōu)點(diǎn):

·易于實(shí)現(xiàn)高頻操作;

·性能與時(shí)鐘占空比無關(guān);

·靜態(tài)時(shí)序分析簡(jiǎn)單;

·易于與基于上升沿的寄存器訪問;

·易于集成到基于周期的仿真器中。

1.1、APB的發(fā)展史

協(xié)議已經(jīng)從APB2.0發(fā)展到現(xiàn)在的APB4.0。具體區(qū)別如下:

·APB2.0 :該版本協(xié)議定義基本的接口信號(hào)(具體可見端口信號(hào)章節(jié),刪除APB3.0有的接口就行);

·APB3.0:增加信號(hào)PREADY用以指示slave準(zhǔn)備好數(shù)據(jù),增加信號(hào)PSLAVERR代表傳輸錯(cuò)誤;

·APB4.0:增加信號(hào)PROT保護(hù)類型,增加信號(hào)PSTRB來支持byte級(jí)的訪問;

2.0和3.0的區(qū)別是什么?

APB2.0和APB3.0的差別:APB3.0提供了一個(gè)低功耗的接口,并降低了接口的復(fù)雜性。且APB3比APB2增加了兩個(gè)信號(hào):

PREADY:來擴(kuò)展APB傳輸,主要是增加延時(shí);

錯(cuò)誤信號(hào)PSLVERR:來指示傳輸失敗。

3.0和4.0的區(qū)別是什么?

·增加了PROT和PRSTB兩個(gè)信號(hào)。

·PPROT一種保護(hù)信號(hào),用于支持APB上的非安全交易和安全交易。

·PSTRB一個(gè)寫選通信號(hào),用于在寫數(shù)據(jù)總線上進(jìn)行sparse data transfer(稀疏數(shù)據(jù)傳輸)。APB4用的比較少。

APB協(xié)議向下兼容。

目前soc上最常用的是APB2.0和APB3.0,下面我們主要介紹這兩個(gè)版本。

2、APB 2.0

2.1、APB2.0信號(hào)列表

這里需要區(qū)分Master和Slave的區(qū)別,Master是主機(jī),Slave是從機(jī),一個(gè)總機(jī)下可以有n個(gè)從機(jī),所有的數(shù)據(jù)傳輸都是master來控制的,slave來回應(yīng)。這里需要用到APB 1TO多bridge,APB bif不需要仲裁,只需要對(duì)地址的decode,如果地址處于某個(gè)slave的域內(nèi),就拉高它的PSELn等控制信號(hào),n為slave號(hào)。

APB2.0信號(hào)

2.2 、狀態(tài)機(jī)

通過PSELx和PENABLE信號(hào)的變化,使APB總線處于下面3個(gè)狀態(tài):

狀態(tài)機(jī)

·IDLE:PSELx和PENABLE都為0,表明master和slave之間無通信請(qǐng)求,因此處在該狀態(tài)。

·SETUP:當(dāng)master和某一個(gè)slave之間準(zhǔn)備進(jìn)行數(shù)據(jù)傳輸時(shí),會(huì)進(jìn)入該狀態(tài),這時(shí)PSELx=1,PENABLE=0。意思是master選中某一個(gè)slave告訴slave我準(zhǔn)備要和你交換數(shù)據(jù)啦,請(qǐng)你準(zhǔn)備好!這個(gè)狀態(tài)會(huì)保持一個(gè)時(shí)鐘周期然后進(jìn)入ENABLE狀態(tài)。這個(gè)狀態(tài)可以直接給wdata。

·ENABLE:這個(gè)時(shí)候PENABLE拉高,master和某一slave進(jìn)行數(shù)據(jù)傳輸,持續(xù)一個(gè)時(shí)鐘周期。這個(gè)狀態(tài)開始等待rdata。

在自己寫master時(shí),就按照這個(gè)狀態(tài)輸出控制信號(hào)就可以了。

2.3 、寫操作

下面就是寫傳輸?shù)臅r(shí)序圖:

寫時(shí)序

·T1~T2:這個(gè)階段master和某一slave無交互數(shù)據(jù),因此處于IDLE狀態(tài)。

·T2:在該時(shí)刻,master準(zhǔn)備將數(shù)據(jù)寫入某一slave中,因此進(jìn)入SETUP狀態(tài),同時(shí)把某一slave的PSEL信號(hào)拉高,PWRITE信號(hào)拉高,這表示master告訴某一slave:我即將要和你進(jìn)行數(shù)據(jù)傳輸,是我把數(shù)據(jù)寫到你里面,請(qǐng)你準(zhǔn)備好!同時(shí)改變PADDR和PWDATA信號(hào),這是為了滿足下個(gè)上升沿的時(shí)序。

·T2~T3:保持一個(gè)時(shí)鐘周期。

·T3:此時(shí)將PENABLE信號(hào)拉高,真正將wdata寫到addr。

·T3~T4:保持一個(gè)時(shí)鐘周期。

·T4:數(shù)據(jù)傳輸結(jié)束,再次回到初始狀態(tài)。

2.4、讀操作

讀時(shí)序

·T1~T2:這個(gè)階段master和某一slave無交互,因此處于IDLE狀態(tài)

·T2:在該時(shí)刻,master準(zhǔn)備從某一slave中讀取數(shù)據(jù),因此進(jìn)入SETUP狀態(tài),同時(shí)把某一slave的PSEL信號(hào)拉高,PWRITE信號(hào)拉低,這表示master告訴某一slave:我即將要和你進(jìn)行數(shù)據(jù)傳輸,是我要讀你的數(shù)據(jù),請(qǐng)你準(zhǔn)備好!同時(shí)改變PADDR,這是為了滿足下個(gè)T4采樣沿的時(shí)序。

·T2~T3:保持一個(gè)時(shí)鐘周期。

·T3:此時(shí)將PENABLE信號(hào)拉高,表示master正式把某一slave之中的數(shù)據(jù)讀出來,注意,數(shù)據(jù)在ENABLE周期末尾的時(shí)鐘上升沿被采樣,也就是T4時(shí)刻。

·T3~T4:保持一個(gè)時(shí)鐘周期。

·T4:數(shù)據(jù)傳輸結(jié)束,再次回到初始狀態(tài)。

3、APB 3.0

APB 3.0協(xié)議是在APB 2.0協(xié)議的基礎(chǔ)上新加了2個(gè)信號(hào),PREADY和PSLVERR組成的;PREADY信號(hào)是slave設(shè)備用來表示slave是否準(zhǔn)備好的信號(hào),PSLVERR是表示slave接收的數(shù)據(jù)是否有誤。

信號(hào)表

APB3.0信號(hào)

3.1、寫操作

寫操作,無等待

寫無等待時(shí)序

該種情況和APB2.0沒有任何區(qū)別,當(dāng)PENABLE拉高后,會(huì)檢查PREADY是否拉高,如果拉高表示slave當(dāng)前準(zhǔn)備好了數(shù)據(jù)傳輸,則在上升沿3將數(shù)據(jù)寫給salve。

寫操作,有等待

寫有等待時(shí)序

如果PENABLE拉高后,發(fā)現(xiàn)PREADY沒有拉高,則表示slave還沒有準(zhǔn)備好數(shù)據(jù)傳輸,這時(shí)所有信號(hào)保持不變直到PREADY拉高,在上升沿5將數(shù)據(jù)寫入。

3.2、讀操作

讀操作,無等待

讀無等待時(shí)序

該種情況和APB2.0沒有區(qū)別,與寫操作無等待類似,不再細(xì)說

讀操作,有等待

讀有等待時(shí)序

當(dāng)PENABLE拉高后,發(fā)現(xiàn)PREADY信號(hào)還沒有拉高,表示slave還沒有準(zhǔn)備好,這時(shí)會(huì)等待直到PREADY信號(hào)拉高,在上升沿6時(shí)刻采樣數(shù)據(jù)

3.3、錯(cuò)誤反饋

PSLVERR來指示APB傳輸上的錯(cuò)誤情況。讀取和寫入事務(wù)都可能發(fā)生錯(cuò)誤。當(dāng)PSEL,PENABLE和PREADY均為高電平時(shí),僅在APB傳輸?shù)淖詈笠粋€(gè)周期內(nèi)才認(rèn)為PSLVERR有效,其他時(shí)間不考慮PSLVERR。

寫操作

slverr寫時(shí)序

在前面的有等待的寫操作的基礎(chǔ)上,添加PSLVERR,也就是在T4時(shí)刻采樣,發(fā)現(xiàn)PSEL,PENABLE和PREADY均為高電平的前提下,PSLVERR為高,說明這次數(shù)據(jù)傳輸有錯(cuò)誤。軟件決定后續(xù)行為。

讀操作

讀slverr時(shí)序

在前面的有等待的讀操作的基礎(chǔ)上,添加PSLVERR,也就是在T5時(shí)刻采樣,發(fā)現(xiàn)PSEL,PENABLE和PREADY均為高電平的前提下,PSLVERR為高,說明這次數(shù)據(jù)傳輸有錯(cuò)誤。軟件決定后續(xù)行為。

4、APB應(yīng)用場(chǎng)景。

APB因?yàn)槠涿娣e小,接口少,經(jīng)常用在外設(shè)上,為什么呢?

因?yàn)閟oc上外設(shè)很多,包括spi,i2c,uart,timer,wdt等,他們對(duì)時(shí)鐘要求不高,如果使用APB接口,可以省面積,降低芯片的復(fù)雜度。這也是為什么外設(shè)優(yōu)先的標(biāo)準(zhǔn)接口是APB。

這里主要講一些APB在SOC上的特殊用法。

·某些IP預(yù)留用戶控制信號(hào),我們需要用寄存器控制此信號(hào),一般soc每個(gè)子系統(tǒng)都會(huì)有一個(gè)模塊專門做這個(gè)事情,這是就可以選擇APB接口用來配置這些寄存器。

·某些IP,例如SRIO,serdes預(yù)留用戶配置接口,synosys叫做cr配置口,用于配置或者debug。這時(shí)候我們可以自己寫一個(gè)APB2CR的橋。

·核間通訊模塊。通過寫寄存器產(chǎn)生中斷輸出,這時(shí)候可以使用APB接口,因?yàn)橹袛喟l(fā)生次數(shù)少,無性能要求,可以使用APB,簡(jiǎn)單。

·APB轉(zhuǎn)sram接口或者APB轉(zhuǎn)fifo。某些模塊對(duì)外接口是sram,需要我們使用轉(zhuǎn)接橋,根據(jù)性能我們選擇使用合適的AMBA總線;自研模塊數(shù)據(jù)緩存時(shí),涉及到異步處理,這時(shí)候可能用到APB轉(zhuǎn)FIFO的設(shè)計(jì)。

但是他也有局限,帶寬低且不支持pipeline,所以module有這些要求不要使用APB。

這次花時(shí)間也整理了目錄,方便大家觀看,APB真的應(yīng)用很廣泛,大家不管是做設(shè)計(jì)還是驗(yàn)證,都會(huì)經(jīng)常和它打交道,多多了解沒啥壞處。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: 驅(qū)動(dòng)電源

在工業(yè)自動(dòng)化蓬勃發(fā)展的當(dāng)下,工業(yè)電機(jī)作為核心動(dòng)力設(shè)備,其驅(qū)動(dòng)電源的性能直接關(guān)系到整個(gè)系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動(dòng)勢(shì)抑制與過流保護(hù)是驅(qū)動(dòng)電源設(shè)計(jì)中至關(guān)重要的兩個(gè)環(huán)節(jié),集成化方案的設(shè)計(jì)成為提升電機(jī)驅(qū)動(dòng)性能的關(guān)鍵。

關(guān)鍵字: 工業(yè)電機(jī) 驅(qū)動(dòng)電源

LED 驅(qū)動(dòng)電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個(gè)照明設(shè)備的使用壽命。然而,在實(shí)際應(yīng)用中,LED 驅(qū)動(dòng)電源易損壞的問題卻十分常見,不僅增加了維護(hù)成本,還影響了用戶體驗(yàn)。要解決這一問題,需從設(shè)計(jì)、生...

關(guān)鍵字: 驅(qū)動(dòng)電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動(dòng)電源的公式,電感內(nèi)電流波動(dòng)大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關(guān)鍵字: LED 設(shè)計(jì) 驅(qū)動(dòng)電源

電動(dòng)汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產(chǎn)業(yè)的重要發(fā)展方向。電動(dòng)汽車的核心技術(shù)之一是電機(jī)驅(qū)動(dòng)控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機(jī)驅(qū)動(dòng)系統(tǒng)中的關(guān)鍵元件,其性能直接影響到電動(dòng)汽車的動(dòng)力性能和...

關(guān)鍵字: 電動(dòng)汽車 新能源 驅(qū)動(dòng)電源

在現(xiàn)代城市建設(shè)中,街道及停車場(chǎng)照明作為基礎(chǔ)設(shè)施的重要組成部分,其質(zhì)量和效率直接關(guān)系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進(jìn)步,高亮度白光發(fā)光二極管(LED)因其獨(dú)特的優(yōu)勢(shì)逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關(guān)鍵字: 發(fā)光二極管 驅(qū)動(dòng)電源 LED

LED通用照明設(shè)計(jì)工程師會(huì)遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關(guān)鍵字: LED 驅(qū)動(dòng)電源 功率因數(shù)校正

在LED照明技術(shù)日益普及的今天,LED驅(qū)動(dòng)電源的電磁干擾(EMI)問題成為了一個(gè)不可忽視的挑戰(zhàn)。電磁干擾不僅會(huì)影響LED燈具的正常工作,還可能對(duì)周圍電子設(shè)備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來解決L...

關(guān)鍵字: LED照明技術(shù) 電磁干擾 驅(qū)動(dòng)電源

開關(guān)電源具有效率高的特性,而且開關(guān)電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機(jī)重量也有所下降,所以,現(xiàn)在的LED驅(qū)動(dòng)電源

關(guān)鍵字: LED 驅(qū)動(dòng)電源 開關(guān)電源

LED驅(qū)動(dòng)電源是把電源供應(yīng)轉(zhuǎn)換為特定的電壓電流以驅(qū)動(dòng)LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: LED 隧道燈 驅(qū)動(dòng)電源
關(guān)閉