最新LPC總線介紹_第1頁
最新LPC總線介紹_第2頁
最新LPC總線介紹_第3頁
最新LPC總線介紹_第4頁
最新LPC總線介紹_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、123456789101112131415161718192021在NB電路的架構(gòu)框圖中,我們可以看到PCH和EC之間通過LPC總線連接,在 MB板上也會看到EC芯片旁邊有一個JDEBUG的connector,其也與LPC總線相連, 用于主板診斷。下面將對LPC總線做一些簡單介紹,希望能夠幫助大家了解LPC 的工作原理:1、 LPC總線LPC (Low Pin Count)是基于Intel標準的33 MHz 4 bit并行總線協(xié)議(但 LI前NB系統(tǒng)中LPC的時鐘頻率為24MHz,可能是山于CPU平臺的不斷發(fā)展導致 的,后面會具體分析),用于代替以前的ISA總線協(xié)議,但兩者性能相似,都用 于連

2、接南橋和Super I/O芯片、FLASH BIOS、EC等設備(由于目前EC芯片中整 合了 Super I/O功能,所以我們在B系統(tǒng)中看不到LPC總線上掛有Super I/O 芯片了)。傳統(tǒng)ISA BUS速率大約在7. 159、8. 33MHz,提供的理論尖峰傳輸值為16MB/s, 但是ISA BUS與傳統(tǒng)的PCI BUS的電氣特性、信號定義方式迥異,使得南橋芯片、 Super I/O芯片浪費很多針腳來做處理,主板的線路設計也顯得復雜。為此,Intel 定義了 LPC接口,將以往ISA BUS的地址/數(shù)據(jù)分離譯碼,改成類似PCI的地址/ 數(shù)據(jù)信號線共享的譯碼方式,信號線數(shù)量大幅降低,工作速率

3、由PCI總線速率 同步驅(qū)動(時鐘同為33MHz),雖然改良過的LPC接口一樣維持最大傳輸值16MB/s, 但信號管腳卻大幅減少了 2530個,以LPC接口設計的Super I/O芯片、Flash 芯片都能享有腳位數(shù)減少、體積微縮的好處,主板的設計也可以簡化,這也是取 名LPCLow Pin Count的原因。2、LPC總線的接口管腳22LPC總線山7個必選信號和6個可選信號組成,具體如下表所示:表31 LPC總線必選信號列表信號外設Host設備信號描述LAD3:0I/OI/O命令、數(shù)據(jù)、地址復用信號LFRAME#I0指示一個操作循環(huán)的開始LRESET#II復位信號LCLKIIg3MHz時鉀痔號

4、際"K24表3-2 LPC總線可選信號列表信號外設Host 設備信號描述LDRQ#0I夕卜設進行DMA or bus mastering操作的總線 請求信號,一對一,外設之間不能共享同一個 LDRQ#SERIRQI/OI/O中斷請求信號CLKRUN#0DI/0D外設進行DMA or bus mastering操作才會需 要該信號,用于停止PIC bus,同PCI CLKRUN 信號LPME#0DI/0D電源管理喚醒,與PCI PME相似LPCPDI0Power Down#LSMI#0DISMI信號系統(tǒng)管理中斷MB板上的JDEBUG connector有12pin,沒有連接LRESET

5、#信號,只連接了其余的6個必選信號,為主板診斷提供接口,其中CLK DEBUG ill PCH提供,24MHZ:+3V1AJDEBUG12526272829303132333435(6.30)LPC.AD1 «»-<5.30)LPG.AD2 «»-<迪 «»-(5.30)弋RA畑 »(5)»12 34567 8 9SIDE*TZ0 12SICEZC4401士3.1UF 門 6V/DEBUG/CxS-UGFPC 12F5GNDGNDEC與PCH連接的LPC總線中除了包含7個必選信號,還包含SEEIRQ和C

6、LKRUN#信號。這里需要注意的是JDEBUG的CLK信號與連接EC和PCH的LPC總 線中CLK信號并非同一個信號。PCH提供了 2個輸出24MHz時鐘的管腳,但每個 時鐘只能驅(qū)動一個LPC設備,故EC和JDEBUG各連接一個。3.LPC總線的通信協(xié)議LPC總線支持多種事務類型的操作,例如10讀寫.內(nèi)存讀寫、DMA讀寫.Firmwarememory讀寫等。一個cycle通常一下流程:總線host拉低LFRAME#信號,指示cycle開始,同時將相關(guān)信息 輸出到LAD3:0上主機Host根據(jù)Cycle類型驅(qū)動相應的信息到LAD3: 0上,比如 當前操作的事務類型、數(shù)據(jù)傳輸方向及size大小、訪

