CN104200181A - Dual-function intelligent programming module and method - Google Patents

Dual-function intelligent programming module and method Download PDF

Info

Publication number
CN104200181A
CN104200181A CN201410396995.8A CN201410396995A CN104200181A CN 104200181 A CN104200181 A CN 104200181A CN 201410396995 A CN201410396995 A CN 201410396995A CN 104200181 A CN104200181 A CN 104200181A
Authority
CN
China
Prior art keywords
programming
program
programs
burned
version number
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201410396995.8A
Other languages
Chinese (zh)
Other versions
CN104200181B (en
Inventor
张永勣
陈亢
赵浩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Radio Equipment Research Institute
Original Assignee
Shanghai Radio Equipment Research Institute
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Radio Equipment Research Institute filed Critical Shanghai Radio Equipment Research Institute
Priority to CN201410396995.8A priority Critical patent/CN104200181B/en
Publication of CN104200181A publication Critical patent/CN104200181A/en
Application granted granted Critical
Publication of CN104200181B publication Critical patent/CN104200181B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)

Abstract

The invention provides a dual-function intelligent programming method for version contrast display and matching selection version programming at a software storage level. A DSP (Digital Signal Processor) chip programming core which is secondarily developed and independently packaged for generating a programming module is applied to the product development in order to achieve deferential display and optional selection programming of a program in difference versions. Compared with a product with traditional database management and built-in programming core operations, the product with the dual-function intelligent programming module has the greatly-improved design efficiency and ensures the efficient control and programming zero errors of software versions in software development and late upgrading in practical work.

Description

