Счетчик команд (к заданию 2.2)
В ЭВМ последовательная выборка команд из памяти производится под управлением схемы счетчика импульсов. Он в структуре компьютера называется счетчиком адресов команд программ, кратко счетчиком команд (СЧК) (на выходе счетчика формируются адреса команд, хранящиеся в ЗУ). Обозначение этого счетчика: PC (program counter).
В ходе выполнения какой-либо программы нередко возникают ситуации, когда требуется выполнять эту программу не пошагово, а перепрыгнуть часть кода (т. е. нарушить естественный ход системы команд). Причины таких ситуаций различны: переход по метке, прерывания и т. д..
Чтобы наглядно увидеть и понять работу счетчика команд, соберем схему на рис. 12.
Рис. 12. Схема циклического счетчика команд.
На схеме видно, что на вход «сброс» ГТИ и вход «R» PC изначально подается сигнал (единичный импульс) «1» (по умолчанию на всех входах «1»), сигнал сброса. Это сделано для того, чтобы ГТИ и PC установились в начальное состояние, и можно было бы начать работу. А затем устанавливается «0» для возможности работы с этими микросхемами. С выхода ГТИ «ТИ» на вход PC «+1» идут прямоугольные импульсы с заданной частотой. По этим импульсам счетчик будет считать. Текущее значение счетчика выводится на семисегментный индикатор. Такой счетчик будет считать от «0» до «9» в цикле (т. е. после «9» будет следовать «0», и при этом переходе на «P»- переполнение счетчика будет логическая «1»).
Можно модернизировать данную схему (рис.1.3) так, чтобы счетчик считал например с 3 до 9 в цикле (или начиная с любого другого числа от 0 до 8). Для этого будем использовать входы PC «D1», «D2», «D4» и «D8» для ввода значения начала счета. Выход «P» - переполнение счетчика, мы будем подавать на вход «С» счетчика для занесения начального числа отсчета. Пример такого счетчика показан на рис. 11.
В этом примере начальное число устанавливается клавиатурой К10, можно это делать и непосредственно, подавая логические «0» и «1» на входы Dx.
Рис. 13. Схема циклического 4-х разрядного счетчика команд с вводом
начального значения отсчета (с предустановкой).
Рассмотрим таблицу истинности работы схемы, приведенной на рис. 11.
Таблица 2. Таблица истинности работы Схема циклического 4-х разрядного счетчика команд с вводом начального значения отсчета (с предустановкой).
№ | Логическая единица на входах | Состояние выходов | ||||
Q1 | Q2 | Q3 | Q4 | P | ||
R | ||||||
+1 | ||||||
+1 | ||||||
+1 | ||||||
+1 | ||||||
+1 |
Продолжение Табл. 2.
+1 | ||||||
+1 | ||||||
+1 | ||||||
D1, С | ||||||
D2,С | ||||||
D1, D2, С | ||||||
R |
Представим более подробное описание схемы на рис. 13. Оно представлено на рис. 14, и представляет из себя двухразрядный счетчик команд с предустановкой кода, выполненный на счетных триггерах и имеющий логическую часть.
Рис. 14. Схема подключения контактов циклического счетчика команд с вводом начального значения отсчета.
● (1-4) – Подключение клавиатуры к счетчику команд
● (5-7) – Подключение PC к ГТИ и др.
● (8-11) – Вывод на индикатор.