实现数据比特交换的系统及方法

文档序号:7654402阅读:268来源:国知局
专利名称:实现数据比特交换的系统及方法
技术领域
本发明涉及通信系统中的数据交换技术,尤其涉及一种实现数据比特交换 的系统及方法。
背景技术
在GSM通信系统中,随着用户的迅速增长,带来了通信网络规模的快速 膨胀,长此以往,势必会导致通信网络不畅通的问题;同时,在扩大通信网络 规模的过程中,伴随对通信网络的投资,势必涉及到节约投资成本的问题。为 解决上述问题,现有通信网络采用半速率语音通信技术,不仅可以有效解决突 发话务量造成的通讯网络阻塞,促进话务量和业务收入的同比增长;而且可以 节省无线载频的投资成本,提高资源利用率。所述半速率语音通信技术包括两 种实现方式 一种是完全半速率方式,另一种是动态半速率方式。由于采用完 全半速率方式会带来一些负面影响,如通话时话音质量有所下降,因此,通常 采用动态半速率方式。
所谓动态半速率方式指根据小区的业务负荷来动态决定分配全速率信道 或半速率信道,即对完全半速率方式中仅通过单一时隙交换或固定时隙拆分 数据的情况进行改进,改进为能够按照配置将输入数据和输出数据在不同通 道、时隙以及比特之间进行交换。以GSM通信系统中动态半速率方式的具体 实现为例,从底层电路实现的角度出发,动态半速率方式以可配置方式,先将 全速率(FR, fUllrate)数据保持不变直接送到输出端口,当占用的FR信道资 源超过预先配置的比例时,将剩下的FR数据,拆分成半速率(HR, halfrate) 数据,并以FR数据的接续顺序,将拆分的HR数据送到所需输出端口的时隙 中。早先的专利文件中,实现数据交换的技术皆是按照时隙进行交换的。譬如 中国发明专利申请号为200410026307.5,发明名称为《实现高速时分交换的电 路模块》的文件中,揭示了对于1路输入-输出,按照时隙进行交换的方法, 如果按照这种方法扩展到多路输入-输出,由于该方法基于一种特定输入到输 出的选择,未考虑多路输入-输出之间的影响,因此,该方法会存在不能对数据 进行时间和空间上广播的缺点。
中国发明专利号为02148368.x,发明名称为《一种数字交叉连接设备件间 时分复用时隙的半永久连接方法》的文件中,公开了一种采用高速同步串行数 据流(HW)总线复用并结合专用交换芯片的方法,实现时隙的半固定连接。 但该方法的实现受到专用交换芯片自身功能所限,因此,该方法存在的缺点是 只能完成按时隙交换的基本功能,并且成本较高。
中国专利号为98812747.4,发明名称为《在时分多路复用网络的位流之间 交换数据的方法和设备》的文件中,提供了时分复用网络按时隙交换的方法。 这种方法需要使用最多三个缓存帧,且数据从输入到输出的延时不确定,由于 存储方式设计的限制,因此,该方法存在的缺点是 一个特定输入时隙数据无 法同时交换到多个输出时隙。