A kind of difunctional intelligent programming module and method
Technical field
The present invention relates to the controlled debugging of software field, particularly a kind of difunctional intelligent programming module based on the controlled exploitation of software.
Background technology
The controlled exploitation of software in laboratory at present, such as dsp software, conventionally according to mission requirements, in conjunction with specific implementation, have multiple versions and exist simultaneously, the management of version is classified voluntarily by developer in development library, and completes after exploitation at software, according to stage and figure number rule, software name is placed in controlled storehouse and is deposited, outbound in the time of needs programming.
Still, after developing in visible no matter exploitation, current is mainly to take people's air defense means to debug the confirmation of programming version by library management.But, due to the real-time change of debugging and functional requirement in exploitation, software is done to repeatedly change, can on developer's computer, preserve multiple versions, be interrupted or when functional baseline disperses when development has, even developer's variation or the factor not on duty such as go on business, capital causes version to be difficult to control effectively, even obscure the variation part between different editions, need so again the each version program of re-examine, reduce development efficiency.Particularly the product guarantee after exploitation, cannot carry out online upgrading, so will guarantee right version programming very, obviously exists deficiency by the library management of people's air defense.And present stage is selected at the hardware of software programming, developer adopts the programming core of dsp chip self to operate more, and function singleness is not easy to exploitation, can not embody advantage especially aspect Version Control and code real-time.
Summary of the invention
The object of the present invention is to provide a kind of difunctional intelligent programming module and method, the version contrast that can carry out software storage aspect shows and match selection edition programming, by the programming core of secondary development dsp chip, individual packages generates programming module, apply it in product development, show and selection programming arbitrarily with the difference realizing between different editions program.
In order to achieve the above object, technical scheme of the present invention is to provide a kind of difunctional intelligent programming method, in the time carrying out programming operation, by the burned program for the treatment of being stored in ROM storage unit, and the burned program being stored in FLASH storage unit is compared;
On interactive interface, show the statement that there are differences between the version number, two programs of two programs and the position at difference place, check for user whether rear selection continues programming operation.
Alternatively, for the program of stored multiple different editions, according to the querying condition of input, on interactive interface, show the version number and the source program that match with querying condition, check for user whether rear selection continues programming operation; Described querying condition is any one in development time, development phase, developer of program or the combination in any of some.
Alternatively, in burned program and treat to compare by looping between burned program, if two programs in the time of the data consistent of the memory address of current comparison, make the numerical value of a comparison indexed variable add one; If when the data of the memory address of current comparison are inconsistent, described comparison indexed variable does not change, and this memory address is write in the array of pointers of a logging program difference position.
Alternatively, after all memory address comparisons are finished, by the numerical value of comparison number of times and comparison indexed variable is compared, judge that whether two programs are consistent;
Or, by judging in the array of pointers of logging program difference position whether have address numerical value, judge that whether two programs are consistent.
Alternatively, when storage program, the definition some array of pointers corresponding from different querying conditions in a database, are stored in the address date of respective pointer array after the version number of program is classified according to different querying conditions;
Address space in ROM storage unit is divided into multiple choosings, stores respectively the program of different editions, and the first address of the sheet choosing of the version number of program and ROM storage unit is shone upon, and comes to match with querying condition.
Another technical scheme of the present invention is to provide a kind of difunctional intelligent programming method, by the interactive interface of industrial computer, selects to enter comparison operation or query manipulation;
While comparing operation, by the burned program for the treatment of being stored in ROM storage unit, and the burned program being stored in FLASH storage unit is compared; On interactive interface, show the statement that there are differences between the version number, two programs of two programs and the position at difference place, check that for user rear selection continues programming operation or program is debugged;
While carrying out query manipulation, by interactive interface input inquiry condition, show the version number and the source program that match with querying condition, check rear continuation programming operation or program is debugged for user.
Another technical scheme of the present invention is to provide a kind of difunctional intelligent programming module, in the programming module of being controlled by the industrial computer being connected, comprise: programming core, and the MCU unit and the dsp chip that are attached thereto respectively, described MCU unit is controlled dsp chip by programming core and is realized above-mentioned programming method;
In described programming core, be further provided with:
Comparing unit, will treat that burned program and burned program compare, and export the statement that there are differences between the version number, two programs of two programs and the position at difference place shows to the interactive interface of industrial computer;
Query unit according to the querying condition of input, is obtained the version number and the source program that match with querying condition and is exported interactive interface demonstration to from database.
Alternatively, in described programming module, also comprise the FLASH storage unit being connected with described programming core, and the JTAG emulation chip being connected with described dsp chip.
Alternatively, described programming module is provided with ROM memory interface, FPGA interface and emulation testing interface.
Compared with prior art, the present invention proposes a kind of version contrast demonstration of software storage aspect and the intelligent method of match selection edition programming, by the programming core of secondary development dsp chip, individual packages generates programming module, apply it in product development, show and selection programming arbitrarily with the difference realizing between different editions program.In real work, the product that adds this module is during upgrading software development and later stage, the programming core operation of comparing traditional library management and carrying, and design efficiency increases greatly, and has guaranteed efficient control and the programming homodyne mistake of software version.
Thereby, difunctional intelligent programming module provided by the invention and method, its advantage is:
1, carry out the comparison of different editions program statement in storage aspect, and show concrete difference, position and the version identifier after comparison at interactive interface, facilitate developer immediately to locate development status and debugging;
2, can store the multiple program versions that produce in exploitation, in interactive interface, can setup times, the querying condition such as stage selects required version, thereby save developer in storehouse or in computer and search different editions and grasp the time of this version functional status, improve development efficiency;
3, when product ensures upgrading, can select required version to upgrade, and clear and definite release status and burned program version compare in interactive interface, whether prompting simultaneously continues operation, the state of avoiding product to bring because upgrade cycle is long is fuzzy, in the time changing support personnel, also can hold very soon the current state of software simultaneously;
4, the programming core of secondary development C5000 family chip, independent design package module is realized the Hardware of intelligent programming technical scheme.
Brief description of the drawings
Fig. 1 is the block diagram that carries out program version contrast Presentation Function in the present invention;
Fig. 2 is the block diagram that carries out query selection program version function in the present invention;
Fig. 3 is the process flow diagram of difunctional intelligent programming method described in the present invention;
Fig. 4 is block diagram and the external interface figure of difunctional intelligent programming module described in the present invention.
Embodiment
The invention provides a kind of difunctional intelligent programming module and method;
First, difunctional described in programming module, one refers to that programming module can automatically compare program newly burned to burned before program and current needs, in interactive interface, show respectively the version number of these two programs, the information such as program statement and place line number at difference place, facilitate developer to locate in time development status and determine whether to continue programming operation; Two refer to the program of each burned version of programming module meeting autostore, and user can impose a condition to inquire about version according to the time etc., and version of display state and source program, guarantees Efficient Development.
Secondly, programming module intelligent, is embodied in by the design respective interface that develops software of industrial computer and provides operation selection, query selection, automatic comparison and storage for above-mentioned functions, and realizes programming operation and source program shows operation with the mechanism of inquiring.Certainly also can carry out according to the actual requirements rich interface instruction, convenient exploitation.
As shown in Figure 1, be the flow process A1 schematic diagram of realizing contrast Presentation Function in the present invention, mainly comprise: version demonstration, statement contrast, difference and position display, carry out programming according to prompting and operate this four parts.
Wherein, emphasis is by the burned program for the treatment of being stored in ROM, and be stored between the burned program in FLASH and carry out statement comparison, on the interface developing software, demonstrate the information such as difference and the position at difference place between version number, two programs of these two programs, so that developer's operation simultaneously.
In real work, having connected in the product of this programming module, flow process is as follows:
First product powers up work, in the interface developing software at industrial computer, carry out programming program, selecting, after comparison function, to demonstrate the current version for the treatment of burned program, then according to treating the first address of burned program in ROM, from stored program address block, the data reading of burned program will be treated;
Equally, the first address using burned program in FLASH is as start address, from memory address piece by the data reading of burned program.
A comparison indexed variable flag is set, utilizes and loop two comparisons between program:
In an example, if the data consistent of a certain position memory address between two programs, flag variable automatically+1; If data are inconsistent, flag variable does not change.In the operation adding, add an array of pointers change[at flag] carry out the memory address that there are differences after logging program comparison, after certain memory address is compared, flag variable does not have vicissitudinously, this memory address is write to change[] in.
After comparison finishes, can, by comparison number of times and flag variate-value are compared to judge that whether two programs are consistent, also can pass through change[] have or not address numerical value to judge in array.Change[] address of storing in array can be ROM address, desired data has been shone upon in this address, is used for further in the interactive interface developing software, showing statement and the line number position that two version programs there are differences; In interface, also identify version number, to facilitate developer immediately to grasp program.
Finally in interface, provide and select operation, one of them option to represent that programming program continues to carry out to complete the programming to present procedure (being the aforementioned burned program for the treatment of); Wherein another option represents operation termination, exits programming program, and user can, according to the program difference showing, continue debugging.
As shown in Figure 2, be the flow process A2 schematic diagram of realizing according to condition automatic query selection version in the present invention and carry out programming function, mainly comprise: querying condition setting, the storage of different editions program, source program show this three parts.
Wherein, emphasis is querying condition setting, by setting up a small-sized matching database, and the multiple mapping coupling of realization condition and version.Can be according to Software Development cycle and subsequent modification in the present invention, setting was inquired about according to the time; Or, can, according to the control of software development phase, arrange and inquire about according to first sample, sample, sizing and payment; Or, inquiry developer can also be set and select version, facilitate continuity and the product up-gradation safeguard work of design effort.
That is, in database, define development time, development phase, three array of pointers of developer, the version information under each condition is stored in the address date of respective pointer array.Address space in chip ROM is divided into multiple choosings simultaneously, facilitates each different program version of corresponding stored in follow-up work.Storage operation can realize with the mechanism of inquiring in interactive interface, selects after storage, the program copy of current version can be selected in space to the sheet of specifying.To mate in order realizing with the multiple of Query Database conditional, the first address of version number and the choosing of ROM sheet need to be done and shines upon.When in the interactive interface developing software when input inquiry condition, according to designer's demand, the version number and the source program that meet this condition both can be demonstrated like this.Then deviser can select carry out programming or call version and debug according to the actual requirements.
In real work, the flow process of query selection program version is as follows:
In the interface developing software at industrial computer, carry out programming program, selecting after query function, read the querying condition of user input, utilize the mapping relations between querying condition and program version in database number, obtain the program version information matching with querying condition and show.
Select according to user, can, further according to the mapping relations of the first address of version number and the choosing of ROM sheet, obtain the first address of the ROM sheet choosing matching, carry out the source program of calling stored.
Afterwards, provide at interface and select operation, one of them option, expression shows source program and continues debugs; Wherein another option, represents to select the program of the version matching with querying condition to complete programming.
As shown in Figure 3, and can find out in conjunction with Fig. 1 and Fig. 2, method of the present invention, for the product that has connected this programming module, is to power up after work at product, carries out programming program at industrial computer in the interface developing software; On interface, show respective selection, select to compare function for user, or select to carry out query function:
Selecting, after comparison function, to enter comparison flow process A1 as shown in Figure 1, checking behind burned program and burned program version and difference statement and line number position user, selecting program to debug according to user, or completing programming operation.
Selecting, after query function, to enter querying flow A2 as shown in Figure 2, check user after the program version (or further checking source program) matching with querying condition, select program to debug according to user, or complete programming operation.
Method of the present invention is simple to operate, and interface is clear, feature richness.Consider the various situations that may occur in software programming, to help designer to determine next step operation, even designer's Shi Douke programming work of being correlated with smoothly that is absent from the scene.
As shown in Figure 4, be hardware block diagram and the external interface figure of the present invention's intelligence programming module.In described programming module (shown in dotted line), by the secondary development to programming core, for example, adopt method described in literary composition to realize difunctional intelligent programming by MCU unit controls dsp chip (being the C5000 of TI company series).Meanwhile, in this programming module, also integrate FLASH storage unit and JTAG emulation chip, realized the individual packages of module.External control is realized by the industrial computer being connected with this programming module, the interface that this programming module also possesses ROM memory interface, uses for FPGA interface and the emulation testing of hardware development.Designer, in the actual development of product, can connect this programming module by forms such as connectors, in debugging programming process, uses, and greatly improves design efficiency and debugging programming guarantee.
In sum, the present invention relates to different editions contrast in the controlled debugging programming of software process and show and match selection technology, can encapsulate separately and realize Hardware, there is good understandable interactive interface, reliability is strong, has effectively ensured developer's later stage programming debugging and product up-gradation work.Realize after this technical scheme by programming, select the dsp chip of the C5000 of TI company series, original programmable device and programming core are carried out to secondary development, independent design is also packaged into difunctional intelligent programming module, to use when other product designs, the obscuring and stop the old edition multiplying question in product later stage safeguard work of the numerous generations of version while having solved developer's debugged program, has improved software development efficiency greatly.
Although content of the present invention has been done detailed introduction by above preferred embodiment, will be appreciated that above-mentioned description should not be considered to limitation of the present invention.Read after foregoing those skilled in the art, for multiple amendment of the present invention and substitute will be all apparent.Therefore, protection scope of the present invention should be limited to the appended claims.

