Patent US4225901A successfully refreshed from Google Patents.
Patent US5933641A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5933641A Expired / Lapsed US ⏱️ 0.0 years remaining

Numeric intensive real-time software development system

Assignee: Cirrus Logic Inc
•
Filing: 1997-03-24
•
Granted: 1999-08-03
•
Expires: 2017-03-24
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract This invention describes a numeric intensive real-time software development system for programming low cost fixed point digital signal processors (DSP's) and other programmable devices in which code efficiency, ease of programming and code portability are maintained. DSP's being a generic math engine are proliferating into many areas, far beyond the traditional filtering applications. Numeric intensive is the most distinctive nature of the DSP software, and one of the biggest challenges in DSP software development is to implement complicated math algorithms in low cost fixed-point DSP's. The software development system describes an approach where low level assembly language is enhanced with high level syntax and further augmented with an enhance numeric handler for converting between numeric formats. Debug of the DSP programs is aided by the numeric format conversion and the use of high level syntax. The resulting program is written to a driver interface which facilitates porting code between different DSP's.

Inventors

  • 👤 Wei Ma

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-03 07:18
CPC Classifications
G; G06; G06F; G06F8/00; G06F8/20

Claims Analysis

Total Claims: 20
Claim 1
Independent Claim 231 words
A numeric intensive real-time software development system for digital signal processors (DSP) and microprocessors, comprising: a) A user interface providing text and graphics to a programmer, b) said user interface connected to assembly language, an enhanced numeric handler, DSP status, and DSP control command to provide said programmer with programming and debug capability, c) said assembly language providing DSP instructions to an assembler and linker, d) said enhanced numeric handler connected to said assembler and linker, e) said enhanced numeric handler providing numeric data and format to said assembler and linker converted into DSP executable format, f) said assembler and linker connected to a DSP description library to obtain characteristic data for the DSP type being programmed, g) said assembler and linker providing data and program in native DSP assembly language to a set of drivers to be connected to a specific DSP, h) the DSP control command providing control data from the user interface to the specific DSP through the set of drivers, i) said DSP status connected from the set of drivers to the assembler and linker, the high level syntax and the user interface, j) the set of drivers connecting DSP data to a dissembler and the DSP description library. k) said dissembler connecting dissembled DSP data and program to the enhanced numeric handler and the assembly language to be presented to the programmer through the user interface.
Claim 2
Dependent Claim 231 words
A numeric intensive real-time software development system for digital signal processors (DSP) and microprocessors, comprising: a) A user interface providing text and graphics to a programmer, b) said user interface connected to assembly language, an enhanced numeric handler, DSP status, and DSP control command to provide said programmer with programming and debug capability, c) said assembly language providing DSP instructions to an assembler and linker, d) said enhanced numeric handler connected to said assembler and linker, e) said enhanced numeric handler providing numeric data and format to said assembler and linker converted into DSP executable format, f) said assembler and linker connected to a DSP description library to obtain characteristic data for the DSP type being programmed, g) said assembler and linker providing data and program in native DSP assembly language to a set of drivers to be connected to a specific DSP, h) the DSP control command providing control data from the user interface to the specific DSP through the set of drivers, i) said DSP status connected from the set of drivers to the assembler and linker, the high level syntax and the user interface, j) the set of drivers connecting DSP data to a dissembler and the DSP description library. k) said dissembler connecting dissembled DSP data and program to the enhanced numeric handler and the assembly language to be presented to the programmer through the user interface.
Claim 3
Dependent Claim 32 words
The numeric intensive real-time software development system of claim 1, wherein the DSP programming is based on assembly language to handle real time behaviors and achieve optimized implementation of the DSP program.
Claim 4
Dependent Claim 39 words
The numeric intensive real-time software development system of claim 2, wherein DSP assembly language is augmented by the high level syntax for ease of programming and the enhanced numeric handler to assist in numerical format conversion for program debug.
Claim 5
Dependent Claim 133 words
The numeric intensive real-time software development system of claim 1, wherein real-time DSP data is fed back to a programmer for debug purposes, comprising: a) DSP memory resident data and program, and register data connected through a set of drivers to the dissembler, b) the dissembled data and program connected to the high level syntax and the enhanced numeric handler for display to the programmer through the user interface, c) the data format provided by the enhanced numeric handler selected by the programmer, d) the data format changed without affecting any physical data or program in the DSP, e) the data format can be chosen from a menu of a wide range of formats selected from the group consisting of single and double precision, decimal and hexadecimal, and floating point and fixed point.
Claim 6
Dependent Claim 189 words
The numeric intensive real-time software development system of claim 1, wherein each different type of DSP is connected to the system through a driver interface, comprising: a) each set of drivers for different types of DSP's provide an interface to which the assembly language can be developed, b) said interface requiring additional changes only to architectural dependent instructions and low level development tools to be able to port code from one DSP to another, c) multiple driver sets can be connected to the software development system, d) multiple DSP's connected to the multiple drivers at one time, e) an active DSP and compatible driver set can be activated by a target DSP control command, f) said target control command providing DSP selection, start, stop and debug commands, g) said driver set contains DSP hardware description file describing the active DSP architecture, h) the active DSP architecture connected to the assembler, high level syntax and user interface by the target DSP status function, i) in the absence of any physical DSP hardware attached to the drivers, a software simulator is attached to a particular driver set to permit code development.
Claim 7
Dependent Claim 127 words
The numeric intensive real-time software development system of claim 1, wherein a DSP can be monitored and controlled in real-time to assist in debug of the DSP program, comprising: a) an operating DSP continuously monitored through the dissembler and target status connected to the drivers, b) the dissembler providing DSP memory and register data to the programmer through the enhanced numeric handler, c) data and program modifications created by the programmer connected to the DSP hardware through the drivers from the assembler and linker, d) the program modifications routed to the assembler and linker from the high level syntax and enhanced numeric handler, e) results of the modifications are fed back in real-time through the drivers, dissembler and enhanced numeric handler and displayed on the user interface.
Claim 8
Dependent Claim 118 words
A real-time software development system for digital signal processors (DSP), comprising: a) a programming language based on assembly language, b) said assembly language enhanced with numeric representation through means of an enhanced numeric handler, c) said assembly language providing capability to produce efficient code, d) said extensive numeric handler providing means to convert between internal DSP integer format and various numeric formats used by a DSP program, e) said extensive numeric handler providing assistance to programmer during program debug through conversion of the internal DSP integer format to various formats that are used by the program, f) said use of the extensive numeric handler allows the programmer to investigate other numeric formats to provide more accuracy and efficiency.
Claim 9
Dependent Claim 118 words
A real-time software development system for digital signal processors (DSP), comprising: a) a programming language based on assembly language, b) said assembly language enhanced with numeric representation through means of an enhanced numeric handler, c) said assembly language providing capability to produce efficient code, d) said extensive numeric handler providing means to convert between internal DSP integer format and various numeric formats used by a DSP program, e) said extensive numeric handler providing assistance to programmer during program debug through conversion of the internal DSP integer format to various formats that are used by the program, f) said use of the extensive numeric handler allows the programmer to investigate other numeric formats to provide more accuracy and efficiency.
Claim 10
Dependent Claim 34 words
The real-time software development system of claim 7, wherein the C language syntax combined with assembly language produces an improved low level language efficient in real-time code generation that deals well with numeric behaviors.
Claim 11
Dependent Claim 92 words
The real-time software development system of claim 7, wherein changing displayed data to other numeric formats assists a programmer in debugging a fixed-point DSP program, comprising: a) DSP internal data stored in two byte integer format, b) one or more two byte integer segments used to represent numerical data formats used by the DSP program, c) an enhanced numerical handler providing conversion between various data formats, d) said conversion under the selection and control of the programmer, e) said conversion improving program debug by eliminating numerous tedious calculations to convert between formats.
Claim 12
Dependent Claim 125 words
A software development system for developing and debugging code for digital signal processor (DSP) programs, comprising: a) algorithm design and simulation for a DSP program producing C code, b) said algorithm design done in C language to produce a functionally explicit description of the DSP program, c) said C code used as input to implement the algorithm design with numeric representation through means of an enhanced numeric handler, d) an assembly language output from implementing the algorithm design connected to an assembly language translator and compiler, e) the assembly language translator and compiler producing assembly code, f) said assembly code used as input to an assembler and linker, g) an assembled output of the assembler and linker connected to a debugger for numeric results analysis.
Claim 13
Dependent Claim 125 words
A software development system for developing and debugging code for digital signal processor (DSP) programs, comprising: a) algorithm design and simulation for a DSP program producing C code, b) said algorithm design done in C language to produce a functionally explicit description of the DSP program, c) said C code used as input to implement the algorithm design with numeric representation through means of an enhanced numeric handler, d) an assembly language output from implementing the algorithm design connected to an assembly language translator and compiler, e) the assembly language translator and compiler producing assembly code, f) said assembly code used as input to an assembler and linker, g) an assembled output of the assembler and linker connected to a debugger for numeric results analysis.
Claim 14
Dependent Claim 60 words
The software development system of claim 10, wherein program debug is assisted by use of the debugger output, comprising: a) said debugger dissembles the assembly language code back to DSP-C code for problem analysis, b) said debugger converts DSP numeric data bits back into native numerical format to determine if the correct mathematical operations were performed with the correct accuracy.
Claim 15
Independent Claim 137 words
A method for creating and debugging code for a DSP program, comprising: a) designing an algorithm, b) creating instructions to implement said algorithm, c) compiling and translating into assembly language code, d) selecting a data format using a numeric handling facility, e) assembling and linking the assembly language code with the data format into machine level binary code for a target processor, f) dissembling the machine level binary code for debug purposes, g) displaying data format through the numeric handling facility, h) displaying program instructions to a user to allow modifications, i) changing program instructions to improve program code, j) viewing different data formats by means of the numeric handling facility, k) selecting a data format to improve data accuracy and resolution, l) re-assembling and re-linking the assembly language code with changes to instruction and data format.
Claim 16
Independent Claim 137 words
A method for creating and debugging code for a DSP program, comprising: a) designing an algorithm, b) creating instructions to implement said algorithm, c) compiling and translating into assembly language code, d) selecting a data format using a numeric handling facility, e) assembling and linking the assembly language code with the data format into machine level binary code for a target processor, f) dissembling the machine level binary code for debug purposes, g) displaying data format through the numeric handling facility, h) displaying program instructions to a user to allow modifications, i) changing program instructions to improve program code, j) viewing different data formats by means of the numeric handling facility, k) selecting a data format to improve data accuracy and resolution, l) re-assembling and re-linking the assembly language code with changes to instruction and data format.
Claim 17
Dependent Claim 20 words
The method of claim 12, wherein code can be developed and debugged for other types of processors for numeric applications.
Claim 18
Dependent Claim 31 words
The method of claim 12, wherein the numeric handling facility displays various numerical formats to a user to assist in selecting a data format for the program being developed and debugged.
Claim 19
Dependent Claim 18 words
The method of claim 12, wherein the DSP-C language is DSP assembly language augmented with "C" language syntax.
Claim 20
Dependent Claim 18 words
The method of claim 12, wherein other languages could be used to develop code for the target processor.

References Cited (Backward Citations)

US5375228A Cited
US5265254A Cited
US5450586A Cited
US5724272A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2002-08-02 2003-02-01 2003-08-03 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2006-08-02 2007-02-01 2007-08-03 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2010-08-02 2011-02-01 2011-08-03 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag