KOBİ : Çalışma, Farklılıklar ve Uygulamaları

Sorunları Ortadan Kaldırmak Için Enstrümanımızı Deneyin





SMBus, 1995 yılında Intel tarafından piyasaya sürüldü ve Philips'in I²C seri veri yolu protokolüne dayanıyor. Bu veri yolu, saat frekansının 10 kHz ila 100 kHz arasında değiştiği verileri, CLK ve talimatları taşır. SMBus'un temel amacı, bir anakart üzerindeki cihazları kontrol etmek ve bu cihazlardan veri almak için ucuz ve güçlü bir yönteme izin vermektir. SMBus normalde PC'lerde sıcaklık kontrolü, akıllı piller ve diğer düşük bant genişliği sistem yönetimi iletişimi için kullanılır.


Bu veri yolu, bir şarj cihazı, akıllı bir pil ve sistemin geri kalanıyla iletişim kuran bir mikro denetleyici arasındaki iletişim bağlantısını tanımlar. Ancak SMBus, sistem sensörleri, güçle ilgili cihazlar, iletişim cihazları, envanter EEPROM'ları vb. gibi farklı cihazları bağlamak için de kullanılır. Bu makalede, uygulamalarla çalışan bir SMBus'a genel bir bakış anlatılmaktadır.



SMBus Protokolü nedir?

SMBus (Sistem Yönetim Veri Yolu), düşük hızlı sistem yönetimi iletişimi için bir anakart üzerindeki çeşitli cihazlar arasında sıklıkla kullanılan 2 kablolu bir arabirimdir. Bu tür otobüsler tarafından tasarlanmıştır. I2C protokolü temeller. Dolayısıyla hem I2C hem de SMBus'un bazı benzerlikleri olabilir ve benzer veriyolu üzerinde birlikte çalışabilirler.

Bu veri yolu, sistem kablolarını ve pin sayısını azaltmak için ayrı kontrol hatları kullanmak yerine, özellikle sistemin cihazlara veya cihazlardan mesajlara izin vermesi için bir kontrol veriyolu sağlayan I2C çalışma prensipleri üzerinde çalışır.



SMBus'lu bir cihaz, üretim bilgilerini sağlayabilir, sistemi parça veya model numarası hakkında bilgilendirebilir, farklı türde hataları rapor edebilir, kontrol parametrelerine izin verebilir ve konumunu tekrar ziyaret edebilir.

KOBİ Özelliği

SMBus'un spesifikasyonu, ana bilgisayar, ana ve köle olmak üzere 3 tür cihaza atıfta bulunur.

  • Bir ana bilgisayar belirli bir yöneticidir ve sistemin CPU'suna ana arabirimi sağlar.
  • Talimatları yayınlayan, saatleri oluşturan ve aktarımı sonlandıran bir ana cihaz.
  • Bir bağımlı cihaz, aksi takdirde bir komuta tepki verir.

SMBus Nasıl Çalışır?

Aşağıdaki şemada gösterilen host, master ve slave cihaz gibi SMBus iletişiminde kullanılan 3 çeşit cihaz vardır. Bu veri yolunda, ana cihaz, sistemin CPU'suna özel bir ana iş benzeri arabirimdir; ancak, her zaman gerekli değildir. Basit pil şarj sistemleri gibi bazı sistemler ana bilgisayarsız olabilir.

Bir ana cihaz iletişimi başlatır, CLK'yı çalıştırır ve aktarımı durdurur. Bir cihaz, sadece bir master veya bir master-slave olarak seçilebilir, burada ya bir ana cihaz olarak, aksi halde bir bağımlı cihaz olarak çalışabilir.

  KOBİ Diyagramı
KOBİ Diyagramı

SMBus'ta birden fazla master vardır, ancak herhangi bir zamanda sadece bir tanesi bus'a hakim olabilir. Örneğin, iki cihaz aynı anda veriyoluna hakim olduğunda, SMBus, SMBus cihazının tüm arayüzlerinin SMBus'a kablolu-VE bağlantısına bağlı olan bir tahkim mekanizması sağlar.

Bağımlı cihazlar, komutların yanı sıra adresine de yanıt verir ve bir ana cihazdan ve bir ana cihaza veri iletebilir ve alabilirler. Bir cihaz tamamen slave olarak seçilebilir, aksi takdirde bazı örneklerde slave'in master gibi çalışması sağlanabilir.

