реклама на сайте
подробности

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> KiCad и High-Speed Design, Возможности и реальный опыт
dxp
сообщение Apr 13 2017, 11:38
Сообщение #1


Adept
******

Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343



Всем привет!

Интересует вопрос: насколько реально в KiCad выполнять высокоскоростные платы - с DDR2/DDR3, гигабитными сериальными линками и т.п.? Прошу поделиться опытом - какие платы (из вышеперечисленных и вообще на эту тему) сделаны, какие проблемы и неудобства возникали?

В редакторе плат KiCad имеется возможность выравнивать длины дорожек "змейками". Пара вопросов на эту тему:
  • длина задаётся, насколько знаю, в mil, а по-хорошему надо бы учитывать времена, т.е. не физическую длину, но электрическую. Как этот момент обходится? Или сугубо вручную?
  • в сложных микросхемах типа быстрых процессоров и ПЛИС указываются задержки сигналов от точек на кристалле до выводов микросхемы. Имеется ли возможность это как-то учитывать в программе?

Ну, и последнее: существуют ли какие-либо пути экспортировать дизайн во внешние программы для анализа целостности сигналов, питаний - например, Hyperlynx?


--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
Go to the top of the page
 
+Quote Post
jorikdima
сообщение Apr 13 2017, 15:36
Сообщение #2


тут может быть ваша реклама
*****

Группа: Свой
Сообщений: 1 164
Регистрация: 15-03-06
Из: Санкт-Петербург/CA
Пользователь №: 15 280



Тоже тема интересна.
Сам разве что могу удивиться даже отсутствию возможности делать проводники арками. Ну то есть не 45/90 градусов. Это правда для RF более важно, а не HiSpeed. Может его допилят лет через 5..... этот КиКад
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Apr 13 2017, 17:36
Сообщение #3


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



QUOTE (jorikdima @ Apr 13 2017, 18:36) *
могу удивиться даже отсутствию возможности делать проводники арками.
Подвижки есть. Вот только неясно, когда добавят в основную ветку.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
break
сообщение Apr 14 2017, 07:08
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 469
Регистрация: 13-07-11
Из: С-Пб.
Пользователь №: 66 206



dxp
Я при разводке DVI И LVDS просто, по возможности, выравнивал длины проводников, как между дифлиниями, так и между проводниками в каждой дифпаре. Частоты, конечно, ниже, чем в DDR. "Змейки" оказались бесполезны, так как гнутся непредсказуемым образом, я про это уже писал.
И длина линий у меня в миллиметрах, а не милах. wink.gif
Расчёт дифпар оказался удобнее в TXLine, чем во встроенном PCB-калькуляторе.
Go to the top of the page
 
+Quote Post
dxp
сообщение Apr 14 2017, 07:50
Сообщение #5


Adept
******

Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343



QUOTE (break @ Apr 14 2017, 14:08) *
Я при разводке DVI И LVDS просто, по возможности, выравнивал длины проводников, как между дифлиниями, так и между проводниками в каждой дифпаре. Частоты, конечно, ниже, чем в DDR. "Змейки" оказались бесполезны, так как гнутся непредсказуемым образом, я про это уже писал.
И длина линий у меня в миллиметрах, а не милах. wink.gif
Расчёт дифпар оказался удобнее в TXLine, чем во встроенном PCB-калькуляторе.

Спасибо за ответ!

Про длины - без разницы, в милах или мм, я имел в виду то, что скорость распространения сигнала сильно зависит от того, где проходит проводник: насколько помню, скорость распространения на внутренних и внешних слоях отличается чуть ли не раза в полтора.


--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
Go to the top of the page
 
+Quote Post
faa
сообщение Apr 14 2017, 10:01
Сообщение #6


Знающий
****

Группа: Свой
Сообщений: 726
Регистрация: 14-09-06
Из: Москва
Пользователь №: 20 394



Цитата(dxp @ Apr 13 2017, 14:38) *
Интересует вопрос: насколько реально в KiCad выполнять высокоскоростные платы - с DDR2/DDR3, гигабитными сериальными линками и т.п.? Прошу поделиться опытом - какие платы (из вышеперечисленных и вообще на эту тему) сделаны, какие проблемы и неудобства возникали?

Реально.
QDR-II, DDR3, MGT - уже не один проект сделан.
Если конкретные вопросы есть, то готов поотвечать.

Цитата(dxp @ Apr 13 2017, 14:38) *
В редакторе плат KiCad имеется возможность выравнивать длины дорожек "змейками". Пара вопросов на эту тему:
[*]длина задаётся, насколько знаю, в mil, а по-хорошему надо бы учитывать времена, т.е. не физическую длину, но электрическую. Как этот момент обходится? Или сугубо вручную?