Claims (9)

1. a difunctional intelligent programming method, is characterized in that,
In the time carrying out programming operation, by the burned program for the treatment of being stored in ROM storage unit, and the burned program being stored in FLASH storage unit is compared;
On interactive interface, show the statement that there are differences between the version number, two programs of two programs and the position at difference place, check for user whether rear selection continues programming operation.
2. programming method as claimed in claim 1, is characterized in that,
For the program of stored multiple different editions, according to the querying condition of input, on interactive interface, show the version number and the source program that match with querying condition, check for user whether rear selection continues programming operation; Described querying condition is any one in development time, development phase, developer of program or the combination in any of some.
3. programming method as claimed in claim 1, is characterized in that,
In burned program and treat to compare by looping between burned program, if two programs in the time of the data consistent of the memory address of current comparison, make the numerical value of a comparison indexed variable add one; If when the data of the memory address of current comparison are inconsistent, described comparison indexed variable does not change, and this memory address is write in the array of pointers of a logging program difference position.
4. programming method as claimed in claim 3, is characterized in that,
After all memory address comparisons are finished, by the numerical value of comparison number of times and comparison indexed variable is compared, judge that whether two programs are consistent;
Or, by judging in the array of pointers of logging program difference position whether have address numerical value, judge that whether two programs are consistent.
5. programming method as claimed in claim 2, is characterized in that,
When storage program, the definition some array of pointers corresponding from different querying conditions in a database, are stored in the address date of respective pointer array after the version number of program is classified according to different querying conditions;
Address space in ROM storage unit is divided into multiple choosings, stores respectively the program of different editions, and the first address of the sheet choosing of the version number of program and ROM storage unit is shone upon, and comes to match with querying condition.
6. a difunctional intelligent programming method, is characterized in that,
By the interactive interface of industrial computer, select to enter comparison operation or query manipulation;
While comparing operation, by the burned program for the treatment of being stored in ROM storage unit, and the burned program being stored in FLASH storage unit is compared; On interactive interface, show the statement that there are differences between the version number, two programs of two programs and the position at difference place, check that for user rear selection continues programming operation or program is debugged;
While carrying out query manipulation, by interactive interface input inquiry condition, show the version number and the source program that match with querying condition, check rear continuation programming operation or program is debugged for user.
7. a difunctional intelligent programming module, is characterized in that,
In the programming module of being controlled by the industrial computer being connected, comprise: programming core, and the MCU unit and the dsp chip that are attached thereto respectively, described MCU unit is controlled dsp chip by programming core and is realized the programming method as described in any one in claim 1 ~ 6;
In described programming core, be further provided with:
Comparing unit, will treat that burned program and burned program compare, and export the statement that there are differences between the version number, two programs of two programs and the position at difference place shows to the interactive interface of industrial computer;
Query unit according to the querying condition of input, is obtained the version number and the source program that match with querying condition and is exported interactive interface demonstration to from database.
8. programming module as claimed in claim 7, is characterized in that,
In described programming module, also comprise the FLASH storage unit being connected with described programming core, and the JTAG emulation chip being connected with described dsp chip.
9. programming module as claimed in claim 8, is characterized in that,
Described programming module is provided with ROM memory interface, FPGA interface and emulation testing interface.
CN201410396995.8A 2014-08-13 2014-08-13 A kind of difunctional intelligent programming module and method Expired - Fee Related CN104200181B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410396995.8A CN104200181B (en) 2014-08-13 2014-08-13 A kind of difunctional intelligent programming module and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410396995.8A CN104200181B (en) 2014-08-13 2014-08-13 A kind of difunctional intelligent programming module and method

