Существует несколько версий архитектур, имеющих как сходные черты, так и отличия. Если грубо, то для начала можно считать, что имеются всего две версии: с одной стороны, это микроконтроллеры на ядрах Cortex-M (версии архитектуры ARMv6-M и ARMv7-M; часто говорят "архитектура Cortex-M", но, строго говоря, это неправильно, поскольку это название именно ядер, а не архитектуры как таковой), а с другой -- все остальные АРМы (ARMv4, ARMv5, ARMv6 с различными буквенными индексами, кроме уже упомянутого ARMv6-M, а также ARMv7-R и ARMv7-A; все v7 имеют ядра семейства Cortex с соответствующими буковками). Строго говоря, первые не являются "настоящими" ARMами, поскольку не поддерживают оригинальную систему команд ARM и кардинально отличаются по системной архитектуре (иное управление прерываниями и т.п.).
Даташиты описывают особенности конкретного контроллера или семейства контроллеров, но никак не описывают собственно архитектуру АРМ. За соответствующими описаниями надо обращаться на сайт ARM, там всё выложено. Например, если хочется использовать микроконтроллер STM32F103RB, то нужно скачать даташит (усер мануал или как там ещё -- разные фирмы по-разному временами именуют) на семейство STM32F10xxx плюс описание архитектуры ARMv7-M; первый ищется на сайте STmicroelectronics, второй -- на сайте ARM. Если интересует NXP LPC2478, то скачивается даташит на семейство LPC24xx (с сайта NXP) и описание архитектуры ARMv4T, к которой относится данный контроллер (на сайте ARM имеется единое описание для архитектур ARMv4, ARMv5 с любыми буковками и ранних ARMv6, а также отдельные описания более новых архитектур).
Сообщение отредактировал SII - Aug 27 2011, 15:40
|