CN112579508A - 一种数据处理方法、数据处理装置、设备及存储介质 - Google Patents
一种数据处理方法、数据处理装置、设备及存储介质 Download PDFInfo
- Publication number
- CN112579508A CN112579508A CN202011455360.2A CN202011455360A CN112579508A CN 112579508 A CN112579508 A CN 112579508A CN 202011455360 A CN202011455360 A CN 202011455360A CN 112579508 A CN112579508 A CN 112579508A
- Authority
- CN
- China
- Prior art keywords
- layer
- data
- communication protocol
- target
- protocol type
- 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
- 238000012545 processing Methods 0.000 title claims abstract description 38
- 238000003672 processing method Methods 0.000 title claims abstract description 30
- 238000003860 storage Methods 0.000 title claims abstract description 24
- 230000006854 communication Effects 0.000 claims abstract description 245
- 238000004891 communication Methods 0.000 claims abstract description 244
- 238000000034 method Methods 0.000 claims abstract description 62
- 230000008569 process Effects 0.000 claims abstract description 32
- 239000010410 layer Substances 0.000 claims description 381
- 230000004044 response Effects 0.000 claims description 57
- 230000006978 adaptation Effects 0.000 claims description 29
- 239000012792 core layer Substances 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 11
- 230000006870 function Effects 0.000 description 22
- 238000010586 diagram Methods 0.000 description 9
- 238000013461 design Methods 0.000 description 8
- 238000011161 development Methods 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000012423 maintenance Methods 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000010923 batch production Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 208000037805 labour Diseases 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Communication Control (AREA)
Abstract
本申请实施例公开了一种数据处理方法,所述方法包括:通过用户层构造数据,并将所述数据发送至内核层;通过所述内核层解析所述数据的通信协议类型,得到目标通信协议类型,并调用所述目标通信协议类型对应的目标总线驱动对所述数据进行处理;所述目标总线驱动以目标通信协议类型对应处理逻辑对所述数据进行处理;所述内核层支持至少两种通信协议类型;通过所述内核层将所述处理后的数据发送至物理层中的目标芯片。另外,本申请实施例还公开了一种数据处理装置、设备及存储介质。
Description
技术领域
本申请实施例涉及计算机技术领域,涉及但不限于一种数据处理方法、数据处理装置、设备及存储介质。
背景技术
相关技术中,一个电子设备上支持多个不同的器件即芯片,电子设备的应用层向器件进行数据的读写时,通过以下路径向器件进行读写操作:应用层中位于设备适配层的应用层接口、内核层提供的设备节点、内核层中位于设备驱动层的内核驱动,其中,应用层接口由器件对应的设备适配器提供,设备节点由器件对应的内核驱动提供。
上述方案中,不同通信协议类型的器件分别对应不同的设备适配器和内核驱动,因此,当电子设备上支持多个不同通信协议类型的芯片时,需要为不同通信协议类型的不同芯片针对性地开发设备适配器和内核驱动,提高电子设备的人力开发成本,且延长电子设备的生产周期,阻碍项目进度和设备批量生产。
发明内容
有鉴于此,本申请实施例为解决相关技术中存在的至少一个问题而提供一种数据处理方法、装置、设备及存储介质,能够兼容不同通信协议类型的芯片的数据处理,降低电子设备的人力开发成本,且缩减电子设备的生产周期。
本申请实施例的技术方案是这样实现的:
第一方面,本申请实施例提供一种数据处理方法,所述方法包括:
通过用户层构造数据,并将所述数据发送至内核层;
通过所述内核层解析所述数据的通信协议类型,得到目标通信协议类型,并调用所述目标通信协议类型对应的目标总线驱动对所述数据进行处理;所述目标总线驱动以目标通信协议类型对应处理逻辑对所述数据进行处理;所述内核层支持至少两种通信协议类型;
通过所述内核层将所述处理后的数据发送至物理层中的目标芯片。
第二方面,本申请实施例提供一种数据处理装置,所述装置包括:用户层和内核层;其中,
所述用户层,用于构造数据,并将所述数据发送至内核层;
所述内核层,用于解析所述数据的通信协议类型,得到目标通信协议类型,并调用所述目标通信协议类型对应的目标总线驱动对所述数据进行处理;所述目标总线驱动以目标通信协议类型对应处理逻辑对所述数据进行处理;所述内核层支持至少两种通信协议类型;
所述内核层,还用于将所述处理后的数据发送至物理层中的目标芯片。
第三方面,本申请实施例提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述数据处理方法中的步骤。
第四方面,本申请实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述数据处理方法中的步骤。
本申请实施例中,提供了一种数据处理方法,通过用户层构造数据,并将所述数据发送至内核层;通过所述内核层解析所述数据的通信协议类型,得到目标通信协议类型,并调用所述目标通信协议类型对应的目标总线驱动对所述数据进行处理;所述目标总线驱动以目标通信协议类型对应处理逻辑对所述数据进行处理;所述内核层支持至少两种通信协议类型;通过所述内核层将所述处理后的数据发送至物理层中的目标芯片,能够兼容不同通信协议的芯片的数据处理,且快速完成数据的处理,节省了研发人员的时间,降低电子设备的研发周期,推动项目的进展。
附图说明
图1A为本申请实施例提供的电子设备的架构示意图;
图1B为本申请实施例提供的数据处理方法的实现流程示意图一;
图2为本申请实施例提供的相关技术中的设备架构示意图;
图3为本申请实施例提供的数据处理方法的实现流程示意图二;
图4为本申请实施例提供的电子设备架构示意图二;
图5为本申请实施例提供的软件驱动架构示意图;
图6为本申请实施例提供的数据处理装置的组成结构示意图;
图7为本申请实施例计算机设备的一种硬件实体示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对申请的具体技术方案做进一步详细描述。以下实施例用于说明本申请,但不用来限制本申请的范围。
本申请实施例可提供为数据处理方法及装置、设备和存储介质。实际应用中,数据处理方法可由数据处理装置实现,数据处理装置中的各功能实体可以由计算机设备(如终端设备、服务器)的硬件资源,如处理器等计算资源、通信资源(如用于支持实现光缆、蜂窝等各种方式通信)协同实现。
本申请实施例的数据处理方法可应用于电子设备中。电子设备的架构包括:用户层、内核层和物理层。本申请实施例提供的数据处理方法包括:通过用户层构造数据,并将所述数据发送至内核层;通过所述内核层解析所述数据的通信协议类型,得到目标通信协议类型,并调用所述目标通信协议类型对应的目标总线驱动对所述数据进行处理;所述目标总线驱动以目标通信协议类型对应处理逻辑对所述数据进行处理;所述内核层支持至少两种通信协议类型;通过所述内核层将所述处理后的数据发送至物理层中的目标芯片。
本申请实施例提供的数据处理方法可应用于芯片的测试、芯片的调试、芯片的使用等对芯片进行读操作或写操作的场景,本申请实施例中,数据处理方法所使用的场景不进行任何的限定。
下面,对本申请实施例提供的数据处理方法、装置、设备和存储介质的各实施例进行说明。
如图1A所示,本申请实施例提供的数据处理方法所实施的电子设备的架构包括:用户层11、内核层12和物理层13;用户层11,用于与用户进行通信;内核层12用于对通过用户层获取的数据进行处理;物理层13,指设备上所有硬件资源,通常由各种芯片和CPU组成的基本电路。
本实施例提供一种数据处理方法,该方法应用于设备,其中,设备可为计算机设备。该方法所实现的功能可以通过计算机设备中的处理器调用程序代码来实现,当然程序代码可以保存在计算机存储介质中,可见,该计算机设备至少包括处理器和存储介质。
图1B为本申请实施例的一种数据处理方法的实现流程示意图,如图1B所示,该方法可以包括如下步骤:
S101、通过用户层构造数据,并将所述数据发送至内核层;
这里,设备通过用户层构造数据,其中,构造的数据为向目标芯片写入或读取数据。设备在通过用户层构造数据后,将获取的数据发送至内核层。
在用户层向目标芯片写入数据的情况下,用户层基于以下信息构造数据:芯片协议、芯片地址、写指令、要写入的芯片的内部地址,用户层将构造的数据发送至内核层,内核层将数据写入CPU的总线控制器,由CPU的总线控制器将数据发送至目标芯片,目标芯片通过通信协议收到数据,并且解析出该数据对应的操作为写操作,更新内部地址的数据。
在用户层向目标芯片读取数据的情况下,用户层基于以下信息构造数据:芯片协议、芯片地址、读指令、要读取的芯片的内部地址,用户层将构造的数据发送至内核层,内核层将数据写入CPU的总线控制器,由CPU的总线控制器将数据发送至目标芯片,目标芯片通过通信协议收到数据,并且解析出该数据对应的操作为读操作,更将内部地址存储的数据即读取结果反馈给CPU的总线控制器,CPU的总线控制器按照原路一层一层上报至用户层。
S102、通过所述内核层解析所述数据的通信协议类型,得到目标通信协议类型,并调用所述目标通信协议类型对应的目标总线驱动对所述数据进行处理;
通过所述内核层得到所述数据的通信协议类型,并调用所述通信协议类型对应的目标总线驱动;通过所述内核层调用所述总线将所述数据发送至物理层。
这里,当内核层接收到多条数据时,依据各数据的通信协议类型对各数据进行分类,并通过对应的通信协议类型对各数据进行处理。
其中,所述目标总线驱动用于提供对应通信协议类型的目标总线;所述内核层支持至少两种通信协议类型。
这里,通过内核层接收用户层发送的数据,内核层的作用包括:1、判断接收到的数据的通信协议类型;2、提供该数据对应的通信协议类型对应的总线驱动。
这里,内核层支持至少两种通信协议类型,通信协议类型可以包括:串行外设接口(Serial Peripheral Interface,SPI)协议类型、联合测试行动小组(Joint Test ActionGroup,JTAG)协议类型、集成电路总线(Inter-Integrated Circuit,IIC)协议类型、介质无关接口(Media Independent Interface,MII)协议类型、通用串行总线(Universal SerialBus,USB)协议类型等协议类型。
这里,当内核层接收到数据后,设备通过内核层对该数据进行分类处理,得到数据的通信协议类型。其中,在对数据进行分类处理时,可以是依据数据的摘要信息进行分类,从而得到数据的通信协议类型。
比如:内核层接收到数据后,对该数据进行分类处理,得到数据1的通信协议类型为SPI协议类型;得到数据2的通信协议类型为MII协议类型;得到数据3的通信协议类型为USB协议类型;其中,数据1、数据2和数据3构成数据。
这里,内核层还调用通信协议类型对应的目标总线驱动,目标总线驱动用于提供通信协议类型对应的目标总线。
比如:内核层提供SPI协议对应的目标总线驱动1,目标总线驱动1用于提供SPI协议对应的目标总线1;内核层提供MII协议对应的目标总线驱动2,目标总线驱动2用于提供MII协议对应的目标总线2;内核层提供USB协议对应的目标总线驱动3,目标总线驱动3用于提供MII协议对应的目标总线3。
S103、通过所述内核层将所述处理后的数据发送至物理层中的目标芯片。
这里,在通过通信协议类型对应的总线,将数据发送至物理层。
比如:数据1的通信协议类型为SPI协议类型,通过SPI协议类型对应的总线1将数据发送至物理层;数据2的通信协议类型为MII协议类型,通过MII协议类型对应的总线2将数据发送至物理层;数据3的通信协议类型为USB协议类型,通过USB协议类型对应的总线3将数据发送至物理层。
在本申请实施例中,通过用户层构造数据,并将所述数据发送至内核层;通过所述内核层对所述数据进行分类,得到所述数据的通信协议类型,并调用所述通信协议类型对应的目标总线驱动;所述目标总线驱动用于提供对应通信协议类型的目标总线;所述内核层支持至少两种通信协议类型;通过所述内核层调用所述总线将所述数据发送至物理层,能够快速完成数据的读写工作,节省了研发人员的时间,推动项目的进展。
本申请实施例子中,以芯片调试场景下为例,当设备中新增的芯片的通信协议为内核层支持的通信协议类型时,则可直接对目标芯片进行调试,当设备中新增的芯片的通信协议类型为内核层不支持的通信协议类型时,则对内核层进行修改,使得内核层支持该通信协议类型即可,不需要进行设备适配层和设备驱动层的开发,简化数据处理的处理,并提高设备的对芯片的兼容性。
在一实施例中,所述内核层包括:虚拟设备驱动层和总线驱动层;所述虚拟设备驱动层支持至少两种通信协议类型;所述总线驱动层提供有所述至少两种通信协议类型中各通信协议类型对应的总线驱动;此时,S102的实施包括:
通过所述虚拟设备驱动层,对所述数据进行分类,得到所述数据的通信协议类型,并调用所述通信协议类型对应的目标总线驱动;
通过所述总线驱动层中的所述目标总线驱动,以所述目标通信协议类型对应的处理逻辑对所述数据进行处理。
这里,总线驱动层提供的总线驱动中包括有目标驱动总线。
这里,内核层包括:虚拟设备驱动层和总线驱动层。其中,虚拟设备驱动层支持至少两种通信协议类型,通信协议类型可以包括:SPI协议类型、JTAG协议类型、IIC协议类型、MII协议类型、USB协议类型等。
这里,通过虚拟设备驱动层,对数据进行分类,得到数据的通信协议类型。其中,在通过虚拟设备驱动层,对数据进行分类时,可以是依据数据的摘要信息进行分类,从而得到数据的通信协议类型。
比如:通过虚拟设备驱动层,对数据进行分类,依据数据的摘要信息进行分类,得到数据4的通信协议类型为SPI协议类型;通过虚拟设备驱动层,对数据进行分类,依据数据的摘要信息进行分类,得到数据5的通信协议类型为USB协议类型。
这里,通过总线驱动层,提供通信协议类型对应的目标总线驱动,该目标总线驱动用于提供通信协议类型对应的目标总线。通过目标总线驱动对应的目标总线将数据发送至物理层。
比如:总线驱动层提供SPI协议对应的目标总线驱动1,目标总线驱动1用于提供SPI协议对应的目标总线1;总线驱动层提供MII协议对应的目标总线驱动2,目标总线驱动2用于提供MII协议对应的目标总线2;总线驱动层提供USB协议对应的目标总线驱动3,目标总线驱动3用于提供MII协议对应的目标总线3。
本申请实施例中,内核层包括:虚拟设备驱动层和总线驱动层;通过虚拟设备驱动层,对所述数据进行分类,得到所述数据的通信协议类型;通过所述目标总线驱动对应的目标总线将所述数据发送至所述物理层。
在一实施例中,通过所述虚拟设备驱动层解析所述数据的通信协议类型,得到目标通信协议类型,包括:通过所述虚拟设备驱动层接收所述用户层发送的摘要信息;通过所述虚拟设备驱动层,对所述数据的摘要信息进行解析,得到所述目标通信协议类型。
这里,在通过所述虚拟设备驱动层,对数据进行分类时,可以是对数据的摘要信息进行分析后,得到数据的通信协议类型。其中,摘要信息可以包括:通信协议类型、访问的设备地址、通信总线号、访问的寄存器。这里,访问的设备为目标芯片,访问的寄存器为目标芯片的内部地址。
比如:通过虚拟设备驱动层,对数据1的摘要信息中的通信协议类型进行分析,得到数据1的通信协议类型为SPI协议类型;通过虚拟设备驱动层,对数据2的摘要信息中的通信协议类型进行分析,得到数据2的通信协议类型为MII协议类型;通过虚拟设备驱动层,对数据3的摘要信息中的通信协议类型进行分析,得到数据3的通信协议类型为USB协议类型;通过虚拟设备驱动层,对数据4的摘要信息中的通信协议类型进行分析,得到数据4的通信协议类型为JTAG协议类型。
本申请实施例中,通过虚拟设备驱动层,对数据进行分类时,是对数据的摘要信息进行分析后,得到数据的通信协议类型。
在一实施例中,所述用户层包括:单板驱动子层、单板适配子层、设备驱动子层和总线驱动子层;其中,通过所述单板驱动子层,提供所述数据对应的功能性接口,以调用所述目标芯片的接口;通过所述单板适配子层,提供所述目标芯片的接口,以调用所述目标芯片的芯片信息;通过所述设备驱动子层,调用所述目标芯片的驱动接口,以根据所述芯片信息确定所述目标芯片的内部地址,并调用所述总线驱动子层中的所述目标通信协议类型对应的通信接;通过所述总线驱动子层,提供所述目标通信协议类型对应的通信接口。
这里,用户层包括:单板驱动子层、单板适配子层、设备驱动子层和总线驱动子层。
这里,通过单板驱动子层,提供单板上所支持的功能性接口。比如:单板可以支持获得温度功能,则单板驱动子层,提供获得温度功能的接口;又比如:单板可以支持获得电压的功能,则单板驱动子层,提供获得电压功能的接口。
这里,单板上可以包括多种芯片,比如:芯片1、芯片2、芯片3、芯片4等。单板上的各芯片的功能可以相同,也可以不同。比如:芯片1的功能用于获得温度,芯片2的功能用于获得电压,芯片3的功能用于获得温度,芯片4的功能用于获得系统时间。
这里,通过单板适配子层,提供单板上各芯片的功能的功能性接口。比如:通过单板适配子层,提供芯片1的获得温度的接口;通过单板适配子层,提供芯片2的获得电压的接口;通过单板适配子层,提供芯片3的获得温度的接口;通过单板适配子层,提供芯片4的获得系统时间的接口。各芯片的功能的功能性接口会区分不同的芯片,根据芯片找到对应的芯片信息:总线协议,总线ID,芯片地址。这里,用户层通过单板适配层提供的各芯片的功能性接口能够向下调用设备驱动子层的驱动接口。
这里,通过设备驱动子层,提供芯片的驱动接口。其中,驱动接口会根据单板适配子层的芯片信息,指定读取数据的寄存器地址即芯片内部地址,并根据芯片信息中的通信协议类型调用总线驱动子层的通信接口。
本申请实施例中,用户层调用单本驱动子层功能性接口时,由设备驱动子层通过芯片信息中的总线信息调用向目标芯片发送数据的目标总线。这里,每个芯片与CPU的连接都遵从一定的通信总线,例如:当需要读取温度,用户调用单板驱动子层获取温度接口,向下调用单板适配子层提供的温度获取接口(不同单板,温度芯片类型可能不同),向下设备驱动子层提供不同芯片的温度获取接口,在向下总线驱动提供不同芯片使用的通信接口。
这里,通过总线驱动子层,提供各通信协议类型对应的总线驱动,总线驱动用于提供对应通信协议类型的通信接口,将数据发送至内核层的虚拟设备驱动层。
比如:通过总线驱动子层,提供SPI协议类型对应的总线驱动;通过总线驱动子层,提供MII协议类型对应的总线驱动;总线驱动子层,提供USB协议类型对应的总线驱动;总线驱动子层,提供IIC协议类型对应的总线驱动;总线驱动子层,提供JTAG协议类型对应的总线驱动。
本申请实施例中,用户层包括:单板驱动子层、单板适配子层、设备驱动子层和总线驱动子层;单板驱动子层、单板适配子层、设备驱动子层和总线驱动子层的作用不同,能够提升适配效率及数据传输效率。
在一示例中,在用户层中,用户要获取当前温度,需调用单板驱动子层温度获取接口,在向下调用单板适配子层的温度获取接口(这里不同板卡可能会用不同的温度传感器,这一层提供功能接口时会区分不同的芯片,根据芯片找到对应的设备信息:通信协议类型、总线ID、芯片地址),在向下调用设备驱动子层的驱动接口,驱动接口会根据单板适配子层的设备信息,指定读取温度的寄存器地址,封装获取温度接口,并根据设备信息中的总线协议调用总线驱动层的读通信接口,将数据发送给内核层的虚拟设备驱动。
此时,在内核层中,虚拟设备驱动层解析数据中的通信协议类型,将数据转送给相应通信协议类型的总线驱动,总线驱动将数据发送给总线控制器并标记总线控制器为读操作,总线控制器发送完数据,就会收到芯片温度寄存器地址返回的数据,总线驱动从总线控制器拿到数据,反馈给虚拟设备驱动,虚拟设备驱动按照原路将数据回送给用户层的总线驱动,直到单板驱动子层,这样用户就拿到温度数据。
需要说明的是,本申请实施例中内核层的总线驱动层是基于不同CPU总线控制器提供的总线驱动接口,需要关注CPU型号,对于同一种通信协议类型,不同CPU对应的总线驱动不同。用户层的总线驱动子层,是与内核层交互的最底层,是基于虚拟设备驱动将不同的通信接口在用户层进行分离,以保证各通信接口的相互独立,维护方便且安全,其不关注CPU型号,针对同一通信协议类型,不同CPU的通信接口通用,对应的总线驱动为同一总线驱动。
在一实施例中,所述物理层包括中央处理器(central processing unit,CPU)总线控制器和至少两个芯片,不同芯片的通信协议类型不同;所述方法还包括:通过所述CPU总线控制器接收所述处理过的数据,并根据所述处理过的数据发送至所述至少两个芯片中的目标芯片。
这里,物理层包括CPU总线控制器和至少两个芯片,不同芯片的通信协议类型不同,通信协议类型可包括:SPI协议类型、MII协议类型、JTAG协议类型、IIC协议类型、USB协议类型等协议类型。
比如:物理层包括芯片1、芯片2、芯片3、芯片4;芯片1的通信协议类型为SPI协议类型,芯片2的通信协议类型MII协议类型,芯片3的通信协议类型为USB协议类型,芯片4的通信协议类型为JTAG协议类型。
这里,通过总线将数据发送至物理层后,通过CPU总线控制器接收目标总线发送的数据,且通过CPU总线控制器将数据发送至所述通信协议类型对应的目标芯片;在通过CPU总线控制器将数据发送至所述通信协议类型对应的目标芯片时,是根据数据对应的通信协议类型将数据发送至对应的目标芯片。
比如:数据1的通信协议类型为SPI协议类型,数据2的通信协议类型为MII协议类型,数据3的通信协议类型为USB协议类型,数据4的通信协议类型为JTAG协议类型;芯片1的通信协议类型为USB协议类型,芯片2的通信协议类型为MII协议类型,芯片3的通信协议类型为SPI协议类型,芯片4的通信协议类型为JTAG协议类型;根据数据1对应的SPI协议类型将数据1发送至对应的目标芯片3;根据数据2对应的MII协议类型将数据2发送至对应的目标芯片2;根据数据3对应的USB协议类型将数据3发送至对应的目标芯片1;根据数据4对应的JTAG协议类型将数据4发送至对应的目标芯片4。
本申请实施例中,物理层包括CPU总线控制器和至少两个芯片;过所述CPU的总线控制器接收所述目标总线发送的所述数据,并根据所述数据对应的通信协议类型将所述数据发送至所述通信协议类型对应的目标芯片。
在一实施例中,所述方法还包括:通过所述物理层对所述数据进行处理,得到所述数据的响应数据,并调用所述目标总线将所述响应数据发送至所述内核层;通过所述内核层将所述响应数据传输至所述用户层。
这里,通过总线将数据发送至物理层后,如果是读操作,物理层对接收到的数据进行处理,得到该数据的响应数据,该响应数据的传输路线为:物理层、内核层、用户层。物理层在得到该数据的响应数据后,首先,调用所述目标总线将响应数据发送至内核层,内核层接收该响应数据;通过内核层将响应数据传输至用户层,用户层接收该响应数据。
内核层的总线驱动层中的目标总线驱动将数据发送给物理层的总线控制器,物理层标记总线控制器为读操作,总线控制器发送完数据,就会收到目标芯片温度寄存器地址返回的响数据。这里需要说明的是,总线控制器发送数据时,实际上是控制总线引脚发送出高低电平的时序,数据就是这些高低电平组成,低为0,高为1,当目标芯片收到数据,经过内部集成逻辑门电路,在通过总线输出引脚反馈响应数据给总线控制器,总线驱动通过CPU读取总线控制器相应地址值,这就则从目标芯片拿到了响应数据。
在本申请实施例中,如果是读操作,物理层对数据进行处理,得到响应数据,并将响应数据通过内核层传输至用户层,使得用户通过用户层获得数据的响应数据,提高用户的体验。
在一实施例中,所述内核层包括:虚拟设备驱动层和总线驱动层;所述虚拟设备驱动层支持至少两种通信协议类型;所述总线驱动层提供有所述至少两种通信协议类型中各通信协议类型对应的总线驱动;所述通过所述内核层将所述响应数据传输至所述用户层,包括:
通过所述目标总线驱动所驱动的目标总线将所述响应数据发送至所述虚拟设备驱动层;
通过所述虚拟设备驱动层将所述响应数据传输至所述用户层。
这里,内核层包括:虚拟设备驱动层和总线驱动层;所述虚拟设备驱动层支持至少两种通信协议类型。其中,通信协议类型可以包括:SPI协议类型、MII协议类型、USB协议类型、JTAG协议类型、IIC协议类型等协议类型。比如:虚拟设备驱动层支持SPI协议类型和USB协议类型;又比如:虚拟设备驱动层支持SPI协议类型、USB协议类型和JTAG协议类型。
这里,通过所述内核层将所述响应数据传输至所述用户层时,根据响应数据对应的数据的通信协议类型,确定传输该响应数据的该通信协议类型对应的目标总线驱动层,目标总线驱动层用于提供对应通信协议类型的目标总线;将响应数据通过目标总线驱动对应的目标总线发送至虚拟设备驱动层。
比如:SPI协议类型的数据1的响应数据为响应数据1,通过SPI协议类型对应的目标总线驱动层将响应数据1通过目标总线驱动对应的目标总线发送至虚拟设备驱动层;USB协议类型的数据2的响应数据为响应数据2,通过USB协议类型对应的目标总线驱动层将响应数据2通过目标总线驱动对应的目标总线发送至虚拟设备驱动层。
这里,虚拟设备驱动层接收到不同通信协议类型的响应数据后,通过所述虚拟设备驱动层将所述响应数据传输至所述用户层;其中,在通过虚拟设备驱动层将所述响应数据传输至用户层时,可以是通过虚拟设备驱动层将不同通信协议类型的响应数据进行整合后,将整合的响应数据传输至用户层。
比如:响应数据1的通信协议类型为SPI协议类型,响应数据2的通信协议类型为MII协议类型,响应数据3的通信协议类型为USB协议类型,响应数据4的通信协议类型为JTAG协议类型;通过虚拟设备驱动层将SPI协议类型的响应数据1、MII协议类型的响应数据2、USB协议类型的响应数据3,JTAG协议类型的响应数据4进行整合,传输至用户层。
在本申请实施例中,通过所述目标总线驱动所驱动的目标总线将所述响应数据发送至所述虚拟设备驱动层;通过所述虚拟设备驱动层将所述响应数据传输至所述用户层。
下面,以芯片调试场景为例对本申请实施例提供的数据处理方法进行进一步说明。
相关技术中,器件调试的步骤包括:基于开发的应用层接口(设备适配层)调用内核驱动提供的设备节点来调试内核驱动及各器件功能,,其中,应用层接口由设备适配层中的设备适配器提供,设备节点由设备驱动层的内核驱动提供。
目前,电子设备的架构如图2所示,包括:用户层20-1、内核层20-2和物理层20-3。其中,用户层20-1包括:用户接口层21、设备应用层22、设备适配层23,用户接口层21提供有用户应用程序接口(Application Programming Interface,Api),设备应用层22提供有各芯片的芯片Api,设备适配层23提供有各芯片的芯片适配器(Apt);内核层20-2包括:设备驱动层24、总线驱动层25,设备驱动层24提供有各芯片的芯片驱动(Drv)即内核驱动,总线驱动层提供有各通信协议类型对应的总线驱动,其中,通信协议类型可包括:SPI、JTAG、MII、PCIE、串口硬盘(Serial Advanced Technology Attachment,SATA)、USB、串行管理接口(Serial Management Interface,SMI)、通用异步收发传输(Universal AsynchronousReceiver/Transmitter,UART)、IIC等。物理层20-3包括设备物理层26。设备物理层26提供有CPU控制器即CPU的总线控制器和各芯片。
基于上述架构,当单板上的芯片种类及通信协议过多时,为不同通信协议的不同芯片开发驱动就显得工作量特别大,比如:图2中的设备驱动层、设备适配层、设备应用层均需开发完成才能进行调试,且调试周期过长,甚至会阻碍项目进度和设备批量生产。
本申请实施例提出一种单板快速调试的设计方案,将设备上所有芯片与CPU的通信总线抽象为一个内核态的虚拟设备,其中,虚拟设备:即非真实存在的设备,用软件或者其他技术手段模拟出来的没有实际硬件的抽象设备。
通信时调试系统将各芯片的通信协议,要访问的设备地址,通信总线ID,要访问的寄存器以及寄存器需要的数据发送给虚拟设备,虚拟设备根据不同通信协议处理相应逻辑,进而将数据送至CPU的总线控制器,从而达到CPU与各器件通信的目的;基于该虚拟设备,本申请实施例还提出一种新的驱动设计架构,通过对应用层按属性分层实现对器件功能的描述,各层分别为单板驱动层、单板适配层、设备驱动层、总线驱动层,每层各司其职;实际应用中可以做到以最小的开发工作量完成设备的适配与调试工作。
在本申请实施例中开发人员只需要简单适配调试系统即可完成整板的快速调试工作,且调试时极其灵活可支持多条相同或不同总线的调试,从而解决以下问题:
1、解决前期芯片驱动开发耗时问题;
2、解决单板前期调试困难问题;
3、解决各芯片驱动调试及维护不便问题;
4、解决非原生驱动过多带来的Linux内核稳定性、安全性问题;
5、对于不同芯片需要开发不同驱动的问题,即解决芯片驱动扩展性、兼容性差的问题。
本申请实施例的数据处理方法,能够应用在所有基于Linux系统的设备上,使得开发人员调试只需要简单适配调试子系统即可完成整板的快速调试工作,实现单板的快速调试。
本申请实施例的数据处理方法包括:将设备上所有芯片与CPU的通信总线抽象为一个内核态的虚拟设备,用户层可基于虚拟设备开发设备驱动,然后基于驱动开发调试系统,用来调试芯片功能;通信时调试系统将各芯片的通信协议,要访问的设备地址,通信总线ID,要访问的寄存器以及寄存器需要的数据通过设备驱动层发送给虚拟设备,虚拟设备根据不同通信协议处理相应逻辑,进而将数据送至CPU的总线控制器,从而达到CPU与各器件通信的目的。
本申请实施例的数据处理方法,如图3所示,包括:
调试系统31发送数据到设备驱动层32,设备驱动层32通过系统调用将数据传递给内核态的虚拟设备驱动层33,虚拟设备驱动层33根据不同通信协议处理不同协议逻辑,发送给CPU各通信总线控制器34,CPU各通信总线控制器34将数据分发给芯片35,芯片35收到数据会回传数据给CPU各通信总线控制器34,再通过虚拟设备驱动层33和设备驱动层32将数据回送给调试系统31,从而完成用户与设备的交互过程。
本申请实施例提供的电子设备的架构,如图4所示,包括:用户层40-1、内核层40-2和物理层40-3。其中,用户层40-1包括:用户接口层41、设备应用层42、设备适配层43,用户接口层41提供有用户Api,设备应用层42提供有各芯片的芯片Api,设备适配层43提供有各芯片的芯片驱动;内核层40-2包括:虚拟设备驱动层44、总线驱动层45,设备驱动层44提供有虚拟设备驱动(Drv),总线驱动层45提供有各通信协议类型对应的总线驱动,其中,通信协议类型可包括:SPI、JTAG、MII、PCIE、SATA、USB、SMI、UART、IIC等。物理层40-3包括设备物理层46。设备物理层46提供有CPU控制器即CPU的总线控制器和各芯片。
其中,应用层和芯片的通信过程如下:用户接口层41(User Api)下发通信数据到设备应用层42(Device Api),设备应用层42将数据发送给设备驱动层43(Device Drv),设备驱动层43通过系统调用将数据发送给内核态的虚拟设备驱动层44(Vm Device Drv),虚拟设备驱动层44解析用户传递数据中的通信协议发往相应总线驱动层45(Bus Drv),总线驱动层45通过读写物理层的CPU总线控制器,将数据传送给物理层46中的各器件(Device),从而完成通信工作。如果用户数据是读操作,设备物里层46(Device)中的各器件会将回应的数据再一层一层回送回去直到用户接口层41。
为了更好的达到单板快速调试和适配的目的,本申请实施例还提出一种新的驱动设计架构,其核心是根据用户和开发者所关注的功能特点分层,比如温度传感器,对用户来说只需关注能否获取到正确的温度,至于硬件设计用的芯片并不需要关心,但是底层的驱动却需要关注用的芯片,及通信协议,要做出相应的适配工作,为了不让设备因器件的差异而影响整个软件的过多改动,本申请实施例提出分层的设计方案,其结构图5所示:
从上到下以次为:用户层51->内核层52->物理层53。
其中,用户层51:指使用该系统的各类用户,可以通过有线或无线网络与系统进行通信,从而完成所需的工作。
内核层52:指基于Linux内核的设备驱动和所有资源所依赖的操作系统,通常是硬件与用户交互的中间层。
物理层53:指设备上所有硬件资源,通常由各种芯片和CPU组成的基本电路。
这里,用户层51的软件框架分为4层:单板驱动子层511->单板适配子层512->设备驱动子层513->总线驱动子层514。
单板驱动子层511:即BDD(Board Device Driver),提供单板上所有能支持的功能性接口;提供单板所有器件即芯片的功能接口,向上提供用户层调用,关注每个器件的功能。
单板适配子层512:即BDA(Board Device Adapter),提供单板上各器件提供的功能性接口;提供芯片的功能性接口,这里,关注功能是哪个芯片提供的,以及芯片地址、通信协议类型和总线ID等芯片信息。
设备驱动子层513:即DDI(Device Driver Interface),提供设备上器件能够通信的基本接口;提供本器件的驱动接口,只关注本器件驱动及驱动所有的通信接口。
总线驱动子层514:即BDI(Bus Driver Interface),提供设备上器件通信所需的总线驱动,提供通信协议驱动接口,只关注总线的通信协议类型,向上提供通信接口,不关注是什么CPU提供的。
这里,内核层52的软件框架分为2层:虚拟设备层521->总线驱动层522。
虚拟设备层521:向用户态提供所有协议驱动,这里抽象为一个虚拟设备。
总线驱动层522:提供通信协议驱动,关注提供的CPU的类型。
这里,物理层53:CPU的控制器和芯片,硬件设备决定,这里不再赘述。
通过以上分层,开发者可以基于单板驱动层调试整板功能,基于单板适配层调试芯片功能,基于设备驱动层调试芯片驱动;当遇到不同设备设计存在差异时,例如更换了温度传感器,只需要在用户层中的设备驱动层添加新的驱动,单板适配层加入该新器件的支持即可,改动非常小,用户层感知不到,也无需关心,大大提升适配效率及调试工作。
本申请实施例的有益效果包括以下内容:
本申请实施例大大推升了单板调试效率,节省人力及调试开发成本;能够及早发现设备的设计问题,及时改板缺陷,防止投入不必要的成本;各器件驱动在用户态完成,调试及维护方便且灵活;
有效保障Linux内核的稳定性,安全性,对于相同协议的不同芯片无需额外开发工作可直接调试,具有较强的扩展性和兼容性;单板调试效率的提高可加快项目进度,为项目争取更多时间。
基于前述的实施例,本申请实施例提供一种数据处理装置,该装置包括所包括的各层,可以通过计算机设备中的处理器来实现;当然也可通过具体的逻辑电路实现;在实施的过程中,处理器可以为中央处理器(CPU)、微处理器(MPU)、数字信号处理器(DSP)或现场可编程门阵列(FPGA)等。
图6为本申请实施例的一种数据处理装置的组成结构示意图,如图6所示,所述装置10包括:用户层11、内核层12和物理层13;其中,
用户层11,用于构造数据,并将所述数据发送至内核层;
内核层12,用于解析所述数据的通信协议类型,得到目标通信协议类型,并调用所述目标通信协议类型对应的目标总线驱动对所述数据进行处理;所述目标总线驱动以目标通信协议类型对应处理逻辑对所述数据进行处理;所述内核层支持至少两种通信协议类型;
所述内核层,还用于将所述处理后的数据发送至物理层中的目标芯片。
在一实施例中,内核层12包括:虚拟设备驱动层121和总线驱动层122;所述虚拟设备驱动层支持至少两种通信协议类型;总线驱动层122提供有所述至少两种通信协议类型中各通信协议类型对应的总线驱动;
虚拟设备驱动层121,用于解析所述数据的通信协议类型,得到所述数据的通信协议类型,并调用所述通信协议类型对应的目标总线驱动;
总线驱动层122,用于以所述目标通信协议类型对应的处理逻辑对所述数据进行处理。
在一实施例中,虚拟设备驱动层12,还用于接收用户层11发送的摘要信息;对所述数据的摘要信息进行分析,得到所述数据的通信协议类型。
在一实施例中,如图6所示,用户层11包括:单板驱动子层111、单板适配子层112、设备驱动子层113和总线驱动子层114;其中:
通过所述单板驱动子层111,提供所述数据对应的功能性接口,以调用所述目标芯片的接口;
通过所述单板适配子层112,提供所述目标芯片的接口,以调用所述目标芯片的芯片信息;
通过所述设备驱动子层113,调用所述目标芯片的驱动接口,以根据所述芯片信息确定所述目标芯片的内部地址,并调用所述总线驱动子层中的所述目标通信协议类型对应的通信接口;
通过所述总线驱动子层114,提供所述目标通信协议类型对应的总线驱动。
在一实施例中,如图6所示,物理层13包括中央处理器CPU总线控制器131和至少两个芯片132,不同芯片的通信协议类型不同;
CPU总线控制器131,用于接收所述处理过的数据,并将所述处理过的数据发送至所述至少两个芯片132中的目标芯片。
在一实施例中,物理层13,用于对所述数据进行处理,得到所述数据的响应数据,并调用所述目标总线将所述响应数据发送至所述内核层;
所述内核层,用于将所述响应数据传输至所述用户层。
在一实施例中,如图6所示,内核层12包括:虚拟设备驱动层121和总线驱动层122;虚拟设备驱动层121支持至少两种通信协议类型;总线驱动层122提供所述至少两种通信协议类型中各通信协议类型对应的总线驱动;
总线驱动层122,还用于将所述响应数据通过总线驱动对应的总线发送至所述虚拟设备驱动层;
虚拟设备驱动层121,还用于将不同通信协议类型的响应数据进行整合,并传输至所述用户层。
以上装置实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本申请装置实施例中未披露的技术细节,请参照本申请方法实施例的描述而理解。
需要说明的是,本申请实施例中,如果以软件功能模块的形式实现上述的数据处理方法,并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本申请各个实施例所述方法的全部或部分。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read OnlyMemory,ROM)、磁碟或者光盘等各种可以存储程序代码的介质。这样,本申请实施例不限制于任何特定的硬件和软件结合。
对应地,本申请实施例提供一种电子设备,也就是计算机设备,包括存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现上述实施例中提供的数据处理方法中的步骤。
对应地,本申请实施例提供一种存储介质,也就是计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中提供的数据处理方法中的步骤。
这里需要指出的是:以上存储介质和设备实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本申请存储介质和设备实施例中未披露的技术细节,请参照本申请方法实施例的描述而理解。
需要说明的是,图7为本申请实施例计算机设备的一种硬件实体示意图,如图7所示,所述计算机设备700包括:一个处理器701、至少一个通信总线702、用户接口703、至少一个外部通信接口704和存储器705。其中,通信总线702配置为实现这些组件之间的连接通信。其中,用户接口703可以包括显示屏,外部通信接口704可以包括标准的有线接口和无线接口。
存储器705配置为存储由处理器701可执行的指令和应用,还可以缓存待处理器701以及计算机设备中各模块待处理或已经处理的数据(例如,图像数据、音频数据、语音通信数据和视频通信数据),可以通过闪存(FLASH)或随机访问存储器(Random AccessMemory,RAM)实现。
应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本申请的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的切分,仅仅为一种逻辑功能切分,实际实现时可以有另外的切分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元;既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本申请各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(Read Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本申请上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本申请各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (10)
1.一种数据处理方法,其特征在于,所述方法包括:
通过用户层构造数据,并将所述数据发送至内核层;
通过所述内核层解析所述数据的通信协议类型,得到目标通信协议类型,并调用所述目标通信协议类型对应的目标总线驱动对所述数据进行处理;所述目标总线驱动以目标通信协议类型对应处理逻辑对所述数据进行处理;所述内核层支持至少两种通信协议类型;
通过所述内核层将所述处理后的数据发送至物理层中的目标芯片。
2.根据权利要求1所述的方法,其特征在于,所述内核层包括:虚拟设备驱动层和总线驱动层;所述虚拟设备驱动层支持至少两种通信协议类型;所述总线驱动层提供所述至少两种通信协议类型中各通信协议类型对应的总线驱动;所述通过所述内核层解析所述数据的通信协议类型,得到目标通信协议类型,并调用所述目标通信协议类型对应的目标总线驱动对所述数据进行处理,包括:
通过所述虚拟设备驱动层,解析所述数据的通信协议类型,得到所述数据的通信协议类型,并调用所述通信协议类型对应的目标总线驱动;
通过所述总线驱动层中的所述目标总线驱动,以所述目标通信协议类型对应的处理逻辑对所述数据进行处理。
3.根据权利要求2所述的方法,其特征在于,所述通过所述虚拟设备驱动层解析所述数据的通信协议类型,得到目标通信协议类型,包括:
通过所述虚拟设备驱动层接收所述用户层发送的摘要信息;
通过所述虚拟设备驱动层,对所述数据的摘要信息进行解析,得到所述目标通信协议类型。
4.根据权利要求1所述的方法,其特征在于,所述用户层包括:单板驱动子层、单板适配子层、设备驱动子层和总线驱动子层;其中,
通过所述单板驱动子层,提供所述数据对应的功能性接口,以调用所述目标芯片的接口;
通过所述单板适配子层,提供所述目标芯片的接口,以调用所述目标芯片的芯片信息;
通过所述设备驱动子层,调用所述目标芯片的驱动接口,以根据所述芯片信息确定所述目标芯片的内部地址,并调用所述总线驱动子层中的所述目标通信协议类型对应的通信接口;
通过所述总线驱动子层,提供所述目标通信协议类型对应的通信接口。
5.根据权利要求1所述的方法,其特征在于,所述物理层包括中央处理器CPU总线控制器和至少两个芯片,不同芯片的通信协议类型不同;所述方法还包括:
通过所述CPU总线控制器接收所述处理过的数据,并将所述处理过的数据发送至所述至少两个芯片中的目标芯片。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
通过所述物理层对所述数据进行处理,得到所述数据的响应数据,并将所述响应数据发送至所述内核层;
通过所述内核层将所述响应数据传输至所述用户层。
7.根据权利要求6所述的方法,其特征在于,所述内核层包括:虚拟设备驱动层和总线驱动层;所述虚拟设备驱动层支持至少两种通信协议类型;所述总线驱动层提供所述至少两种通信协议类型中各通信协议类型对应的总线驱动;所述通过所述内核层将所述响应数据传输至所述用户层,包括:
通过所述目标总线驱动所驱动的目标总线将所述响应数据发送至所述虚拟设备驱动层;
通过所述虚拟设备驱动层将所述响应数据传输至所述用户层。
8.一种数据处理装置,其特征在于,包括:用户层和内核层;其中,
所述用户层,用于构造数据,并将所述数据发送至内核层;
所述内核层,用于解析所述数据的通信协议类型,得到目标通信协议类型,并调用所述目标通信协议类型对应的目标总线驱动对所述数据进行处理;所述目标总线驱动以目标通信协议类型对应处理逻辑对所述数据进行处理;所述内核层支持至少两种通信协议类型;
所述内核层,还用于将所述处理后的数据发送至物理层中的目标芯片。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7任一项所述数据处理方法中的步骤。
10.一种存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时,实现权利要求1至7任一项所述的数据处理方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011455360.2A CN112579508A (zh) | 2020-12-10 | 2020-12-10 | 一种数据处理方法、数据处理装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011455360.2A CN112579508A (zh) | 2020-12-10 | 2020-12-10 | 一种数据处理方法、数据处理装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112579508A true CN112579508A (zh) | 2021-03-30 |
Family
ID=75131444
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011455360.2A Pending CN112579508A (zh) | 2020-12-10 | 2020-12-10 | 一种数据处理方法、数据处理装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112579508A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114900566A (zh) * | 2022-05-06 | 2022-08-12 | 北斗星通智联科技有限责任公司 | 数据通信方法、装置、电子设备及介质 |
CN115103032A (zh) * | 2022-06-10 | 2022-09-23 | 芯来智融半导体科技(上海)有限公司 | 通信协议控制电路和芯片 |
CN115134427A (zh) * | 2022-06-10 | 2022-09-30 | 芯来智融半导体科技(上海)有限公司 | 通信协议协调方法、装置、计算机设备和存储介质 |
CN116303149A (zh) * | 2023-05-18 | 2023-06-23 | 湖南博匠信息科技有限公司 | 基于bmc芯片实现控制器接口拓展的方法及系统 |
-
2020
- 2020-12-10 CN CN202011455360.2A patent/CN112579508A/zh active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114900566A (zh) * | 2022-05-06 | 2022-08-12 | 北斗星通智联科技有限责任公司 | 数据通信方法、装置、电子设备及介质 |
CN115103032A (zh) * | 2022-06-10 | 2022-09-23 | 芯来智融半导体科技(上海)有限公司 | 通信协议控制电路和芯片 |
CN115134427A (zh) * | 2022-06-10 | 2022-09-30 | 芯来智融半导体科技(上海)有限公司 | 通信协议协调方法、装置、计算机设备和存储介质 |
CN115134427B (zh) * | 2022-06-10 | 2024-02-02 | 芯来智融半导体科技(上海)有限公司 | 通信协议协调方法、装置、计算机设备和存储介质 |
CN115103032B (zh) * | 2022-06-10 | 2024-02-02 | 芯来智融半导体科技(上海)有限公司 | 通信协议控制电路和芯片 |
CN116303149A (zh) * | 2023-05-18 | 2023-06-23 | 湖南博匠信息科技有限公司 | 基于bmc芯片实现控制器接口拓展的方法及系统 |
CN116303149B (zh) * | 2023-05-18 | 2023-07-21 | 湖南博匠信息科技有限公司 | 基于bmc芯片实现控制器接口拓展的方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112579508A (zh) | 一种数据处理方法、数据处理装置、设备及存储介质 | |
Ryzhyk et al. | Automatic device driver synthesis with Termite | |
US9152540B2 (en) | System and methods for generating and managing a virtual device | |
CN101344899B (zh) | 一种片上系统的仿真测试方法及仿真测试系统 | |
CN113076227B (zh) | Mcu验证方法、系统和终端设备 | |
US8666723B2 (en) | System and methods for generating and managing a virtual device | |
Walls | Embedded software: the works | |
US9652570B1 (en) | Automatic implementation of a customized system-on-chip | |
CN113849433B (zh) | 一种总线控制器的执行方法、装置、总线控制器、计算机设备和存储介质 | |
CN114880977A (zh) | 软硬件联合仿真系统、方法、装置、设备和存储介质 | |
CN103842980A (zh) | 协议中立织物 | |
CN114385524B (zh) | 嵌入式固件仿真系统及其方法、装置和电子设备 | |
US20050144436A1 (en) | Multitasking system level platform for HW/SW co-verification | |
US20240176632A1 (en) | Method for generating and verifying automotive embedded software based on autosar | |
Chen et al. | Me3D: A model-driven methodology expediting embedded device driver development | |
CN1312583C (zh) | 仿真装置和仿真方法 | |
US20150227661A1 (en) | Computer product, simulation apparatus, simulation method, bus model, and bus circuit | |
CN102508750A (zh) | Soc内部模块检测装置及方法 | |
CN112885403B (zh) | 一种Flash控制器的功能测试方法、装置及设备 | |
US9576090B2 (en) | Co-design of a testbench and driver of a device | |
CN108549611A (zh) | 一种基于gt9系列芯片的驱动实现方法及系统 | |
JP5056493B2 (ja) | 仮想ソフトウェア生成装置 | |
JP2012155519A (ja) | シミュレーション装置、シミュレーション方法およびそのコンピュータ・プログラム | |
CN101908016A (zh) | 多核心嵌入式装置的除错信息与断点管理方法 | |
KR102586821B1 (ko) | 가상 ecu 환경에서의 오토사 플랫폼 입출력에 따른 동작 검증 시스템 및 방법 |
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 |