IP Library › Granted Patent US 12,363,420
Granted Patent B2
US 12,363,420 · App. 18/665,624 · Granted Jul 15, 2025

Systems and methods for DSP fast boot

Inventors: Peter Brook (Marina del Rey, CA); Russell Douglas Patton (Playa Vista, CA); Jonathan M Rodriguez, II (Los Angeles, CA)
Assignee: Snap Inc.
H04N23/617H04N23/65H04N23/71H04N23/73
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 12,363,420
App. No.
18/665,624
Granted
Jul 15, 2025
Kind
B2
Abstract

System, methods, devices, and instructions are described for fast boot of a processor as part of camera operation. In some embodiments, in response to a camera input, a digital signal processor (DSP) of a device is booted using a first set of instructions. Capture of image sensor data is initiated using the first set of instructions at the DSP. The DSP then receives a second set of instructions and the DSP is programmed using the second set of instructions after at least a first frame of the image sensor data is stored in a memory of the device. The first frame of the image sensor data is processed using the DSP as programmed by the second set of instructions. In some embodiments, the first set of instructions includes only instructions for setting camera sensor values, and the second set of instructions includes instructions for processing raw sensor data into formatted image files.

Claims (51)

1. An apparatus of a digital signal processor (DSP) comprising:

processing circuitry; and

a memory coupled to the processing circuitry, the memory comprising a first set of instructions, the first set of instructions executable by the DSP, wherein the processing circuitry is configured to:

boot the DSP, using the first set of instructions, in response to a signal;

initiate, using an image sensor, capture of first image sensor data of a first scene;

access a second set of instructions, the second set of instructions executable by the DSP; and

initiate capture, using the image sensor, of second image sensor data of a second scene, using the second set of instructions.

2. The apparatus of claim 1 , further comprising:

a second memory, the second memory coupled to the processing circuitry, wherein the processing circuitry is further configured to:

store the first image sensor data in the second memory.

3. The apparatus of claim 1 , wherein the processing circuitry is further configured to:

process the first image sensor data using the second set of instructions.

4. The apparatus of claim 1 , wherein the processing circuitry is further configured to:

receive the second set of instructions, over a higher-powered wireless connection, from a host device.

5. The apparatus of claim 1 , wherein the processing circuitry is further configured to:

receive the first set of instructions, over a lower-powered wireless connection, from a host device.

6. The apparatus of claim 1 , wherein the memory is a first memory, and wherein booting the DSP further comprises:

transfer the first set of instructions from the first memory to a second memory; and

executing the first set of instructions from the second memory to boot the DSP.

7. The apparatus of claim 1 , wherein initiating, at the DSP, capture of the second image sensor data using the second set of instructions further comprises:

adjust an exposure time, using the second set of instructions, based on a determination of a brightness or a darkness of the first image sensor data.

8. The apparatus of claim 1 , wherein initiating, at the DSP, capture of the second image sensor data using the second set of instructions further comprises:

adjust an exposure time, using the second set of instructions, based on sensor data.

9. The apparatus of claim 1 , wherein the second set of instructions comprises instructions for adjusting an exposure time based on analyzing the first image sensor data.

10. The apparatus of claim 9 , wherein the first set of instructions does not include instructions for adjusting the exposure time based on analyzing the first image sensor data.

11. The apparatus of claim 1 , wherein the first set of instructions consists only of instructions for setting sensor values of the image sensor of a device comprising the DSP.

12. The apparatus of claim 1 , wherein the first set of instructions consists only of instructions for setting sensor values of the image sensor of a device comprising the DSP and instructions for transferring the first image sensor data to the memory.

13. The apparatus of claim 12 , wherein the instructions for setting the sensor values of the image sensor comprise:

instructions for identifying a brightness value associated with preliminary sensor data; and

instructions for adjusting an exposure time for the image sensor based on the brightness value.

14. The apparatus of claim 13 , wherein the instructions for setting the sensor values of the image sensor further comprises:

instructions for capturing second preliminary sensor data following adjustment of the exposure time.

15. The apparatus of claim 1 , further comprising:

