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

Как правильно назначать диф.входы в Quartus-e?

Добавил на схему пин clk. В пинпланере указал стандарт LVPECL. Автоматом создался clk(n). Назначил пин clk, автоматом назначился пин clk(n). При компеляции выскакивает ворнинг

Warning: Pin "clk" is a differential I/O pin but does not have its complement pin. Hence, fitter automatically created the complement pin "clk(n)"

Что я делаю не так? Как избавится от этого ворнинга?

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


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

можно ничего не делать, квартус автоматом сделает комплементарный сигнал, если выбран соотв. стандарт I/O (об этом ворнинг и информирует).

а можно через ALT_INBUF_DIFF:

http://www.altera.com/support/examples/ver...ntial-pins.html

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


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

можно ничего не делать, квартус автоматом сделает комплементарный сигнал, если выбран соотв. стандарт I/O (об этом ворнинг и информирует).

а можно через ALT_INBUF_DIFF:

http://www.altera.com/support/examples/ver...ntial-pins.html

Не понял, как это ворнинг - информирует? Ещё бы error-ом информировали. За каждым ворнингом прячутся баги! Как подключить дифпару без ворнинга?

 

По ссылке,,,,,,, Ну только пинпланером с ворнингом смог подключить дифпару. А др. два примера, в том числе и с ALT_INBUF_DIFF - не получилось. Может кто-нибудь дать пример с подключенной дифпарой любым способом, но чтоб компилялось успешно и без ворнингов?

 

 

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


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

Не понял, как это ворнинг - информирует? Ещё бы error-ом информировали. За каждым ворнингом прячутся баги! Как подключить дифпару без ворнинга?

 

По ссылке,,,,,,, Ну только пинпланером с ворнингом смог подключить дифпару. А др. два примера, в том числе и с ALT_INBUF_DIFF - не получилось. Может кто-нибудь дать пример с подключенной дифпарой любым способом, но чтоб компилялось успешно и без ворнингов?

 

f1 жмите на ворниг. И почему Pecl, а не lvds.

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


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

f1 жмите на ворниг. И почему Pecl, а не lvds.

За f1 спасибо. Не знал про такую фичу. А почему не lvds - потому что не lvds. У меня приходит дифпара от др. схемы стандартом LVPECL :laughing:

 

Ни как не могу понять, как назначать пины примитиву ALT_INBUF_DIFF? Добавил на схему примитив, назначил входы. а где указать что clk_p - это пин G21?

post-49045-1290082726_thumb.png

post-49045-1290082733_thumb.png

Изменено пользователем juvf

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


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

вот, все нормально собирается

module lvpecl_test
(
    input        d,
    input        clk_p,
    input        clk_n,
    input        clrn,
    output    q
);
wire    clk;
ALT_INBUF_DIFF u1
(
    .i(clk_p),
    .ibar(clk_n),
    .o(clk)
);
defparam u1.io_standard = "LVPECL";
DFF u2
(
    .d(d),
    .clk(clk),
   .clrn(clrn),
    .prn(1'b1),
    .q(q)
);
endmodule

расположение кроме pin-planner можно в *.qsf вбить:

set_location_assignment PIN_91 -to clk_p
set_location_assignment PIN_90 -to clk_n

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


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

собрал я ваш пример. Собираться - собирается, а как назначить пины - не пойму. Подключил я ваш *.v к проекту, сгенерировал из него символьный файл. Добавил в проект верхнего уровня. Захожу в пинпланер - он показывает стандарт у clk_n и clk_p как 2,5 (Default). Меняю стандарт на lvpecl - получаю четыре пина clk_p, clk_p(n), clk_n, clk_n(n). что за файл *.qsf? Так как всё таки пины назначить?

post-49045-1290085098_thumb.png

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


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

А почему не lvds - потому что не lvds. У меня приходит дифпара от др. схемы стандартом LVPECL

 

Вы ж тип АЦП привели. У него пекловский клоковый вход. А выходы c клоком lvds.

(Можно ведь одно предупреждение и оставить. Оно не стоит дополнительного примитива. N он автоматом пристроит)

И если у кого то собирается, наверно надо полностью схему повторить. Если нет d входа, зачем синтезатору клок и выход.

По ресурсам посмотрите. (В технологическом map просмотрщике)

 

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


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

собрал я ваш пример. Собираться - собирается, а как назначить пины - не пойму. Подключил я ваш *.v к проекту, сгенерировал из него символьный файл. Добавил в проект верхнего уровня. Захожу в пинпланер - он показывает стандарт у clk_n и clk_p как 2,5 (Default). Меняю стандарт на lvpecl - получаю четыре пина clk_p, clk_p(n), clk_n, clk_n(n). что за файл *.qsf? Так как всё таки пины назначить?

lvpecl там, смотрите отчет о компиляции (копия распиновки в файле имя_проекта.pin). qsf - файл глобальных настроек проекта, обычно - имя_проекта.qsf. в пин планере не надо стандарт указывать, атрибута в коде достаточно. можете скомпилить и посмотреть как фиттер сам раскидал, клок - аккурат на клоковую дифф. пару попадет.

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


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

Вы ж тип АЦП привели. У него пекловский клоковый вход.

В этой теме я про АЦП ни слова не сказал. В схеме с ацп - там да, там клоки с FR-а беру, lvds-ные. Тут другая задача. Но lvds или lvpecl - проблема одинаковая: подключить диф. пару без предупреждения.

 

 

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


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

Но lvds или lvpecl - проблема одинаковая: подключить диф. пару без предупреждения.

 

Ну да. Боретесь с предупреждением, а Differential LVPECL просмотрели.

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

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


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

Ну да. Боретесь с предупреждением, а Differential LVPECL просмотрели.

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

Да кого просмотрел то? Непойму. Клокдистребъютер дает клоки Differential LVPECL. При чем тут вообще ацп и лвдс?

 

Наконец-то подключил дифпару через примитив без предупреждений. Назначения делал вручную в *.qsf, но через руки допёрло как можно через редактор ассигнований тоже самое делать.

 

Всем спасибо.

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


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

Может мне кто подскажет как назначить LVDS для Cyclone II, чтобы не было предупреждений?

P.S. Про ALT_INBUF_DIFF, знаю, это не работает для данного семейства.

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


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

Я "привязываю" выводы и др. атрибуты к сигналам прямо в top модуле:

  (* chip_pin = "63", altera_attribute = "-name io_standard 2.5 V",
     altera_attribute = "-name io_maximum_toggle_rate 0" *) output T1HYS,  
  (* chip_pin = "60", altera_attribute = "-name io_standard lvds" *) input T1Cp,

Достаточно назначить только один сигнал из пары.

Про предупреждения - см. пример кода.

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


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

Я про предупреждения о том, что автоматически добавляется второй вывод диф. пары. А вы о близком расположении других сигналов к диф. паре. Или я вас неправильно понял?

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


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

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

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

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

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

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

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

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

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

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