亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        一種基于PMBus 協(xié)議的總線控制器的設(shè)計(jì)

        2020-05-11 09:02:16葉琳娜賀雅娟張子驥甄少偉
        微處理機(jī) 2020年2期
        關(guān)鍵詞:字節(jié)寄存器命令

        葉琳娜,賀雅娟,張子驥,張 波,甄少偉

        (電子科技大學(xué)電子科學(xué)與工程學(xué)院,成都610054)

        1 引 言

        隨著電源管理技術(shù)的發(fā)展,現(xiàn)有的電源芯片已經(jīng)難以滿足高性能嵌入式系統(tǒng)的供電需求。嵌入式系統(tǒng)的自適應(yīng)電源管理方案需要在系統(tǒng)的運(yùn)行過程中根據(jù)系統(tǒng)的運(yùn)行狀況實(shí)時(shí)改變電源的輸出電壓和上電次序,然而這些功能在傳統(tǒng)的DC/DC 電源管理方案中是很難實(shí)現(xiàn)的。在這種背景下,數(shù)字可編程電源成為了最佳的選擇。而PMBus 的出現(xiàn)為電源芯片內(nèi)各個(gè)關(guān)鍵模塊之間的通信提供了一個(gè)標(biāo)準(zhǔn)。同時(shí),PMBus 總線推動(dòng)了數(shù)字電源技術(shù)的發(fā)展,通過PMBus 總線可以在工程中方便的對(duì)電源芯片進(jìn)行在線編程和配置。故此對(duì)PMBus 總線控制器的設(shè)計(jì)原理和實(shí)現(xiàn)過程進(jìn)行了介紹。

        2 數(shù)字電源及相關(guān)原理

        2.1 數(shù)字電源概述

        “數(shù)字電源”定義為數(shù)字控制的電源產(chǎn)品,可提供配置和監(jiān)控功能,甚至擴(kuò)展到全數(shù)字環(huán)路控制。它包括兩個(gè)不同的技術(shù)領(lǐng)域。其一為“數(shù)字控制”,即電源開關(guān)的實(shí)時(shí)、逐周期控制;另一個(gè)是“數(shù)字電源管理”。圖1 顯示了具有PMBus 協(xié)議的多POL 電源管理系統(tǒng)[1],該系統(tǒng)基于物理傳輸層SMBus 協(xié)議。在系統(tǒng)中,每個(gè)POL 都在其自己的數(shù)字環(huán)路下進(jìn)行控制,系統(tǒng)主機(jī)通過SMBus 管理多個(gè)POL。數(shù)字電源管理可包括開關(guān)頻率調(diào)整,電壓裕度監(jiān)測(cè),電壓、電流、溫度監(jiān)控和保護(hù)等功能。

        圖1 總線概念圖

        2.2 PMBus 總線概述

        PMBus 總線是數(shù)字電源轉(zhuǎn)換器的電源管理總線標(biāo)準(zhǔn),于2004 年由電源和半導(dǎo)體公司聯(lián)合開發(fā),用于與DC / DC 轉(zhuǎn)換器進(jìn)行通信,之后擴(kuò)展專用的自適應(yīng)電壓調(diào)節(jié)(AVS)總線,用于控制處理器電壓。總線包括一組用于控制和監(jiān)控連接到總線的電源轉(zhuǎn)換器的命令。例如,可以配置變化的輸出電壓的上升和下降時(shí)間。這已經(jīng)成為工業(yè)中用于配置功率轉(zhuǎn)換器的標(biāo)準(zhǔn)總線。通過為系統(tǒng)實(shí)現(xiàn)PMBus,可以最小化組件數(shù)量和功耗,以及在正常操作期間調(diào)節(jié)功率,使得實(shí)現(xiàn)系統(tǒng)級(jí)省電方案變得容易[2-3]。

        該協(xié)議基于由廣泛使用的Inter-IC 總線(I2C總線)擴(kuò)展而來的物理傳輸層系統(tǒng)管理總線(SMBus總線)[4-6],為了給功率控制提供更多功能,PMBus 成為電源管理系統(tǒng)中總線的絕佳選擇。PMBus 具有雙向數(shù)據(jù)線(SDA)和雙向時(shí)鐘線(SCL)。雙向數(shù)據(jù)線使得在進(jìn)行任何數(shù)據(jù)傳輸?shù)那闆r下,從機(jī)都會(huì)確認(rèn)數(shù)據(jù),可以發(fā)送最大255 字節(jié)的較大數(shù)據(jù)塊。

        自適應(yīng)電壓調(diào)節(jié)總線(AVSBus)是PMBus 的補(bǔ)充,它提供負(fù)載點(diǎn)(POL)電壓控制器和負(fù)載之間的點(diǎn)對(duì)點(diǎn)鏈路。其主要應(yīng)用是靜態(tài)或動(dòng)態(tài)控制處理器電壓,以提高能效。總線使用雙線接口(TWI)和類似于PMBus 的協(xié)議。

        3 PMBus 總線控制器設(shè)計(jì)

        基于PMBus 協(xié)議,在此設(shè)計(jì)一種兼容I2C 總線的控制器,該控制器連接串行PMBus 總線,由狀態(tài)機(jī)控制,滿足PMBus 協(xié)議的時(shí)序要求,配置為從機(jī)模式,從PMBus 總線收發(fā)數(shù)據(jù)以及對(duì)主控制器做出相應(yīng)的中斷和響應(yīng)。采用Verilog HDL 語言進(jìn)行實(shí)現(xiàn),以便將該控制器易于與基于AMBA 總線的CPU集成,拓展其應(yīng)用范圍[7]。

        總線控制器整體系統(tǒng)框架如圖2 所示。

        圖2 總線控制器系統(tǒng)圖

        3.1 設(shè)計(jì)框架

        整個(gè)設(shè)計(jì)包含從機(jī)模式的時(shí)序模塊、功能模塊、控制模塊、信號(hào)產(chǎn)生模塊,以及相應(yīng)的頂層互連模塊。從機(jī)的時(shí)序模塊用于完成與SMBus 相同的地址檢測(cè),從MSB 到LSB 接收命令和傳輸高低字節(jié)數(shù)據(jù),以及SMBALERT 中斷。從機(jī)的功能模塊處理傳輸過程中可能發(fā)生的故障,如PMBus 從機(jī)太忙,無法接受并處理通過總線發(fā)送給它的命令,接收到的命令和高低字節(jié)無效,讀或?qū)懱嘧止?jié)或太少字節(jié),過溫、過壓、過流的故障處理等。主機(jī)的控制模塊狀態(tài)機(jī)向從控制器發(fā)送起始幀、停止幀、地址、數(shù)據(jù)及相應(yīng)的中斷控制信號(hào)。主機(jī)的信號(hào)產(chǎn)生模塊設(shè)計(jì)所需的時(shí)鐘及數(shù)據(jù)。

        3.2 PMBus 從機(jī)時(shí)序模塊

        PMBus 從機(jī)時(shí)序模塊狀態(tài)圖如圖3 所示。檢查時(shí)鐘和數(shù)據(jù)是否有表示相應(yīng)上升沿和下降沿的電平、開始及停止條件,檢測(cè)到開始幀時(shí)從機(jī)置于忙碌狀態(tài),時(shí)鐘下降沿開始計(jì)數(shù)。從機(jī)產(chǎn)生中斷時(shí)由于具有警報(bào)相應(yīng)地址(ARA = 7'b0001100),中斷保持至主機(jī)向其發(fā)送ARA 地址時(shí)響應(yīng)清除。

        圖3 時(shí)序模塊狀態(tài)圖

        3.3 PMBus 從機(jī)功能模塊

        該模塊根據(jù)PMBus 協(xié)議中指定的相關(guān)命令從主機(jī)中讀取電壓、電流、溫度等參數(shù),實(shí)現(xiàn)了從機(jī)忙碌狀態(tài)響應(yīng),檢查接收命令及高低字節(jié)的有效性,檢查讀寫位數(shù)過多或過少的功能,對(duì)過壓、過流和過溫設(shè)置和清除警告位。所支持的PMBUS 命令如表1所示。

        首先,如果數(shù)據(jù)傳輸正在進(jìn)行中,則輸出電壓、輸出電流、溫度、輸入電壓值保持不變,否則更新數(shù)據(jù)。檢查命令是否有效,如果收到開始或停止信號(hào),則內(nèi)部命令無效。如果收到地址非ARA 地址且收到命令非表2 中命令,則內(nèi)部命令有效。檢查高位數(shù)據(jù)字節(jié)是否有效。如果收到VOUT_COMMAND 命令且高位數(shù)據(jù)字節(jié)值大于VOUT_MAX,則內(nèi)部高位數(shù)據(jù)字節(jié)有效,如果收到開始或結(jié)束信號(hào),則內(nèi)部高位數(shù)據(jù)字節(jié)有效寄存器無效。最后檢查低位數(shù)據(jù)字節(jié)是否有效,如果收到SMBALERT_MASK 命令且收到的低位數(shù)據(jù)字節(jié)值不為STATUS_VOUT,STATUS0_IOUT,STATUS_ INPUT,STATUS_TEMPE RATURE,STATUS_CML 以及1'b1,則內(nèi)部低位數(shù)據(jù)字節(jié)有效,如果收到開始或結(jié)束信號(hào),則內(nèi)部低位數(shù)據(jù)字節(jié)無效。

        表1 支持的PMBUS 命令

        如果收到主控制器寫的數(shù)據(jù)字節(jié)過多,則表示太多字節(jié)被寫,太多字節(jié)被讀保持不變。如果主控制器讀的字節(jié)過多,則太多字節(jié)被寫保持不變,太多字節(jié)被讀。如果收到開始或結(jié)束信號(hào),則無太多字節(jié)被寫或太多字節(jié)被讀。檢查被送的字節(jié)是否太少。如果在收到地址、命令、低位字節(jié)及高位字節(jié)的過程中停止或仲裁無效或無重復(fù)開始就寫字節(jié),則太少字節(jié)被寫。

        如果收到開始或結(jié)束信號(hào),則太少字節(jié)被寫無效。檢查主控制器是否無重復(fù)開始就讀字節(jié),如果收到地址非ARA 地址后正在傳輸數(shù)據(jù)且無重復(fù)開始就讀字節(jié),則無重復(fù)開始就讀字節(jié)有效。如果收到開始或結(jié)束信號(hào),則無效,其他情況狀態(tài)位保持不變。設(shè)置通信錯(cuò)誤狀態(tài)和清除輸出電壓過壓狀態(tài)。在以下兩種情況清除輸出電壓過壓狀態(tài),第一種,收到結(jié)束信號(hào),且收到STATUS_VOUT 命令,低位字節(jié)的第7 位為1'b1,通信有效,地址的第0 位為1'b1。第二種,收到結(jié)束信號(hào),且收到CLEAR_FAULTS 命令,收到地址非ARA 地址,且通信有效。其他情況不清除。

        其次設(shè)置輸出電壓過壓故障位,該位將進(jìn)入STATUS_VOUT 的第7 位。如果輸出電壓過壓且不清除,則故障位有效,如果清除位有效,則故障位無效。然后用斷言SMBALERT 掩模輸出電壓過壓。如果收到結(jié)束信號(hào)和SMBALERT_MASK 命令,低位數(shù)據(jù)字節(jié)為STATUS_VOUT,且通信有效,則設(shè)高位數(shù)據(jù)字節(jié)第7 位掩模輸出電壓過壓。存儲(chǔ)STATUS_VOUT 的掩碼字節(jié)。如果收到SMBALERT_MASK 命令且收到低位字節(jié)數(shù)據(jù)為STATUS_VOUT,則將高位字節(jié)數(shù)據(jù)設(shè)為存儲(chǔ)STATUS_VOUT 的掩碼字節(jié)。接著清除輸出電流過流狀態(tài)。在以下兩種情況清除輸出電流過流狀態(tài),第一種,收到結(jié)束信號(hào),且收到STATUS_IOUT 命令,低位字節(jié)的第7 位為1,通信有效,地址的第0 位不為1'b1。第二種,收到結(jié)束信號(hào),且收到CLEAR_FAULTS 命令,收到地址非ARA 地址,且通信有效。輸出電流過流故障位、輸入電壓欠壓故障位、輸入過溫故障位與此定義方法類似。

        設(shè)置命令有效信號(hào)狀態(tài)寄存器。如果內(nèi)部命令有效且清除內(nèi)部命令無效,則命令有效。如果清除內(nèi)部命令有效,則命令無效。其他情況狀態(tài)保持不變。數(shù)據(jù)有效信號(hào)狀態(tài)寄存器、其他錯(cuò)誤信號(hào)狀態(tài)寄存器的設(shè)置方法與此類似。設(shè)置命令有效警報(bào)掩模寄存器。如果收到結(jié)束信號(hào),且收到SMBALERT_MASK 命令,且低位數(shù)據(jù)字節(jié)為STATUS_CML,則命令有效警報(bào)掩模寄存器設(shè)為高位數(shù)據(jù)字節(jié)的第7位。其他情況狀態(tài)保持不變。數(shù)據(jù)有效警報(bào)掩模寄存器、其他錯(cuò)誤警告掩模寄存器、存儲(chǔ)STATUS_CML掩模字節(jié)的方法與此類似。

        如果檢測(cè)通信/數(shù)據(jù)錯(cuò)誤位狀態(tài)寄存器的上升沿/檢測(cè)輸出電壓過壓故障信號(hào)的上升沿/檢測(cè)輸出電流過流故障信號(hào)的上升沿/檢測(cè)輸入電壓欠壓故障信號(hào)的上升沿/檢測(cè)輸入過溫故障信號(hào)的上升沿有效,且清除中斷信號(hào)無效,則中斷信號(hào)有效,若清除中斷信號(hào)有效,則中斷信號(hào)無效,其他情況中斷信號(hào)保持不變。設(shè)置狀態(tài)字節(jié)和STATUS_OTHER 位。判斷如果收到停止信號(hào)且收到VOUT_COMMAND 命令且通信有效,若高位數(shù)據(jù)字節(jié)值小于VOUT_MAX,則將高位數(shù)據(jù)字節(jié)值賦于內(nèi)部存儲(chǔ)VID 碼的寄存器,否則該寄存器保持原值。

        最后,查看寫到主機(jī)的命令。如果命令有效或無重復(fù)開始就讀字節(jié)狀態(tài)有效且其他錯(cuò)誤信號(hào)以前的值有效,則寫內(nèi)部低位數(shù)據(jù)字節(jié)的寄存器為8'd255,寫內(nèi)部高位數(shù)據(jù)字節(jié)的寄存器為8'd255。否則,當(dāng)處于讀命令狀態(tài)時(shí),如果收到VOUT_COMMAND 命令,寫內(nèi)部低位數(shù)據(jù)字節(jié)的寄存器為8'd0,寫內(nèi)部高位數(shù)據(jù)字節(jié)的寄存器為內(nèi)部存儲(chǔ)VID 碼的寄存器。如果收到READ_VOUT 命令,寫內(nèi)部低位數(shù)據(jù)字節(jié)的寄存器為8'd0,寫內(nèi)部高位數(shù)據(jù)字節(jié)的寄存器為輸出電壓值。輸出電流值、溫度值、輸入電壓值、狀態(tài)字節(jié)的存儲(chǔ)方法與此類似。 如果收到STATUS_VOUT 命令,寫內(nèi)部低位數(shù)據(jù)字節(jié)的寄存器為輸出電壓過壓故障位,寫內(nèi)部高位數(shù)據(jù)字節(jié)的寄存器為8'd255。輸出電流過流故障位、輸入電壓欠壓故障位、輸入過溫故障位、命令有效信號(hào)狀態(tài),數(shù)據(jù)有效信號(hào)狀態(tài)寄、其他錯(cuò)誤信號(hào)狀態(tài)、STATUS_OTHER 信號(hào)的存儲(chǔ)方法類似。如果收到SMBALERT_MASK 命令,高位數(shù)據(jù)字節(jié)為STATUS_VOUT,則寫內(nèi)部低位數(shù)據(jù)字節(jié)的寄存器為8'd1,寫內(nèi)部高位數(shù)據(jù)字節(jié)的寄存器為存儲(chǔ)STATUS_VOUT的掩碼字節(jié)。其他命令如STATUS_IOUT、STATUS_IOUT、STATUS_INPUT、STATUS_VIN 等的存儲(chǔ)方式與STATUS_VOUT 類似。

        4 仿真測(cè)試平臺(tái)及版圖設(shè)計(jì)

        為確保PMBus 總線控制器功能和時(shí)序的正確性,通過Synopsys 公司的EDA 仿真平臺(tái)對(duì)從控制器的設(shè)計(jì)進(jìn)行仿真驗(yàn)證和相關(guān)功能分析。在驗(yàn)證從控制器的功能時(shí),設(shè)計(jì)搭建主控制器發(fā)送數(shù)據(jù)。一共有兩次中斷被觸發(fā),第一次讀VOUT=16'hfc(252d),第二次讀TEMP=16'h7f(127d),第三個(gè)觸發(fā)中斷,用ARA=00011000 的方式清除,如圖4 所示。清除后讀一組VIN=240d,應(yīng)讀出16'hf0,然后再觸發(fā)一次中斷,再用CLEAR_FAULTS 清除,cmd 對(duì)應(yīng)8'h03,如圖5 所示,即表示已清除。

        圖4 觸發(fā)中斷并用ARA 的方式清除中斷

        圖5 再次觸發(fā)中斷、以CLEAR_FAULTS 命令清除中斷

        為驗(yàn)證是否已經(jīng)清除,重讀一組VOUT=16'hfc(252d),然后進(jìn)入default,一直讀VIN=16'hf0(240d)。

        最終,采用SMIC 0.18μm 的工藝平臺(tái)進(jìn)行數(shù)字集成電路物理設(shè)計(jì),完成6 層金屬布局布線,大小為200μm×200μm,并通過后仿驗(yàn)證功能的正確性[8-9]。完成的版圖如圖6 所示。

        圖6 PMBus 總線控制器版圖

        5 結(jié) 束 語

        基于PMBus 協(xié)議完成了一種從控制器的設(shè)計(jì)及驗(yàn)證。采用模塊化設(shè)計(jì),便于功能拓展與集成,編寫的Verilog HDL 代碼是可綜合的,且與AMBA 總線兼容。控制器實(shí)現(xiàn)了PMBus 協(xié)議的基本功能,符合協(xié)議的時(shí)序要求,節(jié)省了硬件資源,為數(shù)字電源提供良好的拓展空間。

        猜你喜歡
        字節(jié)寄存器命令
        只聽主人的命令
        No.8 字節(jié)跳動(dòng)將推出獨(dú)立出口電商APP
        Lite寄存器模型的設(shè)計(jì)與實(shí)現(xiàn)
        No.10 “字節(jié)跳動(dòng)手機(jī)”要來了?
        移防命令下達(dá)后
        簡(jiǎn)談MC7字節(jié)碼
        分簇結(jié)構(gòu)向量寄存器分配策略研究*
        這是人民的命令
        藍(lán)色命令
        高速數(shù)模轉(zhuǎn)換器AD9779/AD9788的應(yīng)用
        亚洲精品无码专区在线在线播放| 国产精品女同一区二区久| 国产av一区二区日夜精品剧情 | 999国内精品永久免费视频| 69av在线视频| 国产高清自产拍av在线| 国精产品一区一区三区有限在线| 无码不卡av东京热毛片| 囯产精品无码va一区二区| 一区二区中文字幕蜜桃| 精品一二三四区中文字幕| 日韩激情无码免费毛片 | 国产高潮视频在线观看| 国产精在线| 国产人成在线免费视频| 91精品国产福利在线观看麻豆| 97人人模人人爽人人少妇| 欧洲午夜视频| 尤物成av人片在线观看| 级毛片内射视频| 婷婷色中文字幕综合在线| 国产欧美日韩不卡一区二区三区| 中文字幕日韩精品人妻久久久| 日本成本人片视频免费| 国产一区二区不卡老阿姨| 丰满人妻一区二区乱码中文电影网| 水蜜桃男女视频在线观看网站| 精品无码av一区二区三区| 久久精品中文字幕第23页| 少妇裸淫交视频免费看| 欧美牲交a欧美牲交| 亚洲美女又黄又爽在线观看| www.亚洲天堂.com| 一区二区三区视频亚洲| 无码国产福利av私拍| av无码天一区二区一三区| 91精品国产综合久久国产| 亚洲精品国产一区二区| 亚洲精品成人专区在线观看| 国产成人高清精品亚洲一区| 国产情侣一区二区三区|