Блок преобразования интервалов времени

Полезная модель относится к измерительной технике и может быть использована в многоканальных устройствах измерения интервалов времени.
Наиболее близким к заявленному блоку (прототипом) является многоканальный измеритель интервалов времени, который содержит генератор импульсов, элемент И, элемент ИЛИ, счетчик адреса, пусковой триггер, N входных триггеров, К запоминающих устройств, шину «Считывание», шину «Пуск», N входных и N выходных информационных шин, причем выход генератора импульсов соединен с первым входом элемента И, выход которого подключен к объединенным R-входам N входных триггеров и первому входу элемента ИЛИ, второй вход которого соединен с шиной «Считывание», шина «Пуск» подключена к S-входу пускового триггера, прямой выход которого соединен с вторым входом элемента И, а инверсный подключен к объединенным входам «Запись/считывание» запоминающих устройств, входные информационные шины измерителя с первого по N-й соединены с S-входами входных триггеров с первого по N-й соответственно, а также кольцевой сдвигающий регистр считывания, кольцевой сдвигающей регистр записи, L формирователей импульсов, L счетчиков адреса, L регистров адреса, К входных регистров и К выходных регистров, причем прямые выходы входных триггеров с первого по N-й соединены с информационными входами соответственно с первого по N-й всех К входных регистров, информационные выходы с первого по N-й входных регистров с первого по К-й подключены к информационным входам соответственно с первого по N-й запоминающих устройств с первого по К-й соответственно, информационные выходы с первого по N-й запоминающих устройств с первого по К-й соединены с информационными входами с первого по N-й выходных регистров с первого по К-й соответственно, информационные выходы которых с первого по N-й подключены к информационным выходным шинам с первой по N-ю соответственно, шина "Считывание" подключена к тактовому входу кольцевого сдвигающего регистра считывания, К информационных выходов которого с первого по К-й соединены с входами «Разрешение записи» выходных регистров с первого по К-й соответственно, информационные выходы каждого счетчика адреса с первого по L-й подключены к информационным входам регистров адреса с первого по L-й соответственно, информационные выходы каждого из которых с первого по L-й соединены с адресными входами запоминающих устройств с первого по М-й в каждой из L групп, где М число запоминающих устройств, объединенных в L групп по М = K/L в каждой, выход элемента ИЛИ подключен к тактовому входу кольцевого сдвигающего регистра записи, К информационных выходов которого с первого по К-й соединены с тактовыми входами входных регистров с первого по К-й соответственно, а его выходы 1, РМ + 1, где Р 1, 2, З, L подключены к входам с первого по L-й формирователей импульсов соответственно, выходы каждого из которых с первого по L-й соединены со счетными входами счетчиков адреса с первого по L-й, входами ввода информации регистров адреса с первого по L-й и объединенными входами «Выбор микросхемы» запоминающих устройств с первого по М-й соответствующей с первой по L-ую групп запоминающих устройств соответственно, а входы управления ввода информации всех входных регистров подключены к инверсному выходу пускового триггера, а выход старшего разряда L-го регистра адреса соединен с R-входом пускового триггера. Авторское свидетельство СССР № 1651686, МПК G04F 10/04, 27.09.1996.
Предлагаемый блок преобразования интервалов времени производит так же как прототип преобразование интервалов времени в цифровые код и запись данных в запоминающие устройства. Данные, сосчитанные из запоминающих устройств, позволяют рассчитать длительность интервалов времени. Блок преобразования интервалов времени является измерителем интервалов времени.
Недостатком прототипа является невысокое быстродействие устройства. Невысокое быстродействие обусловлено тем, что в прототипе импульсы передаются по внешним цепям между микросхемами. Задержки распространения, рассогласования, отражения, наводки и шумы ухудшают высокочастотный импульс и ограничивают его частоту. Поэтому частота генератора импульсов, от которой зависит быстродействие прототипа, ограничена величиной порядка 100 МГц и повышение её невозможно из-за затруднений передачи импульсов по плате между микросхемами.
Техническим результатом полезной модели является повышение быстродействия устройства без увеличения частоты генератора импульсов.
Технический результат достигается тем, что блок преобразования интервалов времени, содержащий генератор импульсов, четыре запоминающих устройства, шину «Считывание», шину «Пуск», входную и выходную информационные шины, дополнительно содержит программируемую логическую интегральную схему (ПЛИС), в которой спроектированы умножитель частоты, первый регистр сдвига, двоичный счетчик, мультиплексор, четыре ключа, четыре регистра, первый, второй и третий триггеры, первый и второй элементы И, второй и третий регистр сдвига, четыре D-триггера, четыре счетчика адреса записи, четыре S-триггера, четыре шинных мультиплексора, четыре счетчика адреса считывания; при этом каждое запоминающее устройство имеет совмещенный вход/выход данных, вход сигнала записи и входы адреса, при этом запись происходит по сигналу записи и по адресу, считывание происходит при отсутствии сигнала записи по адресу; первый регистр сдвига, кольцевой, имеет четыре выхода; двоичный счетчик имеет два разряда: младший и старший; мультиплексор имеет первый, второй, третий, четвертый входы и выход, а также два входа управления - первый и второй, которые при состоянии лог. «00» соединяют первый вход с выходом, при лог. «01» соединяют второй вход с выходом, при лог. «10» соединяют третий вход с выходом, при лог. «11» соединяют четвертый вход с выходом; каждый ключ, двунаправленный с тремя состояниями, имеет вход, выход и вход/выход, а также первый и второй входы управления, при этом первый вход управления включает направление передачи от входа/выхода на выход, второй вход управления включает направление передачи от входа на вход/выход; регистры, синхронные, имеют вход разрешения записи; первый и второй триггеры синхронные с входом D; третий триггер синхронный с входом S установки в лог. «1»; первый и второй элементы И двухвходовые; второй и третий регистры сдвига, кольцевые, синхронные, имеют четыре выхода каждый, второй регистр сдвига имеет вход загрузки, вход сдвига и выход сдвига, третий регистр сдвига имеет вход сдвига; четыре D-триггера, синхронные, имеют вход разрешения записи; четыре счетчика адреса записи, синхронные, многоразрядные, имеют вход разрешения счета и вход разрешения такта, а также выход переполнения; четыре S-триггера, синхронные, имеют вход разрешения записи и вход «S» установки в лог. «1»; каждый из четырех шинных мультиплексоров имеет многоразрядные первые входы, вторые входы и выходы, а также вход управления, который при состоянии лог. «0» соединяет первые входы с выходами, при лог. «1» соединяет вторые входы с выходами; при этом выходная информационная шина блока соединена с первым вводом ПЛИС, шина «Считывание» соединена со вторым вводом ПЛИС, входная информационная шина соединена с третьим вводом ПЛИС, генератор импульсов соединен с четвертым вводом ПЛИС, шина «Пуск» соединена с пятым вводом ПЛИС, вход/выход данных первого запоминающего устройства соединен с шестым вводом ПЛИС, вход записи первого запоминающего устройства соединен с десятым вводом ПЛИС, входы адреса первого запоминающего устройства соединены с группой четырнадцатых вводов ПЛИС, вход/выход данных второго запоминающего устройства соединен с седьмым вводом ПЛИС, вход записи второго запоминающего устройства соединен с одиннадцатым вводом ПЛИС, входы адреса второго запоминающего устройства соединены с группой пятнадцатых вводов ПЛИС, вход/выход данных третьего запоминающего устройства соединен с восьмым вводом ПЛИС, вход записи третьего запоминающего устройства соединен с двенадцатым вводом ПЛИС, входы адреса третьего запоминающего устройства соединены с группой шестнадцатых вводов ПЛИС, вход/выход данных четвертого запоминающего устройства соединен с девятым вводом ПЛИС, вход записи четвертого запоминающего устройства соединен с тринадцатым вводом ПЛИС, входы адреса четвертого запоминающего устройства соединены с группой семнадцатых вводов ПЛИС, первый ввод ПЛИС соединен внутри ПЛИС с выходом мультиплексора, первый вход мультиплексора соединен с выходом первого ключа, вход/выход первого ключа соединен с шестым вводом ПЛИС внутри ПЛИС, второй вход мультиплексора соединен с выходом второго ключа, вход/выход второго ключа соединен с седьмым вводом ПЛИС внутри ПЛИС, третий вход мультиплексора соединен с выходом третьего ключа, вход/выход третьего ключа соединен с восьмым вводом ПЛИС внутри ПЛИС, четвертый вход мультиплексора соединен с выходом четвертого ключа, вход/выход четвертого ключа соединен с девятым вводом ПЛИС внутри ПЛИС, два входа управления мультиплексора соединены с двумя разрядами двоичного счетчика - первый вход управления с младшим разрядом, второй вход управления со старшим разрядом, тактовый вход двоичного счетчика соединен со вторым вводом ПЛИС внутри ПЛИС и с тактовым входом первого регистра сдвига, четыре выхода первого регистра сдвига с первого по четвертый соединены с первыми входами управления четырех ключей с первого по четвертый соответственно и с тактовыми входами счетчиков адреса считывания с первого по четвертый соответственно, третий ввод ПЛИС соединен внутри ПЛИС с входом четырех регистров с первого по четвертый, выход четырех регистров с первого по четвертый соединен с входом четырех ключей с первого по четвертый соответственно, четвертый ввод ПЛИС соединен внутри ПЛИС с тактовым входом умножителя частоты, выход умножителя частоты соединен с тактовыми входами (входами синхронизации) первого, второго и третьего триггеров, второго и третьего регистров сдвига, четырех регистров, четырех D-триггеров, четырех счетчиков адреса записи и четырех S-триггеров; пятый ввод ПЛИС соединен внутри ПЛИС с D-входом первого триггера, выход которого соединен с D-входом второго триггера и с первым входом первого элемента И, второй вход первого элемента И соединен с инверсным выходом второго триггера, выход первого элемента И соединен с входом загрузки второго регистра сдвига, выход сдвига которого соединен с его входом сдвига, четыре выхода второго регистра сдвига с первого по четвертый соединены с входами разрешения записи четырех регистров с первого по четвертый соответственно, первый выход второго регистра сдвига соединен с S-входом третьего триггера, выход которого соединен с первым входом второго элемента И, выход которого соединен с D-входом первого D-триггера, выход которого соединен с D-входом второго D-триггера, выход второго D-триггера соединен с D-входом третьего D-триггера, инверсный выход второго D-триггера соединен со вторым входом второго элемента И, выход третьего D-триггера соединен с D-входом четвертого D-триггера, инверсный выход первого D-триггера соединен с десятым вводом ПЛИС внутри ПЛИС, инверсный выход второго D-триггера соединен с одиннадцатым вводом ПЛИС внутри ПЛИС, инверсный выход третьего D-триггера соединен с двенадцатым вводом ПЛИС внутри ПЛИС, инверсный выход четвертого D-триггера соединен с тринадцатым вводом ПЛИС внутри ПЛИС, четвертый выход второго регистра сдвига соединен с входом сдвига третьего регистра сдвига, четыре выхода третьего регистра сдвига с первого по четвертый соединены с входами разрешения такта четырех счетчиков адреса записи с первого по четвертый соответственно и с входами разрешения записи четырех S-триггеров с первого по четвертый соответственно, выходы переполнения четырех счетчиков адреса записи с первого по четвертый соединены с S-входами четырех S-триггеров с первого по четвертый соответственно, инверсный выход первого S-триггера соединен с входом разрешения счета первого счетчика адреса записи, с входом разрешения записи первого D-триггера, со вторым входом управления первого ключа и с входом управления первого шинного мультиплексора, инверсный выход второго S-триггера соединен с входом разрешения счета второго счетчика адреса записи, с входом разрешения записи второго D-триггера, со вторым входом управления второго ключа и с входом управления второго шинного мультиплексора, инверсный выход третьего S-триггера соединен с входом разрешения счета третьего счетчика адреса записи, с входом разрешения записи третьего D-триггера, со вторым входом управления третьего ключа и с входом управления третьего шинного мультиплексора, инверсный выход четвертого S-триггера соединен с входом разрешения счета четвертого счетчика адреса записи, с входом разрешения записи четвертого D-триггера, со вторым входом управления четвертого ключа и с входом управления четвертого шинного мультиплексора, выходы четырех счетчиков адреса записи с первого по четвертый соединены поразрядно с первыми входами четырех шинных мультиплексоров с первого по четвертый соответственно, вторые входы четырех шинных мультиплексоров с первого по четвертый соединены поразрядно с выходами четырех счетчиков адреса считывания с первого по четвертый соответственно, выходы первого шинного мультиплексора соединены с группой четырнадцатых вводов ПЛИС внутри ПЛИС, выходы второго шинного мультиплексора соединены с группой пятнадцатых вводов ПЛИС внутри ПЛИС, выходы третьего шинного мультиплексора соединены с группой шестнадцатых вводов ПЛИС внутри ПЛИС, выходы четвертого шинного мультиплексора соединены с группой семнадцатых вводов ПЛИС внутри ПЛИС.
На фиг. 1 представлена структурная схема блока преобразования интервалов времени.
На фиг. 2 представлена временная диаграмма преобразования интервалов времени в цифровой код и запись данных в запоминающие устройства.
Принятые обозначения на фиг. 1:
«Инф. Вых.» - выходная информационная шина;
«Считывание» - шина «Считывание»;
«Инф. Вх.» - входная информационная шина;
«Пуск» - шина «Пуск»;
1 - генератор импульсов;
2 - программируемая логическая интегральная схема ПЛИС, в ПЛИС используются вводы: 1-й, 2-й, 3-й, 4-й, 5-й, 6-й, 7-й, 8-й, 9-й, 10-й, 11-й, 12-й и 13-й, используются группы вводов: 14-е, 15-е, 16-е и 17-е вводы;
3, 4, 5, 6 - запоминающие устройства, каждое запоминающее устройство имеет совмещенный вход/выход данных, вход «W» сигнала записи, входы «A» адреса;
в ПЛИС содержаться:
7 - умножитель частоты, программируемый, имеет тактовый вход и выход. Увеличивает частоту в n=m/k раз, где m, k целые числа, доступные для программирования в ПЛИС. Формирует на выходе тактовую частоту;
8- первый регистр сдвига, кольцевой, сдвигает входные импульсы последовательно на четыре выхода: «1», «2», «3», «4»;
9- двоичный счетчик, имеет тактовый вход и два разряда, старший и младший;
10 - мультиплексор, переключает четыре входа на выход. Имеет четыре входа: «1», «2», «3», «4», и выход. Имеет два входа управления «Sel», первый (младший) и второй (старший), которые по состоянию лог. «00» соединяют первый вход «1» с выходом, по лог. «01» соединяют второй вход «2» с выходом, по лог. «10» соединяют третий вход «3» с выходом и по лог. «11» соединяют четвертый вход «4» с выходом;
11, 12, 13, 14 - ключи, двунаправленные, с тремя состояниями. Каждый ключ имеет: выход «1», вход «2», вход/выход «3». Первый вход управления включает направление передачи от входа/выхода «3» на выход «1». Второй вход управления включает направление передачи от входа «2» на вход/выход «3»;
15, 16, 17, 18 - регистры, синхронные, имеют вход «С» тактового импульса, вход «En» разрешения записи;
19, 20- первый и второй триггеры, синхронные, имеют вход «С» тактового импульса, вход «D»;
21, 25 - первый и второй элементы И, логические, двухвходовые;
24 - третий триггер, синхронный, имеет вход «С» тактового импульса, вход «S» установки в лог. «1»
22 - второй регистр сдвига, синхронный, кольцевой, имеет вход «С» тактового импульса, вход «Ld» синхронной загрузки, вход «In» синхронного сдвига, выход «Out» синхронного сдвига. Сдвигает лог. «1» на последовательных тактах с выхода «1» на выходы «2», «3», «4», далее одновременно с выходом «4» лог. «1» появляется на выходе «Out», поступает на вход «In», на следующем такте появляется на выходе «1» и процесс повторяется;
23 - третий регистр сдвига, синхронный, кольцевой, имеет вход «С» тактового импульса, вход «In» синхронного сдвига. Сдвигает на последовательных тактах лог. «1» с входа «In» на выходы «1», «2», «3», «4»;
26, 27, 28, 29 - D-триггеры, синхронные, имеют вход «С» тактового импульса, вход «En» разрешения записи, вход «D»;
30, 31, 32, 33 - счетчики адреса записи, многоразрядные, синхронные. Каждый счетчик имеет вход «С» тактового импульса, вход «En1» разрешения счета, вход «En2» разрешения такта; выход «Cout» переполнения. Производят двоичный счет, если лог. «1» присутствует на входах «En1» и «En2»;
34, 35, 36, 37 - S-триггеры, синхронные, имеют входы: «С» тактового импульса, «En» разрешения записи, «S» установки в лог. «1»;
38, 39, 40, 41 - шинные мультиплексоры, имеют многоразрядные первые входы, вторые входы, а также вход управления, который при состоянии лог. «0» соединяет первые входы с выходами, при лог. «1» соединяет вторые входы с выходами; при этом каждый шинный мультиплексор переключает многоразрядные первые или вторые входы на выходы. Мультиплексоры имеют вход управления «Sel», который по состоянию лог. «0» соединяет первые входы с выходами, по лог. «1» соединяет вторые входы с выходми;
42, 43, 44, 45 - счетчики адреса считывания, многоразрядные, имеют тактовый вход.
Блок преобразования интервалов времени (см. фиг. 1) содержит генератор 1 импульсов, четыре запоминающих устройства 3, 4, 5, 6, шину «Считывание», шину «Пуск», входную «Инф. Вх.» и выходную «Инф. Вых.» информационные шины, ПЛИС 2, выходная «Инф. Вых.» шина соединена с 1-м вводом ПЛИС 2, шина «Считывание» соединена со 2-м вводом ПЛИС 2, входная «Инф. Вх.» шина соединена с 3-м вводом ПЛИС 2, генератор 1 импульсов соединен с 4-м вводом ПЛИС 2, шина «Пуск» соединена с 5-м вводом ПЛИС 2, вход/выход данных первого запоминающего устройства 3 соединен с 6-м вводом ПЛИС 2, вход «W» записи запоминающего устройства 3 соединен с 10-м вводом ПЛИС 2, входы «А» адреса запоминающего устройства 3 соединены с группой 14-х вводов ПЛИС 2, вход/выход данных второго запоминающего устройства 4 соединен с 7-м вводом ПЛИС 2, вход «W» записи запоминающего устройства 4 соединен с 11-м вводом ПЛИС 2, входы «А» адреса запоминающего устройства 4 соединены с группой 15- вводов ПЛИС 2, вход/выход данных третьего запоминающего устройства 5 соединен с 8-м вводом ПЛИС 2, вход «W» записи запоминающего устройства 5 соединен с 12-м вводом ПЛИС 2, входы «А» адреса запоминающего устройства 5 соединены с группой 16-х вводов ПЛИС 2, вход/выход данных четвертого запоминающего устройства 6 соединен с 9-м вводом ПЛИС 2, вход «W» записи запоминающего устройства 6 соединен с 13-м вводом ПЛИС 2, входы «А» адреса запоминающего устройства 6 соединены с группой 17-х вводов ПЛИС 2, 1-й ввод ПЛИС 2 соединен внутри ПЛИС 2 с выходом мультиплексора 10, первый вход «1» мультиплексора 10 соединен с выходом «1» первого ключа 11, вход/выход «3» ключа 11 соединен с 6-м вводов ПЛИС 2 внутри ПЛИС 2, второй вход «2» мультиплексора 10 соединен с выходом «1» второго ключа 12, вход/выход «3» ключа 12 соединен с 7-м вводом ПЛИС 2 внутри ПЛИС 2, третий вход «3» мультиплексора 10 соединен с выходом «1» третьего ключа 13, вход/выход «3» ключа 13 соединен с 8-м вводом ПЛИС 2 внутри ПЛИС 2, четвертый вход «4» мультиплексора 10 соединен с выходом «1» четвертого ключа 14, вход/выход «3» ключа 14 соединен с 9-м вводом ПЛИС 2 внутри ПЛИС 2, два входа «Sel» управления мультиплексора 10 соединены с двумя разрядами двоичного счетчика 9 - первый вход управления с младшим разрядом, второй вход управления со старшим разрядом, тактовый вход двоичного счетчика 9 соединен со 2-м вводом ПЛИС 2 внутри ПЛИС 2 и с тактовым входом первого регистра 8 сдвига, выходы «1», «2», «3», «4» регистра 8 сдвига соединены с первыми входами управления ключей 11, 12, 13, 14 соответственно и с тактовыми входами счетчиков 42, 43, 44, 45 адреса считывания соответственно; 3-й ввод ПЛИС 2 соединен внутри ПЛИС 2 с входом регистров 15, 16, 17, 18, выход регистров 15, 16, 17, 18 соединен с входом «2» ключей 11, 12, 13, 14 соответственно, 4-й ввод ПЛИС 2 соединен внутри ПЛИС 2 с тактовым входом умножителя 7 частоты, выход умножителя 7 частоты соединен с тактовым входом «С» (входом синхронизации) триггеров 19, 20, 24, регистров 22, 23 сдвига, регистров 15, 16, 17, 18, D-триггеров 26, 27, 28, 29, счетчиков 30, 31, 32, 33 адреса записи и S-триггеров 34, 35, 36, 37; 5-й ввод ПЛИС 2 соединен внутри ПЛИС 2 с D-входом первого триггера 19, выход которого соединен с D-входом второго триггера 20 и с первым входом первого логического элемента 21 И, второй вход элемента 21 И соединен с инверсным выходом триггера 20, выход элемента 21 И соединен с входом «Ld» загрузки второго регистра 22 сдвига, выход «Out» сдвига которого соединен с его входом «In» сдвига, выходы «1», «2», «3», «4» регистра 22 сдвига соединены с входами «En» разрешения записи регистров 15, 16, 17, 18 соответственно, первый выход «1» регистра 22 сдвига соединен с S-входом третьего триггера 24, выход которого соединен с первым входом второго логического элемента 25 И, выход которого соединен с входом «D» первого D-триггера 26, выход которого соединен с входом «D» второго D-триггера 27, выход D-триггера 27 соединен с входом «D» третьего D-триггера 28, инверсный выход D-триггера 27 соединен со вторым входом элемента 25 И, выход D-триггера 28 соединен с входом «D» четвертого D-триггера 29, инверсный выход D-триггера 26 соединен с 10-м вводом ПЛИС 2 внутри ПЛИС 2, инверсный выход D-триггера 27 соединен с 11-м вводом ПЛИС 2 внутри ПЛИС 2, инверсный выход D-триггера 28 соединен с 12-м вводом ПЛИС 2 внутри ПЛИС 2, инверсный выход D-триггера 29 соединен с 13-м вводом ПЛИС 2 внутри ПЛИС 2, четвертый выход «4» регистра 22 сдвига соединен с входом «In» сдвига третьего регистра 23 сдвига, выходы «1», «2», «3», «4» регистра 23 сдвига соединены с входами «En2» разрешения такта счетчиков 30, 31, 32, 33 адреса записи и с входами «En» разрешения записи S-триггеров 34, 35, 36, 37 соответственно, выходы «Cout» переполнения счетчиков 30, 31, 32, 33 адреса записи соединены с входами «S» S-триггеров 34, 35, 36, 37 соответственно, инверсный выход первого S-триггера 34 соединен с входом «En1» разрешения счета первого счетчика 30 адреса записи, с входом «En» разрешения записи D-триггера 26, со вторым входом управления ключа 11 и с входом «Sel» управления первого шинного мультиплексора 38, инверсный выход второго S-триггера 35 соединен с входом «En1» разрешения счета второго счетчика 31 адреса записи, с входом «En» разрешения записи D-триггера 27, со вторым входом управления ключа 12 и с входом «Sel» управления второго шинного мультиплексора 39, инверсный выход третьего S-триггера 36 соединен с входом «Cnt_en» разрешения счета третьего счетчика 33 адреса записи, с входом «En» разрешения записи D-триггера 28, со вторым входом управления ключа 13 и с входом «Sel» управления третьего шинного мультиплексора 40, инверсный выход четвертого S-триггера 37 соединен с входом «En1» разрешения счета четвертого счетчика 33 адреса записи, с входом «En» разрешения записи D-триггера 29, со вторым входом управления ключа 14 и с входом «Sel» управления четвертого шинного мультиплексора 41, выходы счетчиков 30, 31, 32, 33 адреса записи соединены поразрядно с первыми входами шинных мультиплексоров 38, 39, 40, 41 соответственно, вторые входы шинных мультиплексоров 38, 39, 40, 41 соединены поразрядно с выходами счетчиков 42, 43, 44, 45 адреса считывания соответственно, выходы шинного мультиплексора 38 соединены с группой 14-х вводов ПЛИС 2 внутри ПЛИС 2, выходы шинного мультиплексора 39 соединены с группой 15-х вводов ПЛИС 2 внутри ПЛИС 2, выходы шинного мультиплексора 40 соединены с группой 16-х вводов ПЛИС 2 внутри ПЛИС 2, выходы шинного мультиплексора 41 соединены с группой 17-х вводов ПЛИС 2 внутри ПЛИС 2.
-6
Генератор 1 импульсов служит для генерации высокостабильных импульсов синхронизации, которые поступают на ввод 4 (тактовый) ПЛИС 2. Генератор 1 импульсов может быть выполнен, например, на микросхеме B525CEM3 100.000MHZ фирмы BFC (Brookdale Frequency Controls), которая генерирует прямоугольные импульсы частотой 100МГц с относительной стабильностью 5×10.
Шина «Пуск» служит для приема пускового импульса, относительно которого измеряются интервалы времени.
Входная информационная шина «Инф. Вх.» служит для приема входных импульсов, фиксирующих интервалы времени относительно пускового импульса. Блок содержит один канал преобразования интервалов времени, т. к. входная информационная шина одна. В канале может быть множество входных импульсов и, следовательно, интервалов времени.
Шина «Считывание» служит для приема сигналов считывания информации из запоминающих устройств 3, 4, 5, 6.
Выходная информационная шина «Инф. Вых.» служит для вывода цифровой информации об измеренных интервалах времени. Выходная информационная шина выводит последовательные данные в виде логических лог. «0» и лог. «1» по одному каналу.
В ПЛИС 2 спроектированы с помощью программных средств умножитель 7 частоты, первый регистр 8 сдвига, двоичный счетчик 9, мультиплексор 10, четыре ключа 11, 12, 13, 14, четыре регистра 15, 16, 17, 18, первый 19, второй 20 и третий 24 триггеры, первый 21 и второй 25 элемент И, второй 22 и третий 23 регистр сдвига, четыре D-триггера 26, 27, 28, 29, четыре счетчика 30, 31, 32, 33 адреса записи, четыре S-триггера 34, 35, 36, 37, четыре шинных мультиплексора 38, 39, 40, 41, четыре счетчика 42, 43, 44, 45 адреса считывания. ПЛИС 2 может быть, например, программируемой логической интегральной схемой EP3C16F484C6 семейства Cyclone III фирмы ALTERA, имеющей следующие ресурсы: 15,5 тыс. логических элементов, 504 Кбит памяти, двоичные умножители и сумматоры, выделенные тактовые линии синхронизации, четыре умножителя частоты и четыре тактовых ввода, общее количество вводов 484. Максимальная частота переключения триггеров и счетчиков в ПЛИС 2 - 330 МГЦ. Программа конфигурирования ПЛИС 2 хранится, например, в микросхеме Flash памяти EPCS16SI8 фирмы ALTERA, содержащей 16 Кбит памяти (Flash память на фиг. 1 не показана).
Умножитель 7 частоты служит для увеличения тактовой частоты, производит умножение частоты генератора 1 импульсов на программируемый коэффициент, например, 5/2. Тактовые импульсы частотой 250 МГц с выхода умножителя 7 распространяются внутри ПЛИС 2 по выделенным линиям синхронизации на тактовые входы регистров 15, 16, 17, 18, триггеров 19, 20, 24, регистров 22, 23 сдвига, D-триггеров 26, 27, 28, 29, счетчиков 30, 31, 32, 33 адреса записи, S-триггеров 34, 35, 36, 37.
Первый регистр 8 сдвига служит для последовательного распределения сигналов считывания, поступающих через 2-й ввод ПЛИС 2 с шины «Считывание», на первые входы управления четырех ключей 11, 12, 13, 14 и тактовые входы четырех счетчиков 42, 43, 44, 45 адреса считывания.
Четыре ключа 11, 12, 13, 14 служат для передачи данных из регистров 15, 16, 17, 18 в запоминающие устройства 3, 4, 5, 6 при записи информации и для передачи данных из запоминающих устройств 3, 4, 5, 6 на входы мультиплексора 10 при считывании информации. Сигналы с выходов регистра 8 сдвига включают ключи 11, 12, 13, 14 по первому входу управления на передачу данных из запоминающих устройств 3, 4, 5, 6 на входы мультиплексора 10. Сигналы S-триггеров 34, 35, 36, 37 включают ключи 11, 12, 13, 14 по второму входу управления на передачу данных из регистров 15, 16, 17, 18 на вход/выход запоминающих устройств 3, 4, 5, 6.
Мультиплексор 10 служит для переключения (мультиплексирования) данных, поступающих из запоминающих устройств 3, 4, 5, 6, на шину «Инф. Вых.» при считывании информации. Двоичный счетчик 9 управляет мультиплексором 10 синхронно с регистром 8 сдвига следующим образом. Сигнал считывания, прошедший на k-й (k от 1 до 4) выход регистра 8 сдвига, открывает k-й ключ, который соединяет вход/выход k-го запоминающего устройства с k-м входом мультиплексора 10, и переключает k-й вход мультиплексора 10 на шину «Инф. Вых.». И далее по кольцу, благодаря управлению мультиплексором 10 двоичным кодом, сосчитываемым в двоичном счетчике 9 по сигналам считывания.
Первый триггер 19, первый элемент 21 И, второй триггер 20 служат для привязки пускового импульса к тактовом импульсам путем выделения первого такта (периода тактовой частоты) следующего после фронта пускового импульса. Этот такт - такт загрузки, равный по длительности периоду тактовых импульсов, позволяет синхронно загрузить лог. «1» во второй регистр 22 сдвига.
Второй регистр 22 сдвига служит для последовательного распределения тактов, начиная со второго такта, на входы «En» разрешения записи регистров 15, 16, 17, 18.
Регистры 15, 16, 17, 18 служат для удержания входных данных в течение четырех тактов, необходимых для записи в запоминающие устройства 3, 4, 5, 6.
Третий регистр 23 сдвига служит для последовательного распределения тактов, начиная с шестого такта, на входы «En2» разрешения такта счетчиков 30, 31, 32, 33 адреса записи. Таким образом, смена адреса ячеек памяти в запоминающих устройствах 3, 4, 5, 6 происходит в конце времени удержания входных данных.
Третий триггер 24, второй элемент 25 И, D-триггеры 26, 27, 28, 29 служат для формирования сигнала записи на запоминающие устройства 3, 4, 5, 6 длительностью, равной двум тактам, и расположенном внутри цикла записи, равном четырем тактам, что позволяет надежно записать входную информацию, поскольку сигнал записи находится гарантированно в пределах удержания адреса и данных.
Счетчики 30, 31, 32, 33 адреса записи служат для счета последовательного адреса ячеек памяти запоминающих устройств 3, 4, 5, 6 при записи данных.
S-триггеры 34, 35, 36, 37 останавливают запись входных данных в запоминающие устройства 3, 4, 5, 6 после переполнения ячеек памяти. Срабатывая по сигналу «Cout» переполнения, S-триггеры 34, 35, 36, 37 блокируют по входу «En1» разрешения счета счетчики 30, 31, 32, 33 адреса записи, также выключают ключи 11, 12, 13, 14, прекращая передачу данных в запоминающие устройства 3, 4, 5, 6, останавливают формирование сигналов записи в D-триггерах 26, 27, 28, 29 по входу «En», переключают шинные мультиплексоры 38, 39, 40, 41 со счетчиков 30, 31, 32, 33 адреса записи на счетчики 42, 43, 44, 45 адреса считывания, блокируют изменение собственного состояния.
Счетчики 42, 43, 44, 45 адреса считывания служат для счета последовательного кода адреса ячеек памяти при считывании данных из запоминающих устройств 3, 4, 5, 6.
Все элементы с 1 по 45, а также шины: «Инф. Выход.», «Считывание», «Инф. Вход.», «Пуск» установлены и выполнены на общей печатной плате поверхностным или объемным монтажом. Связи между элементами и шины выполнены печатным способом на общей печатной плате. Печатная плата на чертеже не показана.
Блок преобразования интервалов времени работает следующим образом.
Импульсы генератора 1 поступают на 4-й ввод ПЛИС 2, далее внутри ПЛИС 2 они проходят на тактовый вход умножителя 7 частоты. Частота импульсов в умножителе 7 умножается на программируемый коэффициент. Тактовые импульсы с выхода умножителя 7 распространяются внутри ПЛИС 2 на тактовые входы триггеров 19, 20, 24, регистров 22, 23 сдвига, регистров 15, 16, 17, 18, D-триггеров 26, 27, 28, 29, счетчиков 30, 31, 32, 33 адреса записи, S-триггеров 34, 35, 36, 37. Тактовые импульсы синхронизируют работу триггеров, регистров и счетчиков внутри ПЛИС 2, исключая сбои на высокой частоте, когда сказываются задержки распространения импульсов внутри ПЛИС 2.
Первоначально триггеры 19, 20, 24, регистры 8, 22, 23 сдвига, двоичный счетчик 9, регистры 15, 16, 17, 18, D-триггеры 26, 27, 28, 29, счетчики 30, 31, 32, 33 адреса записи, S-триггеры 34, 35, 36, 37, счетчики 42, 43, 44, 45 адреса считывания установлены в состояние лог. «0» на прямом выходе и лог. «1» на инверсном выходе.
Преобразование интервалов времени в цифровой код и запись цифрового кода в запоминающие устройства происходит следующим образом. В произвольный момент времени на шину «Пуск» поступает пусковой импульс лог. «1» с фронтом на перепаде с лог. «0» на лог. «1». Пусковой импульс через 5-й ввод ПЛИС 2 проходит на D-вход триггера 19. Тактовый импульс, первый после фронта пускового импульса, записывает с небольшой задержкой лог. «1» в триггер 19. Уровень лог. «1» с выхода триггера 19 передается на D-вход триггера 20 и на первый вход логического элемента 21 И. Второй тактовый импульс записывает с небольшой задержкой лог. «1» в триггер 20. Уровень лог. «0» с инверсного выхода триггера 20 передается на второй вход элемента 21 И. На выходе элемента 21 И формируется импульс лог. «1» длительностью в один период тактовой частоты и расположенный с небольшой задержкой между фронтами первого и второго тактовых импульсов. На Фиг. 2 показан импульс «Такт 1» на входе «Ld» загрузки регистра 22 сдвига, поступивший с выхода элемента 21 И. Второй тактовый импульс, фронт которого находится в пределах длительности импульса «Такт 1» (второй тактовый импульс подсвечен «Тактом 1»), с небольшой задержкой загружает лог. «1» в регистр 22 сдвига. На первом выходе регистра 22 сдвига появляется лог. «1». Следующие тактовые импульсы с третьего по пятый сдвигают с небольшой задержкой лог. «1» последовательно с первого на четвертый выход регистра 22 сдвига. Лог. «1» появляется одновременно на четвертом выходе и на выходе «Out» сдвига, с которого передается на вход «In» сдвига регистра 22 сдвига. Шестой тактовый импульс сдвигает лог. «1» с входа «In» сдвига на первый выход регистра 22 сдвига и процесс повторяется по кольцу. На Фиг. 2 показаны импульсы «Такт 2», «Такт 3», «Такт 4», «Такт 5» и т. д. (такты) на выходах регистра 22 сдвига, которые поступают на входы «En» разрешения записи регистров 15, 16, 17, 18 соответственно. Тактовые импульсы, фронты которых находятся в пределах длительности соответствующих тактов (тактовые импульсы подсвеченные тактами), записывают данные в регистры 15, 16, 17, 18. На вход регистров 15, 16, 17, 18 поступают данные с информационной шины «Инф. Вх.» через 3-й ввод ПЛИС 2. Данные на шине «Инф. Вх.» представляют собой чередующиеся последовательности лог. «0» и лог. «1», которые означают отсутствие (лог. «0») или наличие (лог. «1») входного импульса. Перепады уровня с лог. «0» на лог. «1» фиксируют интервалы времени на шине «Инф. Вх.» относительно пускового импульса. Последовательности лог. «0» и лог. «1» на шине «Инф. Вх.» поступают через 3-й ввод ПЛИС 2 на входы одновременно четырех регистров 15, 16, 17, 18. Тактовые импульсы, начиная с третьего тактового импульса, записывают лог. «0» или лог. «1» в регистры 15, 16, 17, 18. Регистры 15, 16, 17, 18 хранят данные в течение четырех тактов со сдвигом на один такт относительно друг друга, начиная с «Такта 3». Данные о состоянии шины «Инф. Вх.» за четыре такта, распараллеливаются на четыре регистра 15, 16, 17, 18, каждый из которых записывает данные о состоянии шины «Инф. Вх.» за один такт. На Фиг. 2 изображен импульс лог. «1» на шине «Инф. Вх.» в произвольный момент времени. Десятый тактовый импульс, первый после фронта импульса на шине «Инф. Вх.», записывает лог. «1» в регистр 18, потому что на входе «En» разрешения записи регистра 18 присутствует «Такт 9», дающий разрешение на запись десятому тактовому импульсу (десятый тактовый импульс подсвечен «Тактом 9»). Регистр 18 хранит лог. «1» в течение четырех тактов, начиная с «Такта 10». Данные из четырех регистров 15, 16, 17, 18 поступают через четыре открытых ключа 11, 12, 13, 14 на 6-й, 7-й, 8-й, 9-й ввод ПЛИС 2 и далее передаются на вход/выход четырех запоминающих устройств 3, 4, 5, 6 соответственно. Ключи 11, 12, 13, 14 первоначально открыты в направлении передачи данных от входа «2» на вход/выход «3», т. к. на втором управляющем входе ключей первоначально установлен уровень лог. «1» с инверсных выходов S-триггеров 34, 35, 36, 37. Импульсы с четвертого выхода регистра 22 сдвига поступают на вход «In» сдвига регистра 23 сдвига. Тактовые импульсы, начиная с шестого, по кругу сдвигают лог. «1» на четыре выхода регистра 23 сдвига. Импульсы на выходе регистра 23 сдвига повторяют импульсы на выходе регистра 22 сдвига со сдвигом на четыре такта, начиная с шестого такта. Импульсы с четырех выходов регистра 23 сдвига передаются на вход «En2» разрешения такта четырех счетчиков 30, 31, 32, 33 адреса записи соответственно. На входе «En1» разрешения счета счетчиков 30, 31, 32, 33 адреса записи первоначально установлен уровень лог. «1» с инверсных выходов S-триггеров 34, 35, 36, 37 соответственно. Счетчики 30, 31, 32, 33 адреса записи производят счет адреса ячеек памяти, начиная с нулевого, прибавляя единицу к предыдущему раз в четыре такта. Счетчики 30, 31, 32, 33 адреса записи срабатывают по тем же тактовым импульсам, что и регистры 15, 16, 17, 18, но со сдвигом на цикл, то есть адрес записи меняется в конце цикла хранения данных в регистрах 15, 16, 17, 18. Адреса записи со счетчиков 30, 31, 32, 33 адреса записи поступают через первые входы шинных мультиплексоров 38, 39, 40, 41 на входы «A» адреса запоминающих устройств 3, 4, 5, 6 соответственно. Шинные мультиплексоры 38, 39, 40, 41 первоначально установлены на передачу данных с первых входов, так как на входе «Sel» управления установлен уровень лог. «1» с инверсного выхода S-триггеров 34, 35, 36, 37 соответственно. На Фиг. 2 видно, что фронт импульса на шине «Инф. Вх.» поступил в «Такте 9». Поэтому интервал времени, фиксируемый фронтом импульса на шине «Инф. Вх.» относительно фронта импульса на шине «Пуск», дискретно равен по длительности девяти тактам. На Фиг. 2 показано, что лог. «1», фиксирующая фронт импульса на шине «Инф. Вх.», удерживается в четвертом регистре 18 одновременно с удержанием первого адреса в четвертом счетчике 33. Это означает, что лог. «1» будет записана в ячейку памяти четвертого запоминающего устройства 6 по первому адресу счетчика 33. По установленному порядку первый регистр 15 удерживает по нулевому адресу первого счетчика 30 данные (лог. «0» или лог. «1» на шине «Инф. Вх.»), фиксируемые в «Такте 2», по первому адресу удерживает данные, фиксируемые в «Такте 6» и т. д. Соответственно четвертый регистр 18 удерживает по нулевому адресу четвертого счетчика 33 данные, фиксируемые в «Такте 5», а по первому адресу удерживает данные, фиксируемые в «Такте 9». Следовательно, на Фиг. 2 лог. «1» в четвертом регистре 18 по первому адресу четвертого счетчика 33 адреса записи хранит информацию о длительности поступившего интервала времени.
Импульс с первого выхода регистра 22 сдвига поступают на S-вход триггера 24. Третий тактовый импульс, находясь в пределах длительности импульса «Такт 2», устанавливает с небольшой задержкой лог. «1» на выходе триггера 24. Уровень лог. «1» передается на первый вход логического элемента 25 И, с выхода которого поступает на D-вход D-триггера 26. Четвертый тактовый импульс с небольшой задержкой записывает лог. «1» в D-триггер 26. Уровень лог. «1» передается на D-вход D-триггера 27. Пятый тактовый импульс с небольшой задержкой записывает лог. «1» в D-триггер 27. Уровень лог. «1» передается на D-вход D-триггера 28. Одновременно лог. «0» с инверсного выхода D-триггера 28 передается на второй вход логического элемента 25 И. На выходе логического элемента 25 И устанавливается лог. «0», который передается на D-вход D-триггера 26. Шестой тактовый импульс устанавливает лог. «0» на выходе D-триггера 26. Таким образом, на выходе D-триггера 26 формируется сигнал лог. «1» продолжительности от четвертого до шестого тактового импульса. На выходах D-триггеров 26, 27, 28, 29 формируются сигналы лог. «1» длительностью два такта с последовательным сдвигом на один такт относительно друг друга и периодом повторения четыре такта. Сигналы лог. «0» с инверсных выходов D-триггеров 26, 27, 28, 29 поступают на входы «W» записи (сигналы записи) запоминающих устройств 3, 4, 5, 6 соответственно. Сигналы записи длительностью два такта, находясь в середине четырехтактного цикла удержания данных и адреса, обеспечивают надежную запись в запоминающие устройства. На Фиг. 2 видно, что уровень лог. 1 в регистре 18, фиксирующий интервал времени на шине «Инф. Вх.», записывается сигналом записи из D-триггера 29 в запоминающее устройство 6 по первому адресу в счетчике 33 адреса записи.
При переполнении счетчиков 30, 31, 32, 33 адреса записи импульс переполнения с выходов «Cout» переполнения передается на S-входы S-триггеров 34, 35, 36, 37 соответственно. Тактовые импульсы (в пределах длительности импульсов переполнения) устанавливают на инверсных выходах S-триггеров 34, 35, 36, 37 уровень лог. «0», который блокирует счетчики 30, 31, 32, 33 адреса записи, D-триггеры 26, 27, 28, 29, переводит ключи 11, 12, 13, 14 в третье состояние (выключает ключи), переключает входы шинных мультиплексоров 38, 39, 40, 41. Данные, адреса записи и сигналы записи прекращают поступать на запоминающие устройства 3, 4, 5, 6. Запись останавливается. Запоминающие устройства 3, 4, 5, 6 хранят записанную информацию об интервалах времени.
Считывание данных о преобразованных интервалах времени происходит следующим образом. Импульсы считывания поступают на шину «Считывание» и через 2-й ввод ПЛИС 2 проходят внутри ПЛИС 2 на тактовый вход первого регистра 8 сдвига и на тактовый сход двоичного счетчика 9. Регистр 8 сдвига сдвигает импульсы считывания последовательно на четыре выхода по кольцу. Импульсы с четырех выходов регистра 8 сдвига поступают на первые входы управления ключей 11, 12, 13, 14 соответственно. Ключи 11, 12, 13, 14 включаются из третьего состояния в состояние передачи данных с входа/выхода «3» на выход «1» на длительность каждого импульса считывания. На вход/выход ключей 11, 12, 13, 14 через 6-й, 7-й, 8-й, 9-й ввод ПЛИС 2 внутри ПЛИС 2 соответственно данные передаются из запоминающих устройств 3, 4, 5, 6. Импульсы с четырех выходов регистра 8 сдвига также поступают на тактовые входы счетчиков 42, 43, 44, 45 адреса считывания соответственно. Импульсы считывания производят счет адреса считывания по заднему фронту (в конце импульса). Адреса считывания с выходов счетчиков 42, 43, 44, 45 адреса считывания через вторые входы шинных мультиплексоров 38, 39, 40, 41 и через группы 14-х, 15-х, 16-х, 17-х вводов ПЛИС 2 внутри ПЛИС 2 поступают на входы «А» адреса запоминающих устройств 3, 4, 5, 6 соответственно. В шинных мультиплексорах 38, 39, 40, 41 включены вторые входы, так как на входе «Sel» управления установлен уровень лог. «0», поступивший после окончания записи данных в запоминающие устройства 3, 4, 5, 6 с инверсного выхода S-триггеров 34, 35, 36, 37. Запоминающие устройства 3, 4, 5, 6 при смене адреса выставляют на вход/выход данные из следующей ячейки памяти. Данные из запоминающих устройств 3, 4, 5, 6 через открытые ключи 11, 12, 13, 14 поступают на 1-й, 2-й, 3-й, 4-й входы мультиплексора 10 соответственно. Мультиплексор 10 управляется двоичным счетчиком 9, двухразрядный код которого подается на два входа управления мультиплексора 10. Мультиплексор 10 переключает вход на каждый импульс считывания последовательно по кольцу. Выход мультиплексора соединен внутри ПЛИС 2 с 1-м вводом ПЛИС 2, который соединен с шиной «Инф. Вых.». Данные из запоминающих устройств 3, 4, 5, 6 по текущему адресу, начиная с нулевого адреса, последовательно считываются на шину «Инф. Вых.» в течение четырех импульсов считывания, потом в счетчиках 42, 43, 44, 45 адреса считывания адрес увеличивается на единицу, и считывается следующая порция данные. Данные в виде лог. «0» и лог. «1» из четырех запоминающих устройств 3, 4, 5, 6 выводятся в одну последовательность на шине «Инф. Вых.». Порядковый номер импульса считывания, в котором сменился уровень лог. «0» на лог. «1» на шине «Инф. Вых.», определяет величину преобразованного интервала времени. Величина преобразованного интервала времени пропорциональна порядковому номеру импульса считывания, умноженному на период тактовой частоты.
В предложенном блоке преобразования интервалов времени применен для примера коэффициент 5/2 умножения частоты генератора 1 импульсов. Блок работает на тактовой частоте 250 МГц в 2,5 раз большей, чем прототип при той же частоте генератора 1 импульсов. Быстродействие предложенного блока преобразования интервалов времени повышено без увеличения частоты генератора 1 импульсов.
Таким образом, достигается заявленный технический результат, а именно: повышение быстродействия устройства без увеличения частоты генератора импульсов.