基于Verilog的SMBus總線控制器的設(shè)計與實現(xiàn)
發(fā)布時間:2007/8/23 0:00:00 訪問次數(shù):1302
作者:陳宇杰 付安新
摘要:SMBus是一種高效的同步串行總線。通過分析SMBus總線協(xié)議,提出了一種運行于基于PCI-Express技術(shù)的橋接芯片上的SMBus控制器的設(shè)計方案,并且用Verilog語言描述,最后在Altera公司的FPGA上得以實現(xiàn)。通過仿真測試,證明該方法是穩(wěn)定有效的。
關(guān)鍵詞:SMBus 多μC通訊系統(tǒng) Verilog
SMBus是Intel公司于1995年發(fā)布的一種雙向兩線串行通訊總線標(biāo)準(zhǔn),具有接口線少、通訊效率高等特點。應(yīng)用于多μC(microcontroller)通訊系統(tǒng)中,可以滿足絕大多數(shù)情況下對傳輸速率、信號穩(wěn)定性等性能的要求,且相對于并行總線節(jié)省了大量的硬件資源。因此多μC通訊系統(tǒng)采用SMBus總線來實現(xiàn)是一種很好的解決方案。
本文提出一種基于Verilog的SMBus總線控制器的設(shè)計方法。該方法將總線控制器用有限狀態(tài)機來實現(xiàn),并將其應(yīng)用于基于PCI-Express技術(shù)的橋接芯片中。通過仿真測試,證明該方法是穩(wěn)定有效的。
1 SMBus規(guī)范分析
SMBus由兩根總線即串行數(shù)據(jù)線(SDA)和串行時鐘線(SCL)構(gòu)成。主要應(yīng)用于主從系統(tǒng)。主器件控制總線操作,包括開始/結(jié)束傳輸、發(fā)送信息并產(chǎn)生SMBus總線系統(tǒng)時鐘等。在整個傳輸過程中,所有的傳送都通過主控的SCL來同步。為使總線有“線與”功能,所有器件的SMBus接口都必須是漏極開路或集電極開路的,并且通過上拉電阻使總線在空閑狀態(tài)下為高電平狀態(tài)。這種結(jié)構(gòu)能使不同速度的器件同步運行。圖1是典型的SMBus總線結(jié)構(gòu)圖。
1.2 SMBus通訊時序
總線上的所有器件都有一個唯一的地址,且都可以工作在傳送或接收方式。因此,有四種工作模式,即主發(fā)送、主接收、從發(fā)送和從接收。SMBus總線還具有總線仲裁功能,保證在同一時間只有一個主器件在控制總線。
圖2是讀/寫一個字節(jié)的時序格式。圖中白色塊是主器件控制SDA線,灰度塊是從器件控制SDA線,SCL線一直都由主器件控制。由圖可見,傳輸由一個開始條件開始,并由一個結(jié)束條件中止。SDA上的數(shù)據(jù)在SCL高電平時必須保持穩(wěn)定,不允許有電平跳變;SDA電平只有在SCL低電平時才可以改變。開始條件和結(jié)束條件是特殊的,可以在SCL高電平時改變SDA的電平,在SCL高是電平時,開始條件是把SDA從高電平拉到低電平,而結(jié)束條件則把SDA從低電平拉到高電平。開始條件和結(jié)束條件的這種定義方法可以避免電平與傳輸?shù)臄?shù)據(jù)相混淆。
SMBus協(xié)議定義了十二種傳輸命令格式,其中以讀/寫一個字節(jié)命令格式最為重要。本文所設(shè)計的控制器主要用這兩種命令格式,所以本文主要分析這兩種格式,其它的與之類似,可以很容易地加以擴展,在此略過。
下面分析圖2的時序:
1)總線空閑時,SCL和SDA保證為高電平,等待開始條件。
2)主控產(chǎn)生開始條件,表明要發(fā)起傳輸。
3)主控傳送一個7位地址和一個寫位,指定目標(biāo)器件和寫方式。
4)目標(biāo)器件應(yīng)答。
5)主控傳送一個8位Command Code,指定本次操作類型。
6)目標(biāo)器件應(yīng)答。
7)如果是write byte,主控直接傳送1byte數(shù)據(jù);如果是read byte,則要產(chǎn)生restart條件,后跟目標(biāo)地址和一個讀位,然后開始接收目標(biāo)數(shù)據(jù)。
8)由接收方應(yīng)答。
9)主控發(fā)出結(jié)束條件,結(jié)束整個傳輸。
作者:陳宇杰 付安新
摘要:SMBus是一種高效的同步串行總線。通過分析SMBus總線協(xié)議,提出了一種運行于基于PCI-Express技術(shù)的橋接芯片上的SMBus控制器的設(shè)計方案,并且用Verilog語言描述,最后在Altera公司的FPGA上得以實現(xiàn)。通過仿真測試,證明該方法是穩(wěn)定有效的。
關(guān)鍵詞:SMBus 多μC通訊系統(tǒng) Verilog
SMBus是Intel公司于1995年發(fā)布的一種雙向兩線串行通訊總線標(biāo)準(zhǔn),具有接口線少、通訊效率高等特點。應(yīng)用于多μC(microcontroller)通訊系統(tǒng)中,可以滿足絕大多數(shù)情況下對傳輸速率、信號穩(wěn)定性等性能的要求,且相對于并行總線節(jié)省了大量的硬件資源。因此多μC通訊系統(tǒng)采用SMBus總線來實現(xiàn)是一種很好的解決方案。
本文提出一種基于Verilog的SMBus總線控制器的設(shè)計方法。該方法將總線控制器用有限狀態(tài)機來實現(xiàn),并將其應(yīng)用于基于PCI-Express技術(shù)的橋接芯片中。通過仿真測試,證明該方法是穩(wěn)定有效的。
1 SMBus規(guī)范分析
SMBus由兩根總線即串行數(shù)據(jù)線(SDA)和串行時鐘線(SCL)構(gòu)成。主要應(yīng)用于主從系統(tǒng)。主器件控制總線操作,包括開始/結(jié)束傳輸、發(fā)送信息并產(chǎn)生SMBus總線系統(tǒng)時鐘等。在整個傳輸過程中,所有的傳送都通過主控的SCL來同步。為使總線有“線與”功能,所有器件的SMBus接口都必須是漏極開路或集電極開路的,并且通過上拉電阻使總線在空閑狀態(tài)下為高電平狀態(tài)。這種結(jié)構(gòu)能使不同速度的器件同步運行。圖1是典型的SMBus總線結(jié)構(gòu)圖。
1.2 SMBus通訊時序
總線上的所有器件都有一個唯一的地址,且都可以工作在傳送或接收方式。因此,有四種工作模式,即主發(fā)送、主接收、從發(fā)送和從接收。SMBus總線還具有總線仲裁功能,保證在同一時間只有一個主器件在控制總線。
圖2是讀/寫一個字節(jié)的時序格式。圖中白色塊是主器件控制SDA線,灰度塊是從器件控制SDA線,SCL線一直都由主器件控制。由圖可見,傳輸由一個開始條件開始,并由一個結(jié)束條件中止。SDA上的數(shù)據(jù)在SCL高電平時必須保持穩(wěn)定,不允許有電平跳變;SDA電平只有在SCL低電平時才可以改變。開始條件和結(jié)束條件是特殊的,可以在SCL高電平時改變SDA的電平,在SCL高是電平時,開始條件是把SDA從高電平拉到低電平,而結(jié)束條件則把SDA從低電平拉到高電平。開始條件和結(jié)束條件的這種定義方法可以避免電平與傳輸?shù)臄?shù)據(jù)相混淆。
SMBus協(xié)議定義了十二種傳輸命令格式,其中以讀/寫一個字節(jié)命令格式最為重要。本文所設(shè)計的控制器主要用這兩種命令格式,所以本文主要分析這兩種格式,其它的與之類似,可以很容易地加以擴展,在此略過。
下面分析圖2的時序:
1)總線空閑時,SCL和SDA保證為高電平,等待開始條件。
2)主控產(chǎn)生開始條件,表明要發(fā)起傳輸。
3)主控傳送一個7位地址和一個寫位,指定目標(biāo)器件和寫方式。
4)目標(biāo)器件應(yīng)答。
5)主控傳送一個8位Command Code,指定本次操作類型。
6)目標(biāo)器件應(yīng)答。
7)如果是write byte,主控直接傳送1byte數(shù)據(jù);如果是read byte,則要產(chǎn)生restart條件,后跟目標(biāo)地址和一個讀位,然后開始接收目標(biāo)數(shù)據(jù)。
8)由接收方應(yīng)答。
9)主控發(fā)出結(jié)束條件,結(jié)束整個傳輸。
上一篇:智能脫扣器的軟硬件設(shè)計
熱門點擊
- 大容量串行E2PROM AT24C512及其
- 幀存儲器AL440B及其在視頻回放系統(tǒng)中的應(yīng)
- 距離保護特性元件躲過渡電阻能力分析與研究
- D/A轉(zhuǎn)換器輸出波形的尖峰消除方案
- 先進芯片封裝技術(shù) 鮮 飛 (烽火通信科技股份
- LTCC:電子元件領(lǐng)域的新熱點(中國電子報)
- 基于Verilog的SMBus總線控制器的設(shè)
- 智能顯示驅(qū)動芯片ZLG7289A的設(shè)計 In
- 帶硬件地址識別的UART IP 的設(shè)計和實現(xiàn)
- 單片機89C52并行I/O口實現(xiàn)多個LED顯
推薦技術(shù)資料
- CV/CC InnoSwitch3-AQ 開
- URF1DxxM-60WR3系
- 1-6W URA24xxN-x
- 閉環(huán)磁通門信號調(diào)節(jié)芯片NSDRV401
- SK-RiSC-SOM-H27X-V1.1應(yīng)
- RISC技術(shù)8位微控制器參數(shù)設(shè)
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究
深圳服務(wù)熱線:13751165337 13692101218
粵ICP備09112631號-6(miitbeian.gov.cn)

深圳市碧威特網(wǎng)絡(luò)技術(shù)有限公司
付款方式