ROM-Based Function Lookup for Updatable ASIC Software

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing ASICs are inflexible and require lengthy, expensive redesigns to update software due to their fixed architectures, making them unsuitable for rapidly changing markets and evolving medical technologies like glucose monitoring systems.

Innovation Solution

A method for updating ASIC programming by copying a function lookup data structure from ROM to writable memory, referencing a revision lookup data structure to replace functions, and executing revised functions without fabricating new devices, using a processor to manage the process.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If ASICs use fixed ROM-based programming, then manufacturing precision and reliability are improved, but adaptability and ease of repair deteriorate

Engineering Contradiction:
Improveprogramming stabilityVSAvoidsoftware update capability
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The programming memory is segmented into two distinct parts: ROM for storing core reliable functions and writable memory (RAM/Flash) for storing updateable software. This segmentation allows the system to maintain reliability from the ROM portion while gaining adaptability through the writable memory portion that can be updated without affecting the stable core functions.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The invention uses a lookup data structure that copies function references from ROM to writable memory. By copying only the necessary function pointers or addresses rather than the entire programming, the system enables efficient software updates while maintaining the integrity of the original ROM-based programming. The lookup table acts as an intermediary that can be regenerated to point to updated functions in writable memory.

Inventive Principle:
Principle #26Copying

2Adaptability or versatility

If ASICs are redesigned to update software, then adaptability is improved, but manufacturing cost and time increase

Engineering Contradiction:
Improvesoftware update capabilityVSAvoiddevice fabrication complexity
Core Design Contradiction:
Adaptability or versatilityVSEase of manufacture

Solution Approach 1:

The system introduces dynamic update capability by incorporating writable memory (RAM or Flash) alongside the static ROM. This dynamic element allows the ASIC to be reconfigured in the field without requiring physical redesign or remanufacturing. The writable memory can be programmed and reprogrammed as needed, providing flexibility while maintaining the original manufacturing process for the core ASIC.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The invention changes the state of the programming memory from read-only (ROM) to writable (RAM/Flash) for specific portions, allowing software parameters and functions to be modified after manufacturing. This parameter change enables software updates without altering the physical ASIC structure, thereby avoiding the high costs and time associated with redesigning and remanufacturing the entire device.

Inventive Principle:
Principle #35Parameter changes

3Ease of repair

If lookup data structure is copied to writable memory, then ease of repair and adaptability are improved, but device complexity increases

Engineering Contradiction:
Improvesoftware revision capabilityVSAvoidmemory structure complexity
Core Design Contradiction:
Ease of repairVSDevice complexity

Solution Approach 1:

The lookup data structure serves as an intermediary layer between the ROM-based application program and the writable memory. Instead of directly modifying complex program code, the system updates the simpler lookup table that contains function references. This intermediary approach simplifies the update process while enabling comprehensive software revisions, as changing the lookup table automatically redirects all function calls to the updated code in writable memory.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS20250245140A1Systems and methods for revising permanent ROM-based programming
Publication Date: 2025.07.31 ABBOTT DIABETES CARE INC
  • US20250245140A1 patent drawing
  • US20250245140A1 patent drawing
  • US20250245140A1 patent drawing

AI summary

An application program stored in a ROM includes a function lookup data structure in which functions called by the application program have identifiers and memory addresses at which the function is located and can be executed. Upon startup, the function lookup data structure is copied to a RAM as a revised lookup data structure and is compared to a revision lookup data structure also written to that RAM or elsewhere. If the revision lookup data structure contains replacement functions having the same function identifiers but new memory addresses, these new memory addresses are written over the existing addresses in the revised lookup data structure for those replacement functions. The application program refers to the revised lookup data structure to find and execute the functions; thus the original application program on the ROM can continue to be used with revised functions.