30MHz saat ile çeşitli kartlar arasında yönlendirme


9

TLC5945 LED sürücüsünü kullanıyorum . Mikrodenetleyici ( LPC1343 kullanıyorum ) dahili PWM zamanlayıcı / sayacı için bir saat sağlamalıdır. İzin verilen maksimum saat hızı 30MHz olarak belirtilir.

TLC5945 papatya dizimine sahip birkaç kartım olacak. Kartlar, karttan karta konektörler veya kısa şerit kablolarla bağlanır, bir kartın genişliği 10 cm'dir. Seri olarak en fazla 4 tane bağlayacağım.

Muhtemelen tam 30MHz kullanmayacağım, ancak yine de doğru yapmak istiyorum - saat sinyalini sağlam tutarak nasıl yönlendirebilirim / koşullandırabilirim?

Her kartın çıktısına 74HC245 gibi bir tampon eklersem, her arabellekten sonra 10ns gecikme alırım, bunu istemiyorum. Özel "sıfır gecikmeli" saat arabellekleri kullanmalı mıyım? Ne tür bir fesih planı kullanmalıyım?


2
30MHz'de tek bir döngü ~ 33ns'dir. Her bir kurul için tek bir devrenin 1 / 3'ü kadar kapalı olmak bu kadar büyük bir sorun mu?
Toby Lawrence

1
Ne güzel bir soru ve cevaplar. Her cevap, öncekilerden herhangi birini tekrar etmeden çözüme katkıda bulunur!
Vorac

Yanıtlar:


20

30 MHz, sinyali bir iletim hattı problemi olarak ele almanız için yeterlidir. Özellikle konektörler de dahil olmak üzere tasarım boyunca pano düzenine dikkat etmeniz gerekir. 30 MHz sinyalinizle birlikte ekstra topraklama pimleri getirmeniz veya muhtemelen özel konektörler kullanmanız gerekir.

Kartınızın düzeni, katman sayısı hakkında bilgiye ihtiyacınız olacak ve sizin için belirli bir karakteristik empedansı hedefleyebilmeleri veya sadece dielektrik sabitleri gibi parametreler alabilmeleri için hedeflediğiniz kart üreticisiyle koordine etmeniz gerekebilir.

Bu sorunların çoğunun farkında olduğunuza benziyor, ancak onlara hitap etmenin en iyi olduğunu düşündüm, çünkü dikkatli değilseniz, işlevsel ancak çok fazla RF yayan ve asla bir EMI testi.

Sinyali yönlendirme yönergeleri:

  • Empedans ve iz genişliğini hesaplayın.
  • Önce saatlerinizi yönlendirin.
  • Mümkünse, sinyali asla üzerinden yönlendirmeyin. Gerekirse, bypass kapasitörlerini yolun yakınına koyun.
  • Mümkünse / uygulanabilirse, sinyali dahili bir katmandan geçirin (böylece dış toprak ve güç düzlemleri bir çeşit Faraday kafesi olarak işlev görebilir). Bu durumda, sinyal, yongalara erişmesi gereken yollar dışında bir katmana yönlendirilmelidir.
  • Sinyal hiçbir zaman bir yer düzlemi olmadan (ya da kesinlikle bir referans düzlemi olmadan) hiçbir yere gitmez.
  • Sinyal asla güç düzlemleri arasındaki bir sınırı geçmez.
  • Bir konektörden geçerken, topraklama ile çevreleyin.
  • Papatya zincirinde, mümkünse saplama kullanmadan doğrudan saat girişlerine yönlendirin. Altera PDF'den sapsız papatya zinciri şeması
  • Diğer sinyalleri dik olarak çaprazlayın.
  • Diğer sinyallerin onunla gitmesi gerekiyorsa, açıklık verin. İzin genişliğinin dört katı.
  • Mikroşerit / şerit çizgisinin karakteristik empedansına eşit bir dirençle toprağa paralel sonlandırma veya sinyalin yalnızca bir hedefi varsa kaynak sonlandırma kullanın. Bir tartışma için bu ilgili soruya bakın .

