发明内容
本发明实施例所要解决的技术问题是提供一种数据的解码方法和装置,以便在数据采用高速传输时,减小在高速传输时数据解码的误码率,改善了接收端的处理能力。
为了解决上述问题,本发明公开了一种数据的解码方法,包括:
接收端在接收数据前检测发射端预设的数据发送速度,所述接收端预置有与不同数据发送速度匹配的多个解码控制参数;
从预置的多个解码控制参数中,确定与所述数据发送速度匹配的目标解码控制参数,并对接收端进行设置;
从发射端接收数据,并根据目标解码控制参数对数据进行解码,以控制预设的数据发送速度下数据解码的误码率。
可选地,所述解码控制参数包括时钟数据恢复控制参数,所述目标解码控制参数包括目标时钟数据恢复控制参数,所述根据目标解码控制参数对数据进行解码包括:
根据所述目标时钟数据恢复控制参数,从接收到的数据中恢复发射端的时钟,以控制在所述数据发送速度下所恢复的时钟的准确性。
可选地,所述解码控制参数还包括锁相环控制参数,所述目标解码控制参数还包括目标锁相环控制参数,所述根据目标解码控制参数对数据进行解码包括:
根据所述目标锁相环控制参数,由参考时钟生成解码过程所需要的至少一种输出时钟,以控制在所述数据发送速度下所生成的各输出时钟的稳定性。
可选地,在所述从发射端接收数据,并根据目标解码控制参数对数据进行解码之前,所述方法还包括:
在发射端的第一测试信号摆幅下,判定第一误码率测试结果没有达到设定阈值,则通知所述发射端调高到所述第一测试信号摆幅对应的设定信号摆幅;
获取所述发射端调高信号摆幅后实际的第二测试信号摆幅;
在发射端的所述第二测试信号摆幅下,判定第二误码率测试结果达到设定阈值,则将所述第二误码率测试结果和第二测试信号摆幅通知所述发射端,以供发射端以所述第二测试信号摆幅为实际信号摆幅向接收端发送数据。
可选地,在所述接收端在接收数据前检测发射端预设的数据发送速度之前,所述方法还包括:
控制所述发射端以各种测试数据发送速度发送测试数据,所述各种测试数据发送速度归属不同的数据发送速度范围;
获取在各种不同的解码控制参数下解码测试数据的误码率测试结果;
为各个数据发送速度范围选取误码率最低的误码率测试结果对应的解码控制参数,预置为各个数据发送速度范围匹配的解码控制参数。
可选地,所述确定与所述数据发送速度匹配的目标解码控制参数包括:
判定所述数据发送速度在所述目标数据发送速度范围内,则确定与所述目标数据发送速度范围匹配的目标解码控制参数。
相应的,本发明实施例还提供了一种数据的解码装置,包括:
速度检测模块,用于接收端在接收数据前检测发射端预设的数据发送速度,所述接收端预置有与不同数据发送速度匹配的多个解码控制参数;
目标参数确定模块,用于从预置的多个解码控制参数中,确定与所述数据发送速度匹配的目标解码控制参数,并对接收端进行设置;
数据解码模块,用于从发射端接收数据,并根据目标解码控制参数对数据进行解码,以控制预设的数据发送速度下数据解码的误码率。
可选地,所述解码控制参数包括时钟数据恢复控制参数,所述目标解码控制参数包括目标时钟数据恢复控制参数,所述数据解码模块包括:
时钟恢复子模块,用于根据所述目标时钟数据恢复控制参数,从接收到的数据中恢复发射端的时钟,以控制在所述数据发送速度下所恢复的时钟的准确性。
可选地,所述解码控制参数还包括锁相环控制参数,所述目标解码控制参数还包括目标锁相环控制参数,所述数据解码模块包括:
时钟生成子模块,用于根据所述目标锁相环控制参数,由参考时钟生成解码过程所需要的至少一种输出时钟,以控制在所述数据发送速度下所生成的各输出时钟的稳定性。
可选地,所述装置还包括:
摆幅调高通知模块,用于在所述从发射端接收数据,并根据目标解码控制参数对数据进行解码之前,在发射端的第一测试信号摆幅下,判定第一误码率测试结果没有达到设定阈值,则通知所述发射端调高到所述第一测试信号摆幅对应的设定信号摆幅;
摆幅获取模块,用于获取所述发射端调高信号摆幅后实际的第二测试信号摆幅;
第二摆幅通知模块,用于在发射端的所述第二测试信号摆幅下,判定第二误码率测试结果达到设定阈值,则将所述第二误码率测试结果和第二测试信号摆幅通知所述发射端,以供发射端以所述第二测试信号摆幅为实际信号摆幅向接收端发送数据。
依据本发明实施例,通过接收端在接收数据前检测发射端预设的数据发送速度,从预置的多个解码控制参数中,确定与所述数据发送速度匹配的目标解码控制参数,并对接收端进行设置,从发射端接收数据,并根据目标解码控制参数对数据进行解码,以控制预设的数据发送速度下数据解码的误码率,使得可以在DP数据采用高速传输时,根据与数据传输速度相匹配的解码控制参数配置接收端,继而减小在高速传输时数据解码的误码率,改善了接收端的处理能力。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
参照图1,示出了本发明实施例一的一种数据的解码方法的步骤流程图,具体可以包括如下步骤:
步骤101,接收端在接收数据前检测发射端预设的数据发送速度。
DP可用于同时传输音频和视频数据,DP发射端和接收端之间可以有4路数据通道,每个通道可以以比特率为1.62、2.7或5.4Gbit/s进行数据传输。但发射端的数据发送速度高时,接收端对数据进行解码的误码率就会提高,导致发射端还要重传有误的数据,降低了有效的数据发送速度。
在本发明实施例中,针对发射端不同的数据发送速度,接收端预置有与不同数据发送速度匹配的多个解码控制参数。在接收端接收到数据后,根据解码控制参数对数据进行解码,解码控制参数会影响解码数据时的误码率,解码控制参数可以包括有多种用于控制解码过程的参数,例如时钟数据恢复控制参数和锁相环控制参数,。按照DP协议解码控制参数不会因数据发送速度不同而变化,具体可以包括任意适用的解码控制参数。在各种数据发送速度下,以不同的解码控制参数,对接收的数据进行解码,根据解码的误码率,选取误码率最低的解码控制参数作为与数据发送速度匹配的解码控制参数,得到多个数据发送速度对应的多个解码控制参数。
例如,解码控制参数包括时钟数据恢复控制参数,也就是CDR(Clock and DataRecovery,时钟数据恢复)参数,是用于接收端从接收到的数据中恢复嵌入的时钟,以供按照恢复的时钟进行数据对齐,接着用接收端的参考时钟进行字对齐,最后解码数据,恢复的时钟的准确性将影响最终解码的误码率。而在发射端预设的数据发送速度下,接收端在不同的时钟数据恢复控制参数下,解码的误码率会不同,所以在接收端可以为不同数据发送速度预置与之匹配的多个时钟数据恢复控制参数。在各种数据发送速度下,根据与之匹配的时钟数据恢复控制参数从数据中恢复嵌入的时钟,可以提高恢复的时钟的准确性,继而减小解码的误码率。
例如,解码控制参数包括锁相环控制参数,也就是PLL(Phase Locked Loop,锁相)参数,是用于接收端根据参考时钟生成解码过程所需的至少一种输出时钟,根据至少一种输出时钟解码数据,各输出时钟的稳定性将影响最终解码的误码率。而在发射端预设的数据发送速度下,接收端在不同的锁相环控制参数下,解码的误码率会不同,所以在接收端可以为不同数据发送速度预置与之匹配的多个锁相环控制参数。在各种数据发送速度下,根据与之匹配的锁相环控制参数生成各输出时钟,可以提高生成的各输出时钟的稳定性,继而减小解码的误码率。
在本发明实施例中,按照DP协议,在接收端完成参数配置,例如时钟数据恢复控制参数和锁相环控制参数,各个模块初始化之后,把HPD(热插拔信号检测)信号置高以确认硬件连接正常,发射端将预设的数据发送速度通过DP协议中的AUX通道写存入接收端的DPCD(DisplayPort Configuration Data,DP配置数据)信息中,发射端可以预设任意适用的数据发送速度,本发明实施例对此不做限制。接收端通过读取DPCD信息检测到发射端的数据发送速度。
步骤102,从预置的多个解码控制参数中,确定与所述数据发送速度匹配的目标解码控制参数,并对接收端进行设置。
在本发明实施例中,多个数据发送速度对应预置了多个解码控制参数,将查找到检测到的数据发送速度匹配的解码控制参数,确定为目标解码控制参数,并对接收端进行设置,将相应的参数配置为目标解码控制参数的值。
步骤103,从发射端接收数据,并根据目标解码控制参数对数据进行解码,以控制预设的数据发送速度下数据解码的误码率。
在本发明实施例中,发射端开始发送数据,接收端接收数据,并根据目标解码控制参数对数据进行解码,例如,目标解码控制参数可以包括目标时钟数据恢复控制参数,根据目标时钟数据恢复控制参数,从接收到的数据中恢复发射端的时钟,以控制在所述数据发送速度下所恢复的时钟的准确性。由于目标时钟数据恢复控制参数是与检测到的数据发送速度向匹配的,所以可以提高所恢复的时钟的准确性,继而减小预设的数据发送速度下数据解码的误码率。目标解码控制参数还可以包括目标锁相环控制参数,根据目标锁相环控制参数,由参考时钟生成解码过程所需要的至少一种输出时钟,以控制在所述数据发送速度下所生成的各输出时钟的稳定性。由于目标锁相环控制参数是与检测到的数据发送速度向匹配的,所以可以提高所生成的各输出时钟的稳定性,继而减小预设的数据发送速度下数据解码的误码率。
依据本发明实施例,通过接收端在接收数据前检测发射端预设的数据发送速度,从预置的多个解码控制参数中,确定与所述数据发送速度匹配的目标解码控制参数,并对接收端进行设置,从发射端接收数据,并根据目标解码控制参数对数据进行解码,以控制预设的数据发送速度下数据解码的误码率,使得可以在DP数据采用高速传输时,根据与数据传输速度相匹配的解码控制参数配置接收端,继而减小在高速传输时数据解码的误码率,改善了接收端的处理能力。
参照图2,示出了本发明实施例二的一种数据的解码方法的步骤流程图,具体可以包括如下步骤:
步骤201,控制所述发射端以各种测试数据发送速度发送测试数据。
在本发明实施例中,划定了多个数据发送速度范围,控制发射端以各种测试数据发送速度发送测试数据,各种测试数据发送速度归属不同的数据发送速度范围,具体可以在每个数据发送速度范围内,选取一种或几种测试数据发送速度,本发明对此不做限制。
步骤202,获取在各种不同的解码控制参数下解码测试数据的误码率测试结果。
在本发明实施例中,接收端在接收到测试数据后,不断调整解码控制参数对测试数据进行解码,获取多个解码控制参数下对测试数据进行解码,并测试解码的误码率,得到误码率测试结果。针对各种测试数据发送速度,分别得到多个解码控制参数下解码测试数据的误码率测试结果。
步骤203,为各个数据发送速度范围选取误码率最低的误码率测试结果对应的解码控制参数,预置为各个数据发送速度范围匹配的解码控制参数。
在本发明实施例中,根据归属各个数据发送速度范围的各种测试数据发送速度,为各个数据发送速度范围选取误码率最低的误码率测试结果对应的解码控制参数。当数据发送速度范围内只有一个测试数据发送速度时,根据测试数据发送速度下各误码率测试结果,选取误码率最低的误码率测试结果对应的解码控制参数。当数据发送速度范围内有多个测试数据发送速度时,根据多个测试数据发送速度下各误码率测试结果,选取平均误码率最低的误码率测试结果对应的解码控制参数。将选取的解码控制参数预置为各个数据发送速度范围匹配的解码控制参数。
步骤204,接收端在接收数据前检测发射端预设的数据发送速度。
在本发明实施例中,具体实现可以参见前述实施例中的相关描述,此处不另赘述。
步骤205,从预置的多个解码控制参数中,判定所述数据发送速度在所述目标数据发送速度范围内,则确定与所述目标数据发送速度范围匹配的目标解码控制参数,并对接收端进行设置。
在本发明实施例中,数据发送速度在所述目标数据发送速度范围内,从预置的多个解码控制参数中,确定与目标数据发送速度范围匹配的目标解码控制参数,根据目标解码控制参数对接收端进行设置。
步骤206,在发射端的第一测试信号摆幅下,判定第一误码率测试结果没有达到设定阈值,则通知所述发射端调高到所述第一测试信号摆幅对应的设定信号摆幅。
在本发明实施例中,在发射端向接收端发送数据前,需要进行测试,发射端的信号摆幅如果不够高,就会让接收端解码的误码率变高,尤其是在高速传输数据时,信号摆幅越低,解码的误码率也会越低。因此,在测试时就可以调整发射端的信号摆幅,以提高解码的误码率。
在测试阶段,在发射端的第一测试信号摆幅下,对发射端到接收端进行数据传输测试,接收端检测数据解码的误码率得到第一误码率测试结果,如果第一误码率测试结果没有达到设定阈值,就说明信号摆幅不够高,具体根据实际需要的误码率设定阈值,本发明实施例对此不做限制。接收端可以通知发射端调高到所述第一测试信号摆幅对应的设定信号摆幅,具体可以是接收端将第一误码率测试结果没有达到设定阈值的判定结果记录在DPCD信息中,例如指定的寄存器地址0x00202H/0x00203h对应的寄存器中,然后发射端通过读取接收端DPCD信息,接收到调高到所述第一测试信号摆幅对应的设定信号摆幅通知。
第一测试信号摆幅对应的设定信号摆幅是比第一测试信号摆幅高的信号摆幅,由于DP协议中,发射端的信号摆幅有4个级别,提高发射端信号摆幅的级别可以显著的减小解码的误码率,所以如果第一测试信号摆幅属于第一级别的信号摆幅,则其对应的设定信号摆幅可以为比第二级别的信号摆幅的最低值高的任意值,如果第一测试信号摆幅属于第二级别的信号摆幅,则其对应的设定信号摆幅可以为比第三级别的信号摆幅的最低值高的任意值,其中第一级别比第二级别的信号摆幅低,第二级别比第三级别的信号摆幅低。
步骤207,获取所述发射端调高信号摆幅后实际的第二测试信号摆幅。
在本发明实施例中,发射端调高信号摆幅后,接收端需要获取实际的第二测试信号摆幅,例如,接收端可以通过接收到发射端指定的寄存器地址0x00206H/0x00207H对应的寄存器中的值,获取到实际的第二测试信号摆幅。
步骤208,在发射端的所述第二测试信号摆幅下,判定第二误码率测试结果达到设定阈值,则将所述第二误码率测试结果和第二测试信号摆幅通知所述发射端,以供发射端以所述第二测试信号摆幅为实际信号摆幅向接收端发送数据。
在本发明实施例中,在发射端的第二测试信号摆幅下,对发射端到接收端进行数据传输测试,接收端检测数据解码的误码率得到第二误码率测试结果,如果第二误码率测试结果达到设定阈值,则将第二误码率测试结果和第二测试信号摆幅通知发射端,例如,接收端把第二误码率测试结果和第二测试信号摆幅写入到指定的寄存器地址0x00202/0x00207对应的寄存器中,以供发射端读取。由于第二测试信号摆幅可以让误码率达到设定的要求,所以发射端以第二测试信号摆幅为实际信号摆幅向接收端发送数据。
步骤209,从发射端接收数据,并根据目标解码控制参数对数据进行解码,以控制预设的数据发送速度下数据解码的误码率。
在本发明实施例中,具体实现可以参见前述实施例中的相关描述,此处不另赘述。
依据本发明实施例,通过控制所述发射端以归属不同数据发送速度范围的各种测试数据发送速度发送测试数据,获取在各种不同的解码控制参数下解码测试数据的误码率测试结果,为各个数据发送速度范围选取误码率最低的误码率测试结果对应的解码控制参数,预置为各个数据发送速度范围匹配的解码控制参数,接收端在接收数据前检测发射端预设的数据发送速度,从预置的多个解码控制参数中,判定所述数据发送速度在所述目标数据发送速度范围内,则确定与所述目标数据发送速度范围匹配的目标解码控制参数,并对接收端进行设置,从发射端接收数据,并根据目标解码控制参数对数据进行解码,以控制预设的数据发送速度下数据解码的误码率,使得可以在DP数据采用高速传输时,根据与数据传输速度相匹配的解码控制参数配置接收端,继而减小在高速传输时数据解码的误码率,改善了接收端的处理能力。
进一步,通过在发射端的第一测试信号摆幅下,判定第一误码率测试结果没有达到设定阈值,则通知所述发射端调高到所述第一测试信号摆幅对应的设定信号摆幅,获取所述发射端调高信号摆幅后实际的第二测试信号摆幅,在发射端的所述第二测试信号摆幅下,判定第二误码率测试结果达到设定阈值,则将所述第二误码率测试结果和第二测试信号摆幅通知所述发射端,以供发射端以所述第二测试信号摆幅为实际信号摆幅向接收端发送数据,使得在DP数据采用高速传输时,如果信号摆幅不够导致误码率提高,就提高信号摆幅直到解码数据的误码率减小到满足要求,实现了通过提高信号摆幅减小误码率,从而改善接收端的处理能力。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图3,示出了本发明实施例三的一种数据的解码装置实施例的结构框图,具体可以包括如下模块:
速度检测模块301,用于接收端在接收数据前检测发射端预设的数据发送速度,所述接收端预置有与不同数据发送速度匹配的多个解码控制参数;
目标参数确定模块302,用于从预置的多个解码控制参数中,确定与所述数据发送速度匹配的目标解码控制参数,并对接收端进行设置;
数据解码模块303,用于从发射端接收数据,并根据目标解码控制参数对数据进行解码,以控制预设的数据发送速度下数据解码的误码率。
在本发明实施例中,优选地,所述解码控制参数包括时钟数据恢复控制参数,所述目标解码控制参数包括目标时钟数据恢复控制参数,所述数据解码模块包括:
时钟恢复子模块,用于根据所述目标时钟数据恢复控制参数,从接收到的数据中恢复发射端的时钟,以控制在所述数据发送速度下所恢复的时钟的准确性。
在本发明实施例中,优选地,所述解码控制参数还包括锁相环控制参数,所述目标解码控制参数还包括目标锁相环控制参数,所述数据解码模块包括:
时钟生成子模块,用于根据所述目标锁相环控制参数,由参考时钟生成解码过程所需要的至少一种输出时钟,以控制在所述数据发送速度下所生成的各输出时钟的稳定性。
在本发明实施例中,优选地,所述装置还包括:
摆幅调高通知模块,用于在所述从发射端接收数据,并根据目标解码控制参数对数据进行解码之前,在发射端的第一测试信号摆幅下,判定第一误码率测试结果没有达到设定阈值,则通知所述发射端调高到所述第一测试信号摆幅对应的设定信号摆幅;
摆幅获取模块,用于获取所述发射端调高信号摆幅后实际的第二测试信号摆幅;
第二摆幅通知模块,用于在发射端的所述第二测试信号摆幅下,判定第二误码率测试结果达到设定阈值,则将所述第二误码率测试结果和第二测试信号摆幅通知所述发射端,以供发射端以所述第二测试信号摆幅为实际信号摆幅向接收端发送数据。
在本发明实施例中,优选地,所述装置还包括:
测试速度控制模块,用于在所述接收端在接收数据前检测发射端预设的数据发送速度之前,控制所述发射端以各种测试数据发送速度发送测试数据,所述各种测试数据发送速度归属不同的数据发送速度范围;
测试结果获取模块,用于获取在各种不同的解码控制参数下解码测试数据的误码率测试结果;
解码控制参数获取模块,用于为各个数据发送速度范围选取误码率最低的误码率测试结果对应的解码控制参数,预置为各个数据发送速度范围匹配的解码控制参数。
在本发明实施例中,优选地,所述目标参数确定模块包括:
参数确定子模块,用于判定所述数据发送速度在所述目标数据发送速度范围内,则确定与所述目标数据发送速度范围匹配的目标解码控制参数。
依据本发明实施例,通过接收端在接收数据前检测发射端预设的数据发送速度,从预置的多个解码控制参数中,确定与所述数据发送速度匹配的目标解码控制参数,并对接收端进行设置,从发射端接收数据,并根据目标解码控制参数对数据进行解码,以控制预设的数据发送速度下数据解码的误码率,使得可以在DP数据采用高速传输时,根据与数据传输速度相匹配的解码控制参数配置接收端,继而减小在高速传输时数据解码的误码率,改善了接收端的处理能力。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种数据的解码方法和一种数据的解码装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。