SMBus: Rad, razlike i njegove primjene

Isprobajte Naš Instrument Za Uklanjanje Problema





SMBus je 1995. godine pokrenuo Intel i temelji se na I²C protokolu serijske sabirnice tvrtke Philips. Ova sabirnica prenosi podatke, CLK i upute gdje je frekvencija takta u rasponu od 10 kHz do 100 kHz. Glavna namjera SMBusa je omogućiti jeftinu i moćnu metodu za kontrolu i dobivanje podataka s uređaja na matičnoj ploči. SMBus se obično koristi u računalima za kontrolu temperature, pametne baterije i drugu komunikaciju upravljanja sustavom niske propusnosti.


Ova sabirnica identificira komunikacijsku vezu između punjača, inteligentne baterije i mikrokontrolera koji komunicira s ostatkom sustava. No, SMBus se također koristi za povezivanje različitih uređaja kao što su sistemski senzori, uređaji povezani s napajanjem, komunikacijski uređaji, EEPROM-ovi inventara itd. Ovaj članak govori o pregledu SMBus-a – rad s aplikacijama.



Što je SMBus protokol?

SMBus (sabirnica za upravljanje sustavom) je 2-žično sučelje koje se često koristi između različitih uređaja na matičnoj ploči za sporu komunikaciju upravljanja sustavom. Ovu vrstu autobusa dizajnirao je I2C protokol temelji. Dakle, i I2C i SMBus mogu imati neke sličnosti i također mogu međusobno raditi na sličnoj sabirnici.

Ova sabirnica radi na principima rada I2C koji osiguravaju kontrolnu sabirnicu, posebno za sustav kako bi se omogućile poruke prema ili od uređaja umjesto da se koriste zasebne kontrolne linije za smanjenje broja žica i pinova sustava.



Uređaj sa SMBus-om može pružiti informacije o proizvodnji, obavijestiti sustav o svom dijelu ili broju modela, prijaviti različite vrste grešaka, omogućiti kontrolne parametre i ponovno pregledati njegovu poziciju.

SMBus specifikacija

Specifikacija SMBus jednostavno se odnosi na 3 vrste uređaja host, master & slave.

  • Host je poseban master i osigurava glavno sučelje CPU-u sustava.
  • Glavni uređaj koji izdaje upute, generira satove i prekida prijenos.
  • Podređeni uređaj prima inače reagira na naredbu.

Kako radi SMBus?

Postoje 3 vrste uređaja koji se koriste unutar SMBus komunikacije kao što su host, master i slave uređaj koji su prikazani na sljedećem dijagramu. U ovoj sabirnici, glavni uređaj je specifično glavno sučelje nalik radnom procesoru sustava; međutim, nije uvijek potrebno. Neki sustavi poput jednostavnih sustava za punjenje baterija mogu biti bez hosta.

Glavni uređaj započinje komunikaciju, pokreće CLK i zaustavlja prijenos. Uređaj se može odabrati da bude jednostavno glavni ili glavni-podređeni, pri čemu može raditi ili kao glavni uređaj ili podređeni uređaj.

  SMBus dijagram
SMBus dijagram

Na SMBus-u također postoji jedan master, ali samo jedan može upravljati sabirnicom u bilo kojem trenutku. Na primjer, kada dva uređaja upravljaju sabirnicom odjednom, tada SMBus pruža arbitražni mehanizam koji jednostavno ovisi o žičnoj I vezi svih sučelja SMBus uređaja na SMBus.

Podređeni uređaji odgovaraju na njegovu adresu kao i na naredbe te mogu slati i primati podatke od i do glavnog uređaja. Uređaj se može odabrati u potpunosti kao podređeni uređaj, inače je moguće da u određenim primjerima podređeni uređaj radi kao glavni.

Slično I2C protokolu, svakom podređenom uređaju na ovoj sabirnici jednostavno se dodjeljuje sedmobitna podređena adresa gdje se bit za čitanje ili pisanje dodaje ovoj adresi kako bi se opisalo čita li uređaj poruku koja se prenosi na sabirnici.

Uređaji su nužni za prepoznavanje vlastite adrese, stoga kada uređaj identificira svoju adresu, tada će reagirati na naredbu.

Kada je podređena adresa ove sabirnice u sukobu, tada ona podržava ARP ili protokol za rješavanje adresa. Jednom kada glavno računalo primijeti dva uređaja sa sličnom podređenom adresom, tada će postupak protokola razlučivanja adrese dodijeliti novu jedinstvenu adresu podređenim uređajima. Protokol razlučivanja adresa omogućit će da se uređaji odmah koriste bez potrebe za ponovnim pokretanjem sustava.

Ova sabirnica koristi 2 žice za komunikaciju poput SMBDAT žice i SMBCLK žice gdje se SMBDAT žica koristi za prijenos serijskih podataka, a SMBCLK žica radi kao serijski sat. U gornjem SMBus-u, master jednostavno pokreće SMBCLK koji se kreće od 10 do 100 kHz, međutim, bilo koja linija može pokretati SMBDAT.

