magistrala szeregowa może być bardziej wydajna niż tradycyjna magistrala równoległa. Istnieją jednak wyzwania związane z reprezentowaniem i nadawaniem sensu szeregowemu przepływowi danych w kontekście taktowania zegara. Trudności te można rozwiązać, wykorzystując wielokanałowe możliwości zaawansowanych oscyloskopów, takich jak instrumenty Tektronix serii 3000.
kluczem do zrozumienia i interpretacji szeregowych strumieni danych i zegarów jest zrozumienie wewnętrznego działania każdego indywidualnego typu magistrali danych. W szczególności rozważmy magistralę szeregowego interfejsu peryferyjnego (SPI). Przypomina on magistralę I2C, ale istnieją znaczne różnice. Oba są zorganizowane wokół architektur master / slave. Ale połączenie między Panem i niewolnikami jest diametralnie inne.
zazwyczaj SPI działa z jednym urządzeniem nadrzędnym i wieloma Slave 'ami, chociaż jest to możliwe tylko z jednym slave’ em. Linie są następujące: • Master-in, slave-out (MISO). Linia ta przekazuje dane z aktywnego pliku slave Do master. Ponieważ MOSI i MISO są oddzielnymi liniami, dane mogą być przesyłane w obu kierunkach jednocześnie, ze szkodą dla żadnego z nich.
• Slave select (SS). Oddzielna linia jest uruchamiana do każdego pliku slave. Zwykle, gdy system się włącza, na pinie SS każdego urządzenia slave występuje logiczne wysokie napięcie z master. Aby aktywować slave, master przełącza napięcie na tej linii SS na logiczne niskie. Ta metoda wyboru slave jest zamiast koncepcji adresowania zaimplementowanej w magistrali I2C.
szyna SPI jest czasami nazywana schematem trzyprzewodowym lub schematem czteroprzewodowym, jeśli liczyć linię SS dla pojedynczego pliku slave. Nie trzeba dodawać, że każdy z tych przewodów jest w rzeczywistości obwodem dwuprzewodowym, więc wymagana jest uziemiona linia powrotna, ale nie jest brana pod uwagę w nomenklaturze numerycznej. Jeden uziemiony przewód wystarczy, aby wykonać wszystkie te obwody.
Płyta Tektronix MDO Demo 1 zapewnia liczne wyjścia, w tym I2C i SPI bus clock oraz sygnały danych. Przeznaczony jest do współpracy z oscyloskopami Tektronix serii Mdo4000, ale dobrze współpracuje również z instrumentami serii Mdo3000.
Płytka Tektronix MDO Demo 1 odbiera zasilanie za pomocą nietypowego kabla USB typu T, który ma podwójne złącza USB Typu A na jednym końcu. Wkładają do dwóch gniazd USB oscyloskopu. Uzasadnieniem jest to, że wymagania dotyczące zasilania Demo Board 1 są takie, że gdyby użyto standardowego kabla USB, przeciążyłoby to pojedyncze wyjście USB w oscyloskopie.
jedna czerwona i dwie zielone diody LED wskazują odbiór zasilania z oscyloskopu i że płyta jest gotowa do pracy. Na płycie znajduje się wiele zacisków wyjściowych. Nadają się do podłączenia sondy za pomocą końcówek haczykowych sondy i zacisków krokodylkowych z uziemieniem powrotnym.
aby wyświetlić sygnały magistrali SPI, sondy TPP 1000 10:1 podłączają się do wejść analogowych kanału jednego, drugiego i trzeciego. Wszystkie przewody powrotne uziemienia łączą się z jednym z zacisków uziemienia płyty, a trzy końcówki sondy są podłączone do terminali sygnałowych SPI, MISO i MOSI. Jak zawsze, przewody powrotne uziemienia powinny być podłączone najpierw, przed końcówkami sondy.
do wyświetlania sygnału slave-select można użyć czwartego kanału oscyloskopu. Ale ponieważ sygnał ten jest tylko logicznym-wysokim lub logicznym-niskim napięciem, można go zweryfikować na obu końcach magistrali SPI za pomocą standardowego multimetru o wysokiej impedancji lub sondy logicznej.
oscyloskop wyświetla następnie dane SPI i sygnały zegara. Za pomocą przycisków skali kanału pierwszego, kanału drugiego i kanału trzeciego, a następnie automatycznego ustawiania, impulsy można powiększyć w celu zwiększenia czytelności, a akwizycję można zatrzymać, aby wyświetlacz był bardziej stabilny. Za pomocą pokręteł Wave Inspector można przesuwać i powiększać ślady, aby przyjrzeć się im bliżej. Następnie jest to prosta sprawa, aby porównać punkty na zegarze i strumieni danych, aby ustalić stan logiki (wysoki lub niski) w dowolnym momencie w czasie. Pionowy kursor, poruszany przez przekręcenie pokrętła wielofunkcyjnego a, jest pomocny w sprawdzaniu, jak te ślady wyrównują się w odniesieniu do czasu.
widzieliśmy, jak dane magistrali szeregowej SPI i sygnały zegara mogą być wizualizowane za pomocą oscyloskopu. Sondy mogą być podłączone do podobnych terminali w działającym (lub niedziałającym) urządzeniu elektronicznym. (Pamiętaj, aby włączyć przejęcie z powrotem do uruchomienia.)
w przeciwieństwie do I2C, nie ma jednego standardu dla SPI. W latach 80. został opracowany przez firmę Motorola na potrzeby mikrokontrolerów serii 68000. SPI jest de facto, a nie oficjalnym standardem i jako taki pozostaje organiczny i podlega zmianom.
inni producenci wprowadzili SPI z wariantami. Tak więc przy wdrażaniu projektu konieczne jest zapoznanie się z arkuszami danych. Na przykład, niektóre urządzenia slave wymagają opadającej krawędzi w sygnale SS, aby zainicjować komunikację. Gdy istnieje wiele typów slave, wymagane są różne sygnały inicjujące z master. Podobnie jak I2C, SPI jest szybką magistralą szeregową. Ze względu na niskie zapotrzebowanie na moc, jest często używany w telefonach komórkowych, osobistych asystentach cyfrowych i podobnym sprzęcie mobilnym do implementacji interakcji między procesorem, wyświetlaczem, klawiaturą i układami scalonymi.
odmiany obejmują pominięcie linii MISO, gdy komunikacja z slave Do master jest niepotrzebna. Ponadto, linia SS nie jest potrzebna, gdy istnieje tylko jeden slave, a pin slave-select jest uziemiony, więc jest zawsze aktywny.
chociaż prawdą jest, że SPI jest synchronicznym interfejsem szeregowym (SSI), różni się radykalnie od protokołu SSI, który charakteryzuje się sygnalizacją różnicową i pojedynczym kanałem komunikacyjnym simplex.
podczas każdego sygnału zegara następuje transmisja w pełnym dupleksie, zarówno MOSI, jak i MISO. Jeden bit jest wysyłany w każdym kierunku na dwóch oddzielnych liniach. Zwykle stosuje się dwa rejestry przesunięcia, jeden w master i jeden w slave. Transmisja Duplex trwa przez wystarczającą liczbę cykli zegara, aby zakończyć transmisję. W ten sposób Mistrz i niewolnik przejmują rejestry, które są przekazywane przez dwie linie. Jeśli zostanie więcej danych, rejestry przesunięć są przeładowywane i transmisja rozpoczyna się od nowa.
ten proces trwa tyle cykli zegara, ile jest to konieczne, po czym master pozwala sygnałowi select przejść do poziomu logicznego, usuwając zaznaczenie pliku slave. Transmisje są często 8-bitowe, ale istnieją odmiany, takie jak 12-bitowe dla wielu przetworników DAC i ADC oraz 16-bitowe dla kontrolerów z Ekranem dotykowym.
ze względu na różnice sprzętowe i de facto protokołu, szyna SPI ma szereg zalet i wad w odniesieniu do I2C i innych typów szyn. Zalety obejmują możliwość pełnego dupleksu tylko przez dodanie kolejnej linii. Co więcej, istnieje dobra integralność sygnału, wysoka prędkość transmisji i większa potencjalna transmisja danych w porównaniu do I2C. ponadto treść wiadomości jest nieograniczona i nie ogranicza się do 8-bitowych jednostek danych. Generalnie zapotrzebowanie na moc jest mniejsze niż w I2C, ponieważ Rezystory pull-up są niepotrzebne. SPI jest również niezawodny, ponieważ nie wymaga arbitrażu i nie ma potrzeby stosowania unikalnych adresów slave. Ponieważ nie ma maksymalnej prędkości zegara poza ograniczeniami urządzeń slave, istnieje możliwość pracy z dużą prędkością.
jak w każdej technologii, istnieją wady w odniesieniu do niektórych innych protokołów. Ponieważ nie ma potwierdzenia slave, w przypadku awarii slave lub okablowania, master, nieświadomy, że coś jest nie tak, może mówić do pustki bez słuchacza. Ponadto brak jednego sformalizowanego standardu może sprawić, że Walidacja Zgodności będzie niepraktyczna. Ponadto istnienie licznych nieuregulowanych odmian SI może sprawić, że nabycie sprzętu będzie problematyczne.
w dół drogi, jest możliwe, że SPI może zobaczyć większy stopień kodyfikacji. Ten rozwój będzie oznaczać dalsze ulepszenia SPI, które mogłyby zmniejszyć zamieszanie, które obecnie istnieje. To powiedziawszy, jak obecnie wdrażane, SPI jest dość przyjazny dla użytkownika, szczególnie w jego wymogu małej mocy.