亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種兼容I2C通信與IPMB通信的方法與流程

文檔序號(hào):11707539閱讀:3379來源:國(guó)知局
一種兼容I2C通信與IPMB通信的方法與流程

本發(fā)明涉及一種串行總線通信方法。



背景技術(shù):

i2c(inter-integratedcircuit)總線是由philips公司開發(fā)的兩線式串行總線,用于連接微控制器及其外圍設(shè)備。是微電子通信控制領(lǐng)域廣泛采用的一種總線標(biāo)準(zhǔn)。它是同步通信的一種特殊形式,具有接口線少,控制方式簡(jiǎn)單,器件封裝形式小,通信速率較高等優(yōu)點(diǎn)。

i2c通過串行數(shù)據(jù)(sda)線和串行時(shí)鐘(scl)線在連接到總線的器件間傳遞信息。每個(gè)器件都有一個(gè)唯一的地址識(shí)別,而且都可以作為一個(gè)發(fā)送器或接收器(由器件的功能決定)。主機(jī)是初始化總線的數(shù)據(jù)傳輸并產(chǎn)生允許傳輸?shù)臅r(shí)鐘信號(hào)的器件。此時(shí),任何被尋址的器件都被認(rèn)為是從機(jī)。

ipmi(intelligentplatformmanagementinterface)是一個(gè)智能平臺(tái)管理接口。用戶可以利用ipmi監(jiān)視服務(wù)器等設(shè)備的物理特征,如各部件的溫度、電壓、風(fēng)扇工作狀態(tài)、電源供應(yīng)以及機(jī)箱入侵等。

ipmb使用“請(qǐng)求——應(yīng)答”協(xié)議,發(fā)送一條請(qǐng)求消息給一個(gè)智能設(shè)備,該設(shè)備會(huì)返回一個(gè)獨(dú)立的應(yīng)答消息。任何傳輸協(xié)議都是有限制的,ipmb總線直接支持有15個(gè)內(nèi)部節(jié)點(diǎn)的系統(tǒng),系統(tǒng)應(yīng)用應(yīng)該努力減輕總線的占用時(shí)間,例如,每秒鐘少于6條消息,這樣做,可以確保節(jié)點(diǎn)可以成功在要求的重試次數(shù)內(nèi)搶占總線。請(qǐng)求消息和應(yīng)答消息都是通過i2c總線的“主寫”(masterwrite)模式傳輸?shù)?,也就是說,一條請(qǐng)求消息是從一個(gè)作為i2c主端(master)的節(jié)點(diǎn)發(fā)出,被一個(gè)作為i2c從設(shè)備的節(jié)點(diǎn)接收;對(duì)應(yīng)的應(yīng)答消息是從一個(gè)作為i2c主端的應(yīng)答設(shè)備發(fā)出,被一個(gè)作為i2c從設(shè)備的請(qǐng)求發(fā)起者接收。

ipmb點(diǎn)對(duì)點(diǎn)傳輸,數(shù)據(jù)包包含ipmbconnectionheaders、command、和data字節(jié)。如圖1所示。

如圖2所示,i2c總線寫寄存器的標(biāo)準(zhǔn)流程為:

1.master發(fā)起起始信號(hào)

2.master發(fā)送i2caddr(7bit)和w操作0(1bit),等待ack

3.slave發(fā)送ack

4.master發(fā)送regaddr(8bit),等待ack

5.slave發(fā)送ack

6.master發(fā)送data(8bit),即要寫入寄存器中的數(shù)據(jù),等待ack

7.slave發(fā)送ack

8.第6步和第7步可以重復(fù)多次,即順序?qū)懚鄠€(gè)寄存器

9.master發(fā)起停止信號(hào)

ipmb總線協(xié)議中i2c是用作媒介和物理層的。協(xié)議嚴(yán)格按照下列條件使用i2c服務(wù):

1、只使用主寫模式(masterwrite)(i2c從地址的r/w位一直是0)。

2、不使用10_bit尋址。

3、每次傳輸只用一個(gè)從地址。

4、不使用repeatedstarts,repeatedstarts是i2c協(xié)議為了在傳輸?shù)倪^程中改變總線方向而定義的。由于ipmb協(xié)議只用到主寫模式,所以就不需要repeatedstarts了,不過在非ipmb協(xié)議的設(shè)備中還是要繼續(xù)使用repeatedstarts的。

