Jump to content

    

Search the Community

Showing results for tags 'cyclone v'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Сайт и форум
    • Новости и обсуждения сайта и форума
    • Другие известные форумы и сайты по электронике
    • В помощь начинающему
    • International Forum
    • Образование в области электроники
    • Обучающие видео-материалы и обмен опытом
  • Cистемный уровень проектирования
    • Вопросы системного уровня проектирования
    • Математика и Физика
    • Операционные системы
    • Документация
    • Системы CAD/CAM/CAE/PLM
    • Разработка цифровых, аналоговых, аналого-цифровых ИС
    • Электробезопасность и ЭМС
    • Управление проектами
    • Neural networks and machine learning (NN/ML)
  • Программируемая логика ПЛИС (FPGA,CPLD, PLD)
    • Среды разработки - обсуждаем САПРы
    • Работаем с ПЛИС, области применения, выбор
    • Языки проектирования на ПЛИС (FPGA)
    • Системы на ПЛИС - System on a Programmable Chip (SoPC)
  • Цифровая обработка сигналов - ЦОС (DSP)
    • Сигнальные процессоры и их программирование - DSP
    • Алгоритмы ЦОС (DSP)
  • Микроконтроллеры (MCs)
    • Cредства разработки для МК
    • ARM
    • AVR
    • MSP430
    • Все остальные микроконтроллеры
    • Отладочные платы
  • Печатные платы (PCB)
    • Разрабатываем ПП в САПР - PCB development
    • Работаем с трассировкой
    • Изготовление ПП - PCB manufacturing
  • Сборка РЭУ
  • Аналоговая и цифровая техника, прикладная электроника
  • Силовая Электроника - Power Electronics
  • Интерфейсы
  • Поставщики компонентов для электроники
  • Майнеры криптовалют и их разработка, BitCoin, LightCoin, Dash, Zcash, Эфир
  • Дополнительные разделы - Additional sections

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


AIM


MSN


Сайт


ICQ


Yahoo


Jabber


Skype


Город


Код проверки


skype


Facebook


Vkontakte


LinkedIn


Twitter


G+


Одноклассники