发明内容
有鉴于此,本发明的主要目的在于提供一种实现数据比特交换的系统,不 仅提高了数据交换的灵活性,而且降低了成本,性价比更高。
本发明的又一目的在于提供一种实现数据比特交换的方法,能实现无阻塞 交换功能,且可使任意一个输入的比特在指定通道位置上输出。
为达到上述目的,本发明的技术方案是这样实现的
一种实现数据比特交换的系统,该系统包括互连的处理器CPU以及可编 程逻辑器FPGA;其中,CPU,用于配置所述FPGA;
FPGA,用于获取输入数据,并根据所述CPU的配置,将输入数据进行比 特交换后输出。其中,所述CPU进一步用于配置所述FPGA的输入数据到输出数据进行比 特交换的对应关系。
其中,所述FPGA进一步包括CPU接口单元、控制单元、输入数据处理 单元、接续单元、输出数据处理单元;其中,
CPU接口单元,与CPU相连,用于在FPGA与CPU之间完成数据交互, 并保存所述CPU对FPGA的配置;
控制单元,用于完成所述FPGA内部的时序控制,产生和控制所述FPGA 中其他各单元所需的时序控制信号;其中,时序控制信号包括同步时钟信号、 读写使能信号和读写地址信号;
输入数据处理单元,与所述CPU接口单元相连,用于根据所述时序控制信 号,实现对所述输入数据的接收和緩存,同时,将该输入数据发送给CPU接口
单元;
接续单元,与所述输入数据处理单元、所述CPU接口单元、所述输出数据 处理单元相连,用于获取所述CPU接口单元中存储的所述CPU对FPGA的配 置,并根据配置内容及工作模式,接收从输入数据处理单元输出的数据后,发 送给输出数据处理单元;
输出数据处理单元,用于根据所述时序控制信号,对从接续单元输出的数 据进行接收、緩存和输出。
其中,所述CPU接口单元包括数据寄存模块、控制寄存模块以及接续寄 存模块;
数据寄存模块,与所述输入数据处理单元相连,用于接收并存储所述输入 数据处理单元发送给所述CPU接口单元的输入数据;
控制寄存模块,与所述输入数据处理单元相连,用于根据所述CPU对所述 FPGA的配置,在FPGA中进行比特交换时,控制FPGA的工作^^式切换;
接续寄存模块,与所述接续单元相连,用于存储所述CPU对FPGA配置的 对应关系,并将所配置的输入数据到输出数据进行比特交换的对应关系发送给 所述接续单元。其中,所述同步时钟信号包括同步帧时钟信号;所述读写使能信号具体 为读/写双口随机存取存储器DPRAM的使能信号;所述读写地址信号具体为 读/写DPRAM的地址信号。
其中,在正常工作模式下,接续单元以接续方式接收从所述输入数据处理 单元输出的数据,并发送给输出数据处理单元;在自检工作模式下,接续单元 以消息方式将所述接续寄存模块地址中的消息位发送给输出数据处理单元。
其中,所述CPU接口单元,在所述自检工作^^式下,还用于判断所述FPGA 是否正确地进行比特交换。
一种实现数据比特交换的方法,该方法包括以下步骤
A、 FPGA接收输入数据,所述CPU配置FPGA,并将输入数据到输出数 据进行比特交换的对应关系配置给FPGA;
B、 FPGA根据配置的对应关系,将输入数据进行比特交换后输出。 其中,所述FPGA由CPU接口单元、控制单元、输入数据处理单元、输出
数据处理单元和接续单元组成; 则步骤A具体为
Al、输入数据处理单元^4居控制单元提供的时序控制信号,对所述输入数 据接收和緩存,同时将该输入数据转发给所述CPU接口单元; A2、 CPU接口单元将所述对应关系配置给接续单元; 相应的,步骤B具体为
Bl、所述接续单元根据所述配置的对应关系,接收从所述输入数据处理单 元输出的数据后,发送给输出数据处理单元;
B2、输出数据处理单元根据所述控制单元提供的所述时序控制信号,对从 接续单元输出的数据进行接收、緩存和输出。
其中,所述CPU接口单元由数据寄存模块、控制寄存模块和接续寄存模块 组成;
则步骤Al进一步为
Al 1 、所述输入数据处理单元将输入数据转发给数据寄存模块;相应的,步骤A2具体为
A21、接续寄存模块将所述对应关系配置给接续单元。 其中,在步骤A11之前还包括
步骤X、根据所述CPU对所述FPGA的配置,控制寄存模块控制FPGA的 工作模式切换。
其中,FPGA在正常工作模式,且对输入数据处理单元采用的读写操作方 式为乒乓操作方式时,步骤A11具体为
Al 11 、所述输入数据处理单元采用双口随机存取存储器DPRAM緩存所述 输入数据;
并且,根据所述控制单元提供的第一帧时序控制信号,将所述输入数据的
第 一帧写入DPRAM的低存储区;根据所述控制单元提供的第二帧时序控制信
号,将输入数据的第二帧写入DPRAM的高存储区;
A112、在获取所述第二帧时序控制信号的同时,根据所述配置的对应关系,
将所述低存储区第 一 帧的数据读出;
按帧的传输顺序,循环执行步骤A111 A112流程,直至在输入数据处理单
元完成对所述输入数据所有帧的读写操作。
其中,步骤B2中,所述输出数据处理单元采用DPRAM存储,且对输出
数据处理单元釆用的读写操作方式为乒乓操作方式。
其中,在所述接续寄存模块中,设置任一比特位为工作方式选择位。
其中,当FPGA切换到自检工作模式下,则步骤B2之后还包括
B3、输出数据处理单元接收、緩存从所述接续单元输出的数据,按照输出、
输入数据的环回方式,将从输出数据处理单元输出的数据发送给所述输入数据
处理单元;在所述CPU和所述FPGA之间,采用消息方式,验证输入FPGA的
数据到输出FPGA数据进行比特交换的正确性。
其中,步骤B3中采用消息方式,进行比特交换正确性验证具体为
B31 、所述CPU经由所述CPU接口单元将接续寄存模块与第 一路输出数据
对应的地址空间设置为消息方式,并将所述地址的最低比特位写入指定的消息;其他路输出数据对应的地址空间设置为按所配置对应关系进行比特交换的 接续方式;
B32、接续单元将所述接续寄存模块所述地址中消息位的所述指定消息发 送到输出数据处理单元;
B33、所述CPU读取CPU接口单元中数据寄存模块存储的内容,与所述接 续寄存模块经由接续模块所发送的消息进行比较,如果相同,则判定将该路输
入数据进行比特交换后输出的比特交换功能正确;继续循环执行步骤B31-B33, 直至遍历完所述输出数据的每一路。
本发明所提供的实现数据比特交换的系统及方法,与现有技术相比具有以 下优点
(1) 由于CPU对可编程逻辑器(FPGA)进行配置,且所配置的内容为输 入数据与输出数据的对应关系。当nxn条HW输入FPGA时,根据所述配置的 对应关系,FPGA可将输入HW中指定比特位上的内容交换到输出HW中的指 定比特位上,因此,本发明方法实现了按照时隙中的比特进行无阻塞交换的功 能,并且可以让任意一个输入的比特在所有需要输出通道上的指定比特位输出。
(2) 本发明的系统具备自检功能,通过配置工作模式,根据系统时钟的指 示完成比特交换功能的自检。
(3 )本发明的系统采用消息方式,可以用于诊断外围电路或通道的正确性。 (4)由于FPGA具有可编程性,那么,结合CPU配置的工作模式来实现 本发明的方法,可使用户根据自身设计需要,定制FPGA上的软件模块,方便 地实现1比特或多比特的交换,因此,将FPGA作为本发明系统的主体,相比 采用专用交换芯片并将数据按照时隙进行交换的系统,提高了数据交换的灵活 性,具有较高的性价比。