А какая разница - длина задана или время, все туда-сюда пересчитывается на раз?
Время распространения завсит от материала платы и качества (однородности) этого материала.
А если очень высокоскоростные или СВЧ, то и от качества материала проводника (скин-эффект и пр.), финишного покрытия (с никелем на СВЧ беда) и т.п.

Раньше (когда не было этой фичи с выравниванием) приходилось ровнять в полуручном режиме с помощью макросов. Для этого они (макросы) и были прикручены.
Ссылка на ютуб, где я рассказывал про фишки KiCad (в т.ч и макросы) на конференции в Бауманке (еще в 2012 году).
Теперь выравнивает, почти красиво.
А макросы успешно в продакшене выпилены, остались только в ГОСТ-ветке.

Цитата(dxp @ Apr 13 2017, 14:38) *
[*]в сложных микросхемах типа быстрых процессоров и ПЛИС указываются задержки сигналов от точек на кристалле до выводов микросхемы. Имеется ли возможность это как-то учитывать в программе?

Есть такое. Прикручено уже давно (2009-2010 год). Учитывается длина проводника в чипе, задается в посадочном месте..
Цитата(dxp @ Apr 13 2017, 14:38) *
Ну, и последнее: существуют ли какие-либо пути экспортировать дизайн во внешние программы для анализа целостности сигналов, питаний - например, Hyperlynx?

С этим пока проблемы. Но разговоры были.
Хотя, (ИМХО), модельку в HL накидать можно и без выгрузки.
Ну и практический опыт тут тоже сильно помогает.
Go to the top of the page
 
+Quote Post
dxp
сообщение Apr 14 2017, 12:57
Сообщение #7


Adept
******

Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343



QUOTE (faa @ Apr 14 2017, 17:01) *
Реально.
QDR-II, DDR3, MGT - уже не один проект сделан.

Это радует.

QUOTE (faa @ Apr 14 2017, 17:01) *
Если конкретные вопросы есть, то готов поотвечать.

Спасибо, буду иметь в виду.

QUOTE (faa @ Apr 14 2017, 17:01) *
А какая разница - длина задана или время, все туда-сюда пересчитывается на раз?
Время распространения завсит от материала платы и качества (однородности) этого материала.

Ну, если есть переходы, например, с внешнего слоя на внутренние, т.е. часть пути сигналов идёт в одних условиях, а часть в других, то тут может поджидать засада - например, байт-лейн ведёте, один разряд "нырнул" на внутренний слой сразу, а другой немного дальше, из-за этого возникнет "разбег" по времени даже если физическую длину выровнять идеально.

Кстати, время распространения как оцениваете? В каком-то калькуляторе считаете?

QUOTE (faa @ Apr 14 2017, 17:01) *
Раньше (когда не было этой фичи с выравниванием) приходилось ровнять в полуручном режиме с помощью макросов. Для этого они (макросы) и были прикручены.
Ссылка на ютуб, где я рассказывал про фишки KiCad (в т.ч и макросы) на конференции в Бауманке (еще в 2012 году).
Теперь выравнивает, почти красиво.
А макросы успешно в продакшене выпилены, остались только в ГОСТ-ветке.

Да, это видео смотрел (даже два раза). А раз есть возможность рисовать "змейки", то насколько актуальны макросы (тоже не понимаю, зачем было убирать, если было и работало)?

QUOTE (faa @ Apr 14 2017, 17:01) *
С этим пока проблемы. Но разговоры были.
Хотя, (ИМХО), модельку в HL накидать можно и без выгрузки.
Ну и практический опыт тут тоже сильно помогает.

А нельзя ли как-то ручном режиме, например, топологии слоёв экспортировать и импортировать в другую САПР, из которой есть экспорт в HL?


--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
Go to the top of the page
 
+Quote Post
_Sergey_
сообщение Apr 14 2017, 13:04
Сообщение #8


Местный
***

Группа: Свой
Сообщений: 239
Регистрация: 5-02-06
Из: Подмосковье
Пользователь №: 14 012



Многовато, имхо, требований к бесплатной альтернативе.

Тоже думал над трансляцией в другие САПР. Как вариант, через гербера..


--------------------
Автор благодарит алфавит за любезно предоставленные буквы.(С)
Go to the top of the page
 
+Quote Post
dxp
сообщение Apr 14 2017, 14:30
Сообщение #9


Adept
******

Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343



QUOTE (_Sergey_ @ Apr 14 2017, 20:04) *
Многовато, имхо, требований к бесплатной альтернативе.

Бесплатный, не значит, хуже. Вон gcc даст сто очков вперёд некоторым коммерческим. sm.gif Кроме того, открытость имеет свои неоспоримые плюсы - открытые текстовые форматы KiCad'а рулят неимоверно во всех смыслах.

