Redd

Делаем блок SPI to AVALON_MM для USB-устройства на базе FX3

Делаем блок SPI to AVALON_MM для USB-устройства на базе FX3

В предыдущей статье мы научились подавать Vendor команды в устройство USB3.0 на базе контроллера FX3 и реализовали программную шину SPI. Сегодня мы продолжим начатое и сделаем компонент SPI to Avalon_MM. Может возникнуть вопрос: мы же уже умеем работать с шиной…
Читать дальше
Добавляем поддержку Vendor-команд к USB3.0 устройству на базе FX3

Добавляем поддержку Vendor-команд к USB3.0 устройству на базе FX3

В предыдущих статьях мы сделали достаточно интересную железку, состоящую из контроллера FX3 и ПЛИС Cyclone IV. Мы научились гонять через шину USB 3.0 потоки данных с достаточно высокой скоростью (я доказал, что поток 120 МБ/с из ULPI будет проходить через…
Читать дальше
Боремся с таймаутами при использовании USB 3.0 через контроллер FX3, возникающими при определенных условиях

Боремся с таймаутами при использовании USB 3.0 через контроллер FX3, возникающими при определенных условиях

Итак, в блоке из предыдущих трёх статей, мы рассмотрели, как можно изменить идеологию, принятую в первой версии комплекса Redd, заменив двухпроходную прокачку потоковых данных (сначала в буферное динамическое ОЗУ, а уже затем – в PC через интерфейс USB 2.0) на…
Читать дальше
Начинаем опыты с интерфейсом USB 3.0 через контроллер семейства FX3 фирмы Cypress

Начинаем опыты с интерфейсом USB 3.0 через контроллер семейства FX3 фирмы Cypress

В целом, основной цикл статей про работу с комплексом Redd можно считать завершённым. Мы познакомились с методиками доступа к основным компонентам комплекса, научились писать и отлаживать на нём программы для центрального процессора, при этом локально используя хоть Linux, хоть Windows.…
Читать дальше
Практические опыты с USB-анализатором на базе Redd

Практические опыты с USB-анализатором на базе Redd

Три статьи назад мы сделали голову для шинного анализатора USB, после чего – обсуждали вопросы моделирования и гоняли эту голову на моделях. Правда, всё это было не зря. В прошлой статье я показательно нашёл пару сбоев логики, а в реальности…
Читать дальше
Проводим моделирование системы для проверки работоспособности головы USB-анализатора

Проводим моделирование системы для проверки работоспособности головы USB-анализатора

В прошлых статьях мы прошли достаточно большой путь к созданию шинного анализатора USB. Мы разработали логический анализатор, набив руку на самой технологии, дальше – разработали голову USB-анализатора. Затем – выяснили, что код получился сложным, так что его следует отмоделировать. Но…
Читать дальше
Моделирование прошивки в среде ModelSim с использованием моделей на языке SystemC

Моделирование прошивки в среде ModelSim с использованием моделей на языке SystemC

В прошлой статье мы познакомились с процессом моделирования «прошивки» в среде ModelSim, где и целевой код, и генератор тестовых воздействий написаны на языке Verilog. Жаль, но для решаемой в цикле цели этого недостаточно. Я уже многократно продвигал идею, что разработка…
Читать дальше
Моделируем поведение Quartus-проекта на Verilog в среде ModelSim

Моделируем поведение Quartus-проекта на Verilog в среде ModelSim

В прошлой статье мы сделали достаточно сложный модуль. Разумеется, я вставил в тело статьи уже отлаженный результат. Но мне показалось, что достаточно странно, когда автор говорит «делай, как я», но при этом не показывает очень важного процесса. Давайте я покажу,…
Читать дальше
Делаем голову шинного USB-анализатора на базе комплекса Redd

Делаем голову шинного USB-анализатора на базе комплекса Redd

В прошлой паре статей мы рассмотрели пример «прошивки» для комплекса Redd, делающей его ПЛИСовую часть логическим анализатором общего применения. Дальше у меня было желание сделать следующий шаг и превратить его в шинный USB-анализатор. Дело в том, что фирменные анализаторы такого…
Читать дальше
Разработка логического анализатора на базе Redd – проверяем его работу на практике

Разработка логического анализатора на базе Redd – проверяем его работу на практике

В прошлой статье мы сделали аппаратуру, реализующую логический анализатор на базе комплекса Redd. Статья разрослась так, что рассмотрение программной поддержки мы отложили на потом. Пришла пора разобраться с тем, как мы будем получать и отображать данные, которые анализатор копит в…
Читать дальше