Изобретение относится к способам кодирования двоичной информации с помощью времяимпульсных кодов, в частности, для передачи по цепям питания, а также к способам декодирования информации, закодированной такими времяимпульсными кодами.
При передаче информации по линиям электропитания используют различные методы кодирования. Так, в патенте ЕПВ N 0088862, кл. H 04 B 3/54, опублик. 1983 импульсные сигналы по линии низковольтной сети энергоснабжения передаются с помощью меандрового сигнала, в котором при смене значения передаваемого разряда происходит перескок фазы, приводящий к появлению интервала одного уровня вдвое большей ширины. Такой сигнал требует значительно большей полосы пропускания, чем полоса передаваемого сообщения, а отношение усредненных длительностей сигнала на разных уровнях близко к единице. Все это делает такой сигнал неудобным для передачи сообщений по цепям постоянного питания.
Гораздо удобнее для этого воспользоваться кратковременными по сравнению с периодом повторения передаваемых разрядов понижениями напряжения в моменты начала передаваемых разрядов (см. патент ЕПВ N 0092284 кл. H 04 B 3/54, опублик. 1983). Такие понижения напряжения в начале, "например, единичных разрядов передаваемой двоичной информации могут быть выбраны достаточно короткими, чтобы они не влияли на работу нагрузки, запитываемой такой линией электропитания. Однако в такой системе требуется каким-то образом (например, по дополнительной линии связи) передавать синхросигналы для предупреждения сбоя в передаче информации.
В устройстве для передачи кодовых сообщений по авт. св. СССР N 920811, кл. G 08 C 19/28, опублик. 1982 каждое слово передаваемого сообщения дополняется в своем начале реперным сигналом, обеспечивающим пословную синхронизацию. Однако для обнаружения ошибки в разряде требуется использование специальных кодов с избыточными разрядами, что резко усложняет декодер. Для передачи по цепям электропитания этот сигнал также малопригоден.
Проще всего обеспечить способность кода обнаруживать ошибку в разряде без увеличения числа разрядов с помощью времяимпульсного кода (см. авт. св. СССР N 1562948, кл. G 08 C 19/24, опублик. 1990 и N 1658188, кл. G 08 C 19/24, опублик. 1991). Каждый разряд этого кода состоит из двух неравных частей с различными двоичными уровнями. Переход с одного уровне на другой осуществляется в первой либо во второй половине разряда в зависимости от того, какое значение двоичной информации - 0 или 1 - передается в этом разряде. Обратный переход происходит в начале следующего разряда. Суммарная длительность обеих частей разряда постоянна, чем обеспечивается тактовая синхронизация. При декодировании определяется уровень в середине разряда.
Однако данный способ передачи информации работает лишь с периодическими сигналами, имеющими заданный тактовый период. Кроме того, данный способ непригоден для передачи данных по сетям электропитания.
Задачей данного изобретения является разработка способов кодирования и декодирования информации, которые позволили бы передавать информацию как в синхронном, так и в асинхронном режимах с обнаружением ошибки в любом разряде без использования избыточных разрядов и при этом были бы применимы для передачи информации по цепям электропитания.
Для получения указанного технического результата по первому варианту изобретения при способе кодирования двоичной информации, заключающемся в представлении двоичного значения V каждого разряда двоичной информации в виде пары временных интервалов T(1) и T(2) T(1)и T(2) (T(1)≠T(2)), соотношение между длительностями которых в каждой паре определяется двоичным значением кодируемого разряда двоичной информации, по крайней мере одну из n (n≥1) пар временных интервалов T(1) и T(2) дополняют таким временным интервалом T(3), что T(3)≠T(1); T(3)≠T(2).
Соотношение между длительностями временных интервалов T(1) и T(2) может, в частности, определяться из условия:
T(1)>T(2) при V = A,T(1)<T(2) при V = ~A, ,
где
A - логическая константа ("0" или "1"),
~A - инверсия A.
Временной интервал T(3) может размещаться как перед парой временных интервалов T(1) и T(2), так и после нее, либо в паре между этими интервалами.
Временной интервал T(3) может удовлетворять одному из трех условий:
T(3)>max(T(1),T(2)),
T(3)<min(T(1),T(2)),
или
min(T(1),T(2))<T(3)<max(T(1),T(2)),
причем выполнение соответствующего условия при изменениях длительностей временных интервалов обеспечивается по крайней мере в пределах двух следующих друг за другом групп по n (n≥1) кодируемых разрядов.
В частном случае n = 1 временной интервал T(3) добавляют в каждую пару временных интервалов T(1) и T(2), при этом длительность временного интервала кодирования разряда двоичной информации Т может быть выбрана равной сумме длительностей временных интервалов T(1), T(2) и T(3); эта длительность может быть неизменной. Предпочтительно выбирать T(3) = T/2, min(T(1),T(2))=T/8, max(T(1),T(2)) = 3Т/8.
Измерения временных интервалов проводят между заранее заданными фронтами кодированного двоичного сигнала. При этом уровни кодированного двоичного сигнала могут чередоваться при переходе между смежными временными интервалами.
Кодированный сигнал может быть в каждом разряде дополнен еще одним временным интервалом T(4), которому вместе с несмежным с ним одним из временных интервалов T(1), T(2) и T(3) ставят в соответствие один и тот же заданный уровень кодированного двоичного сигнала, а остальным временным интервалам - другой его уровень.
В предпочтительном варианте уровень кодированного двоичного сигнала сохраняют одним и тем же в пределах по крайней мере части каждого из временных интервалов T(1), T(2) и T(3) и изменяют его на время τ между смежными временными интервалами. При этом длительность τ может либо входить, либо не входить в длительность смежных временных интервалов. Постоянный уровень кодированного двоичного сигнала может являться уровнем питания для по крайней мере одной нагрузки, а длительность τ изменений этого уровня выбирают так, чтобы работа запитываемых нагрузок при этом не нарушалась.
Способ декодирования двоичной информации в первом варианте сводится к выделению из времяимпульсного кода временных интервалов T(3), к выделению пар временных интервалов T(1) и T(2), находящихся в заданном временном положении относительно каждого временного интервала T(3), и к определению значений разрядов двоичной информации в зависимости от соотношения между длительностями временных интервалов T(1) и T(2) в каждой паре.
При этом, в частности, если выбрано T(3)>max(T(1),T(2)) или, более конкретно, n = 1, T(3)=T/2, min(T(1), T(2)) = T/8, max(T(1),T(2)) = 3Т/8, выделение временных интервалов T(3) осуществляется по признаку T(3)>max(T(1), T(2)) по отношению к временным интервалам T(1) и T(2), находящимся в заданном временном положении относительно каждого временного интервала T(3), а двоичное значение V разряда двоичной информации, кодируемого данной группой временных интервалов T(1), T(2) и T(3), может определяться в зависимости от соотношения между длительностями временных интервалов T(1) и T(2) следующим образом:
V = A при T(1)>T(2),
V = ~A при T(1)<T(2),
где
A - логическая константа ("0" или "1"),
~A - инверсия A.
Для обеспечения лучшей достоверности декодирования в условиях возможных сбоев в канале передачи информации определяют число временных интервалов между выделенными (например, соседними) временными интервалами T(3) и информацию, закодированную длительностями соответствующих интервалов T(1) и T(2), считают правильно декодированной только при совпадении указанного числа временных интервалов с заранее заданным числом.
Для получения указанного выше технического результата по второму варианту изобретения при способе кодирования двоичной информации, заключающемся в представлении двоичного значения каждого разряда двоичной информации в виде пары временных интервалов T(1) и T(2) (T(1)≠T(2)), соотношение между длительностями которых в каждой паре определяется двоичным значением кодируемого разряда двоичной информации, увеличивают длительность заранее заданного одного из временных интервалов T(1) или T(2) по крайней мере в одной из n (n≥1) пар временных интервалов T(1) и T(2) на такую величину t, что длительность увеличенного интервала t' удовлетворяет соотношению t'> max(T(1), T(2)) для всех соотношений между длительностями временных интервалов T(1) и T(2) в каждой паре. При этом на величину t может быть увеличена длительность любого из временных интервалов T(1) или T(2) в паре.
Длительность увеличенного интервала t' может зависеть от значения кодируемого разряда даже при неизменной величине t, поскольку может изменяться второе слагаемое в сумме t'= t + T(i) (i = 1, 2).
В частном случае величина t может выбираться из условий t + max(T(1), T(2)) > 4min(T(1), T(2)) и t + min(T(1),T(2)) < 4max(T(1),T(2)) для всех соотношений между длительностями временных интервалов T(1) и T(2) в каждой паре.
Соотношение t'> max(T(1),T(2)) обеспечивают по крайней мере в пределах двух следующих друг за другом групп по n (n≥1) кодируемых разрядов.
В частном случае n = 1 увеличивают длительность заранее заданного одного из временных интервалов T(1) или T(2) в каждой паре и выбирают длительность суммарного временного интервала T(1) + T(2) + t равной длительности T временного интервала кодирования разряда двоичной информации; эта длительность может быть неизменной. Предпочтительно выбирать t = T/2, min(T(1),T(2)) = T/8, max(T(1),T(2)) = 3Т/8.
Измерения временных интервалов проводят между заранее заданными фронтами кодированного двоичного сигнала. При этом уровни кодированного двоичного сигнала могут чередоваться при переходе между смежными временными интервалами.
В предпочтительном варианте уровень кодированного двоичного сигнала сохраняют одним и тем же в пределах по крайней мере части каждого из временных интервалов t', T(1), T(2) и изменяют его на время τ между смежными временными интервалами. При этом длительность τ может либо входить, либо не входить в длительность смежных временных интервалов. Постоянный уровень кодированного двоичного сигнала может являться уровнем питания для по крайней мере одной нагрузки, а длительность τ изменений этого уровня выбирают так, чтобы работа запитываемый нагрузок при этом не нарушалась.
Способ декодирования двоичной информации во втором варианте сводится к выделению из времяимпульсного кода временных интервалов t', к выделению пар временных интервалов T(1) и T(2), находящихся в заданном временном положении относительно каждого временного интервала t' и к определению значений разрядов двоичной информации в зависимости от соотношения между длительностями временных интервалов T(1) и T(2) в каждой паре.
Выделение временных интервалов t' осуществляется по признаку t' > max(T(1),T(2)).
При этом, в частности, если выбрано t + max(T(1),T(2)) > 4min(T(1),T(2)) и t + min(T(1),T(2)) < 4max(T(1),T(2)) для всех соотношений между длительностями временных интервалов T(1) и T(2) в каждой паре или, более конкретно, n = 1, t = T/2, min(T(1), T(2)) = T/8, max(T(1),T(2)) = 3T/8, двоичное значение V кодированного разряда двоичной информации может определяться из условия
V = A при t + T(i) < 4Т(3 - i),
V = ~A при t + T(i) > 4Т(3 - i),
где
i = 1 или 2,
A - логическая константа ("0" или "1"),
~A - инверсия A.
Для обеспечения лучшей достоверности декодирования в условиях возможных сбоев в канале передачи информации определяют число временных интервалов между выделенными (например, соседними) временными интервалами t' и информацию, закодированную длительностями соответствующих интервалов T(1) и T(2), считают правильно декодированной только при совпадении указанного числа временных интервалов с заранее заданным числом.
На фиг. 1 - 5 показаны кодированные двоичные сигналы, полученные по первому варианту изобретения для разных случаев реализации; на фиг. 6 - кодированные двоичные сигналы, полученные по второму варианту изобретения для разных случаев реализации; на фиг. 9 - 11 примеры функциональных схем кодеров и декодеров, реализующих первый и второй варианты изобретения.
На фиг. 1 показан кодированный двоичный сигнал, полученный при одной из возможных реализаций первого варианта изобретения. На всех временных диаграммах (фиг. 1 - 8) двоичный сигнал представлен в виде периодического сигнала (с периодом T для передачи одного разряда в реализациях, показанных на фиг. 1 - 4, 6, 7 и с периодом T для передачи группы разрядов на фиг. 5, 8), что, однако, не является обязательным, как это будет показано ниже.
На фиг. 1 в каждом периоде T сигнал представлен тремя различными временными интервалами T(1), T(2) и T(3). Соотношение между длительностями интервалов T(1) и T(2) меняется в зависимости от двоичного значения V кодируемого разряда двоичной информации в соответствии с заранее принятым соглашением. Например, можно принять T(1) > T(2) при V = 0 и T(1) < T(2) при V = 1, как это показано на фиг. 1. При этом длительности максимального и минимального интервалов из пары T(1) и T(2), а также длительность интервала T(3) могут иметь постоянные значения для разных разрядов или значения, изменяющиеся от разряда к разряду по некоторому закону, например монотонно увеличивающиеся или уменьшающиеся либо изменяющиеся периодически, либо изменяющиеся случайным образом. Важно лишь, чтобы между длительностями временных интервалов соблюдались исходные соотношения (неравенства). Для вариантов реализации функциональных схем декодеров, описанных ниже, достаточно, чтобы исходные соотношения выполнялись в пределах по крайней мере двух соседних (последовательно принимаемых) разрядов - в этом случае возможно выделение из входной последовательности временных интервалов группы интервалов, соответствующей каждому отдельному разряду. На фиг. 1 изображен вариант выбора этих соотношений, когда T(3) > max(T(1),T(2)), хотя очевидно, что можно выбрать и другие соотношения (например, T(3) < min(T(1),T(2)) или min(T(1),T(2)) < T(3) < max(T(1),T(2))).
В равной мере не имеет особого значения взаимное расположение временных интервалов. На фиг. 1 дан пример, когда временной интервал T(3) предшествует паре временных интервалов T(1) и T(2), но он может располагаться и после этой пары, и между временными интервалами T(1) и T(2) одной пары.
В общем случае не обязательно, чтобы относительное расположение интервалов в группе, соответствующей одному разряду, не изменялось от разряда к разряду. Важно лишь, чтобы закон смены вариантов относительного расположения был известен и на кодирующей, и на декодирующей сторонах канала связи, использующего данный код. Однако с точки зрения простоты реализации схем кодера и декодера предпочтительно выбирать неизменное относительное расположение интервалов от разряда к разряду. Более того, для некоторых применений (в частности, когда прием информации начинается с разряда, номер которого заранее неизвестен) одинаковое относительное расположение интервалов может быть обязательным. Кроме того, при сохранении количества временных интервалов между интервалами T(3) (что может быть достигнуто, в частности, за счет неизменности относительного расположения интервалов от разряда к разряду) обеспечивается возможность контроля правильности приема каждого разряда информации непосредственно во время приема этого разряда путем простого подсчета указанного количества интервалов и сравнения его с заранее заданным числом.
На фиг. 1, как указано выше, принято следующее соответствие между двоичным значением кодируемого разряда и соотношением длительностей временных интервалов: T(1) > T(2) при V = 0 и T(1) < T(2) при V = 1. Возможно использование обратного соответствия: T(1) < T(2) при V = 0 и T(1) > T(2) при V = 1. В общем случае не обязательно, чтобы соответствие между двоичным значением кодируемого разряда и соотношением длительностей временных интервалов не изменялось от разряда к разряду. Важно лишь, чтобы закон смены вариантов этого соответствия был известен и на кодирующей, и на декодирующей сторонах канала связи, использующего данный код. Однако с точки зрения простоты реализации схем кодера и декодера предпочтительно выбирать неизменное соответствие между двоичным значением кодируемого разряда и соотношением длительностей временных интервалов от разряда к разряду. Более того, для некоторых применений (в частности, когда прием информации начинается с разряда, номер которого заранее неизвестен) одинаковое соответствие между двоичным значением кодируемого разряда и соотношением длительностей временных интервалов может быть обязательным.
Временной интервал T(3) выполняет роль синхронизирующего интервала для каждого кодируемого разряда. При декодировании проверяется соотношение длительностей в каждой тройке соседних интервалов входной последовательности интервалов. Для варианта реализации, изображенного на фиг. 1, при декодировании сначала выделяются тройки, в которых длительность первого интервала превосходит длительности двух следующих за ним интервалов. Очевидно, что этому условию удовлетворяют те и только те тройки, для которых впереди расположен временной интервал T(3).
Затем по соотношению между длительностями двух оставшихся интервалов T(1) и T(2) определяется двоичное значение декодируемого разряда.
Вследствие выбора длительностей интервалов T(1), T(2) и T(3), намного отличающихся одна от другой, декодирование обеспечивается с большей достоверностью. Выбор длительностей интервалов T(1), T(2) и T(3) осуществляется также из соображений простоты реализации схем кодера и декодера. В предпочтительном варианте реализации выбрано T(3) = T/2, min(T(1),T(2)) = T/8, max(T(1),T(2)) = 3Т/8.
На фиг. 1 представлен случай, когда кодированный двоичный сигнал образуется путем чередования двоичных уровней при переходе от одного временного интервала к другому. Можно, однако, дополнить каждый период Т еще одним временным интервалом T(4) и поставить в соответствие этому интервалу один из двоичных уровней, чередуя эти уровни как и прежде. При этом одноименные интервалы для каждого из разрядов будут иметь одинаковый уровень, что может оказаться полезным при декодировании. Этот случай иллюстрируется на фиг. 2 и 3. Отличие реализации, показанной на фиг. 3, от реализации, показанной на фиг. 2, состоит в том, что в реализации, показанной на фиг. 3, интервалы, несущие информацию о двоичном значении кодируемого разряда T(1) и T(2), имеют одинаковый уровень, что также может оказаться полезным при декодировании. Кроме того, в реализации, показанной на фиг. 3, интервалы T(3) и T(4) также имеют одинаковый уровень. Если при этом задать одинаковое соотношение между длительностями интервалов T(3) и T(4) для всех разрядов, то выделение интервалов при декодировании T(3) можно осуществлять по признаку "больший (меньший) из пары соседних интервалов с низким (высоким) уровнем". В частности, для варианта, изображенного на фиг.3, выделение интервалов T(3) можно осуществлять по признаку "больший из пары соседних интервалов с низким уровнем".
Фиг. 4 представляет еще один случай кодирования, применимый в тех случаях, когда сигнал надо передать по линии питания постоянного напряжения. В этом случае на границах временных интервалов T(1),T(2) и T(3) размещают кратковременные изменения напряжения ("иголки"), которые могут быть падениями напряжения (как показано на фиг. 3) или выбросами (кратковременными повышениями напряжения). Длительности этих "иголок" выбирают так, чтобы работа устройств, которые запитываются постоянным напряжением указанной линии питания, не нарушалась. При этом "иголки" могут быть одинаковой длительности (τ) и различной длительности.
Измерение длительностей временных интервалов может осуществляться по их фронтам. В случае фиг. 1 - 3 это следующие друг за другом фронты, в случае фиг. 4 - заранее заданные фронты "иголок". Это могут быть одноименные (например, нарастающие) фронты, и тогда длительность "иголок" входит в длительности интервалов. В случае, если начало интервала отсчитывается по нарастающему фронту, а конец интервала - по спадающему фронту, длительность "иголки" не входит в длительность интервала. Длительность интервала может отсчитываться от момента достижения пикового (для фиг. 4 - минимального) значения напряжения "иголки", в этом случае длительность "иголки" частично входит в длительность интервала.
Варианты реализации, показанные на фиг. 1 - 4, предусматривают добавление интервала T(3) к каждой паре интервалов T(1) и T(2), кодирующей двоичный разряд. Можно, однако, добавлять один интервал T(3) к группе пар, кодирующих группу разрядов. В частности, на фиг. 5 показан вариант реализации, когда интервал T(3) является общим для двух пар интервалов Т(1 - 1), Т(2 - 1) и Т(1 - 2), Т(2 - 2). В обозначении Т(i - j) i - номер интервала в паре, кодирующей j - й разряд; j - номер кодируемого разряда в группе, объединенной общим интервалом T(3).
Другой вариант изобретения характеризуется тем, что временной интервал, обозначенный ранее T(3), а здесь - в целях лучшего различения вариантов - переименованный в t, присоединен к одному из временных интервалов T(1) и T(2). На фиг. 6 показан вариант реализации, когда на величину t расширен первый интервал пары (в данном случае - T(1)). Конец временного интервала T(1) показан пунктиром на фиг. 6. Величина t должна быть выбрана так, чтобы длительность расширенного временного интервала t' (для варианта реализации, показанного на фиг. 6, t' = t + T(1)) удовлетворяла условию t' > max(T(1), T(2)) для всех соотношений между длительностями временных интервалов T(1) и T(2) в каждой паре T(1),T(2). При этом обеспечивается возможность выделить интервалы t' из последовательности интервалов при декодировании. Временной интервал t' выполняет роль синхронизирующего интервала для каждого кодируемого разряда. При декодировании проверяется соотношение длительностей в каждой паре соседних интервалов входной последовательности интервалов. Для варианта реализации, изображенного на фиг. 6, при декодировании сначала выделяются пары, в которых длительность первого интервала превосходит длительность двух следующего за ним интервала. Очевидно, что этому условию удовлетворяют те и только те пары, для которых впереди расположен временной интервал t'.
Как и в первом варианте изобретения, в общем случае не обязательно, чтобы относительное расположение интервалов в группе (в данном случае - в паре), соответствующей одному разряду, не изменялось от разряда к разряду. Важно лишь, чтобы закон смены вариантов относительного расположения был известен и на кодирующей, и на декодирующей сторонах канала связи, использующего данный код. Однако с точки зрения простоты реализации схем кодера и декодера предпочтительно выбирать неизменное относительное расположение интервалов от разряда к разряду. Более того, для некоторых применений (в частности, когда прием информации начинается с разряда, номер которого заранее неизвестен) одинаковое относительное расположение интервалов может быть обязательным. Кроме того, при сохранении количества временных интервалов между интервалами t' (что может быть достигнуто, в частности, за счет неизменности относительного расположения интервалов от разряда к разряду) обеспечивается возможность реализации контроля правильности приема каждого разряда информации непосредственно во время приема этого разряда путем простого подсчета указанного количества интервалов и сравнения его с заранее заданным числом. В частности, для случая фиг. 6 между соседними интервалами t' всегда расположен только один интервал.
При декодировании, после определения длительностей интервалов t' = t + T(i) (i = 1, 2) и Т(3 - i) (для фиг. 6 i = 1, t' = t + T(1)) для каждого разряда может быть определено значение длительности интервала T(i), что, в свою очередь, позволяет определить двоичное значение декодируемого разряда по соотношению длительностей интервалов T(i) и Т(3 - i). В случае же, если длительности временных интервалов удовлетворяют условиям t + max(T(1),T(2)) > 4min(T(1),T(2)) и t + minT(1),T(2)) < 4max(T(1),T(2)) для всех соотношений между длительностями временных интервалов T(1) и T(2) в каждой паре, декодирование может осуществляться из условия
V = A при t + T(i) < 4T(3 - i),
V = ~A при t + T(i) > 4Т(3 - i),
где
i = 1 или 2,
A - логическая константа ("0" или "1"),
~A - инверсия A.
Предпочтительность такого способа декодирования определяется простотой реализации схемы декодера, обсуждаемой ниже (см. фиг. 11). Такой же способ декодирования может быть осуществлен для предпочтительной реализации второго варианта изобретения, в которой выбрано n = 1, t = T/2, min(T(1), T(2)) = T/8, max(T(1), T(2)) = 3Т/8. Для иллюстрации обсуждаемого способа декодирования при указанном выборе значений длительностей интервалов в таблице приведены правая и левая части проверяемого неравенства для противоположных значений декодируемого разряда и результат сравнения правой и левой частей.
Из сравнения второго и третьего столбцов таблицы видно, что выполняется сравнение намного отличающихся одна от другой величин, что повышает достоверность декодирования.
Фиг. 7 показывает случай кодирования для передачи сигнала по линии постоянного напряжения (аналогично фиг. 4).
Варианты реализации, показанные на фиг. 6 и 7, предусматривают добавление интервала 1 к одному из интервалов в каждой паре T(1), T(2), кодирующей двоичный разряд. Можно, однако, добавлять один интервал t к одному из интервалов в группе пар, кодирующих группу разрядов. В частности, на фиг. 8 показан вариант реализации, когда интервал t' является общим для двух пар интервалов Т(1 - 1), Т(2 - 1) и Т(1 - 2), Т(2 - 2). Обозначение Т(1 - 1) расшифровано выше в связи с фиг. 5.
На фиг. 9a показан пример функциональной схемы кодера, выполняющей кодирование по предпочтительной реализации первого варианта данного изобретения (n = 1, T(3) = T/2, min(T(1),T(2)) = T/8, max(T(1),T(2)) = 3Т/8). Временные диаграммы сигналов показаны на фиг. 9б. Сигналы F0, F1, F2, F3 могут быть, например, выходами последовательных разрядов двоичного счетчика. Сигнал D - информационный, его уровень определяет двоичное значение кодируемого разряда. Блок BCF (формирователь кода бита) выполняет логическую функцию:
Y1 = F1&F2+(~F1)&(~F3)&[D&F2+(~D)&(~F2)]
На временных диаграммах фиг. 9б высокий уровень сигнала соответствует логической "1", низкий уровень - логическому "0".
Блок LD (логическое дифференцирование) преобразует нарастающий фронт входного сигнала в импульс длительности τ и может быть реализован любым из известных способов (например, на линии задержки). Выходной инвертор, обведенный на фиг. 9а штриховым контуром, не используется в случаях, когда требуется получить выходной сигнал вида Y3 (фиг. 9б).
Кодер, выполняющей кодирование по предпочтительной реализации второго варианта данного изобретения (n = 1, t = T/2, min(T(1),T(2)) = T/8, max(T(1), T(2)) = ЗT/8) также может быть выполнен по функциональной схеме, показанной на фиг. 9а. Отличие от описанного выше кодера состоит в логической функции блока BCF, которая теперь выглядит так:
Y1 = F1&F2&F3+(~F1)&(~F3)&[D&F2+(~D)&(~F2)]. .
Временные диаграммы сигналов-показаны на фиг. 9в.
На фиг. 10 приведен пример функциональной схемы декодера по первому варианту изобретения (при n = 1). Для определенности принято T(3) > max(T(1), T(2)); интервал T(3) расположен перед парой интервалов T(1), T(2) в группе интервалов, кодирующей каждый разряд.
Входная последовательность интервалов поступает по входу IN. Блок BC (например, двоичный счетчик или интегрирующая RC-цепь) формирует на своем выходе d значение, характеризующее длительность принимаемого в текущий момент времени интервала. Для рассматриваемого примера несущественно, в какой (цифровой или аналоговой) форме представлены величины a, b, c и d. Для определенности будем считать, что они представлены в цифровой форме. Запоминающие устройства (например, регистры) RG1, RG2 и RGЗ стробируются входной последовательностью интервалов и записывают информацию в моменты смены интервалов. Таким образом, величины a, b и c всегда характеризуют последнюю полностью принятую тройку интервалов (принятых в временной последовательности c - b - a). Компараторы COPM2 и COMPЗ, объединенные по выходам элементом И, обеспечивают стробирование триггера TT только при выполнении условий синхронизации по разряду, то есть только тогда, когда максимальный по длительности интервал расположен (по времени) в начале тройки. При этом на информационный вход триггера с выхода компаратора COMP1 поступает информация, характеризующая двоичное значение декодируемого разряда, и это значение V появляется на выходе триггера.
Блок CC, обведенный штриховой линией на фиг. 10, выполняет дополнительную функцию контроля при работе устройства в условиях возможности появления сбоев в канале передачи сигнала или при формировании сигнала. В рассматриваемой реализации изобретения входная последовательность интервалов характеризуется тем, что между синхронизирующими интервалами T(3) всегда расположено два других интервала. Нарушение этого свойства входной последовательности интервалов свидетельствует о наличии сбоев. Например, если границы интервалов задаются "иголками", нарушение указанного свойства входной последовательности может свидетельствовать об отсутствии одной из "иголок" или о появлении "ложной иголки". При нарушении указанного свойства входной последовательности контрольный сигнал CS на выходе блока CC изменяет свой уровень. Блок CC может быть реализован, например, в виде счетчика с контролем совпадения заранее заданного состояния с сигналом 5 (см. фиг. 10).
На фиг. 11 приведен пример функциональной схемы декодера по предпочтительной реализации второго варианта изобретения (n = 1, t + max(T(1),T(2)) > 4min(T(1), T(2)) и t + min(1),T(2)) < 4max(T(1),T(2)), или, более конкретно, t = T/2, min(T(1), T(2)) = T/8, max(T(1),T(2)) = 3Т/8). Для определенности принято t = t + T(1) и что интервал t' расположен перед вторым интервалом T(2) в паре интервалов кодирующей каждый разряд.
Аналогично фиг. 11 входная последовательность интервалов поступает по входу IN. Блок BC (например, двоичный счетчик или интегрирующая RC-цепь) формирует на своем выходе d значение, характеризующее длительность принимаемого в текущий момент времени интервала. Для рассматриваемого примера несущественно, в какой (цифровой или аналоговой) форме представлены величины a, b, d и e. Для определенности будем считать, что они представлены в цифровой форме. Запоминающие устройства (например, регистры) RG1 и RG2 стробируются входной последовательностью интервалов и записывают информацию в моменты смены интервалов. Таким образом, величины a и b всегда характеризуют последнюю полностью принятую пару интервалов (принятых в временной последовательности b - а). Устройство SH осуществляет умножение величины a на 4; если величина а представлена в двоичной форме, умножение сводится просто к сдвигу на два разряда и может быть выполнено только за счет коммутации без аппаратных затрат. Компаратор COMP2 обеспечивает стробирование триггера TT только при выполнении условия синхронизации по разряду, то есть только тогда, когда максимальный по длительности интервал расположен (по времени) в начале пары. При этом на информационный вход триггера с выхода компаратора COMP1 поступает информация, характеризующее двоичное значение декодируемого разряда, и это значение V появляется на выходе триггера.
Блок CC, обведенный штриховой линией на фиг. 11, выполняет дополнительную функцию контроля аналогично такому же блоку, показанному на фиг. 10.
Предлагаемые варианты изобретения допускают большое разнообразие возможных промышленных применений. Изобретение может применяться как в проводных, так и беспроводных каналах передачи информации, например, при передаче информации от датчиков температуры, давления, влажности и т. п. к контроллерам датчиков. В частности, в случаях, когда датчики расположены в труднодоступных местax, изобретение может быть применено для надежной передачи информации от датчика по проводу, подводящему напряжение питания к датчику. Применение изобретения целесообразно также в тех случаях, когда длительности интервалов, кодирующих разряды, существенно изменяются от разряда к разряду (например, вследствие колебаний или монотонных изменений напряжения питания передающего устройства).
Рассмотренные примеры никоим образом не ограничивают объем изобретения, охарактеризованный формулой изобретения.
название | год | авторы | номер документа |
---|---|---|---|
СПОСОБ СОВМЕСТНОГО АРИФМЕТИЧЕСКОГО И ПОМЕХОУСТОЙЧИВОГО КОДИРОВАНИЯ (ВАРИАНТЫ) | 2016 |
|
RU2611022C1 |
СПОСОБ АРИФМЕТИЧЕСКОГО КОДИРОВАНИЯ С ШИФРОВАНИЕМ | 2015 |
|
RU2595953C1 |
СПОСОБ ЦИФРОВОГО КОДИРОВАНИЯ ДЛЯ ПЕРЕДАЧИ И/ИЛИ НАКОПЛЕНИЯ АКУСТИЧЕСКИХ СИГНАЛОВ | 1990 |
|
RU2141166C1 |
СПОСОБ АУТЕНТИФИКАЦИИ ЭЛЕКТРОННОГО ИЗОБРАЖЕНИЯ (ВАРИАНТЫ) | 2014 |
|
RU2589345C1 |
СПОСОБ КОДИРОВАНИЯ ЭЛЕКТРОМАГНИТНОГО ИЗЛУЧЕНИЯ И УСТРОЙСТВО КОДИРОВАНИЯ | 2005 |
|
RU2281608C1 |
СПОСОБ СОВМЕСТНОГО АРИФМЕТИЧЕСКОГО И ПОМЕХОУСТОЙЧИВОГО КОДИРОВАНИЯ | 2015 |
|
RU2629455C2 |
СПОСОБ АУТЕНТИФИКАЦИИ ЭЛЕКТРОННОГО ИЗОБРАЖЕНИЯ | 2015 |
|
RU2589849C1 |
СПОСОБ АУТЕНТИФИКАЦИИ ЭЛЕКТРОННОГО ИЗОБРАЖЕНИЯ | 2014 |
|
RU2568268C1 |
СПОСОБ И УСТРОЙСТВО МАСШТАБИРОВАННОГО КОДИРОВАНИЯ И ДЕКОДИРОВАНИЯ ЗВУКА | 1998 |
|
RU2185024C2 |
СПОСОБ ПЕРЕДАЧИ И ПРИЕМА ЦИФРОВОЙ ИНФОРМАЦИИ | 1995 |
|
RU2121763C1 |
Изобретение относится к способам кодирования двоичной информации с помощью времяимпульсных кодов, а также к способам декодирования информации, закодированной такими времяимпульсными кодами. При использовании изобретения обеспечивается возможность передачи информации как в синхронном, так и в асинхронном режимах с обнаружением ошибки в любом разряде без использования избыточных разрядов, в том числе и по цепям питания. Для этого в первом варианте кодирование каждого разряда осуществляется парой неравных временных интервалов T(1) и T(2), соотношение длительностей которых определяется двоичным значением кодируемого разряда, и по крайней мере одна из n (n≥1) пар дополняется временным интервалом T(3), неравным временным интервалам T(1) и T(2), который при декодировании играет роль поразрядного синхросигнала. Во втором варианте длительность одного из временных интервалов T(1) и T(2) по крайней мере в одной из n (n≥1) пар увеличивается на временной интервал t, чтобы временной интервал с увеличенной длительностью превышал любой из временных интервалов T(1) и T(2). 2 с. и 35 з.п. ф-лы, 1 табл., 11 ил.
V = A при t + T(i) < 4T(3 - i);
V = при t + T(i) > 4T(3 - i)
где i = 1 или 2;
A - логическая константа (0 или 1);
инверсия А.
Печь для непрерывного получения сернистого натрия | 1921 |
|
SU1A1 |
ЕР, патент, 0092284, кл | |||
Очаг для массовой варки пищи, выпечки хлеба и кипячения воды | 1921 |
|
SU4A1 |
Аппарат для очищения воды при помощи химических реактивов | 1917 |
|
SU2A1 |
SU, авторское свидетельство, 1562948, кл | |||
Топка с несколькими решетками для твердого топлива | 1918 |
|
SU8A1 |
Авторы
Даты
1998-05-20—Публикация
1994-09-28—Подача