5、i2c的通知機(jī)制(ackbit)只表示字節(jié)被從端接收,不能保證接收的數(shù)據(jù)的完整性和正確性。

me(managementengine)是英特爾的管理引擎驅(qū)動(dòng),該驅(qū)動(dòng)為intel針對(duì)其桌面系列芯片組推出的一款熱能管理驅(qū)動(dòng)。它介于固件和系統(tǒng)驅(qū)動(dòng)之間,類似于一種接口(interface),通過這個(gè)接口,系統(tǒng)可以和固件之間相互作用,從而達(dá)到改善熱能管理的目的。

公開號(hào)為cn104483913a的中國(guó)發(fā)明專利提供一種應(yīng)用i2c總線實(shí)現(xiàn)龍芯刀片服務(wù)器電源狀態(tài)監(jiān)控的方法,本發(fā)明采用i2c總線進(jìn)行ipmb命令傳輸,將采集到的電源模塊狀態(tài)信息通過i2c端口擴(kuò)展芯片連接至管理控制單元中的bmc模塊,遠(yuǎn)程管理用戶通過網(wǎng)絡(luò)與bmc模塊通信,實(shí)現(xiàn)遠(yuǎn)程用戶對(duì)電源在位信息、工作狀態(tài)信息、電壓信息、電流信息等的實(shí)時(shí)監(jiān)控。該技術(shù)使用了額外的擴(kuò)展芯片來實(shí)現(xiàn)ipmb的兼容,不僅占用了電路板資源,還可能會(huì)產(chǎn)生額外的時(shí)延,影響通信性能。



技術(shù)實(shí)現(xiàn)要素:

本發(fā)明為解決上述技術(shù)問題,為此,本發(fā)明提供一種兼容i2c通信與ipmb通信的方法,它具實(shí)現(xiàn)i2c主從模式的快速切換,同時(shí)保證數(shù)據(jù)鏈路的簡(jiǎn)潔,不占用額外的鏈路,該模塊完全兼容正常i2c通信與ipmb通信,極大地提高了資源利用率的優(yōu)點(diǎn)。

為了實(shí)現(xiàn)上述目的,本發(fā)明采用如下技術(shù)方案。

一種兼容i2c通信與ipmb通信的方法,當(dāng)與i2c從設(shè)備進(jìn)行通信的時(shí)候,進(jìn)行標(biāo)準(zhǔn)i2c讀寫數(shù)據(jù)操作,按照需求進(jìn)行讀指令和寫指令的傳遞。此時(shí)由bmc控制產(chǎn)生i2c時(shí)鐘,并且拉低數(shù)據(jù)線產(chǎn)生起始信號(hào),隨后按照協(xié)議發(fā)送地址和數(shù)據(jù),在傳輸完成后發(fā)出停止信號(hào)完成一次命令的發(fā)出;

當(dāng)與me通信的時(shí)候,按照ipmb協(xié)議,寫數(shù)據(jù)走的依然是正常的i2c寫寄存器流程,而當(dāng)進(jìn)行讀數(shù)據(jù)操作的時(shí)候,me會(huì)給bmc發(fā)送起始信號(hào),產(chǎn)生時(shí)鐘和寫請(qǐng)求。

優(yōu)選的,系統(tǒng)一直檢測(cè)i2c總線信號(hào),當(dāng)總線上有起始信號(hào)的時(shí)候,會(huì)進(jìn)行內(nèi)部的自我判定,判斷該信號(hào)是bmc發(fā)出的命令還是外部發(fā)給bmc的寫請(qǐng)求,如果判斷確定是外部的寫請(qǐng)求,就進(jìn)入地址的校驗(yàn)流程,根據(jù)me提供的時(shí)鐘信號(hào),記錄每個(gè)bit字節(jié),得出me發(fā)送的地址,之后與預(yù)先設(shè)定的bmc地址對(duì)比校驗(yàn)是否一致,校驗(yàn)通過則進(jìn)入數(shù)據(jù)記錄環(huán)節(jié),記錄收到的數(shù)據(jù),經(jīng)過格式和鏈路的處理,發(fā)送到讀寄存器中,并按照bmc要求進(jìn)行數(shù)據(jù)的轉(zhuǎn)發(fā)和上傳。