I2C protokolüne benzer şekilde, bu veri yolundaki her bağımlı birim, aygıtın veri yolunda iletilen mesajı okuyup okumadığını veya yazıp yazmadığını açıklamak için okuma veya yazma bitinin bu adrese eklendiği yedi bitlik bir bağımlı adrese atanır.

Cihazların kendi adreslerini tanımaları gerekir, bu nedenle bir cihaz adresini tanımladıktan sonra komuta tepki verir.

Bu veri yolunun bağımlı adresi çakıştığında, ARP veya Adres Çözümleme Protokolünü destekler. Ana bilgisayar, benzer bir bağımlı adrese sahip iki cihazı fark ettiğinde, adres çözümleme protokolü prosedürü, bağımlılara dinamik olarak yeni bir benzersiz adres atayacaktır. Adres çözümleme protokolü, sistemin yeniden başlatılmasına gerek kalmadan cihazların hemen kullanılmasına izin verecektir.

Bu veri yolu, SMBDAT kablosunun ve SMBCLK kablosunun seri verileri aktarmak için kullanıldığı ve SMBCLK kablosunun seri saat gibi çalıştığı SMBDAT kablosu ve SMBCLK kablosu gibi iletişim için 2 kablo kullanır. Yukarıdaki SMBus'ta, master sadece 10 ila 100 kHz arasında değişen SMBCLK'yi çalıştırır, ancak herhangi bir hat SMBDAT'ı çalıştırabilir.

Bu iki kablo, cihazların ana bilgisayardan dikkat talep etmesine izin veren SMBALERT gibi bir uyarı sinyali ekleme seçeneği sağlayan çift yönlüdür.

Bu veri yolunun veri paketi bir Başlangıç ​​biti, bir ACK veya NACK biti, 8 bit veri ve bir Durdurma biti içerir. SMBus'un veri aktarımı, Bayt Gönder, Hızlı Komut, Kelime Oku, Bayt Yaz, Bayt Oku, Kelime Yaz, Çağrı İşleme, Blok Yazma, Blok Okuma, İşlem Çağrısını Okuma gibi mesajlar gönderirken farklı SMBus protokollerinin bazı işlevlerini kullanır. Engelle Yazma Engelle.

Bu veri yolu, iletişim güvenilirliğini artırmak için PEC'yi (paket hatası denetimi) de destekler. Böylece bu, her mesajın sonuna bir paket hata kodu eklenerek gerçekleştirilebilir.

Fonksiyonlar

KOBİ işlevleri protokoller de denir. Bu nedenle SMBus'un ana protokolleri Hızlı Komut, Bayt Gönder, Bayt Al, Bayt Yaz, Bayt Oku, İşlem Çağrısı, Blok Yazma/Okuma Blok Yazma-Blok Okuma İşlem Çağrısı, SMBus Ana Bilgisayar Bildirim Protokolü, Yaz-32 Protokolü, Okuma-32'dir. Protokol, 64-Protokol Yaz ve 64 Protokolü Oku.

SMBUS Mesaj Formatı

BAŞLAT koşulundan sonra, ana birim, bağımlı aygıtın 7 bitlik adresini bulur ve bus üzerinde adreslenmesi gerekir. Bu nedenle, adresin uzunluğu 7 bit uzunluğundadır ve ardından veri aktarım yönünü (R/W) belirten 8 bitlik bir uzunluktur; BİR OKUMA (veri) isteğini belirtir ve SIFIR bir YAZMA (iletim) belirtir.

  Mesaj Formatı
Mesaj Formatı

Veri aktarımı, her zaman master aracılığıyla oluşturulan bir STOP koşulu ile sonlandırılır.

Her bayt 8 bit içerir ve her bayt SMBus'a aktarılır ve bir onay biti ile takip edilmelidir. Baytlar önce MSB (en önemli bit) aracılığıyla iletilir.

Tipik bir SMBus cihazı, verilerin basitçe okunup yazılabileceği bir dizi komut içerir. Tüm bu komutların uzunluğu 1 bayt uzunluğundayken, argümanları ve dönüş değerleri uzunluk içinde değişebilir.

