effort
Участник-
Постов
7 -
Зарегистрирован
-
Посещение
-
Логику реализовывал комбинационную, * для расширения списка чувствительности, чтобы отследить все сигналы в signaltap связанные с readdata. Тот chipselect, который на диаграмме появляется при адресе равном 3 (idle), а не 2 (read). За readLatency спасибо, попробую, реализовать с помощью него задержку чтения данных, но не понятно почему импульс не появляется без задержки и какую смысловую нагрузку она здесь несет?
- 13 ответов
-
В общем, немного научился отлаживаться. Отдельно просимулировал в modelsim файлы компонента Platform Designer (QSys), добавил нужные сигналы в SignalTap собрал весь проект и прошил. В Eclipse прошиваю файл elf и запускаю отладку. В SignalTap ставил триггер на разные сигналы и выяснил, что Avalon-MM не взводит chipselect на чтение, но взводит на запись. В Eclipse задаю смещение относительно базового адреса как на рисунке 1. Обращаюсь как на рисунке 2. В SignalTap при установленном на cs триггере получаю рисунок 3. На чтение вообще не реагирует. На всякий случай прикреплю код верхнего уровня компонента Platform Designer (w5500.v). Подскажите в чем может быть дело и куда копать?
- 13 ответов
-
Спасибо за правильные мысли, общий смысл понятен, буду работать в этом направлении!
- 13 ответов
-
Хорошо, как написать testbench для компонента понятно, а как в ручную описать полную тестовую модель для системы с Nios II? Какие файлы проекта должна содержать тестируемая модель? Какие альтеровские библиотеки необходимо подключить для корректной симуляции? Может сбросите мне тестовый модуль системы с Nios для примера?
- 13 ответов
-
Большое спасибо, стало понятно! Еще прочитал важную для понимания вещь, о том что обращение по адресу генерируется для всех подчиненных устройств и те устройства для которых этот адрес не предназначен его просто игнорируют. Еще момент, как правильно описать тестовую модель (modelsim) для пользовательского компонента? В Platform Designer, при генерации выдает такую ошибку: Error: name_custom_module_0: name_custom_module does not support generation for Verilog Simulation. Generation is available for: Quartus Synthesis. Как я понимаю, необходимо в ручную написать тестовый модуль?
- 13 ответов
-
Спасибо! Со своими пинами разобрался. Понял что они вызываются по адресу, заданному внутри компонента. Теперь пытаюсь понять как из Eclipse (Nios ii software) управляются выводы посаженные на шину Avalon-MM (как например, взвести chipselect?). Подскажете по этому вопросу?
- 13 ответов
-
Помогите, пожалуйста, разобраться с добавление своего компонента в Qsys. Конкретно интересует файл _regs.h, в котором задаются регистры компонента. С одной 32-разрядной шины компонента выводится 5-ть однобитных выходов (подключаются к шилду ethernet). Как правильно распределить оффсеты для управления ими в Nios ii software с помощью IOWR и IORD? По сути интересует как сделать правильную адресацию для своего компонента (в мануалах описаны только альтеровские готовые компоненты с уже заданными регистрами)?
- 13 ответов