Ove dvije žice su dvosmjerne što omogućuje uključivanje signala upozorenja kao što je SMBALERT koji omogućuje uređajima da zatraže pozornost od glavnog računala.

Paket podataka ove sabirnice sadrži početni bit, ACK ili NACK bit, 8 bitova podataka i stop bit. Prijenos podataka SMBus-a koristi neke od funkcija inače protokola različitih SMBus-a pri slanju poruka kao što su slanje bajta, brza naredba, čitanje riječi, pisanje bajta, čitanje bajta, pisanje riječi, procesiranje poziva, blokiranje pisanja, blokiranje čitanja, čitanje procesa poziva i Blokiraj Pisanje-Blokiraj.

Ova sabirnica također podržava PEC (packet error checking) za poboljšanje pouzdanosti komunikacije. Dakle, to se može izvesti uključivanjem koda pogreške paketa na kraju svake poruke.

Funkcije

SMBus funkcije nazivaju se i protokoli. Dakle, glavni protokoli SMBus-a su Quick Command, Send Byte, Receive Byte, Write Byte, Read Byte, Process Call, Block Write/Read Block Write-Block Read Process Call, SMBus Host Notify Protocol, Write-32 Protocol, Read-32 Protokol, pisanje 64-protokola i čitanje 64 protokola.

SMBUS format poruke

Nakon uvjeta START, glavni će locirati 7-bitnu adresu podređenog uređaja i treba se obratiti na sabirnicu. Dakle, duljina adrese je 7 bita nakon čega slijedi 8 bita koji označavaju smjer prijenosa podataka (R/W); ONE specificira zahtjev za READ (podaci), a NULA specificira WRITE (prijenos).

  Format poruke
Format poruke

Prijenos podataka uvijek se prekida STOP uvjetom generiranim preko mastera.

Svaki bajt uključuje 8 bitova i svaki bajt se prenosi na SMBus i treba ga pratiti kroz bit potvrde. Bajtovi se prvo prenose kroz MSB (bit najvećeg značaja).

Tipični SMBus uređaj uključuje skup naredbi pomoću kojih se podaci mogu jednostavno čitati i pisati. Duljina svih ovih naredbi je 1 bajt, dok se njihovi argumenti, kao i povratne vrijednosti, mogu mijenjati unutar duljine.

Dopuštanje naredbe ne postoji inače nije podržano, pa može uzrokovati stanje pogreške. U skladu sa specifikacijom SMBus, MSB se prvo prenosi.

Prvo, sve naredbe postavljaju uvjet pokretanja preko sabirnice, nakon toga pokreću prijenos slanjem podataka ili naredbe, čekaju prihvaćanje od podređenog uređaja tijekom prijenosa podataka ili naredbe, zatim postavljaju uvjete zaustavljanja na sabirnici.

Uvjeti pokretanja i zaustavljanja za SMBus protokol

Stanje START & STOP poruke bit će definirano s dva jedinstvena stanja sabirnice od visokog do niskog i od niskog do visokog.

  Uvjeti pokretanja i zaustavljanja
Uvjeti pokretanja i zaustavljanja

U prijelazu HIGH u LOW SMBDAT retka, kada je SMBCLK HIGH tada označava START uvjet poruke.

U prijelazu LOW u HIGH SMBDAT retka, kada je SMBCLK HIGH tada definira STOP uvjet poruke. Dakle, ova dva uvjeta uvijek generira glavni sabirnice. Autobus postaje zauzet nakon uvjeta START. Autobus će ponovno postati neaktivan nakon određenog vremena nakon stanja STOP.

SMBus hardverski zahtjevi

Hardverski zahtjevi SMBus-a za omogućavanje učinkovite, kao i besprijekorne komunikacije između osobnog računala i njegovog najbitnijeg hardvera su dvije žice kao što su SMBDAT & SMBCLK, PSU (jedinica za napajanje), skup IC-ova, drajveri i njegovi ventilatori . U osnovi, ovaj SMBus kontroler omogućuje računalu da rukuje i uspješno izvršava naredbe kao što je uključivanje PSU-a i upravljanje njegovim ventilatorima.

SMBus prijenos podataka koristi različite protokole ili funkcije tijekom prijenosa poruka kao što su Send Byte, Quick Command, Write Byte, Read Byte, Write Word, Read Word, Block Read, Process Call, Block Write, itd. Također podržava PEC ili provjeru pogreške paketa za povećanje pouzdanosti komunikacije jednostavnim uključivanjem koda pogreške paketa na kraju svake poruke.

SMBus hardver jednostavno osigurava kontrolu vremena i mijenjanja brzina koja se koristi za serijske prijenose. Dakle, hardver SMBus-a obavlja različite nezavisne aplikacijske zadatke kao što su kontrola vremena, serijski prijenosi podataka i prepoznavanje podređenih adresa.

