Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


Сравнительный анализ системы команд mcs-51 и НС08




В предыдущих разделах вы познакомились с двумя представителями CISC-архитек­туры в классе 8-разрядных МК. Процессорное ядро MCS-51 выполнено по гарвардской архитектуре с раздельным адресным пространством памяти программ и памяти данных. Напротив, процессорное ядро НС08 использует принстонскую архитектуру с объединен­ным адресным пространством. Соответственно отличаются и системы команд. Однако не все отличия обусловлены способами доступа к тем или иным ячейкам памяти. Значи­тельную часть определяет техническое творчество разработчиков ядра и традиции фир­мы. Последнее не является лишь данью истории:

• во-первых, многие решения проверены десятилетиями, и именно это обстоятельство
обеспечивает высокую надежность БИС;

• во-вторых, использование новых моделей МК в значительной степени определяется
возможностью использования имеющихся наработок программного обеспечения. По­
этому при разработке нового процессорного ядра фактор программной совместимос­ти стоит на одном из первых мест.

Однако, к счастью, последнее не всегда берет верх в технической политике. Иначе принципиально новые решения были бы невозможными. Итак, сравним два процессорных ядра.

• Несмотря на кажущиеся принципиальные отличия, и в архитектуре MCS-51, и в НС08 нулевая страница оперативной памяти данных (00h - 0FFh) занимает особое место.
Для обращения именно к этой странице предназначены двухадресные команды, кото­рые имеют короткий формат и малое время выполнения. Сравните:

MCS-51 HC08

MOV@ri,ad MOVadr,x+

MOVadd,ads MOVadr1,adr2

MCS-51 использует 6 методов адресации, с учетом различных указателей при косвен­ной адресации и двухадресных команд общее число режимов адресации составляет
11. CPU08 использует 11 методов адресации, общее число режимов адресации с уче­том двухадресных команд равно 16. Среди последних нет регистровой адресации, кото­рая характерна для MCS-51, но присутствуют различные варианты индексной адреса­ции, в том числе по указателю стека с авто инкрементированием, что позволяет создать
экономичные по длине кода компиляторы с языка Си. Именно поэтому ядро НС08 ха­рактеризуют как оптимизированное под использование языков высокого уровня.

• MCS-51 имеет значительно большее число команд для обмена с ячейками памяти
нулевой страницы, в то время как число команд обращения к памяти программ и рас­
ширенной памяти данных сведено до минимума. Напротив, в НС08 число дополни­
тельных команд обмена с нулевой страницей памяти равно четырем, но сразу 8 режи­мов адресации используется в каждой команде группы пересылки для адресации яче­ек памяти полного адресного пространства.

• Набор арифметических и логических действий АЛУ того и другого ядра практически одинаковы. Но в НС08 набор методов адресации второго операнда (первый распола­гается в АСС) значительно шире. Причем диапазон адресов ячеек памяти второго
операнда в MCS-51 составляет 00h - 0FFh, в то время как в НС08 при выполнении
арифметических и логических действий доступно все адресное пространство в 64 К.

• Процессорное ядро НС08 значительно превосходит MCS-51 по числу команд условных переходов: 40 инструкций НС08 против 22 у MCS-51. Несомненным достоинством CPU08 является присутствие в перечне его команд инструкций ветвления по условиям >,≥, <,≤ по результатам сравнения операторов в формате как со знаком, так и без него.

• Прямо противоположна идеология подсистем прерывания. В MCS-51 при переходе на процедуру обслуживания прерывания в стеке сохраняется лишь адрес возврата в основную программу. Остальные регистры должны сохраняться программно. А в НС08 в процессе перехода к подпрограмме прерывания автоматически дополнительно со­храняются аккумулятор, регистр признаков и регистр X. Такое решение увеличивает время перехода к подпрограмме прерывания, но исключает ошибки при программиро­вании. С другой стороны, ядро MCS-51 имеет фиксированные векторы прерывания, что требует занесения по адресам этих векторов дополнительных команд безусловного пе­рехода. В то время как в НС08 векторы прерывания произвольно определяются пользо­вателем, поэтому дополнительных команд безусловного перехода не требуется.

• Какое ядро предпочтительней? Однозначного ответа на этот вопрос не может дать никто. Ведь то, что требуется от процессорного ядра, это удовлетворять по быстродей­ствию и объему адресуемой памяти для решаемой задачи и быть удобным в программи­ровании. При этом следует учитывать, что в процессе выбора элементной базы МК для проекта будут оцениваться множество факторов, прямо не связанных с архитектурой процессорного ядра. Это набор и технические характеристики периферийных модулей, напряжение питания, мощность потребления, тип корпуса, возможности программирова­ния и отладки, стоимостные показатели, и, наконец, доступность образцов кристаллов МК. Именно поэтому тесты на производительность МК проводятся, но по ним никогда не делается абсолютного заключения. Остается простор для творчества.





Поделиться с друзьями:


Дата добавления: 2016-10-06; Мы поможем в написании ваших работ!; просмотров: 634 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Студент всегда отчаянный романтик! Хоть может сдать на двойку романтизм. © Эдуард А. Асадов
==> читать все изречения...

2395 - | 2153 -


© 2015-2024 lektsii.org - Контакты - Последнее добавление

Ген: 0.007 с.