СЧЕТЧИК ИМПУЛЬСОВ (СИ)
PULSE COUNTER (SI)

Изобретение относится к области вычислительной технике и устройствам цифровой автоматики. Известны счетчики импульсов (СИ), построенные на основе триггеров со счетным входом (И.Н. Букреев, В.М. Мансуров и В.И. Горячев. Микроэлектронные схемы цифровых устройств. М., «Сов. Радио», 1973, стр. 137, рис. 5.1). Недостатком таких СИ являются счетные триггеры, которые требуют использования элементов временной задержки счетных импульсов, что снижает быстродействие их работы, усложняет технологию изготовления и повышает требования к параметрам счетных импульсов. Известны также СИ, каждый разряд которых построен на основе элементов И, ИЛИ, НЕ и двух RS-триггеров (источник информации тот же, стр. 152, рис. 5.7). Известны также СИ, построенные на основе ЛЭ И, ИЛИ, НЕ и одного RS-триггера в каждом разряде, например, выполненные по патентам RU 2 269199, RU 2 273951 и RU 2 284653. Общим недостатком указанных СИ является относительно низкое быстродействие, определяемое суммарной временной задержкой сигнала переноса при последовательном его прохождении по цепи элементов ИЛИ, И, на основе которых строится схема сквозного переноса. Ближайшим прототипом к предлагаемому СИ является счетчик по патенту RU 2 209199, в котором схема распространения потенциала переноса (ПП) построена по известным каноническим правилам и требует временной задержки ПП более 2nt, здесь n - число двоичных разрядов; t - задержка одного элемента И, ИЛИ. Это снижает быстродействие работы СИ пропорционально числу двоичных разрядов, что является большим недостатком прототипа, при прочих равных условиях.
Целью изобретения является устранение отмеченного недостатка и устранение влияния числа разрядов на быстродействие работы СИ. Для этого предложен СИ, отличающийся тем, что в устройство введены шестой элемент И, четвертый элемент ИЛИ, четвертый, пятый и шестой элементы НЕ, при этом первый вход шестого элемента И соединен с первой шиной счетных импульсов, введена вторая шина управления операцией счета импульсов, подключенная к второму входу шестого элемента И, выход которого подключен к первому входу третьего элемента ИЛИ первого разряда и к входам четвертого и пятого элементов НЕ, выход четвертого элемента НЕ соединен с вторыми входами третьих элементов ИЛИ всех разрядов, выход третьего элемента ИЛИ подключен к второму входу четвертого элемента И в каждом разряде, выход упомянутого элемента И соединен с вторыми входами третьего элемента ИЛИ и пятого элемента И i+1-го разряда, пятый элемент НЕ через шестой элемент НЕ подсоединен к первым входам пятых элементов И всех разрядов, введены также третья шина установки нуля RS-триггеров СИ, подключенная к первому входу четвертого элемента ИЛИ и к третьим входам первых элементов ИЛИ всех разрядов, и четвертая шина инвертирования RS-триггеров, подключенная к второму входу четвертого элемента ИЛИ, выход которого соединен с первыми входами вторых элементов ИЛИ всех разрядов счетчика импульсов, третий вход второго элемента ИЛИ соединен с информационным входом i-го разряда. Это позволяет исключить временную задержку ПП без увеличения затрат оборудования и расширить перечень выполняемых счетчиком операций: инвертирование кода триггеров (Tr), вычитание единиц из кода, хранящегося в триггерах СИ, установка Tr в нуль, прием кода с информационных входов (ИВ). Отмеченные преимущества СИ достигаются за счет того, что в режиме ожидания очередного счетного импульса во всех разрядах СИ, в которых RS хранит код единицы, формируют имитационный потенциал переноса (ИПП), подключенный к первому входу третьих элементов ИЛИ. С приходом счетного импульса сохраняют ИПП в цепочке разрядов, хранящих код единицы, включая первый разряд счетчика, и снимают сформированные переносы во всех разрядах, если в первом разряде хранится код нуля.
Для пояснения работы (см. фиг.1) представлена функциональная схема трех разрядов СИ и приняты следующие обозначения: элементы И 1-6, элементы ИЛИ 7-10, элементы НЕ 11-16, RS-триггер (Tr) 17, информационный вход (ИВ) 18, шина счетных импульсов 19, шина управления операцией счета импульсов 20, шина установки нуля Tr счетчика 21, шина инвертирования Tr счетчика 22, выход потенциала переноса из i-го разряда 23, шина имитационного потенциала переноса 24.
Предлагаемый СИ осуществляется следующим образом. В каждом двоичном разряде единичный выход Tr 17 соединен с ИЛИ8, второй вход которого подключен к выходу И1 и к входу НЕ12. Выход НЕ12 соединен с нулевым входом Tr 17, третий вход ИЛИ8 соединен с шиной 21, выход ИЛИ8 соединен с первым входом И3, его второй вход соединен с выходом НЕ13 и единичным входом Tr17, выход И3 подключен к первому входу И1 и к входу НЕ11, выход которого связан с первым входом И2. Выход И2 подключен к входу НЕ13. Выход И3 соединен с первым входом И4, второй вход которого связан с выходом ИЛИ9. Первые входы ИЛИ9 всех разрядов связаны с выходом НЕ14. Выход упомянутого НЕ14 является шиной имитационного потенциала переноса (ИПП) 24. Выход И6 соединен с входами НЕ14, НЕ15 и с входом ИЛИ9 первого разряда. Выход НЕ15 через НЕ16 связан с первыми входами И5 всех разрядов, вторые входы которых подключены к выходам И4 младших разрядов, кроме первого разряда. Выход И5 через ИЛИ7 соединен со вторыми входами элементов И1, 2. Шина 19 подключена к первому входу И6, второй вход этого элемента соединен с шиной операции счета импульсов 20. Первый вход ИЛИ10 подключен к шине 21 и к третьим входам ИЛИ8 каждого разряда. Второй вход ИЛИ10 соединен с шиной 22. Выход ИЛИ10 через ИЛИ7 связан со счетными входами всех триггеров счетчика.
Рассмотрим работу устройства при выполнении операции счета, вычитания импульсов, инвертирования, установки в нуль триггеров СИ и приема кода с ИВ. В режиме ожидания выполнения очередной операции (в статике) каждый триггер может хранить результат предыдущей операции в виде комбинации нулевых или единичных значений триггеров. При этом на шинах 19-22 будут отсутствовать высокие потенциалы (ВП). На выходе НЕ14, т.е. на шине ИПП24, будет присутствовать ВП. Высокие потенциалы также будут присутствовать на выходах НЕ12-14, 15, на выходах ИЛИ9, а также на выходах И3, 4 тех разрядов, в которых Tr хранят код единицы.
1. Операция счета импульсов. Выполнение операции разрешает ВП, поступивший на шину 19 и на первый вход И6. Первый счетный импульс по шине 20 поступает на второй вход И6. Импульс с выхода И6 поступает на входы НЕ14, 15 и на ИЛИ9 первого разряда, при этом на ИЛИ9 выполняется операция логического сложения счетного импульса и сигнала с выхода НЕ14, т.е. вырабатывается потенциал имитационного переноса. Одновременно счетный импульс через И6 поступит на вход НЕ14, с выхода которого снимается ВП. Если Tr17 первого разряда хранит код нуля и на первый вход И4 не поступает ВП с выхода И3, то в цепи формирования переноса на выходах И4 всех разрядов будет отсутствовать ПП. Счетный импульс с выхода И6 через НЕ15, 16 поступит на входы И5 всех разрядов. В первом разряде И5 всегда разрешает прохождение счетного импульса с выхода НЕ16 через И5, ИЛИ7 на вторые входы И1, 2. При нулевом значении Tr 17 на его единичном выходе будет отсутствовать ВП. Такой же потенциал будет на выходах ИЛИ8, И3 и на входе НЕ11, на выходе которого будет ВП, разрешающий прохождение счетного импульса через И2, НЕ13 на единичный вход Tr 17. При этом за счет подключения выхода НЕ13 к входу И3 будет осуществляться задержка сигнала с выхода И3 на входы И4, 1 и НЕ11 на время длительности счетного импульса, поступившего с выхода ИЛИ5. После окончания счетного импульса на выходе И6 будет низкий потенциал, при этом на выходе НЕ14 будет ВП, т.е. на шине 24 будет сформирован имитационный ПП, который поступит через ИЛИ9 на вход И4 каждого разряда. Если Tr 17 каждого разряда хранит код единицы, то будет сформирован потенциал переноса из самого младшего разряда до самого старшего разряда. Это выполняется следующим образом. Очередной счетный импульс поступит на второй вход ИЛИ9 первого разряда, логически складывается с имитационным потенциалом переноса, выработанным НЕ14. После переключения НЕ14 и снятия ВП с шины 24 счетный импульс будет «поддерживать» ПП во всех разрядах СИ без затрат времени на распространение сигнала ПП из самого младшего до самого старшего разряда. При этом ПП с выхода И4 каждого разряда поступит на второй вход И5, кроме первого разряда. Счетный импульс с выхода И6, НЕ15, 16 поступает на первый вход И5, с выхода И5 через ИЛИ7 сигнал поступает на входы И1, 2 и одновременно инвертирует все триггеры СИ. Таким образом, временной задержки ПП нет, что обеспечивает повышение быстродействия работы СИ.
2. Операция инвертирования триггеров. Эта операция является подготовительной ЭО для выполнения вычитания единиц, хранящихся в триггерах регистра. Для выполнения ЭО инвертирования на ШУ22 подается исполнительный импульс, который через элементы ИЛИ10, 7 проходит на счетный вход всех Tr17 и выполнит их инвертирование.
3. Операция вычитания единиц. Операция выполняется аналогично выполнению операции счета импульсов. Отличие состоит только в том, что до начала выполнения операции вычитания все Tr СИ инвертируются. Каждый импульс, поступивший на ШУ19, будет прибавлять единицу к инверсному коду СИ. После прекращения поступления импульсов на ШУ19 операция прекращается. Для представления кода в СИ в прямом коде выполняют ЭО инвертирования кода регистра СИ по п. 2.
4. ЭО установки нулей Tr. Для выполнения этой ЭО на ШУ21 подается ВП импульса установки нуля всех Tr17, которые через ИЛИ10, И7 проходит на второй вход И1, 2. Одновременно импульс с ШУ21 через ИЛИ8, И3 поступает на первые входы И1 и через НЕ1, 2 поступает на нулевой вход Tr17 каждого разряда счетчика.
5. Прием кода с ИВ. Для выполнения этой ЭО предварительно устанавливают все Tr17 в нуль (рассмотрена установка Tr17 в нуль в предыдущем пункте - 4), по второму временному такту код принимаемого числа одновременно поступает на все ИВ18 и далее через ИЛИ7, И2, НЕ13 поступает на единичные входы Tr17 всех разрядов.
Таким образом, предложенный СИ обеспечивает повышение быстродействия выполнения операций счета импульсов и вычитания единиц из кода, хранящегося в регистре счетчика, при минимальных затратах оборудования (один RS-триггер, пять элементов И, три элемента ИЛИ и три элемента НЕ), при этом исключается зависимость быстродействия работы от числа двоичных разрядов СИ. Кроме того, расширяется перечень выполняемых счетчиком ЭО.