专利名称:一种嵌入式仿真测试方法和系统的制作方法
技术领域:
本发明涉及自动化测试技术,特别涉及一种嵌入式仿真测试方法和系统。
背景技术:
在对芯片进行研发和制造时,必须要进行芯片测试的过程。例如,多媒体处理芯片的研发和制造公司就需要对其多媒体处理芯片进行测试,对多媒体数据进行采集作为输入,经过多媒体处理芯片的处理得出输出结果,根据输出结果、输入与输出结果的比较或者输出结果与标准比较文件的比较对芯片的特性进行判断。目前,多采用传感器对芯片进行测试,图1就是现有技术采用传感器测试多媒体处理芯片的网络示意图,包括以下几部分传感器(sensor)101用来采集被处理数据并将输出数据作为芯片102的输入。
功能处理芯片102对sensor 101的输出数据进行处理,不同类型的芯片具有不同的处理功能,例如多媒体处理芯片中的图像处理芯片,具有对传感器输出的图像数据进行增益控制、图像格式转化、图像缩放、颜色调整、伽玛校正等处理功能;声音处理芯片具有对声音进行音效、音质或者音量等进行调整的功能。然后将处理后的数据发送给显示装置103。在此值得注意的是,经功能处理芯片处理后的数据是以实时的数据流形式输出的,不能进行储存,只能用显示装置直观地实时显示。
显示装置103对经过功能处理芯片102处理输出的实时的数据流进行显示,例如在多媒体处理芯片中的图像处理芯片处理后输出的实时的数据流,就在显示器(LCD)上以图像的形式进行显示,并没有具体的数据显示,测试人员通过LCD来观察测试结果,对其颜色、像素等根据图像进行主观的观察。
更进一步地,往往在上述示意图的基础上,还存在一种标准程序,将与传感器输出的数据相对应的文件数据经过标准程序的算法转换,得到标准比较文件,此标准比较文件可以进行存储,然后可以用PC进行显示,用于对芯片的性能进行比较和验证。
在现有技术的测试过程中,由于数据输入到功能处理芯片处理后,得到的处理结果被显示到LCD上,例如,测试图像处理芯片时结果以图像的形式显示,不能得到各图像参数的具体值,即不能得到数字化的测试结果,只能通过测试人员的眼睛主观去判别测试的结果,这样的测试结果很不准确,不同的测试人员得出的测试结果可能不完全相同,对于某些特性的测试不够准确,也不够客观。更进一步地,由于不能得到数字化的测试结果,所得到的与标准比较文件的比较也只能通过人为的比较,不够准确和客观。
发明内容
有鉴于此,本发明的主要目的在于提供一种嵌入式仿真测试系统,该系统能够对经过芯片处理过后得到的处理结果进行准确和客观的判定。
本发明的另一个目的在于提供一种嵌入式仿真测试方法,该方法能够对经过芯片处理过后得到的处理结果进行准确和客观的判定。
为了能够实现上述第一个目的,本发明提供了一种嵌入式仿真测试系统,其特征在于,该系统包括功能处理芯片以及可编程逻辑单元;输入数据经功能处理芯片处理为实时的数据流输出给可编程逻辑单元,可编程逻辑单元将功能处理芯片输出的实时的数据流转换为数字数据输出。
该系统进一步包含与可编程逻辑单元相连的存储器,用于将可编程逻辑单元输出的数字数据存储在存储器中。
所述存储器还用来存储标准比较文件,以及可编程逻辑单元输出的数字数据与标准比较文件进行比较后的结果。
其中,该系统进一步包括处理器,处理器将数字数据写入所述存储器或从存储器中读取数据;该系统进一步包括处理器,处理器将可编程逻辑单元输出的数字数据与标准比较文件进行比较后的结果写入存储器或从存储器中读取。
该系统进一步包括通信设备,可编程逻辑单元通过通信设备与外部设备进行通信,用于将数字数据输出给外部设备。
该系统进一步包括处理器,处理器控制所述通信设备与外部设备进行通信。
该系统进一步包括与可编程逻辑单元相连的网络接口,所述数字数据通过网络接口输出。
该系统进一步包括两个处理器;第一个处理器控制功能处理芯片将输入数据处理为实时的数据流输出;第二个处理器控制可编程逻辑单元将功能处理芯片输出的实时的数据流直接转换为数字数据输出。
为了实现上述第二个目的,本发明提供了一种嵌入式仿真测试方法,其特征在于,该方法包含以下步骤A、功能处理芯片对输入数据进行处理后,输出实时的数据流。
B、可编程逻辑单元接收功能处理芯片输出的实时的数据流,将实时的数据流转换为数字数据后输出。
设置第一处理器,步骤A中所述功能处理芯片对输入数据进行处理后,输出实时的数据流是通过第一处理器进行控制的;设置第二处理器,步骤B中所述可编程逻辑单元接收功能处理芯片的输出数据,将接收到的实时的数据流转换为准确的数字数据后输出是通过第二处理器进行控制的。
其中,所述的数字数据输出后存储在存储器中。
另外,该方法进一步包括设置处理器,读取存储在所述存储器中的数字数据,通过通信设备或网络接口进行输出。
在步骤B之后,该方法进一步包括所述的数字数据与标准比较文件进行比较后,比较结果存储在存储器中。
所述的标准比较文件存储在存储器中,或者由处理器通过通信设备从外部设备中读取。
该方法进一步包括设置处理器,读取存储在所述存储器中的比较结果,通过通信设备或网络接口进行输出。
由上述技术方案可以看出,本发明提供的嵌入式仿真测试方法和系统,将经过芯片处理过的实时的数据流送入可编程逻辑单元,可编程逻辑单元将原来的数据流转换为准确的数字数据,使得系统能够对经过芯片处理过后得到的处理结果进行准确和客观的判定。更进一步地,可以将输出的数据与标准比较文件进行对比,并同样以准确数据的形式输出,使得测试人员能够对经过比较后的结果进行准确和客观的判定。
图1为现有技术采用传感器测试多媒体处理芯片的网络示意图;图2为嵌入式仿真测试系统结构图;图3为多媒体图像处理测试系统结构图;图4为嵌入式仿真测试方法的流程图;图5为该嵌入式仿真测试方法的一个实施例流程图;图6为多媒体图像处理测试实施例流程图。
具体实施例方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图及具体实施例对本发明作进一步地详细描述。
首先,对本发明提供的能得到准确测试结果的仿真测试系统进行详细描述。其结构参见图2,图2为嵌入式仿真测试系统结构图。该系统主要由以下几部分组成PC 201通过通信设备208完成与嵌入式系统的通信,作为控制测试系统的操作平台,向测试系统的处理器下达控制指令,也用来存储标准比较文件,或显示输出结果。这里标准比较文件是与传感器输出数据相对应的文件数据经过标准程序的标准算法转换后得到的,或者是以数据库的形式存在的。
功能处理芯片202对传感器207的输出进行处理,不同类型的芯片具有不同的处理功能,例如多媒体处理芯片中的图像处理芯片,具有对图像进行颜色调整、像素调整、增益控制、图像格式转化、图像缩放等功能;声音处理芯片具有对声音进行音效、音质或者音量等进行调整的功能。并将结果传送给可编程逻辑单元203。
可编程逻辑单元203将功能处理芯片202的结果转换为准确的数字数据通过总线操作存储在存储器206中,或者通过通信设备208上传至PC 201。因为经功能处理芯片202处理后的数据是实时的数据流,不能进行储存,只能用显示装置进行实时的显示,所以在此,可编程逻辑单元就将功能处理芯片202输出的数据流转换为准确的数字数据。
处理器204控制可编程逻辑单元203的操作,对存储器206的数据写入和读取进行控制,控制通信设备208与外部设备进行通信,控制网络接口209进行网络输出。
处理器205对功能处理芯片202进行控制,使功能处理芯片202完成前述增益控制、图像格式转化、图像缩放等功能处理操作。
存储模块206用来存储可编程逻辑单元203的输出结果。
传感器207用来采集被处理数据并将输出作为功能处理芯片202的输入。
通信设备208PC 201与嵌入式环境的通信渠道,用来完成它们之间数据或指令的传送。
网络接口209用来将输出结果通过网络进行输出。
更进一步地,当该测试系统完成输出结果与标准比较文件的比较功能时,处理器204从存储器207中读取可编程逻辑单元输出的数字数据和标准比较文件,经外部比较工具进行比较后,处理器204将比较结果存入存储器207。其中,外部比较工具是系统外的一个程序模块或者是PC 201内的一个程序模块,因为外部比较工具不是本发明的发明点,所以在此不做详细论述。
下面通过一个具体实施例来对上述系统进行详细说明。在此我们以多媒体图像处理测试系统为例,参见图3。图3为多媒体图像处理测试系统结构图。
其中,龙(Dragon)301是PC端的测试平台,通过串口UART 328或USB 318完成与嵌入式环境的通信,是控制测试系统的操作平台,下达对本实施例中采用的型号为S3c2410 304和S3c44box 305的处理器的控制指令,也用来存储标准比较文件或显示输出结果。这里标准比较文件是与传感器307输出数据相对应的文件数据经过标准程序的标准算法后得到的,或者是以数据库的形式存在的。其中,与传感器307的输出数据相对应的文件数据在此可以是通过抓拍得到的图片文件数据。
528芯片302是一种多媒体图像处理芯片,对传感器307采集到的图像数据进行颜色调整、像素调整、增益控制、图像格式转化、图像缩放等处理,并将输出的实时数据流传送给复杂可编程逻辑器件/现场可编程逻辑门阵列(CPLD/FPGA,Complex Programmable Logic Device/Field ProgrammableGate Array)。
CPLD/FPGA 303将528芯片302处理后输出的实时的数据流转换为准确的数字信号通过总线操作存储在随机动态存储器(SDRAM,SynchronousDynamic Random Access Memory)317、NOR闪存(Norflash)327或者NAND闪存(Nandflash)337中,或者通过UART 328或USB 318上传至Dragon 301。
其中,S3c2410 304是基于ARM9的处理器,控制CPLD/FPGA 303的操作,对存储器SDRAM 317、Norflash 327或者Nandflash 337的数据写入和读取进行控制,控制UART 328或USB 318与外部设备进行通信。
S3c44box 305是基于ARM7的处理器,控制528芯片302使其完成图像处理的相应功能操作。
SDRAM 317、Norflash 327和Nandflash 337是板子上的三个存储器,用来存储输出结果。
传感器307用来采集被处理的图像数据并将输出的数据作为528芯片302的输入。
UART 328和USB 318用来完成Dragon 301与嵌入式系统的通信,完成它们之间数据或控制指令的传送。
另外,输出的结果或者比较结果可以通过以太网(Ethernet)309输出。
更进一步地,当该测试系统输出数字数据与标准比较文件的比较结果时,S3c2410 304从存储器Nandflash 337中读取CPLD/FPGA输出的数字数据和标准比较文件,标准比较文件也可以存在别的存储器中,由外部比较工具进行比较后,将比较结果存入Nandflash 337中,也可以存在别的存储器中。其中,外部比较工具是系统外的一个程序模块或者是PC 201内的一个程序模块。
在这里此实施例仅作为本发明仿真测试系统的一个例子,其各部分组成还可能有其他型号的芯片或者其他功能的模块组成,所以此例子并不是本发明的全部,仅仅是帮助对该系统进行理解的一个实施例。
在本发明提供的系统基础上,下面对本发明所提供的嵌入式仿真测试方法进行描述,该方法的流程如图4所示,图4为嵌入式仿真测试方法的流程图。其中,设置了可编程逻辑单元,该流程的步骤包括步骤401功能处理芯片对输入数据进行处理,并输出实时的数据流给可编程逻辑单元。功能处理芯片的输入数据一般是经过传感器采集到的数据。
步骤402可编程逻辑单元将接收到的实时的数据流转换为准确的数字数据后输出。
以上是本发明所提供的嵌入式仿真测试方法的必要流程,下面就对该方法的流程用下面两个实施例做详细的描述。
图5为该嵌入式仿真测试方法的一个实施例流程图,该详细流程包括以下步骤步骤501功能处理芯片接收输入数据,一般来说,该输入数据是由传感器采集到的数据,将传感器的输出作为功能处理芯片的输入数据;或者,是处理器从存储器中读取的模拟传感器输入的数据。
步骤502处理器控制功能处理芯片对输入数据进行处理,并通过相应的接口将结果输出到可编程逻辑单元。
步骤503处理器控制可编程逻辑单元将功能处理芯片输出的实时的数据流转换为准确数字数据并输出。
步骤504处理器通过总线操作将输出的结果写入存储器。
步骤505通过PC决定是否与标准比较文件进行比较,如果否,进行步骤506;如果是,则转到步骤509。
步骤506通过PC决定将输出的结果上传至PC还是通过网络输出,如果上传至PC,进行步骤507;如果通过网络输出,则转至步骤508。
步骤507处理器通过总线从存储器中读取输出结果,通过通信设备将输出的结果上传至PC,结束操作。
步骤508处理器通过总线将输出的数字数据结果通过网络接口进行输出,结束操作。
步骤509处理器通过总线操作从存储器中读取可编成逻辑单元输出的数字数据与标准比较文件。
步骤510外部比较工具执行将功能处理芯片的输出数据与标准比较文件的比较操作。
步骤511处理器通过总线操作将比较结果写入存储器。
步骤512通过PC决定将输出的比较结果上传至PC还是通过网络输出,如果上传至PC,执行步骤513;如果通过网络输出则转到步骤514。
步骤513处理器通过总线从存储器中读取输出的比较结果,通过通信设备将输出的比较结果上传至PC,结束操作。
步骤514处理器通过总线从存储器中读取输出的比较结果,并通过网络接口进行输出,结束操作。
在以上步骤中,将输出结果和输出的比较结果写入存储器都是以文件的形式进行的。
下面仍以多媒体图像处理测试为例针对上述流程给出一个实施例,该实施例的流程如图6所示,图6为多媒体图像处理测试实施例流程图。包含以下步骤步骤601528芯片接收输入数据,此输入数据可以由传感器采集,将传感器采集到的图像数据作为528芯片的输入数据;或者也可以是处理器S3c44box从PC的存储器中读取的数据作为输入数据。
步骤602处理器S3c44box控制528芯片进行图片处理,并将处理后的实时的图片数据流输出到CPLD/FPGA。
步骤603处理器S3c2410控制CPLD/FPGA将实时的图片数据流转换为准确的数字数据并通过总线输出。这样得到的就是经过处理后的图片的色素、像素、大小等的具体数据值。
步骤604处理器S3c2410通过总线操作将输出的结果写入Nandflash。
步骤605通过Dragon决定是否与标准比较文件进行比较,如果否,执行步骤606;如果是,则转到步骤609。
步骤606通过Dragon将输出的结果上传至测试平台还是通过网络输出,如果上传,执行步骤607;如果通过网络输出,则转至步骤608。
步骤607处理器S3c2410通过总线从Nandfash中读取结果,通过UART将输出结果上传至Dragon,结束操作。
步骤608处理器S3c2410通过总线将输出的比较结果通过Ethernet进行输出,结束操作。
步骤609处理器S3c2410通过总线操作从存储器中读取CPLD/FPGA输出的数字数据和标准比较文件。标准比较文件和CPLD/FPGA输出的数字数据可能存储在存储器SDRAM、Norflash或Nandflash中,也可能存在PC的存储器中。在本例中,采用比较文件在Nandflash中。
步骤610外部比较工具执行CPLD/FPGA输出的数字数据与标准比较文件的比较操作,此时的比较结果也是准确的数字数据,例如经过528芯片处理过的图片与标准比较文件相比较的色素差值、像素差值或者大小差值等。
步骤611处理器S3c2410通过总线操作将比较结果写入存储器。同样结果也可以写入存储器SDRAM、Norflash或Nandflash中,在本例中,仍将结果存储在Nandflash中。
步骤612通过Dragon决定将输出的比较结果上传至测试平台还是通过网络输出,如果上传,执行步骤613;如果通过网络输出则转到步骤614。
步骤613处理器S3c2410通过总线从Nandflash中读取输出的比较结果,并且通过UART接口将输出的比较结果上传到测试平台,结束操作。
步骤614处理器S3c2410通过总线从Nandflash中读取输出的比较结果,并通过Ethernet输出,结束操作。
由上可见,通过本发明所述的方法和系统,可以得到准确的数字数据,而不是原来只能直观在显示装置上显示的实时数据流,使测试人员能够对经过芯片处理过后得到的处理结果进行准确和客观的判定。更优地,可以与标准比较文件进行比较,输出的比较结果同样是准确的数字数据,这样通过分析比较输出结果就可以测试芯片是否正常,使测试工作更加客观有效。
权利要求
1.一种嵌入式仿真测试系统,其特征在于,该系统包括功能处理芯片以及可编程逻辑单元;输入数据经功能处理芯片处理为实时的数据流输出给可编程逻辑单元,可编程逻辑单元将功能处理芯片输出的实时的数据流转换为数字数据输出。
2.根据权利要求1所述的系统,其特征在于,该系统进一步包含与可编程逻辑单元相连的存储器,用于将可编程逻辑单元输出的数字数据存储在存储器中。
3.根据权利要求2所述的系统,其特征在于,所述存储器还用来存储标准比较文件,以及可编程逻辑单元输出的数字数据与标准比较文件进行比较后的结果。
4.根据权利要求2或3所述的系统,其特征在于,该系统进一步包括处理器,处理器将数字数据写入所述存储器或从存储器中读取数据。
5.根据权利要求3所述的系统,其特征在于,该系统进一步包括处理器,处理器将可编程逻辑单元输出的数字数据与标准比较文件进行比较后的结果写入存储器或从存储器中读取。
6.根据权利要求1所述的系统,其特征在于,该系统进一步包括通信设备,可编程逻辑单元通过通信设备与外部设备进行通信,用于将数字数据输出给外部设备。
7.根据权利要求6所述的系统,其特征在于,该系统进一步包括处理器,处理器控制所述通信设备与外部设备进行通信。
8.根据权利要求1所述的系统,其特征在于,该系统进一步包括与可编程逻辑单元相连的网络接口,所述数字数据通过网络接口输出。
9.根据权利要求8所述的系统,其特征在于,该系统进一步包括处理器,处理器控制所述网络接口进行网络输出。
10.根据权利要求1所述的系统,其特征在于,该系统进一步包括两个处理器;第一个处理器控制功能处理芯片将输入数据处理为实时的数据流输出;第二个处理器控制可编程逻辑单元将功能处理芯片输出的实时的数据流直接转换为数字数据输出。
11.一种嵌入式仿真测试方法,其特征在于,该方法包含以下步骤A、功能处理芯片对输入数据进行处理后,输出实时的数据流。B、可编程逻辑单元接收功能处理芯片输出的实时的数据流,将实时的数据流转换为数字数据后输出。
12.根据权利要求11所述的方法,其特征在于,设置第一处理器,步骤A中所述功能处理芯片对输入数据进行处理后,输出实时的数据流是通过第一处理器进行控制的;设置第二处理器,步骤B中所述可编程逻辑单元接收功能处理芯片的输出数据,将接收到的实时的数据流转换为准确的数字数据后输出是通过第二处理器进行控制的。
13.根据权利要求11所述的方法,其特征在于,所述的数字数据输出后存储在存储器中。
14.根据权利要求13所述的方法,其特征在于,该方法进一步包括设置处理器,读取存储在所述存储器中的数字数据,通过通信设备或网络接口进行输出。
15.根据权利要求11所述的方法,其特征在于,在步骤B之后,该方法进一步包括所述的数字数据与标准比较文件进行比较后,比较结果存储在存储器中。
16.根据权利要求15所述的方法,其特征在于,所述的标准比较文件存储在存储器中,或者由处理器通过通信设备从外部设备中读取。
17.根据权利要求15所述的方法,其特征在于,该方法进一步包括设置处理器,读取存储在所述存储器中的比较结果,通过通信设备或网络接口进行输出。
全文摘要
本发明提供了一种嵌入式仿真测试方法和系统,通过设置可编程逻辑单元,将经功能处理芯片处理过的实时的数据流转换为准确的数字数据输出,并且还可以由外部比较工具将准确的数字数据和标准比较文件进行比较后,将数字比较结果进行输出。然后处理器将输出的准确数字数据或数字比较结果存储在存储器中,通过通信设备或网络接口进行输出。该方法和系统实现了输出数据的准确数字化,并且可用于输出数据与标准比较文件的对比,得到数字化的比较结果,因此使得测试工作更加的客观有效。
文档编号G06F11/36GK1920794SQ20061015236
公开日2007年2月28日 申请日期2006年9月28日 优先权日2006年9月28日
发明者黄鑫, 游明琦 申请人:北京中星微电子有限公司