|
xilinx edk, подключение компонента к ядру. |
|
|
|
 |
Ответов
(1 - 13)
|
Sep 3 2008, 11:24
|

Полное ничтожество
    
Группа: Banned
Сообщений: 1 991
Регистрация: 20-03-07
Из: Коломна
Пользователь №: 26 354

|
Цитата(avesat @ Sep 3 2008, 14:26)  На какую шину корку цепляете? на все шина то причём? вот что нужно есть файл user_logic.vhd есть файл допустим filtr.vhd этот файл надо вставить как компонент в юзер_логик. более того есть по наследству доставшийся проект ядра где они состыкованы и работают. ошибки в описании внутри этих файлов нет - при копировании их в рабочий проект всё работает. вопрос где лежит описание связи этих файлов?
|
|
|
|
|
Sep 3 2008, 12:51
|
Участник

Группа: Новичок
Сообщений: 27
Регистрация: 28-05-07
Пользователь №: 28 001

|
Если правильно понял проблему, то подключать надо руками. В модуле user_logic.vhd вставляете описание модуля filtr.vhd. Если влом описывать порты модуля, то в ISE есть команда View HDL Instantiation Template, сделает шаблон, который вставляете в модуль user_logic.vhd. Все модуль подключен, filtr.vhd надо поместить в ядро.
|
|
|
|
|
Sep 3 2008, 16:51
|

Полное ничтожество
    
Группа: Banned
Сообщений: 1 991
Регистрация: 20-03-07
Из: Коломна
Пользователь №: 26 354

|
Цитата(Kedin @ Sep 3 2008, 16:51)  Если правильно понял проблему, то подключать надо руками. В модуле user_logic.vhd вставляете описание модуля filtr.vhd. Если влом описывать порты модуля, то в ISE есть команда View HDL Instantiation Template, сделает шаблон, который вставляете в модуль user_logic.vhd. Все модуль подключен, filtr.vhd надо поместить в ядро. проблема в том что я не работаюне с ISE я работаю с EDK в ISE всё и так понятно я после мытарств просто переместил файлы старого ядра с тем же именем с теми=-же параметрами в директорию нового ядра другого проекта с тем же именем и с темиже параметрами и оно не стало работать в конце концов если я переименую в старом проекте это ядро исправлю все связи и имена в фильтре оно также не подцепится вопрос про едк проблема в подцеплении стыковки в едк судя по всему напишу я компонент скорее всего в своём файле внутри и не буду ....... блин уже достало фиг с ним что там уже больше 56000 строк - сама разработка влёт а борьба с языком - скоро всех перекусаю!!!!
|
|
|
|
|
Sep 4 2008, 06:22
|

Знающий
   
Группа: Свой
Сообщений: 589
Регистрация: 14-08-05
Из: Украина
Пользователь №: 7 621

|
Цитата(rv3dll(lex) @ Sep 3 2008, 14:24)  ... вот что нужно есть файл user_logic.vhd есть файл допустим filtr.vhd этот файл надо вставить как компонент в юзер_логик.
более того есть по наследству доставшийся проект ядра где они состыкованы и работают. ошибки в описании внутри этих файлов нет - при копировании их в рабочий проект всё работает. вопрос где лежит описание связи этих файлов? Ну тогда вам нужно пересобрать корку. 1. Добавить filtr.vhd портмапом в user_logic.vhd 2. В EDK через create and import peripheral wizard пересобрать кору 3. Подключить к проекту
--------------------
"Мы будем играть, пока не треснут наши гитары, и все те, кто любит рок - я отдаю вам честь!" AC/DC
|
|
|
|
|
Sep 4 2008, 10:34
|

Полное ничтожество
    
Группа: Banned
Сообщений: 1 991
Регистрация: 20-03-07
Из: Коломна
Пользователь №: 26 354

|
Цитата(avesat @ Sep 4 2008, 13:49)  Нарисуйте как вы хотите подключить вашу кору, или покажите рисунок block diagram из EDK, сразу все прояснится. описываю по порядку. в визарде периферии ЕДК создано едро j_proba ядро при создании подключено в режиме слейв к ПЛБ шине. имеет связь через 5 32х байтных регистра. оно добавилось в репозиторий проекта и лежит там. потом это пустое ядро было добавлено в проект и подключено к шине ПЛБ назначен диапазон адресов, написан код в файле user_logic.vhd и сделана стыковка через файл J_proba.vhd j_proba.mpd и всё через mhs файл состыковано с шинами и наружу к выводам плис. после этого всё прекрасно работает потом потребовалось часть кода вычленить в компонент - вопрос как это сделать. у меня есть пример в котором это работает я подставляю этот пример себе исправляю все файлы (содержимое) на свои оставляя его имена. подключаю это ядро вместо своего и всё работает. но в моём ядре не работает связь от user_logic к файлу компонента. так понятно?
|
|
|
|
|
Sep 4 2008, 11:12
|

Знающий
   
