IP Library Granted Patent US 12,399,688
Granted Patent B2
US 12,399,688 · App. 18/132,322 · Granted Aug 26, 2025

Development platform for image processing pipelines that use machine learning with user interface

Inventor: Naveen Kumar Sangeneni (Fremont, CA)
Assignee: SiMa Technologies, Inc.
G06F8/20G06F3/04847G06T1/20G06V10/945G06V10/955G06F3/0486G06T2200/24G06T2200/28
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,399,688
App. No.
18/132,322
Filed
Apr 7, 2023
Granted
Aug 26, 2025
Kind
B2
Art Unit
2151
USPC
717/101
Abstract

A development platform for implementing a machine learning pipeline on a chip containing multiple hardware compute elements. The development platform includes a user interface, a library of software blocks, and a synthesis engine. The user interface facilitates a user to develop a functional description of the machine learning pipeline. The functional description specifies multiple functional modules, including a machine learning model. The synthesis engine synthesizes the pipeline of functional modules into multiple interconnected executable components of software blocks and generates an implementation package including the executable components and specifying interconnections between the executable components.

Claims (45)

1. A development platform for implementing a machine learning pipeline on a chip containing a plurality of hardware compute elements, the development platform comprising:

a user interface that facilitates a user to develop a functional description of the machine learning pipeline, wherein the functional description specifies a plurality of functional modules that form the pipeline, and at least one functional module includes a machine learning model;

a library of software blocks that implement the functional modules on the hardware compute elements of the chip, wherein the library of software blocks includes software blocks for implementing a plurality of machine learning models, a plurality of sensor plugins, and a plurality of ethernet device plugins; and

a synthesis engine configured to:

synthesize the pipeline of functional modules into a plurality of interconnected executable components of the software blocks, wherein the machine learning pipeline is synthesized into executable components that execute on at least two different hardware compute elements of the chip; and

generate an implementation package comprising the executable components and specifying interconnections between the executable components.

2. The development platform of claim 1 further comprising:

a key performance indicator (KPI) calculator that computes a KPI based on the interconnected executable components the KPI displayed in the user interface.

3. The development platform of claim 2 wherein the KPI includes at least one of frames per second (FPS), power consumption, memory utilization, and processor utilization.

4. The development platform of claim 2 wherein the KPI includes KPIs for each of the hardware compute elements.

5. The development platform of claim 2 wherein, responsive to the user's modification of the pipeline of functional modules, the KPI calculator updates the KPI.

6. The development platform of claim 1 wherein the user interface includes a graphical user interface (GUI) that displays a catalog of functional modules and allows the user to select functional modules from the catalog.

7. The development platform of claim 6 wherein the GUI further includes a canvas area; and, responsive to the user dragging functional modules from the catalog to the canvas area, the GUI displays the dragged functional modules in the canvas area.

8. The development platform of claim 6 wherein one of the selected functional modules includes a plurality of submodules that execute on corresponding hardware compute elements, and the GUI displays the plurality of submodules and the corresponding hardware compute elements.

9. The development platform of claim 6 wherein the GUI displays one or more parameters of a hardware compute element, and allows the user to modify the one or more parameters of the hardware compute element.

10. The development platform of claim 1 wherein the synthesis engine is further configured to

generate source code files for software blocks implementing the pipeline of functional modules, and

compile the source code files into the plurality of interconnected executable components.

11. The development platform of claim 1 wherein the synthesis engine is further configured to:

determine whether a connection between two functional modules is correct, and

responsive to determining an incorrect connection, generate an error alert.

12. The development platform of claim 1 further comprising a model training engine configured to:

train a custom machine learning model based on user input, and

include software blocks for implementing the custom machine learning model in the library.

13. The development platform of claim 1 wherein the library of software blocks includes proprietary software blocks, open source software blocks, and user-generated software blocks.

14. The development platform of claim 1 further comprising a library of different chips comprising different processors, and a user is allowed to select a target chip from the library of chips, and the synthesis engine generates the executable components based on the processors on the target chip.

15. The development platform of claim 1 wherein the library of software blocks comprises software blocks for implementing a plurality of machine learning models.

16. The development platform of claim 1 further comprising:

a library of reference pipelines.

17. The development platform of claim 1 wherein the development platform supports a concurrent design of multiple different chips and multiple different versions of chips.

18. The development platform of claim 1 wherein the development platform is a cloud-based service.

19. The development platform of claim 1 wherein the development platform is connected to the chip, and configured to receive a KPI of the chip when the executable components are executed by the hardware compute elements of the chip.

20. A development platform for implementing a machine learning pipeline on a chip containing a plurality of hardware compute elements, the development platform comprising:

