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

 
 
 
Reply to this topicStart new topic
> Nios II. Custom Instructions, Кто уже освоил?
Волощенко
сообщение Apr 3 2008, 08:07
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 347
Регистрация: 16-02-06
Из: г.Николаев, Украина
Пользователь №: 14 377



Всем привет!
Безусловно, супер полезная вещь. Пытаюсь внедрить в свой Nios II (Q71.SP2) согласно ug_nios2_custom_instruction.pdf, но не получается. В итоге, уже при редактировании cpu в закладке Custom Instructions, выдаеются такие сообщения “Error: cpu.custom_instruction_master/cpu_sss_inst.nios_custom_instruction_slave: Connection dangling at end”
В качестве исходного беру, например, такой sss.v:
module sss (x,y);
input [31:0] x;
output [31:0] y;
assign y=~x+1;
endmodule
При описании компанента устанавливаю в закладке Signals tab следующее:
- для x: nios_custom_instruction_slave, dataa, 32, input
- для y: nios_custom_instruction_slave, result, 32, output

В целом стараюсь придерживаться ug_nios2_custom_instruction.pdf , так как других вроде бы нет..
Заметил, что при создании в SOPC File->New Component.. выявляются несоответствия между отображаемой в SOPC информацией и тем, что описано в этом документе. Например, перед окончательным нажатием Finish нет сообщения Component "<design name>" is ok, что на стр.3-7. Вместо него есть Info: No errors or warnings.
Что я делаю не так, может, кто из уже освоивших CI подскажет?
Go to the top of the page
 
+Quote Post
id_gene
сообщение Apr 3 2008, 13:04
Сообщение #2


carpe manana
***

Группа: Свой
Сообщений: 321
Регистрация: 2-06-05
Пользователь №: 5 659



Q61 не ругается на ваш пример.
Go to the top of the page
 
+Quote Post
Stewart Little
сообщение Apr 3 2008, 15:07
Сообщение #3


Лентяй
******

Группа: Свой
Сообщений: 2 203
Регистрация: 11-10-04
Из: Санкт-Петербург
Пользователь №: 843



Может, у Вас старый pdf (в смысле, для старой версии)? Скачайте с альтеровского сайта новый, они там довольно часто обновляются.


--------------------
Чтобы слова не расходились с делом, нужно молчать и ничего не делать...
Go to the top of the page
 
+Quote Post
Волощенко
сообщение Apr 3 2008, 16:03
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 347
Регистрация: 16-02-06
Из: г.Николаев, Украина
Пользователь №: 14 377



Цитата(Stewart Little @ Apr 3 2008, 18:07) *
Может, у Вас старый pdf (в смысле, для старой версии)? Скачайте с альтеровского сайта новый, они там довольно часто обновляются.

Спасибо.
но я брал ug_nios2_custom_instruction.pdf от 04.05.07 здесь http://www.altera.com/literature/lit-sop.jsp, более свежего там не было. Кроме отмеченного выше, по ходу процесса в этой доке отличается также фиг.3-4, что на стр.3-6.
Я конечно проверю и в Q61. Но у меня небольшая просьба, у кого есть возможность, проверить ввод этой небольшой Custom Instruction и в Q72.
А может наша "лицензия" чего-то не понимает...
Go to the top of the page
 
+Quote Post
Stewart Little
сообщение Apr 4 2008, 16:00
Сообщение #5


Лентяй
******

Группа: Свой
Сообщений: 2 203
Регистрация: 11-10-04
Из: Санкт-Петербург
Пользователь №: 843



Цитата(Волощенко @ Apr 3 2008, 19:03) *
но я брал ug_nios2_custom_instruction.pdf от 04.05.07 здесь http://www.altera.com/literature/lit-sop.jsp, более свежего там не было.

Да, это старая дока. При переходе с v6 на v7 в SOPC Builder была сделана туева хуча изменений. Фактически, теперь это совсем другой пакет.
Написал в Альтеру, чтобы сделали новую доку. Будем ждать.

Цитата(Волощенко @ Apr 3 2008, 19:03) *
проверить ввод этой небольшой Custom Instruction и в Q72.

Проверил в 7.2 SP3.
Cообщение ”Error: cpu.custom_instruction_master/cpu_sss_inst.nios_custom_instruction_slave: Connection dangling at end” - это не страшно. Это всего лишь говорит о том, что у Вас пока еще никуда не подключен Custom Instruction Master порт. Если в фильтре разрешить показыват порты Custom Instructions, то это буде наглядно отображено. После добавления инструкции в настройках процессора и закрытии окна редактирования процессора подключение осуществляется автоматически и это сообщение исчезает.
Зато появляется другое : "Error: cpu_<имя_инструкции>_inst: Failed to analyze port width."
Почему такая бяка возникает, я пока не разобрался. На след. неделе попробую побороться.

Цитата(Волощенко @ Apr 3 2008, 19:03) *
А может наша "лицензия" чего-то не понимает...

Думаю, что лицензия здесь совершенно не при чем. Лицензия може играть роль только при генерировании исходников скриптами или при синтезе. А тут дело ни до того, ни до другого не доходит.

Цитата(Stewart Little @ Apr 4 2008, 18:49) *
Зато появляется другое : "Error: cpu_<имя_инструкции>_inst: Failed to analyze port width."
Почему такая бяка возникает, я пока не разобрался. На след. неделе попробую побороться.

Разобрался. Лечится закрытием SOPC Builder'а и повторным открытием. После этого система успешно генерируется.
Переводим это из разряда багов в разряд фичей v7.2 smile.gif . Надеюсь, в v8.0 поправят.


