SPI veri yolu bağlantıları - döngü veya döngü değil mi?


9

Bir SPI veri yolunun fiziksel bağlantısı ile ilgili bir sorum var.

Bir SPI master (bir PIC32 cihazı) ve bir dizi köle (bu durumda PIC16 cihazları) var. Ben sadece kölelere yazıyorum ve protokol, ne zaman ne yapacağını hallediyor, bu yüzden endişelenecek bir MISO veya SS sinyali yok ve sadece tüm kölelere veri ve saat çizgileri ile paralellik yapıyorum. Otobüsün toplam uzunluğu birkaç metreden fazla değildir (60 cm diyelim) ve SCK'yı 8MHz'de çalıştırıyorum.

Şimdi, bağımlı cihazların (aslında diğer kartlardaki arayüz düğümleri olan) fiziksel yerleşimi, SPI veri yolunun master'a geri döneceği şekildedir, böylece her bir döngünün her iki ucunu sırasıyla MOSI ve SCK'ya bağlamak mümkün olacaktır.

Aşağıdaki şema ne demek istediğimi gösteriyor - kırmızı noktalı bağlantılar hakkında konuşuyorum - ve soru şu: Bunu yapmak iyi bir şey mi, değil mi?

SPI veri yolu

Benzer bir yolculuk yapan güç ve zemim var ve bu açıkça - ve açıkça görülebilir - çünkü kölelerin neden olduğu voltaj düşüşünü en aza indiriyor. Ancak, bu sinyal hatlarıyla aynı şeyi yapmanın iyi ya da kötü bir şey olup olmadığı hakkında hiçbir fikrim yok. Bunun yerine bir tür sonlandırmaya izin vermeli miyim - dirençler topraklamalı (?) - veya belki de seri dirençler yansımaları bastırmak için, ya da ne?

Hem noktaları birleştirip hem de noktaları birleştirmeden denedim, tabiri caizse, fonksiyonel bir fark ve 'kapsamda görebildiğim hiçbir değişiklik yok, ama belki 60 cm'den biraz daha uzun veya 8Mhz'den biraz daha hızlı olsaydı, Bir sorunum olur mu? Bu yüzden, bir şey değiştiğinde beni beladan uzak tutacak ne yapacağımı tavsiye ediyorum.

Bu soru özellikle 8Mhz'de 60 cm'lik bir SPI otobüsü için beni rahatsız ediyor olsa da, diğer durumlar için genel ilkeler var mı? Belki bir I2c veri yolu üzerindeki pull-up'lar farklı yerleştirilmelidir?

Uygun okuma materyallerine herhangi bir bağlantı da memnuniyetle karşılanacaktır - bu özel soruyu kapsayan bir şey bulamadım.


Bu bağlantıyla hangi sorunu çözmeye çalıştığınızdan tam olarak emin değilim
PlasmaHH

@ PlazmaHH Bu gerçekten benim sorum - Çözmem gereken bir sorun yok ama bu seçeneğim var. Güç hatlarına yardımcı olduğunu biliyorum, sinyal hatlarına yardımcı olup olmadığını bilmiyorum. Bu aptalca bir soru mu? Belki de çok düşünüyorum.
Roger Rowland

İdeal olarak, 4 katmanlı bir PCB ve özel Vdd ve Vss uçaklarının, her cihaza çok yakın özel bypass kapaklarıyla birlikte birkaç nedenden dolayı iyi bir fikir olacağını ekliyorum.
rdtsc

1
IMO Kırmızıyla önerdiğin bağlantıyı yapardım ve köle 3'ten köle 4'e olan bağlantıdan kurtulurdum.
lucas92

Yanıtlar:


9

Geri döngü mü? HAYIR. Hat, sonlandırmaya ihtiyaç duyacak kadar uzunsa (risetime * c / 10 ya da daha uzun), sonlandırmayı düzgün bir şekilde sonlandırmak ve hat ve sonlandırmayı makul şekilde eşleştirmek için yeterince güçlü bir şekilde sürün. Hat, sonlandırmaya gerek kalmayacak kadar kısaysa, geri döngü bağlantısıyla aradığınız 'ekstra' iletkenliğe ihtiyaç duymaz.

Seri direnç? HAYIR. Bu kaynak sonu sonlandırma stili , satırın sonunda yalnızca tek bir nokta alıcısı için çalışır . Hattaki önceki noktalarda, alıcılarınız için mümkün olan en kötü dalga formunu elde edersiniz, bu da bir yarı gerilime kadar, ardından bir bekleme ve ardından tam gerilime bir adım daha gelir.