Bir komuta izin vermek mevcut değildir, aksi takdirde desteklenmez, bu nedenle bir hata durumuna neden olabilir. SMBus spesifikasyonuna uygun olarak, önce MSB aktarılır.

İlk olarak, tüm komutlar bus üzerinde bir başlatma koşulu belirler, ardından veri veya komutu ileterek iletimi başlatır, veri veya komut iletimi boyunca bağımlı cihazdan bir kabul bekleyin, ardından bus üzerinde bir durdurma koşulu ayarlar.

SMBus Protokolü için Başlatma ve Durdurma Koşulları

Bir mesajın BAŞLAT & DURDUR koşulu, yüksekten düşüğe ve düşükten yükseğe iki benzersiz veri yolu koşuluyla tanımlanacaktır.

  Başlatma ve Durdurma Koşulları
Başlatma ve Durdurma Koşulları

YÜKSEK - DÜŞÜK SMBDAT satır geçişinde, SMBCLK YÜKSEK olduğunda, bir mesajın BAŞLANGIÇ durumunu gösterir.

DÜŞÜK - YÜKSEK SMBDAT satır geçişinde, SMBCLK YÜKSEK olduğunda, mesajın bir STOP koşulunu tanımlar. Dolayısıyla bu iki koşul her zaman otobüsün yöneticisi tarafından üretilir. START durumundan sonra otobüs meşgul olur. Bir STOP koşulunun ardından belirli bir süre sonra otobüs tekrar boşta kalacaktır.

KOBİ Donanım Gereksinimleri

Bir PC ile en temel donanımlarından bazıları arasında verimli ve kesintisiz iletişim sağlamak için SMBus'un donanım gereksinimleri, SMBDAT ve SMBCLK, PSU (Güç Kaynağı Ünitesi), IC'ler, sürücüler ve soğutma fanları gibi iki kablodur. . Temel olarak, bu SMBus Denetleyicisi, bir bilgisayarın PSU'sunu AÇMAK ve soğutma fanlarını kontrol etmek gibi komutları başarıyla işlemesine ve yürütmesine izin verir.

SMBus veri aktarımı, Gönderme Baytı, Hızlı Komut, Bayt Yazma, Bayt Okuma, Kelime Yazma, Kelime Okuma, Blok Okuma, İşlem Çağrısı, Blok Yazma vb. gibi mesajları aktarırken farklı protokoller veya işlevler kullanır. Ayrıca, PEC veya paket hata kontrolünü destekler. her mesajın ucuna bir paket hata kodu ekleyerek iletişim güvenilirliğini arttırmak.

SMBus donanımı, seri aktarımlar için kullanılan zamanlama ve kaydırma kontrolünü sağlar. Böylece SMBus'un donanımı, zamanlama kontrolü, seri veri aktarımları ve bağımlı adreslerin tanınması gibi farklı bağımsız uygulama görevlerini yerine getirir.

KOBİ'lere Karşı I2C

bu SMBus ve I2C arasındaki fark aşağıdakileri içerir.

KOBİ'ler

2C

SMBus terimi, “Sistem Yönetim Veri Yolu” anlamına gelir. I2C terimi 'Inter-Integrated Circuit' anlamına gelir.
SMBus, enerji ve sistem yönetimi görevlerinde kullanılan 2 kablolu bir kontrol veriyoludur. I2C, düşük bant genişliği ve kısa mesafeler için kullanılan yerleşik bir iletişim protokolüdür.
Bir sistem, tek tek kontrol hatlarını etkinleştirmek yerine, aygıtlardan gelen mesajları yönlendirmek için bu veri yolunu kullanabilir.

I2C normalde mikrodenetleyiciler ve sensörler gibi düşük hızlı tabanlı çevre birimlerini bir IC'deki kısa mesafelerin üzerindeki işlemcilere bağlamak için kullanılır.
Maksimum CLK hızı 100 kHz'dir. Maksimum CLK hızı 400 kHz'dir.
Minimum CLK hızı 10 kHz'dir. Minimum CLK hızı yok.
35ms düşük CLK zaman aşımı. Zaman aşımı yok.
Sabit mantık seviyelerine sahiptir. Mantık seviyeleri VDD'ye bağlıdır.
Ayrılmış, dinamik vb. gibi çeşitli adres türlerine sahiptir. Genel çağrı bağımlı adresi, 7 bit ve 10 bit gibi farklı adres türleri vardır.
İşlem çağrıları, hızlı komutlar vb. gibi çeşitli veri yolu protokollerine sahiptir. Bus protokolleri yoktur.

