16+
Среда
21 ноября
Вход |Карта сайта | |Upload |codebook | PARTS

 О смысле всего сущего 0xFF

 Средства и методы разработки

 Мобильная и беспроводная связь

 Блошиный рынок Объявления

caxapa

Микроконтроллеры ARM 

AVR PIC MSP PLD,FPGA,DSP 

Кибернетика Технологии 

Схемы, платы, компоненты 

Средства и методы разработки

 
   Новая тема Правила Регистрация Поиск »» Архив
Вернуться в конференциюТопик полностью
Evgeny_CD  (07.11.2016 15:00 - 07.11.2016 15:03, файл(ы), ссылка, просмотров: 1077)
С подачи LightElf -> ARMv8-M, Cortex-M23, Cortex-M33 
ARMv8-M Architecture www.arm.com/products/processors/instruct …t-architectures/armv8-m-architecture.php Наше первое обсуждение ARMv8-M, там лежит ARMv8-M Architecture Technical Overview caxapa.ru/653905.html ARM®v8-M Architecture Reference Manual прицеплен - страждущие могут начинать читать. Краткий обзор ARM®v8-M вложен. ARMv8-M Baseline: что-то типа "Cortex-M0 с секурными фичами", FPU никто не обещает. В кремнии это Cortex-M23 www.arm.com/products/processors/cortex-m/cortex-m23-processor.php ARMv8-M Mainline: В кремнии это Cortex-M33 www.arm.com/products/processors/cortex-m/cortex-m33-processor.php -- Retains Baseline fundamentals. -- Adds extensive 32-bit instruction set -- ~ 40% performance uplift over Baseline. -- Optional integer digital signal processing (DSP) extension -- ~ 80 saturating arithmetic and SIMD operations. -- Optional floating-point (FP) extension -- ~ 45 instructions, IEEE754 compatible single, and/or double precision floating-point operations. С точки зрения системы команд Mainline - это Baseline + * Hardware divide Faster integer divide operation in hardware. - Removes need for library code. * Compare and branch Combined compare-with-zero and branch. - Faster control code. * Long branch Long non-linking branch to compliment branch with link. - Enables support for cross unit tail calls. * Wide immediate moves Pointer and large immediate creation without needing a literal load. - Provides a linking mechanism for execute-only code. * Exclusive accesses Load-link / store-conditional support for semaphore use. - Enables common semaphore handling between CPUs. * Interrupt active bits Active status of all interrupts individually tracked. - Offers dynamic re-prioritization of interrupts. Но главное, ради чего вся возня затеяна, это RT TrustZone. Отличия от обычной TrustZone ARMv8-A и ARMv7-A * все построено на описании свойств блока адресов. Т.е. это продвинутый MPU, выход за границы разрешенного виден процессору как memory fault. * домены могут вызывать друг друга, на фоне этого работают прерывания, и "продвинутый MPU" обеспечивает секурность всех операций. Например, когда несекурный код прерывает секурный, то проц пушит регистры в стек, при этом обнуляет их содержимое. Для аппаратной поддержки всей прелести с ограничением доступа рождена новая AMBA® 5 AHB5, где все эти программируемые компараторы адресов и зашиты. Если отвлечься от секурности, то видно, это очень и очень совершенный аппаратный механизм защиты потоков RTOS от влияния друг друга. Более совершенный, чем MMU, потому что здесь есть защита от "DMA шарахнуло по памяти", "выкачали по DMA код и стек, отреверсили их". Условия для продажи кучки либ тоже становятся комфортными. Поставщик выдает скомпилированные под заданные адреса бинарники, их грузят, потом этому бинарнику дают ключ активации какой-нибудь. Не раскрыта тема кешей - будут они там или нет. С одной стороны, все это явно оринтированно на 45нм и тоньше, там 1-2Мбайт SRAM вполне себе немного, сюда и код, и данные меглиб влезут, и даже юзеровская прога, но еще лучше иметь возможность поставить снаружи 256 или 512 Мбайт DDR*, которые сейчас ничего не стоят. Я лично думаю, что в 33 и 23 кешей не будет - иначе подрыв кормовой базы других сегментов рынка ARM. Когда это будет в виде продукции Atmel, NXP и STM? Лично мне не понятно, и даже есть сомнения, что будет. Все это явно заточено под специализированные ASIC. А так да - прогресс идет, куда и зачем - нам неведомо, но прогресс это не колышит :) В открытой CMSIS уже что-то запилили CMSIS-CORE Version 5.0.0 - Beta TrustZone for ARMv8-M arm-software.github.io/CMSIS_5/Core/html/group__trustzone__functions.html
Прикреплённые файлы:
ARM_Cortex-M20151210134414.pdf:755 K
DDI0553A_c_armv8m_arm.pdf:8410 K
fmcad2016-trustworthy.pdf:162 K

Главная | Карта сайта | О проекте | Проекты | Файлообменник | Регистрация | Вебмастер | RSS
Лето 7527 от сотворения мира. При использовании материалов сайта ссылка на caxapу обязательна.
MMI © MMXVIII