Анализ архитектуры микроконтроллеров РIС с точки зрения их программирования и отладки систем позволяет сделать следующие выводы:
• RISC-система команд обеспечивает высокую скорость выполнения инструкций, но вызывает затруднения и снижение производительности при программировании нетривиальных алгоритмов.
▪ высокое быстродействие достигается за счет применения конвейера команд.
• наличие одного вектора прерываний, отсутствие развитого механизма обработки запросов по приоритетам и вложенных прерываний затрудняют решение сколько-нибудь сложных задач управления. При приходе запроса от любого из источников выполняется переход на процедуру обработки по единственному вектору. В процедуре приходится по битам признаков определять источник, причем условия ветвления, как указывалось выше, анализируются сложно, и все это увеличивает время реакции. После обработки прерывания нужно самостоятельно очистить бит запроса. Из-за отсутствия вложенных прерываний возможно длительное ожидание обработки запросом от источника с более высоким приоритетом;
• аппаратный стек глубиной 8 слов не имеет признака переполнения и ограничивает вложенность процедур. За тем, чтобы он не переполнялся, программист должен следить самостоятельно;
• память данных состоит из банков, для определения текущего банка используются биты регистров STATUS . На этапе трансляции принадлежность указанного регистра текущему активному банку проверить невозможно, для этого требуется моделирование хода выполнения программы;
• память программ разбита на страницы размером 2К слов. Для перехода на нужный адрес по командам САLL и GОТО должны быть правильно установлены биты выбора текущей страницы в регистре РСLАТН. На этапе трансляции невозможно проверить корректность передачи управления во время выполнения.
• ограниченность ресурсов МК серии РIС делает проблематичным их программирование на языках высокого уровня.
• Указанные особенности архитектуры микроконтроллеров РIС компенсируются чрезвычайно низкой ценой, поэтому такие изделия (особенно семейства Р1С16) весьма популярны. В настоящее время их используют даже вместо логических ИС средней степени интеграции. Но реализовать все преимущества этих МК можно только при наличии средств программирования и отладки.