Instruction encoding method for single wire serial communications
AssigneeAdvanced Analogic Technologies, Inc.
InventorJoseph Hollinger
Life of this patent
Estimating the term…
Abstract
An instruction encoding method is provided for communication between devices. Before transmission, each opcode is multiplied by two. Each operand is multiplied by two and incremented by one. Encoded opcodes and operands are sent as rising edges (i.e., voltage transitions) on a single wire connecting transmitting and receiving devices. The receiving device counts the rising edges to form a total. Even totals correspond to opcodes, odd totals correspond to operands.
Claims11
A method for controlling a device, the method comprising:
- encoding an opcode m as the value 2m;
- encoding an operand n as the value 2n+1;
- controlling the voltage on a serial line to send the encoded opcode as a series 2m of rising edges;
- and
- controlling the voltage on a serial line to send the encoded operand as a series 2n+1 of rising edges.
A method for controlling a device, the method comprising:
- counting a series of rising edges in a serial input to form a total;
- extracting an operand from the total when the total is odd where the operand is numerically equal to the total shifted right by one bit;
- and
- extracting an opcode from the total when the total is even where the opcode is numerically equal to the total shifted right by one bit.
An interface for controlling a device, the interface comprising:
- a counter configured to form a total by counting a series of rising edges in a serial input;
- a first circuit configured to extract an operand from the total when the total is odd where the operand is numerically equal to the total shifted right by one bit;
- and
- a second circuit configured to extract an opcode from the total when the total is even where the opcode is numerically equal to the total shifted right by one bit.
A method for controlling a device, the method comprising:
- controlling the voltage on a serial line to send a series of numbers, where each number n is sent as a series of n rising edges, with every other number being a type that identifies the immediately following number as either an opcode or operand.
A method for controlling a device, the method comprising:
- monitoring the voltage on a serial line to receive a series of numbers, where each number n is sent as a series of n rising edges, with every other number being a type that identifies the immediately following number as either an opcode or operand.
An interface for controlling a device, the interface comprising:
- a counter configured to form a total by counting a series of rising edges in a serial input;
- a register address latch;
- a first circuit configured to store an opcode in the register address latch when the total is even, where the opcode is a quantity equal to the total shifted right by one bit
- a second circuit configured to cause the accumulated count of clock pulses to be stored in a register selected by the contents of the register address latch, when the input signal has been asserted in a logical high condition for a time that exceeds a predetermined timeout value
Dependencies are inferred from the claim text.