Jump to content

    

aT-DeviLru

Свой
  • Content Count

    111
  • Joined

  • Last visited

Community Reputation

0 Обычный

About aT-DeviLru

  • Rank
    Частый гость
  • Birthday 04/23/1991

Контакты

  • Сайт
    http://atdevil.ru
  • ICQ
    0

Информация

  • Город
    Санкт-Петербург

Recent Profile Visitors

3011 profile views
  1. Под многие камеры Canon можно писать свой софт - https://www.magiclantern.fm/
  2. В Vivado начиная с версии 2018.1 добавлено ip-ядро Polar Encoder/Decoder, при желании можно его поизучать.
  3. Наверное уже не актуально, но может кому-нибудь ещё пригодиться, на базе питерского политеха имеется мастерская для молодёжи - фаблаб, где можно самостоятельно работать на различном оборудовании, в том числе на 3D-принтере. http://fablab.spbstu.ru/ru_RU/tariffs/
  4. Цитата(petrov @ Dec 2 2017, 23:31) Каких базовах элементов не хватает, чтобы описать так же как на HDL? Может быть кто-нибудь напишет, как в матлабе решаются следующие вопросы: 1. Можно ли использовать аппаратные блоки ПЛИС и при этом производить симуляцию в simulink? Для оптимального описания, например, высокоскоростных фильтров (рабочие частоты > 450 МГц), как правило, используются прямые вставки примитивов DSP48 с ручной конфигурацией их параметров. 2. Можно ли переходить на разные клоковые домены, например по середине схемы поставить MMCM, перейти на двойной клок, произвести обработку на нём, потом перейти обратно на одинарный клок? 3. Можно ли использовать шифрованные ip-ядра (которых нет в Xilinx System Generator) на языках VHDL/Verilog? 4. Можно ли задавать атрибуты у элементов, например один блок памяти сделать на лутах, другой на блочной памяти, часть сдвиговых регистров сделать на SRL16, часть на FDRE? 5. Можно ли работать с асинхронными клоковыми доменами, например поставить асинхронное фифо? 6. Можно ли размножить какой-нибудь сигнал для уменьшения fanout и улучшения таймингов? 7. Есть ли в simulink (графическое представление) адекватный контроль за изменениями кода (git), чтобы можно было производить удобную коллективную разработку (слияние кода, просмотр изменений, итд)? 8. Есть ли нормальный редактор кода для матлаба, например полноценная интеграция с редактором Sublime Text?
  5. Xilinx FIR Compiler в Vivado умеет делать интерполяцию параллельных потоков, поэтому задача интерполяции сигнала в 2 раза с Fд = 250 МГц до 500 МГц на клоке 250 МГц решается очень просто.
  6. Посмотрите application note от Xilinx: xapp524,xapp855,xapp856,xapp860,xapp866,xapp585,xapp774,xapp1064,xapp1071, потом можно поискать поиском по форуму по названиям xapp-ов, было уже множество тем с разбором приёма такого типа данных. Даже статья на хабре есть - https://habrahabr.ru/post/313692/
  7. Сегодня добавили и сам дистрибутив Vivado 2016.3 для скачивания, образ теперь занимает 20.61 ГБ, прошлая версия (2016.2) была существенно легче - 11.17 ГБ.
  8. Рассмотрим случай когда все 3 мастера ожидают передачи данных, т.е. ireq_tvalid_vect = "111": 1) По ресету инициализируется переменная curr_num := 2; 2) 1-я итерация цикла "stream_fingering_l : for stream_num in 3 downto 1 loop" stream_num = 3; => loop_num = (curr_num + stream_num) mod 3 = (2 + 3) mod 3 = 2 curr_num := loop_num = 2 3) 2-я итерация цикла ... stream_num = 2; => loop_num = (curr_num + stream_num) mod 3 = (2 + 2) mod 3 = 1 curr_num := loop_num = 1 4) 3-я итерация цикла ... stream_num = 1; => loop_num = (curr_num + stream_num) mod 3 = (1 + 1) mod 3 = 2 curr_num := loop_num = 2 В итоге получаем, что на выход арбитра всегда коммутируется 2-ой мастер. Второй пример работает корректно, т.к. перебирает циклически все индексы.
  9. В квесте есть отдельная документация на многопроцессорную симуляцию: "Questa ® SIM Multi-core Simulation User’s Guide" (смотреть в папке docs\pdfdocs)
  10. В качестве примера можно посмотреть исходники и документацию открытого проекта Red Pitaya, например, там имеется генератор сигналов, осциллограф и анализатор спектра с веб-интерфейсом, всё это работает под arm linux-ом. [attachment=98028:2016_01_10_110705.png][attachment=98029:2016_01_10_110927.png]
  11. Генератор белого шума есть в примерах Xilinx System Generator, его реализация полностью открыта для пользователя, поэтому при желании можно очень быстро портировать код под любую другую ПЛИС. [attachment=97784:2015_12_26_130527.png]
  12. Цитата(Огурцов @ Mar 31 2015, 12:33) как уже заметили выше - ацп народу не потянуть а компараторы можно хотя бы по частоте масштабировать Всё не так и дорого, как и предложил khach можно взять самый дешёвый 8-разрядный АЦП на 1ГГц - Hittite HMCAD1511, стоимость которого составляет 66$ при покупке 1шт в digikey и подключить к дешёвой ПЛИС Xilinx Spartan-6 XC6SLX25 (47$). Все остальные комплектующие уже не так дорого стоят. Данная связка АЦП и ПЛИС успешно используется в осциллографе Rigol DS1054Z, фотографии и схемы которого можно посмотреть на зарубежном форуме: http://www.eevblog.com/forum/blog/eevblog-...1054z-teardown/ http://www.eevblog.com/forum/blog/eevblog-...-rigol-ds1054z/ Прикрепляю несколько фотографий его внутренностей: [attachment=91295:2015_03_31_134651.png] [attachment=91296:2015_03_31_134747.png]
  13. Цитата(x736C @ Mar 29 2015, 17:50) Интересно в порядке бреда, так сказать. Если взять быстрые компараторы.. Пример проекта на кикстартере с осциллографом на 10ГГц на компараторах, заявлена стоимость 300$: https://www.kickstarter.com/projects/185599...sb-oscilloscope [attachment=91247:DS800.jpg] Документация на прибор: http://www.fastsampling.com/Products/DS800...800Manual17.pdf Обсуждение проекта на зарубежном форуме: http://www.eevblog.com/forum/testgear/10-g...rwin-sabanovic/ http://www.eevblog.com/forum/crowd-funded-...b-oscilloscope/
  14. Тема очень интересная, предложу в качестве основы взять открытые проекты от CERN, тогда цифровой осциллограф будет состоять из двух плат: 1. материнская плата, которая содержит: разъём FMC для подключения платы АЦП, ПЛИС для обработки потока с АЦП, Ethernet 1Gb, USB 3.0 или PCI-Express для передачи данных на ПК. В интернете множество открытых примеров реализации данных интерфейсов, поэтому особых проблем быть не должно. Вот пара примеров таких плат от CERN, которые можно взять за основу (проекты полностью открытые – есть исходники схем, печатных плат, ПО для ПЛИС и ПК). Плата Simple PCIe FMC carrier (SPEC) (ссылка на страницу проекта http://www.ohwr.org/projects/spec/wiki) [attachment=91235:SPEC_top_high_res.jpg] Плата AMC FMC Carrier (AFC) (ссылка на страницу проекта http://www.ohwr.org/projects/afc/wiki) [attachment=91236:AFC_TOP_v3_1.JPG] 2. Плата с АЦП на 1-2ГГц, которая содержит: разъём FMC для подключения к материнской плате, аналоговый вход, АЦП, источник клока и источник питания. За основу можно взять проект FMC ADC 1G 10b 2cha (ссылка на страницу проекта http://www.ohwr.org/projects/fmc-adc-1g10b2cha/wiki). Прикрепляю документ где приведено ТЗ, структурная схема проекта, выбор комплектующих, примеры схемотехники аналогового входа, клока и многое другое. [attachment=91241:CERN_fmc...1g10b2ch.pdf] Структурная схема следующая: [attachment=91238:block_scheme.png] Пример аналоговой части осциллографа (см. документ http://www.ti.com/lit/ds/symlink/lmh6518.pdf): [attachment=91237:front_end.png] Пример похожей платы от CERN с 4-я АЦП 250 МГц 16 бит (ссылка на страницу проекта http://www.ohwr.org/projects/fmc-adc-250m-16b-4cha/wiki): [attachment=91239:bot_r.jpg] [attachment=91240:top_r.jpg] На том же сайте есть пример простого РЧ аттенюатора на диапазон напряжений 50 мВ-1000 В с полосой 0-2 ГГц. (ссылка на страницу проекта http://www.ohwr.org/projects/vme-rf-att-4cha/wiki) Разделение проекта осциллографа на две платы в будущем позволит на его основе сделать векторный анализатор цепей, анализатор спектра и другие интересные проекты. Готов принять участие в создании осциллографа (анализатора спектра или векторного анализатора цепей) в качестве разработчика ПЛИС, успешный опыт работы с АЦП >1ГГц в наличии.
  15. Идея курсов по реализации алгоритмов ЦОС на ПЛИС отличная, было бы интересно освоить реализацию какого-нибудь телекоммуникационного стандарта таким образом (WI-FI, LTE, DVB-T, и др..), думаю такой формат изучения здорово сэкономит время (с нескольких лет до нескольких месяцев) и позволит узнать много новых идей по реализации блоков ЦОС. Цитата(Fat Robot @ Dec 21 2014, 22:12) Но uvm почти не применим для верификации блоков цос. Зачем он в вашем курсе? Fat Robot, можете поделиться Вашим опытом и идеями по поводу методологии верификации блоков цос? Я в этой области новичок, пока могу выделить два подхода к верификации: 1. В Matlab/Simulink создаётся эталонная модель блока ЦОС с набором тестовых воздействий, на следующем этапе подключается аппаратная реализация блока на языке описания аппаратуры, например, через блок HDL Cosimulation и вычисляется разность между выходом эталонной модели и аппаратной реализации. На следующем этапе можно запустить FPGA-in-the-loop верификацию для проверки алгоритма непосредственно в железе. 2. Из эталонной модели и набора тестовых воздействий, используя Matlab/Simulink HDL Verifier, генерируется SystemC код для подключения к уже существующему верификационному окружению (UVM и др) на языке HDL. 3. Генерация кода непосредственно из эталонной модели Matlab/Simulink/Xilinx System Generator. Может быть есть ещё какие-нибудь способы верификации блоков ЦОС?