Tabii ki, gerçek dünya tasarımında, bu kılavuzlardan bazılarını kırmanız gerekebilir.

Bu kuralların çoğu, yüksek frekanslarda dönüş akımının sinyale yakın hareket etmeye çalışacağı gözleminden kaynaklanır, bu nedenle dönüş akımı için bir yol sağlamanız gerekir. Dönüş akımı fiziksel olarak ayrılırsa, parazitik bir anten yaratırsınız. Dönüş akımı için bir yol sağlayan toprak (veya güç!) Düzlemine referans denir. Referans düzleminden çıkmayın. Bir yoldan geçmeniz gerekiyorsa, referans düzlemi değişir. Baypas kapasitörü yeni ve eski referans düzlemleri arasında ayarlanır.

Konektörleriniz bir sorun yaratacaktır, çünkü muhtemelen PCB'den farklı bir empedansa sahip olacaklar, bu yüzden yansımalara neden olacak ve sinyali bozacaktır. Bir seçenek, kart empedansına uyan empedans kontrollü bir konektör kullanmak olabilir.

Ürün yazılımı tarafında, kenar hızını kontrol etmek için sürücü gücünü denemeniz gerekebilir. Maksimum tahrik gücü genellikle yanlış cevaptır. IC satıcınız, sinyal bütünlüğünü tahmin etmek için devreyi simüle edebileceğiniz bir IBIS modeli sağlayabilmelidir . Kesin olarak, sinyal bütünlüğü veya EMC sorunlarına neden olan saat frekansı değil, kenar hızı (yüksek ve düşük arasında geçiş süresi), çünkü hızlı kenarlar frekans alanında geniş bant geçişleri olarak kendini gösterir. Tahrik gücünü ve / veya döndürme hızını azaltmak kenar hızını düşürür ve harmonik emisyonlarını azaltırken (muhtemelen) saatin titremesini artırır. Saat alıcıları için kabul edilebilir kenar hızının ne olduğunu görmek için veri sayfalarını kontrol edin.

Benim düşüncem, ödevinizi yaparsanız, muhtemelen herhangi bir sinyal tekrarlayıcıya ihtiyacınız olmayacağıdır. Örneğin, yaklaşık 100 MHz'de kablolar üzerine dağıtılmış büyük bir yüksek hızlı paralel veri yolu olan SCSI'yi düşünün. Mümkünse, düzeninizi simüle etmek için HyperLynx gibi bir programa yatırım yapmayı düşünün .

Altera, yüksek hızlı yönlendirme sorunları için mükemmel bir rehbere sahiptir .


Harika bilgiler için teşekkürler. Cevabınızdan, DIY kazınmış tahtalarla bunu çekebilmem mümkün değil mi?
miceuz

@miceuz: Eğer bu bir hobi projesi ise EMC konusunda endişe duymuyorsun, belki. Ortaya çıkan fikir birliği, bunun üst düzey mühendislerin doğru olması için zor olacağı ve bunu yapmaya çalışmanın DIY hiçbir şeyi daha kolay hale getirmediğidir. Öte yandan, bu durumda çalışmazsa saat frekansını düşürebilirsiniz. Papatya zincirinin uzunluğunu azaltmak için alternatif bir düzen bulmaya çalışırdım.
jbarlow

Eğer yapabilirdim bu iki kez upvote.
Renan

10

Jbarlow ve David'in önerdiği her şeyi yapmak size zarar vermeyecek, ama sizin için işleri biraz daha kolay hale getirmeye çalışmama izin verin (veya belki de daha zor, çünkü muhtemelen çok fazla şeyden kurtulabileceğinizi söyleyeceğim) ama söz vermeyeceğim ).

Klasik bir başparmak kuralı, herhangi bir boyut, ilgilenilen en yüksek frekans sinyalinin dalga boyunun 1 / 10'undan daha uzun değilse, bir devreyi toplanmış bir devre olarak düşünebilirsiniz. Topaklanmış bir devre ise, parçalarınızı sadece ayrık elemanlar arasındaki bağlantılar olarak düşünebilirsiniz. Topaklı bir devre değilse, dağıtılmış devre etkileri hakkında endişelenmeniz ve izlerinizi iletim hatları olarak düşünmeniz gerekir.

