Size: a a a

2021 March 31

A

Alexander in Embedded Group
Leonid Zaliubovskii
Ну чо, ARMv8-m у стм32 уже есть
Да.
На Cortex-M23/M33.
L5 и иже с ними.
источник

LZ

Leonid Zaliubovskii in Embedded Group
Никита Тыманович
Вот это совсем другой разговор, да
Мы не знаем подробностей, вряд ли кто расскажет
источник

НТ

Никита Тыманович... in Embedded Group
Leonid Zaliubovskii
Мы не знаем подробностей, вряд ли кто расскажет
Ага. Но все же знаковое событие. 10 лет почти прошло
источник

jp

jon pedro in Embedded Group
Alexandr Rudalev
Утренние новости, что-то меня обескуражили. Ну я ещё понимаю про обычные ПК. Но тут блин импортозамещение в IoT. Это как вообще? Про какие ОС они говорят? Тут же либо RTOS, либо bare metal, либо своя сборка на Yocto/buildroot. И во всём блобы и SDK от производителя. А может я в танке и у нас уже есть камушки с BLE/WiFi/Lora/....

https://www.cnews.ru/news/top/2021-03-30_importozameshchenie_po_dobralos
Красота
источник

ED

Electronics Designer in Embedded Group
Petr Belyaev
Если в обычной RAM может быть конкуренция ядра и DMA, например (с круговым арбитражем), то CCM всегда вся "принадлежит" ядру
Эээ, и все? Это-то я читал. Но все равно не понимаю, почему ради этого одного стоило делать аж отдельную область памяти. В каких задачах это может быть НАСТОЛЬКО критично?
источник

СС

Сиие Сууие in Embedded Group
Electronics Designer
Эээ, и все? Это-то я читал. Но все равно не понимаю, почему ради этого одного стоило делать аж отдельную область памяти. В каких задачах это может быть НАСТОЛЬКО критично?
В криворуких пользователях которые не понимают как работает дма?
источник

AZ

Aleksander Zholtkovs... in Embedded Group
Electronics Designer
Эээ, и все? Это-то я читал. Но все равно не понимаю, почему ради этого одного стоило делать аж отдельную область памяти. В каких задачах это может быть НАСТОЛЬКО критично?
например в stm32f765 целых 4 отдельных области памяти
источник

PB

Petr Belyaev in Embedded Group
Electronics Designer
Эээ, и все? Это-то я читал. Но все равно не понимаю, почему ради этого одного стоило делать аж отдельную область памяти. В каких задачах это может быть НАСТОЛЬКО критично?
У меня был кейс, когда нужна была супер детерминированная задержка исполнения кода прерывания. Засунул в CCM RAM таблицу векторов и всех обработчиков. Там, правда I-bus был заведён, не как на картинке
источник

ED

Electronics Designer in Embedded Group
Ну ОК... Значит я в целом понимаю все правильно, просто мне этот функционал пока не нужен. :)

Я думал, может есть какое-то тайное знание.
источник

PB

Petr Belyaev in Embedded Group
Можно же гипотетически вообще ядро заставить работать в своей песочнице, со всем исполняемым кодом в CCMRAM и чрезвычайно редким общением с периферией. Ну или если ядра два - CCMRAM в таких случаях прекрасно дополняет одно из них. Короче, вот сделали и сделали, а уж как применять - дело каждого. Главное - кейсы существуют, так что можно вполне предметно стукнуть себя пяткой в грудь и сказать, что мы лучше конкурентов, которые ничего подобного не предлагают :D
источник

AK

Andrew K in Embedded Group
Electronics Designer
Ну ОК... Значит я в целом понимаю все правильно, просто мне этот функционал пока не нужен. :)

Я думал, может есть какое-то тайное знание.
эта память хороша для стека
источник

LZ

Leonid Zaliubovskii in Embedded Group
Electronics Designer
Эээ, и все? Это-то я читал. Но все равно не понимаю, почему ради этого одного стоило делать аж отдельную область памяти. В каких задачах это может быть НАСТОЛЬКО критично?
Ещё быстрый доступьк данным и прогнозируемая латентность доступа. Ибо в одно рыло туда лазишь
источник

D

Dr Zlo in Embedded Group
Electronics Designer
Эээ, и все? Это-то я читал. Но все равно не понимаю, почему ради этого одного стоило делать аж отдельную область памяти. В каких задачах это может быть НАСТОЛЬКО критично?
В любых критичных к таймингам
источник

D

Dr Zlo in Embedded Group
Суть не только в том чтобы дать ядру свободнее работать, а так же и в том чтобы дать периферии свободнее работать)
источник

SP

Stanislav Popov in Embedded Group
господа. есть таймер который читает энкодер. я правильно понимаю что нет способа изменить каунтер этого таймера не теряя шаги?
источник

A

Alexander in Embedded Group
Stanislav Popov
господа. есть таймер который читает энкодер. я правильно понимаю что нет способа изменить каунтер этого таймера не теряя шаги?
В плане при стандартном подключении квадратурного энкодера?
источник

SP

Stanislav Popov in Embedded Group
ну да
источник

A

Alexander in Embedded Group
Stanislav Popov
господа. есть таймер который читает энкодер. я правильно понимаю что нет способа изменить каунтер этого таймера не теряя шаги?
Хз.
В документации явного запрета не нашел.
Можешь на ходу ARR менять. Мб и CNT можно.
источник

SP

Stanislav Popov in Embedded Group
ну я больше про stm32

хочу менять не теряя такты. тоесть например

curr = read()
write(curr+100)

есть какая то гарантия что после чтения таймер не обновится извне?
источник

A

Alexander in Embedded Group
Stanislav Popov
ну я больше про stm32

хочу менять не теряя такты. тоесть например

curr = read()
write(curr+100)

есть какая то гарантия что после чтения таймер не обновится извне?
Можешь атомарное чтение из регистра реализовать.
источник