SMBus protiv I2C

The razlika između SMBus i I2C uključuje sljedeće.

SMBus

2C

Pojam SMBus je kratica za “System Management Bus”. Pojam I2C je kratica za “Inter-Integrated Circuit”.
SMBus je 2-žična kontrolna sabirnica koja se koristi u zadacima upravljanja energijom i sustavom. I2C je ugrađeni komunikacijski protokol koji se koristi za niske propusnosti i male udaljenosti.
Sustav može koristiti ovu sabirnicu za usmjeravanje poruka od i do uređaja radije nego da aktivira pojedinačne kontrolne linije.

I2C se obično koristi za povezivanje perifernih uređaja niske brzine kao što su mikrokontroleri i senzori na procesore na malim udaljenostima u IC-u.
Maksimalna CLK brzina je 100 kHz. Maksimalna CLK brzina je 400 kHz.
Minimalna CLK brzina je 10 kHz. Nema minimalne brzine CLK.
35 ms niskog CLK vremenskog ograničenja. Nema vremenskog ograničenja.
Ima fiksne logičke razine. Njegove logičke razine ovise o VDD-u.
Ima različite vrste adresa kao što su rezervirane, dinamičke itd. Ima različite vrste adresa kao što su opća adresa slave poziva, 7-bitna i 10-bitna.
Ima razne protokole sabirnice kao što su procesni pozivi, brze naredbe itd. Nema protokole sabirnice.

SMBus vs Pmbus

Razlika između SMBus i Pmbus uključuje sljedeće.

SMBus

Pmbus

SMBus je 2-žična, jednostrana sabirnica koja se koristi za laganu komunikaciju. Proširenje SMBus-a je Pmbus i to je jeftini protokol koji se uglavnom koristi za komunikaciju između uređaja za upravljanje napajanjem.
Podređeni način rada ove sabirnice dopušta vrijednosti brzina prijenosa podataka kao što su 10 kbps, 50 kbps, 100 kbps i 400 kbps. Podređeni način rada ove sabirnice jednostavno dopušta vrijednosti brzine prijenosa podataka poput 100 kbps i 400 kbps.
Ova vrsta sabirnice radi s I2C hardverom, no uključuje softver druge razine dopuštajući zamjenu uređaja bez ponovnog pokretanja sustava. Ova sabirnica proširuje SMBus jednostavnim definiranjem skupa naredbi uređaja i posebno je dizajnirana za rukovanje pretvaračima snage, izlažući atribute uređaja kao što su izmjerena struja, napon, temperatura itd.
SMBus je nadskup I2C PMBus je nadskup SMBus-a
Ova sabirnica uključuje slojeve mreže i podatkovne veze. Ova sabirnica uključuje transportni sloj i skup naredbi.

Vremenski dijagram

The SMBus vremenski dijagram prikazan je u nastavku.

  Vremenski dijagram SMBus-a
Vremenski dijagram SMBus-a

TLOW.SEXT je pomoćni uređaj koji proširuje CLK cikluse unutar jedne poruke od START do STOP. Stoga je moguće da će glavni ili drugi podređeni uređaj također produžiti CLK ciklus kako bi uzrokovao da nisko produženo vrijeme kombiniranog CLK bude veće od TLOW.SEXT. Dakle, ovaj parametar se jednostavno mjeri preko podređenog uređaja kao pojedinačni cilj glavnog uređaja pune brzine.

TLOW.MEXT je glavni uređaj koji proširuje CLK cikluse u svakom bajtu poruke. Stoga je moguće da će drugi glavni ili podređeni uređaj također proširiti CLK kako bi uzrokovao da nisko vrijeme kombiniranog CLK bude veće u usporedbi s TLOW.MEXT na određenom bajtu. Dakle, parametri se jednostavno mjere putem podređenog uređaja pune brzine kao što je pojedinačni cilj nadređenog.

Prijave

The aplikacije SMBus-a uključuju sljedeće.

  • SMBus se koristi kao čip komponente sustava koji se koristi za komunikaciju unutar sustava. Točnije, omogućuje komunikaciju baterija s drugim komponentama sustava kao što su komponente povezane s napajanjem i CPU.
  • Ovo se koristi za laganu komunikaciju.
  • Ova sabirnica se koristi za praćenje kritičnih parametara u ugrađeni sustavi & na matičnim pločama osobnog računala.
  • Ovo je najčešći tip komunikacije za napredne mjerače goriva tvrtke Texas Instruments.
  • Ovo se koristi u komunikaciji upravljanja sustavom koja se manje temelji na propusnosti.

Dakle, ovo je sve o tome pregled SMBus-a – rad s aplikacijama. Ovo je jednostavna dvožična sabirnica s jednim krajem koja se koristi za laku komunikaciju. Ova se sabirnica koristi u matičnim pločama računala za komunikaciju s izvorom napajanja za upute ON ili OFF. Evo pitanja za vas, što je I2C protokol?