Page 157 - 4503
P. 157

Другий  регістр  підключений  до  входу  дешифратора
           команд    і  містить  ту  команду,  яка  виконується  в  даний
           момент. Використання конвеєра дозволяє  здійснювати відбір
           команди  і  одночасно  виконання  команди  відібраної  у
           попередньому циклі.  Тож фактично кожний машинний цикл
           складається з відбору команди n+1 і виконання команди n, чи
           відбору команди   n+2  і виконання  n+1   і. т. д. На схемі фаз
           машинного циклу (рисунок 5.13) відображені один за другим
           три машинних цикли, кожний з яких складається із двох фаз:
           відбору і виконання.
                Дана  схема    побудована  для  звичайної  лінійної
           послідовності  команд.  Для  команд, що  спричиняють  перехід
           до  іншого  місця  програми,  команда  яка  посіла  місце  у
           вершині конвеєра, тобто в його першому регістрі,  повинна
           бути  замінена  на  іншу.  Цей  процес  називається  скиненням
           конвеєра, він збільшує час виконання команди  ще на один
           цикл, до таких команд відносяться наприклад goto. Як видно
           з  рисунка  5.13,    звичайна  команда  виконується  за  один
           машинний  цикл,  а  той  у  свою  чергу  відбувається  протягом
           чотирьох тактів.

                5.4.6 Дешифратор команд мікроконтролера PIC16F84

                Дешифратор  команд  розкодовує  кожне  із  полів  14–
           бітного слова команди і керує передачею відповідних адрес та
           констант  на  відповідні  входи  блока  виконання,  а  також
           зконфігуровує режим роботи АЛП.

                5.4.7 Генератор машинного циклу мікроконтролера
           PIC16F84

                Машинний  цикл    мікроконтролерів  РІС  триває  4  такти,
           частоту  котрих  f osc  визначає  зовнішній  кварцовий  резонатор,



                                         157
   152   153   154   155   156   157   158   159   160   161   162