Перейти к содержанию
    

Задание соотношений длин между классами

В проекте есть iMX6 + 16-битная DDR3. В CES созданы Constraint Classы для Адреса+команды (Address_Command), тактового сигнала (Clock), управляющих сигналов (Control) и двух байтовых шин данных (BL0 и BL1).

Внутри классов заданы правила выравнивания и остался заключительный штрих: задать правило выравнивания для соотношения длин цепей внутри этих классов и длины цепи тактового сигнала, чтобы обеспечить соотношение длин, подобное изображенному на следующем рисунке:

image.thumb.png.0ba2a60194d7a9e449f115855c449c8a.png

Была попытка создать одну переменную, определяющую длину тактовой цепи (ddr3clk), которая использовалась в формуле для тактового сигнала вида <ddr3clk. И для всех цепей в других классах задать формулу, например, <ddr3clk-1mm

Но проблема в том, что при таком задании формул инструмент Target Lengths из Layout начинает объединять все классы в один кластер и я не понял, как после этого можно выравнивать длины внутри одного из классов.

Как это сделать правильно, чтобы с одной стороны было задано правило для тактового сигнала (самая большая длина в сравнении со всеми остальными классами), а с другой стороны можно было работать индивидуально с каждым из классов для выравнивания длин?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 hour ago, makc said:

В проекте есть iMX6 + 16-битная DDR3. В CES созданы Constraint Classы для Адреса+команды (Address_Command), тактового сигнала (Clock), управляющих сигналов (Control) и двух байтовых шин данных (BL0 и BL1).

Внутри классов заданы правила выравнивания и остался заключительный штрих: задать правило выравнивания для соотношения длин цепей внутри этих классов и длины цепи тактового сигнала, чтобы обеспечить соотношение длин, подобное изображенному на следующем рисунке:

image.thumb.png.0ba2a60194d7a9e449f115855c449c8a.png

Была попытка создать одну переменную, определяющую длину тактовой цепи (ddr3clk), которая использовалась в формуле для тактового сигнала вида <ddr3clk. И для всех цепей в других классах задать формулу, например, <ddr3clk-1mm

Но проблема в том, что при таком задании формул инструмент Target Lengths из Layout начинает объединять все классы в один кластер и я не понял, как после этого можно выравнивать длины внутри одного из классов.

Как это сделать правильно, чтобы с одной стороны было задано правило для тактового сигнала (самая большая длина в сравнении со всеми остальными классами), а с другой стороны можно было работать индивидуально с каждым из классов для выравнивания длин?

https://www.mentor.com/pcb/multimedia/player/understanding-the-constraint-manager-ddr-setups-and-methodologies-3e880840-886c-484d-b278-93574b29a1ce

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...