7、問地址等。host根據(jù)Cycle類型的不同選擇進行驅(qū)動數(shù)據(jù)或者是移交總線控 制權(quán)。外設獲取總線控制權(quán)后,將相應的數(shù)據(jù)驅(qū)動到LAD3: 0上。表示 該Cycle完成。外設釋放總線控制權(quán)。至此該Cycle結(jié)束。一個典型 cycle 通常Start% Cyctype+Dir ADDR、Size (DMA only) %Channel (DMA only) > TAR、Sync、DATA 狀態(tài)組成,下圖是一個典型的 cycle 示 例流程,該cycle類似于10讀或內(nèi)存讀操作中的cycle, DATA字段由外設驅(qū)動 發(fā)送給host.36373839404142434445464748495051

8、LAD3:0/ X “ X 2 X “ Xr ADDR tar SYNC DATTAR圖41 cycle示意流程圖525354555657585960613. 1 StartStart用于指示一個傳輸?shù)拈_始或者結(jié)束。當FRAME#信號有效時,所有的 外設都要監(jiān)視LAD3: 0信號,并在FRAME#信號有效的最后一個時鐘進入 START狀態(tài)。LAD3: 0的值編碼如下表表 4.1 Start 狀態(tài) LAD 3:0定義Bits3:0定義0000開始一個Cycle,用于外設Memory、I/O及、DMA操作0001保留0010響應 Bus master 00011響應 Bus master 1010

9、0-1100保留1101開始 Firmware Memory Read1110開始 Firmware Memory Write1111Stop/Abort,結(jié)束一個 Cycle3.2 Cycle Type / Direction(CYCTYPE+DIR)該狀態(tài)由Host驅(qū)動,對Cycle的傳輸類型(Memory> 10、DMA)以及傳輸方向進行說明。LADEO在該場中被保留,作為外設應該忽略。具體定義值見下表表 4.2 Cyctype+DIR 狀態(tài) LAD3:0定義Bits 卩:2Bitsl000I/O讀001I/O寫010Memory 讀011Memory 寫100DMA讀101DMA

10、寫11X保留6263 3. 3 Size64 該狀態(tài)表示傳輸數(shù)據(jù)DATA字段的大小,III host驅(qū)動,當數(shù)數(shù)據(jù)為16或32bits,65 將分成多個DATA轉(zhuǎn)態(tài)發(fā)送,Size只存在于DMA類型cycle中。而在10和內(nèi)存66 類型cycle中,每個cycle只能傳輸8bits數(shù)據(jù)。Size狀態(tài)LAD1:0有效,LAD3:267 被忽略,LAD3:0具體定義如下68 表 4.3 Size 狀態(tài) LAD3:0定義Bits 1:0定義00傳輸?shù)臄?shù)據(jù)大小為8bits01傳輸?shù)臄?shù)據(jù)大小為16bits10保留11傳輸?shù)臄?shù)據(jù)大小為32bits7071727374757677787980818283848

11、58687883. 4 ADDR/ChannelADDR狀態(tài)表示地址信息,III host驅(qū)動。在10 cycle中,地址信息為16bits (4個時鐘周期);在內(nèi)存cycle中,地址信息為32bits (8個時鐘);而在DMA cycle中,則沒有ADDR狀態(tài),取代的則是Channel狀態(tài)(1個時鐘)。LAD2:0 表示 channel 的序號,其中 channel 0、3 為 8bit channels, channel 5、7 為 16 bit channels, channel4 一般被保留作為bus master的請求信號。ADDR的地 址信息先從高位發(fā)送。3. 5 TAR (Tur

12、n-around)TAR用于交換總線的控制權(quán)(2個時鐘),當host要將總線轉(zhuǎn)交給外設時, TAR由host驅(qū)動;當外設要將總線交還給host時,TAR由外設驅(qū)動。TAR兩個 時鐘周期的笫一個時鐘周期有host或外設驅(qū)動,LAD3:0=llll;第二時鐘周期 host或外設則將LAD3:0置為三態(tài),但山于LAD3:0管腳內(nèi)部有弱上拉, LAD3:0還都是處于高邏輯電平,所以TAR的兩個時鐘LAD3:0都為1111.3. 6 SyncSync用來加入等待狀態(tài),持續(xù)時間為l'N個時鐘周期。在target或者DMA傳輸操作時,Sync ill夕卜設驅(qū)動;在bus master操作時,Sync

13、 ill Host 驅(qū)動??赡艿慕M合見表表4.4 Sync狀態(tài)LAD3:0定義7Bits3:0定義0000準備好0001 -0100保留0101短時等待0110長等待0111-1000保留1001Ready More (DMA Only)1010錯誤1011 -1111保留8990919293949596979899100101102103當外設還沒準備好時,可以插入一些等待周期0101 (短等待)或0110 (長等待),等到Ready狀態(tài)來到時,可以選擇驅(qū)動為“ 0000"(準備好),“1010”(錯 誤)或者 “1001 (Ready More) 4 6. 1 Sync Time

