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

 
 
> ISE выдает ошибку
serg_k1
сообщение Nov 26 2014, 12:26
Сообщение #1


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

Группа: Участник
Сообщений: 115
Регистрация: 21-03-07
Пользователь №: 26 368



Здравствуйте. Использую ISE , zynq XC7Z020 , в проекте используются компоненты fmc_imageon_vita_receiver от AVNET и gmii_to_rgmii от xilinx. При Implement Design на Map выдается ошибка
MapLib:1120 - IDELAYCTRL
fmc_imageon_vita_receiver_0/fmc_imageon_vita_receiver_0/USER_LOGIC_I/VITA_COR
E_I/vita_iserdes_v5.vita_iserdes/generate_idelay.serdesidelayrefclk/IDELAYCTR
L_INST[0].u_idelayctrl, gmii_to_rgmii_0/gmii_to_rgmii_0/dlyctrl have no
IODELAY_GROUP association. Only one IODELAY Controller may have no LOC
constraint and no IODELAY_GROUP.
Как быть?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 5)
Amurak
сообщение Nov 26 2014, 13:07
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 211
Регистрация: 18-11-12
Пользователь №: 74 459



Найти блочек idelayctrl и задать для него аттрибут:

attribute IODELAY_GROUP : string;
attribute IODELAY_GROUP of u_idelayctrl : label is "GMII";

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

Хотя если это готовая корка, то по идее уже должно быть все прописано.
Go to the top of the page
 
+Quote Post
serg_k1
сообщение Nov 26 2014, 14:17
Сообщение #3


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

Группа: Участник
Сообщений: 115
Регистрация: 21-03-07
Пользователь №: 26 368



Цитата(Amurak @ Nov 26 2014, 17:07) *
Найти блочек idelayctrl и задать для него аттрибут:

attribute IODELAY_GROUP : string;
attribute IODELAY_GROUP of u_idelayctrl : label is "GMII";

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

Хотя если это готовая корка, то по идее уже должно быть все прописано.

Т.е. предлагается доработать компонент?
Нашел в fmc_imageon_vita_receiver следующее
Код
IDELAYCTRL_INST : for bnk_i in 0 to NROF_DELAYCTRLS-1 generate
  u_idelayctrl : IDELAYCTRL
    port map (
      rdy     => idelay_ctrl_rdy_i(bnk_i),
      refclk  => REF_CLK,
      rst     => RESET_DELAYCTRL
    );
end generate IDELAYCTRL_INST;


а в gmii_to_rgmii
Код
dlyctrl : IDELAYCTRL
      port map (
         RDY               => open,
         REFCLK            => refclk,
         RST               => idelayctrl_reset_sync
      );

получились одинаковые имена
Тогда , допустим в fmc_imageon_vita_receiver, нужно добавить
attribute IODELAY_GROUP : string;
attribute IODELAY_GROUP of u_idelayctrl : label is "IDELAYCTRL_fmc";
а может просто заменить IDELAYCTRL на IDELAYCTRL_fmc ?
а т.к. больше ничего не найдено , то
действие
и для всех линий задержек, которыми он управляет задать такое же значение.
считать выполненным?


Сообщение отредактировал serg_k1 - Nov 26 2014, 14:27
Go to the top of the page
 
+Quote Post
Amurak
сообщение Nov 26 2014, 14:55
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 211
Регистрация: 18-11-12
Пользователь №: 74 459



>может просто заменить IDELAYCTRL на IDELAYCTRL_fmc ?

IDELAYCTRL - это не имя, а тип компонента у Xilinx. Этот компонент используется совместно с библиотечными компонентами IDELAYE2.

То есть на каждую группу компонентов IDELAYE2 должен быть один компонент IDELAYCTRL.

При этом для группы IDELAYE2 и для управляющего ими IDELAYCTRL должен быть объявлен атрибут IODELAY_GROUP:

attribute IODELAY_GROUP : string;
attribute IODELAY_GROUP of <название IDELAYCTRL> : label is "ololo";
attribute IODELAY_GROUP of <название IDELAYE2> : label is "ololo";

Вы для начала просто посмотрите, у вас эти атрибуты вообще объявлены или их вообще нет?
Go to the top of the page
 
+Quote Post
serg_k1
сообщение Nov 27 2014, 07:34
Сообщение #5


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

Группа: Участник
Сообщений: 115
Регистрация: 21-03-07
Пользователь №: 26 368



Цитата(Amurak @ Nov 26 2014, 18:55) *
Вы для начала просто посмотрите, у вас эти атрибуты вообще объявлены или их вообще нет?

Посмотрел. Никакого объявления нет.
Я понимаю так. Пока компоненты не использовались вместе , то IDELAYCTRL использовался системой для каждого автоматически . Но при совместном использовании необходимо указать , что это различные группы.
значит нужно для каждого ( ? ) указать свою группу.
в библиотечном модуле gmii_to_rgmii.vhd сделать следующее изменение
attribute IODELAY_GROUP : string;
attribute IODELAY_GROUP of dlyctrl : label is "ololo1";

а в библиотечном модуле компонента fmc_imageon_vita_receiver iserdes_idelayctrl.vhd сделать следующее изменение
attribute IODELAY_GROUP : string;
attribute IODELAY_GROUP of u_idelayctrl : label is "ololo2";
Так? Этого достаточно? Или может достаточно только в одном.
И еще вопрос. Если они видят друг друга, то нельзя ли указать это где-то в общем модуле (например в top), чтобы не править библиотечные компоненты?

Сообщение отредактировал serg_k1 - Nov 27 2014, 07:42
Go to the top of the page
 
+Quote Post
Amurak
сообщение Nov 27 2014, 12:10
Сообщение #6


Местный
***

Группа: Свой
Сообщений: 211
Регистрация: 18-11-12
Пользователь №: 74 459



Цитата(serg_k1 @ Nov 27 2014, 10:34) *
в библиотечном модуле gmii_to_rgmii.vhd сделать следующее изменение
attribute IODELAY_GROUP : string;
attribute IODELAY_GROUP of dlyctrl : label is "ololo1";

а в библиотечном модуле компонента fmc_imageon_vita_receiver iserdes_idelayctrl.vhd сделать следующее изменение
attribute IODELAY_GROUP : string;
attribute IODELAY_GROUP of u_idelayctrl : label is "ololo2";

Еще раз. Атрибут IODELAY_GROUP должен быть назначен на контроллер линий задержек (IDELAYCTRL) и на все задержки, которыми он управляет (IDELAYE2).

По идее - да, можно задать только одну группу, раз ISE пишет
Only one IODELAY Controller may have no LOC constraint and no IODELAY_GROUP

>И еще вопрос. Если они видят друг друга, то нельзя ли указать это где-то в общем модуле (например в top), чтобы не править библиотечные компоненты?
Не уверен, что сработает, но можно попробовать задать так:
attribute IODELAY_GROUP of top/u_idelayctrl : label is "ololo2"
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 21st July 2025 - 13:53
Рейтинг@Mail.ru


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