多协议可重构路由式硬核编码器的制作方法

文档序号:14186699阅读:216来源:国知局
本发明涉及一种多协议可重构路由式硬核编码器,属于通信与微电子
技术领域

背景技术
:随着移动支付技术及产业的迅猛发展,涌现出许多新奇的支付技术,主要分为两大类:一类是远程支付技术,主要代表为支付宝、微信、银联钱包等基于手机app的支付技术;第二类是近场支付技术,主要代表为银联闪付(非接触ic卡)、applepay、华为pay等基于近场通信(nfc)的支付技术。各种支付技术均可实现支付设备与收款设备之间在传输媒介上的数据交互,二者之间的通信数据需经过编码器的编码以适于经过特定传输媒介进行传输。现有的编码器,一般仅能实现一种通信协议的数据编码,即,符合emv标准的非接触typea通信协议的数据,可利用曼特斯特编码器实现数据编码,符合emv标准的非接触typeb通信协议的数据,可利用nrz-l编码器实现数据编码。随着支付技术的发展,同一支付设备可支持多种支付方式,多种支付方式对应于多种通信协议。如图1所示,按照现有的编码器实现方式,需于支付设备配置多种通信协议分别对应的多个编码器来实现编码,不仅浪费设备的硬件资源,额外增加成本,且要求使用者掌握每种编码器的特性和原理才能加以运用;另外,现有的编码器输出的码流数据段,其先后顺序、码流段长度、码流段内容必须遵循相应编码方式的规则,一旦某个码流片段发生错误,均有可能造成错误积累或错误传播,导致编码器的编码能力无法恢复或者恢复速度较慢,影响支付功能。技术实现要素:鉴于上述原因,本发明的目的在于提供一种多协议可重构路由式硬核编码器,基于硬件实现,通过可重构的、路由式的编码器,能够支持多种通信协议的数据编码,编码功能强大、异常处理能力强大,大幅提升资源利用率,降低设备成本。为实现上述目的,本发明采用以下技术方案:一种多协议可重构路由式硬核编码器,用于根据源数据和控制数据按照编码方式输出串行码流,源数据由若干具有相同特征的码流片段构成,控制数据包括控制信息及具有相同特征的码流片段,包括:多协议数据结构转换器,用于将源数据和控制数据,转换为bin-code数据结构;bin-code数据结构包括bin-code映射表、bin-code数据区、bin-code控制区,bin-code映射表用于保存码流片段及其对应的特征字符,bin-code数据区用于将构成源数据的若干码流片段所对应的特征字符保存于数据区地址空间,bin-code控制区用于将构成控制数据的控制信息及码流片段所对应的特征字符保存于控制区地址空间;路由表生成器,根据bin-code数据结构生成mrc路由表;编码器硬件结构,根据mrc路由表和bin-code数据结构构建、配置编码器硬件结构。所述mrc路由表包括若干路由信息,每条路由信息对应一个码流片段,路由信息包括终点码流片段地址、是否编码输出、下一跳码流片段地址、码流片段个数、当前码流片段的属性信息、到达终点码流片段需经过的跳数字段。所述编码器硬件结构包括m组串行编码单元,根据所述mrc路由表中的当前码流片段的属性信息,确定m值,每组串行编码单元根据对应的一条路由信息执行串行编码。所述编码器硬件结构包括调度单元、装配器,调度单元根据上一跳路由信息的下一条码流片段地址、码流片段个数,从所述数据区地址空间或是控制区地址空间读取出相应的特征字符,并输入当前路由信息所对应的串行编码单元,并从控制区地址空间读取出控制信息,输入该串行编码单元;该串行编码单元根据输入的特征字符,查找所述bin-code映射表,将码流片段转换为相对应的码流片段,将码流片段进行串行拼接得到串行码流片段,根据控制信息,对串行码流片段进行调整后输入装配器;装配器接收各串行编码器输出的串行码流片段,按照时间顺序将各串行码流片段进行串行拼接得到串行码流,根据所述控制信息,对串行码流进行调整后输出。所述调度单元记录当前路由信息对应的串行编码单元执行串行编码的结束时间,将该结束时间作为下一跳路由信息对应的串行编码单元执行串行编码的开始时间,各串行编码器顺序执行串行编码,并顺序输出所述串行码流片段。所述控制信息包括通信速率、幅度控制、通信等待间隔。所述串行编码单元包括串行转换器、计时器单元、计算单元、同步单元,该串行转换器用于将输入的特征字符转换为相应的码流片段,将串行拼接后的串行码流片段输入同步单元,该计时器单元根据输入的所述开始时间启动串行转换器、计算单元执行串行编码,该计算单元根据所述码流片段个数确定串行转换器输出的数据长度,该同步单元根据所述通信速率调整输入的串行码流片段的传输速率。所述mrc路由表初始化结束后,所述调度单元从第一条路由信息对应的码流片段对应的地址读取出相应的特征字符,输入相应的串行编码单元,所述通信等待间隔作为该串行编码单元执行串行编码的开始时间。所述编码方式包括现有的编码方式、自定义的编码方式、新型编码方式。编码器输出的串行码流经传输媒介传输,传输媒介包括无线传输媒介、有线传输媒介。本发明的优点是:1、本发明的编码器支持多种通信协议的数据编码,包括现有的通信协议、自定义的通信协议以及可能出现的新型通信协议,编码功能强大;通信协议层到数据链路层仅需该编码器作为接口即可,不仅简化了接口结构,且大幅提升资源利用率;其中,所支持的通信协议包括符合emv标准的非接触typea通信协议、非接触typeb通信协议、其它非支付应用范畴的通信协议等,适用范围广泛;2、本发明的编码器基于路由原理实现,具有更大自由维度的编码可能性,既能够遵循特定的编码技术输出符合其编码规则的串行码流,也能够输出由特殊码流序列构成的串行码流(可对比图3a、3b所示),可以支持自定义的通信协议或是新型通信协议,可扩展性强,编码功能强大;且,路由式设计可以大大降低错误积累和错误传播的概率,使得编码器具有强大的生存能力、恢复能力和灵活配置能力;其中,所支持的编码技术包括ook调制的曼彻斯特编码、bpsk调制的nrz-l编码、其它类别的编码、自定义的编码等;3、本发明的编码器为可重构的编码器,通过硬件结构的重构与配置,可以支持多种编码技术,重构生成的每一种编码器,均对应一种编码技术,可达到最佳的资源利用率和数据处理效率;4、本发明的编码器为基于硬件电路实现的硬核编码器,可以最大程度地降低编码输入到编码输出的延时,保证编码输出的实时性;5、本发明的编码器是数据链路层的编码器,其输出端面向物理层的传输媒介,可适配到多种传输媒介,包括无线传输媒介、有线传输媒介,无线传输媒介包括13.56mhz载频的近场无线传输媒介。附图说明图1是现有编码器的编码原理示意图。图2是本发明的编码器的编码原理示意图。图3a是现有编码器输出的串行码流示意图。图3b是本发明的编码器输出的串行码流示意图。图4是串行码流与划分的串行码流段的映射关系示意图。图5是ook调制的曼彻斯特编码器输出的串行码流示意图。图6是本发明定义的sym-d特征示意图。图7是本发明定义的sym-e特征示意图。图8是本发明定义的sym-f特征示意图。图9是bpsk调制的nrz-l编码器输出的串行码流示意图。图10是本发明定义的sym-ph0特征示意图。图11是本发明定义的sym-ph180特征示意图。图12是本发明的bin-code数据结构示意图。图13是本发明的重构路由式编码器的结构框图。图14是本发明的mrc路由表的结构示意图。图15是本发明的mrc路由表与bin-code数据结构的对应关系示意图。具体实施方式以下结合附图和实施例对本发明进行详细的说明。如图2所示,本发明公开的多协议可重构路由式硬核编码器(定义为mrc:reconfigurableandrouter-likehard-corecoderwithmulti-protocal),是一种新型的数据链路层串行编码器,可对通信协议层的多种通信协议的通信数据进行编码,输出串行码流,经传输媒介发送出去。该多协议可重构路由式硬核编码器包括多协议数据结构转换器、重构路由式编码器。一、多协议数据结构转换器用于将通信协议层的源数据和控制数据,统一转换为mrc定义的bin-code数据结构。如图12所示,bin-code数据结构包括bin-code映射库、bin-code数据区、bin-code控制区。bin-code映射库用于保存若干特定码流片段及各特定码流片段所对应的特征符号;bin-code数据区用于保存构成源数据的若干特定码流片段所对应的若干特征符号;bin-code控制区用于保存控制数据。1、基于源数据构造bin-code映射库解构各通信协议所对应的编码技术的编码规则,根据特定编码规则输出的串行码流的组成结构,划分出若干具有相同特征的码流片段。对每一种具有相同特征的码流片段定义一种特征符号,将具有相同特征的码流片段及其对应的特征符号,保存于bin-code映射库。不同的编码技术可能存在相同特征的码流片段,不同的编码技术可以共享同一个bin-code映射库。以图4为例,该编码方式按时间顺序输出的串行码流包括具有圆形特征、三角形特征、x形特征、平行线型特征的串行码流片段,在此基础上,将圆形特征码流片段定义为特征符号seq-fa,将三角形特征码流片段定义为特征符号seq-fb,将x形特征码流片段定义为特征符号seq-fc,将平行线型特征码流片段定义为特征符号seq-fd,将圆形特征码流片段及其对应的seq-fa、三角形特征码流片段及其对应的seq-fb、x形特征码流片段及其对应的seq-fc、平行线型特征码流片段及其对应的seq-fd保存于bin-code映射库。以下分别以ook调制的曼彻斯特编码、bpsk调制的nrz-l编码为例,说明构建bin-code映射库的方法。1)ook调制的曼彻斯特编码对于符合emv标准的非接触typea通信协议,其数据链路层的编码规则遵循ook调制的曼彻斯特编码方式。对于源数据“0803”,ook调制的曼彻斯特编码器输出的串行码流如图5所示,该串行码流依序包括一个起始帧sof、一个数据字节“08”、数据字节“08”的数据校验位“0”,一个数据字节“03”,数据字节“03”的数据校验位“1”,一个结束帧eof,通过分析,该串行码流由三种具有相同特征的码流片段组成,分别是:a、如图6所示,由前半部分的时钟片段加上后半部分的固定电平片段组成的第一码流片段,定义其特征符号为sym-d,表示源数据的比特“1”或编码起始帧。b、如图7所示,由前半部分的固定电平片段加上后半部分的时钟片段组成的第二码流片段,定义其特征符号为sym-e,表示源数据的比特“0”。c、如图8所示,由固定电平片段组成的第三码流片段,定义其特征符号为sym-f,表示编码结束帧。将第一码流片段及其对应的sym-d、第二码流片段及其对应的sym-e、第三码流片段及其对应的sym-f,保存于bin-code映射库。2)bpsk调制的nrz-l编码对于符合emv标准的非接触typeb通信协议,其数据链路层的编码规则遵循bpsk调制的nrz-l编码方式。对于源数据“0803”,bpsk调制的nrz-l编码器输出的串行码流如图9所示,通过分析,该串行码流由两种具有相同特征的码流片段组成,分别是:a、如图10所示,由相位为0度的时钟片段构成的第一码流片段,定义其特征符号为sym-ph0,表示源数据的比特“1”或编码起始序列sos-s2段。b、如图11所示,由相位为180度的时钟片段构成的第二码流片段,定义其特征符号为sym-ph180,表示源数据的比特“0”或编码起始序列sos-s1段或编码结束序列eos。将第一码流片段及其对应的sym-ph0、第二码流片段及其对应的sym-ph180,保存于bin-code映射库。对于其它现有的编码技术、自定义的编码技术、可能出现的新型编码技术,依据相同的方法原理建立相应的bin-code映射库。2、基于bin-code映射库生成bin-code数据区根据bin-code映射库中特定码流片段及其对应的特征符号的映射关系,基于源数据,将构成源数据的若干特定码流片段所对应的特征符号,依序映射于bin-code数据区。以图5所示的ook调制的曼彻斯特编码器输出的串行码流为例,其源数据为“0803”,bin-code数据区所保存的数据内容如下:即,在bin-code数据区,地址0x00000000~0x00000007保存着“sym-e、sym-e、sym-e、sym-d、sym-e、sym-e、sym-e、sym-e”,对应于比特流“00010000”,对应于源数据“08”;地址0x00000008~0x0000000f保存着“sym-d、sym-d、sym-e、sym-e、sym-e、sym-e、sym-e、sym-e”,对应于比特流“11000000”,对应于源数据“03”。3、基于控制数据生成bin-code控制区bin-code控制区,根据通信协议层的控制数据及bin-code映射库,保存控制信息。根据特定的通信协议及其标准定义,控制数据包括但不限于:协议类型、通信速率、通信等待间隔、源数据长度、幅度控制、起始帧、结束帧、校验位等。以图5所示的ook调制的曼彻斯特编码器输出的串行码流为例,其控制数据具体为:协议类型为0x0001、通信速率为106kbps、通信等待间隔为0x0001640ens、源数据长度为0x0002、幅度控制为0x80;根据控制数据生成控制信息地址映射表:表1地址控制信息addr1协议类型addr2通信速率addr3通信等待间隔addr4源数据长度addr5幅度控制bin-code控制区所保存的数据内容如下:即,在bin-code控制区,根据协议类型的取值可知为符合emv标准的非接触typea通信协议;根据通信速率的取值可知数据传输速率为106kbps,根据通信等待间隔的取值可知等待0x0001640ens之后开始通信(编码开始时间点),根据源数据长度的取值可知源数据包括两个字节(“0803”)的数据,根据幅度控制的取值可知编码器输出幅度的峰峰值为0x80,起始帧sof及数据校验位“1”对应的码流片段对应于bin-code映射库中的特征符号sym-d,数据校验位“0”对应的码流片段对应于bin-code映射库中的特征符号sym-e,结束帧eof对应bin-code映射库中的特征符号sym-f。二、重构路由式编码器如图13所示,重构路由式编码器包括路由表生成器11、调度单元12、m组串行编码单元、装配器13,每组串行编码单元包括计时器单元2x1、计算单元2x2、串行转换器2x3、同步单元2x4,其中,x=1~m。1、路由表生成器路由表生成器,根据bin-code数据结构生成、维护mrc路由表,mrc路由表包括若干条路由信息。根据bin-code控制区的源数据长度,确定路由信息的数量,源数据长度与路由信息总条数的关系为:rt_num=2+src_len*2,其中,src_len为源数据长度。如图14所示,路由信息包括以下信息字段:destination:指示终点码流片段地址,即编码器输出串行码流的最后一段码流片段在bin-code数据结构中的地址;mask:路由掩码,指示当前码流片段是否需要编码输出;gateway:下一跳码流片段地址,指示下一个码流片段在bin-code数据结构中的地址;syms:当前码流片段对应的特征符号的个数。interface:当前码流片段的属性信息,属性信息包括起始帧、结束帧、数据校验位、数据字节等。metric:跳数,到达终点码流片段需经过的跳数,即到达最后一个码流片段所需要经过的码流片段数量。以图5所示ook调制的曼彻斯特编码器输出的串行码流为例,为输出该串行码流,根据bin-code数据结构,构建的mrc路由表如下:表2根据源数据长度,确定该mrc路由表包括rt_0~rt_5共六条路由信息,其中:1)第一条路由信息rt_0对应的码流片段为起始帧sof(路由表初始化时数据读取地址指向第一条路由信息对应的码流片段的地址),该码流片段对应1个特征符号,其下一跳码流片段在bin-code数据结构中的地址为0x00000000,终点码流片段在bin-code数据结构中的地址为0x80000002,到达终点码流片段需经过五跳路由;2)第二条路由信息rt_1对应的码流片段为数据字节“08”,从地址0x00000000开始读取获得,该码流片段对应8个特征符号,其下一跳码流片段在bin-code数据结构中的地址为0x80000001,终点码流片段在bin-code数据结构中的地址为0x80000002,到达终点码流片段需经过四跳路由;3)第三条路由信息rt_2对应的码流片段为数据字节“08”的数据校验位“0”,从地址0x80000001开始读取获得,该码流片段对应1个特征符号,其下一跳码流片段在bin-code数据结构中的地址为0x00000008,终点码流片段在bin-code数据结构中的地址为0x80000002,到达终点码流片段需经过三跳路由;4)第四条路由信息rt_3对应的码流片段为数据字节“03”,从地址0x00000008开始读取获得,该码流片段对应8个特征符号,其下一跳码流片段在bin-code数据结构中的地址为0x80000000,终点码流片段在bin-code数据结构中的地址为0x80000002,到达终点码流片段需经过两跳路由;5)第五条路由信息rt_4对应的码流片段为数据字节“03”的数据校验位“1”,从地址0x80000000开始读取获得,该码流片段对应1个特征符号,其下一跳码流片段在bin-code数据结构中的地址为0x80000002,终点码流片段在bin-code数据结构中的地址为0x80000002,到达终点码流片段需经过一跳路由;6)第六条路由信息rt_5对应的码流片段为结束帧eof,从地址0x80000002开始读取获得,该码流片段对应1个特征符号,其为终点码流片段。根据以上mrc路由表,结合bin-code控制区的控制信息,读取bin-code数据结构的相应地址中的数据内容,即可编码生成图5所示的串行码流。本发明的mrc路由表,由若干条路由信息组成,每条路由信息均包含完整的信息字段destination、mask、gateway、syms、interface、metric,其中,gateway字段指示出下一跳码流片段的地址,metric指示出到达终点码流片段的路由跳数,且各条路由信息之间是相互独立的,这样,即使当前路由信息发生异常,也不影响下一条路由信息,不会将异常积累到下一跳路由,使得本发明的路由式编码器具有较强的异常处理能力。2、重构编码器的硬件结构基于生成的mrc路由表,重构编码器的硬件结构。具体是,根据mrc路由表中每条路由信息的属性信息interface字段,确定m组串行编码单元的m值。以表2所示mrc路由表为例,根据六条路由信息各自的interface字段,确定需要四组串行编码单元,即m=4,在此基础上,重构编码器的硬件结构,其包括:调度单元12、第一组串行编码单元、第二组串行编码单元、第三组串行编码单元、第四组串行编码单元、装配器13,其中:1)第一组串行编码单元,由计时器单元211、计算单元212、串行转换器213、同步单元214组成,对起始帧sof编码;2)第二组串行编码单元,由计时器单元221、计算单元222、串行转换器223、同步单元224组成,分别对源数据“08”、“03”编码;3)第三组串行编码单元,由计时器单元231、计算单元232、串行转换器233、同步单元234组成,分别对数据字节“08”的数据校验位“0”、数据字节“03”的数据校验位“1”编码;4)第四组串行编码单元,由计时器单元241、计算单元242、串行转换器243、同步单元244组成,对结束帧eof编码。3、基于重构编码器的硬件结构配置编码器,实现编码在重构编码器的硬件结构基础上,根据mrc路由表、bin-code数据结构,配置编码器,实现编码。具体是,调度单元12读取mrc路由表,按照跳转顺序依次读取相应的路由信息,根据路由信息的属性信息interface字段确定对应启动的串行编码单元,每个串行编码器对应一条路由信息,调度单元12读取bin-code控制区的通信等待间隔字段,确定第一条路由信息对应的串行编码单元的启动时间点;于启动时间点启动第一条路由信息对应的串行编码单元,自此,按照时间顺序,依路由信息的跳转顺序,顺序启动相应的串行编码单元,以前一串行编码单元的执行结束时间点作为后一串行编码单元的启动时间点,各串行编码单元将输出的串行码流片段输入装配器13。对于每个串行编码单元,根据相对应的路由信息的信息字段,从bin-code数据结构中相应的地址读取相应的码流片段,按照bin-code控制区的控制信息对读取出的码流片段进行转换、拼接、调整等处理,然后输出至装配器13,装配器13根据各串行编码单元输出的串行码流片段的时间先后顺序,将各串行码流片段进行拼接,根据控制信息进行调整处理后,输出最终的串行码流。以图5所示ook调制的曼彻斯特编码器输出的串行码流,其对应生成的bin-code数据结构、表2所示mrc路由表及重构编码器的硬件结构为例,1)第一组串行编码单元对起始帧sof编码从bin-code数据结构的地址0x80000000读取出一个特征符号sym-d,将sym-d输入串行转换器213,串行转换器213根据sym-d查找bin-code映射库,将sym-d转换为其对应的第一码流片段,将第一码流片段输出至同步单元214;从bin-code控制区读取出通信等待间隔0x0001640ens,将通信等待间隔0x0001640ens输入计时器单元211,以此控制串行转换器213和计算单元212运行的启动时间,第一组串行编码单元编码完成后,计时器单元211记录结束时间,并将结束时间返回调度单元12;从mrc路由表中读取该路由信息对应的syms_0字段取值,输入计算单元212,计算单元212据此实现对串行转换器213输出码流片段的计数。从bin-code控制区读取出通信速率106kbps,将通信速率106kbps输入同步单元214,同步单元214以此调整第一码流片段的输出速率,将第一码流片段以106kbps的传输速率串行输出至装配器13。2)第二组串行编码单元对数据字节“08”编码根据第一条路由信息rt_0,从bin-code数据区的地址0x00000000开始读取出8个特征符号,并输入串行转换器223,串行转换器223依序根据各特征符号查找bin-code映射库,依序将各特征符号转换为各自对应的第一码流片段或第二码流片段,依序将各码流片段串行拼接,以串行码流片段输出至同步单元224;从调度单元获取第一串行编码单元的结束时间,将该结束时间输入计时器单元221,以此控制串行转换器223和计算单元222运行的启动时间,第二组串行编码单元编码完成后,计时器单元221记录结束时间,并将结束时间返回调度单元12;从mrc路由表中读取该路由信息(路由信息rt_1)对应的syms_1字段的取值,输入计算单元222,计算单元222据此实现对串行转换器223输出码流片段的计数。从bin-code控制区读取出通信速率106kbps,将通信速率106kbps输入同步单元224,同步单元224以此调整输入的串行码流片段的输出速率,将串行码流片段以106kbps的传输速率输出至装配器13。第三组、第四组串行编码单元的工作原理同上,按照下一跳路由信息确定对应的串行编码单元,以上一串行编码单元的结束时间作为其启动时间,从bin-code数据结构中读取相应的码流片段,根据控制信息及mrc路由表,进行拼接、转换、调整等处理后输出至装配器13。装配器13接收各串行编码单元输出的串行码流片段,根据各同步单元输出串行码流片段的启动时间和结束时间,按照时间先后顺序,拼接各同步单元输出的串行码流片段,装配成一个完整的串行码流,然后根据bin-code控制区的幅度控制,调整串行码流的电压幅度为相应幅度,输出最终的串行码流。装配器13还根据各路由信息对应的mask字段的取值,确定是否将该条路由信息对应的串行码流片段复用到输出端(yes表示是,no表示否)。本发明的多协议可重构路由式硬核编码器,通过将各种通信协议层的源数据和控制数据统一转换为自定义的bin-code数据结构,根据该bin-code数据结构构建mrc路由表,根据构建的mrc路由表重构编码器的硬件结构,根据mrc路由表及控制信息配置编码器,能够支持多种通信协议、多种编码方式的数据编码,输出的串行码流能够适配到多种传输媒介。本发明的编码器编码功能强大,资源利用率高,编码异常处理能力强,可扩展性强,适用范围广泛。以上所述是本发明的较佳实施例及其所运用的技术原理,对于本领域的技术人员来说,在不背离本发明的精神和范围的情况下,任何基于本发明技术方案基础上的等效变换、简单替换等显而易见的改变,均属于本发明保护范围之内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1