Ruslan1
-
Постов
3 026 -
Зарегистрирован
-
Посещение
-
Победитель дней
3
Сообщения, опубликованные Ruslan1
-
-
4 minutes ago, Longiel said:
А это время - с учётом временных издержек софта? ОС, драйвера, сама программа могут же прилично добавить.
Да, согласен. Пусть в худшем случае программа накидывает +500мс на любое чтение (хотя на самом деле думаю нет), я не знаю как оно внутри сделано. Но посмотрите на разницу между блоками- 600 миллисекунд для некоторых из них. И это уже вряд ли программа так избирательно время увеличивает для одних и не увеличивает для других (ну и на разных картах картина разная).
-
5 minutes ago, aaarrr said:
Ну вы даете
Молодежжж. Вот помню напишешь чего-то в Фидо в руембеддеде например - и ждешь пару дней чтоб люди хоть прочитали.
-
4 hours ago, Freibier said:
Это типа как книга, флешка зачитанная до дыр чтоли?
Я имел в виду: SD карточка использовалась, и на нее что-то записывали (FAT32). А потом проверил ее на скорость чтения разных блоков. В результате получил таблицу, в которой написано время доступа к каждому из блоков. Отсортировал "с бОльшего к меньшему" и увидел самые "тормозные" по чтению блоки вверху таблицы. Проверил несколько раз- ситуация стабильная.
Вот, например, одна из карточек. Elapsed time - это время доступа в миллисекундах. По дефолтовым установкам, блоки с таким временем доступа считаются "Normal"
4 hours ago, Freibier said:Может ли кто подсказать :
если карта SDHC/SDXC UHS-I или лучше после команды чтения не начала передачу данных через 100 мс, то это надо понимать как всё
пропалозависло и надо вылетать из пп чтения по таймауту?Нет. Так работать может быть и будет, но недолго и не всегда. Будьте готовы ждать сильно больше. Например, упомянутая мной программа считает блок нечитаемым, если доступ к нему невозможен в течении 5 секунд.
Но в Вашем случае я бы сначала взял многоканальный логический анализатор, и помедитировал над картинками- там сразу видно, что и когда тормозит конкретно в Вашем устройстве с Вашей программой. Может, дело вообще не в карточках, или их вклад в замедление не так критичен, как другие задержки.
-
1 hour ago, Freibier said:
А это как-то побороть можно?
BUSY не одновременно? нет, побороть невозможно: карты разные, каждая работает со своим флешем, и у каждого флеша свои заморочки (с момента изготовления и накопившиеся во время использования).
QuoteА если все карты приемники будут абсолютно одинаковые и одного производителя, то такой эффект тоже возможен?
Даже теоретически, этот эффект просто обязан быть, а не только "возможен". Стратегически неправильно надеяться, что карты поведут себя одинаково.
QuoteИли готовности абсолютно не предсказуемы?
Именно так. Абсолютно непредсказуемы. И меняются со временем.
Для развлечения можете попробовать программы типа "DiskGenius" - он умеет проверить карту на bad blocks, и одновременно можно получить табличку, сколько времени к какому блоку шло обращение. Это время разное по карте, и оно меняется во время эксплуатации: у вполне рабочих карт время доступа может составлять единицы секунд к некоторым (часто используемым) блокам. И это я про чтение, а не про запись!! :)
Так что Вы должны быть готовы к ожиданию, причем рандомному и большому.
Самый оптимальный способ при общей шине: пихать в карту данные до получения сигнала занятости, а после этого переходить к работе с другой картой. Как раз пока с другими работаете, эта может уже освободиться. Причем бегаете по кругу, пропуская те карты которые все еще заняты- так можно добиться минимального простоя в ожидании.
Само собой, следующие записываемы данные (хорошо если кластер) должны быть всегда готовы к моменту следующего освобождения карты, чтобы не терять время на подготовку.
Кстати, убедитесь что используете не CMD24 (WRITE_SINGLE_BLOCK), а именно CMD25 ("WRITE_MULT_BLOCK").
41 minutes ago, Freibier said:Ну так я и сейчас всем одновременно отправляю, пока какая либо BUSY не выставит.
Не, так у Вас быстро не будет. Каждая карта должна иметь свой буфер (ну или свой указатель чтения в общем буфере), и работать со своей порцией данных.
-
1 hour ago, yes said:
мне например, ни разу не удалось в серийный продукт пропихнуть SOC, хотя процессор+ПЛИС в отдельных чипах используются в каждом. и в нише нашей продукции ценовое давление (бом кост) не слишком сильное, но тем не менее
Я таким путем тоже ходил много лет назад. Сначала ПЛИС передавала у меня через SPI в ПИК, потом по параллельной шине предоставляла доступ для ADSP-21, потом я к ней Блэкфин (533 кажется) с линуксом внутри подключил (и написал в ядро мой драйвер для общения). А потом все заглохло: стало хватать одного МК для всего вокруг, а ПЛИС стала лишней сущностью.
Склоняюсь к тому, что "не шмогу" доказать нужность железячного ядра внутри FPGA для моих применений вместо МК с большой функциональностью.
А вот просто FPGA да, все еще хочу добавить в новый проект как часть, обеспечивающую RTOS (заместо планируемого STM32F0). Там наружу ничего хитрого не планируется, я и врукопашную смогу без микроядра все коммуникации и обработки нарисовать на стандартных мегафункциях, или на VHDL.
Попробую выбрать ПЛИС, которая мне уже годится для моих первых хотелок, но и вдруг еще минимальное ядро чтоб можно было всюнуть для тренировок. Ну или просто два кита с разными ресурсами (но, конечно, одной фирмы).
-
5 minutes ago, Мур said:
Подорожание коснулось ПЛИС не меньше.
Вы должны знать, что ASIC работают примерно в 2.5 раза быстрее, чем соответствующая soft-версия на FPGA.
Нашел статью которая очень понравилась, как раз для таких как я, ликбез : https://numato.com/blog/differences-between-fpga-and-asics/
Но я даже не знаю, как правильно назвать микросхему, в которой есть и конфигурируемые ячейки, и железячное ядро в одном флаконе? "ASIC&FPGA"?, буду читать википедию....
Я именно про железячную имплементацию, а не про заливку в FPGA ядра. С заливкой понятно, отжираются ресурсы на ядро и остается непонятно что, потому и жирные FPGA нужны. А вот если там внутри ASIC кортекс, да плюс ресурс FPGA под всякую синхронную параллельную работу (и под интерфейсы для ядра), то интересно.
А что дешевле и доступнее, чтобы после заливки ядра осталось ресурсов под интерфейсы и прочее : 1) микросхема "чистый FPGA", в который я залью ядро Кортекса, 2) микросхема FPGA с дополнительным ASIC того же кортекса внутри ?
-
14 hours ago, yes said:
мое мнение: для практического применения замена не подойдет, потому что слишком дорого получится "каждый МИПС добытый из ПЛИСины" для софт-ядер, то есть тех, которые компилируются в "логику". а для хард-ядер, то есть всяких SOC (Zynq 7000, Cyclon V SE, Smartfusion* и т.п.) стоимость чипа начинается от совершенно других величин (два порядка разницы), и корпуса там 40х40 BGA с 600+ ногами, с требованием соответствующей обвязки и т.п.
Да, я уже прикинул- это реально большие объемы работы. Если бы все было так просто- производители процессоров бы давно обанкротились, все пользователи бы на ПЛИС перешли. Текущий аллокейшен сдвигает планку в пользу ПЛИС, но недостаточно.
Очень интересны ПЛИС с встроенным АРМ ядром.
-
Как-то я упустил из виду вопрос, с которого наверное нужно было начинать: о доступности программных средств и их удобстве.
Я много пользовался МаксПлюсом, немного Квартусом, и мне их хватало и все было очевидно. Забивал микросхемы 1К под завязку своими схемами и мне хватало мегафункций альтеровских, да и байтбластеры LPT-шные легко паялись на коленке. Воспоминания только положительные. Ну и "откорректированные" версии софта для работы (да и ключики) легко находились в Интернете.
Думаю, что после Альтеры в софте от Квартуса я тоже разберусь - они прошли большой путь бок о бок, и вряд ли сильно друг от друга отличаются в базовой функциональности (как Пикады и Оркады, например). Но что про китайских товарищей? их софт работает и достаточен? Мне не нужно фильдеперсовости, мне интересно можно ли им пользоваться, или нужно принципиально меняться, по сравнению с Квартусом, например?
Из практических задач первое что собираюсь сделать- это работать на уровне мегафуккций, может быть описывая свои через AHDL/VHDL (надеюсь эти языки, как сам термин мегафункций, еще живы?).
Уже рисую проектик под такое применение: собрать данные со многих потоков (например, АЦП), минимально обраьлотать (децимация, может быть масштабирование и фильтрация), и сделать доступными для чтения как массив (шине данных) или передача единным потоком наружу (например, SPI). Уверен, что могу набросать такое мегафункциями, без всяких ядер. И многопоточность выглядит естественно, и нет ограничения по количеству таких потоков (в пределах ресурсов ПЛИС).
14 hours ago, yes said:если это по взрослому - то кит не нужен, симулятора вполне достаточно будет, чтобы оценить "возможности".
Вы правы. Нужно с софта начинать.
Но важно понять- с какого именно софта, чтоб потом не переобуваться во время прыжка.
14 hours ago, yes said:но у альтеры с софтом попроще - то есть "уровень вхождения" ниже, по-моему
Я имею большой опыт работы с Альтеровским софтом, но старым (лет 10-20 назад). Понимаю, что добавили и обновили, но, надеюсь, идеология осталась прежней.
-
1 hour ago, StewartLittle said:
А Вы думаете, тотальный дефицит на ПЛИСы не распространяется???
Там все также печально, как и с MCU.
Единственная надежда- что переход на другую ПЛИС не так болезненен, если внутрь залить можно то что на старой было (с минимальными изменениями). Переход на другой МК это большая головная боль, надеюсь с ПЛИС попроще.
QuoteОбратите внимание на ПЛИС Gowin: www.gowinsemi.com
Это сейчас чуть ли не единственный производитель ПЛИС, который может обеспечить вменяемые сроки поставки.
К тому же у него есть GW1NS/NSR - аппаратный Cortex M3 и ПЛИС на 4K LE (NSR - еще и 32 Mbit HyperRAM) в одном флаконе.
Из синтезируемых ядер - Cortex M1, Cortex M3 и RISC-V (компактный picoRV и Andes N25).
За информацией и поддержкой - ко мне :)
Огромное спасибо! посмотрю. Китай это хорошо, это аргумент. Но вот если бы не сказали- я бы и не подумал про кого-то кроме упомянутых Альтеры и Ксилинкса. Пища для размышлений.
Upd: Странно, что у них ни одного представительства в Европе. Только Азия и США. Это напрягает, хотелось бы понять причину. Просто не нужно или не пускают?
-
2 hours ago, Мур said:
Начинают с ТЗ.
1. Это (Заменить микроконтроллер на ПЛИС) не самоцель.
2. Берегите свое время!
Мне платят за мое время. И за этот переход тоже заплатят, если своим действием я зарабатаю для компании больше, чем она потратит при моем бездействии.
В этом году уже было пару раз- из-за дефицита выпускали новые версии плат под доступную комплектуху, и это было экономически выгодно (платить за переделку). Сейчас я пытаюсь понять, если спрошенная мной замена может также быть выгодна.
2 hours ago, Yuri124 said:Даже по деньгам за голые чипы - считаете сопоставимо?!
Абсолютно. Мы уже покупали партию 16-долларовых чипов по цене 90 долларов, и это было лучше, чем не покупать совсем. Так что уже сопоставимо то, что год назад бы даже не приснилось :|
QuoteНу и к стоимости ПЛИС добавьте обвязку - память для хранения прошивки (если нет внутри у ПЛИСины), более сложное (как правило) питание. Возможно с высокой вероятностью - и плата будет подороже и побольше...
Сейчас тоже не МК занимает основное место на плате, так что место есть. Ну и SDRAM уже все равно есть, как и куча питателей, а дополнительная флешка погоды не сделает. Так что к этому я морально готов. Пока что морально не готов к BGA (сейчас QFP176 на 4-слойке хватает, хотя и впритык), но может и без BGA можно.
1 hour ago, MegaVolt said:Как бы да... Вопрос в количестве бит которое получится в этом случае. Это будет полноценный сигма дельта бит на 24? Или сильно меньше?
Вот это красиво!!! Спасибо за ссылочку :)
Ну, лайфхаки не интересуют, если они не документированы. Сейчас там стоит 8-канальный 24-битный синхронный АЦП (тоже, кстати, 50 баксов и тоже, кстати, ждем пропадание с рынка), если вместо него можно компаратором плюс рассыпуха сделать то будет праздник.
-
В связи с тотальным дефицитом и для общего развития:
Есть идея попробовать заменить МК на FPGA и обеспечить похожий функционал.
За что взяться и на что смотреть? Как оценить трудоемкость (и материалоемкость) данного перехода?
Применяются разные МК, в основном STM32F0 и STM32F4, под RTOS, алгоритмы обработки в основном простые (50% кода я могу хоть в логику перерисовать легко), но остальное (например, интерфейсы типа TCP/IP, SDIO, шифрование, аппроксимации через МНК, Фурье...), как я понимаю, без SoC не потянуть.
Кстати, там же и какой-нить многоканальный сигма-дельта АЦП можно реализовать, или параметры будут плохие?
Я сам давно работал с FLEX10k/ACEX1k, и именно для реалтайма и многоканальности- воспоминания только наилучшие. Но все было врукопашную (рисовали схемы и писали в AHDL), а вот с ядрами никогда не приходилось.
Думаю, что вполне можно раскрутить руководство на хороший кит, но не на пять разных. Смотреть Ксайлинкс? а какой? Или все-таки Альтеру?
Психологическим барьером считаю кит за 400-600 долларов, микросхему(при партиях 100 шт) за 50-100 долларов, и 100 человеко-часов на изучение-программинг для достижения уровня "хелло ворд" на ките. При таких условиях есть перспективы?
-
3 minutes ago, АндрейЦ said:
Как мне кажется именно этот мудрый совет со стороны я и хотел услышать.
Я так думаю, моя проблема решена ).
А доказать сможете, что это не Ваша проблема? :)
Вот на этот случай и полезно эмулятор датчика иметь (купить или сделать). Подключаю эмулятор- работает, подключаю датчик-не работает. Это поможет, если заказчику нужен результат, а не конфликт.
-
Я не спец по pH, но может можно разделить "одеяло"?
Можно ли вместо реального датчика подключить его симулятор (из резисторов, например)? Или вообще на короткозамкнутом входе тренироваться.
Если показания скачут- то это победа, на этом поле играть легко и понятно где финиш.
Если показания не скачут- то нужно или на более серьезном симуляторе датчика играться, или дело вообще в датчике и его окружении (условия применения, параметры, среда...)
-
19 hours ago, Джоконда said:
Если нужно передать из одного блока данные в другой блок по интерфейсу 485, но при этом эти данные нужно закодировать для обеспечения безопасности. То вид интерфейса может влиять на то, какую кодировку можно использовать, а какую нет?
Это одно из основных правил криптографии: нужно исходить из того, что у злоумышленника есть полный текст сообщения. Так что интерфейс неважен.
но хорошо бы уточнить что подразумеваете под "безопасностью":
1) чтобы сообщение не подменили (сгенерированным злоумышленником или вчерашним)
2) чтобы не поняли что передается
3) чтобы не исказилось (защита от ошибок, восстановление).
(1) и (2) обычно можно совместить, а на их результат накладывают (3).
-
4 hours ago, haker_fox said:
Так цель этих "людей" будет какая: любым известным способом выразить своё мнение и показать, что идея - провал?
Нет
4 hours ago, haker_fox said:Или действительно дать деловой совет инженера (мастера своего дела)?
Да. Это деловой совет инженера. Инструменты подбираются под область применения и особенности задачи, а не под название профессии. Подобранные иначе инструменты не будут оптимальными.
Представьте, что кто-то спросил :
Quoteкакой миниум зарплаты должен быть у разработчика РЭА вне зависимости от специфики разработки?
или:
Quoteкакой миниум длительности разработки РЭА вне зависимости от специфики разработки?
И представьте, насколько помогут ответы конкретному специалисту, без указания "специфики разработки".
Но именно это Вы и делаете, спрашивая о "минимуме приборов".
-
2 hours ago, haker_fox said:
Это не так. Я же написал о минимальном наборе.
Ну да, сейчас накидают список. У всех он разный, а Вы думаете что есть какой-то минимальный набор приборов, который нужен всем, независимо от области приложения?
Назовите любой "нужный всем прибор", и я уверен, что найдутся люди, которым он не нужен, или указанныя модель не подходит по параметрам и нужен совсем другой, с перламутровыми пуговицами :)
-
"в независимости от специфики разработки" задача не имеет решения.
-
На фоне фразы "Щёлкает один раз при включении и всё" закрадывается мысль что реле-то скорее всего и работает.
Опишите что значит "не работает".
Оно у Вас на столе уже лежит выпаянное, подайте номинальное напряжение на обмотку и проверьте, что с ним не так. Если щелкает и не ест больше нормы- значит катушка в порядке. Если контактная группа засорилась- так скорее будет разобрать и почистить, чем "два месяца ждать". Кстати, Алиэкспресс сейчас очень ускорился, месяцы в недели превратились.
-
Всем большое спасибо, буду пробовать.
-
19 hours ago, CADiLO said:
Китайцев рассматриваем?
Склад, цены очень даже приятные - можно на пару лет закупиться.
https://lcsc.com/product-detail/DC-DC-Converters_XLSEMI-XL1507-ADJE1_C74194.html
Спасибо, интересно. Но 150 кГц, надеюсь найти более скоростное в районе 300-700 кГц, пусть и чуть дороже.
А такие склады надежны? откровенный фейк не подсовывают?
-
этот дефицит рождает новое великое поле для разработчиков: если в результате мелкой модификации несложной платы контора может сэкономить на следующем заказе в производстве пяток-другой тысяч нерублей на комплектухе, то разработчики становятся очень ценным ресурсом. Достаточно с китайцами договориться, чтобы ломили цены на некоторые позиции (чтоб сильно не перерисовывать), а дальше дело техники :) И тут, как говорится, мне карта и поперла....
P.S. За простой двунаправленный буфер уже по 15 баксов ломят, я не готов к этому, все равно переделывать буду под то что еще продается.
-
1 hour ago, DSIoffe said:
А какие уровни сигнала он может принимать?
смотря на каких частотах и какой приемник. ( дальше я про SDRplay RSP1A)
У них, говорят, что все плохо ниже 1 MHz, народ (если надо) колхозит, чтоб лучше чем -120 dBm получить. Выше-веселее, но нужные Вам -135 dBm (0.04 uV ?) все-таки близко к его границе, да и то только в узком диапазоне (SSB/CW).
https://www.sdrplay.com/wp-content/uploads/2018/01/RSP1A-Technical-Information-R1P1.pdf
кстати, у них есть и прога спектроанализатора под их SDR приемники:
https://www.sdrplay.com/spectrum-analyser/
-
1 hour ago, DSIoffe said:
Я сейчас представляю себе задачу так. Я беру исходную версию изделия, кладу её на неком расстоянии от антенны и сканирую нужный мне диапазон частот. Сохраняю картинку с экрана. Потом что-то перепаиваю, подпиливаю и т.п. и снова произвожу такое измерение.
От я и глаголю. Берите нормальный SDR приемник и вперед. Сразу много картинок. Для первоначальной борьбы с излучениями хватит.
-
1 hour ago, aaarrr said:
TPS5430?
Спасибо, подходит! я как раз отсутствующие EN1 и PG не использую, а использую EN2/ENA.
вот только цена у него совсем либеральная, нужно думать.
ПЛИС Gowin Semiconductor
в Работаем с ПЛИС, области применения, выбор
Опубликовано · Пожаловаться
Кто-то подскажет из практики, что самое пузатое из GOWIN (наверное не-BGA ?) еще нормально можно развести на 4-слойке?
Или можно и небольшие (малошариковые?) BGA на 4 слоях использовать и я зря их стороной обхожу?
Частоты большие не ожидаются, но хотелось бы, например, иметь в перспективе возможность внешнюю SDRAM прикрутить, хоть на 50-100 MHz.