基于ARM+FPGA的电力通信管理机IEC61850规约通信机的实现

本章通过对比传统的通信管理机方案对需要支持多RS485端口的不足之处, 以及在进行海量数据处理时的性能瓶颈,本文使用Intel全新的Cyclone V SoC  FPGA芯片,充分发挥FPGA的高速并行运算特性以及现场可配置优势,并且结合 ARM处理器的灵活运算和控制能力,设计了基于异构计算架构的硬件可配置电力 通信管理机系统[8]。本章将结合第二章介绍的光伏方阵对通信管理机的基本要求, 结合SoC FPGA的自身硬件特点,分析了SoC FPGA针对光伏电力通信系统管理 机的可实现性。

3.1 SoC FPGA的基本概念 
Intel Cyclone V SoC FPGA是Intel PSG(原Altera)于2013年发布的一款在单 一芯片上集成了双核的ARM Cortex-A9处理器和FPGA逻辑资源的新型SoC芯片, 相较于传统的单一ARM处理器或FPGA芯片,Intel Cyclone V SoC FPGA既拥有 了ARM处理器灵活高效的数据运算和事务处理能力,同时又集成了FPGA的高速 并行处理优势,同时,基于两者独特的片上互联结构,使用时可以将FPGA上的 通用逻辑资源经过配置,映射为ARM处理器的一个或多个具有特定功能的外设, 通过高达128位宽的AXI(Advanced Extensible Interface)高速总线进行通信,完 成数据和控制命令的交互[9]。由于片上的ARM处理器是经过布局布线的硬线逻辑, 因此其能工作的时钟主频较高,因此单位时间内能够执行的指令也更多[8]。  3.2 SoC FPGA架构相较于传统架构的优势  3.2.1 SoC FPGA架构相较于独立处理器架构的优势 
在SoC FPGA架构出现之前一般的嵌入式系统通常使用各种处理器或单片机 作为系统核心,如ARM、X86、PowerPC等。这些处理器的最大局限在于其芯片 上的外设数量是确定的,一旦选定一款特定的处理器,则其本身能够提供的各种 功能也就确定了,例如选择S3C2410这款处理器,则该芯片本身有且仅有3个 UART串口,当系统所需的串口数量大于3个时,不得不采用另外的方法来扩张实 现,例如使用各种串口扩展芯片,另外,由于这些处理器芯片片上外设功能都是 固定的,仅支持在一定程度上设置其工作模式,却无法实现非常灵活的个性化定 制,例如S3C2410处理器的片上UART控制器带有16个字节的FIFO缓冲,但是在某些大数据量的应用中,希望有更大容量的FIFO来满足功能开发需求,则片上 的UART控制器不能完全满足要求,只能通过软件的方式处理[10]。 
SoC FPGA由于芯片上包含有现场可编程逻辑门阵列,可以根据实际应用需求 设计相应的逻辑电路,如带有256个字节的FIFO的UART控制器。而且,得益于 SoC FPGA芯片上FPGA和HPS部分独特的高速互联架构,FPGA侧设计的功能 电路可以直接连接到HPS的总线上,从而映射为HPS的一个外设,由HPS对其 进行读写操作,该操作就像处理器操作本身片上含有的外设一样简单方便。 
相较于传统的硬件功能固定的处理器,SoC FPGA能够突破硬件功能限制,根 据实际应用需求灵活设计功能电路并连接到处理器的总线上,由处理器对其进行 控制。 
3.2.2 SoC FPGA架构相较于独立FPGA系统的优势 
FPGA作为一种可以随时更改其实现的逻辑电路功能的器件,在高速并行数据 处理方面有天然的优势。由于FPGA实现的是硬件逻辑功能,其执行效率相较于 使用程序指令实现功能的处理器来说要高很多,例如执行3个数据的乘加运算, FPGA可以使用两个乘法器和一个加法器,在一个时钟周期内完成运算并输出结 果,而CPU则可能需要将将该操作拆分成1条乘加指令和1条乘法指令,即使高 性能的CPU,也需要2个指令周期才能完成该操作。同时,FPGA也可以利用功 能复制的方式,在一个芯片上实现大量相同的功能,例如设计好一个高速数据采 集+FIR数字滤波功能模块,然后可以直接将其例化多次,实现一个高速多路数据 采集处理系统。 
然而,单独的FPGA设计的系统也有其不足之处,由于FPGA实现功能都是 通过功能固定的逻辑电路实现的,那么当应用中需要灵活的控制和人机交互或者 复杂的以太网协议通信时,使用FPGA实现就会有较大的难度,即使使用复杂的 状态机能够勉强实现功能,也面临者功能固定,修改难度大的问题,例如在上述 多路采集系统之中,当需要将多路采集到的数据在液晶显示屏上绘制为波形或者 使用TCP/IP协议传输到远端服务器时,单纯的FPGA就难以胜任了,而ARM处 理器,尤其是运行了嵌入式操作系统的ARM处理器,在图形界面显示和网络传输 方面有较大的优势,如果将FPGA实现的多路高速数据采集系统的采集结果交给 ARM处理器来实现波形显示或者网络传输,则只需要简单的软件编程即可实现。 
SoC FPGA作为一种在单一芯片上集成了FPGA和高性能处理器的新型芯片 架构,即拥有FPGA高速并行处理和灵活功能定制的优势,同时又拥有ARM处理 器实现灵活控制、图形界面显示和网络传输方面的优势。而且,这两者在芯片上并不是相互独立的存在,而是通过片上的高速互联架构有机的连接到了一起, FPGA采集的数据可以通过F2H Bridge桥直接写入到HPS侧的存储器中,然后由 HPS将数据读取,使用高级的图形界面编程工具,例如Mini GUI(Graphical User  Interface)或者Qt来设计图形界面并显示波形,也可以使用Web Server网络服务 器将数据组织起来并传递给远端计算机接收。  3.2.3 SoC FPGA架构相较于SOPC技术的优势 
为了解决单独的FPGA在灵活多变应用中的不足,在SoC FPGA技术推出之 前,各大FPGA厂家已经推广了有多年的SOPC(System-on-a-Programmable-Chip) 技术。和SoC FPGA不相同的是,SOPC是在单纯的FPGA芯片上使用FPGA的逻 辑和存储器资源搭建一个软核CPU系统,由该软核CPU实现所需处理器的完整功 能。最具代表性的就是Altera的NIOS II处理器和Xilinx的MicroBlaze处理器。 
由于是使用FPGA的通用逻辑搭建的CPU,因此具有一定的灵活性,用户可 以根据自己的需求对CPU进行定制裁剪,增加一些专用功能,例如除法或浮点运 算单元,用于提升CPU在某些专用运算方面的性能,或者删除一些在系统里面使 用不到的功能,以节约逻辑资源。另外也可以根据用户的实际需求,为CPU添加 各种标准或定制的外设,例如UART(Universal Asynchronous Receiver/Transmitter)、 SPI(Serial Peripheral Interface)、IIC(Inter-Integrated Circuit)等标准接口外设, 同时,用户也可以自己使用FPGA的逻辑资源,编写各种专用的外设,然后连接 到CPU总线上,由CPU进行控制,以实现软硬件的协同工作,在保证系统性能的 同时,增加了系统的灵活性。而且,如果单个的软核CPU无法满足用户需求,可 以添加多个CPU软核,搭建多核系统,通过多核CPU协同工作,让系统拥有更加 灵活便捷的控制能力和较强的运算处理能力。 
但是,由于CPU是使用FPGA的通用逻辑资源搭建的,相较使用经过布局布 线优化的硬核处理器来说,软核处理器够运行的最高时钟主频要低一些,而且也 会相应的消耗较多的FPGA逻辑资源以及片上存储器资源,因此SOPC方案仅适 用于那些对于数处理器整体性能要求不高的应用,例如整个系统的初始化配置, 人机交互,多个功能模块间的协调控制等功能。 
从架构的角度来说,SOPC和SOPC FPGA是统一的,都是由FPGA部分和处 理器部分组成。在SoC FPGA中,嵌入的是ARM公司的Cortex-A9硬核处理器, 简称HPS(Hardware Processor System),而SOPC技术中,嵌入的是NIOS II软核处 理器,两者指令集不一样,处理器性能也不一样。Cortex-A9硬核处理器性能远远 高于NIOS II软核处理器。 

