IP Library Granted Patent US 9,787,465
Granted Patent B1
US 9,787,465 · App. 15/187,983 · Granted Oct 10, 2017

Systems and methods for triggerless data alignment

Inventor: Harrison Caudill (San Francisco, CA)
Assignee: SPIRE GLOBAL INC.
H04L7/02H04L1/0009H04L1/0045
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,787,465
App. No.
15/187,983
Granted
Oct 10, 2017
Kind
B1
Abstract

Certain implementations of the disclosed technology may include systems and methods for data alignment without requiring an external synchronizing trigger. A method is provided that can include receiving a signal that represents a plurality of frames, each of the plurality of the frames include an optional data portion and a predetermined portion. The method includes sampling and buffering at least a portion of the received signal to produce a buffered digital sequence. The method includes processing, by a sequence alignment module, the buffered digital sequence using a known sequence, where the known sequence corresponds to the predetermined portion. The method includes determining, using the sequence alignment module, respective positions of the buffered digital sequence corresponding to the known sequence, comparing the known sequence with the buffered digital sequence at the respective determined positions, and outputting one or more parameters based at least in part on the comparing.

Claims (50)

1. A method comprising:

receiving a signal, wherein the received signal represents a plurality of frames, each of the plurality of the frames comprising an optional data portion and a predetermined portion;

sampling the received signal;

buffering at least a portion of the sampled signal to produce a buffered digital sequence;

processing, by a sequence alignment module, the buffered digital sequence using a known sequence, wherein the known sequence corresponds to the predetermined portion;

determining, using the sequence alignment module, respective positions of the buffered digital sequence corresponding to the known sequence, wherein the determining the respective positions comprises scoring an alignment of the digital sequence with the known sequence based on predetermined parameters, and wherein scoring the alignment based on the predetermined parameters comprises increasing a score for each adjacent matching bit and decreasing a score for each mismatching bit, and wherein insertions and deletions are treated as mismatches;

comparing the known sequence with the buffered digital sequence at the respective determined positions; and

outputting one or more parameters based at least in part on the comparing.

2. The method of claim 1 , wherein the one or more parameters comprise a bit error rate (BER).

3. The method of claim 2 , wherein the BER is further based on a summation of mismatched bits divided by a total number of compared bits.

4. The method of claim 1 , wherein the received signal is degraded by noise.

5. The method of claim 4 , wherein the predetermined portion of the signal initially matches the known sequence, and wherein the noise operates to introduce errors in the signal.

6. The method of claim 1 , wherein the comparing comprises a bit-wise comparison of the known sequence with the buffered digital sequence at the respective determined positions.

7. The method of claim 1 , further comprising extracting data portions of the buffered digital sequence based on the determined respective positions.

8. The method of claim 7 , further comprising decoding the extracted data portions.

9. The method of claim 1 , wherein the sequence alignment module is configured to implement one or more of a Smith-Waterman process, a Needleman-Wunsch process, and a sequence alignment process.

10. A system comprising:

a receiver configured to:

receive a transmitted signal, the transmitted signal comprising a representation of a plurality of frames, each of the plurality of the frames comprising an optional data portion and a predetermined portion;

sample the received signal; and

buffer at least a portion of the sampled signal to produce a buffered digital sequence; and

a sequence alignment module configured to:

process the buffered digital sequence using a known sequence;

determine respective positions of the buffered digital sequence corresponding to the known sequence; wherein the respective positions are determined based on predetermined parameters for scoring an alignment of the digital sequence with the known sequence, and wherein the predetermined parameters cause an increase in a score for each adjacent matching bit and a decrease in the score for each mismatching bit, and wherein insertions and deletions are considered mismatches;

compare the known sequence with the buffered digital sequence at the respective determined positions; and

output one or more parameters based at least in part on the comparing the known sequence with the buffered digital sequence at the respective determined positions.

11. The system of claim 10 , wherein the one or more parameters comprise a bit error rate (BER).

12. The system of claim 11 , wherein the BER is further based on a summation of mismatched bits divided by a total number of compared bits.

13. The system of claim 10 , wherein the transmitted signal is degraded by noise prior to reaching the receiver.

