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

 
 
> Ошибка чтения по шине Avalon, Может в Nios II/f проблема?
Shevnnov
сообщение Jan 18 2011, 22:29
Сообщение #1


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

Группа: Участник
Сообщений: 85
Регистрация: 8-04-10
Из: Нижний Новгород
Пользователь №: 56 498



Есть рабочий проект (вернее был). В нем есть свой компонентс примитивным DMA, который по заданному адресу по команде читает из памяти sdram. До сегодняшнего дня всё работало, всё читалось. Но возникла проблема - в ходе работы компонента используется прерывание. А так как компонент, обрабатывает пакеты, приходящие из вне, то время задержки при обработке прерывания (т.н. latency) оказалось слишком большое (что-то порядка 11us, против желаемых 0,9us). Решил использовать векторный контроллер прерываний (VIC). Как я понял внешие прерывания обрабатываются только Nios II/f.
До этого проект в проекте использовался Nios II/s. Поменял процессор, выставли Interrupt Controller - External. Поправил IRQ у компонентов системы. Остальное всё оставил старое. И запустил на Model Sim. Получил картинку, приведенную ниже. Данные tx_data_readdata =32'hxxxxxxx.
Плохой результат было списал на то, что неправильно преывание внешнее обрабатываю (инициализация и ф-ия обработки осталась та же, что и была для Innternal IC). Во вкладке Nios II -> Advanced Features Поставил Interrupt Controller = Internal. Эффекта ноль. Временные диаграммы симуляции точно такие же.
Вопрос? В чем проблема?
Кода возвращаю назад Nios II/s то данные tx_data_readdata читаются.

И еще вопрос. Нужно ли переделывать инициализацию прерывания и обработчик прерывания компонента при замене IIC на EIC (внутреннего на внешний контроллер)? Если надо то как?
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
vadimuzzz
сообщение Jan 19 2011, 01:46
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 291
Регистрация: 21-07-05
Пользователь №: 6 988



Цитата(Shevnnov @ Jan 19 2011, 04:29) *
И еще вопрос. Нужно ли переделывать инициализацию прерывания и обработчик прерывания компонента при замене IIC на EIC (внутреннего на внешний контроллер)? Если надо то как?

это зависит от того какой API вы использовали. если legacy - то да, он поддерживает только IIC.
Go to the top of the page
 
+Quote Post
Shevnnov
сообщение Jan 19 2011, 07:32
Сообщение #3


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

Группа: Участник
Сообщений: 85
Регистрация: 8-04-10
Из: Нижний Новгород
Пользователь №: 56 498



Цитата(vadimuzzz @ Jan 19 2011, 04:46) *
это зависит от того какой API вы использовали. если legacy - то да, он поддерживает только IIC.


Нет, использовал Enhanced API.

Вопрос с чтение с щины Avalon остается открытым. В чем проблема?
Go to the top of the page
 
+Quote Post



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

 


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


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