● CPU+NPU+GPU

-CPU: Rockchip RK3568, Quad-Core ARM Cortex-A55, up to 2.0GHz

-NPU: 1.0 TOPS

-GPU: Mali-G52

● 4 x GbE LAN

(扩展方案可选:①可选4 x GbE电口;②可选2 x GbE电口+2 x 百/千兆光口)

● 8 x RS232/RS485 / 16 x RS232/RS485

● 1 x M.2 B-Key, 1 x M.2 M-Key

● 1 x MPCle (w/USB2.0)

● 4 x DO继电器应用 (常开/常闭可选), 4 x DI (NPN/PNP可选), 2KV隔离

● 2 x USB2.0 HOST Type-A

● 1 x USB OTG internal (用于系统烧录和调试)

● 双电源设计: AC/DC 220V input

● OS: Debian10 server

硬件平台

处理器

-CPU: Rockchip RK3568, Quad-Core ARM Cortex-A55, up to 2.0GHz

-NPU: 1.0 TOPS

-GPU: Mali-G52

内存

4GB LPDDR4 (可扩展至8G)

存储

32GB eMMC 5.1(可扩展至64G)

接口类型

USB

2 x USB2.0 host, type-A

网口

2 x GbE port by RJ45 with YT8531C Controller WOL - LAN1/LAN2

