CN100464297C - 一种实现软件移植的方法、系统及芯片 - Google Patents
一种实现软件移植的方法、系统及芯片 Download PDFInfo
- Publication number
- CN100464297C CN100464297C CNB2007101406313A CN200710140631A CN100464297C CN 100464297 C CN100464297 C CN 100464297C CN B2007101406313 A CNB2007101406313 A CN B2007101406313A CN 200710140631 A CN200710140631 A CN 200710140631A CN 100464297 C CN100464297 C CN 100464297C
- Authority
- CN
- China
- Prior art keywords
- interface
- software
- peripheral control
- tunnel
- control software
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 43
- 230000002093 peripheral effect Effects 0.000 claims abstract description 113
- 238000004891 communication Methods 0.000 claims abstract description 16
- 230000006870 function Effects 0.000 claims description 52
- 238000011990 functional testing Methods 0.000 claims description 8
- 230000004044 response Effects 0.000 claims description 6
- 230000000694 effects Effects 0.000 abstract description 3
- 230000008569 process Effects 0.000 description 17
- 230000005540 biological transmission Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 230000015572 biosynthetic process Effects 0.000 description 4
- 239000012467 final product Substances 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 239000000047 product Substances 0.000 description 1
- 238000002054 transplantation Methods 0.000 description 1
Images
Landscapes
- Stored Programmes (AREA)
Abstract
本发明公开了一种实现软件移植的方法,包括:在外围控制软件和内部核心软件之间建立虚拟通道;将外围控制软件添加到芯片内部;芯片控制外围控制软件和内部核心软件通过所建立的虚拟通道进行通信。此外,本发明还公开了一种实现软件移植的系统及芯片。由于本发明只是将外围控制软件和内部核心软件之间的通道由硬件通道设置为虚拟通道,即只移植了二者之间的通信通道,而没有改变外围控制软件和内部核心软件本身的架构,因此工作量小,并且不容易出错,移植效果较好。
Description
技术领域
本发明涉及软件移植技术,尤其涉及一种实现软件移植的方法、系统及芯片。
背景技术
目前,包括多媒体处理芯片在内的一些芯片,如应用于MP4中的数字信号处理(DSP)芯片等,一般内部都有一个中央处理器(CPU)来管理控制芯片的各个功能,并且与芯片配套的软件一般有两种运行模式。其中,第一种运行模式为:将软件分为两部分,一部分运行于芯片内部,称为内部核心软件,由芯片内部的CPU作为协处理器进行控制;另一部分运行于芯片外部,称为外围控制软件,由芯片外部的CPU作为主控处理器进行控制,然后外围控制软件和内部核心软件通过芯片与外部之间的硬件通道实现通信。第二种运行模式为:软件没有内外之分,全部运行于芯片内部,由芯片内部的CPU作为主控处理器进行控制。
如图1所示,图1为现有技术中应用第一种运行模式的一种芯片流程示意图。其中,外围控制软件作为实现一定功能的接口,通过界面程序与用户交互。用户通过界面程序将所需操作如拍摄、播放MP3、播放MP4、录音、读写文件等输入给外围控制软件;外围控制软件则作为实现摄像头拍摄功能的接口、播放MP3的接口、播放MP4的接口、录音接口以及读写文件的接口等将相应功能命令及参数通过硬件通道发送给内部核心软件;内部核心软件作为实现一定功能的执行程序,实现对应于外围控制软件所发命令的具体功能。即内部核心软件在通过硬件通道接收到外围控制软件发送的命令、参数后,执行与命令相应的函数调用。如为实现摄像头拍摄功能而进行的初始化、启动芯片的压缩一帧照片的功能、压缩完成后,通知外围控制软件拍照完成等。
如图2所示,图2为现有技术中应用第二种运行模式的一种芯片流程示意图。其中,软件统称内部软件,全部运行于芯片内部,此时与用户进行交互的界面程序也可运行在芯片内部。用户通过界面程序将所需操作输入给内部软件,内部软件调用相应函数完成对应操作。
实际应用中,软件开发商提供的软件开发包一般都是按照第一种运行模式提供的,即提供的软件开发包包括内部核心软件和外围控制软件,而对于产品生产商来说,有时需要按照第二种运行模式设置芯片,则此时就需要将外围控制软件也移植到芯片内部运行,但软件开发商提供的内部核心软件和外围控制软件是通过硬件通道进行通信的,如果只是简单的将外围控制软件添加到芯片内部,则芯片根本无法控制外围控制软件和内部核心软件之间进行通信。
为了实现软件移植,现有技术中的做法是,将外围控制软件和内部核心软件的架构打乱,二者互相嵌套成为一个整体,即重新架构出一套软件,芯片通过该重新架构出的软件进行通信控制。可见,现有技术中的这种做法,工作量很大,类似于重新编制软件,并且因为软件重新进行了架构,因此容易出错,效果较差。
发明内容
有鉴于此,本发明一方面提供一种实现软件移植的方法,另一方面提供一种实现软件移植的系统及芯片,以便于减小工作量。
本发明所提供的实现软件移植的方法,包括:
根据外围控制软件和内部核心软件之间硬件通道的接口类型确定虚拟通道的接口;按照所确定的虚拟通道接口,在芯片的外围控制软件和内部核心软件之间建立虚拟通道;
将外围控制软件添加到芯片内部;
芯片控制外围控制软件和内部核心软件通过所建立的虚拟通道进行通信。
其中,所述根据外围控制软件和内部核心软件之间硬件通道的接口类型确定虚拟通道的接口包括:
若硬件通道的接口类型为外围控制软件的接口且该接口为用于打开通讯中断,并初始化通讯通道的接口,则所确定的虚拟通道的接口为:用于初始化通讯通道的接口;
若硬件通道的接口类型为外围控制软件的接口且该接口为用于写入待发送命令并通过中断发送给内部核心软件的接口,则所确定虚拟通道的接口为:用于根据该命令调用内部核心软件接收到该命令需要执行的函数的接口;
若硬件通道的接口类型为外围控制软件的接口且该接口为用于接收返回命令的接口,则所确定虚拟通道的接口为:无需实现的接口;
若硬件通道的接口类型为外围控制软件的接口且该接口为用于向命令参数区写/读数据的接口,则所确定的虚拟通道的接口为:用于向命令参数区写/读数据的接口;
若硬件通道的接口类型为内部核心软件的接口且该接口为用于写入待发送命令并通过中断发送给外围控制软件的接口,则所确定的虚拟通道的接口为:用于根据该命令调用外围控制软件接收到该命令需要执行的函数的接口;
若硬件通道的接口类型为内部核心软件的接口且该接口为用于接收返回命令的接口,则所确定的虚拟通道的接口为:无需实现的接口;
若硬件通道的接口类型为内部核心软件的接口且该接口为用于向命令参数区写/读数据的接口,则所确定的虚拟通道的接口为:用于向命令参数区写/读数据的接口。
较佳地,将外围控制软件添加到芯片内部之前进一步包括:对虚拟通道进行功能测试;
则所述将外围控制软件添加到芯片内部为:功能测试成功后,将外围控制软件添加到芯片内部。
其中,所述功能测试包括:将外围控制软件的一部分添加到芯片内部;
在芯片内部执行通道初始化、发送命令以及接收命令响应。
较佳地,将外围控制软件添加到芯片内部之后进一步包括:对添加后的软件进行重新编译。
本发明所提供的实现软件移植的系统,包括:虚拟通道建立模块、软件添加模块和芯片,其中,
虚拟通道建立模块,用于根据外围控制软件和内部核心软件之间硬件通道的接口类型确定虚拟通道的接口,按照所确定的虚拟通道接口,在芯片的外围控制软件和内部核心软件之间建立虚拟通道;
软件添加模块,用于将外围控制软件添加到芯片内部;
芯片,用于存储来自软件添加模块的外围控制软件,控制外围控制软件和内部核心软件通过虚拟通道建立模块建立的虚拟通道进行通信。
较佳地,所述虚拟通道建立模块进一步用于:在虚拟通道建立完成后,向软件添加模块发送添加指令;
所述软件添加模块进一步用于:根据来自虚拟通道建立模块的添加指令,执行所述将外围控制软件添加到芯片内部的操作。
其中,所述芯片包括:存储模块和控制模块,其中,
存储模块,用于存储内部核心软件和接收的来自软件添加模块的外围控制软件;
控制模块,用于控制存储模块中的外围控制软件和内部核心软件通过所建立的虚拟通道进行通信。
本发明所提供的实现软件移植的芯片,包括:存储模块和控制模块,其中,
存储模块,用于存储内部核心软件和接收的外围控制软件;
控制模块,用于控制存储模块中的外围控制软件和内部核心软件通过预先建立的虚拟通道进行通信。
从上述方案可以看出,本发明通过在外围控制软件和内部核心软件之间建立虚拟通道,并将外围控制软件添加到芯片内部,芯片控制外围控制软件和内部核心软件通过所建立的虚拟通道进行通信。可见,本发明只是将外围控制软件和内部核心软件之间的通道由硬件通道设置为虚拟通道,即只移植了二者之间的通信通道,对于外围控制软件和内部核心软件本身的架构没有进行任何改变,因此工作量小,并且不容易出错,移植效果较好。
附图说明
图1为现有技术中应用第一种运行模式的一种芯片流程示意图。
图2为现有技术中应用第二种运行模式的一种芯片流程示意图。
图3为本发明实施例中实现软件移植的方法示例性流程图。
图4为软件移植完成后的一种芯片运行流程示意图。
图5为本发明实施例中实现软件移植的系统结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施例和附图,对本发明进一步详细说明。
本发明的基本思想是:在外围控制软件和内部核心软件之间建立虚拟通道;并将外围控制软件添加到芯片内部;芯片控制外围控制软件和内部核心软件通过所建立的虚拟通道进行通信。
具体实现时,可在添加全部外围控制软件之前先添加部分软件,用于对所建立的虚拟通道进行测试,并在测试成功之后,添加全部的外围控制软件,并且在外围控制软件全部添加之后根据需要进行重新编译。
参见图3,图3为本发明实施例中应用上述思想的实现软件移植的方法的示例性流程图。如图3所示,该流程包括如下步骤:
步骤301,根据外围控制软件和内部核心软件之间硬件通道的接口类型确定虚拟通道的接口。
即本步骤中确定外围控制软件和内部核心软件之间虚拟通道和硬件通道的对应关系。
其中,根据硬件通道的接口类型确定虚拟通道的接口可包括:
若硬件通道的接口类型为外围控制软件的接口时,按照如下原则确定虚拟通道的接口:
若硬件通道的接口为用于打开通讯中断,并初始化通讯通道的接口,则所确定虚拟通道的接口为:用于初始化通讯通道的接口;若硬件通道的接口为用于写入待发送命令并通过中断发送给内部核心软件的接口,则所确定的虚拟通道的接口为:用于根据该命令调用内部核心软件接收到该命令后所需要执行的函数的接口;若硬件通道的接口为用于接收返回命令的接口,则所确定的虚拟通道的接口为:无需实现的接口;若硬件通道的接口为用于向命令参数区写/读数据的接口,则所确定的虚拟通道的接口为:用于向命令参数区写/读数据的接口。
若硬件通道的接口类型为内部核心软件的接口时,按照如下原则确定虚拟通道的接口:
若硬件通道的接口为用于写入待发送命令并通过中断发送给外围控制软件的接口,则所确定的虚拟通道的接口为:用于根据该命令调用外围控制软件接收到该命令后所需要执行的函数的接口;若硬件通道的接口为用于接收返回命令的接口,则所确定的虚拟通道的接口为:无需实现的接口;若硬件通道的接口为用于向命令参数区写/读数据的接口,则所确定的虚拟通道的接口为:用于向命令参数区写/读数据的接口。
以CUBE芯片系列中的XCUBE 810芯片为例,可确定虚拟通道的接口与硬件通道接口之间的对应关系如下:
对于硬件通道的接口类型为外围控制软件接口时,其对应关系如表一所示:
硬件通道接口名称 | 功能 | 虚拟通道接口名称 | 功能 |
MMD_LIF_Init | 打开用于通讯的中断,初始化通讯通道使用的内存区域的初始值 | MMD_LIF_Init | 初始化通讯通道使用的内存区域的初始值。注意:虚拟通道不需要打开用于通讯的中断 |
MMD_LIF_SendCmd | 在通道的命令区,写入需要发送的命令,然后通过中断的方法通知XCUBE内部核心软件 | MMD_LIF_SendCmd | 直接调用XCUBE内部核心软件接收到该命令需要调用的函数因为发送命令和执行命令的地方,使用的是同一个执行空间 |
MMD_LIF_GetCmd | 接收从XCUBE内部核心软件反馈回来的命令 | MMD_LIF_GetCmd | 该函数只需要保留接口,不需要实现。因为发送命令和命令的返回使用的是同一个地址空间,所以这个函数本来应该实现的功能,会由XCUBE内部核心软件的发送命令部分直接实现。 |
MMD_LIF_WriteParam | 向命令参数区写数据 | MMD_LIF_WriteParam | 向命令参数区写数据,实现方法和硬件通道相同 |
MMD_LIF_ReadParam | 从命令参数区读数据 | MMD_LIF_ReadParam | 从命令参数区读数据,实现方法和硬件通道相同 |
表一
对于硬件通道的接口类型为内部核心软件接口时,其对应关系如表二所示:
硬件通道接口名称 | 功能 | 虚拟通道接口名称 | 功能 |
KanaSendCmd | 在通道的命令区,写入需要发送的命令,然后通过中断的方法通知外围控制软件 | KanaSendCmd | 直接调用外围控制软件接收到该命令需要调用的函数因为发送命令和执行命令的地方,使用的是同一个执行空间 |
KanaGetCmd | 接收从外部发过来的命令 | KanaGetCmd | 该函数只需要保留接口,不需要实现。因为发送命令和命令的返回使用的是同一个地址空间,所以该函数本来应该实现的功能,会由外围控制软件的发送命令部分直接实现。 |
KanaWriteParam | 向命令参数区写数据 | KanaWriteParam | 向命令参数区写数据,实现方法和硬件通道相同 |
KanaReadParam | 从命令参数区读数据 | KanaReadParam | 从命令参数区读数据,实现方法和硬件通道相同 |
表二
步骤302,按照所确定的虚拟通道接口,建立虚拟通道。
本步骤中,对于步骤301中确定的虚拟通道接口,可通过编制虚拟通道程序来实现。虚拟通道的具体程序构成可以有很多种,不同的芯片其虚拟通道的程序实现也不同,只要能实现步骤301中确定的接口对应关系即可。
对于用于打开通讯中断,并初始化通讯通道的硬件通道接口,其虚拟通道程序的构成过程可以为:将该接口的函数中用于打开通讯中断过程的程序去掉,并相应的将用于初始化通讯通道的接口设置在内部核心软件中即可,或者如果不需要初始化通讯通道的话,则直接将该接口函数中的程序去掉即可。
对于通过硬件通道发送命令的硬件通道接口,其虚拟通道程序的构成过程可以为:将该接口的函数内部的具体实现程序去掉,将接收命令端接收到该命令需要调用的函数名直接嵌入到该接口函数中即可。
对于通过硬件通道接收命令的硬件通道接口,其虚拟通道程序的构成过程可以为:将该接口的函数中原始具体实现程序去掉即可,因为虚拟通道无需通过该接口函数来接收外部命令。
对于向命令参数区写数据的硬件通道接口,以及从命令参数区读数据的硬件通道接口,其虚拟通道程序的构成过程可以为:保持该接口的函数不变。
仍以CUBE芯片系列中的XCUBE 810芯片为例,并以对通过硬件通道发送命令的硬件通道接口,编制虚拟通道程序时的过程为例,对其具体实现过程进行详细描述。
以外围控制软件发送命令给内部核心软件,内部核心软件接收到该命令后执行相应函数的过程为例:
假设欲发送的命令为cmd,则原始外围控制软件的接口函数的部分程序为:
MMD_LIF_SendCmd(MMD_U16cmd,MMD_U16 op1,MMD_U16 op2)
{
初始化相关参数;
检测缓冲区的地址空间;
MMD_USER_Clear_Flag_WaitResponse();//本函数需要真正的实现。因为硬件通道具体实现时,外围控制软件给内部核心软件发送命令后,需要等待内部核心软件的响应。如:外围控制软件可以首先把一个标志清除,当内部核心软件有响应的时候,给外围控制软件发中断,并在中断中把相应的标志置位。此时,外围控制软件就可以知道内部核心软件已经做出响应。
开中断发送命令“cmd”;
其它控制流程;
return MMD_RET_NOERR;
}
当cmd命令通过硬件通道传输到内部核心软件后,内部核心软件再根据该命令调用实际需要运行的函数,如:MainTaskHostCmdDecode(cmd,op1,op2),然后执行相应功能。
在编制虚拟通道程序时,按照表一和表二中的接口对应关系,在原始外围控制软件与内部核心软件之间建立虚拟通道,即建立二者的连接关系,则可在外围控制软件中编制如下的虚拟通道程序,实现在虚拟通道上外围控制软件给内部核心软件发送命令。实际上,此时外围控制软件会直接调用内部核心软件的功能函数。
MMD_LIF_SendCmd(MMD_U16 cmd,MMD_U16 op1,MMD_U16 op2)
{
MMD_USER_Clear_Flag_WaitResponse();//本函数只有在使用硬件通道的时候,才需要真正的实现,此处无需实现。
MainTaskHostCmdDecode(cmd,op1,op2);//在使用虚拟通道的实现方法时,本函数直接调用内部核心软件的相应函数执行该命令的处理。
return MMD_RET_NOERR;
}
同理,内部核心软件发送命令给外围控制软件,外围控制软件接收到该命令后执行相应函数的过程与此类似,即直接在内部核心软件中发送命令的接口函数中调用外围控制软件接收到该命令需要调用的函数。
步骤303,对虚拟通道进行功能测试。如果测试成功,则执行步骤304;否则,返回执行步骤302。
本步骤中,可将外围控制软件的一部分先添加到芯片内部,对虚拟通道进行简单的功能测试,可选取几个命令进行测试运行,如进行通道初始化,发送命令以及接收命令响应等。
步骤304,将建立虚拟通道后的外围控制软件全部添加到芯片内部。
步骤305,如需要,则对添加后的软件进行重新编译。
对于不同的芯片,其编译过程也不同,具体根据外围控制软件和内部核心软件的具体形式而定,并且编译过程及方法与现有技术相同。
步骤306,芯片控制外围控制软件和内部核心软件通过所建立的虚拟通道进行通信。
至此,实现软件移植的方法流程结束。
参见图4,图4为软件移植完成后的一种芯片运行流程示意图。如图4所示,此时,外围控制软件和内部核心软件都运行于芯片内部,并且此时与用户交互的界面程序也可运行在芯片内部。用户通过界面程序将所需操作输入给外围控制软件,外围控制软件作为实现一定功能的接口根据相应功能命令及参数通过虚拟通道调用内部核心软件,由内部核心软件作为实现一定功能的执行程序,实现相应具体功能。
参见图5,图5为本发明实施例中基于图1所示方法的实现软件移植的系统的结构示意图。如图5所示,该系统包括:虚拟通道建立模块、软件添加模块和芯片。
其中,虚拟通道建立模块,用于在外围控制软件和内部核心软件之间建立虚拟通道。
软件添加模块,用于将外围控制软件添加到芯片内部。
芯片,用于存储来自软件添加模块的外围控制软件,控制外围控制软件和内部核心软件通过虚拟通道建立模块建立的虚拟通道进行通信。
进一步地,虚拟通道建立模块可进一步用于:在虚拟通道建立完成后,向软件添加模块发送添加指令;则软件添加模块进一步用于:根据来自虚拟通道建立模块的添加指令,执行所述将外围控制软件添加到芯片内部的操作。
如图5所示,具体实现时,芯片可具体包括存储模块和控制模块。
其中,存储模块,用于存储内部核心软件和接收的外围控制软件。
控制模块,用于控制存储模块中的外围控制软件和内部核心软件通过预先建立的虚拟通道进行通信。
上述图5所示系统中,各功能模块的具体实现过程,可以与图3所示方法中的描述一致。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (9)
1.一种实现软件移植的方法,其特征在于,该方法包括:
根据外围控制软件和内部核心软件之间硬件通道的接口类型确定虚拟通道的接口;
按照所确定的虚拟通道接口,在芯片的外围控制软件和内部核心软件之间建立虚拟通道;
将外围控制软件添加到芯片内部;
芯片控制外围控制软件和内部核心软件通过所建立的虚拟通道进行通信。
2.如权利要求1所述的方法,其特征在于,所述根据外围控制软件和内部核心软件之间硬件通道的接口类型确定虚拟通道的接口包括:
若硬件通道的接口类型为外围控制软件的接口且该接口为用于打开通讯中断,并初始化通讯通道的接口,则所确定的虚拟通道的接口为:用于初始化通讯通道的接口;
若硬件通道的接口类型为外围控制软件的接口且该接口为用于写入待发送命令并通过中断发送给内部核心软件的接口,则所确定虚拟通道的接口为:用于根据该命令调用内部核心软件接收到该命令需要执行的函数的接口;
若硬件通道的接口类型为外围控制软件的接口且该接口为用于接收返回命令的接口,则所确定虚拟通道的接口为:无需实现的接口;
若硬件通道的接口类型为外围控制软件的接口且该接口为用于向命令参数区写/读数据的接口,则所确定的虚拟通道的接口为:用于向命令参数区写/读数据的接口;
若硬件通道的接口类型为内部核心软件的接口且该接口为用于写入待发送命令并通过中断发送给外围控制软件的接口,则所确定的虚拟通道的接口为:用于根据该命令调用外围控制软件接收到该命令需要执行的函数的接口;
若硬件通道的接口类型为内部核心软件的接口且该接口为用于接收返回命令的接口,则所确定的虚拟通道的接口为:无需实现的接口;
若硬件通道的接口类型为内部核心软件的接口且该接口为用于向命令参数区写/读数据的接口,则所确定的虚拟通道的接口为:用于向命令参数区写/读数据的接口。
3.如权利要求1或2所述的方法,其特征在于,将外围控制软件添加到芯片内部之前进一步包括:对虚拟通道进行功能测试;
则所述将外围控制软件添加到芯片内部为:功能测试成功后,将外围控制软件添加到芯片内部。
4.如权利要求3所述的方法,其特征在于,所述功能测试包括:
将外围控制软件的一部分添加到芯片内部;
在芯片内部执行通道初始化、发送命令以及接收命令响应。
5.如权利要求4所述的方法,其特征在于,将外围控制软件添加到芯片内部之后进一步包括:对添加后的软件进行重新编译。
6.一种实现软件移植的系统,其特征在于,该系统包括:虚拟通道建立模块、软件添加模块和芯片,其中,
虚拟通道建立模块,用于根据外围控制软件和内部核心软件之间硬件通道的接口类型确定虚拟通道的接口,按照所确定的虚拟通道接口,在芯片的外围控制软件和内部核心软件之间建立虚拟通道;
软件添加模块,用于将外围控制软件添加到芯片内部;
芯片,用于接收来自软件添加模块的外围控制软件,控制外围控制软件和内部核心软件通过虚拟通道建立模块建立的虚拟通道进行通信。
7.如权利要求6所述的系统,其特征在于,所述虚拟通道建立模块进一步用于:在虚拟通道建立完成后,向软件添加模块发送添加指令;
所述软件添加模块进一步用于:根据来自虚拟通道建立模块的添加指令,执行所述将外围控制软件添加到芯片内部的操作。
8.如权利要求6或7所述的系统,其特征在于,所述芯片包括:存储模块和控制模块,其中,
存储模块,用于存储内部核心软件和接收的来自软件添加模块的外围控制软件;
控制模块,用于控制存储模块中的外围控制软件和内部核心软件通过所建立的虚拟通道进行通信。
9.一种实现软件移植的芯片,其特征在于,该芯片包括:存储模块和控制模块,其中,
存储模块,用于存储内部核心软件和接收的外围控制软件;
控制模块,用于控制存储模块中的外围控制软件和内部核心软件通过预先建立的虚拟通道进行通信;其中,所述虚拟通道为:根据外围控制软件和内部核心软件之间硬件通道的接口类型确定虚拟通道的接口后,按照所确定的虚拟通道接口,在所述外围控制软件和内部核心软件之间建立的虚拟通道。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2007101406313A CN100464297C (zh) | 2007-01-26 | 2007-08-09 | 一种实现软件移植的方法、系统及芯片 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200710002696 CN101004682A (zh) | 2007-01-26 | 2007-01-26 | 一种实现软件移植的方法、系统及芯片 |
CN200710002696.1 | 2007-01-26 | ||
CNB2007101406313A CN100464297C (zh) | 2007-01-26 | 2007-08-09 | 一种实现软件移植的方法、系统及芯片 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101110033A CN101110033A (zh) | 2008-01-23 |
CN100464297C true CN100464297C (zh) | 2009-02-25 |
Family
ID=39042115
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2007101406313A Expired - Fee Related CN100464297C (zh) | 2007-01-26 | 2007-08-09 | 一种实现软件移植的方法、系统及芯片 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100464297C (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103218540A (zh) * | 2012-07-28 | 2013-07-24 | 夏琦 | 一种可视化交互式临床试验和临床随访的系统及方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002278777A (ja) * | 2001-03-21 | 2002-09-27 | Nec Commun Syst Ltd | アプリケーションプログラムの移植方法 |
JP2003281106A (ja) * | 2002-03-22 | 2003-10-03 | Jfe Steel Kk | 分散方式コンピュータシステム |
CN1629805A (zh) * | 2003-12-18 | 2005-06-22 | 中国电子科技集团公司第三十研究所 | 运用于dsp的动态加载方法 |
CN1648880A (zh) * | 2004-10-19 | 2005-08-03 | 威盛电子股份有限公司 | 计算机系统内部数据存取方法与相关装置 |
-
2007
- 2007-08-09 CN CNB2007101406313A patent/CN100464297C/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002278777A (ja) * | 2001-03-21 | 2002-09-27 | Nec Commun Syst Ltd | アプリケーションプログラムの移植方法 |
JP2003281106A (ja) * | 2002-03-22 | 2003-10-03 | Jfe Steel Kk | 分散方式コンピュータシステム |
CN1629805A (zh) * | 2003-12-18 | 2005-06-22 | 中国电子科技集团公司第三十研究所 | 运用于dsp的动态加载方法 |
CN1648880A (zh) * | 2004-10-19 | 2005-08-03 | 威盛电子股份有限公司 | 计算机系统内部数据存取方法与相关装置 |
Also Published As
Publication number | Publication date |
---|---|
CN101110033A (zh) | 2008-01-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102662665B (zh) | 在安卓系统上实现支持各种传感器的输入子系统 | |
WO2017028514A1 (zh) | 一种数据存储、读取方法及装置 | |
CN102662775B (zh) | 一种进程通信方法和装置 | |
CN100578674C (zh) | 一种寄存器测试的方法和系统 | |
CN103838521B (zh) | 一种数据处理方法及装置 | |
CN102968373A (zh) | 一种测试系统的维护方法及装置 | |
CN101404027A (zh) | 一种文件管理方法、系统及设备 | |
CN101951529A (zh) | 一种机顶盒功能测试方法及系统 | |
CN107391400A (zh) | 一种支持复杂访存指令的内存扩展方法和系统 | |
CN103488502A (zh) | 一种数据加载方法及装置 | |
CN102427465A (zh) | 语音服务代理方法及装置、通过代理集成语音应用的系统 | |
CN110175081A (zh) | 一种针对Android音频播放的优化系统及其方法 | |
CN101976197A (zh) | 一种自动安装多个手机软件的方法 | |
CN111679790A (zh) | 远程软件开发存储空间分配方法及装置 | |
CN100464297C (zh) | 一种实现软件移植的方法、系统及芯片 | |
CN101963924B (zh) | 一种进程通信方法、装置及操作系统 | |
CN101312580B (zh) | 一种直放站监控中心和直放站监控方法 | |
CN102567081B (zh) | 基于多进程的全局设置方法及系统 | |
CN101425094B (zh) | 一种改变容器窗口的方法和装置 | |
CN101004682A (zh) | 一种实现软件移植的方法、系统及芯片 | |
CN101384037A (zh) | 移动应用与智能卡之间的专用数据通道建立方法 | |
CN116149554B (zh) | 一种基于risc-v及其扩展指令的数据存储处理系统及其方法 | |
CN101286114B (zh) | 多程序共享音频设备的方法 | |
CN101355548A (zh) | 一种pc侧对终端数据的处理方法及系统 | |
CN103701854A (zh) | 基于应用虚拟化的网络实时音频传输方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20090225 Termination date: 20120809 |