Маршрутизація 30 МГц тактового режиму через кілька плат


9

Я використовую світлодіодний драйвер TLC5945 . Мікроконтролер (я використовую LPC1343 ) повинен забезпечити годинник для його внутрішнього таймера / лічильника ШІМ. Максимально дозволена тактова частота визначається як 30 МГц.

У мене буде кілька дощок з TIS5945 маргаритками. Дошки підключатимуться за допомогою роз'ємів «плата до плати» або коротких стрічкових кабелів, ширина однієї дошки - 10 см. У мене буде максимум 4 з’єднані послідовно.

Можливо, я не буду використовувати повний 30 МГц, але все-таки хочу зробити це правильно - як я маршрутизую / передаваю тактовий сигнал, зберігаючи його недоторканим?

Якщо я додаю буфер типу 74HC245 на виході кожної дошки, я отримаю 10ns затримку після кожного буфера, я цього не хочу. Чи варто використовувати спеціалізовані буфери тактових годин із «нульовою затримкою»? Яку схему припинення я повинен використовувати?


2
Один цикл на 30 МГц становить ~ 33ns. Чи велике значення має відключення на 1/3 одного циклу на дошці?
Тобі Лоуренс

1
Яке чудове запитання та відповіді. Кожна відповідь додає рішення, не повторюючи жодного з попередніх!
Vorac

Відповіді:


20

30 МГц достатньо, що вам потрібно трактувати сигнал як проблему лінії передачі. Вам потрібно буде звернути увагу на компонування дощок у всій конструкції, включаючи і особливо на з'єднувачі. Вам потрібно буде піднести додаткові заземлювальні штифти разом із сигналом 30 МГц або, можливо, використовувати спеціальні роз'єми.

Вам знадобиться інформація про макет вашої дошки, кількість шарів, і вам може знадобитися узгодити з вашим призначеним виробником плати, щоб вони могли орієнтуватися на певний характерний для вас опір або просто отримати такі параметри, як діелектричні константи.

Це здається, що ви знаєте про багато цих питань, але я вважав, що найкраще вирішити їх, тому що якщо ви не будете обережні, ви можете отримати дизайн, який функціональний, але випромінює багато РФ і ніколи не пройде через ЕМІ-тест.

Вказівки щодо маршрутизації сигналу:

  • Обчисліть опір і ширину сліду.
  • Спочатку розкладіть годинник.
  • Якщо це можливо, ніколи не направляйте сигнал через вит. Якщо це необхідно, поставте байпасні конденсатори поблизу входу.
  • Якщо можливо / застосовно, направляйте сигнал через внутрішній шар (щоб зовнішня земля та силові площини могли функціонувати як своєрідна клітка Фарадея). У цьому випадку сигнал повинен бути спрямований на один шар, за винятком віасів, які йому потрібні для доступу до мікросхем.
  • Сигнал ніколи нікуди не йде без площини заземлення (або строго кажучи, опорної площини).
  • Сигнал ніколи не перетинає межу між силовими площинами.
  • Проходячи через роз'єм, оточіть його підставою.
  • У ланцюжку ромашок рухайтесь безпосередньо до входів годинника, не використовуючи заглушки, якщо це можливо. Діаграма ланцюга ромашки без заглушок від PDF Altera
  • Перетинайте інші сигнали в перпендикулярі.
  • Якщо інші сигнали повинні подорожувати з ним, дайте їм дозвіл. У чотириразову ширину сліду.
  • Використовуйте паралельне закінчення на землю з опором, рівним характерному опору мікрополоскової / смугової лінії або припинення джерела, якщо сигнал має лише одне призначення. Для обговорення див. Це пов'язане питання .

Звичайно, в реальному дизайні вам, можливо, доведеться порушити якесь із цих вказівок.

Більшість із цих правил випливає із спостереження, що на високих частотах зворотний струм намагатиметься подорожувати близько до сигналу, тому потрібно надати шлях для зворотного струму. Якщо зворотний струм фізично розділений, ви створюєте паразитарну антену. Земна (або потужність!) Площина, яка забезпечує шлях для зворотного струму, називається еталонною. Не залишайте опорну площину. Якщо вам доведеться пройти через через, опорна площина змінюється. Байпасний конденсатор встановлюється між новою та старою опорними площинами.

Ваші роз'єми створюватимуть проблеми, оскільки вони, ймовірно, матимуть інший опір від друкованої плати, тому вони спричинять віддзеркалення та погіршать сигнал. Одним із варіантів може бути використання з'єднувача, керованого імпедансом, який відповідає опору плати.

