Jump to content

    

AVR

Свой
  • Content Count

    1485
  • Joined

  • Last visited

Community Reputation

0 Обычный

About AVR

  • Rank
    фанат Linux'а

Контакты

  • Сайт
    Array
  • ICQ
    Array

Информация

  • Город
    Array

Recent Profile Visitors

9096 profile views
  1. Дорого, если пытаться делать на этом новогоднюю гирлянду, и не дорого, если делать электровоз или кран или станок. Лично я везде, где цена не критична (на фоне всего изделия), закладываю отечественные МК и прочее, но не призываю так поступать остальных
  2. Это понятно. А на стороне драйвера? Там можно проверить паттерном в самой ранней точке получения. Если и в HDL-модели всё пучком, и в драйвере - тогда это становится веселее https://github.com/Xilinx/dma_ip_drivers/blob/017b4bd985cc776ce75b78fc71cfa6bef6afd890/XDMA/linux-kernel/xdma/xdma_cdev.c#L605 - везде слова cdev, интуитивно кажется cdev = char device
  3. т.е. пока user работает с mmap-ленными данными, драйвер в них писать не может? Значит нужно иметь второй буфер?
  4. 1. Нужно измерять. Я например, не большой знаток, кто-то пытается до глубины понять, я не из таких. Надо драйвер смотреть, какими порциями он получает от устройства и по достижении какого объема он получает прерывание. У меня была задача такова, что я выделял буфер в программе на несколько мегабайт и в драйвере копил тоже кучу буферов. А потом в одном вызове read всё выдавал большим куском, в цикле вызывая copy_to_user 2. Может предосторожность или костыль, сам так иногда делаю 4. Точно не ошибка схемы? Я бы попробовал тестовый паттерн из драйвера выгружать или хотя бы заполнять паттерном в месте, где как бы должны данные от ПЛИС прилететь - это выявит где трабл 5. Можно ссылку на исходник драйвера? Судя по всему char, по крайне мере не видно смысла его блочным делать
  5. Когда-нибудь попробую в обратно направлении, попробую что там за очучения :)
  6. Благодарю за комментарии, это нужно мне для модели, пишу ее сам, вспоминая законы преломления и прочую школьную физику и геометрию...
  7. Это правда что неделю, но Вы меня переоценили. Никакого reordering не было, и возможно это моя фатальная ошибка, либо причина не максимальной производительности (хотя по расчетам почти максимальная). Шлю адрес буфера, туда серия пакетов от ПЛИС, и всё последовательно кладется без сбоев, затем MSI по завершении. Быть может тут есть скрытая угроза, которую я не вижу ни в направлении хост-плис ни плис-хост. Так что это моя пиррова победа. Зажора процессора тоже не увидел
  8. В том то и дело, я и недели не потратил на Altera на DMA, сделав сам. А потом перешел на Lattice и Xilinx, и на обоих это же самое в DMA заработало с пол оборота. Но не настаиваю, кому как приятнее проще удобнее ;)
  9. Добрый день! Потребовалось немного разобраться с оптикой, и стал выяснять. Оказалось, это в принципе логично, что коэффициент преломления зависит и от температуры среды, и от длины волны проходящего монохроматического света. Существуют таблицы, там дается некий интегральный показатель. Где бы достать таблицы, которые бы показывали коэффициент преломления в зависимости от температуры и для множества значений длин волн? Мне например на 660 нм интересно и на 25 градусов цельсия. Опасаюсь, не пришлось бы мне сидеть с термостатом и линейкой определять это всё.
  10. Не очень многое. Но к счастью, исходники драйверов, наиболее простых, очень помогают. Если у автора темы будут вопросы по драйверам Linux, пишите, может что-то смогу помочь. Правда я делал DMA врукопашную, и API на стороне ядра Linux по части SGDMA мне показались не очень хорошими, запутанными. На стороне ПЛИС и драйвера делал DMA сам, мне это показалось проще чем страдать с корками производителей, хотя возможно я упустил какие-то фантастические преимущества этих IP-ядер (понять бы каких).
  11. Именно так, это не требует особых усилий. А список файлов я иногда забиваю в do-файл получая его просто в консоли ls *.v
  12. Если сравнивать даже с ISE... Однажды я попробовал запустить Modelsim из Quartus, понял что этот раз был последним. Однако, создание bat/bash скрипта и ручное создание проекта для симуляции Altera в Modelsim оказалось в 10 раз проще. Если интересно, могу подсказать, как именно это делать. Вот мой простой пример test_msim.zip
  13. Реагировать на 1 MSI, остальное читать через MMIO, т.е. несколько событий генерируют 1 прерывание общее, но что именно сформировало его - читаем в регистре. Такое решение не годится? Хотя конечно лучше нормальная реакция на прерывания
  14. Почему-то никто не рассматривает вариант обновить прошивку, или написать в техподдержку производителя. Ведь они же понимают сами что не идеальные продукты делают, бывают баги и ждут что напишут о проблеме
  15. Нашлись смайлики? Работоспособность форума в безопасности?