Проанализировал свою зарплату за 10 лет.
В рублях отлично ложится на экспоненту с R²=97%.
Но всё меняется, если перевести в доллары и учесть инфляцию доллара: мало того что рост становится линейным (R²=93%, 99%), так ещё и через 4 года после начала карьеры я откатился на уровень стажёра.
Если бы не этот разрыв — сейчас зп была бы существенно выше.
Печально. Нужно это решать.
В рублях отлично ложится на экспоненту с R²=97%.
Но всё меняется, если перевести в доллары и учесть инфляцию доллара: мало того что рост становится линейным (R²=93%, 99%), так ещё и через 4 года после начала карьеры я откатился на уровень стажёра.
Если бы не этот разрыв — сейчас зп была бы существенно выше.
Печально. Нужно это решать.
#opensource
Нашёл проект опенсорсного умного спикера https://wiki.voicen.io на AllWinner H3 + 512 MB RAM + 4 MEMS микрофона + 3-ваттный спикер.
Парни шарят много деталей на тему KWS, AEC, noise suppression и STT/TTS.
Благодаря им я теперь знаю что в SpeexDSP есть открытая реализация всех этапов обработки сигнала с микрофонов, это мне явно пригодится.
Нашёл проект опенсорсного умного спикера https://wiki.voicen.io на AllWinner H3 + 512 MB RAM + 4 MEMS микрофона + 3-ваттный спикер.
Парни шарят много деталей на тему KWS, AEC, noise suppression и STT/TTS.
Благодаря им я теперь знаю что в SpeexDSP есть открытая реализация всех этапов обработки сигнала с микрофонов, это мне явно пригодится.
#инструменты
Дешёвый нижний подогрев для плат, с ним проще и монтаж и ремонт: положил плату, подождал, снял компонент пинцетом.
https://a.aliexpress.com/_AbDuLC
Дешёвый нижний подогрев для плат, с ним проще и монтаж и ремонт: положил плату, подождал, снял компонент пинцетом.
https://a.aliexpress.com/_AbDuLC
#инструменты
Есть и такой, но в 10 раз дороже. Зато Type-C PD, контроль температуры, и удобство. Правда, маленький очень.
http://www.miniware.com.cn/product/mhp30-mini-hot-plate-preheater/
Есть и такой, но в 10 раз дороже. Зато Type-C PD, контроль температуры, и удобство. Правда, маленький очень.
http://www.miniware.com.cn/product/mhp30-mini-hot-plate-preheater/
#моипроекты
Я запустил мозилловский DeepSpeech (движок распознавания речи) на aarch64! Конечно, это облегчённая моделька в 4 раза меньше чем для компа, но как минимум в трёх прилагающихся тестах даёт такое же качество распознавания.
Работает на 30% медленнее чем на макбуке. Я попробую разогнать проц, надеюсь что получится достичь реалтайма.
Цель была в том, чтобы всё распознавание перенести в оффлайн: это выглядит гораздо более секурно, да и в целом логичнее чем слать на сервер.
Гайд для компа тут https://deepspeech.readthedocs.io но для embedded linux на aarch64 потребовалось найти сборку и заставить её работать :)
Я запустил мозилловский DeepSpeech (движок распознавания речи) на aarch64! Конечно, это облегчённая моделька в 4 раза меньше чем для компа, но как минимум в трёх прилагающихся тестах даёт такое же качество распознавания.
Работает на 30% медленнее чем на макбуке. Я попробую разогнать проц, надеюсь что получится достичь реалтайма.
Цель была в том, чтобы всё распознавание перенести в оффлайн: это выглядит гораздо более секурно, да и в целом логичнее чем слать на сервер.
Гайд для компа тут https://deepspeech.readthedocs.io но для embedded linux на aarch64 потребовалось найти сборку и заставить её работать :)
Нас 52, а это ровно в два раза больше, чем две недели назад. Значит, через пару месяцев нас будет почти тысяча, ну а всего через год — 3.5 миллиарда!
Расскажите о канале своим друзьям, давайте приведём сюда людей!
Расскажите о канале своим друзьям, давайте приведём сюда людей!
This media is not supported in your browser
VIEW IN TELEGRAM
От Haptic моторчика телефона теперь можно ещё и получать обратную связь: определять поверхность, на которой лежит телефон, или чувствовать нажатия/сдавливания/тапы.
Вращающийся эксцентрик моторчика по-разному рассеивает свою энергию в этих условиях и противо-ЭДС обмоток меняется. В статье для анализа используют 400 МГц Cortex-M7, но наверное хватит и более простого МК.
https://www.hackster.io/news/a-sensitive-kind-of-motor-0c93ea6c3db4
https://dl.acm.org/doi/pdf/10.1145/3379337.3415823
Вращающийся эксцентрик моторчика по-разному рассеивает свою энергию в этих условиях и противо-ЭДС обмоток меняется. В статье для анализа используют 400 МГц Cortex-M7, но наверное хватит и более простого МК.
https://www.hackster.io/news/a-sensitive-kind-of-motor-0c93ea6c3db4
https://dl.acm.org/doi/pdf/10.1145/3379337.3415823
Выяснилось, что существуют оптические MEMS-микрофоны. Стоят дороже, но более стойки к электромагнитным помехам, и могут обеспечить лучший SNR чем ёмкостные. Утверждается, что они измеряют только степень отражения света, и я пробовал определять так смещение мембраны динамика. Получилось не очень.
Хочется применить сюда интерференционный метод из этого видео: https://www.youtube.com/watch?v=MUdro-6u2Zg
Хочется применить сюда интерференционный метод из этого видео: https://www.youtube.com/watch?v=MUdro-6u2Zg
Мысли про аудиоусилители.
Давно ли вы встречали блок питания, параметры которого сильно зависят от нагрузки? Ожидаете ли вы, что БП будет существенно по-разному работать для разного профиля потребления нагрузки? На эти вопросы ответ "нет", если мы говорим про импульсные БП, а не про что-то вроде "погасить излишки напряжения резистором". И понятно, почему — есть обратная связь, стремящаяся свести ошибку уставки в 0.
Но почему мы резко забываем об этом, говоря про другой класс источников питания, управляемых напряжением — аудиоусилителях?
Почему в даташите на популярный усилитель D-класса от TI слово feedback встречается два раза, и оба раза всё сводится к тому что ну он просто есть. А глубина, фаза, частотная зависимость? Все основные параметры ООС просто проигнорены.
Почему в аудиоусилителях практически не бывает обратной связи (кроме той что обязана стоять вокруг ОУ), а если она и есть, то делается по чему угодно кроме реально важных сигналов?
От аудиотракта мы ожидаем ~линейной зависимости между мгновенным значением входного сигнала и величиной звукового давления.
Звуковое давление с высокой точностью пропорционально смещению мембраны.
Смещение мембраны с приемлемой точностью пропорционально току через звуковую катушку, правда добавляются резонансы, инерция (== запаздывание), перерегулирование (== колебания вокруг уставки).
Ток катушки с очень плохой точностью пропорционален напряжению на катушке: график импеданса очень далёк от прямой линии! Ток зависит от частоты сигнала, от текущего смещения катушки, от её температуры и ещё 10 факторов.
Разработчики динамиков вынуждены выравнивать их импеданс, и заниматься другими вещами, не очень похожими на оптимизацию механики — а разработчики аудиотракта вынуждены компенсировать этот график импеданса у себя внутри (если есть чем, т.е. если есть DSP).
Очевидно, что стоило бы задавать ток катушки, а не напряжение на ней.
Есть усилители, в которых обратная связь берётся по току: в цепь динамика включается шунт, и напряжение с него используется как ООС. Утверждают, что THD существенно снижается. А главное, такие улучшения достигаются всего лишь одним шунтом и парой элементов (для усилителей A/AB/B-классов, google://ИТУН).
Но почему бы не взять за основу ООС единственно важную величину — мгновенное смещение мембраны? Ставим сенсор, отправляем сигнал с него на инвертирующий вход усилителя.
Способ, который приходит в голову первым: покрыть колпачок мембраны фольгой, измерять ёмкость между ним и керном магнитной системы. Будет тяжело измерить ёмкость на уровне долей пФ, максимум нескольких единиц пФ, с точностью не меньше 12-14 бит, ещё и с частотой не меньше 100 кГц.
Если у вас есть инфа, то поделитесь, пожалуйста. Я не смог найти сенсоров, обеспечивающих все три условия. Явно есть подходящая аналоговая схема, например генератор + ёмкостный делитель + мост + ОУ, тем более что в итоге нужен аналоговый сигнал.
Ещё проблема: это будет сильно зависеть от ЭМИ вокруг.
Второй способ я упомянул в прошлом посте: амплитуда от лазера. Можно начать с того, что просверлить керн насквозь, разместить под пылевым колпачком лазер от DVD, и измерять напряжение на его встроенном фотодиоде. Фольга на внутренней стороне колпачка вновь пригодится.
Третий способ, из второй части вчерашнего видео: лазерный интерферометр. Этот способ потребует уже достаточно быстрого МК для счёта минимумов и учёта амплитуды отражёнки, но выглядит вполне реальным. Фазовый принцип из лидаров: получаем оценку расстояния из амплитуды (время пролёта я на таких расстояниях не измерю никогда, конечно), и уточняем её измерением фазы. Можно модулировать поочерёдно двумя-тремя-пятью частотами (получим систему уравнений из фаз для разных частот, которая явно сведётся к приемлемо точной полной фазе), или подавать Sweep или пилообразный сигнал.
Ещё это даёт бесплатно сделать микрофон: сигнал положения мембраны минус входной сигнал. Второй принцип ТРИЗ :)
А звучит-то как, "лазерный динамик"!
Давно ли вы встречали блок питания, параметры которого сильно зависят от нагрузки? Ожидаете ли вы, что БП будет существенно по-разному работать для разного профиля потребления нагрузки? На эти вопросы ответ "нет", если мы говорим про импульсные БП, а не про что-то вроде "погасить излишки напряжения резистором". И понятно, почему — есть обратная связь, стремящаяся свести ошибку уставки в 0.
Но почему мы резко забываем об этом, говоря про другой класс источников питания, управляемых напряжением — аудиоусилителях?
Почему в даташите на популярный усилитель D-класса от TI слово feedback встречается два раза, и оба раза всё сводится к тому что ну он просто есть. А глубина, фаза, частотная зависимость? Все основные параметры ООС просто проигнорены.
Почему в аудиоусилителях практически не бывает обратной связи (кроме той что обязана стоять вокруг ОУ), а если она и есть, то делается по чему угодно кроме реально важных сигналов?
От аудиотракта мы ожидаем ~линейной зависимости между мгновенным значением входного сигнала и величиной звукового давления.
Звуковое давление с высокой точностью пропорционально смещению мембраны.
Смещение мембраны с приемлемой точностью пропорционально току через звуковую катушку, правда добавляются резонансы, инерция (== запаздывание), перерегулирование (== колебания вокруг уставки).
Ток катушки с очень плохой точностью пропорционален напряжению на катушке: график импеданса очень далёк от прямой линии! Ток зависит от частоты сигнала, от текущего смещения катушки, от её температуры и ещё 10 факторов.
Разработчики динамиков вынуждены выравнивать их импеданс, и заниматься другими вещами, не очень похожими на оптимизацию механики — а разработчики аудиотракта вынуждены компенсировать этот график импеданса у себя внутри (если есть чем, т.е. если есть DSP).
Очевидно, что стоило бы задавать ток катушки, а не напряжение на ней.
Есть усилители, в которых обратная связь берётся по току: в цепь динамика включается шунт, и напряжение с него используется как ООС. Утверждают, что THD существенно снижается. А главное, такие улучшения достигаются всего лишь одним шунтом и парой элементов (для усилителей A/AB/B-классов, google://ИТУН).
Но почему бы не взять за основу ООС единственно важную величину — мгновенное смещение мембраны? Ставим сенсор, отправляем сигнал с него на инвертирующий вход усилителя.
Способ, который приходит в голову первым: покрыть колпачок мембраны фольгой, измерять ёмкость между ним и керном магнитной системы. Будет тяжело измерить ёмкость на уровне долей пФ, максимум нескольких единиц пФ, с точностью не меньше 12-14 бит, ещё и с частотой не меньше 100 кГц.
Если у вас есть инфа, то поделитесь, пожалуйста. Я не смог найти сенсоров, обеспечивающих все три условия. Явно есть подходящая аналоговая схема, например генератор + ёмкостный делитель + мост + ОУ, тем более что в итоге нужен аналоговый сигнал.
Ещё проблема: это будет сильно зависеть от ЭМИ вокруг.
Второй способ я упомянул в прошлом посте: амплитуда от лазера. Можно начать с того, что просверлить керн насквозь, разместить под пылевым колпачком лазер от DVD, и измерять напряжение на его встроенном фотодиоде. Фольга на внутренней стороне колпачка вновь пригодится.
Третий способ, из второй части вчерашнего видео: лазерный интерферометр. Этот способ потребует уже достаточно быстрого МК для счёта минимумов и учёта амплитуды отражёнки, но выглядит вполне реальным. Фазовый принцип из лидаров: получаем оценку расстояния из амплитуды (время пролёта я на таких расстояниях не измерю никогда, конечно), и уточняем её измерением фазы. Можно модулировать поочерёдно двумя-тремя-пятью частотами (получим систему уравнений из фаз для разных частот, которая явно сведётся к приемлемо точной полной фазе), или подавать Sweep или пилообразный сигнал.
Ещё это даёт бесплатно сделать микрофон: сигнал положения мембраны минус входной сигнал. Второй принцип ТРИЗ :)
А звучит-то как, "лазерный динамик"!
DeepMind в проекте AlphaFold совершила прорыв, рывком достигнув почти абсолютной точности угадывания структуры белка, с ошибкой порядка диаметра атома (1.6Å).
Используя 128 ядер TPUv3, за несколько (?) недель они обучились на 170 тысячах известных структур.
Я бы поспорил с @addmeto насчёт его смелых выводов, что синтез белка теперь не нужен. [Вот что бывает, если спешишь постить про то, в чём не сечёшь даже на уровне введения].
Формально, для перебора структур он уже и так давно не был нужен (это то, зачем вообще существует вычислительное сворачивание белков, и добились этой цели быстро), плюс, я не вижу в архитектуре ни единого блока квантовых расчётов.
Это так не работает, ML это по-прежнему всего лишь высокоэффективная угадайка, и хотя бы одна стадия отжига [с применением MM (Molecular Mechanics) с каким-нибудь хорошим потенциалом типа BIO+ или поновее, а то и полуэмпирическим типа DFTB3], очевидно, по-прежнему нужна.
Конечно, не могли не хайпануть на современном угадаечном тренде и на SARS-Cov-2. О чём говорить, если в их блогпосте нет ни слова quantum? Как всегда, хипстеры закидали проблему баззвордами, а настоящим учёным за ними потом уборку делать.
Тем не менее, я конечно же рад случившемуся, проблема настолько важна, что бросить на неё с разных сторон всю мощь армии 22-летних счетоводов давно пора.
Используя 128 ядер TPUv3, за несколько (?) недель они обучились на 170 тысячах известных структур.
Я бы поспорил с @addmeto насчёт его смелых выводов, что синтез белка теперь не нужен. [Вот что бывает, если спешишь постить про то, в чём не сечёшь даже на уровне введения].
Формально, для перебора структур он уже и так давно не был нужен (это то, зачем вообще существует вычислительное сворачивание белков, и добились этой цели быстро), плюс, я не вижу в архитектуре ни единого блока квантовых расчётов.
Это так не работает, ML это по-прежнему всего лишь высокоэффективная угадайка, и хотя бы одна стадия отжига [с применением MM (Molecular Mechanics) с каким-нибудь хорошим потенциалом типа BIO+ или поновее, а то и полуэмпирическим типа DFTB3], очевидно, по-прежнему нужна.
Конечно, не могли не хайпануть на современном угадаечном тренде и на SARS-Cov-2. О чём говорить, если в их блогпосте нет ни слова quantum? Как всегда, хипстеры закидали проблему баззвордами, а настоящим учёным за ними потом уборку делать.
Тем не менее, я конечно же рад случившемуся, проблема настолько важна, что бросить на неё с разных сторон всю мощь армии 22-летних счетоводов давно пора.
подъехал ответ от млщика. там классика Даннинга-Крюгера.
цитаты:
> Баззворд quantum — ну примерно все вероятностные модели (и ML следом) про это.
> Отжиг — так вообще просто один их методов оптимизации
> Хз, учитывали ли BIO+/DFTB3 при настройке модели (и хз что это)
> Эмпирика по-определению инструмент до-ML-эпохи.
ок, ответы:
> quantum — это даже близко не про угадайки, это квантовохимические вычисления. если в статье про квантовую химию (а форма молекул всяко имеет отношение к квантовой химии, не правда ли?) нет ни одного слова «кванты» — то это не статья, а так, на заборе написано.
> отжиг — это действительно общий метод оптимизации, но в квантах это абсолютно определённый метод, который в совершенно прямом смысле делается через увеличение температуры и её снижение.
> «хз что такое полуэмпирические квантовые потенциалы», ну норм, может стоит хотя бы немного сечь в предметной области, чтобы начинать возражать?
> «эмпирика это что-то до наших турбоугадаек». нет, опять в лужу. полуэмпирические методы это совершенно определённый класс методов вычисления энергии (не оптимизации) молекулы, второй из классической последовательности оптимизации MM->Semi-empirical->Ab initio.
В полуэмпирике имеется в виду совсем не что-то идиотское типа «если в молекуле связь С-С, то её длина вот такая» к которому вы в ML привыкли, а всего лишь немного упрощённый расчёт потенциалов орбиталей, с объединением орбиталей и кучей упрощений типа Хартри-Фока и я не буду лезть глубже.
BIO+ это один из потенциалов в MM2, оптимизированный под белки.
DFTB3 это один из потенциалов в полуэмпирике, опять же показывающий хорошие результаты на белках.
По итогу, моё отношение к ML-щикам упало примерно в ноль. Нет, парни, если надёргать устоявшихся терминов из других областей, дать им другие определения и прийти оценивать другие области этими своими понятиями — наукой это не станет. Даже если тщательно делать вид. Угадывать можно даже очень точно (в каких-то кейсах), но понимания вам совершенно явно не хватает.
Ну и совет: побольше бы вам разобраться в области, прежде чем лезть советовать и тем более опровергать, не поняв ни слова в тексте.
Если вы даже не собираетесь уточнять ваше угаданное нормальными методами, учитывающими реальную физику процессов — то ну наверное, грош цена вашим методам. Критерий Поппера оно не проходит.
И поменьше самоуверенности. Вы сами себя дискредитируете.
цитаты:
> Баззворд quantum — ну примерно все вероятностные модели (и ML следом) про это.
> Отжиг — так вообще просто один их методов оптимизации
> Хз, учитывали ли BIO+/DFTB3 при настройке модели (и хз что это)
> Эмпирика по-определению инструмент до-ML-эпохи.
ок, ответы:
> quantum — это даже близко не про угадайки, это квантовохимические вычисления. если в статье про квантовую химию (а форма молекул всяко имеет отношение к квантовой химии, не правда ли?) нет ни одного слова «кванты» — то это не статья, а так, на заборе написано.
> отжиг — это действительно общий метод оптимизации, но в квантах это абсолютно определённый метод, который в совершенно прямом смысле делается через увеличение температуры и её снижение.
> «хз что такое полуэмпирические квантовые потенциалы», ну норм, может стоит хотя бы немного сечь в предметной области, чтобы начинать возражать?
> «эмпирика это что-то до наших турбоугадаек». нет, опять в лужу. полуэмпирические методы это совершенно определённый класс методов вычисления энергии (не оптимизации) молекулы, второй из классической последовательности оптимизации MM->Semi-empirical->Ab initio.
В полуэмпирике имеется в виду совсем не что-то идиотское типа «если в молекуле связь С-С, то её длина вот такая» к которому вы в ML привыкли, а всего лишь немного упрощённый расчёт потенциалов орбиталей, с объединением орбиталей и кучей упрощений типа Хартри-Фока и я не буду лезть глубже.
BIO+ это один из потенциалов в MM2, оптимизированный под белки.
DFTB3 это один из потенциалов в полуэмпирике, опять же показывающий хорошие результаты на белках.
По итогу, моё отношение к ML-щикам упало примерно в ноль. Нет, парни, если надёргать устоявшихся терминов из других областей, дать им другие определения и прийти оценивать другие области этими своими понятиями — наукой это не станет. Даже если тщательно делать вид. Угадывать можно даже очень точно (в каких-то кейсах), но понимания вам совершенно явно не хватает.
Ну и совет: побольше бы вам разобраться в области, прежде чем лезть советовать и тем более опровергать, не поняв ни слова в тексте.
Если вы даже не собираетесь уточнять ваше угаданное нормальными методами, учитывающими реальную физику процессов — то ну наверное, грош цена вашим методам. Критерий Поппера оно не проходит.
И поменьше самоуверенности. Вы сами себя дискредитируете.
Univelis / Foxspeed
Обнаружены доступные дисплеи для VR с совершенно дикой плотностью пикселей: 706 PPI. Это на 67% плотнее чем популярный H381BDN01 (423 PPI, стоящий во многих VR шлемах), за те же деньги. Sharp DM-TFT29-392, разрешение 1440*1440 при диагонали 2.89" и 60 fps…
Обнаружены классные матрицы от ON Semi AR0330: 60 FPS при разрешении 2304*1536.
Подключается по параллельному RGB, по стандартному MIPI и по проприетарному HiSPi, про который я раньше никогда не слышал.
Последовательность инита есть, драйвера под линукс есть, стоит дёшево.
А теперь эмоции.
Я долго искал подходящие матрицы для проекта AR-протогена, и все они были или всего 30 FPS при нужном разрешении, вообще не доставали до 1440 в высоту, были совершенно недоступны в магазинах, или без даташита/инита/драйвера.
А вот эта матрица выглядит просто идеальной. Я заказал две, посмотрим чо получится: https://aliexpress.ru/item/33033370411.html
Оптика это минимальная из проблем, но тоже пора поискать да заказать.
#AR_протоген #компоненты
Подключается по параллельному RGB, по стандартному MIPI и по проприетарному HiSPi, про который я раньше никогда не слышал.
Последовательность инита есть, драйвера под линукс есть, стоит дёшево.
А теперь эмоции.
Я долго искал подходящие матрицы для проекта AR-протогена, и все они были или всего 30 FPS при нужном разрешении, вообще не доставали до 1440 в высоту, были совершенно недоступны в магазинах, или без даташита/инита/драйвера.
А вот эта матрица выглядит просто идеальной. Я заказал две, посмотрим чо получится: https://aliexpress.ru/item/33033370411.html
Оптика это минимальная из проблем, но тоже пора поискать да заказать.
#AR_протоген #компоненты
Univelis / Foxspeed
подъехал ответ от млщика. там классика Даннинга-Крюгера. цитаты: > Баззворд quantum — ну примерно все вероятностные модели (и ML следом) про это. > Отжиг — так вообще просто один их методов оптимизации > Хз, учитывали ли BIO+/DFTB3 при настройке модели (и…
Несколько читателей пожаловались, что всё очень интересно, но ничего непонятно.
Мы с @slesarew договорились подготовить серию научно-популярных постов на эту тему, думаю что недели нам будет достаточно.
Мы с @slesarew договорились подготовить серию научно-популярных постов на эту тему, думаю что недели нам будет достаточно.
Univelis / Foxspeed
Обнаружены классные матрицы от ON Semi AR0330: 60 FPS при разрешении 2304*1536. Подключается по параллельному RGB, по стандартному MIPI и по проприетарному HiSPi, про который я раньше никогда не слышал. Последовательность инита есть, драйвера под линукс есть…
Не так уж просто оказалось подключить эти матрицы к Nvidia Jetson Nano, по крайней мере к той версии которая у меня есть. 4-лейновый MIPI CSI у него только один, остальные 2-лейновые, и агрегации (вроде бы) нет. А у этих матриц 4 600-мегабитных лейна, на меньшем количестве не запустить.
В свежей версии Nano есть два порта MIPI по 4 лейна на каждом, но странно покупать вторую (или третью, я уже запутался в их нумерации) версию того что уже есть.
У Lattice есть такое решение этой задачи: https://www.latticesemi.com/Products/FPGAandCPLD/CrossLink
Например, LIF-MD6000-80:
• стоит $10.5
• имеет два железных блока D-PHY MIPI 1.1 (до 6.0 Гб/с), умеющих вход и выход по 4 лейнам
• имеет два софтовых блока D-PHY MIPI 1.1 (до 1.2 Гб/с), умеющих вход по 7 и 8 лейнам
(все эти блоки умеют работать с CSI-2 и DSI)
• cистему клокинга и даже встроенный генератор на 48 МГц
• 180 кБ Block RAM
• FPGA фабрику, в которую нужно зашить IP от леттиса, которые получаются по лицензии. С этим пока неясно: есть evaluation лицензия, ядро по которой работает в течение 4 часов, насколько я понимаю перезагрузка это решает. Это совершенно нестрашно, у меня и так длительность работы девайса от батарей составит 3-4 часа.
Этот 2:1 MIPI CSI-2 Bridge Soft IP сшивает кадры с двух камер в один кадр удвоенной ширины, и отправляет его на выход (с удвоенной скоростью, конечно)
Мои 590 Мб/с/лейн прекрасно влезут в модуль входа (ограничение 1.2 Гб/с), и склеенные 2*590=1.18 Гб/с тем более влезут в выходные 6 Гб/с.
В свежей версии Nano есть два порта MIPI по 4 лейна на каждом, но странно покупать вторую (или третью, я уже запутался в их нумерации) версию того что уже есть.
У Lattice есть такое решение этой задачи: https://www.latticesemi.com/Products/FPGAandCPLD/CrossLink
Например, LIF-MD6000-80:
• стоит $10.5
• имеет два железных блока D-PHY MIPI 1.1 (до 6.0 Гб/с), умеющих вход и выход по 4 лейнам
• имеет два софтовых блока D-PHY MIPI 1.1 (до 1.2 Гб/с), умеющих вход по 7 и 8 лейнам
(все эти блоки умеют работать с CSI-2 и DSI)
• cистему клокинга и даже встроенный генератор на 48 МГц
• 180 кБ Block RAM
• FPGA фабрику, в которую нужно зашить IP от леттиса, которые получаются по лицензии. С этим пока неясно: есть evaluation лицензия, ядро по которой работает в течение 4 часов, насколько я понимаю перезагрузка это решает. Это совершенно нестрашно, у меня и так длительность работы девайса от батарей составит 3-4 часа.
Этот 2:1 MIPI CSI-2 Bridge Soft IP сшивает кадры с двух камер в один кадр удвоенной ширины, и отправляет его на выход (с удвоенной скоростью, конечно)
Мои 590 Мб/с/лейн прекрасно влезут в модуль входа (ограничение 1.2 Гб/с), и склеенные 2*590=1.18 Гб/с тем более влезут в выходные 6 Гб/с.
Latticesemi
CrossLink | Low Power FPGA for Video Bridging
Lattice CrossLink low power FPGA featuring hardened MIPI D-PHY, LVDS, SLVS, subLVDS, & Open LDI bridging.
Вообще, идея очень хороша: покупаете железку с нужным вам количеством входов/выходов MIPI, и зашиваете в неё ту функцию, которая вам нужна.
Например, сейчас мне нужно сшивать два кадра с камер в один, и я возьму 2:1 MIPI CSI-2 Bridge Soft IP.
А потом захочу подключить две матрицы по одному MIPI, и мог бы взять стандартную Toshiba TC358870 (HDMI -> 2*MIPI DSI), а могу купить ещё одну такую же LIF-MD6000-81 и зашить в неё ядро 1:2 DSI MIPI Splitter.
Например, сейчас мне нужно сшивать два кадра с камер в один, и я возьму 2:1 MIPI CSI-2 Bridge Soft IP.
А потом захочу подключить две матрицы по одному MIPI, и мог бы взять стандартную Toshiba TC358870 (HDMI -> 2*MIPI DSI), а могу купить ещё одну такую же LIF-MD6000-81 и зашить в неё ядро 1:2 DSI MIPI Splitter.