Publications (2)

Publication Number Publication Date
CN104200181A true CN104200181A (en) 2014-12-10
CN104200181B CN104200181B (en) 2017-04-05

Family

ID=52085472

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410396995.8A Expired - Fee Related CN104200181B (en) 2014-08-13 2014-08-13 A kind of difunctional intelligent programming module and method

Country Status (1)

Country Link
CN (1) CN104200181B (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105354106A (en) * 2015-10-29 2016-02-24 惠州市蓝微电子有限公司 Burning error proofing method for brushless motor control management IC
CN106897222A (en) * 2017-02-23 2017-06-27 上海与德信息技术有限公司 TP firmwares changing method and device
CN109408102A (en) * 2018-09-04 2019-03-01 珠海格力电器股份有限公司 Version comparison method and device, household electrical appliance and network equipment

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040031979A (en) * 2002-10-08 2004-04-14 엘지전자 주식회사 Upgrade method for operating system in information terminal
CN1598772A (en) * 2004-08-31 2005-03-23 四川长虹电器股份有限公司 Program updating method of single chip processor
CN1786910A (en) * 2004-12-09 2006-06-14 华为技术有限公司 BIOS on-line upgrading method
CN1991761A (en) * 2005-12-30 2007-07-04 北京华旗资讯数码科技有限公司 Firmware program on-line upgrading method and hardware equipment
CN101556583A (en) * 2008-04-10 2009-10-14 上海宝康电子控制工程有限公司 Method for efficiently controlling embedded linux file system version
CN102334100A (en) * 2009-02-24 2012-01-25 富士通天株式会社 Program update device, program update method, and information processing device
CN202796079U (en) * 2012-09-17 2013-03-13 山东神戎电子股份有限公司 Portable program burner
US20140089655A1 (en) * 2011-02-14 2014-03-27 Timothy M. Lambert System and method for auto-failover and version matching of bootloader in an access controller

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040031979A (en) * 2002-10-08 2004-04-14 엘지전자 주식회사 Upgrade method for operating system in information terminal
CN1598772A (en) * 2004-08-31 2005-03-23 四川长虹电器股份有限公司 Program updating method of single chip processor
CN1786910A (en) * 2004-12-09 2006-06-14 华为技术有限公司 BIOS on-line upgrading method
CN1991761A (en) * 2005-12-30 2007-07-04 北京华旗资讯数码科技有限公司 Firmware program on-line upgrading method and hardware equipment
CN101556583A (en) * 2008-04-10 2009-10-14 上海宝康电子控制工程有限公司 Method for efficiently controlling embedded linux file system version
CN102334100A (en) * 2009-02-24 2012-01-25 富士通天株式会社 Program update device, program update method, and information processing device
US20140089655A1 (en) * 2011-02-14 2014-03-27 Timothy M. Lambert System and method for auto-failover and version matching of bootloader in an access controller
CN202796079U (en) * 2012-09-17 2013-03-13 山东神戎电子股份有限公司 Portable program burner

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105354106A (en) * 2015-10-29 2016-02-24 惠州市蓝微电子有限公司 Burning error proofing method for brushless motor control management IC
CN106897222A (en) * 2017-02-23 2017-06-27 上海与德信息技术有限公司 TP firmwares changing method and device
CN109408102A (en) * 2018-09-04 2019-03-01 珠海格力电器股份有限公司 Version comparison method and device, household electrical appliance and network equipment

Also Published As

Publication number Publication date
CN104200181B (en) 2017-04-05

Similar Documents

Publication Publication Date Title
Gajski et al. Specification and design of embedded systems
US6941546B2 (en) Method and apparatus for testing a software component using an abstraction matrix
CN107766045B (en) Apparatus, system and method for providing a visualization program for a machine vision system
US20050240917A1 (en) Software configuration program for software applications
CN112270149B (en) Verification platform automatic integration method and system, electronic equipment and storage medium
US20200359094A1 (en) Screen parameter configuration system
CN108920496B (en) Rendering method and device
CN104679488A (en) Flow path customized development platform and method
Frakes et al. Software engineering in the UNIX/C environment
CN104050080A (en) Method and system for debugging linux kernel in user mode
WO2016026328A1 (en) Information processing method and device and computer storage medium
WO2015039628A1 (en) Visualization step programming method
CN107203465A (en) System interface method of testing and device
CN105204837B (en) Method and device for realizing logic programming
US11328101B2 (en) Data processing method for blueprint design, PLM widget and computation device
Pratomo et al. Arduviz, a visual programming IDE for arduino
Williams Professional Java for Web Applications
US9286426B2 (en) Method and apparatus for testing
CN109359038A (en) One kind realizing configurable test system, implementation method and equipment based on Qt and Lua combination
CN104200181A (en) Dual-function intelligent programming module and method
CN109284222B (en) Software unit, project testing method, device and equipment in data processing system
CN103176894A (en) Test data automatic derivative method and automatic derivative device facing database
CN103049374A (en) Automatic testing method and device
CN117234470B (en) Cross-end form development system and method based on low-code platform
KR100994070B1 (en) A Reserved Component Container Based Software Development Method and Apparatus

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20170405

Termination date: 20210813

CF01 Termination of patent right due to non-payment of annual fee