Tamam teşekkürler - ne demek istediğini "yeterince güçlü sür" ile açıklayabilir misin ? Doğrudan PIC'den değil, MOSFET veya başka bir şeyle mi demek istediniz? Ayrıca, "düzgün bir şekilde sonlandırmak" demek, topraklama dirençleri mi demek istiyorsunuz? Sonlandırma ihtiyacını belirleyen saat frekansından ziyade nokta yükselme süresini anlıyorum, tam başparmak-kural hesaplamasını gösterebilir misiniz? Hangi birimlerde yükselme zamanı? Nedir c/10?
Roger Rowland

@RogerRowland, sonlandırmanın yüküne iyi bir mantık seviyesi geliştirmesi için 'yeterince güçlü'. Bir uC çıkışı, sonlandırmaya ve sürücü gücüne bağlı olarak yeterince güçlü olabilir, olmayabilir. Yeterli sürücü akımı yoksa bir veya iki paralel bellek kullanın. 'Düzgün' şönt rezistif empedans anlamına gelir. Bunun toprağa bağlı mı yoksa orta raylı mı yoksa AC bağlantılı mı olduğu sisteme bağlıdır. Sürücüyü 3-devlete bildirdiyseniz, geçerli mantık seviyelerini korumak için topraklanmalıdır. Aksi takdirde orta raya sonlandırma sürücüyü daha az yükler.
Neil_UK

@RogerRowland saniye cinsinden yükselme süresi, m / saniye cinsinden ışık hızı, bu yüzden metre cinsinden * c, / 10 'sinyal hattında aynı anda mevcut olan risetime önemsiz bir kısmı' için biraz el yıkamadır
Neil_UK

Tekrar teşekkürler Neil, bu gerçekten faydalı! Düşündüğünüzden emin olmak için bazı deneyler yaparak faydalanacağımı düşünüyorum - belki yağmurlu bir hafta sonu iyi harcanacak.
Roger Rowland

3

Döngü topolojisi ile ilgili gördüğüm sorun, yansımaları bastırmak için sonlandırıcıları doğru yerleştirmenin zor olmasıdır. bu 8MHz'de çok önemli değil, ancak daha yüksek frekanslarda veya daha uzun hatlarda bir sorun haline gelmiş olabilir.

Noktalı çizgilerin nerelere yardımcı olabileceğini gördüğüm tek durum, master'dan yayılma gecikmesinin SLAVE 6kabul edilemez olduğu zamandır. Bu durumda, noktalı çizgileri bağlarsınız, ancak döngüyü ortada bir yerde kesersiniz (örneğin, arasında SLAVE 3ve arasında SLAVE 4) ve her dalı bağımsız olarak sonlandırırsınız.


2

Hızlı sinyaller veya uzun çizgilerle, sinyal yansıması sorun haline gelir. Bu durumlarda, hattın ucunu ve toprağını bağlayan bir direnç (hattın başlangıcını değil) koyarak hattı düzgün bir şekilde sonlandırmanız gerekir. Sonlandırma hattı "elektriksel olarak sonsuz" yapar, böylece sinyal geri gelmez. Sonlandırma bazen reaktif empedansa karşı LC öğelerine ihtiyaç duyar.

Ancak, davanız için sonlandırmaya gerek yoktur (elektriksel olarak gürültülü bir ortamda çalışmadığınız varsayılarak sinyal hızınız için kısa çizgi). Bu yüzden fark görmüyorsunuz. Ayrıca sinyalinizi döngüye sokmak kötü tasarım uygulamasıdır. Bu, sinyal döngüsünü yapar ve devrenize gürültü verir (ve her iki yönde de döngüye girer). Ayrıca hatlarınızdaki RF gürültüsünü yakalamayı kolaylaştırır.

Buna ek olarak, topraklama ve güç hatlarını bağlamak genellikle kötüdür. Dijital anahtarlama gürültüsü ve toprak döngüleri de oradadır ve analog devreler üzerinde dramatik etkiye sahip olabilirler. Gerekirse, voltaj düşüşünü azaltmak için Y çatallarını (uzak uçta bağlantı yok) kullanabilirsiniz. Bu yeterli değilse, daha geniş izler kullanın (daha geniş iz -> daha az direnç -> daha az voltaj düşüşü).

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.