a user interface that facilitates a user to develop a functional description of the machine learning pipeline, wherein the functional description specifies a plurality of functional modules that form the pipeline, and at least one functional module includes a machine learning model;

a library of software blocks that implement the functional modules on the hardware compute elements of the chip;

a library of different chips comprising different processors; and

a synthesis engine configured to:

synthesize the pipeline of functional modules into a plurality of interconnected executable components of the software blocks, wherein the machine learning pipeline is synthesized into executable components that execute on at least two different hardware compute elements of the chip; and

generate an implementation package comprising the executable components and specifying interconnections between the executable components, wherein a user is allowed to select a target chip from the library of chips, and the synthesis engine generates the executable components based on the processors on the target chip.

21. A development platform for implementing a machine learning pipeline on a chip containing a plurality of hardware compute elements, the development platform comprising:

a user interface that facilitates a user to develop a functional description of the machine learning pipeline, wherein the functional description specifies a plurality of functional modules that form the pipeline, and at least one functional module includes a machine learning model;

a library of software blocks that implement the functional modules on the hardware compute elements of the chip, wherein the development platform supports a concurrent design of multiple different chips and multiple different versions of chips; and

a synthesis engine configured to:

synthesize the pipeline of functional modules into a plurality of interconnected executable components of the software blocks, wherein the machine learning pipeline is synthesized into executable components that execute on at least two different hardware compute elements of the chip; and

generate an implementation package comprising the executable components and specifying interconnections between the executable components.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 4, 2023
From: SANGENENI, NAVEEN KUMAR
To: SIMA TECHNOLOGIES, INC.
Reel/Frame 063537/0493 →
Continuity (1)
Related Publication 20240338179A1 · Oct 10, 2024
References Cited (33)
US 10078717B1 · Venkataramani · 2018 [cited by examiner]
US 10360654B1 · Maiyuran · 2019 [cited by examiner]
US 10922462B1 · Chen · 2021 [cited by applicant]
US 20130073498A1 · Izhikevich et al. · 2013 [cited by applicant]
US 20180082397A1 · Bobrovsky · 2018 [cited by examiner]
US 20180113797A1 · Breslow et al. · 2018 [cited by applicant]
US 20190324759A1 · Yang et al. · 2019 [cited by applicant]
US 20200250203A1 · Calco et al. · 2020 [cited by applicant]
US 20210055915A1 · Guo · 2021 [cited by examiner]
US 20210081836A1 · Polleri · 2021 [cited by examiner]
US 20210081837A1 · Polleri · 2021 [cited by examiner]
US 20210273993A1 · Shirley et al. · 2021 [cited by applicant]
US 20220107812A1 · Foley · 2022 [cited by applicant]
US 20220138004A1 · Nandakumar · 2022 [cited by applicant]
US 20220261631A1 · Cohen · 2022 [cited by examiner]
US 20220283787A1 · Tang et al. · 2022 [cited by applicant]
US 20230080439A1 · Saha et al. · 2023 [cited by applicant]
US 20230083891A1 · Achin et al. · 2023 [cited by applicant]
US 20230161882A1 · Kumar · 2023 [cited by applicant]
US 20230195471A1 · Millar · 2023 [cited by examiner]
US 20230305814A1 · Sumeet · 2023 [cited by examiner]
US 20240193018A1 · Situnayake · 2024 [cited by examiner]
US 20240220572A1 · Jain · 2024 [cited by examiner]
US 20240241651A1 · Wang et al. · 2024 [cited by applicant]
US 20240320036A1 · Nandakumar · 2024 [cited by examiner]
US 20240338183A1 · Sangeneni · 2024 [cited by examiner]
US 20240338265A1 · Sangeneni · 2024 [cited by examiner]
US 20250045492A1 · Koiek Akino · 2025 [cited by examiner]
Richard Lin et al. “Weaving Schematics and Code: Interactive Visual Editing for Hardware Description Languages”—UIST '21, Oct. 10-14, 2021, Virtual Event, USA. [cited by examiner]
Minutoli, Marco, et al. “Soda: a new synthesis infrastructure for agile hardware design of machine learning accelerators.” Proceedings of the 39th International Conference on Computer-Aided Design. 2020. [cited by examiner]
Uliana, David, Peter Athanas, and Krzysztof Kepa. “FPGA-based accelerator development for non-engineers.” 2014 International Conference on ReConFigurable Computing and FPGAs (ReConFig14). IEEE, 2014. [cited by examiner]
PCT International Search Report and Written Opinion, PCT Application No. PCT/US2024/011655, Apr. 17, 2024, 18 pages. [cited by applicant]
United States Office Action, U.S. Appl. No. 18/132,319, filed Dec. 18, 2024, 35 pages. [cited by applicant]