图1为本发明系统的一个组成结构示意图2为本发明系统的另一个组成结构示意图;图3为本发明方法的一个实现流程图; 图4为本发明实现比特交换功能的示意图5为正常工作模式下,本发明方法实施例一所基于的系统组成结构示意
图6为自检工作模式下,本发明方法实施例二所基于的系统组成结构示意
图7为以消息方式发送消息的系统原理示意图。
具体实施例方式
本发明的核心思想是CPU配置输入FPGA的数据到输出FPGA的数据所 进行比特交换的对应关系,FPGA根据CPU配置的对应关系,将输入FPGA的 数据进行比特交换后输出FPGA。由于FPGA具有可编程性,用户可以根据自 身设计需要,定制FPGA上的软件模块,结合CPU配置的对应关系实现比特交 换,因此,可以根据具体的定制,将输入数据方便地进行1比特或多比特的交 换后输出,提高了数据交换的灵活性,具有较高的性价比。
下面结合附图对技术方案的实施作进一步的详细描述。
如图l所示,本发明的系统包括互连的CPU1以及FPGA2。其中,CPU1 用于配置FPGA2,且进一步用于配置FPGA2的输入数据输出数据进行比特交 换的对应关系;FPGA2用于获取输入数据,并才艮据CPU1所配置的对应关系, 将输入数据进行比特交换后输出。
FPGA2进一步包括CPU接口单元21、控制单元22、输入数据处理单元 23、接续单元24、输出凄史据处理单元25。
其中,CPU接口单元21 ,与CPU1相连,用于在FPGA2与CPU1之间完 成数据交互,并保存CPU1对FPGA2的配置。其中,数据交互具体为FPGA2 中的CPU接口单元21与CPU1之间的数据交互。
控制单元22,用于完成FPGA2内部的时序控制,产生和控制FPGA2中 其他各单元所需的时序控制信号。这里,所说其他各单元包括CPU接口单元21、输入数据处理单元23、接续单元24、输出数据处理单元25。图1中所示 的虚框表示控制单元22分别对输入数据处理单元23、接续单元24以及输出 数据处理单元25进行控制,并产生每个单元各自所需的时序控制信号。
这里,时序控制信号包括同步时钟信号、读写使能信号和读写地址信号。 其中,所述同步时钟信号包括同步帧时钟信号;所述读写使能信号具体为 读/写双口随机存取存储器(DPRAM, Double Port Random Memory )的使能信 号;所述读写地址信号具体为读/写DPRAM的地址信号。
输入数据处理单元23与CPU接口单元21相连,用于才艮据所述时序控制信 号,实现对输入数据的接收和緩存,同时,将该输入数据发送给CPU接口单元 21。并且,由于实现无阻塞交换需对接收的输入数据至少緩存两帧,因此,数 据交换的固定延时为两帧。两帧的固定延时指数据进入FPGA到输出FPGA 的时延。
接续单元24与输入数据处理单元23、 CPU接口单元21、输出数据处理单 元25相连,用于获取CPU接口单元21中保存的CPU1对FPGA2的配置,并 根据配置的具体内容以及工作模式,接收从输入数据处理单元输出的数据后, 发送给输出数据处理单元25。
输出数据处理单元25用于根据所述时序控制信号,对从接续单元24输出 的数据进行接收、緩存和输出。
上述输入数据处理单元23以及输出数据处理单元25皆采用DPRAM作为 存储模块,緩存数据。
如图2所示,CPU接口单元21包括数据寄存模块211、控制寄存模块 212和接续寄存模块213,则所述CPU接口单元21与CPU1之间的数据交互具 体为数据寄存模块211、控制寄存模块212和接续寄存模块213与CPU1之 间的数据交互。
数据寄存模块211、控制寄存模块212和接续寄存模块213相互独立,皆 为根据CPU1的片选和读写使能信号,通过数据线、地址线与CPU1之间进 行读写操作。并且,CPU1对FPGA2的配置具体存储在CPU接口单元21中的控制寄存模块212以及接续寄存模块213内。
在CPU接口单元21中,数据寄存模块211与输入数据处理单元23相连, 用于接收并存储输入数据处理单元23发送给CPU接口单元21的输入数据。
控制寄存模块212与输入数据处理单元23相连,用于存储CPU1对FPGA2 配置的控制信息,才艮据CPU1对FPGA2的配置,在FPGA2中进行比特交换时, 控制FPGA2的工作才莫式切换。
接续寄存模块213与接续单元24相连,用于存储CPU1对FPGA2配置的 对应关系,并将所配置的输入数据到输出数据进行比特交换的对应关系发送给 接续单元24。
由于输入数据处理单元23以及输出数据处理单元25皆采用DPRAM作为 存储模块,緩存数据,因此,如图2所示,输入数据处理单元23中进一步包括 输入数据的DPRAM231;输出数据处理单元25中进一步包括输出数据的 DPRAM251。
图2所示系统的工作模式包括正常工作模式以及自检工作模式。在正常
的操作。在正常工作模式或自检工作模式中,皆可以通过消息方式实现对 FPGA2的检测,对输入FPGA2的数据进行比特交换后输出的操作进行正确性 验证。
接续单元24接收从输入数据处理单元23输出的数据,相应的,在正常工 作模式下,接续单元24以接续方式接收从输入数据处理单元23输出的数据, 并发送给输出数据处理单元25;在自检工作模式下,接续寄存模块213中该数 据对应输出比特单位的地址处于消息方式,接续单元24以消息方式将接续寄存 模块213所述地址中的消息位发送给输出数据处理单元25。
进而,在所述自检工作模式下,CPU接口单元21以读入数据寄存模块211 值的方式,还可以判断FPGA2是否正确地进行比特交换。
基于图l的结构,本发明的方法包括以下步骤
步骤101、在本发明的系统上电启动后,FPGA2接收输入数据,CPU1通过CPU接口单元21配置FPGA2,并将输入数据到输出数据进行比特交换的对 应关系配置给FPGA2。
步骤102、 FPGA2根据配置的对应关系,将输入数据进行比特交换后输出。
如图3所示,步骤101具体为
步骤1011、输入数据处理单元23根据控制单元22提供的时序控制信号, 对所述输入数据接收和緩存,同时将该输入数据转发给CPU接口单元21 。 步骤1012、 CPU接口单元21将所述对应关系配置给接续单元24。 步骤102具体为
步骤1021、接续单元24根据所述配置的对应关系,接收从输入数据处理 单元23输出的数据后,发送给输出数据处理单元25。
步骤1022、输出数据处理单元25根据控制单元22提供的所述时序控制信 号,对从接续单元24输出的数据进行接收、緩存和输出。
从输出数据处理单元25输出的数据就是经过比特交换后的输出数据。这 里,比特交换是指将输入数据中某路输入的某个比特交换到某路输出的某个 比特。
基于图2的结构,步骤1011进一步为
步骤10111、输入数据处理单元23将输入数据转发给数据寄存模块211。 这里,由于输入数据处理单元23将接收的所述输入数据转发给数据寄存模块 211,因此,输入数据处理单元23中存储模块緩存的内容与数据寄存模块211 的内容相同。
相应的,步骤1012具体为
步骤10121、接续寄存模块213将所述对应关系配置给接续单元24。 其中,在步骤10111之前还包括
步骤a、控制寄存模块212根据CPU1对FPGA2的配置,控制FPGA2的 工作模式切换。
在正常工作模式,且对输入数据处理单元23采用的读写操作方式为乒乓操 作方式的情况下,步骤10111具体为步骤10111a、输入数据处理单元25采用DPRAM作为存储模块,緩存所 述输入数据,这里,存储模块是输入数据的DPRAM231,进入输入数据处理单 元25的所述输入数据先经过串并转换后,写入到输入数据的DPRAM231。
并且,输入数据处理单元25根据控制单元22提供的第一帧时序控制信号, 将所述输入数据的第一帧写入DPRAM231的低存储区;根据控制单元22提供 的第二帧时序控制信号,将输入数据的第二帧写入DPRAM231的高存储区。
步骤10111b、在获取所述第二帧时序控制信号的同时,根据配置的对应关 系,将所述低存储区第一帧的数据读出。
按帧的传输顺序,循环执行上述读写操作,即将输入数据的第三帧写入 DPRAM231的低存储区,同时,将DPRAM231高存储区第二帧的数据读出; 将输入数据的第四帧写入DPRAM231的高存储区,同时,将DPRAM231低存 储区第三帧的数据读出,依此类推,直至在输入数据处理单元23完成对所述输 入数据所有帧的读写操作后,结束当前处理流程。
在正常工作模式下,步骤1022中,输出数据处理单元25也采用DPRAM作 为存储模块,这里,存储模块是输出数据的DPRAM251。并且,对输出数据处 理单元25采用的读写操作方式为乒乓操作方式,完成对从接续单元24输出的 数据进行接收、緩存和输出。其中,从DPRAM251输出的数据需经并串转换后 输出。
在接续寄存模块213中设置任一比特位为工作方式选择位。其中,工作方 式包括接续方式以及消息方式,该比特位为1时,选择消息方式;为O时, 选捧接续方式。接续寄存模块213每个地址对应一个16比特的变量。比如,将 第15比特位设置为工作方式选择位,也可以选用其他的比特位为工作方式选择位。
上述本发明方法的实现流程中采用乒乓操作方式,实现了按照时隙中的比 特进行无阻塞交换的功能,并且可以让任意一个输入比特在所有需要输出通道 上的指定位置输出。图4所示直观地体现了本发明实现输入数据与输出数据之 间比特交换的功能,并且体现了 n路输入数据与n路输出数据之间,从输入到输出的无阻塞交换功能。其中,无阻塞交换功能指将指定输入数据中比特单 位上的内容交换到指定输出数据中的比特单位上。
当切换到自检工作模式下,则步骤1022之后还包括
步骤1023、输出数据处理单元25接收、緩存从所述接续单元24输出的数 据,按照输出、输入数据的环回方式,将从输出数据处理单元25输出的数据发 送给输入数据处理单元23;在所述CPU和所述FPGA之间,采用消息方式, 验证输入FPGA2的数据到输出FPGA2数据进行比特交换的正确性。
由于所述输入数据输入至输入数据处理单元23首先需经过串并转换,相应 的,输出数据处理单元25在输出数据前,需经过并串转换,因此,在输入数据 处理单元23与输出数据处理单元25之间,所处理的数据具体为并行的多路 数据。那么,所述环回方式具体为
输出数据处理单元25将第i路输出数据连接到输入凄t据处理单元23的第i + 1路输入数据,第n路输出数据连接到输入数据处理单元23的第1路输入数 据,形成输出、输入数据的环回;其中,i = l、 2.......n。
这里,完成多比特交换是并行的数据,如果是l比特交换就是串行的数据。
步骤1023中采用消息方式,进行比特交换正确性-睑证具体为
步骤1023a、 CPU1经由CPU接口单元21,将接续寄存模块213与第一路 输出数据对应的地址空间全部定义为消息方式,并将所述地址的最低比特位 写入指定的消息,该最低比特位为所述地址中的消息位;其他路输出数据对应 的地址空间设置为按照所述配置的对应关系进行比特交换的接续方式;
步骤1023b、接续单元24将接续寄存模块213消息位的所述指定消息发送 到输出数据处理单元25;
步骤1023c、 CPU1经由CPU接口单元21,读取CPU接口单元21中数据 寄存模块211存储的内容,与接续寄存模块213经由接续模块24所发送的消息, 即消息位的所述指定消息进行比较,如果相同,则判定将该路输入数据进行 比特交换后输出的比特交换功能正确;继续循环执行步骤1023a~ 1023c,直至 遍历过所述输出数据的每一路后,结束当前处理流程。简言之,所谓自检工作模式是指FPGA2在不借助外部通路的情况下,采 用消息方式,在指定输出数据的任意比特单位发测试数据,并在FPGA2内部完 成数据在所有通道的自环回,通过比较消息方式发出的数据和接收到数据是否 相同来检测比特交换功能是否正确实现。
以四x四路、速率为8.196MHz输入数据的1比特交换为例,分别对在正常 工作模式以及自检工作模式下,描述本发明方法的实现流程。本例中,系统帧 传输的时钟信号为8K,每帧1024比特,输入数据的存储^^块为一块4x2048 的DPRAM,接续寄存模块为1块16x4096的DPRAM,输出数据的存储模块 为四块1x2048的DPRAM,接续寄存模块的每个地址与一路输出的1比特对应, 数据寄存模块与输入数据的存储模块中所緩存的内容完全相同,用于在自检工 作模式,测试比特交换功能的正确性。
方法实施例一
本实施例为处于正常工作模式下,图5为方法实施例一所基于的系统结构, 基于图5的结构,本实施例中方法的实现流程包括以下步骤
步骤201、控制寄存模块212根据CPU1对FPGA2的配置,控制FPGA2 的工作才莫式切换。
这里,在接续寄存模块213中,设置第15比特位为工作方式选择位。将该 比特位设为0,代表在正常工作模式中,采用接续方式实现对输入FPGA2的数 据进行比特交换后输出的操作。
步骤202、四路8.196MHz输入数据输入到FPGA2中,输入数据处理单元 23根据控制单元22提供的时序控制信号,对所述输入数据接收和緩存,并将 该输入数据存储在4x2048输入数据的DPRAM2311;同时,将该输入数据转发 给数据寄存模块211。
其中,对输入数据处理单元23采用的读写操作方式为乒乓操作方式,具体

