Pull to refresh

Comments 22

Осталось придумать что можно сделать на такой платке. АЦП на ней насколько быстрый? Можно ли будет на ней сделать SDR?
У нее почти все выводы GPIO сделаны через I2C port expander, так что максимальная частота — 100 кГц, и задержка еще около 2-3 мс, так что SDR из нее если и получится, то совсем никакой.
Меня эта плата заинтересовала как платформа с открытым UEFI, а сама по себе она — первый блин, который комом. Совместимость с Arduino прикручена сбоку и реализована откровенно плохо, GPU в SoC встроить забыли, да и сам он ни производительностью, ни сверхнизким энергопотреблением не блещет, да и x86 там такой, что Windows все равно не грузится и 95% старого софта не работает. Посмотрим, что будет в следующем поколении, надеюсь, что Intel избавит его от совсем уж детских болезней.
Выводы GPIO это отдельный разговор, АЦП там стоит отдельный и подключен напрямую. К сожалению я не смог узнать быстрым гуглением какой же именно там АЦП стоит, часто на первых страницах поиска попадаются слишком общие характеристики платы в целом и упоминание что АЦП там есть а иногда еще тот факт что он быстрее чем в ардуиновских контроллерах. Но насколько? Видимо ответ на этот вопрос поможет чтение подробной документации, но… проще спросить у того кто её уже наверняка читал.
Не углядел, что ADC напрямую подключен, теперь внимательно посмотрел в схему — это действительно так. В качестве ADC на плате выступает чип Analog Devices AD7298, подключенный по SPI.
Вот его характеристики:
12-bit SAR ADC
8 single-ended inputs
Channel sequencer functionality
Fast throughput of 1 MSPS
Analog input range: 0 V to 2.5 V
12-bit temperature-to-digital converter
Temperature sensor accuracy of ±1°C
Temperature range: −40°C to +125°C
Specified for VDD: 2.8 V to 3.6 V
Logic voltage VDRIVE: 1.65 V to 3.6 V
Power-down current: <10 μA
Internal 2.5 V reference
Internal power-on reset
High speed serial interface SPI

Я не очень знаком с темой SDR, поэтому сделать вывод из них не могу, но мне кажется, что даже 30 Мгц на прием FM-станций все равно не хватит.
Где 30Мгц? там всего 1МSPS, т.е. осилить можно частоту до 500кГц.

Можно конечно дополнить синтезатором и смесителем, 500кГц ширины для последующей обработки это не так уж и мало(ширина полосы стерео FM-станции порядка 70кГц), можно покрывать разом отдельные любительские диапазоны и/или вести непрерывный приём SSTV. Вобщем, есть возможность принимать сигналы точного времени на частоте 77кГц, тоже хорошая задача для практики. Лишь бы хватило производительности для математики.
Про 30 Мгц написано в даташите:
The device contains a low noise, wide bandwidth track-and-hold amplifier that can handle input frequencies in excess of 30 MHz.

Посоветуйте, что почитать по теме, может быть и сделаю что-нибудь простое в качестве упражнения.
Это входной усилитель имеет такую полосу пропускания. Но АЦП обеспечивает только 1Мсемпл в секунду.

Для начала можно взять статью оттуда можно уже отправляться смотреть математику и всё остальное.

Основное что может понадобится из математики — сдвиг спектра путём умножения сигнала на косинус опорной частоты и низкочастотные фильтры(FIR)
Забыл написать про производительность: Linpack — 15,5 MFLOPS, у RPi — 22,7. Могу проверить еще через openssl speed, если нужно.
Не думал что SPI-эмуляторы стоят так дорого, доводилось делать самому такой на коленке. Чип с EMC и USB-стэком, 128 метров оперативки, вот всё что нужно.
Код там тривиальный.
Я тоже не думал, пока не столкнулся. На самом деле, тривиально там все только на первый взгляд, ведь нужно правильно эмулировать целый ворох чипов разных производителей с разными же командами, эмулировать режимы DualSPI и QuadSPI, которые аппаратно не поддерживает почти никто, да и сама по себе поддержка базы эмулируемых чипов в актуальном состоянии стоит приличных денег. Думаю сделать в качестве упражнения на коленке эмулятор ровно одного чипа — одного из самых распространенных на десктопных платах Winbond W25Q64BV/128BV в SPI-only режиме, ибо даже такого хватало бы сейчас на 90% плат, с которыми приходится работать.
Так-то да, у меня был конкретный чип, без экзотики.
Кроме того + еще один с собственным протоколом шины, но схемотехника была практически один-в-один.
UFO landed and left these words here
Прикрутить FT2232H — первое, что я попробовал. JTAG работает, SPI — тоже, но flashrom не может достучаться до чипа по каким-то причинам, которые я выяснять не стал, ибо программаторов у меня много. По поводу «нормальности» — Minnovboard MAX обещают почти нормальную (на двуядерном Атоме), но при этом с полностью открытой реализацией UEFI. Осталось дождать ее выхода.
UFO landed and left these words here
Чип там известный Winbond W25Q64FV, проблема где-то между разъемом ISP и FT2232H. Толи питания не хватает, толи частота SPI слишком высокая — пока не могу сказать, некогда было отлаживать, просто взял другой программатор с полки. Будет время — попвтаюсь выяснить, кто виноват и что делать.
UFO landed and left these words here
UFO landed and left these words here
На Bay Trail может быть только TXE, но на этой плате его не будет, ибо с открытостью такие вещи несовместимы. Вместо этого ядро Quark, которое у «взрослых» Atom'ов выполняет код TXE, может быть использовано как встроенный в SoC MCU, но в момент выпуска для него нет никакого ПО, поэтому проще считать, что его нет совсем.
UFO landed and left these words here
Согласен, но пробрасывать в QEMU свое реальное устройство, для которого разрабатывается UEFI-драйвер — тот еще цирк с конями, да и отлаживать, скажем, какие-то защитные механизмы или работу с SMM стоит, на мой взгляд, на реальном железе.
Если же с железом работать не надо, а драйвер ваш, к примеру, для ФС — QEMU + QVMF рулят и педалят.
UFO landed and left these words here
Видел уже, когда исследовал возможность подключения GPU, слишком громоздкий получается сетап. Лучше тогда уже использовать либо mPCIe-карту вроде такой, либо USB-GPU на базе чипов серии DisplayLink 1x5, ибо они относительно хорошо работают в современных Linux'ах почти без бубна. Проблема с ними только одна — стоимость, сравнимая со стоимостью самой платы.
Only those users with full accounts are able to leave comments. Log in, please.