10 m dalga boyuna karşılık gelen 30 MHz saat frekansından bahsediyorsunuz. FR4 içinden yayılırsa, bu dalga boyu yaklaşık 4.7 m'ye düşürülecektir. Ve devre uzunluğu 40 cm. Saat sinyalinin temeli için, eski başparmak kuralının tam kenarındasınız.

Sorun: Sadece saat frekansı hakkında endişelenmenize gerek yok, aynı zamanda istediğiniz yükseliş ve düşüş zamanını vermek için bu frekansın kaç harmoniğinin iletilmesi gerekiyor. Gönderdiğiniz kenarları kasıtlı olarak yavaşlatırsanız , muhtemelen sadece 1. ve 3. harmoniklerle başa çıkabilirsiniz (David, maksimum sürüş gücü kullanması gerekmediğinden bahsettiğinde bunu kabul etti).

Bu size 90 MHz'lik maksimum bir ilgi frekansı ve yaklaşık 1.6 m'lik ilgili dalga boyu (FR4'te) verir. Yani kritik mesafe 16 cm. Bu, genel olarak yakından bağlı bir dönüş yolu sağlamak, paletlerinizi iletim hatları olarak ayırmak ve uygun bir empedansla sonlandırmak vb. İstediğiniz anlamına gelir.

Ancak muhtemelen kontrollü empedans için fazladan ödeme yapmanız gerekmez. Satıcınızdan alınabilecek minimum genişliğin üzerinde izler (örneğin 8 veya 10 mil) ile tasarlarsanız, normal toleranslar büyük olasılıkla size yeterli performans sağlar.

Ve yol boyunca bir yoldan geçmeniz veya yer düzleminde kısa bir boşluktan geçmeniz gerekiyorsa veya bir yük parçasının yanına bir bypass kondansatörü koyamazsanız, çok fazla terlemeyin. Parkurlarınızı konektörden konektöre doğrudan çalıştırmak istiyorsanız, her bir karttaki yük yongalarına ulaşmak için birkaç cm saplama ile, tamam olacaktır. Yolun kontrolsüz kısmının (veya yer düzlemindeki yuvanın) uzunluğu birkaç cm'den azsa, gününüzü mahvetmeyecektir. 10 cm olsa bile, muhtemelen ondan kaçacaksınız, ancak şansınızı zorlamayın.

Örneğin, kartlar arasında bağlandığınızda, yüksek maliyetli empedans kontrollü bir konektöre gerek yoktur. Birkaç santimetre şerit kablo bile iyi olacak. Şeritteki tellerin topraklama sinyali topraklama veya topraklama sinyali sinyal topraklama modeli iyi bir fikirdir, ancak empedans uyumlu bükümlü çift kablolar veya koaksiyel hakkında endişelenmeyin.

Bir diğeri için, her kartta bir tampon kullanmaya karar verirseniz, bu, her kartın üzerindeki devrenin (10 cm uzunluğunda) topaklı bir devre olarak ele alınmasını sağlar. David'in açıkladığı gibi tampon eğriltmesini yönetmek isteyeceksiniz ve her bir tamponun yükselme ve düşme sürelerini sınırlamanız gerekecek, ancak işlevselliği bozmadan her kartta düzende çok fazla esneklik kazanacaksınız. Bununla birlikte, dönüş yollarınızı sinyal izlerinize yakın tutmak için ne kadar çok yaparsanız, EMC testi söz konusu olduğunda kötü bir sürpriz yapma olasılığınız o kadar az olur.


6

@ Jbarlow'un cevabının oldukça yerinde olduğunu düşünüyorum. Buna biraz eklemek istiyorum, ama söylediklerini tekrarlamakla uğraşmayacağım.

@Jbarlow'a katılmayacağım tek şey tekrarlayıcıların kullanılması veya tüm sinyallerin arabelleğe alınmasıdır. Söylediği doğru, "eğer ödevini yaparsan ...". Ama sorun bu, ödevini yapmak. Yapabilirsiniz, ancak nispeten pahalı kablolara ve konektörlere ihtiyacınız olacak - ve sonra sadece "gerçekten zor" olacak.

Her PCB'de saati tamponlamak için 10 ns gecikme eklemenin gerçekten bir sorun olduğu görülmemektedir. Kesin olarak söylemek zor çünkü BLANK ve XLAT gibi diğer sinyaller hakkında çok fazla ayrıntı bıraktınız. Ancak bir sorun olsa bile, her zaman TÜM sinyalleri arabelleğe alabilirsiniz. 74xx245'teki tüm kapılar aynı gecikmeye (veya en azından benzerine) sahip olma eğiliminde olacaktır ve bu nedenle LED sürücüsündeki toplam zamanlama iyi kalacaktır.

(Not: Veri sayfalarını kontrol edin. İyi bir çip, iki farklı yayılma gecikme numarasını listeler. Biri ayrı bir kapı için, diğeri aynı çip içindeki kapılar arasındaki gecikmeyi fark veya eğriliği gösterir. yine de uygun bir zamanlama analizi yapması gerekecektir.)

PCB'ler arasındaki sinyallerin sonlandırılması ve empedansının elde edilmesi bu tasarımın çalışması için çok önemlidir. Çok iletkenli kablolarda empedansın kontrol edilmesi her zaman zordur ve birkaç PCB ve kablodan tek bir sinyal çalıştırmak sadece sorun ister. Sinyal uzunluğu boyunca birçok noktada empedansta bir değişiklik olacak ve bu da sinyal bütünlüğü problemleri yaratacaktır. PCB'ler arasındaki tüm sinyallerin arabelleğe alınması bunu yönetmeye yardımcı olacaktır. En azından her bir sinyal üzerindeki iz uzunlukları ve empedans değişiklikleri minimumda tutulacaktır.

Sıfır gecikme tamponlarının kullanılması gerekli değildir ve aslında işleri daha da kötüleştirebilir (ve daha pahalı hale getirebilir). Sıfır gecikme tamponları gerçekten Faz-Kilitli-Döngülerdir (PLL'ler) ve mükemmel çalışmak için dikkatli bir tasarım gerektirir. Çoğu durumda bu büyük bir sorun değildir, ancak saatiniz mükemmel değilse kesinlikle bir sorun olabilir. Bu uygulama için bunlardan kaçınmak en iyisidir. Ek olarak, sıfır gecikmeli bir tampon sürekli çalışan bir saatten başka bir şeyi arabelleğe almak için uygun değildir - bu nedenle başka sinyalleri tamponlamanıza yardımcı olmaz.


Mükemmel puan. Arabelleklenmiş sinyaller yaklaşımının muhtemelen çok daha güvenli ve başarılı olma olasılığının yüksek olduğunu kabul ediyorum.
jbarlow

Sinyali nasıl arabelleğe alabilirim? MCU-> Tampon-> Seri terim-> kablo-> Tampon-> TLC5945-> Tampon-> seri terim-> kablo ... veya MCU-> Tampon-> Seri terim-> kablo-> TLC5945-> Tampon -> seri terim-> kablo ... yani kablonun her iki ucundan gelen sinyalleri arabelleğe almam gerekir mi yoksa hem konektör / kablo hem de bir sonraki kart için çalışmak üzere arabelleğe ve sonlandırmaya geçiş yapabilir miyim?
miceuz

@miceuz İdeal olarak her tahtada iki kez arabelleğe alırsınız. Sinyal bir kerede bir konektöre girdiğinde. Sinyal başka bir zaman kartı diğer konektörden ayrılır. Pratik olarak, bir kez yapmak muhtemelen yeterlidir. Yani MCU-> Kablo-> LED-> terim-> buf-> kablo-> led-> terim-> buf-> kablo-> vb. Kaynak serisi sonlandırmanın yalnızca sinyal üzerinde tek bir yükünüz varsa işe yaradığını unutmayın. Hem bir LED sürücü yongası hem de bir tamponunuz var. Direnç ve kap ucunun toprak ucunda yer alan AC sonlandırmaya bakmalısınız.
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.