Ну, и вот faa на практике доказывает. Правда, он эксперт в этой САПР.

Ну, и, собственно, это не требования, а вопросы к опытным кикадовцам. sm.gif

QUOTE (_Sergey_ @ Apr 14 2017, 20:04) *
Тоже думал над трансляцией в другие САПР. Как вариант, через гербера..

Да, через гербера - вариант. Я подумывал, может через svg экспортировать, а в там вставлять. Но пока плотно не прорабатывал.


--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
Go to the top of the page
 
+Quote Post
faa
сообщение Apr 17 2017, 06:35
Сообщение #10


Знающий
****

Группа: Свой
Сообщений: 726
Регистрация: 14-09-06
Из: Москва
Пользователь №: 20 394



Цитата(dxp @ Apr 14 2017, 15:57) *
Ну, если есть переходы, например, с внешнего слоя на внутренние, т.е. часть пути сигналов идёт в одних условиях, а часть в других, то тут может поджидать засада - например, байт-лейн ведёте, один разряд "нырнул" на внутренний слой сразу, а другой немного дальше, из-за этого возникнет "разбег" по времени даже если физическую длину выровнять идеально.

Условия надо "выравнивать", особенно для скоростных параллельных шин (например, байты в DDR3-DDR4, слова в QDR и т.п.). wink.gif
MGT линии - это отдельная песня, тут "клаву" можно долго топтать.
А в общем примерно так:
"ныряем" сразу у пада;
переходов минимум и одинаково;
опорные слои правильно распределяем;
следим за неоднородностями, при острой необходимости "обратная сверловка" или глухие отверстия.
Но это уже теория и практика HD и HS дизайна.

Все прекрасно понимают, что идеальности в мире нет.
Поэтому везде есть допуски.
Для выравнивания в современных ПЛИС у каждой ноги ввода-вывода есть
линии задержки с неплохим разрешением как на ввод, так и на вывод.

Ну и принцип разумной необходимости и достаточности никто не отменял.

Цитата(dxp @ Apr 14 2017, 15:57) *
Кстати, время распространения как оцениваете? В каком-то калькуляторе считаете?

Для каждого материала ПП есть эти данные, смотреть в даташитах производителей.

В кикаде есть калькулятор.
Из бесплатных неплох сатурнПСБ.
Go to the top of the page
 
+Quote Post
dxp
сообщение Apr 17 2017, 10:33
Сообщение #11


Adept
******

Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343



QUOTE (faa @ Apr 17 2017, 13:35) *
А в общем примерно так:
"ныряем" сразу у пада;
переходов минимум и одинаково;
опорные слои правильно распределяем;

Спасибо, примерно так и полагал, вы подтвердили.

QUOTE (faa @ Apr 17 2017, 13:35) *
В кикаде есть калькулятор.
Из бесплатных неплох сатурнПСБ.

А сатурн с под линукса пускали? У меня из-под wine что-то не захотел.


--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
Go to the top of the page
 
+Quote Post
faa
сообщение Apr 17 2017, 10:51
Сообщение #12


Знающий
****

Группа: Свой
Сообщений: 726
Регистрация: 14-09-06
Из: Москва
Пользователь №: 20 394



Цитата(dxp @ Apr 17 2017, 13:33) *
А сатурн с под линукса пускали? У меня из-под wine что-то не захотел.

Под древней виндой в виртуалке.
Под вайном должен, но нужен вайн свежий.
У меня в дистре стоит 1.7.3 - под ним не едет, требует shcore.dll, а заморачиваться с этим нет желания.
Go to the top of the page
 
+Quote Post
mobidev
сообщение Apr 25 2017, 20:06
Сообщение #13


Местный
***

Группа: Свой
Сообщений: 202
Регистрация: 22-06-08
Из: Краснодарский край
Пользователь №: 38 488



Stubs & AcidTraps teardrop drc

Go to the top of the page
 
+Quote Post
Bender
сообщение Jul 20 2017, 09:22
Сообщение #14


Частый гость
**

Группа: Участник
Сообщений: 123
Регистрация: 28-06-05
Из: Тула
Пользователь №: 6 361



Коллеги, подскажите как в Кикаде сделать так, чтобы ширина поясков в КП на разных слоях меди была разного размера?
Прикрепленное изображение

Хочется чтобы поясок был минимального размера, или вообще не было на том слое, где нет подключения к КП.
Или я хочу странного?
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Jul 20 2017, 12:07
Сообщение #15


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Такие странности в кикаде реализуются наложением друг на друга нескольких более простых КП с одинаковым номером. Увы.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th April 2024 - 00:01
Рейтинг@Mail.ru


Страница сгенерированна за 0.01514 секунд с 7
ELECTRONIX ©2004-2016