one or more image sensors coupled to the processing circuitry, wherein initiate capture of first image sensor data further comprises:

cause the one or more image sensors to capture first image sensor data.

16. The apparatus of claim 1 , wherein initiate capture of second image sensor data using the second set of instructions further comprises:

cause one or more image sensors of a device comprising the DSP to capture second image sensor data using the second set of instructions.

17. A method performed by an apparatus of a digital signal processor (DSP) comprising:

booting the DSP, using a first set of instructions stored in a first memory, in response to a signal, the first set of instructions executable by the DSP;

initiating, using an image sensor, capture of first image sensor data of a first scene;

accessing a second set of instructions, the second set of instructions executable by the DSP; and

initiating capture, using the image sensor, of second image sensor data of a second scene, using the second set of instructions.

18. The method of claim 17 , further comprising:

storing the first image sensor data in a second memory.

19. The method of claim 17 , further comprising:

processing the first image sensor data using the second set of instructions.

20. A non-transitory computer-readable storage medium storing first instructions that, when executed by a digital signal processor (DSP), cause the DSP to perform operations comprising:

booting the DSP, using a first set of instructions stored in a first memory, in response to a signal, the first set of instructions executable by the DSP;

initiating, using an image sensor, capture of first image sensor data of a first scene;

accessing a second set of instructions, the second set of instructions executable by the DSP; and

