Innovative and original ideas

Charge-flow Protection

Protection against startup of switchmode converters in short circuited output is solved by measuring and integrating flow of charge in the output stage. Charge flow protection covered the only combination of working conditions that could damage the converter in a simple, reliable and cost-effective way.

64Kx8 Conference circuit

Conference calls in A-law time division multiplex systems requires heavy digital signal processing per channel. Forming 64kbyte ROM table, containing all results of end-to-end sample processing, enabled direct use of a pair of input samples as the address and direct use of read data as the output sample. 64K Conference circuit magnified the capacity of the conference block in SRCE digital switching system up to a level unreal in practical operation, and all that at the cost of only one cheap fast memory and a couple of IP blocks added to existing FPGAs.

Fail safe analog comparator

Protection circuits and functional safety compliant systems often monitor sensor outputs to detect range violation, and have to keep that function alive in all working conditions up to certain level of accumulated faults. Innovative configuration of 2 classic analog comparators yielded an electronic block tolerant to all possible faults (100%), containing no sequential networks nor software. Fail-safe analog comparator may be used as completely autonomous electronic block or as IP block in integrated components. Fail-safe analog comparator enabled 10-fold improvement in overtemperature protection response time, while reducing cost, weight and size.

Base41 binary to string encoding

Base41 encoding is a compromise between two extremes - Base16 on one and Base85 on the other hand. Simplicity and performance/speed are closer to Base16 while coding efficiency is closer to Base85. Perfect for embedded, resource constrained systems.

Safe variable types in C++

A library of types (integers arrays...) for the C++ programming language which does all safety checks (integers staying within range, avoiding overflow, division by zero...) during compile time. This is essential in high reliability and availability systems, because detecting errors during execution could be too late for an appropriate reaction. This design is a simple library for standard C++, unlike a whole (sub)language with a separate complex tool-chain like Spark/Ada.

Distributed flip-flop

This combined software-hardware design works by splitting a flip-flop in two, with one part being at one and the other at another microprocessor. Flip-flop will make sure that only one of the processor which signals it wants to control the rest of the system will become "active". With this inexpensive approach we achieve a highly reliable and optimized solution for "active/stand by" fault tolerance (1+1 redundancy).