输入数据处理单元25根据控制单元22提供的第一帧时序控制信号,将所 述输入数据的第一帧写入DPRAM2311的低存储区;根据控制单元22提供的第二帧时序控制信号,将输入数据的第二帧写入DPRAM2311的高存储区;
在获取所述第二帧时序控制信号的同时,根据配置的对应关系,将 DPRAM2311低存储区第一帧的数据读出;
按帧的传输顺序,循环执行上述读写操作,直至在输入数据处理单元23 完成对所述输入数据所有帧的读写操作。
步骤203、接续寄存模块213将输入数据到输出数据进行比特交换的对应 关系配置给"f妄续单元24。
步骤204、接续单元24根据配置的对应关系,接收从输入数据处理单元23 输出的数据后,发送给输出数据处理单元25。
步骤205、输出数据处理单元25也采用DPRAM作为存储模块,这里,存 储模块为四块分别标识为2511、 2512、 2513以及2514的1x2048输出数据的 DPRAM,并且,对输出数据处理单元25采用的读写操作方式也为乒乓操作方 式,完成对从接续单元24输出的数据进行接收、緩存和输出。其中,为了保证 两帧时延,要求每次切换与帧头对齐。
循环执行上述处理流程,直至完成对四路8.196MHz输入lt据所有帧的比 特交换后,结束上述处理流程,输出的为经比特交换后的四路8.196MHz的输 出数据。
方法实施例二
本实施例为处于自检工作模式下,图6为方法实施例二所基于的系统组成 结构示意图。
本实施例中,步骤301 305与方法实施例一的原理及操作基本相同,不同 的是本实施例的步骤301中将接续寄存模块213中第15比特位的值设为1, 代表在自检工作模式中,釆用消息方式实现对FPGA2的检测,对输入FPGA2 的数据进行比特交换后输出的操作进行正确性验证。
那么,在FPGA2进入自检工作模式时,基于图6的结构,本实施例中方法 的实现流程还包括以下步骤
步骤306、输出数据处理单元25接收、緩存从所述接续单元24输出的四路输出数据,按照输出、输入数据的环回方式,将从输出数据处理单元25输出 的数据发送给输入数据处理单元23。
简单地说,环回方式就是第i路输出环回并接到第i+l路输入,这里,不 需要有外部的数据流输入给输入数据处理单元23。
对本实施例来说,第一路输出数据连接到第二路输入数据,根据所述环回 方式,依次类推,第四路输出数据连接到第一路输入数据,形成输入输出数据 的环回。
步骤307、 CPU1经由CPU接口单元21,将接续寄存模块213与第一路输 出数据对应的地址空间全部定义为消息方式,并将所述地址的最低比特位写 入指定的消息;其他三路输出数据对应的地址空间定义为按照所述配置的对 应关系进行比特交换的接续方式。
步骤308、接续单元24将接续寄存模块213消息位的所述指定消息发送到 输出数据处理单元25。
步骤309、 CPU1经由CPU接口单元21,读取CPU接口单元21中数据寄 存模块211存储的内容,与接续寄存模块213经由接续模块24所发送的消息, 即消息位的所述指定消息进行比较,如果相同,则判定将该i 各输入数据进行 比特交换后输出的比特交换功能正确。
继续循环执行上述处理流程,直至遍历过所述四路输出数据的每路后,结 束上述处理流程。在自检工作模式下,在CPU1和FPGA2之间,采用消息方式, 验证输入FPGA2的数据到输出FPGA2 H据进行比特交换的正确性。
图7为以消息方式发送消息的系统原理示意图,基于图7的结构,以消息 方式发送消息包括以下步骤
步骤el、 CPU1配置CPU接口模块21中接续寄存模块213,将对应第一 路输出数据中第0比特位地址的第15比特位设置为1,即指定第一路输出数据 的第0比特发送该地址最低位第0比特内所存储的消息0;
步骤e2、在接续单元24中将步骤el中所述地址的第0比特内所存储的消 息O发送到第一路输出数据的第0比特位,从而完成了消息的发送。上述实施例皆为1比特交换,若需要实现多比特交换,只需在输入数据 处理单元23中输入数据的DPRAM前加串并转换器,并在输出数据处理单元 25中的输出数据的DPRAM后加并串转换器即可。针对不同路数的比特交换, 则需相应的调整输入、输出数据的DPRAM以及接续寄存模块213的DPRAM 的大小,即可完成相应的功能。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
权利要求
1、一种实现数据比特交换的系统,其特征在于,该系统包括互连的处理器CPU以及可编程逻辑器FPGA;其中,CPU,用于配置所述FPGA;FPGA,用于获取输入数据,并根据所述CPU的配置,将输入数据进行比特交换后输出。
2、 根据权利要求1所述的系统,其特征在于,所迷CPU进一步用于配置 所述FPGA的输入数据到输出数据进行比特交换的对应关系。
3、 根据权利要求1或2所述的系统,其特征在于,所述FPGA进一步包括: CPU接口单元、控制单元、输入数据处理单元、4妄续单元、输出数据处理单元; 其中,CPU接口单元,与CPU相连,用于在FPGA与CPU之间完成数据交互, 并保存所述CPU对FPGA的配置;控制单元,用于完成所述FPGA内部的时序控制,产生和控制所述FPGA 中其他各单元所需的时序控制信号;其中,时序控制信号包括同步时钟信号、 读写使能信号和读写地址信号;输入数据处理单元,与所述CPU接口单元相连,用于根据所述时序控制信 号,实现对所述输入数据的接收和緩存,同时,将该输入数据发送给CPU接口单元;接续单元,与所述输入数据处理单元、所述CPU接口单元、所述输出数据 处理单元相连,用于获取所述CPU接口单元中存储的所述CPU对FPGA的配 置,并根据配置内容及工作模式,接收从输入数据处理单元输出的数据后,发 送给输出数据处理单元;输出数据处理单元,用于根据所述时序控制信号,对从接续单元输出的数 据进行接收、缓存和输出。
4、 根据权利要求3所述的系统,其特征在于,所述CPU接口单元包括 数据寄存模块、控制寄存模块以及接续寄存模块;数据寄存模块,与所述输入数据处理单元相连,用于接收并存储所述输入数据处理单元发送给所述CPU接口单元的输入凄史据;控制寄存模块,与所述输入数据处理单元相连,用于根据所述CPU对所述 FPGA的配置,在FPGA中进行比特交换时,控制FPGA的工作模式切换;接续寄存模块,与所述接续单元相连,用于存储所述CPU对FPGA配置的 对应关系,并将所配置的输入数据到输出数据进行比特交换的对应关系发送给 所述接续单元。
5、 根据权利要求3所述的系统,其特征在于,所述同步时钟信号包括同 步帧时钟信号;所述读写使能信号具体为读/写双口随机存取存储器DPRAM 的使能信号;所述读写地址信号具体为读/写DPRAM的地址信号。
6、 根据权利要求4所述的系统,其特征在于,在正常工作模式下,接续单 元以接续方式接收从所述输入数据处理单元输出的数据,并发送给输出数据处 理单元;在自检工作模式下,接续单元以消息方式将所述接续寄存模块地址中 的消息位发送给输出数据处理单元。
7、 根据权利要求6所述的系统,其特征在于,所述CPU接口单元,在所 述自检工作模式下,还用于判断所述FPGA是否正确地进行比特交换。
8、 一种实现数据比特交换的方法,其特征在于,该方法包括以下步骤A、 FPGA接收输入数据,所述CPU配置FPGA,并将输入数据到输出数 据进行比特交换的对应关系配置给FPGA;B、 FPGA根据配置的对应关系,将输入数据进行比特交换后输出。
9、 根据权利要求8所述的方法,其特征在于,所述FPGA由CPU接口单 元、控制单元、输入数据处理单元、输出数据处理单元和接续单元组成;则步骤A具体为Al、输入数据处理单元根据控制单元提供的时序控制信号,对所述输入数 据接收和緩存,同时将该输入数据转发给所述CPU接口单元; A2、 CPU接口单元将所述对应关系配置给4妄续单元; 相应的,步骤B具体为Bl、所述接续单元^4居所述配置的对应关系,接收^^所述输入数据处理单 元输出的数据后,发送给输出数据处理单元;B2、输出数据处理单元根据所述控制单元提供的所述时序控制信号,对从 接续单元输出的数据进行接收、緩存和输出。
10、 根据权利要求9所述的方法,其特征在于,所述CPU接口单元由数据 寄存模块、控制寄存模块和接续寄存模块组成;则步骤Al进一步为All、所述输入数据处理单元将输入数据转发给数据寄存模块; 相应的,步骤A2具体为A21、接续寄存模块将所述对应关系配置给接续单元。
11、 根据权利要求IO所述的方法,其特征在于,在步骤A11之前还包括 步骤X、根据所述CPU对所述FPGA的配置,控制寄存模块控制FPGA的工作模式切换。
12、 根据权利要求10或11所述的方法,其特征在于,FPGA在正常工作 模式,且对输入数据处理单元采用的读写操作方式为兵乓操作方式时,步骤All 具体为Al 11 、所述输入数据处理单元采用双口随机存取存储器DPRAM緩存所述 输入数据;并且,根据所述控制单元提供的第一帧时序控制信号,将所述输入数据的 第一帧写入DPRAM的低存储区;根据所述控制单元提供的第二帧时序控制信 号,将输入数据的第二帧写入DPRAM的高存储区;A112、在获取所述第二帧时序控制信号的同时,根据所述配置的对应关系, 将所述低存储区第一帧的凄t据读出;按帧的传输顺序,循环执行步骤A111 A112流程,直至在输入数据处理单 元完成对所述输入数据所有帧的读写操作。
13、 根据权利要求12所述的方法,其特征在于,步骤B2中,所述输出数 据处理单元采用DPRAM存储,且对输出数据处理单元采用的读写操作方式为兵乓操作方式。
14、 根据权利要求13所述的方法,其特征在于,在所述接续寄存模块中, 设置任一 比特位为工作方式选择位。
15、 根据权利要求14所述的方法,其特征在于,当FPGA切换到自检工作 模式下,则步骤B2之后还包括B3、输出数据处理单元接收、緩存从所述接续单元输出的数据,按照输出、 输入数据的环回方式,将从输出数据处理单元输出的数据发送给所述输入数据 处理单元;在所述CPU和所述FPGA之间,采用消息方式,4全证输入FPGA的 数据到输出FPGA数据进行比特交换的正确性。
16、 根据权利要求15所述的方法,其特征在于,步骤B3中采用消息方式, 进行比特交换正确性验证具体为B31 、所述CPU经由所述CPU接口单元将接续寄存模块与第 一路输出数据 对应的地址空间设置为消息方式,并将所述地址的最低比特位写入指定的消 息;其他路输出数据对应的地址空间设置为按所配置对应关系进行比特交换的 接续方式;B32、接续单元将所述接续寄存模块所述地址中消息位的所述指定消息发 送到输出数据处理单元;B33、所述CPU读取CPU接口单元中数据寄存模块存储的内容,与所述接 续寄存模块经由接续模块所发送的消息进行比较,如果相同,则判定将该路输 入数据进行比特交换后输出的比特交换功能正确;继续循环执行步骤B31 B33, 直至遍历完所述输出数据的每一路。
全文摘要
本发明公开了一种实现数据比特交换的系统,该系统包括相连的处理器(CPU)以及可编程逻辑器(FPGA);其中,CPU,用于配置FPGA;FPGA,用于获取输入数据,并根据CPU的配置,将输入数据进行比特交换后输出。本发明还公开了一种实现数据比特交换的方法。采用本发明的系统及方法,细化到将数据按照比特进行交换,并且实现了按照时隙中的比特进行无阻塞交换的功能,可以让任意一个输入的比特在所有需要输出通道上的指定位置输出;不仅提高了数据交换的灵活性,而且降低了成本,性价比高。
文档编号H04L12/56GK101321119SQ20071011068
公开日2008年12月10日 申请日期2007年6月8日 优先权日2007年6月8日
发明者妍 徐, 军 罗 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1