З боку вбудованого програмного забезпечення вам може знадобитися поекспериментувати з силою приводу, щоб контролювати швидкість кромки. Максимальна сила приводу часто є неправильною відповіддю. Ваш постачальник ІС повинен мати можливість надати модель IBIS , за допомогою якої ви зможете імітувати схему для оцінки цілісності сигналу. Строго кажучи, це не тактова частота, яка викликає цілісність сигналу або проблеми ЕМС, а швидкість ребра (час переходу між високим і низьким), оскільки швидкі краї проявляються як широкосмугові перехідні періоди в області частоти. Зниження сили приводу та / або швидкості нахилу скорочення зменшить крайню швидкість та зменшить гармонічні викиди, в той час як (ймовірно) збільшиться тремтіння годинника. Перевірте таблиці, щоб побачити, яка прийнятна крайова швидкість для приймачів годин.

Моє відчуття: якщо ви робите домашнє завдання, вам, мабуть, не знадобиться якийсь повторювач сигналу. Розглянемо для прикладу SCSI, який представляє собою величезну високошвидкісну паралельну шину, поширювану по кабелях із частотою близько 100 МГц. Якщо можливо, розгляньте можливість інвестувати в таку програму, як HyperLynx, щоб імітувати ваш макет.

Altera має чудовий посібник з питань швидкості маршрутизації.


Дякую за чудові відомості. З вашої відповіді я розумію, що немає ніякого способу це зробити за допомогою травлених дощок "Зроби сам"?
міцез

@miceuz: Ну, якщо це проект хобі, то ти не так переживаєш про ЕМС, так, можливо. Сформулюється консенсус, що старшим інженерам це було б складно, а намагання зробити це "Зроби сам" нічого не полегшує. З іншого боку, ви можете знизити тактову частоту, якщо вона не спрацює в цьому випадку. Я б спробував знайти альтернативну компоновку, щоб зменшити довжину ланцюжка ромашки.
jbarlow

Я б схвалив це двічі, якби міг.
Ренан

10

Це не зашкодить вам робити все те, що пропонує jbarlow та David, але дозвольте мені спробувати полегшити вам речі (або, можливо, важче, тому що я скажу, що ви, ймовірно, можете піти з багатьма речей, але я не збираюся обіцяти ).

Класичним правилом є те, що ви можете вважати ланцюг згущеним ланцюгом, якщо жоден з його розмірів не перевищує 1/10 довжини хвилі найбільшого частотного сигналу, який вас цікавить. Якщо це згублена схема, ви можете розглядати свої доріжки як просто з'єднання між окремими елементами. Якщо це не згуртований контур, вам потрібно потурбуватися про ефекти розподіленої ланцюга, а ваші сліди розглядати як лінії передачі.

Ви говорите про тактову частоту 30 МГц, що відповідає довжині хвилі 10 м. Якщо поширюватися через FR4, ця довжина хвилі буде зменшена приблизно до 4,7 м. І схема довжиною 40 див. Отже, для основного сигналу годинника ви перебуваєте прямо на краю старого великого правила.