Found 5 results

  1. Всем привет. Вопрос по поводу состояния выводов после включения питания на Cyclone V. В даташите по этому поводу нашел только то, что можно включить подтяжку к питанию (weak pull-up resistor), pull-down можно включить только для JTAG TCK. Так же приведены значения внутренних подтягивающих резисторов до и во время конфигурации (25 кОм). Значит ли это, что после первого конфигурирования ПЛИС соответствующей прошивкой подтягивающие резисторы будут работать при подаче питания до окончания конфигурирования? На всякий случай текст из даташита: А вообще должны ли выводы до завершения конфигурирования находится в Z-состоянии? А то что-то больше походе на то, что идет подтягивание к VCCIO
  2. Здравствуйте! Возникла проблема с прошивкой Cyclone V (платы DE0-Nano-SoC и DE1-SoC), включающей Nios II. Заливка на пустую ПЛИС производится спокойно, но если на ней уже работает Nios II (с залитой прошивкой), то программатор в Квартусе выдаёт ошибку. В итоге всё решается только отключением и включением питания. Причём, даже зажатая кнопка reset (для Nios) не помогает. Причём, если Nios есть, но не залита его прошивка, то ПЛИС нормально перепрошивается. Подскажите, пожалуйста, в чём может быть проблема?
  3. Здравствуйте! Делаю частотомер на ПЛИС (Cyclone V на DE0-Nano-SoC) с выводом на дисплей значения частоты. Рассчитанное значение частоты выдаётся (обновляется) каждую секунду, вместе с ним поднимается сигнал переполнения счётчика (на один такт). Поскольку вывод осуществляется через Nios, использую прерывание по уровню (ядро PIO) для регистрации сигнала переполнения и в обработчике вывожу значение частоты на экран. Код инициализации прерывания: static void init_freq_en_IRQ() { alt_putstr("irq_init start\n"); void* edge_capture_ptr = (void*) &edge_capture; IOWR_ALTERA_AVALON_PIO_IRQ_MASK(FREQ_EN_BASE, 0xf); alt_ic_isr_register(FREQ_EN_IRQ_INTERRUPT_CONTROLLER_ID, FREQ_EN_IRQ, handler_freq_en, edge_capture_ptr, 0x0); alt_putstr("irq_init finish\n"); } Код обработчика: static void handler_freq_en (void * context) { IOWR_ALTERA_AVALON_PIO_IRQ_MASK(FREQ_EN_BASE, 0x0); IOWR_ALTERA_AVALON_PIO_IRQ_MASK(FREQ_EN_BASE, 0xf); freq_to_lcd(); alt_putstr("handler\n"); } Но почему-то при запуске прерывания генерируются, но процессор в них не уходит. Скрин SignalTap'a. Верхний сигнал - это счётчик, отмеряющий секунду, средний - сигнал переполнения, нижний - вроде как генерируемый сигнал IRQ из контроллера PIO (по крайней мере он исчезает, когда я отключаю инициализацию прерывания) При этом в один момент он зависает и прекращает выполнение основной программы (Это выяснилось после того, как я сделал отправку на дисплей в бесконечном цикле в функции main). Есть подозрение, что он уходит в прерывание, но не доходит до обработчика (он не выполняется), или же это какое-то другое исключение, из которого он не возвращается. Что это может быть? Может, я неправильно настраиваю прерывания (с прерываниями по фронту всё работало, но там была другая проблема)? Или, если проблема в другом исключении, как это отследить? Ссылка на гитхаб (в папке DE0_Nano_SoC_project) UPD: Посмотрел на сигнал IRQ при прерывании по фронту. Там он находится в положении 1 до момента сброса прерывания. Здесь же почему-то всего один такт
  4. Здравствуйте! Стоит задача генерировать внутри ПЛИС Altera Cyclone V (кит Terasic DE1-SoC) при помощи PLL некоторую частоту, передавать её на выход LVDS и принимать на другой вход этой же ПЛИС (необходимо для отладки частотомера). По поводу LVDS долго пытался вчитываться в Cyclone V Handbook, но понял только то, что надо использовать функции Квартуса для приёма и передачи сигнала LVDS. Насколько я понял, при назначении в Pin Planner стандарта LVDS Квартус сам назначает пару выбранному пину. Информацию по поводу пар дифференциальных пинов нигде не смог найти. Я выбрал GPIO[12] и GPIO[14] (парные 15 и 13). Дальше создал входной и выходной буферы (ALTIOBUF), которые должны преобразовывать сигнал из моно в дифференциальный и обратно. LVDS_BUF_IN lvds_in ( .datain(GPIO[15]), .datain_b(GPIO[12]), .dataout(clk_in) ); LVDS_BUF_OUT lvds_out ( .datain(clk_0_2), .dataout_b(GPIO[13]), .dataout(GPIO[14]) ); По поводу выходной пары у Квартуса вопросов не возникло, а на входные пины вылезла ошибка: Error (169008): Can't turn on open-drain option for differential I/O pin GPIO[12]. И аналогичная на 15-й пин. Если не создавать буфер, на выходную пару вылезает такая же ошибка, я читал, что Квартус не пропускает неправильно настроенные пины LVDS. Я знаю, что в LVDS должен быть на входе резистор между линиями. Может быть, ошибка из-за его отсутствия в программе? И его как-то настроить надо в самой ПЛИС?
  5. Здравствуйте! Делаю частотомер на ПЛИС (DE0-Nano-SoC, Cyclone V). Мне необходимо выводить значение измеренной частоты на внешний дисплей, поэтому было удобно подключить Nios, чтобы он этим занимался. Т.к. частотомер измеряет отрезок времени по некоторой опорной частоте, ему необходимо значение этой частоты, которое передаётся в модуль частотомера извне. Была идея реализовать поддержку изменения опорной частоты и интервала, на котором производится измерение, а также впоследствии возможность простого ввода этих значений (пока ввод реализован посредством переключения свитчей). Решил сделать это через Nios. Если с делителем интервала (деление посредством сдвига, поэтому по-умолчанию ставится 0) проблем не возникло, то с передачей значения опорной частоты (точно такого же формата, что и делитель) из Nios в частотомер возникла непонятная мне проблема: Выход Nios соединяется с соответствующим входом частотомера прямым проводом, который (судя по схеме Квартуса) ничем не делится. Но когда я всё запускаю и прошиваю Nios, он выставляет на выходе значение 200_000_000 (Гц). Но если посмотреть по SignalTap'у, то оказывается, что на выходе Nios правильное число (3я строка), а на входе частотомера 0 (1я строка), причём делитель передаётся нормально (здесь не видно, но если изменить на другое число, то на 2й и 4й строчках числа будут одинаковыми). В чём здесь может быть проблема? Проект находится на ГитХабе: https://github.com/FlexlabCompany/frequency_meter_Nios_display Проект ещё содержит часть для DE1-SoC, но здесь он используется только как сторонний генератор измеряемой частоты.