
- •1. Структура и принцип действия микропроцессора классической архитектуры
- •2. Выполнение процессором командного цикла.
- •3. Командный и машинный циклы.
- •4. Внутренние регистры микроконтроллера msp430. Регистры общего назначения и регистры специальных функций
- •5. Микросхемы памяти, их основные характеристики и классификация
- •6. Функциональная схема устройства оперативной памяти
- •7. Постоянные запоминающие устройства, их типы и области применения
- •8. Применение пзу в качестве программируемого логического устройства.
- •9. Применение пзу в качестве функционального преобразователя (фп).
- •10. Структура команд. Способы адресации.
- •11. Применение косвенной адресации
- •12. Команды процессора и эмулируемые команды
- •13. Организация подпрограмм и использование стековой области памяти.
- •14. Программная реализация интервалов времени
- •15. Аппаратный умножитель и его применение
- •16. Виды операции умножения
- •17. Применение умножения с накоплением при расчете сигналов управления
- •18. Аппаратные и программные средства интрфейса.
- •19. Принципы обмена информацией.
- •20. Параллельный и последовательный интерфейс.
- •21. Принцип действия программируемого таймера.
- •23.Организация прямого доступа к памяти.
- •24. Аппаратная реализация интервалов времени
- •25. Цифро-аналоговое преобразование.
- •26. Аналого-цифровое преобразование.
- •27. Микроконтроллер как динамическое звено.
- •28. Влияние времени выполнения программы мк запас устойчивости замкнутой системы.
- •29. Выбор числа разрядов слова данных по требуемой точности системы управления.
- •30. Рекурсивные и нерекурсивные цифровые фильтры, их передаточные функции и структурные схемы.
- •31. Цифровое дифференцирование и интегрирование.
- •34. Параллельная обработка информации. Классификация вычислительных систем с параллельной обработкой информации.
- •35. Процессоры с сокращенным набором команд (risc) и с полным набором команд (cisc).
- •36. Гарвардская и разнесенная архитектуры микропроцессоров
- •37. Процессоры с длинным командным словом
- •38. Синтез процессорной матрицы.
- •39. Применение процессорной матрицы для цифровой фильтрации сигнала.
- •40. Общая характеристика системы команд мсs8 х с51.
- •41. Функциональная схема микроконтроллера мсs8 х с51 и назначение входящих в него устройств.
- •42. Функциональная схема микроконтроллера мсs8 х с196 и назначение входящих в него устройств.
- •43. Регистры мсs 196 и способы адресации. Система команд мсs 196.
- •44. Архитектура микроконтроллеров adsp-bf и общая характеристика системы команд.
- •45. Структура ядра adsp-bf и его регистры.
- •46. Архитектура микроконтроллеров tms 320
- •47. Алгоритм расчета сигнала управления в замкнутой сис-ме
- •48. Преобразование унитарного кода импульсн.Датчика в двоичный код положения
- •49. Преобразование унитарного кода импульсного датчика в двоичный код скорости.
- •51. Использование нечеткой логики для синтеза управления. Лингвист. Переменные.
- •5 2. Алгоритм нечеткого управления
- •53. Структура и принцип действия искусственного нейрона. Соединение в сеть.
- •54. Методы обучения искусственной нейронной сети.
- •55. Применение искусственной нейронной сети в качестве устройства управления.
- •56. Применения генетических алгоритмов для оптимизации управления эп
- •57. Функциональная схема msp 430, способы адресации, система команд, назначение входящих в него устройств
- •58. Архитектура risc-ядра arm7 16/32 разрядных микроконтроллеров
- •59. Последовательный интерфейс spi микроконтроллеров.
- •62. Применение шим для цап.
- •63. Способы повышения эффективности использования конвейеров
- •64. Принцип действия сигма-дельта ацп
- •65. Микроконтроллер, его ф-ная схема и применение в системах управления эп
- •66. Режим энергопотребления мк
- •67. Режимы работы таймеров.
- •68. Как таймер формирует шим
- •69. Режим захвата и сравнения.
11. Применение косвенной адресации
Косвенная адресация позволяет преобразовать данные в адрес. Особенно часто возникает, когда адрес-переменная величина. Для косвенной адресации адрес записывается в одном из регистров.
Например:
Mov
# OFFo8h,
R5
OFF08h
R5
Значение адреса памяти
Mov
R4,
@ R5
R4
M
Косвенная адресация
Пример: записать нулевое значение во все регистры общего назначения.
R4
R15
0000
12. Команды процессора и эмулируемые команды
MSP430 имеет архитектуру с единым адресным пространством для команд и данных. Память может адресоваться как побайтово, так и пословно. Порядок хранения 16-разрядных слов — от младшего к старшему.
Процессор содержит 16 16-разрядных регистров. Регистр R0 используется как программный указатель, регистр R1 как указатель, регистр R2 как регистр статуса, а R3 как специальный регистр (генератор констант) , R2 также может использоваться в качестве генератора констант. Генератор констант используется для сокращения общей длины команды вследствие неявного представления константы в коде операции. Регистры с R4 по R15 используются как регистры общего назначения.
Система команд является полностью ортогональной, то есть любую команду можно применять к любым из внутренних регистров, применяя различные способы адресации(регистровый, абсолютный, косвенный, непосредственный и т.д.).
Составляя программу, следует размещать данные во внутренних регистрах микроконтроллера и памяти с учетом организации адресного пространства.
Система команд содержит операции пересылки, арифметические и логические операции, а так же команды перехода. Арифметические команды это суммирование, вычитание и декрементирование. Умножение выполняется посредством обращения к аппаратному умножителю.
При составлении программы можно использовать операции с 16-разрядными словами и байтами. Байтовые команды должны иметь расширение мнемокода .b, например, mov.b R11,R12.
Адрес 16 разрядного слова всегда четный, причем по четному адресу хранится младший байт слова. Данные величиной в байт могут иметь как четный, так и нечетный адрес.
Выполнение команд условных переходов зависит от состояния флагов, хранящихся в регистре состояния SR, а флаги отображают свойства последнего результата работы АЛУ.
Система команд MSP430
Мнемокод |
Комментарии |
Команды с 2 операндами MOV s,d ADD s,d ADDC s,d SUB s,d SUBC s,d CMP s,d DADD s,d BIT s,d BIC s,d BIS s,d XOR s,d AND s,d |
s→d s+d→d s+d+c→d d-s→d d-s+c-1→d d-s→установка флагов s+d+c→d s∩d→установка флагов
sUd→d s s∩d→d |
Команды с 1 операндом RRC d RRA d PUSH s SWPB d CALL d RETI d SXT d |
Сдвиг вправо через перенос Сдвиг вправо, мл. байт в перенос Запись в стек Перестановка байтов Вызов подпрограммы возврат Заполнение знаком |
Команды перехода JZ m JNZ m JC m JNC m JN m JGE m JL m JMP m |
Если 0,(z=1) Если не 0,(z=0) Если перенос,(с=1) Если не перенос,(с=0) Если отрицательно,(N=1) Если N V=0 Если N V=1 Без условия
|
Другие команды, поддерживаемые ассемблером MSP430, образуются из основных и именуются эмулируемыми
CLRZ - очистка флага Z регистра состояния процессора (PSW) ( BIC #2,SR )
CLRN - очистка флага N регистра состояния процессора (PSW) ( BIC #4,SR )
CLRC - очистка флага C регистра состояния процессора (PSW) ( BIC #1,SR )
SETZ - установка флага Z регистра состояния процессора (PSW) ( BIS #2,SR )
SETN - установка флага N регистра состояния процессора (PSW) ( BIS #4,SR )
SETC - установка флага C регистра состояния процессора (PSW) ( BIS #1,SR )
EINT - разрешение прерываний ( BIC #8,SR )
DINT - запрещение прерываний ( BIS #8,SR )
CLR dst - очистка операнда ( MOV #0,dst )
TST dst - проверка операнда на ноль ( CMP #0,dst )
INV dst - инвертирование битов операнда ( XOR #-1,dst )
ADC dst - прибавление переноса к операнду ( ADDC #0,dst )
DADC dst - десятичное сложение переноса с получателем ( DADD #0,dst )
SBC dst - вычитание переноса из операнда ( SUBC #0,dst)
INC dst - инкремент операнда ( ADD #1,dst )
DEC dst - декремент операнда ( SUB #1,dst )
INCD dst - увеличение на 2 операнда ( ADD #2,dst )
DECD dst - уменьшение на 2 операнда ( SUB #2,dst )
RLA dst - сдвиг влево операнда, флаг переноса заполняется из старшего бита, а младший бит результата -0 ( ADD dst,dst )
RLC dst - сдвиг влево операнда с использование переноса ( ADDC dst,dst )
RET - возврат из подпрограммы ( MOV @sp+,pc )
POP dst - извлечение операнд из стека ( MOV @sp+,dst )
BR dst - переход в программе используя операнд ( MOV dst,pc)
NOP - нет операции ( MOV r3,r3 )