--------------------
Чтобы слова не расходились с делом, нужно молчать и ничего не делать...
Go to the top of the page
 
+Quote Post
Волощенко
сообщение Apr 4 2008, 17:57
Сообщение #6


Местный
***

Группа: Свой
Сообщений: 347
Регистрация: 16-02-06
Из: г.Николаев, Украина
Пользователь №: 14 377



Цитата(Stewart Little @ Apr 4 2008, 19:00) *
Проверил в 7.2 SP3.
.................
Cообщение ”Error: cpu.custom_instruction_master/cpu_sss_inst.nios_custom_instruction_slave: Connection dangling at end” - это не страшно. Это всего лишь говорит о том, что у Вас пока еще никуда не подключен Custom Instruction Master порт. Если в фильтре разрешить показыват порты Custom Instructions, то это буде наглядно отображено. После добавления инструкции в настройках процессора и закрытии окна редактирования процессора подключение осуществляется автоматически и это сообщение исчезает.
Зато появляется другое : "Error: cpu_<имя_инструкции>_inst: Failed to analyze port width."
Почему такая бяка возникает, я пока не разобрался. На след. неделе попробую побороться.
................
Разобрался. Лечится закрытием SOPC Builder'а и повторным открытием. После этого система успешно генерируется.
Переводим это из разряда багов в разряд фичей v7.2 smile.gif . Надеюсь, в v8.0 поправят.

Большое спасибо за помощь, но у меня вопросы:
1. Как в фильтре разрешить показывать порты Custom Instructions. Это что, установить галочки на всех опциях в меню Wiev для SOPC? Я их установил, но ничего не увидел, может это где-то в другом месте, не нашел. Наверное кроме отображения этих портов нужно еще что-то сделать...
2. Так как у меня не вышло предыдущее действие, то не получилось и добавление инструкции...
Так что если можно немного подробней, пожалуйста. где и что нажать.
Go to the top of the page
 
+Quote Post
Волощенко
сообщение Apr 7 2008, 06:55
Сообщение #7


Местный
***

Группа: Свой
Сообщений: 347
Регистрация: 16-02-06
Из: г.Николаев, Украина
Пользователь №: 14 377



Цитата(Stewart Little @ Apr 4 2008, 19:00) *
Проверил в 7.2 SP3.
Сообщение ”Error: cpu.custom_instruction_master/cpu_sss_inst.nios_custom_instruction_slave: Connection dangling at end” - это не страшно. Это всего лишь говорит о том, что у Вас пока еще никуда не подключен Custom Instruction Master порт. Если в фильтре разрешить показывать порты Custom Instructions, то это буде наглядно отображено.

Да, это видно, что не подключен (см.jpq-эскиз). Кнопка "Filter.." справа на этом эскизе.

Цитата(Stewart Little @ Apr 4 2008, 19:00) *
После добавления инструкции в настройках процессора и закрытии окна редактирования процессора подключение осуществляется автоматически и это сообщение исчезает.

Сообщение исчезает всегда, после закрытия окна редактирования процессора.

Цитата(Stewart Little @ Apr 4 2008, 19:00) *
Зато появляется другое : "Error: cpu_<имя_инструкции>_inst: Failed to analyze port width."

Этого сообщения я так и не увидел.

Цитата(Stewart Little @ Apr 4 2008, 19:00) *
Разобрался. Лечится закрытием SOPC Builder'а и повторным открытием. После этого система успешно генерируется.
Переводим это из разряда багов в разряд фичей v7.2 smile.gif . Надеюсь, в v8.0 поправят.

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

//---------------------------
Что еще заметил. В директории проекта после всех этих манипуляций к существующему файлу sss.v с текстом моей Custom Instruction, генерируется еще файл sss_hw.tcl. Так вот, в его заголовке первая строка такая # TCL File Generated by Component Editor 7.2sp1 on:, хотя то Sopc с SP3. Может здесь причина, то есть все уже давно с SP3. в скрипт файл с SP1....

//---------------------------
Попробовал внедрить Custom Instruction вместе с Q_61. Действительно, там по другому и вроде замечаний нет. Но там нет обратного перехода проекта от Q_72 к Q_61, тоже головная боль, и все как-то совсем иначе… Оставлю этот вариант на потом, если уже совсем в Q_72 моя затея никак не выйдет.

//---------------------------
Вот еще здесь на niosforum подымался аналогичный вопрос, я там тоже спрашивал, но пока никто не ответил http://forum.niosforum.com/forum/index.php?showtopic=7994
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
Stewart Little
сообщение Apr 7 2008, 10:14
Сообщение #8


Лентяй
******

Группа: Свой
Сообщений: 2 203
Регистрация: 11-10-04
Из: Санкт-Петербург
Пользователь №: 843



Цитата(Волощенко @ Apr 7 2008, 10:55) *
Что еще заметил. В директории проекта после всех этих манипуляций к существующему файлу sss.v с текстом моей Custom Instruction, генерируется еще файл sss_hw.tcl. Так вот, в его заголовке первая строка такая # TCL File Generated by Component Editor 7.2sp1 on:, хотя то Sopc с SP3. Может здесь причина, то есть все уже давно с SP3. в скрипт файл с SP1....

Нет, это совершенно не при чем. В v7.2 sp3 Ваш пример работает, система генерируется. Скорее всего Вы что-то не доделываете или в процессе создания компонента инструкции пользователя, или при добавлении ее к процессору.


--------------------
Чтобы слова не расходились с делом, нужно молчать и ничего не делать...
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 10th July 2025 - 14:55
Рейтинг@Mail.ru


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