Pull to refresh
4
0,1
Rating
Send message

Греть то можно окружающей средой, но нужно еще и конденсировать...

Хороший тайм-сервер должен постоянно подстраивать частоту своих часов под PPS или другой источник точного времени. Тут уже вопрос о доверии к принятому времени

Обычно берется блок выборок по количеству бинов, применяется оконная функция, вычисляется БПФ, берётся следующий блок итд. Не встречал, чтобы БПФ считали с каждой выборкой, это уже вэйвлеты какие-то будут.

Это каким образом БПФ обрабатывается после прихода сэмпла? Только блочно - там куча вычислений, для которых нужны как минимум 2 выборки. Вызывать обработчик для каждой выборки зачастую медленее, чем в цикле обработать блок. Особенно если уметь оптимизировать не в стиле "красивый код", а "эффективный код". Многие DSP-функции уже в микроконтроллеры внедряют, а то и в ядро процессора (ARM, например).

Это всё классно, но многие системы при проектировании не учитывали спуффинг, который сейчас активно используется. И если на цифровой подстанции время синхронизируется через ГЛОНАСС/GPS, то малейшее отклонение времени приведет к серьезным последствиям.

На типичном 486м обычно установлено 4-16Мб ОЗУ. Даже если ядру хватит, современный софт явно не умеет умещаться в таком объёме.

Если много длительных фоновых процессов, то можно использовать операционку. А обработчику поставить приоритет повыше, и запускать из прерывания по семафору.

Пришел по DMA первый полу-буфер - установили флажок, в основном цикле проверили флажок и обработали его. Пришёл второй - установили второй флажок и обработали его. Потом снова первый... А можно прямо флажки DMA использовать - и прерывания не нужны. Понятно, что нужно успеть обработать до появления следующего полу-буфера. А если не успеваем - то это уже проблема. При редких неуспеваниях поможет дополнительная буферизация, при постоянных - изменение оптимизации, алгоритмов, МК, программистов итп...

Чтобы DMA работал стабильнее - придумали всякие аппаратные bus matrix, burst и fifo...

Обрабатывать выборки блоками, очевидно...

Использование FIFO для передачи данных из прерывания основной программе излишне, имхо. Если всё пишется аппаратно через DMA, то проще передавать указатель на начало/середину буфера с половиной длины. А в вашем случае вообще можно разгрузить процессор, напрямую передавая с АЦП в буфер одним ДМА-потоком, а из этого же буфера в ЦАП - другим.И Circular mode - это точно не режим цирка)

Не уверен, что на типичной 486й машине полноценно запустился бы хоть какой-то из последних линуксов

Так то так, но при конвейере же новые данные поступают каждый такт. И потребляемый ток должен превратиться в кашу?

Это получается, что развертывание ключа и шифрование выполняется в железе отдельными циклами, а не конвейером?

Как раз недавно похожие ситуации были, но там МК пали жертвами издевательств. Одних пытали электропробойной установкой в составе устройства, другим на горячую подключали кабель прошивки (хоть и через изоляторы). Вроде и работали, но случайно заметил по встроенному градуснику, что на 20°С горячее других...

Уже много лет работаю с электроникой, ни разу не сдох ни один компонент от статики. А бывало, передавая микросхему из рук в руки, прямо через нее проскакивает неплохая такая искра. И подобной конфигурацией паял много.

Никогда не понимал, как такое продают под видом игровых ПК/ноутов на авито...

Вроде ж есть нативное сжатие данных на веб-сокетах? JPEG+Base64+Deflate примерно так же весит, как просто JPEG

Децентрализованные сети не очень хорошо масштабируются... Так что интернет они вряд-ли заменят в ближайшее время

Надо сравнивать FDM с такой же высотой слоя, как на фотополимернике - 0.05мм и меньше. Ну и всякие фишечки для FDM придуманы, типа печати оболочки с меньшим шагом, чем заполнение, плавное изменение по Z итп... Хотя бесспорно, поверхность при фотополимерной печати будет более детализированная

Information

Rating
3,642-nd
Registered
Activity