П. Вовк CAN2.0B+32-битный сопроцессор=DS80C390Архитектура Intel 8051 по всем прогнозам специалистов должна была кануть в Лету еще в середине девяностых. Этому способствовало появление и микроконтроллеров с RISC-архитектурой, и 16-ти, 32-разрядных микроконтроллеров, и задач, с которыми старый добрый 8051 справиться не мог. Но все-таки далеко не все так мертво в 8051-архитектуре. Появляются там и звезды. Такой звездой может стать и DS80C390. DS80C390 √ быстрый микроконтроллер с 8051-совместимой архитектурой. При его разработке использовалась стандартная архитектура, применяемая Dallas Semiconductor для своих микроконтроллеров, требующая всего 4 такта на выполнение простейшей операции. Это в совокупности с тактовой частотой 40 МГц позволяет получить производительность 10 MIPS, что приблизительно в 2,5 раз превышает производительность аналогичных микроконтроллеров с классической 8051 архитектурой, использующей 12 тактов на команду. К стандартному набору периферии добавлен второй UART, второй указатель данных, семь дополнительных прерываний, программируемый сторожевой таймер, супервизор, программируемый тактовый выход, позволяющий поддерживать интерфейс IRDA. Рисунок 1. Блок-схема DS80C390 Контроллер содержит 4 КБайт встроенной SRAM, доступной при использовании команды MOVX, которая может использоваться как память программ, память данных или как память стека. 22-битный счетчик команд позволяет адресовать до 4 Мб внешней памяти программ и до 4 Мб внешней памяти данных. 10-битный указатель стека позволяет использовать под стек 1 Кб встроенной SRAM. Кроме этого, не изменилась и политика Dallas Semiconductor и в отношении уменьшения электромагнитных помех путем запрета сигнала ALE во время, когда нет обращения по шине к внешним устройствам. Работа всех команд, флагов, битов статуса ничем не отличается по логике работы от классической 8051 архитектуры. Но при написании программ необходимо, конечно же, учитывать уменьшение времени выполнения каждой инструкции. Есть два момента, позволяющие считать этот микроконтроллер принципиально новым устройством. Это встроенный математический сопроцессор, поддерживающий 16- и 32-битную арифметику, и аппаратно поддерживаемый сдвоенный контроллер интерфейса CAN 2.0В. Об этом по порядку. Встроенный математический сопроцессор поддерживает 32- и 16-битные операции такие, как умножение, деление, сдвиг и нормализацию. Эти операции используют три специальных регистра. Функция нормализации преобразует 4-байтное беззнаковое целое в формат с плавающей десятичной точкой. Операции, поддерживаемые математическим сопроцессором указаны в таблице.
Математический сопроцессор дает возможность применять этот микроконтроллер в достаточно сложных промышленных контроллерах, маршрутизаторах протоколов, портативных вычислительных системах специального назначения и т.п. Для применения в промышленных устройствах предназначен и встроенный сдвоенный контроллер протокола CAN 2.0В. Этот протокол уже стал стандартом де-факто во встраиваемых промышленных контроллерах. А наличие именно сдвоенного порта дает возможность строить довольно сложные сети. Контроллер CAN поддерживает как стандартные 11-битные, так и расширенные 29-битные идентификаторы со стандартным 8-битным полем данных в сообщении. Четырнадцать из пятнадцати центров сообщений могут быть запрограммированы как для режима приема, так и для режима передачи. Пятнадцатый центр программируется только для приема. Все регистры, предназначенные для работы с CAN, расположены в MOVX SRAM. Рисунок 2. Потребляемый ток в зависимости от частоты тактирования. DS80C390 поддерживает три метода адресации √ 16-битная, 22-битная страничная и 22-битная непрерывная. В режиме16-битной адресации микроконтроллер работает в режиме классической 8051 архитектуры и позволяет адресовать до 64 Кбайт памяти программ или данных. В режиме 22-битной страничной адресации микроконтроллер также работает как классический, но при выполнении операций ACALL, LCALL, RET и RETI необходимо учитывать, что ко времени их выполнения добавляется еще один такт. Это режим поддерживается стандартными компиляторами для 8051 архитектуры, так что обычно проблем его применение не вызывает. В случае же использования 22-битной непрерывной адресации используется полный 22-битный счетчик команд, и команды перехода автоматически сохраняют и восстанавливают полный 22-битный счетчик команд. Поскольку при этом методе адресации команды перехода, такие как ACALL, AJMP, LCALL, LJMP, MOV DPTR, RET, RETI требуют от компилятора и линковщика поддержки соответствующего режима. DS80C390 поддерживает как традиционный 8-битный, так и 10-битный указатель стека, облегчающий написание программ на языках высокого уровня, например С. 10-битный указатель стека разрешается при установлении в единичное состояние бита SA (бит 2 в регистре ACON). При включении питания этот бит сбрасывается, включая по умолчанию 8-битный указатель стека. В случае использования 10-битного указателя стека под стек используется до 1024 байт в первом килобайте встроенной SRAM, доступной по команде MOVX. В микроконтроллере DS80C390 применяется система управления потребляемой мощностью путем программного снижения тактовой частоты ядра в 1024 раза. На графике приведена зависимость потребляемого тока от тактовой частоты при максимальной тактовой частоте ядра и при включенном режиме деления тактовой частоты. Но при генерации прерывания, например, от последовательного порта UART, система автоматически переходит в режим тактирования fCLK/4. Следует отметить, что генерация прерывания происходит не сразу после приема стартового бита, а только когда принимается полное слово. Следует отметить, что потребляемая мощность в режиме Idle (приблизительно ╫ от потребляемой мощности в нормальном режиме) больше, чем в режиме с пониженной тактовой частотой. |
HarryGoorn пишет...
12/03/2019 00:27:54 |
Ваш комментарий к статье | ||||