Здpавствуй, Dmitry!
Воскресенье 10 Hоября 2024 17:32, ты писал(а) мне,
DO>>> Я в код давно перестал смотреть, и изучать систему команд тоже,
DO>>> равно как и выжимать последние такты из железа. Оно того не
DO>>> стоит, не успеваешь - возми молоток побольше.
AA>> Там все немного сложнее "в динамике".
AA>> Место для платы ограничено.
DO> И все равно, если в проекте все на грани,
Для исходной задачи, запас был огромный.
DO> на столько, чтобы такты считать,
Это совсем не такты... в конечном итоге, конечное устройство
на основе полученной инфы должно подтвердить правильность
параметров процесса или остановить процесс, если максимальная
производная больше или меньше наперёд заданных пределов.
DO> значит скорее всего что-то
DO> неправильно споектировано. Тем более, сегодня, а не в те времена,
DO> когда процессоры были большие.
Самый первый вариант, вообще был на 2-х светодиодах - для человека,
и да-нет для основного устройста.
Больше на тот момент никому не требовалось.
Потом пожелания новых клиентов постепенно росли, число светодиодов
доросло до 5-и и наконец появилась плата.
Как росли требования к ней я уже писал.
Кстати, насколько я осведомлён, похожего пока ни у одного конкурента нет.
AA>> Они (там есть сейчас новые люди) совсем недавно опять
AA>> мне звонили с вопросом, нельзя ли плату сделать на сантиметр уже?
AA>> А там, в этом случае, в силу специфики размещения сенсоров,
AA>> МС просто не влезет.
DO> А в чем программа исполняется? Что-то же влезло, значит скорее всего,
DO> найдется и более производительное в тех же размерах. Hу подороже
DO> чуток, если это не миллионами тиражируется - пофиг.
Там один комплекс в зависимости от комплектации стоит от 100000 до 250000 евро.
В его производстве задействовано несколько фирм. Я знаю не все. Только три.
О деньгах при новых пожеланиях обычно речь не идёт, но сроки жёсткие.
AA>> А динамика такова:
AA>> Изначально нужно было выдавать только величины по запросу.
AA>> Потом появилась потребность в результатах измерения в конкретных
AA>> точках времени процесса.
AA>> А потом, года через два, ещё и производная.
AA>>>> В одном из последних проектов мне нужно было за возможно
AA>>>> короткое время, (что там требовалось конкретно в цифрах я уже
AA>>>> не помню) найти первую точку на оцифрованной кривой, где первая
AA>>>> производная самая большая. Я сильно сомневался, что удастся это
AA>>>> сделать на Це. Hо таки уложился в требования.
DO> А в чем проблема это на С делать-то? Первая производная - это разность
DO> последовательных сэмплов?
Ты забываешь, что высокоточные АЦП (с соответствующей обвязкой) работают
медленно, а низкоточные АЦП (и без обвязки разумеется) могут между двумя
последовательными (и даже более, чем двумя, помехи-то
никто пока не отменил) опросами выдать "огромную" разницу.
Я, когда тестировал софт на железе "у себя на столе", видел, что примерно
в одном из сотни процессов есть участки, на которых есть выбросы или
провалы.
Проблема ещё и в том, что сам процесс может иметь разную длительность
и соответственно очень разные реальные максимальные производные.
DO> Тогда алгоритм представляется простым, и
DO> легко реализуется на С, что там ассемблер дает такого?
Да я же не реализовывал ЭТО не ассемблере.
Hо у меня были прежде проекты, в которых были кусочки кода написанные
на ассемблере.
А уж помог бы мне асс и на это раз, я и сам не знаю.
DO>>> Hу так написать на С и взять поцессор, который успевает. Очень
DO>>> редко оптимизация переходом на ассемблер оправдана. Могут быть
DO>>> такие ситуации, но это исключение.
AA>> Я выше уже написал в чём проблема.
DO> Я пока что не понял. Hу маленькое устройство, так и процессоры нынче
DO> маленькие.
DO> И их производительность с размерами корпуса мало связана.
Hа тот момент, а тому уже больше 10 лет, я не видел другого выхода.
И предупредил об этом шефа.
А потом...
Потом они радостно подхватили мою тестовую версию софта, не нашли
при тестах никаких недостатков и эта версия вдруг стала официальной.
Я там даже защиту от скачивания кода не ставил, потому что был уверен,
что ЭТИ 4 платы мне вернут с "пожеланиями" ...
С уважением - Andrej