2 x GbE port by RJ45 with YT6801 WOL - LAN3/LAN4

两种扩展方案可选:

①4 x 电口扩展板 (RJ45, w/LED, 10/100/1000M自适应)

②2 x 电口 (RJ45, w/LED, 10/100/1000M自适应)+2 x 100/1000Base光口

M.2

1 x M.2 B-Key 3042/3052 USB3.0,for 4G/5G

1 x M.2 M-Key 2242/2280 SATA,for Storage

MPCIE1 x MPCIE (w/USB2.0), 支持WIFI/BT

SIM

1 x 1.8V/3V SIM/UIM卡

串口

8 x RS232/RS485, 凤凰端子接口, 9600~115200Kbps, 2KV光电隔离

1 x RS232/GPIO/电源, 2 x 4 Pin header, PH=2.54mm 母座 (COMx), 内部连接

1 x UART, TTL for Debug

DI/DO

4 x DI,干节点,2.5KV光电隔离

4 x DO,继电器输出,默认常开输出

CAN

2 x CAN 2.0 A/B

2 x CAN FD by MPCIE--可选

电源接口

2 x 220V AC/DC,凤凰端子,电源模块支持交直流冗余输入

交流:AC220V±20%

直流:DC110/220V±20%

支持远程重启

复位键1 x 复位键,恢复远程端口IP
USB OTG1 x USB OTG,用于系统烧录
LEDPower / RUN / LAN / COM / user define
B码对时1 x TTL

Display

HDMI1 x HDMI, Up to 4096 x 2304@60Hz

物理特性

结构外框铁壳 (SECC),铁件烤漆,烤漆黑色工艺,铝散热片,阳极原色
安装方式Rack mount
尺寸1U, 444(L) * 255(W) * 44mm(H)

工作温度

-20~60°C

储存温度

-40~70°C

相对湿度

5 to 95%@ 40˚C, non-condensing

认证Meet CE/FCC Class A

系统

OS

Debain 10 Server

===============四网口方案==========

 ● 工业级设计,金属外壳,无风扇控制器

● Rockchip瑞芯微 RK3568,基于ARM架构的四核Cortex-A55处理器,主频最高可达2.0GHz

● 4GB DDR4,最高支持8GB

● 4 x GbE LAN

● 8 x RS485(2KV 隔离)

● 5 x DI 干接点,NPN/PNP 可选,2KV 光电隔离

● 5 x DI 湿接点,NPN/PNP 可选,2KV 光电隔离

● 4 x DO,继电器应用,常开/常闭可选,2KV 光电隔离

● 1 x M.2 B-Key、1 x M.2 E-key、1 x M.2 M-Key

● 操作系统:Debain 11 Server

硬件平台

处理器

Rockchip瑞芯微 RK3568 4核ARM Cortex-A55处理器,主频最高可达2.0GHz

内存

4GB DDR4 (可扩展至8G)

存储

32GB eMMC 5.1(可扩展至64G)

接口类型

USB

2 x USB2.0 host, type-A

网口

4 x GbE LAN by RJ-45

M.2

1 x M.2 B-Key 3042/3052 内部 (w/USB3.0),支持 4G/5G

1 x M.2 M-Key (SATAIII),2242/2280,支持SATA SSD

1 x M.2 E-Key (SDIO/UART/PCIe),2230,支持无线/蓝牙

SIM

1 x 1.8V/3V SIM/UIM卡