優(yōu)選的,數(shù)據(jù)傳輸完成后,me會(huì)發(fā)送停止信號(hào),此時(shí)本模塊將最后1byte數(shù)據(jù)發(fā)出,進(jìn)入停止?fàn)顟B(tài),并立即恢復(fù)idle等待下一次讀寫。

本發(fā)明的有益效果:具實(shí)現(xiàn)i2c主從模式的快速切換,同時(shí)保證數(shù)據(jù)鏈路的簡(jiǎn)潔,不占用額外的鏈路,該模塊完全兼容正常i2c通信與ipmb通信,極大地提高了資源利用率的優(yōu)點(diǎn)。

附圖說明

圖1是ipmb點(diǎn)對(duì)點(diǎn)傳輸數(shù)據(jù)包示意圖。

圖2是i2c總線寫方式數(shù)據(jù)包示意圖。

圖3是本實(shí)施例方法流程圖。

圖4是本實(shí)施例狀態(tài)轉(zhuǎn)換流程圖。

具體實(shí)施方式

下面結(jié)合附圖與實(shí)施例對(duì)本發(fā)明作進(jìn)一步說明。

如圖3、圖4所示,一種兼容i2c通信與ipmb通信的方法,當(dāng)與i2c從設(shè)備進(jìn)行通信的時(shí)候,進(jìn)行標(biāo)準(zhǔn)i2c讀寫數(shù)據(jù)操作,按照需求進(jìn)行讀指令和寫指令的傳遞。此時(shí)由bmc控制產(chǎn)生i2c時(shí)鐘,并且拉低數(shù)據(jù)線產(chǎn)生起始信號(hào),隨后按照協(xié)議發(fā)送地址和數(shù)據(jù),在傳輸完成后發(fā)出停止信號(hào)完成一次命令的發(fā)出;

當(dāng)與me通信的時(shí)候,按照ipmb協(xié)議,寫數(shù)據(jù)走的依然是正常的i2c寫寄存器流程,而當(dāng)進(jìn)行讀數(shù)據(jù)操作的時(shí)候,me會(huì)給bmc發(fā)送起始信號(hào),產(chǎn)生時(shí)鐘和寫請(qǐng)求。

系統(tǒng)一直檢測(cè)i2c總線信號(hào),當(dāng)總線上有起始信號(hào)的時(shí)候,會(huì)進(jìn)行內(nèi)部的自我判定,判斷該信號(hào)是bmc發(fā)出的命令還是外部發(fā)給bmc的寫請(qǐng)求,如果判斷確定是外部的寫請(qǐng)求,就進(jìn)入地址的校驗(yàn)流程,根據(jù)me提供的時(shí)鐘信號(hào),記錄每個(gè)bit字節(jié),得出me發(fā)送的地址,之后與預(yù)先設(shè)定的bmc地址對(duì)比校驗(yàn)是否一致,校驗(yàn)通過則進(jìn)入數(shù)據(jù)記錄環(huán)節(jié),記錄收到的數(shù)據(jù),經(jīng)過格式和鏈路的處理,發(fā)送到讀寄存器中,并按照bmc要求進(jìn)行數(shù)據(jù)的轉(zhuǎn)發(fā)和上傳。

數(shù)據(jù)傳輸完成后,me會(huì)發(fā)送停止信號(hào),此時(shí)本模塊將最后1byte數(shù)據(jù)發(fā)出,進(jìn)入停止?fàn)顟B(tài),并立即恢復(fù)idle等待下一次讀寫。

上述雖然結(jié)合附圖對(duì)本發(fā)明的具體實(shí)施方式進(jìn)行了描述,但并非對(duì)本發(fā)明保護(hù)范圍的限制,所屬領(lǐng)域技術(shù)人員應(yīng)該明白,在本發(fā)明的技術(shù)方案的基礎(chǔ)上,本領(lǐng)域技術(shù)人員不需要付出創(chuàng)造性勞動(dòng)即可做出的各種修改或變形仍在本發(fā)明的保護(hù)范圍以內(nèi)。

當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1