KOBİ'lere Karşı Pmbus

SMBus ve Pmbus arasındaki fark aşağıdakileri içerir.

KOBİ'ler

Pmbus

SMBus, hafif iletişim için kullanılan 2 kablolu, tek uçlu bir veriyoludur. SMBus'un uzantısı Pmbus'tur ve çoğunlukla güç yönetim cihazları arasında iletişim için kullanılan düşük maliyetli bir protokoldür.
Bu veri yolunun köle modu, 10kbps, 50 kbps, 100 kbps & 400 kbps gibi veri hız değerlerine izin verir. Bu veri yolunun bağımlı modu, 100 kbps ve 400 kbps gibi veri hızı değerlerine izin verir.
Bu veri yolu türü, I2C donanımıyla çalışır, ancak aygıtların sistemi yeniden başlatmadan çalışırken değiştirilmesine izin vererek ikinci düzey yazılım içerir. Bu veri yolu, cihazın bir dizi komutunu basitçe tanımlayarak SMBus'u genişletir ve özellikle güç dönüştürücülerini işlemek, ölçülen akım, voltaj, sıcaklık vb. gibi cihaz özelliklerini ortaya çıkarmak için tasarlanmıştır.
SMBus, I2C'nin bir üst kümesidir PMBus, SMBus'un bir üst kümesidir
Bu veri yolu, hem Ağ hem de Veri Bağlantısı Katmanlarını içerir. Bu veri yolu, Taşıma katmanını ve bir dizi komutu içerir.

Zamanlama Şeması

bu SMBus zamanlama diyagramı aşağıda gösterilmiştir.

  SMBus'un Zamanlama Şeması
SMBus'un Zamanlama Şeması

TLOW.SEXT, CLK döngülerini BAŞLAT'tan DURDUR'a kadar tek bir mesaj içinde uzatan bağımlı cihazdır. Bu nedenle, ana veya başka bir bağımlı aygıtın, birleşik CLK'nın düşük uzatılmış süresinin TLOW.SEXT'den daha yüksek olmasına neden olacak şekilde CLK döngüsünü de uzatması mümkündür. Böylece, bu parametre, tam hızlı bir master'ın tek hedefi gibi, bağımlı cihaz aracılığıyla basitçe ölçülür.

TLOW.MEXT, bir mesajın her baytında CLK döngülerini genişleten ana cihazdır. Bu nedenle, başka bir ana veya bağımlı aygıtın, birleşik CLK'nın düşük süresinin belirli bir bayt üzerinde TLOW.MEXT ile karşılaştırıldığında daha yüksek olmasına neden olacak şekilde CLK'yı genişletmesi de mümkündür. Böylece parametreler, master'ın tek hedefi gibi tam hızlı bir bağımlı cihaz aracılığıyla basitçe ölçülür.

Uygulamalar

bu SMBus uygulamaları aşağıdakileri içerir.

  • SMBus, bir sistem içinde iletişim kurmak için kullanılan bir sistem bileşeni çipi olarak kullanılır. Daha özel olarak, pillerin güçle ilgili bileşenler ve CPU gibi sistemin diğer bileşenleri ile iletişim kurmasını sağlar.
  • Bu hafif iletişim için kullanılır.
  • Bu bus, kritik parametreleri izlemek için kullanılır. gömülü sistemler & PC anakartlarında.
  • Bu, Texas Instruments'ın gelişmiş yakıt göstergeleri için en yaygın iletişim türüdür.
  • Bu, daha az bant genişliği tabanlı sistem yönetimi iletişiminde kullanılır.

Böylece, tüm bunlar hakkında bir SMBus'a genel bakış - uygulamalarla çalışma. Bu, hafif iletişim için kullanılan basit ve tek uçlu iki telli bir veriyoludur. Bu veri yolu, bilgisayarların ana kartlarında AÇMA veya KAPAMA komutları için güç kaynağı ile iletişim için kullanılır. İşte size bir soru, I2C protokolü nedir?