|
KiCad и High-Speed Design, Возможности и реальный опыт |
|
|
|
Apr 13 2017, 11:38
|
Adept
Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343
|
Всем привет! Интересует вопрос: насколько реально в KiCad выполнять высокоскоростные платы - с DDR2/DDR3, гигабитными сериальными линками и т.п.? Прошу поделиться опытом - какие платы (из вышеперечисленных и вообще на эту тему) сделаны, какие проблемы и неудобства возникали? В редакторе плат KiCad имеется возможность выравнивать длины дорожек "змейками". Пара вопросов на эту тему: - длина задаётся, насколько знаю, в mil, а по-хорошему надо бы учитывать времена, т.е. не физическую длину, но электрическую. Как этот момент обходится? Или сугубо вручную?
- в сложных микросхемах типа быстрых процессоров и ПЛИС указываются задержки сигналов от точек на кристалле до выводов микросхемы. Имеется ли возможность это как-то учитывать в программе?
Ну, и последнее: существуют ли какие-либо пути экспортировать дизайн во внешние программы для анализа целостности сигналов, питаний - например, Hyperlynx?
--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
|
|
|
|
|
Apr 13 2017, 17:36
|
Гуру
Группа: Модераторы
Сообщений: 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)
|
|
|
|
|
Apr 14 2017, 07:08
|
Местный
Группа: Свой
Сообщений: 469
Регистрация: 13-07-11
Из: С-Пб.
Пользователь №: 66 206
|
dxpЯ при разводке DVI И LVDS просто, по возможности, выравнивал длины проводников, как между дифлиниями, так и между проводниками в каждой дифпаре. Частоты, конечно, ниже, чем в DDR. "Змейки" оказались бесполезны, так как гнутся непредсказуемым образом, я про это уже писал. И длина линий у меня в миллиметрах, а не милах. Расчёт дифпар оказался удобнее в TXLine, чем во встроенном PCB-калькуляторе.
|
|
|
|
|
Apr 14 2017, 07:50
|
Adept
Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343
|
QUOTE (break @ Apr 14 2017, 14:08) Я при разводке DVI И LVDS просто, по возможности, выравнивал длины проводников, как между дифлиниями, так и между проводниками в каждой дифпаре. Частоты, конечно, ниже, чем в DDR. "Змейки" оказались бесполезны, так как гнутся непредсказуемым образом, я про это уже писал. И длина линий у меня в миллиметрах, а не милах. Расчёт дифпар оказался удобнее в TXLine, чем во встроенном PCB-калькуляторе. Спасибо за ответ! Про длины - без разницы, в милах или мм, я имел в виду то, что скорость распространения сигнала сильно зависит от того, где проходит проводник: насколько помню, скорость распространения на внутренних и внешних слоях отличается чуть ли не раза в полтора.
--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
|
|
|
|
|
Apr 14 2017, 10:01
|
Знающий
Группа: Свой
Сообщений: 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 накидать можно и без выгрузки. Ну и практический опыт тут тоже сильно помогает.
|
|
|
|
|
Apr 14 2017, 12:57
|
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?
--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
|
|
|
|
|
Apr 14 2017, 14:30
|
Adept
Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343
|
QUOTE (_Sergey_ @ Apr 14 2017, 20:04) Многовато, имхо, требований к бесплатной альтернативе. Бесплатный, не значит, хуже. Вон gcc даст сто очков вперёд некоторым коммерческим. Кроме того, открытость имеет свои неоспоримые плюсы - открытые текстовые форматы KiCad'а рулят неимоверно во всех смыслах. Ну, и вот faa на практике доказывает. Правда, он эксперт в этой САПР. Ну, и, собственно, это не требования, а вопросы к опытным кикадовцам. QUOTE (_Sergey_ @ Apr 14 2017, 20:04) Тоже думал над трансляцией в другие САПР. Как вариант, через гербера.. Да, через гербера - вариант. Я подумывал, может через svg экспортировать, а в там вставлять. Но пока плотно не прорабатывал.
--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
|
|
|
|
|
Apr 17 2017, 06:35
|
Знающий
Группа: Свой
Сообщений: 726
Регистрация: 14-09-06
Из: Москва
Пользователь №: 20 394
|
Цитата(dxp @ Apr 14 2017, 15:57) Ну, если есть переходы, например, с внешнего слоя на внутренние, т.е. часть пути сигналов идёт в одних условиях, а часть в других, то тут может поджидать засада - например, байт-лейн ведёте, один разряд "нырнул" на внутренний слой сразу, а другой немного дальше, из-за этого возникнет "разбег" по времени даже если физическую длину выровнять идеально. Условия надо "выравнивать", особенно для скоростных параллельных шин (например, байты в DDR3-DDR4, слова в QDR и т.п.). MGT линии - это отдельная песня, тут "клаву" можно долго топтать. А в общем примерно так: "ныряем" сразу у пада; переходов минимум и одинаково; опорные слои правильно распределяем; следим за неоднородностями, при острой необходимости "обратная сверловка" или глухие отверстия. Но это уже теория и практика HD и HS дизайна. Все прекрасно понимают, что идеальности в мире нет. Поэтому везде есть допуски. Для выравнивания в современных ПЛИС у каждой ноги ввода-вывода есть линии задержки с неплохим разрешением как на ввод, так и на вывод. Ну и принцип разумной необходимости и достаточности никто не отменял. Цитата(dxp @ Apr 14 2017, 15:57) Кстати, время распространения как оцениваете? В каком-то калькуляторе считаете? Для каждого материала ПП есть эти данные, смотреть в даташитах производителей. В кикаде есть калькулятор. Из бесплатных неплох сатурнПСБ.
|
|
|
|
|
Apr 17 2017, 10:33
|
Adept
Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343
|
QUOTE (faa @ Apr 17 2017, 13:35) А в общем примерно так: "ныряем" сразу у пада; переходов минимум и одинаково; опорные слои правильно распределяем; Спасибо, примерно так и полагал, вы подтвердили. QUOTE (faa @ Apr 17 2017, 13:35) В кикаде есть калькулятор. Из бесплатных неплох сатурнПСБ. А сатурн с под линукса пускали? У меня из-под wine что-то не захотел.
--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
|
|
|
|
|
Apr 17 2017, 10:51
|
Знающий
Группа: Свой
Сообщений: 726
Регистрация: 14-09-06
Из: Москва
Пользователь №: 20 394
|
Цитата(dxp @ Apr 17 2017, 13:33) А сатурн с под линукса пускали? У меня из-под wine что-то не захотел. Под древней виндой в виртуалке. Под вайном должен, но нужен вайн свежий. У меня в дистре стоит 1.7.3 - под ним не едет, требует shcore.dll, а заморачиваться с этим нет желания.
|
|
|
|
|
Jul 20 2017, 09:22
|
Частый гость
Группа: Участник
Сообщений: 123
Регистрация: 28-06-05
Из: Тула
Пользователь №: 6 361
|
Коллеги, подскажите как в Кикаде сделать так, чтобы ширина поясков в КП на разных слоях меди была разного размера?
Хочется чтобы поясок был минимального размера, или вообще не было на том слое, где нет подключения к КП. Или я хочу странного?
|
|
|
|
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|