数据编码方法、装置及储介质
技术领域
本发明涉及计算机技术,尤其涉及一种数据编码方法、装置及存储介质。
背景技术
在现有薄膜晶体管液晶显示器(Thin film transistor liquid crystaldisplay,简称TFT-LCD)产品中,数字信号在数字信道中传输时即从控制(TCON)端传输至驱动(Driver)端,需要对传输的数字信号先编码再进行基带传输。由于数据传输过程中无独立的时钟信号,时钟信号被嵌入至数据中。当传输数据出现多个连续0或者连续1时,接收端容易误识别嵌入的时钟信号。编码的目的是为了使传输信号是具有一定跳变的方波波形,以免连续0或者连续1的个数过多致使接收端接收到的时钟同步信息容易发生错误,最终导致误码。
目前数据传输领域使用最广泛的编码方案是对所有数据封包(package)(即原始数据)进行编码,因此导致数据在传输过程中需要耗费大量时间用于数据编码和解码,从而引发数据传输慢,影响响应时间和画质等问题。
发明内容
本发明实施例提供一种数据编码方法、装置及存储介质,有效解决了目前对所有数据封包(package)进行编码,因此导致数据在传输过程中需要耗费大量时间用于数据编码和解码,从而引发数据传输慢,影响响应时间和画质的问题。
根据本发明的一方面,本发明提供一种数据编码方法,所述方法包括步骤:获取原始数据,所述原始数据中包括多条第一数据流;获取不满足预设标准的第一数据流并记录为待赋值数据流,其中所述第一数据流包括第一预设数量的数据位,每一所述数据位填充有相应的数值,所述预设标准为连续的数据位中相同的数值不超过第二预设数量;以及对所述待赋值数据流中的第一数据流进行运算操作以生成满足预设标准的第二数据流。
进一步地,将第一数据流中的第三数据位的数值赋至第二数据流中的第零数据位;将第一数据流中的第五数据位的数值赋至第二数据流中的第三数据位;将第一数据流中的第六数据位的数值赋至第二数据流中的第四数据位;将第一数据流中的第四数据位的数值赋至第二数据流中的第七数据位;以及将第一数据流中的第七数据位的数值赋至第二数据流中的第八数据位。
进一步地,当第一数据流中的第二数据位为第一数值且第一数据流中的第一数据位为第二数值时,所述第二数据流中的第一数据位为第二数值;当第一数据流中的第三数据位为第一数值,第一数据流中的第二数据位为第二数值且第一数据流中的第一数据位为第二数值时,所述第二数据流中的第一数据位为第二数值;当第一数据流中的第二数据位为第一数值且第一数据流中的第零数据位为第一数值时,所述第二数据流中的第一数据位为第二数值;当第一数据流中的第二数据位为第二数值且第一数据流中的第一数据位为第一数值时,所述第二数据流中的第二数据位为第二数值;当第一数据流中的第三数据位为第一数值,第一数据流中的第二数据位为第二数值且第一数据流中的第一数据位为第二数值时,所述第二数据流中的第二数据位为第二数值;当第一数据流中的第一数据位为第一数值且第一数据流中的第零数据位为第二数值时,所述第二数据流中的第二数据位为第二数值。
进一步地,当第一数据流中的第四数据位为第一数值,第一数据流中的第二数据位为第一数值且第一数据流中的第一数据位为第一数值时,所述第五数据流中的第二数据位为第二数值;当第一数据流中的第二数据位为第二数值且第一数据流中的第零数据位为第一数值时,所述第五数据流中的第二数据位为第二数值;当第一数据流中的第一数据位为第二数值且第一数据流中的第零数据位为第一数值时,所述第五数据流中的第二数据位为第二数值;当第一数据流中的第四数据位为第一数值,第一数据流中的第二数据位为第一数值且第一数据流中的第一数据位为第一数值时,所述第六数据流中的第二数据位为第二数值;当第一数据流中的第二数据位为第二数值且第一数据流中的第零数据位为第二数值时,所述第六数据流中的第二数据位为第二数值;当第一数据流中的第一数据位为第二数值且第一数据流中的第零数据位为第二数值时,所述第六数据流中的第二数据位为第二数值。
进一步地,所述方法还包括步骤:获取满足预设标准的第一数据流并记录为待填充数据流;以及对所述待填充数据流增加第三预设数量的数据位得到所述第二数据流。
进一步地,所述第一预设数量的数值大于所述第二预设数量的数值。
进一步地,所述第二数据流中的数据位的数量大于第一数据流中数据位的数量。
进一步地,所述第二预设数量的数值不超过5。
根据本发明的另一方面,本发明提供一种数据编码装置,所述装置包括:数据获取单元,用于获取原始数据流,所述原始数据流中包括多条数据流;赋值数据获取单元,用于获取不满足预设标准的第一数据流并记录为待赋值数据流,其中所述数据流包括第一预设数量的数据位,每一所述数据位填充有相应的数值,所述预设标准为连续的数据位中相同的数值不超过第二预设数量;以及数据赋值单元,用于对所述待赋值数据流中的第一数据流进行运算操作以生成满足预设标准的第二数据流。
根据本发明的又一方面,本发明提供一种存储介质,所述存储介质中存储有多条指令,所述指令适于由处理器加载以执行如本发明任一实施例所提供的数据编码方法。
本发明的优点在于,通过获取不满足预设标准的第一数据流并记录为待赋值数据流,对所述待赋值数据流中的第一数据流进行运算操作以生成满足预设标准的第二数据流,所述满足预设标准的数据流增加第三预设数量的数据位得到所述第二数据流。从而可以筛选出满足预设标准的数据流,仅对不满足预设标准的数据流进行编码,降低了数据计算的复杂性,提高了数据的传输效率。
附图说明
下面结合附图,通过对本发明的
具体实施方式
详细描述,将使本发明的技术方案及其它有益效果显而易见。
图1为本发明实施例一提供的一种数据编码方法的步骤流程图。
图2为本发明实施例二提供的一种数据编码方法的步骤流程图。
图3为图2所示步骤S240的子步骤的一实施例的流程图。
图4为本发明实施例三提供的一种数据编码装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接或可以相互通讯;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
如图1所示,为本发明实施例一提供的数据编码方法的步骤流程图。该方法包括步骤:
步骤S110:获取原始数据。
具体地,所述原始数据中包括多条数据流。其中数据流依次排列,在编码的过程中,按照顺序进行对数据流进行编码。当数据传输时,按照数据流编码的顺序依次对数据流进行传输。
步骤S120:获取不满足预设标准的第一数据流并记录为待赋值数据流。
其中所述数据流包括第一预设数量的数据位,每一所述数据位填充相应的数值,所述预设标准为连续的数据位中相同的数值不超过第二预设数量。在本实施例中,所述第一预设数量的数值大于所述第二预设数量的数值,所述第一预设数量为8,因此该第一数据流为8Bit数据。每一所述数据位填充相应的数值,例如第一数据流所记录的是一种方波信号,该第一数据流的数据位填充相应的数值不是0就是1。
下文将详细讲述,预设标准的运算方法。假设第一数据流为8Bit数据(即 M0至M7个数据位),第二预设数量为5,预设标准的详细逻辑运算如下:NAND (NAND(M7-M2),NAND(M6-M1),NAND(M5-M0),OR(M7-M2),OR (M6-M1),OR(M5-M0))==1。其中(M7-M2)表示M7,M6,M5,M4,M3 和M2,其他参照(M7-M2),NAND表示异或运算,OR表示或运算,==表示是否等于。由此可知,NAND(M7-M2),NAND(M6-M1),NAND(M5-M0) 表示M7-M0之中每6个连续的数值中是否存在0,OR(M7-M2),OR(M6-M1), OR(M5-M0)表示M7-M0之中每6个连续的数值中是否存在1。即第一数据流中存在连续相同的数值,例如在一个8Bit的第一数据流为(10111111),该第一数据流为不满足预设标准的第一数据流,该第一数据流可能会在信道传输过程中发生误码的数据信号。
步骤S130:对所述待赋值数据流中每一所述数据位进行逻辑运算并赋值给第二数据流中的每一所述数据位。
在本实施例中,所述第二数据流中的数据位的数量大于第一数据流中数据位的数量。所述第二数据流的数据位数量为9。
本发明的优点在于,通过获取不满足预设标准的第一数据流并记录为待赋值数据流,对所述待赋值数据流中的第一数据流进行运算操作以生成满足预设标准的第二数据流,所述满足预设标准的数据流增加第三预设数量的数据位得到所述第二数据流。从而可以筛选出满足预设标准的数据流,仅对不满足预设标准的数据流进行编码,降低了数据计算的复杂性,提高了数据的传输效率。
如图2所示,为本发明实施例二提供的数据编码方法的步骤流程图。该方法包括步骤:
步骤S210:获取原始数据。
具体地,所述原始数据中包括多条数据流。其中数据流依次排列,在编码的过程中,按照顺序进行对数据流进行编码。当数据传输时,按照数据流编码的顺序依次对数据流进行传输。
步骤S220:判断每一所述第一数据流是否满足预设标准。
其中所述数据流包括第一预设数量的数据位,每一所述第一数据位填充相应的数值,所述预设标准为连续的数据位中相同的数值不超过第二预设数量。在本实施例中,所述第一预设数量的数值大于所述第二预设数量的数值,所述第一预设数量为8,因此该第一数据流为8Bit数据。每一所述数据位填充相应的数值,例如第一数据流所记录的是一种方波信号,该第一数据流的数据位填充相应的数值不是0就是1。
下文将详细讲述,预设标准的运算方法。假设第一数据流为8Bit数据(即 M0至M7个数据位),第二预设数量为5,预设标准的详细逻辑运算如下:NAND (NAND(M7-M2),NAND(M6-M1),NAND(M5-M0),OR(M7-M2),OR (M6-M1),OR(M5-M0))==1。其中(M7-M2)表示M7,M6,M5,M4,M3 和M2,其他参照(M7-M2),NAND表示异或运算,OR表示或运算,==表示是否等于。由此可知,NAND(M7-M2),NAND(M6-M1),NAND(M5-M0) 表示M7-M0之中每6个连续的数值中是否存在0,OR(M7-M2),OR(M6-M1), OR(M5-M0)表示M7-M0之中每6个连续的数值中是否存在1。
步骤S230:获取不满足预设标准的第一数据流并记录为待赋值数据流。
即数据流中存在连续相同的数值,例如在一个8Bit的第一数据流为(1011 1111),该第一数据流为不满足预设标准的数据流,该第一数据流可能会在信道传输过程中发生误码的数据信号。
步骤S240:对所述待赋值数据流中每一所述数据位进行逻辑运算并赋值给第二数据流中的每一所述数据位。
在本实施例中,所述第二数据流中的数据位的数量大于第一数据流中数据位的数量。所述第二数据流的数据位数量为9。对于待赋值数据流进行逻辑赋值时,首先要获取待赋值数据流的标记值,所述标记值用于提高数据流的离散性,具体如下:
参阅图3,图3为图2步骤S240的子步骤流程图。
步骤S240具体包括如下步骤:
步骤S241:将第一数据流中的第三数据位的数值赋至第二数据流中的第零数据位。
步骤S242:将第一数据流中的第五数据位的数值赋至第二数据流中的第三数据位。
步骤S243:将第一数据流中的第六数据位的数值赋至第二数据流中的第四数据位。
步骤S244:将第一数据流中的第四数据位的数值赋至第二数据流中的第七数据位。
步骤S245:将第一数据流中的第七数据位的数值赋至第二数据流中的第八数据位。
所述第二数据流中满足以下任意一种情况时,所述第二数据流中的第一数据位为第二数值,第一种情况为当第一数据流中的第二数据位为第一数值且第一数据流中的第一数据位为第二数值时,所述第二数据流中的第一数据位为第二数值;第二种情况为当第一数据流中的第三数据位为第一数值,第一数据流中的第二数据位为第二数值且第一数据流中的第一数据位为第二数值时,所述第二数据流中的第一数据位为第二数值;第三种情况为当第一数据流中的第二数据位为第一数值且第一数据流中的第零数据位为第一数值时,所述第二数据流中的第一数据位为第二数值。
所述第二数据流中满足以下任意一种情况时,所述第二数据流中的第二数据位为第二数值,第一种情况为当第一数据流中的第二数据位为第二数值且第一数据流中的第一数据位为第一数值时,所述第二数据流中的第二数据位为第二数值;第二种情况为当第一数据流中的第三数据位为第一数值,第一数据流中的第二数据位为第二数值且第一数据流中的第一数据位为第二数值时,所述第二数据流中的第二数据位为第二数值;第三种情况为当第一数据流中的第一数据位为第一数值且第一数据流中的第零数据位为第二数值时,所述第二数据流中的第二数据位为第二数值。
所述第二数据流中满足以下任意一种情况时,所述第五数据流中的第二数据位为第二数值,第一种情况为当第一数据流中的第四数据位为第一数值,第一数据流中的第二数据位为第一数值且第一数据流中的第一数据位为第一数值时,所述第五数据流中的第二数据位为第二数值;第二种情况为当第一数据流中的第二数据位为第二数值且第一数据流中的第零数据位为第一数值时,所述第五数据流中的第二数据位为第二数值;第三种情况为当第一数据流中的第一数据位为第二数值且第一数据流中的第零数据位为第一数值时,所述第五数据流中的第二数据位为第二数值。
所述第二数据流中满足以下任意一种情况时,所述第六数据流中的第二数据位为第二数值,第一种情况为当第一数据流中的第四数据位为第一数值,第一数据流中的第二数据位为第一数值且第一数据流中的第一数据位为第一数值时,所述第六数据流中的第二数据位为第二数值;第二种情况为当第一数据流中的第二数据位为第二数值且第一数据流中的第零数据位为第二数值时,所述第六数据流中的第二数据位为第二数值;第三种情况为当第一数据流中的第一数据位为第二数值且第一数据流中的第零数据位为第二数值时,所述第六数据流中的第二数据位为第二数值。
其中所述第一数值为0,所述第二数值为1。
上述运算操作是进行多次试验测试所得,可以有效的调整第一数据流的离散性。在一些其他实施例中,所述运算操作还可以通过以下逻辑运算进行,例如
获取待赋值数据流中多个数据位的数值。
在本实施例中,例如在一个8Bit的数据流为(1011 1111),选取M0和 M1,即M0=1,M1=0。对于选取数据位的个数不做限定,为了便于计算,一般选取两个数据位。而选取的数据位也可以是任意的,一般为了使数据流的离散性更好(即数据的波形跳跃频率高),选取相邻的数据位。
对待赋值数据流中多个数据位的数值进行异或运算得到所述待赋值数据流的标记值。
例如,选取M0=1,M1=0。假设标记值为X,X=NAND(M0,M1)。
根据所述标记值对所述待赋值数据流中每一所述数据位进行逻辑运算并赋值给第二数据流中的每一所述数据位。
根据步骤S241和步骤S242的计算,X=0,本实施例的逻辑运算如下,由于第二数据流为9Bit(即有9个数据位)N0-N8,其中N0=~M1,N1=~M1, N2=M1,N3=M2,N4=NAND(~X,M3),N5=NAND(X,M4),N6=~M5, N7=NAND(~X,M6),N8=NAND(X,M7)。通过上述逻辑运算即可增加数据流的离散性。
步骤S231:获取满足预设标准的第一数据流并记录为待填充数据流。
在此步骤中,所述预设标准的详细计算方法请参阅步骤S120的计算方法,此处不再赘述。
步骤S232:对所述待填充数据流增加第三预设数量的数据位得到所述第二数据流。
在本实施例中,所述第三预设数量为1,但不限于此,根据产品的需求,对信号的编码可以是更多位的,例如可以将8bit转换成10Bit等等。而此步骤,仅对待填充数据流增加第三预设数量的数据位,相较于待赋值数据流中每一所述数据位进行逻辑运算并赋值给第二数据流中的每一所述数据位的计算量小,因此可以简化编码和解码的运算时间,提高数据的传输效率。
另外,本实施例中,所述第三预设数量为1,即将8bit转换成9Bit相较于 8bit转换成10Bit节约了传输信道。
本发明的优点在于,通过获取不满足预设标准的第一数据流并记录为待赋值数据流,对所述待赋值数据流中的第一数据流进行运算操作以生成满足预设标准的第二数据流,所述满足预设标准的数据流增加第三预设数量的数据位得到所述第二数据流。从而可以筛选出满足预设标准的数据流,仅对不满足预设标准的数据流进行编码,降低了数据计算的复杂性,提高了数据的传输效率。
如图4所示,为本发明实施例三提供的数据编码装置的结构示意图。该装置包括:数据获取单元10、赋值数据获取单元20即数据赋值单元30。
数据获取单元10用于获取原始数据流。具体地,所述原始数据中包括多条数据流。其中数据流依次排列,在编码的过程中,按照顺序进行对数据流进行编码。当数据传输时,按照数据流编码的顺序依次对数据流进行传输。
赋值数据获取单元20用于判断每一所述第一数据流的离散性是否满足预设标准。其中所述第一数据流包括第一预设数量的数据位,每一所述数据位填充相应的数值,所述预设标准为连续的数据位中相同的数值不超过第二预设数量。在本实施例中,所述第一预设数量的数值大于所述第二预设数量的数值,所述第一预设数量为8,因此该第一数据流为8Bit数据。每一所述数据位填充相应的数值,例如第一数据流所记录的是一种方波信号,该第一数据流的数据位填充相应的数值不是0就是1。
下文将详细讲述,预设标准的运算方法。假设数据流为8Bit数据(即M0 至M7个数据位),第二预设数量为5,预设标准的详细逻辑运算如下:NAND (NAND(M7-M2),NAND(M6-M1),NAND(M5-M0),OR(M7-M2),OR (M6-M1),OR(M5-M0))==1。其中(M7-M2)表示M7,M6,M5,M4,M3 和M2,其他参照(M7-M2),NAND表示异或运算,OR表示或运算,==表示是否等于。由此可知,NAND(M7-M2),NAND(M6-M1),NAND(M5-M0) 表示M7-M0之中每6个连续的数值中是否存在0,OR(M7-M2),OR(M6-M1),OR(M5-M0)表示M7-M0之中每6个连续的数值中是否存在1。
第一数据流中存在连续相同的数值,例如在一个8Bit的第一数据流为(10111111),该第一数据流为不满足预设标准的数据流,该第一数据流可能会在信道传输过程中发生误码的数据信号。
数据赋值单元30用于对所述待赋值数据流中每一所述数据位进行逻辑运算并赋值给第二数据流中的每一所述数据位。在本实施例中,所述第二数据流中的数据位的数量大于数据流中数据位的数量。所述第二数据流的数据位数量为9。
本发明的优点在于,通过获取不满足预设标准的第一数据流并记录为待赋值数据流,对所述待赋值数据流中的第一数据流进行运算操作以生成满足预设标准的第二数据流,所述满足预设标准的数据流增加第三预设数量的数据位得到所述第二数据流。从而可以筛选出满足预设标准的数据流,仅对不满足预设标准的数据流进行编码,降低了数据计算的复杂性,提高了数据的传输效率。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
- 上一篇:石墨接头机器人自动装卡簧、装栓机
- 下一篇:针对接口调用请求的处理方法及装置