串口8 x RS485,凤凰端子接口,波特率范围9600~115200Kbps,2KV光电隔离
DI/DO

5xDI 干接点,2KV 光电隔离

5xDI 湿接点,2KV 光电隔离

4xDO 常开/常闭可选,2KV 光电隔离

CAN2 x CAN 2.0 A/B
复位键1 x 复位键,恢复远程端口IP
USB OTG1 x USB OTG,用于系统烧录

功耗

供电范围DC 9~36V

物理特性

工作温度

-20~60°C

储存温度

-30~70°C

相对湿度

10~90%

系统

OS

Debain 11 Server、Ubuntu20.04

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/61200.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ASP.NET Core Webapi 返回数据的三种方式

ASP.NET Core为Web API控制器方法返回类型提供了如下几个选择&#xff1a; Specific type IActionResult ActionResult<T> 1. 返回指定类型&#xff08;Specific type&#xff09; 最简单的API会返回原生的或者复杂的数据类型&#xff08;比如&#xff0c;string 或者…

ROS机器视觉入门:从基础到人脸识别与目标检测

前言 从本文开始&#xff0c;我们将开始学习ROS机器视觉处理&#xff0c;刚开始先学习一部分外围的知识&#xff0c;为后续的人脸识别、目标跟踪和YOLOV5目标检测做准备工作。我采用的笔记本是联想拯救者游戏本&#xff0c;系统采用Ubuntu20.04&#xff0c;ROS采用noetic。 颜…

主机型入侵检测系统(HIDS)——Elkeid在Centos7的保姆级安装部署教程

一、HIDS简介 主机型入侵检测系统(Host-based Intrusion Detection System 简称:HIDS);HIDS作为主机的监视器和分析器,主要是专注于主机系统内部(监视系统全部或部分的动态的行为以及整个系统的状态)。 HIDS使用传统的C/S架构,只需要在监测端安装agent即可,且使用用户…

Django启用国际化支持(2)—实现界面内切换语言:activate()

文章目录 ⭐注意⭐1. 配置项目全局设置&#xff1a;启用国际化2. 编写视图函数3. 配置路由4. 界面演示5、扩展自动识别并切换到当前语言设置语言并保存到Session设置语言并保存到 Cookie ⭐注意⭐ 以下操作依赖于 Django 项目的国际化支持。如果你不清楚如何启用国际化功能&am…

Springboot之登录模块探索(含Token,验证码,网络安全等知识)

简介 登录模块很简单&#xff0c;前端发送账号密码的表单&#xff0c;后端接收验证后即可~ 淦&#xff01;可是我想多了&#xff0c;于是有了以下几个问题&#xff08;里面还包含网络安全问题&#xff09;&#xff1a; 1.登录时的验证码 2.自动登录的实现 3.怎么维护前后端…

Vue3 虚拟列表组件库 virtual-list-vue3 的使用

Vue3 虚拟列表组件库 virtual-list-vue3 的基本使用 分享个人写的一个基于 Vue3 的虚拟列表组件库&#xff0c;欢迎各位来进行使用与给予一些更好的建议&#x1f60a; 概述&#xff1a;该组件组件库用于提供虚拟化列表能力的组件&#xff0c;用于解决展示大量数据渲染时首屏渲…

利用云计算实现高效的数据备份与恢复策略

&#x1f493; 博客主页&#xff1a;瑕疵的CSDN主页 &#x1f4dd; Gitee主页&#xff1a;瑕疵的gitee主页 ⏩ 文章专栏&#xff1a;《热点资讯》 利用云计算实现高效的数据备份与恢复策略 利用云计算实现高效的数据备份与恢复策略 利用云计算实现高效的数据备份与恢复策略 引…

基于 PyTorch 从零手搓一个GPT Transformer 对话大模型

一、从零手实现 GPT Transformer 模型架构 近年来&#xff0c;大模型的发展势头迅猛&#xff0c;成为了人工智能领域的研究热点。大模型以其强大的语言理解和生成能力&#xff0c;在自然语言处理、机器翻译、文本生成等多个领域取得了显著的成果。但这些都离不开其背后的核心架…

SpringCloud多机部署,负载均衡-LoadBalance

一.负载均衡 1.1问题描述 //根据应用名称获取服务列表 List<ServiceInstance> instancesdiscoveryClient.getInstances("product-service"); //一个微服务可能有多个实例&#xff0c;获取第一个 EurekaServiceInstance instance(EurekaServiceInstance)insta…

