CN109445846A - A kind of NDK adaptation layer transplantation method - Google Patents
A kind of NDK adaptation layer transplantation method Download PDFInfo
- Publication number
- CN109445846A CN109445846A CN201811277065.5A CN201811277065A CN109445846A CN 109445846 A CN109445846 A CN 109445846A CN 201811277065 A CN201811277065 A CN 201811277065A CN 109445846 A CN109445846 A CN 109445846A
- Authority
- CN
- China
- Prior art keywords
- file
- ndk
- ethdriver
- function
- deletes
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/76—Adapting program code to run in a different environment; Porting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/73—Program documentation
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Library & Information Science (AREA)
- Computer Security & Cryptography (AREA)
- Pharmaceuticals Containing Other Organic And Inorganic Compounds (AREA)
Abstract
The present invention relates to a kind of NDK adaptation layer transplantation method, technical characterstic is: the following steps are included: step 1, acquisition NDK2.0.0 compressed package;Step 2, replacement header file;Step 3, replacement macrodefinition file;Step 4 realizes call back function;Step 5, selection phy interface;Step 6, selection PHY value simultaneously enable EMAC;Step 7, modification HwInt () function definition;Step 8 deletes damping function;Step 9, configuration Mdio operating mode;Step 10 deletes conflict file;Step 11 increases macrodefinition;Step 12, addition protocol stack;Step 13, modification heap size;Step 14 deletes manual task and automatically creates task.The present invention provides the implementation method under the conditions of new opplication for the ethernet communication function of TMS320C6455, extends the life cycle of the processor of TMS320C6455 this excellent cost performance.
Description
Technical field
The invention belongs to embedded processor technology fields, are related to the NDK adaptation layer transplantation method of DSP, especially a kind of
Under CCS5.5 Integrated Development Environment, the adaptation TMS320C6455's based on NDK2.21.2.43 and SYS/BIOS6.35.4.50
NDK adaptation layer transplantation method.
Background technique
NDK (Network Developer ' s Kit) is that the exploitation on embeded processor that is used to that TI is provided is based on net
The development platform of network program, it is current to support TMS320C6000DSP series and arm processor.The platform of support has C64P, C66,
C674, ARM9, Cortex-A8, and Cortex-M3 equipment.TI company provides adaptation layer (NSP, NDK simultaneously for NDK
Support Package), to be adapted to specific hardware platform, serve as the role of network-driven.
Since TMS320C6455 type DSP has excellent performance, cheap, kept so far in industries such as communication, the radars in China
Very high frequency of use, annual consumption it is huge.But TI company is to promote its New DSP, gradually eliminates pair
The adaptation layer of C64P series processors is only supported to NDK2.0.0 in the technical support of TMS320C6455, while NDK2.0.0 is only
It is adapted to CCS3.3 exploitation environment and DSP/BIOS operating system.This causes the ethernet communication function of TMS320C6455 can not be same
Recent systems are compatible, limit it and continue as Communication in China, the best optional DSP model of radar industry.And so far without effectively
Method solves the problems, such as this, and numerous engineers can only develop TMS320C6455 using old tool, using aging method, efficiency
Lowly, a large amount of manpower and material resources are wasted.
TMS320C6455 type DSP in order to have excellent performance, cheap can continue to as industries such as Communication in China, radars
Contribute, it is necessary to the adaptation layer of C64P series processors is transplanted, be adapted to highest version NDK, CCS5.5 exploitation environment and
SYS/BIOS operating system.The present invention provides a kind of NDK adaptation layer transplantation methods.
Summary of the invention
It is an object of the invention to overcome the deficiencies in the prior art, propose a kind of NDK adaptation layer transplantation method, solve
It the problem of CCS5.5 Integrated Development Environment, NDK2+ version, SYS/BIOS and TMS320C6455 compatibility adaptation, realizes
The ethernet communication function of TMS320C6455.
The present invention solves its realistic problem and adopts the following technical solutions to achieve:
A kind of NDK adaptation layer transplantation method, comprising the following steps:
Step 1 logs in TI official website acquisition NDK2.0.0 compressed package, and source code and head text are copied out after being decompressed
Part is adapted to the NSP of NDK2.0.0 for C6455, subsequent to modify to this file;
Step 2, the header file for deleting preceding 6 adaptations DSP/BIOS in ethdriver.c file, accordingly replace with SYS/
The corresponding header file of BIOS, and add #include<soc.h>header file;
Step 3 deletes critical zone protective switch interruption macrodefinition in ethdriver.c file, accordingly replaces with SYS/
The corresponding macrodefinition file of BIOS;
Step 4, the C6455EMAC_getConfig for realizing HwPktInit () function call in ethdriver.c file
() call back function configures interrupt number and MAC Address;
Step 5, the physical interface mode used in ethdriver.c file according to C6455EMAC module select to correspond to
One of tetra- kinds of interfaces of MII, RMII, GMII, RGMII;
Step 6 corresponds in HwPktOpen () function according in physical chip modification ethdriver.c file
The value of ecfg.UseMdio, 1 represents using PHY, the 0 no PHY of expression, and calls addition code before EMAC_open () function will
EMAC is enabled;
HwInt () function is defined as void HwInt (void* in step 7, modification ethdriver.c file
pCallbackArg);
BCACHE_ in step 8, deletion ethdriver.c file in Interrupt_init () damping function
invL1pAll();
Step 9 configures Mdio operating mode in csl_emac.c file;
Step 10 deletes csl_error.h, cslr_ectl.h and cslr_emac.h and cslr_ in inc file
Tetra- conflict files of mdio.h;
Step 11, increase _ INCLUDE_NIMU_CODE macrodefinition;
Step 12 adds protocol stack in cfg file;
Step 13 modifies heap size in cfg file;
Step 14 deletes the manual CreateTask task of version before NDK2.0, and it is automatic wound that cfg file, which increases code configuration,
Build task.
Moreover, the step 12 method particularly includes:
Add NDK/Global to my is chosen in cfg file → NDK Core Stack → Global
configuration。
Moreover, the step 13 method particularly includes:
Cfg file → BIOS.heapSize=0x20000.
The advantages of the present invention:
The present invention only pass through modification part official driver solve CCS5.5 Integrated Development Environment,
The problem of NDK2.21.2.43, SYS/BIOS6.35.4.50 and TMS320C6455 compatibility adaptation, change not being related to hardware
Ethernet communication function in the case where dynamic for TMS320C6455 provides the implementation method under the conditions of new opplication, extends
The life cycle of the processor of this excellent cost performance of TMS320C6455.
Detailed description of the invention
Fig. 1 is process flow diagram of the invention.
Specific embodiment
The embodiment of the present invention is described in further detail below in conjunction with attached drawing:
Hardware platform of the invention is based on DSP (TMS320C6455) and FPGA (Virtex5SX95T) mixed architecture, integrates
It develops environment and uses CCS5.5, XDCTools3.23.4.60 component provides SYS/BIOS operating system and supports, operating system version
Using SYS/BIOS6.35.4.50, NDK version uses NDK2.21.2.43.
A kind of NDK adaptation layer transplantation method, as shown in Figure 1, comprising the following steps:
Step 1 logs in TI official website
http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/
ndk/index.
Html obtains NDK2.0.0 compressed package, copies out after being decompressed
Ndk_2_0_0 packages ti ndk src hal dsk6455 eth_c6455 file, this document clip pack
Containing source code and header file, the NSP of NDK2.0.0 is adapted to for C6455, it is subsequent to modify to this file.
Step 2, the header file for deleting preceding 6 adaptations DSP/BIOS in ethdriver.c file, accordingly replace with SYS/
The corresponding header file of BIOS:
#include<ti/sysbios/family/c64p/Cache.h>
#include<ti/sysbios/family/c64p/Hwi.h>
#include<ti/ndk/inc/stkmain.h>
Add #include<soc.h>header file.
Step 3, the critical zone protective switch for deleting the 34th, 35 rows in ethdriver.c file interrupt macrodefinition, accordingly replace
It is changed to the corresponding macrodefinition file of SYS/BIOS:
#define Disable_DSP_Interrupts(IntFlag)Hwi_disableIER(IntFlag)
#define Enable_DSP_Interrupts(IntFlag)Hwi_enableIER(IntFlag)
Step 4 realizes HwPktInit () function call in ethdriver.c file
C6455EMAC_getConfig () call back function configures interrupt number and MAC Address.
Step 5, the physical interface mode used in ethdriver.c file according to C6455EMAC module select to correspond to
One of tetra- kinds of interfaces of MII, RMII, GMII, RGMII.
Step 6 corresponds in HwPktOpen () function according in physical chip modification ethdriver.c file
The value of ecfg.UseMdio, 1 represents and uses PHY, and 0 indicates no PHY, and by pi- > TxFree=0;It replaces with
Addition following code before EMAC_open () function is called to enable EMAC.
CSL_FINST(((CSL_DevRegs*)CSL_DEV_REGS)->PERLOCK,DEV_PERLOCK_LOCKVAL,
UNLOCK);
CSL_FINST(((CSL_DevRegs*)CSL_DEV_REGS)->PERCFG0,DEV_PERCFG0_EMACCTL,
ENABLE);
HwInt () function is defined as void HwInt (void* in step 7, modification ethdriver.c file
pCallbackArg)。
BCACHE_invL1pAll in step 8, deletion ethdriver.c file in Interrupt_init () function
();
Step 9 configures Mdio operating mode in csl_emac.c file;
In the present embodiment, the step 9 method particularly includes:
The 1242nd row adds in csl_emac.c file
Step 10 deletes csl_error.h, cslr_ectl.h and cslr_emac.h and cslr_ in inc file
Tetra- files of mdio.h.
Step 11, increase in engineering → properties → Advanced Options → Predefined Symbols _
INCLUDE_NIMU_CODE macrodefinition.
Step 12 adds protocol stack in cfg file;
In the present embodiment, the step 12 method particularly includes:
Add NDK/Global to my is chosen in cfg file → NDK Core Stack → Global
configuration。
Step 13 modifies heap size in cfg file;
In the present embodiment, the step 13 method particularly includes:
Cfg file → BIOS.heapSize=0x20000.
Step 14 deletes the manual CreateTask task of version before NDK2.0, and cfg file increases following code and is configured to certainly
Dynamic creation task.
Global.stackInitHook=" &stackInitHook ";
Global.networkOpenHook=" &networkOpenHook ";
Global.networkCloseHook=" &networkCloseHook ";
It is emphasized that embodiment of the present invention be it is illustrative, without being restrictive, therefore the present invention includes
It is not limited to embodiment described in specific embodiment, it is all to be obtained according to the technique and scheme of the present invention by those skilled in the art
Other embodiments, also belong to the scope of protection of the invention.
Claims (3)
1. a kind of NDK adaptation layer transplantation method, it is characterised in that: the following steps are included:
Step 1 logs in TI official website acquisition NDK2.0.0 compressed package, copies out source code and header file after being decompressed, is
C6455 is adapted to the NSP of NDK2.0.0, subsequent to modify to this file;
Step 2, the header file for deleting preceding 6 adaptations DSP/BIOS in ethdriver.c file, accordingly replace with SYS/BIOS pairs
The header file answered, and add #include<soc.h>header file;
Step 3 deletes critical zone protective switch interruption macrodefinition in ethdriver.c file, accordingly replaces with SYS/BIOS pairs
The macrodefinition file answered;
Step 4 realizes that the C6455EMAC_getConfig () of HwPktInit () function call in ethdriver.c file is returned
Letter of transfer number configures interrupt number and MAC Address;
Step 5, the physical interface mode used in ethdriver.c file according to C6455EMAC module select corresponding MII,
One of tetra- kinds of interfaces of RMII, GMII, RGMII;
Step 6 corresponds in HwPktOpen () function according in physical chip modification ethdriver.c file
The value of ecfg.UseMdio, 1 represents using PHY, the 0 no PHY of expression, and calls addition code before EMAC_open () function will
EMAC is enabled;
HwInt () function is defined as void HwInt (void* in step 7, modification ethdriver.c file
pCallbackArg);
BCACHE_invL1pAll in step 8, deletion ethdriver.c file in Interrupt_init () damping function
();
Step 9 configures Mdio operating mode in csl_emac.c file;
Step 10 deletes csl_error.h, cslr_ectl.h and cslr_emac.h and cslr_mdio.h in inc file
Four conflict files;
Step 11, increase _ INCLUDE_NIMU_CODE macrodefinition;
Step 12 adds protocol stack in cfg file;
Step 13 modifies heap size in cfg file;
Step 14 deletes the manual CreateTask task of version before NDK2.0, and it is to automatically create to appoint that cfg file, which increases code configuration,
Business.
2. a kind of NDK adaptation layer transplantation method according to claim 1, it is characterised in that: the specific side of the step 12
Method are as follows:
Add NDK/Global to my configuration is chosen in cfg file → NDK Core Stack → Global.
3. a kind of NDK adaptation layer transplantation method according to claim 1, it is characterised in that: the specific side of the step 13
Method are as follows:
Cfg file → BIOS.heapSize=0x20000.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811277065.5A CN109445846A (en) | 2018-10-30 | 2018-10-30 | A kind of NDK adaptation layer transplantation method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811277065.5A CN109445846A (en) | 2018-10-30 | 2018-10-30 | A kind of NDK adaptation layer transplantation method |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109445846A true CN109445846A (en) | 2019-03-08 |
Family
ID=65548996
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811277065.5A Pending CN109445846A (en) | 2018-10-30 | 2018-10-30 | A kind of NDK adaptation layer transplantation method |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109445846A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114296700A (en) * | 2021-12-08 | 2022-04-08 | 成都恩菲特科技有限公司 | DSP engineering transplanting method |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170123810A1 (en) * | 2015-10-30 | 2017-05-04 | Texas Instruments Incorporated | Method and System for Boot Time Optimization of Embedded Multiprocessor Systems |
CN107450897A (en) * | 2016-06-01 | 2017-12-08 | 阿里巴巴集团控股有限公司 | The cross-platform implantation method and device of graphics engine |
-
2018
- 2018-10-30 CN CN201811277065.5A patent/CN109445846A/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170123810A1 (en) * | 2015-10-30 | 2017-05-04 | Texas Instruments Incorporated | Method and System for Boot Time Optimization of Embedded Multiprocessor Systems |
CN107450897A (en) * | 2016-06-01 | 2017-12-08 | 阿里巴巴集团控股有限公司 | The cross-platform implantation method and device of graphics engine |
Non-Patent Citations (1)
Title |
---|
LI_BOXUE: "在C6455上移植NDK", 《HTTPS://BLOG.CSDN.NET/LI_BOXUE/ARTICLE/DETAILS/50061587》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114296700A (en) * | 2021-12-08 | 2022-04-08 | 成都恩菲特科技有限公司 | DSP engineering transplanting method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA3099664C (en) | Cloud-edge topologies | |
US20030008684A1 (en) | Digital wireless basestation | |
US20030004697A1 (en) | Method of designing, modelling or fabricating a communications baseband stack | |
CN105577567A (en) | Network data packet parallel processing method based on Intel DPDK | |
CN102591703B (en) | Task scheduling method and task scheduling device for operating system and computer | |
CN103488536B (en) | Method for scheduling task, device and operating system | |
CN102662740A (en) | Asymmetric multi-core system and realization method thereof | |
CN106126564A (en) | A kind of method rendered based on dynamic template language | |
CN104036031A (en) | Large-scale CFD parallel computing method based on distributed Mysql cluster storage | |
CN109445846A (en) | A kind of NDK adaptation layer transplantation method | |
Li et al. | Wide-area spark streaming: Automated routing and batch sizing | |
WO2016127422A1 (en) | System, device and method for processing data | |
CN102591714B (en) | Process calling method, system and application server | |
CN112748997A (en) | Workflow scheduling method and system | |
CN101005420A (en) | Embedded system cross platform realizing method for complex access device | |
Wei et al. | Implementing Data Aware Scheduling In Gfarm (R) Using LSF (TM) Scheduler plugin Mechanism. | |
CN102819539A (en) | Repaid data type-in method and system | |
CN107832162B (en) | Method for remotely calling ModelCenter software to realize multidisciplinary design optimization | |
CN111104161B (en) | Automatic approval execution method for database sql script | |
CN106294181B (en) | Smart card software service life test method | |
CN109144486A (en) | A kind of workflow implementation method statelessly changed | |
CN103729187B (en) | Drive program architecture design method and system based on buffer area | |
Jing et al. | TQS-DP: A lightweight and active mechanism for fast scheduling based on WSN operating system TinyOS | |
CN112416539B (en) | Multi-task parallel scheduling method for heterogeneous many-core processor | |
CN102571564A (en) | Method, apparatus and device for aging static medium access control address |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190308 |