Проблема: Вам не просто потрібно хвилюватися про тактову частоту, але скільки гармонік цієї частоти потрібно передати, щоб дати час і час падіння, який ви хочете. Якщо ви навмисно сповільнюєте передачу країв, ви, ймовірно, можете пройти лише за допомогою 1-ї та 3-ї гармонік (Девід на це натякався, коли згадував, що не обов'язково використовує максимальну силу приводу).

Це дає максимальну частоту, що цікавить 90 МГц, і відповідну довжину хвилі (у FR4) близько 1,6 м. Отже критична відстань становить 16 див. Це означає, що в цілому ви хочете забезпечити тісно пов'язаний шлях повернення, розпізнати свої доріжки як лінії передачі та закінчувати відповідним опором тощо.

Але вам, мабуть, не доведеться доплачувати за контрольований опір. Якщо ви проектуєте зі слідами, що перевищують мінімальну ширину, наявну у вашого постачальника (скажімо, 8 або 10 мільйонів), нормальні допуски, швидше за все, забезпечать вам достатню ефективність.

І якщо по дорозі вам доведеться пройти через пробіг, або пробігти невеликий проміжок в площині заземлення, або ви не можете поставити обхідний конденсатор прямо поруч із навантажувальною частиною, не покладайте його занадто сильно. Якщо ви хочете запустити свої треки прямо від роз'єму до роз'єму, за допомогою декількох сантиметрових заглушок, щоб дістати навантажувальні мікросхеми на кожній платі, все буде добре. Якщо довжина неконтрольованої частини доріжки (або проріз у площині основи) менше декількох см, це не зіпсує ваш день. Навіть якщо це 10 см, ви, ймовірно, втечете від цього, але не наполягайте на удачі.

Наприклад, це означає, що при підключенні між платами немає необхідності у високоекономічному роз'ємі, керованому опором. Навіть пару сантиметрів стрічкового кабелю буде добре. Зображення проводів на стрічці "земля-сигнал-заземлення" або "заземлення" -сигнал-заземлення - це хороша ідея, але не варто хвилюватися з приводу відповідних імпедансовим кабелям крученої пари або коаксіальним.

З іншого боку, якщо ви все-таки вирішите використовувати буфер на кожній дошці, це дозволить вам дуже добре ставитись до схеми на кожній дошці (довжиною 10 см) як згущеного контуру. Ви хочете керувати перекосом буфера, як описав Девід, і вам доведеться обмежувати час підйому та падіння кожного буфера, але ви отримаєте велику гнучкість у розташуванні на кожній дошці без погіршення функціональності. Тим не менш, чим більше ви робите, щоб тримати зворотні шляхи близько до слідів сигналу, тим менше шансів на те, що вас чекає неприємний сюрприз, коли справа стосується тестування на ЕМС.


6

Я думаю, що відповідь @ jbarlow досить чітка. Я хочу додати до нього трохи, але я не буду намагатися повторювати сказане ним.

Єдине, з чим я не погоджуюся з @jbarlow, - це використання ретрансляторів або буферизація всіх сигналів. Те, що він каже, є правильним, "якщо ти робиш домашнє завдання ...". Але це проблема, виконуючи домашні завдання. Ви можете це зробити, але вам знадобляться відносно дорогі кабелі та роз'єми - і тоді це буде лише "справді важко".

Не здається, що додавання затримки 10 нс для буферизації годин на кожній друкованій платі справді є проблемою. Мені важко сказати напевно, оскільки ви залишили безліч деталей щодо інших сигналів, таких як BLANK та XLAT. Але навіть якщо це проблема, ви завжди можете буферувати ВСІ сигнали. Всі ворота в 74xx245, як правило, матимуть однакову затримку (або принаймні схожу), і тому загальний час у світлодіодних драйверів залишатиметься хорошим.

(Примітка. Перевірте таблиці. Хороший чіп перелічить два різних числа затримки розповсюдження. Один для окремих воріт, а інший показує різницю або перекос у затримці між воротами всередині однієї мікросхеми. Не приймайте мого слова за це. Ви все одно потрібно буде зробити правильний аналіз часу.)

Отримати завершення та імпеданс сигналів між друкованими платами має вирішальне значення для виконання цієї проектної роботи. Керувати імпедансом у багатожильних кабелях завжди важко, а запуск одного сигналу через декілька друкованих плат та кабелів просто задає проблеми. У багатьох точках по довжині сигналу буде змінено імпеданс, що створить проблеми з цілісністю сигналу. Буферизація всіх сигналів між друкованими платами допоможе це впоратися. Принаймні довжини слідів та зміни імпедансу для кожного сигналу будуть зведені до мінімуму.

Використання нульових буферів затримки не потрібно, і це може фактично погіршити ситуацію (і дорожче). Нульові буфери затримки - це дійсно фазові блоковані петлі (PLL) і потребують ретельної конструкції для ідеальної роботи. У більшості випадків це не велика справа, але, безумовно, це може бути проблемою, якщо ваш годинник не ідеальний. Найкраще було б цього уникати для цієї програми. Крім того, буфер нульової затримки не підходить для буферизації нічого іншого, крім безперервно працюючого годинника, тому він не допомагає вам буферувати будь-які інші сигнали.


Відмінні бали. Я погоджуюсь, що підхід до буферизованих сигналів, ймовірно, набагато безпечніший і швидше за все успіх.
jbarlow

Яким чином буферний мурашник припиняє сигнал? Це MCU-> Буфер-> Термін серії-> кабель-> Буфер-> TLC5945-> Буфер-> серійний термін-> кабель ... або MCU-> Буфер-> Термін серії-> кабель-> TLC5945-> Буфер -> серія терміна-> кабель ... тобто чи потрібно мені буферні сигнали з обох кінців кабелю чи можу я передати буфер і припинення для роботи як для роз'єму / кабелю, так і для плати, що йде далі?
міцез

@miceuz В ідеалі ви будете буферувати його двічі на кожній дошці. Одного разу, коли сигнал потрапляє на плату за одним роз'ємом. Інший раз, коли сигнал залишає плату на іншому роз'ємі. Практично, зробити це один раз, ймовірно, достатньо. Отже, це було б MCU-> Cable-> LED-> term-> buf-> cable-> led-> term-> buf-> cable-> etc. Зауважте, що припинення джерела джерела працює лише в тому випадку, якщо у вас є одне навантаження на сигнал, якого ви не виконуєте. У вас є як світлодіодний чіп драйвера, так і буфер. Ви повинні подивитися на закінчення змінного струму, у якому в дальньому кінці послідовно заземлений резистор і кришка.
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.