Руски микроконтролери с ядро Cortex M3 и пример за изпълнение на проекта
Статията е посветена на кратък преглед на серията контролери 1986BE9x, базирани на ядрото Cortex-M3, произведено от JSC "PKK Milandr", инструменти за разработка и отстраняване на грешки за него.
ARM Limited 32-битовата микропроцесорна архитектура с намален набор от инструкции (RISC) нараства с всеки изминал ден, така че все повече компании разработват микроконтролери, базирани на това ядро. Една от най-новите версии на ядрото е Cortex-M3. Досега много малко производители на MC са усвоили това ядро. В момента руският пазар е представен главно от микроконтролери с ядро ARM Cortex-M3 от STMicroelectronics (семейство STM32Fxxx) и NXP (семейство LPC17xx). И затова е особено приятно, че към тези чуждестранни компании е възможно да се добави вътрешният дизайнерски център ЗАО "ПКК Миландр" [1, 2].
Струва си да се обърне внимание на факта, че MC са разработени за оборудване със специално предназначение, което изисква голям запас на устойчивост (т.е. способността на микросхемата да работи в агресивна среда) и с широк работен температурен диапазон. В близко бъдеще компанията ще представи версии на микроконтролери за гражданския пазар.
Основни характеристики на микроконтролера
Устройствата от серията 1986BE9x са микроконтролери с вградена Flash-памет на програми и са базирани на високопроизводителния RISC процесор-ядро ARM Cortex-M3 (производителност - 1,25 DMIPS/MHz (Dhrystone 2.1) с нулева латентност между достъпа до паметта) . Тук трябва да се добави, че максималната тактова честота на въпросния микроконтролер е 80 MHz, докато максималната честота на дискретизация на данните (в случая команди) от флаш паметта е 28,6 MHz (съответстваща на 35 ns). За да се осигури максимална производителност със съществуващите технологични възможности, е необходимо да се използват хардуерни решения за ускоряване на процеса на достъп до Flash памет. В редица микроконтролери, например тези, произведени от ZAO PKK Milandr и STMicroelectronics, е реализиран специален 64-битов буфер за това. Но в него вземането на проби от 32-битови инструкции всъщност се извършва с честота 28,6x2 = 57,2 MHz. По този начин, за да се работи с честота над 57,2 MHz, е необходимо изкуствено да се въведе забавяне между достъпите до паметта. Под 57,2 MHz закъснението между четенията в паметта е нула.
Следните функции са внедрени в ядрото Cortex-M3:
- блок на хардуерна защита на паметта срещу неоторизиран достъп;
- умножение в един цикъл (Таблица 1);
- хардуерно изпълнение на разделяне (32 бита/32 бита).