6:23-cv-00755
Teleputers LLC v. Analog Devices Inc
I. Executive Summary and Procedural Information
- Parties & Counsel:
- Plaintiff: Teleputers, LLC (New Jersey)
- Defendant: Analog Devices, Inc. (Massachusetts)
- Plaintiff’s Counsel: THE MORT LAW FIRM, PLLC
- Case Identification: 6:23-cv-00755, W.D. Tex., 11/09/2023
- Venue Allegations: Plaintiff alleges venue is proper because Defendant has a regular and established place of business within the Western District of Texas.
- Core Dispute: Plaintiff alleges that Defendant’s ADSP-SC59x series of processors, which incorporate Arm Cortex-A55 cores featuring Neon SIMD technology, infringe two patents related to methods for performing data permutations within a programmable processor.
- Technical Context: The technology concerns processor-level instructions for efficiently reordering data bits or subwords, a foundational operation for performance-intensive applications like digital signal processing, cryptography, and multimedia.
- Key Procedural History: The complaint identifies this case as related to five prior lawsuits filed by the same plaintiff against other major semiconductor companies, suggesting an ongoing, multi-defendant litigation campaign concerning the asserted patent family.
Case Timeline
| Date | Event |
|---|---|
| 2000-05-05 | ’478 Patent Priority Date |
| 2001-05-07 | ’526 Patent Priority Date |
| 2005-10-04 | ’478 Patent Issue Date |
| 2006-08-15 | ’526 Patent Issue Date |
| 2023-11-09 | Complaint Filing Date |
II. Technology and Patent(s)-in-Suit Analysis
U.S. Patent No. 6,952,478 - Method and system for performing permutations using permutation instructions based on modified omega and flip stages (Issued Oct. 4, 2005)
The Invention Explained
- Problem Addressed: The patent’s background section describes that performing arbitrary bit-level permutations (reordering of bits) is computationally slow and inefficient on conventional, word-oriented microprocessors, which poses a bottleneck for applications in fields like cryptography. (’478 Patent, col. 1:44-51).
- The Patented Solution: The invention discloses a method to perform any arbitrary permutation by executing a sequence of permutation instructions. These instructions are designed to emulate stages of a virtual "omega-flip" interconnection network. The method transforms an initial sequence of bits into a final, desired sequence by passing it through one or more intermediate sequences, where the output of one instruction serves as the input for a subsequent instruction. (’478 Patent, Abstract; col. 3:50-64).
- Technical Importance: This software-based approach was designed to offer a faster and more economical way to conduct complex bit permutations compared to prior art methods that relied on large memory lookup tables (which could be slow due to cache misses) or a high number of basic logic instructions. (’478 Patent, col. 2:28-39).
Key Claims at a Glance
- The complaint asserts infringement of at least independent Claim 1 (Compl. ¶18).
- The essential elements of Claim 1 include:
- A method of performing an arbitrary permutation of a source sequence of bits in a programmable processor.
- Defining an intermediate sequence of bits that the source sequence is transformed into.
- Determining a permutation instruction to perform this transformation.
- Repeating these steps, using the output of one step (the intermediate sequence) as the input for the next, until a desired sequence is obtained.
- The determined permutation instructions collectively form a "permutation instruction sequence."
U.S. Patent No. 7,092,526 - Method and system for performing subword permutation instructions for use in two-dimensional multimedia processing (Issued Aug. 15, 2006)
The Invention Explained
- Problem Addressed: The patent identifies challenges in efficiently processing two-dimensional (2-D) multimedia data (e.g., images, video), which often requires rearranging "subwords" (such as pixels) that are packed into multiple processor registers. (’526 Patent, col. 1:19-24, col. 2:16-24).
- The Patented Solution: The invention proposes a method centered on a new set of permutation instructions. The method involves first "decomposing" 2-D data into smaller, fundamental "atomic elements," specifically a 2x2 matrix. A permutation instruction is then used to rearrange the data elements (subwords) within this 2x2 atomic unit to achieve operations like rotation or transposition, with the result placed in a destination register. (’526 Patent, Abstract; col. 3:12-19).
- Technical Importance: This approach provides a set of primitive operations optimized for common 2-D data manipulations, enhancing the efficiency of subword parallelism by reducing the need for costly memory access to reload data in a different order. (’526 Patent, col. 3:40-49).
Key Claims at a Glance
- The complaint asserts infringement of at least independent Claim 1 (Compl. ¶24).
- The essential elements of Claim 1 include:
- A method for permuting 2-D data in a programmable processor.
- Decomposing the 2-D data, located in a source register, into at least one "atomic element," which is a 2x2 matrix.
- Determining at least one permutation instruction for rearranging the data in the atomic element.
- Rearranging the data elements (subwords) using the permutation instruction.
- Applying the instruction to the subwords and placing the permuted subwords into a destination register.
III. The Accused Instrumentality
Product Identification
The complaint accuses Analog Devices’ ADSP-SC598, ADSP-SC596, and ADSP-SC595 processors (collectively, "ADSP-SC59x series") of infringement (Compl. ¶16).
Functionality and Market Context
The ADSP-SC59x series are described as Systems-on-Chips (SoCs) that integrate an Arm Cortex-A55 processor alongside dual-SHARC+ DSP cores (Compl. p. 7). The infringement allegations center on the Arm Cortex-A55 core’s inclusion of the Neon advanced single instruction multiple data (SIMD) architecture extension. The complaint alleges that this Neon technology provides a range of "permute instructions," such as VTRN (Vector Transpose), which are used for rearranging data within vectors to support tasks like multimedia encoding/decoding and 2D/3D graphics (Compl. p. 8). One document referenced in the complaint describes a diagram of a processor block, which is identified as Figure 2, Arm Cortex-A55 Processor Block Diagram (Compl. p. 7).
IV. Analysis of Infringement Allegations
6,952,478 Infringement Allegations
| Claim Element (from Independent Claim 1) | Alleged Infringing Functionality | Complaint Citation | Patent Citation |
|---|---|---|---|
| a. defining an intermediate sequence of bits that said source sequence of bits is transformed into; | The accused Neon permutation instructions take input data from source registers, rearrange it, and write the result to a destination register. This rearranged result constitutes an intermediate sequence. | ¶22(a) | col. 3:55-58 |
| b. determining a permutation instruction for transforming said source sequence of bits into said intermediate sequence of bits; and | The accused processors determine and use specific Neon instructions, such as VTRN (Transpose), to perform the data transformation from the source sequence to the intermediate sequence. |
¶22(b) | col. 3:58-61 |
| c. repeating steps a. and b. using said determined intermediate sequence of bits from step b. as said source sequence of bits in step a. until a desired sequence of bits is obtained, | The accused processors allegedly use multiple VTRN instructions to transpose larger matrices (e.g., a 4x4 matrix), where the output of a first VTRN operation becomes the input for a subsequent VTRN operation. A complaint diagram illustrates this process, labeling the output of the first permutation as the "Intermediate sequence of bits" that is then operated upon by a second permutation instruction (Compl. p. 12). |
¶22(c) | col. 3:61-64 |
| wherein the determined permutation instructions form a permutation instruction sequence. | The sequence of multiple VTRN instructions used to perform a larger transposition is alleged to form the claimed "permutation instruction sequence." A complaint diagram labels these steps as "Permutation Instruction sequence1" and "Permutation Instruction sequence 2" (Compl. p. 14). |
¶22 | col. 3:64-66 |
- Identified Points of Contention:
- Scope Questions: A central question may be whether the execution of a pre-defined series of different instructions (e.g.,
VTRN.16 d0, d1followed byVTRN.16 d2, d3) to achieve a larger task constitutes "repeating steps a. and b." as recited in the claim. A defendant could argue the claim implies a loop or feedback of the entire output as the entire input for the same step, rather than a fixed sequence of distinct operations on different data portions. - Technical Questions: What evidence does the complaint provide that the accused processor's high-level
VTRNinstruction for transposing matrices operates via the specific iterative, network-emulation method described in the patent? The infringement theory appears to rest on a functional mapping from technical documentation rather than a detailed analysis of the underlying implementation.
- Scope Questions: A central question may be whether the execution of a pre-defined series of different instructions (e.g.,
7,092,526 Infringement Allegations
| Claim Element (from Independent Claim 1) | Alleged Infringing Functionality | Complaint Citation | Patent Citation |
|---|---|---|---|
| decomposing said two dimensional data into at least one atomic element... said at least one atomic element... is a 2x2 matrix | The accused Neon VTRN instruction is alleged to treat the elements of its operand vectors as 2x2 matrices and transpose each one. The complaint presents this functional behavior as the claimed "decomposing" step. A complaint diagram labels this concept as the "Decomposition of two dimensional data" (Compl. p. 20). |
¶28 | col. 3:12-15 |
| determining at least one permutation instruction for rearrangement of said data in said atomic element; | The VTRN instruction itself is identified as the permutation instruction determined for rearranging the data elements within the 2x2 matrix structure. |
¶28 | col. 3:15-17 |
| said data elements being rearranged by said at least one permutation instruction, each of said data elements representing a subword having one or more bits; and | The VTRN instruction is alleged to transpose 8, 16, or 32-bit elements, which correspond to the claimed "subwords," thereby rearranging them. |
¶28 | col. 3:17-19 |
| applying said permutation instructions to said subwords and placing said permutated subwords into a destination register. | The result of the VTRN operation is written to a destination register. A complaint diagram explicitly labels the output as "Permutated Subwords" being placed in "Destination Registers" (Compl. p. 23). |
¶28 | col. 3:19-21 |
- Identified Points of Contention:
- Scope Questions: Does an instruction's functional description of "treating" its vector operands as 2x2 matrices satisfy the claim limitation of "decomposing said two dimensional data into at least one atomic element"? A defendant may argue that the claim requires a distinct decomposition step that precedes the rearrangement, whereas the accused functionality describes a single, indivisible operation.
- Technical Questions: The claim recites permuting "two dimensional (2-D) data." The complaint alleges the accused Neon instructions operate on vectors. A technical question for the court will be whether the general-purpose vector data processed by the accused products constitutes "2-D data" as that term is used and defined within the context of the ’526 Patent, which focuses its examples on multimedia and image processing.
V. Key Claim Terms for Construction
U.S. Patent No. 6,952,478
- The Term: "repeating steps a. and b. using said determined intermediate sequence of bits from step b. as said source sequence of bits in step a." (Claim 1).
- Context and Importance: This limitation defines the iterative nature of the claimed method. The infringement case for the ’478 Patent appears to depend on whether the accused sequence of
VTRNinstructions meets this specific definition of repetition. - Intrinsic Evidence for Interpretation:
- Evidence for a Broader Interpretation: The patent’s abstract states that "Each intermediate sequence of bits is used as input to a subsequent permutation instruction," which could be argued to encompass any chain of permutation operations (’478 Patent, Abstract).
- Evidence for a Narrower Interpretation: The claim’s explicit language—"using said determined intermediate sequence... as said source sequence..."—suggests a direct feedback structure where the output of an operation becomes the input for a subsequent, identical operation. The specification’s description of emulating successive, identical stages of an omega network may support this narrower view (’478 Patent, col. 3:50-64).
U.S. Patent No. 7,092,526
- The Term: "decomposing said two dimensional data into at least one atomic element" (Claim 1).
- Context and Importance: This is the foundational step of the claimed method. Practitioners may focus on this term because the infringement allegation hinges on equating an instruction's functional behavior ("treats the elements... as 2x2 matrices") with the performance of this explicit claim step.
- Intrinsic Evidence for Interpretation:
- Evidence for a Broader Interpretation: The patent’s summary describes a method based on "decomposing images and objects into atomic units, then finding the permutations desired for the atomic units," which could support a reading where any logical division of data for processing satisfies the claim (’526 Patent, Abstract).
- Evidence for a Narrower Interpretation: The claim lists "decomposing" as a separate step preceding "determining" and "rearranging." This structure suggests it is a distinct prerequisite action, not merely an implicit aspect of the rearrangement instruction itself. The specification states, "the data to be permuted is decomposed into an atomic element," which may imply a discrete step (’526 Patent, col. 4:65-66).
VI. Other Allegations
- Indirect Infringement: The complaint alleges inducement of infringement by "encouraging customers to use the Accused Instrumentalities" and providing "technical support" (Compl. ¶20-21, 26-27). These allegations are not supported with specific factual examples, such as citations to user manuals or marketing materials.
- Willful Infringement: The complaint does not contain an explicit count for willful infringement. However, it alleges that Defendant infringes "with knowledge" of the patents-in-suit and states that Defendant is "on notice" of the patents as of the complaint's filing date, which could form the basis for a claim of post-suit willful infringement (Compl. ¶13, 20, 26). No facts are alleged to support pre-suit knowledge.
VII. Analyst’s Conclusion: Key Questions for the Case
The resolution of this dispute may turn on two central questions for the court:
- A core issue will be one of claim construction and evidence: Do the high-level functional descriptions from Arm’s technical manuals, which describe how the Neon
VTRNinstruction operates, suffice to prove that the accused processors perform the specific, multi-step methods required by the claims? For the '526 patent, this raises the question of whether "treating data as" 2x2 matrices is the same as "decomposing" data into them. - A second key issue will be one of technical and definitional scope: For the '478 patent, does the accused sequence of different
VTRNinstructions meet the claim's specific iterative requirement where an operation's output becomes the input for a repeat of that same operation? For the '526 patent, does the general-purpose vector processing performed by the accused Neon technology fall within the patent's claimed scope of permuting "two dimensional (2-D) data"?