14、out總線上通??赡馨l(fā)生以下兒種潛在的錯誤:1. 當Host發(fā)起一個Cycle (Memory、10、DMA)后,但是,總線上沒有設備驅(qū) 動SY乂場,當Host檢測到3個連續(xù)的時鐘內(nèi)都沒有響應時,便可以認為總線上 沒有外設響應此次Cycle操作。2. Host驅(qū)動一個Cycle (Memory, 10, DMA),個設備驅(qū)動了一個有效的SYNC場來插入等待(LAD3: 0 = , 0101b'或者0110b'),但是卻不能完成該 Cycle,這種情況在外設鎖定的時候就發(fā)生了。此時,Host應釆取以下措施以解 除總線死鎖:假如SYNC是'0101b',那么SYNC

15、時鐘周期最多為8個。當Host檢測 到有多于8個時鐘周期的SYNC場,那么Host將取消這個Cycleo假如SYNC是'0110b',那么這里將沒有最大SYNC長度的限制。外設必 須設計有保護機制來完成這個Cycleo當由Host來驅(qū)動SYNC時,因為延遲的原因,它可能不得不插入大量的等待周期,但外設不應該認為有time out發(fā)生。下圖為SYNC的周期過長引起timeout,此時LFRAME#會拉低4個LCLK周期,進 入start狀態(tài),來終止這個C1041051061071081091101111121131141151161171181194 LCLKS13Y Perip

16、heral n)us( stop dnvuiu / Chipset uill dnve4f highStan 2. ADDR UR TmanyDir&Szw*syoccaucestimeout圖 4.2 LFRAME 終止 cycle4. 7 DATADATA狀態(tài)占用兩個時鐘周期,用于傳送一個字節(jié)數(shù)據(jù)。當數(shù)據(jù)流向外設 時,該場由Host驅(qū)動;反之,當數(shù)據(jù)流向Host時,則該場由外設驅(qū)動。在傳 輸過程的時候,低4位最先被驅(qū)動到總線上,在第一個時鐘,Data3:0被驅(qū)動, 第二個時鐘,Data7:4被驅(qū)動。4.8各事務類型操作舉例120121122Memory Read / WriteI

17、2 3 4 5 6 7 8 9 10 11 12 13 14 15 16唸 TLrLnnnnnnrmnnrmrmnrLFRAME#(fl.遍 Cy4L.4D3:0J# MEM ReadaddressTARnc32 BhsAddiess /FFFIf/ 0101peripheral0000LAD3:0W圖 4. 3 memory read/writeI/O Read/Write12 3 4 5 6 7 8 9 10 11 12 13 14 15 16123CLK(33MHz)IFRAME # -t-| p-I,AD3:0出I/O Read呻 type adilrcssOOPOOpy16 Bits

18、 AddressFFFF0000hoist IwsthosthostLAD|3:0|W mart Cycle type addressI/O Writehoat IwsthostdataTARFFFFperipheral JWipherilTAR16 BlK AddressFFFFhostperipheralTARWOO FFFFperipheraibast124圖 4.41/0 read/write125mLnLrwwwmLrwwLFRAME 律LAD3:0«zD、IA Read了 (host to peripheral )idatastan Cycle t> pe chat

19、uwl size8 b tshost0000hast hast host hostLADPI#"7D、IAVHe Ihost host(pcnpheraJ lohow)-4-j iFFFF |peripheral start Cycle type channelTAR$y»cTARFFFFFFFFIFIF0000peripherali peripheralI.ARFTF>pcnphdralhost 沖訓嚴I 沖ip陽peripheral peripheralFFFF 1001BIlsD吵 (K>00 Blts l)a(a>syiwofloo12612712

20、8129130131132133134135136DMA Read/ Write1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16CLK(33MHz)PS Transfer 16 bits data between host and peripheral圖 4. 5 DMA read/write(16bits)4、LPC總線的測量(邏輯分析儀)用邏輯分析儀TLA5202測得LPC總線中LCLK、LFRAME#、LAD3:0信號,下面為測量的兒組數(shù)據(jù)波形:下面是測的是兩個cycle的總體波形圖,山于我在測試時外接的測試線過長, 在cycle結(jié)束后的末期引入了串擾,圖中的

21、黃色框圖中便為串擾信號波形,理想 狀態(tài)應該是LAD3: 0統(tǒng)一保持高邏輯,后面再統(tǒng)一變?yōu)榈瓦壿?。這里我們可以 看到時鐘信號LCLK并不是一直輸出的,只有當cycle開始時,PCH才會輸出LCLK 信號,cycle結(jié)束后,若一段時間內(nèi)不再有cycle傳輸,LCLK便不再輸出。屹冋I ; l一1科 鹽I由3 弊口I d| 棉|3 .|1371381391401411421431441451461471483 .|AI 50:1C20Z -1干珈乂號千抗佶呂圖5. 1 Cycle總體波形圖下圖測試的是一組I/O read cycle, host要讀取10地址為0064H的數(shù)據(jù), 外設接管總線后,經(jīng)過11個時鐘周期的長等待SYC狀態(tài)(0110)后,變?yōu)閞

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論