Development #22
Проект SP605_WISHBONE
Status: | Confirmed | Start date: | 10/07/2011 | ||
---|---|---|---|---|---|
Priority: | Normal | Due date: | 11/01/2011 | ||
Assignee: | - | % Done: | 41% |
||
Category: | - | Spent time: | 11.00 hours | ||
Target version: | v1_1 | Estimated time: | 0.20 hour |
Description
Реализация PCI Express контроллера для шины WISHBONE
Subtasks
History
Updated by Dmitry Smekhov about 13 years ago
Добавлены компоненты для шины WISHBONE. Компоненты на Verilog. Появились проблемы при моделировании в Active-HDL:
1. Используется компонент FIFO v8.2 из ISE 13.2 - его надо добавить в ovi_xilinxcorelib
2. Надо добавить библиотеки ovi_unisim, ovi_xilinxcorelib для компиляции Verilog кода
3. Надо добавить glbl как компонент верхнего уровня для моделирования
Updated by Dmitry Smekhov about 13 years ago
Обнаружена ошибка - преждевременный запуск канала DMA. Чтение данных запускается до установки адреса.
Updated by Dmitry Smekhov about 13 years ago
- Target version set to v1_1
Updated by Dmitry Smekhov about 13 years ago
В файле pci_exprx_app_m2 установлено TRN_RX_TIMEOUT : INTEGER :=30000
Это осталось от примера Xilinx для Virtex 5 и шины x8, видимо для примера Xilinx хватало.
В данном проекте используется шина x1 - время обращения по ней больше. При моделировании большого количества обращений происходил выход по timeout.
Я увеличил значение до 3000000, моделирование стало выполнятся без ошибки timeout.
Хотя возможно это просто ошибка в pci_exprx_app_m2. Непонятна логика работы next_trn_rx_timeout
Updated by Dmitry Smekhov about 13 years ago
Работают тесты test_read_4kb, test_read_8kb
Исправлена ошибка - не запускалась передача второго блока
В блоке block_test_generate_wb сигнал di_start установлен на разряд 5 регистра test_gen_cntrl
Ревизия 69
Updated by Dmitry Smekhov about 13 years ago
Доработан test_write_16kb. Четрые блока заполняются правильной тестовой последовательностью. block_check проверяет и сообщает о правильном приёме тестовой последовательности.
block_rd = 4
block_ok=3
block_error=0
изменение block_ok, block_error происходит при приёме первого слова следующего блока.
Updated by Dmitry Smekhov about 13 years ago
Исправлен ctrl_ram_cmd. Запись на шину WB при наличии паузы проходит без ошибок.
Updated by Dmitry Smekhov almost 13 years ago
Исправлен ctrl_ext_descriptor - исправлен подсчёт контрольной суммы при is_dsp48=0