Группа: Свой
Сообщений: 589
Регистрация: 14-08-05
Из: Украина
Пользователь №: 7 621

|
Так понятно.
У вас есть уже работающая кора с такой структурой
Core_plb_ipif.vhdl (верхний уровень, сигналы шины PLB) . | . |______> user_logic.vhdl (обработка протокола PLB) . ..............| . ..............|______> все остальные файлы проекта (проект пользователя)
так вот, вам нужны только vhdl файлы, после того как вы все добавите по новому и откомпилируете, нужно создать корку с помощью визарда, для этого запускаем import peripheral wizard, выбираем import existing peripheral и далее настраиваете ее, интерфейс, внешние порты, генерики, прерывания и т.п... после генерации, в папке pcores проекта появится новая кора с новыми mpd и pao файлами, дальше осталось подключить к шине и вывести порты наружу.
--------------------
"Мы будем играть, пока не треснут наши гитары, и все те, кто любит рок - я отдаю вам честь!" AC/DC
|
|
|
|
|
Sep 5 2008, 04:25
|

Полное ничтожество
    
Группа: Banned
Сообщений: 1 991
Регистрация: 20-03-07
Из: Коломна
Пользователь №: 26 354

|
Цитата(avesat @ Sep 4 2008, 15:12)  так вот, вам нужны только vhdl файлы, после того как вы все добавите по новому и откомпилируете, нужно создать корку с помощью визарда, для этого запускаем import peripheral wizard, выбираем import existing peripheral и далее настраиваете ее, интерфейс, внешние порты, генерики, прерывания и т.п... после генерации, в папке pcores проекта появится новая кора с новыми mpd и pao файлами, дальше осталось подключить к шине и вывести порты наружу. так ведь ise выругается на кучу библиотек на ipifы шины плб с ними то что делать или достаточно связать в проекте указав пути а компиллировать ядро не обязательно?? Compiling vhdl file "D:/edk_proj/6udk_02_95_120/udk_02_muz_v2_00_a_gen/hdl/vhdl/udk_02_muz.vhd" in Library work. ERROR:HDLParsers:3317 - "D:/edk_proj/6udk_02_95_120/udk_02_muz_v2_00_a_gen/hdl/vhdl/udk_02_muz.vhd" Line 9. Library proc_common_v2_00_a cannot be found. ERROR:HDLParsers:3013 - "D:/edk_proj/6udk_02_95_120/udk_02_muz_v2_00_a_gen/hdl/vhdl/udk_02_muz.vhd" Line 10. Library proc_common_v2_00_a is not declared. ну и так далее и при импорте в едк тоже самое
|
|
|
|
|
Sep 5 2008, 08:36
|
Частый гость
 
Группа: Свой
Сообщений: 199
Регистрация: 2-03-05
Из: МОСКВА
Пользователь №: 3 016

|
Цитата(rv3dll(lex) @ Sep 5 2008, 08:25)  так ведь ise выругается на кучу библиотек на ipifы шины плб с ними то что делать или достаточно связать в проекте указав пути а компиллировать ядро не обязательно??
Compiling vhdl file "D:/edk_proj/6udk_02_95_120/udk_02_muz_v2_00_a_gen/hdl/vhdl/udk_02_muz.vhd" in Library work. ERROR:HDLParsers:3317 - "D:/edk_proj/6udk_02_95_120/udk_02_muz_v2_00_a_gen/hdl/vhdl/udk_02_muz.vhd" Line 9. Library proc_common_v2_00_a cannot be found. ERROR:HDLParsers:3013 - "D:/edk_proj/6udk_02_95_120/udk_02_muz_v2_00_a_gen/hdl/vhdl/udk_02_muz.vhd" Line 10. Library proc_common_v2_00_a is not declared.
ну и так далее
и при импорте в едк тоже самое Если я правильно понял, то Ваш файл(который Вы хотите подключить к периферии) синтезатор не находит. Вам нужно посмотреть файл (имя Вашей коры).pao в папке data. Там прописан список файлов корки.
|
|
|
|
|
Sep 5 2008, 08:38
|
Участник

Группа: Новичок
Сообщений: 27
Регистрация: 28-05-07
Пользователь №: 28 001

|
Может я неправильно вас понял, но когда я генерил ядра через wizard, то делал так: 1 Генерится ядро с настройками и интерфейсом J_proba.vhd (верхний уровень, в нем вызывается ipif и user_logic.vhd) - user_logic.vhd (проект пользователя) 2 Пишу код в модуле my_kod.vhd 3 Подключаю модуль my_kod.vhd в user_logic.vhd, прописываю модуль my_kod.vhd в J_proba.pao Помещаю модуль my_kod.vhd в папку ресурсов ядра. Все ядро закончено. Mожно свой модуль подставить вместо user_logic.vhd.
А в ISE так просто собираться не будет нужно подключать библиотеки plb_ipif и proc_common, в общем все что подключено в ядре
|
|
|
|
|
  |
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|