CN103077152B - 一种用于智能变电站终端设备芯片间的通信加速方法 - Google Patents
一种用于智能变电站终端设备芯片间的通信加速方法 Download PDFInfo
- Publication number
- CN103077152B CN103077152B CN201210568675.7A CN201210568675A CN103077152B CN 103077152 B CN103077152 B CN 103077152B CN 201210568675 A CN201210568675 A CN 201210568675A CN 103077152 B CN103077152 B CN 103077152B
- Authority
- CN
- China
- Prior art keywords
- data
- invalid
- zone bit
- cpu
- send
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Abstract
一种用于智能变电站终端设备的芯片间的通信加速方法,首先CPU根据报文原始数据特征判断该数据是否需要发送,如果需要发送将该标志位置成有效标志,相反则置成无效标志,将无效数据标志位组合成8bit的无效标志位数据和对应的原始数据进行排列,CPU将排列好的无效数据标志位数据与被置成无效标志位的原始数据,按照顺序,以8bit的数据宽度发送给可编程逻辑阵列FPGA;FPGA收到数据后,从接收到的数据中识别被置成无效数据标志位的原始数据;根据无效数据标志位,可编程逻辑阵列FPGA对相应的原始数据进行数据处理,决定是否在原始数据流中去除该数据。本发明优化了CPU与FPGA之间的通信流程;极大地降低了CPU的工作量。
Description
技术领域
本发明属于电力系统技术领域,涉及一种智能终端设备,特别涉及到智能变电站的终端设备。
背景技术
当前电网发展的一个主要技术方向是组建智能电网,包括一次设备数字化和二次设备的网络化。数字技术,特别是数字硬件平台技术在智能电网二次控制设备中的作用日益突出。相比传统的电网二次设备,它具有非常重要的两个功能:
●传输过程层网络的采样数据等数字化的传感器信息和间隔层的继电保护装置的控制指令;
●传输间隔层和站控层之间的交互信息。
由于智能电网对于基于网络的数据接口能力要求很高,所以目前二次设备数字硬件平台的核心网络接口处理架构多采用CPU和FPGA分工协作的方案,如图1所示。
其中CPU负责数据内容处理,将待发送的报文组帧发送给FPGA,同时接收FPGA接收的报文;FPGA负责数据通信接口,将CPU发送过来的数据以IEEE802.3帧格式传输出去,再将网络接收到的IEEE802.3帧经预处理后发往CPU,从而组成双向数据通信链路。
由于智能电网控制设备对于数据处理的实时性要求很高,CPU处理负荷很大,所以降低通信接口任务的开销非常重要。
目前主流CPU内部运算和操作都是32bit数据位宽,而受到硬件的限制,FPGA与DSP之间的数据总线宽度往往都是在8bit以下。同时,由于网络数据流是以8bit(字节)为基本单位进行编解码,所以在CPU到FPGA方向的数据传输过程中,存在如何高效的将按照32bit为基本单位组织的数据流中的有效数据提取到8bit有效数据的问题,也即将无效的字节准确、高效的去除。
传统做法是由CPU通过移位操作解决该问题,即在CPU内部先对数据进行字节移位操作,将每个32bit的无效字节去除,并将下一个32bit中的有效字节填充进来,组成无冗余信息的32位数据流,然后发送给FPGA。由于32位的CPU在移位和拼数的过程中,需要占用大量的指令周期,会占用了大量的运算时间,而且对于具备高速处理能力的32位CPU来说,这种处理开销效率显得非常低,会降低整个系统的处理性能。
发明内容
本发明的目的在于解决上述CPU向FPGA发送字节流数据时,由于32bit向8bit转换导致的CPU运行效率不高的问题。
为了解决上述问题,本发明采用以下技术方案。
一种用于智能变电站终端设备的芯片间的通信加速方法,其特征在于,所述方法包括以下步骤:
(1)智能变电站终端设备的网络接口CPU根据报文数据特性生成无效数据标志位,所述无效数据标志位采用对其赋值的方式来区分对应的数据是否需要发送,由数据的32bit的高位开始判断该数据是否需要发送,如果该数据需要发送,则将对应的无效数据标志位置成有效数据标志,相反则将对应的无效数据标注位置成无效数据标志;
(2)对所有需要发送的报文数据判断完毕之后,将无效数据标志位组合成8bit的无效标志位数据;
(3)将组合后的无效数据标志位数据与原始数据进行排列;
(4)所述CPU将步骤(3)排列好的无效数据标志位数据与原始数据,按照顺序,以8bit的数据宽度发送给可编程逻辑阵列FPGA;
(5)可编程逻辑阵列FPGA收到数据后,从接收到的数据中识别无效数据标志位数据;
(6)根据无效数据标志位,可编程逻辑阵列FPGA对相应的原始数据进行数据处理,如果根据步骤(1)中CPU预先判断的原始数据对应的无效数据标志位被置成有效数据标志,则保留该8bit的原始数据,反之,则在原始数据流中去除该数据。
本发明具有以下技术效果:
将需要传输的以8bit为单位的字节流数据封装成32位数据流,优化了CPU与FPGA之间的通信流程;极大地降低了CPU的工作量。
表面上看,CPU需要生成无效数据标志位,增加了一项工作,但实际上该项工作的时间开销,对比前述对数据进行移位和拼位的操作,CPU的指令开销大大减少,工作负荷明显降低,明显提高了CPU的工作效率,而且有效降低了CPU软件工程师的开发和调试难度;
有效利用了FPGA的处理特长,将对CPU相对复杂的移位、拼位的工作,在FPGA中完成,通过FPGA对数据流的处理,轻松实现了CPU的复杂工作,并且不会增加处理时延。
附图说明
图1为二次设备数字硬件平台的核心网络接口处理架构硬件结构示意图;
图2为本申请原始数据与无效数据标志位定义;
图3为本申请单包数据的无效数据标志位于原始数据之前的排列方式;
图4为本申请单包数据的无效数据标志位于原始数据之后的排列方式;
图5为本申请CPU与FPGA流程示意图。
具体实施方式
下面结合说明书附图以及具体实施例对本申请的技术方案作进一步详细说明。
如附图5所示,本申请公开了一种用于智能变电站终端设备的芯片间的通信加速方法。下面结合两个不同的具体方式对本申请的技术方案进行说明。
1、实施方式1
一种用于智能变电站终端设备的芯片间的通信加速方法,包括以下步骤:
步骤1:智能变电站终端设备的网络接口CPU根据报文数据特性生成无效数据标志位,所述无效数据标志位采用对其赋值的方式来区分对应的数据是否需要发送,优选无效数据标志位采用0,1区分是否有效,例如可以使用0表示无效标志位,使用1表示有效标志位,由数据的32bit的高位开始判断,该数据是否需要发送,如果需要发送将该标志位置成有效标志位,相反则置成无效标志位。
在本实施例中,数据采用整体处理的方式,针对所有数据需要发送的数据,顺序生成无效数据标志位:生成方法:由32bit的高位开始判断,该数据是否需要发送,如果需要发送将该标志位置成有效标志位,相反则置成无效标志位。判断有效无效的方法,由CPU判断数据特性决定。
步骤2:所有需要发送的数据判断完毕之后,将无效数据标志位组合成8bit的数据;
步骤3:将组合后的无效数据标志位的数据与原始数据进行排列,组合后的无效数据标志位的数据和原始数据的顺序有两种方式,排列顺序如图3、4所示,两种方式均可,即排列数据顺序时,无效数据标志位的数据在前,原始数据在后,如图3所示;或者,排列数据顺序时,原始数据在前,无效数据标志位的数据在后,如图4所示。
步骤4:所述CPU将步骤(3)排列好的无效数据标志位的数据与原始数据按照顺序,以8bit的数据宽度一次全部发送给FPGA;
步骤5:FPGA收到数据后,从数据中识别无效数据标志位数据;
步骤6:按照无效数据标志,按照每bit操作的标志位数据,对与该bit标志位对应原始数据进行数据处理;如果该bit的无效数据标志位数据被置成有效标志(例如该位置1),则保留该8bit的原始数据,反之,则在原始数据流中去除该数据。
2、实施方式2
一种用于智能变电站终端设备的芯片间的通信加速方法,包括以下步骤:
数据分块处理,实现方法如下:
(1)将数据分块,可以按照数据的功能不同,或者发送的目标不同等等,将CPU需要发送到FPGA的全部数据,进行分块处理;
(2)针对需要发送每个数据块的数据,顺序生成无效数据标志位;
生成方法:由32bit的高位开始判断,该数据是否需要发送,如果需要发送将该标志位置成有效标志位,相反则置成无效标志位。判断有效无效的方法,由CPU判断数据特性决定;
(3)针对每个数据块,将无效数据标志位组合成成8bit的数据;
(4)将组合后的无效数据标志位的数据与原始数据进行排列,组合后的无效数据标志位的数据和原始数据的顺序有两种方式,排列顺序如图3、4所示,两种方式均可;
(5)将组合好的数据,按照顺序,以8bit的数据宽度一次全部发送给FPGA;
(6)FPGA收到数据后,从数据中识别无效数据标志位数据;
(7)按照无效数据标志,按照每bit操作的数据,对原始数据进行数据处理;如果该bit的无效数据标志位数据被置成有效标志位,则保留该8bit的原始数据,反之,则在原始数据流中去除该数据。
本发明申请人结合说明书附图对本发明的实施例做了详细的说明与描述,但是本领域技术人员应该理解,以上实施例仅为本发明的优选实施方案,详尽的说明只是为了帮助读者更好地理解本发明精神,而并非对本发明保护范围的限制,相反,任何基于本发明的发明精神所作的任何改进或修饰都应当落在本发明的保护范围之内。
Claims (1)
1.一种用于智能变电站终端设备的芯片间的通信加速方法,其特征在于,所述方法包括以下步骤:
(1)智能变电站终端设备的网络接口CPU根据报文数据特性生成无效数据标志位,所述无效数据标志位采用对其赋值的方式来区分对应的数据是否需要发送,由数据的32bit的高位开始判断该数据是否需要发送,如果该数据需要发送,则将对应的无效数据标志位置成有效数据标志,相反,则将对应的无效数据标志位置成无效数据标志;
(2)对所有需要发送的报文数据判断完毕之后,将无效数据标志位组合成8bit的无效标志位数据;
(3)将组合后的无效数据标志位数据与原始数据进行排列;其中,排列方式包括以下两种:
排列方式1:先发送无效数据标志位,然后再发送原始数据;
排列方式2:先发送原始数据,然后再发送无效数据标志位
(4)所述CPU将步骤(3)排列好的无效数据标志位数据与原始数据,按照顺序,以8bit的数据宽度发送给可编程逻辑阵列FPGA;
(5)可编程逻辑阵列FPGA收到数据后,从接收到的数据中识别无效数据标志位数据;
(6)根据无效数据标志位,可编程逻辑阵列FPGA对相应的原始数据进行数据处理,如果根据步骤(1)中CPU预先判断的原始数据对应的无效数据标志位被置成有效数据标志,则保留该8bit的原始数据,反之,则在原始数据流中去除该数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210568675.7A CN103077152B (zh) | 2012-12-25 | 2012-12-25 | 一种用于智能变电站终端设备芯片间的通信加速方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210568675.7A CN103077152B (zh) | 2012-12-25 | 2012-12-25 | 一种用于智能变电站终端设备芯片间的通信加速方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103077152A CN103077152A (zh) | 2013-05-01 |
CN103077152B true CN103077152B (zh) | 2015-09-30 |
Family
ID=48153683
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210568675.7A Active CN103077152B (zh) | 2012-12-25 | 2012-12-25 | 一种用于智能变电站终端设备芯片间的通信加速方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103077152B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109918545B (zh) * | 2019-03-26 | 2021-06-08 | 珠海格力智能装备有限公司 | 传感器数据的提取方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1984025A (zh) * | 2006-05-17 | 2007-06-20 | 华为技术有限公司 | 释放被无效占用的资源的方法和存储转发装置 |
CN101692104A (zh) * | 2009-09-28 | 2010-04-07 | 深圳市双合电脑系统股份有限公司 | 一种电力系统电能质量监测与同步相量监测装置 |
CN101710739A (zh) * | 2009-12-21 | 2010-05-19 | 中国电力科学研究院 | 一种数字化变电站保护控制设备数据处理系统及方法 |
CN101867452A (zh) * | 2010-06-10 | 2010-10-20 | 国网电力科学研究院 | 一种电力专用串行实时总线的通信方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2178456A1 (en) * | 1995-06-07 | 1996-12-08 | Robert W. Horst | Fail-fast, fail-functional, fault-tolerant multiprocessor system |
-
2012
- 2012-12-25 CN CN201210568675.7A patent/CN103077152B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1984025A (zh) * | 2006-05-17 | 2007-06-20 | 华为技术有限公司 | 释放被无效占用的资源的方法和存储转发装置 |
CN101692104A (zh) * | 2009-09-28 | 2010-04-07 | 深圳市双合电脑系统股份有限公司 | 一种电力系统电能质量监测与同步相量监测装置 |
CN101710739A (zh) * | 2009-12-21 | 2010-05-19 | 中国电力科学研究院 | 一种数字化变电站保护控制设备数据处理系统及方法 |
CN101867452A (zh) * | 2010-06-10 | 2010-10-20 | 国网电力科学研究院 | 一种电力专用串行实时总线的通信方法 |
Non-Patent Citations (3)
Title |
---|
Very-high speed control of an FPGA-based finite-element-analysis permanent magnet synchronous virtual motor drive system;Christian Dufour等;《IECON 2008. 34th Annual Conference of IEEE Industrial Electronics,2008》;20081113;第2411-2416页 * |
一种有效的视频数据提取方法;齐本胜等;《工矿自动化》;20071231(第6期);第27-29页 * |
基于FPGA的微机保护板间通信技术;陈凡等;《电力系统保护与控制》;20080916;第36卷(第18期);第73-77页 * |
Also Published As
Publication number | Publication date |
---|---|
CN103077152A (zh) | 2013-05-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101146102B (zh) | Rru网络中hdlc数据下行、上行的方法及通讯装置 | |
CN104158687B (zh) | 一种变电站内双网冗余的装置及实现方法 | |
CN102202093B (zh) | 一种实现传感器适配的方法和系统 | |
CN202870808U (zh) | 一种spi串口模块的fpga实现装置 | |
CN103078895B (zh) | 一种基于mcf52233芯片的工业以太网多功能双串口服务器 | |
CN201146536Y (zh) | 基于arm7 cpu核的mvb-worldfip网关 | |
CN101719922B (zh) | Profibus-dp工业现场总线与无线zigbee间的协议转换装置和方法 | |
CN106162528B (zh) | LoRa信号与蓝牙信号转换模块、转换方法及信号发送装置 | |
CN102664902A (zh) | Powerlink通讯协议主从站内核的硬件实现方法 | |
CN103067238B (zh) | 一种兼容于modbus总线的数据采集方法 | |
CN107241382B (zh) | 用于串口与以太网间的数据转换方法及其装置 | |
CN104821936B (zh) | 基于套接字和asn.1实现iec61850站控层通信协议的系统 | |
CN101882975B (zh) | 一种利用以太帧前导码传输数据的方法 | |
CN103595598A (zh) | 一种基于光纤的远程透明传输串口服务器及其控制模式 | |
CN205829667U (zh) | 一种RTEX与DeviceNET的通信网关 | |
CN103077152B (zh) | 一种用于智能变电站终端设备芯片间的通信加速方法 | |
CN104699649A (zh) | 一种多分支串行总线接口及数据交换方法 | |
CN103888372B (zh) | 一种流量整形方法和数据处理设备 | |
CN102420734A (zh) | 一种can总线拓扑结构实现系统 | |
CN103401866A (zh) | 一种PowerLink工业以太网到Profibus-DP现场总线的转换装置 | |
CN109162745A (zh) | 液压支架电液控制系统的通讯方法 | |
CN203070516U (zh) | 一种基于以太组网架构下电表集抄系统 | |
CN101789843A (zh) | 实现多线路e1捆绑的方法和网桥 | |
CN105049432B (zh) | 基于实时数据总线的以太网与2m复接通道的协议转换方法 | |
CN106533975B (zh) | 一种基于千兆网络的采样值帧解码实现方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20171226 Address after: 100085 Beijing city on the base of the information industry on the street, No. four, No. 9, Haidian District Co-patentee after: Beijing Sifang Jibao Engineering Technology Co., Ltd. Patentee after: Beijing Sifang Jibao Automation Co., Ltd. Address before: 100085 Beijing city on the base of the information industry on the street, No. four, No. 9, Haidian District Patentee before: Beijing Sifang Jibao Automation Co., Ltd. |