14. The system of claim 13 , wherein the predetermined portion of the signal initially matches the known sequence, and wherein the noise operates to introduce errors into the signal.

15. The system of claim 10 , wherein the sequence alignment module is further configured to perform a bit-wise comparison of the known sequence with the buffered digital sequence at the respective determined positions.

16. The system of claim 10 , wherein the receiver is further configured to extract data portions of the buffered digital sequence based on the determined respective positions.

17. The system of claim 16 , wherein the receiver is further configured to decode the extracted data portions.

18. The system of claim 10 , wherein the sequence alignment module is configured to implement one or more of a Smith-Waterman process, a Needleman-Wunsch process, and a sequence alignment process.

19. A method comprising:

receiving, by a plurality of receivers, a respective plurality of signals, the respective plurality of signals comprising a common originating signal and a respective plurality of noise components;

determining, by each of the plurality of receivers, a bit-wise certainty of the respective plurality of signals, the bit-wise certainty based on a ratio of bit energy to noise power density;

passing, to a multiple sequence alignment module, snippets of the plurality of signals having bit-wise certainty greater than a predetermined threshold;

assembling, using the multiple sequence alignment module, the snippets to produce a version of the originating signal, wherein the version of the originating signal represents a plurality of frames, each of the plurality of the frames comprising an optional data portion and a predetermined portion;

scoring an alignment of the predetermined portion with a known sequence based on predetermined parameters, wherein the scoring comprises increasing a score for each adjacent matching bit and decreasing a score for each mismatching bit, and wherein insertions and deletions are treated as mismatches; and

outputting one or more parameters based at least in part on the scoring.

20. The method of claim 19 , further comprising:

sampling the version of the originating signal;

buffering at least a portion of the sampled signal to produce a buffered digital sequence;

processing, by a sequence alignment module, the buffered digital sequence using the known sequence, wherein the known sequence corresponds to the predetermined portion;

determining, using the sequence alignment module, respective positions of the buffered digital sequence corresponding to the known sequence;

comparing the known sequence with the buffered digital sequence at the respective determined positions; and

outputting one or more parameters based at least in part on the comparing.

21. The method of claim 20 , wherein the sequence alignment module is configured to implement one or more of a Smith-Waterman process, a Needleman-Wunsch process, and a sequence alignment process.

22. The method of claim 19 , wherein the assembling comprises one or more of: progressive alignment construction; iteration; consensus, hidden Markov process, and simulated annealing.

Assignments (7)
RELEASE OF SECURITY INTEREST Recorded Apr 25, 2025
From: BLUE TORCH FINANCE LLC, AS ADMINISTRATIVE AGENT
To: SPIRE GLOBAL SUBSIDIARY, INC.; EXACTEARTH LTD.
Reel/Frame 070950/0659 →
RELEASE OF SECURITY INTEREST Recorded Jun 14, 2022
From: FP CREDIT PARTNERS, L.P., AS ADMINISTRATIVE AGENT AND COLLATERAL AGENT
To: SPIRE GLOBAL, INC.; AUSTIN SATELLITE DESIGN, LLC
Reel/Frame 060198/0638 →
PATENT SECURITY AGREEMENT Recorded Jun 13, 2022
From: EXACTEARTH LTD.; SPIRE GLOBAL SUBSIDIARY, INC.
To: BLUE TORCH FINANCE LLC
Reel/Frame 060363/0171 →
CHANGE OF NAME Recorded Sep 10, 2021
From: SPIRE GLOBAL, INC.
To: SPIRE GLOBAL SUBSIDIARY, INC.
Reel/Frame 057468/0155 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded May 17, 2021
From: SPIRE GLOBAL, INC.
To: FP CREDIT PARTNERS, L.P., AS AGENT
Reel/Frame 056353/0901 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE'S NAME AND ADDRESS PREVIOUSLY RECORDED AT REEL: 038971 FRAME: 0088. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT . Recorded Apr 26, 2021
From: CAUDILL, HARRISON
To: SPIRE GLOBAL, INC.
Reel/Frame 056035/0597 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 21, 2016
From: CAUDILL, HARRISON
To: SPIRE GLOBAL INC.
Reel/Frame 038971/0088 →