initiating capture, using the image sensor, of second image sensor data of a second scene, using the second set of instructions.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 27, 2024
From: BROOK, PETER; PATTON, RUSSELL DOUGLAS; RODRIGUEZ, JONATHAN M, II
To: SNAP INC.
Reel/Frame 067854/0184 →
Continuity (5)
Continuation 18119142 · Mar 8, 2023
Continuation 17451435 · Oct 19, 2021
Continuation 15206032 · Jul 8, 2016
Provisional Application 62191168 · Jul 10, 2015
Related Publication 20240305877A1 · Sep 12, 2024
References Cited (63)
US 6038295A · Mattes · 2000 [cited by applicant]
US 6980909B2 · Root et al. · 2005 [cited by applicant]
US 7173651B1 · Knowles · 2007 [cited by applicant]
US 7411493B2 · Smith · 2008 [cited by applicant]
US 7535890B2 · Rojas · 2009 [cited by applicant]
US 8131597B2 · Hudetz · 2012 [cited by applicant]
US 8199747B2 · Rojas et al. · 2012 [cited by applicant]
US 8332475B2 · Rosen et al. · 2012 [cited by applicant]
US 8446481B1 · Geiss · 2013 [cited by applicant]
US 8718333B2 · Wolf et al. · 2014 [cited by applicant]
US 8724622B2 · Rojas · 2014 [cited by applicant]
US 8874677B2 · Rosen et al. · 2014 [cited by applicant]
US 8909679B2 · Root et al. · 2014 [cited by applicant]
US 8995433B2 · Rojas · 2015 [cited by applicant]
US 9040574B2 · Wang et al. · 2015 [cited by applicant]
US 9055416B2 · Rosen et al. · 2015 [cited by applicant]
US 9100806B2 · Rosen et al. · 2015 [cited by applicant]
US 9100807B2 · Rosen et al. · 2015 [cited by applicant]
US 9191776B2 · Root et al. · 2015 [cited by applicant]
US 9204252B2 · Root · 2015 [cited by applicant]
US 9443227B2 · Evans et al. · 2016 [cited by applicant]
US 9489661B2 · Evans et al. · 2016 [cited by applicant]
US 9491134B2 · Rosen et al. · 2016 [cited by applicant]
US 11190681B1 · Brook et al. · 2021 [cited by applicant]
US 11606494B2 · Brook et al. · 2023 [cited by applicant]
US 20050219367A1 · Kanda et al. · 2005 [cited by applicant]
US 20060232808A1 · Lyons et al. · 2006 [cited by applicant]
US 20080050109A1 · Noyes · 2008 [cited by examiner]
US 20080050111A1 · Lee et al. · 2008 [cited by applicant]
US 20080101786A1 · Pozniansky et al. · 2008 [cited by applicant]
US 20080112702A1 · Cha · 2008 [cited by examiner]
US 20110202598A1 · Evans et al. · 2011 [cited by applicant]
US 20110279709A1 · Nonaka et al. · 2011 [cited by applicant]
US 20120209924A1 · Evans et al. · 2012 [cited by applicant]
US 20120229655A1 · Solomon · 2012 [cited by applicant]
US 20140152777A1 · Galor · 2014 [cited by examiner]
US 20140169599A1 · Solum · 2014 [cited by examiner]
US 20140308898A1 · Lee et al. · 2014 [cited by applicant]
US 20140320687A1 · Chau et al. · 2014 [cited by applicant]
US 20160278739A1 · Pelissier et al. · 2016 [cited by applicant]
US 20220038622A1 · Brook et al. · 2022 [cited by applicant]
US 20230224570A1 · Brook et al. · 2023 [cited by applicant]
CA 2887596A1 · 2015 [cited by applicant]
“U.S. Appl. No. 15/206,032, 312 Amendment filed Oct. 12, 2021”, 8 pgs. [cited by applicant]
“U.S. Appl. No. 15/206,032, Appeal Brief filed Feb. 22, 2019”, 28 pgs. [cited by applicant]
“U.S. Appl. No. 15/206,032, Appeal Decision mailed Jan. 15, 2021”, 7 pgs. [cited by applicant]
“U.S. Appl. No. 15/206,032, Final Office Action mailed Jun. 22, 2018”. [cited by applicant]
“U.S. Appl. No. 15/206,032, Non Final Office Action mailed Feb. 12, 2021”, 12 pgs. [cited by applicant]
“U.S. Appl. No. 15/206,032, Non Final Office Action mailed Nov. 6, 2017”. [cited by applicant]
“U.S. Appl. No. 15/206,032, Notice of Allowance mailed Jul. 12, 2021”, 10 pgs. [cited by applicant]
“U.S. Appl. No. 15/206,032, PTO Response to Rule 312 Communication mailed Nov. 3, 2021”, 2 pgs. [cited by applicant]
“U.S. Appl. No. 15/206,032, Response filed Mar. 6, 2018 to Non Final Office Action mailed Nov. 6, 2017”, 9 pgs. [cited by applicant]
“U.S. Appl. No. 15/206,032, Response filed Apr. 21, 2021 to Non Final Office Action mailed Feb. 12, 2021”, 8 pgs. [cited by applicant]
“U.S. Appl. No. 17/451,435, Notice of Allowance mailed Nov. 16, 2022”, 11 pgs. [cited by applicant]
“U.S. Appl. No. 18/119,142, Final Office Action mailed Jan. 11, 2024”, 7 pgs. [cited by applicant]
“U.S. Appl. No. 18/119,142, Non Final Office Action mailed Jun. 29, 2023”, 15 pgs. [cited by applicant]
“U.S. Appl. No. 18/119,142, Notice of Allowance mailed Feb. 14, 2024”, 9 pgs. [cited by applicant]
“U.S. Appl. No. 18/119,142, Response filed Feb. 1, 2024 to Final Office Action mailed Jan. 11, 2024”, 7 pgs. [cited by applicant]
“U.S. Appl. No. 18/119,142, Response filed Oct. 30, 2023 to Non Final Office Action mailed Jun. 29, 2023”, 12 pgs. [cited by applicant]
Leyden, John, “This SMS will self-destruct in 40 seconds”, [Online] Retrieved from the Internet: <URL: http://www.theregister.co.uk/2005/12/12/stealthtext/>, (Dec. 12, 2005), 1 pg. [cited by applicant]
U.S. Appl. No. 15/206,032 U.S. Pat. No. 11,190,681, filed Jul. 8, 2016, Systems and Methods for DSP Fast Boot. [cited by applicant]
U.S. Appl. No. 17/451,435 U.S. Pat. No. 11,606,494, filed Oct. 19, 2021, Systems and Methods for DSP Fast Boot. [cited by applicant]
U.S. Appl. No. 18/119,142, filed Mar. 8, 2023, Systems and Methods for DSP Fast Boot. [cited by applicant]