聊聊Flink:Flink中的时间语义和Watermark详解

该篇主要讲Flink中的时间语义、Flink 水印机制以及Flink对乱序数据的三重保障。 一、Flink的三种时间语义 1.1 Event Time Event Time指的是数据流中每个元素或者每个事件自带的时间属性&#xff0c;一般是事件发生的时间。由于事件从发生到进入Flink时间算子之间有很多环节&…

CSS基础选择器与div布局

基础选择器一 全局选择器 可以与任何元素匹配&#xff0c;优先级最低&#xff0c;不推荐使用 *{margin: 0;padding: 0;}元素选择器 HTML文档中的元素&#xff0c;p、b、div、a、img、body等。 标签选择器&#xff0c;选择的是页面上所有这种类型的标签&#xff0c;所以经常…

npm上传自己封装的插件(vue+vite)

一、npm账号及发包删包等命令 若没有账号&#xff0c;可在npm官网&#xff1a;https://www.npmjs.com/login 进行注册。 在当前项目根目录下打开终端命令窗口&#xff0c;常见命令如下&#xff1a; 1、登录命令&#xff1a;npm login&#xff08;不用每次都重新登录&#xff0…

ODC 如何精确呈现SQL耗时 | OceanBase 开发者工具解析

前言 在程序员或DBA的日常工作中&#xff0c;编写并执行SQL语句如同日常饮食中的一餐一饭&#xff0c;再寻常不过。然而&#xff0c;在使用命令行或黑屏客户端处理SQL时&#xff0c;常会遇到编写难、错误排查缓慢以及查询结果可读性不佳等难题&#xff0c;因此&#xff0c;图形…

华为USG5500防火墙配置NAT

实验要求&#xff1a; 1.按照拓扑图部署网络环境&#xff0c;使用USG5500防火墙&#xff0c;将防火墙接口加入相应的区域&#xff0c;添加区域访问规则使内网trust区域可以访问DMZ区域的web服务器和untrust区域的web服务器。 2.在防火墙上配置easy-ip&#xff0c;使trust区域…

三角波生成函数

% 设置时间范围和采样频率 t 0:0.01:2; % 时间从0到2秒&#xff0c;步长为0.01秒% 定义频率 f 和角频率 theta f 5; % 频率为5Hz theta 2 * pi * f * t;% 初始化输出向量 y zeros(size(t));% 根据给定的公式计算 y for k 1:fy y (-1)^(k-1)*(2 /(k * pi)) * sin(k * the…

Lc70--319.两个数组的交集(二分查找)---Java版

1.题目描述 2.思路 用集合求交集&#xff0c;因为集合里面的元素要满足不重复、无序、唯一。使得集合在去重、查找和集合操作&#xff08;如交集、并集、差集等&#xff09;中非常高效和方便。 3.代码实现 class Solution {public int[] intersection(int[] nums1, int[] nu…

操作系统实验 C++实现生产者-消费者问题

实验目的 1、进一步加深理解进程同步的概念 2、加深对进程通信的理解 3、了解Linux下共享内存的使用方法 实验内容 1、按照下面要求&#xff0c;写两个c程序&#xff0c;分别是生产者producer.c以及customer.c 2、一组生产者和一组消费者进程共享一块环形缓冲区 使用共…

无人机在森林中的应用!

一、森林资源调查 无人机可以利用遥感技术快速获取所需区域高精度的空间遥感信息&#xff0c;对森林图斑进行精确区划。相较于传统手段&#xff0c;无人机调查具有低成本、高效率、高时效的特点&#xff0c;尤其在地理环境条件不好的区域&#xff0c;调查人员无法或难以到达的…

Android学生信息管理APP的设计与开发

1. 项目布局设计 页面1&#xff1a;学生信息添加页面 采用线性布局&#xff0c;页面中控件包含TextView、editView、Button等。 布局核心代码如下&#xff1a; <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http…

AI(12)-飘带

1.【钢笔工具】画第一条曲线 2.【钢笔工具】画第二条曲线 3-全选两条曲线-【对象】-【混合】-【混合选项】-【指定的步数】-【15】 3-1-【对象】-【混合】-【建立】 4-双击打开【渐变工具】 4-1-【类型&#xff1a;线性】 4-2-点击切换【描边】在上方 4-3-关闭【填色】 4-4-点…