0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

通过实时加速器技术实现实时应用程序的 Windows

盟通科技 2024-01-29 16:03 次阅读

概述

如今,越来越多的应用,特别是在工业自动化、医疗技术、数据采集和测量技术等领域,都需要确定性的实时行为。acontis实时加速器技术(RtaccWin)使您能够在Windows下运行具有确定性的硬实时功能应用程序。这是通过专门为实时应用程序保留一个或多个CPU来实现的,设置 Windows 适当的参数化并利用 acontis 内核驱动程序进行精确定时和直接硬件访问。

01

软件架构

基于Windows IoT Enterprise的PC可以从acontis的RtaccWin软件中受益,以保证在1毫秒的周期时间中运行稳定的实时应用程序。原则上,还可以实现更快的周期时间。为了实现这一点,至少保留一个CPU专门用于实时应用程序,而其他CPU则于标准的Windows应用程序。

RtaccWin 包括一个Windows系统驱动程序,可为整个应用程序提供精确且可调节的时钟。为了确保确定性行为,标准Windows驱动程序通常不用于实时应用程序。相反,RtaccWin中的内核驱动程序允许从 Windows 用户模式直接访问硬件,例如网卡、现场总线卡等,从而降低抖动、显著降低CPU利用率并具有确定性行为。还允许在不使用Windows网络堆栈的情况下发送和接收以太网帧,并且在并行使用其他网络接口时不会产生不利影响。

v2-8e4b2aa0c3f7a3afc261aad861ca9938_720w.webp?source=d16d100b

02

配置工具:RtaccWinConfig

软件配置工具 RtaccWinConfig用于为实时应用程序准备Windows系统。首先,它至少隔离了一个CPU,这也意味着常规 Windows进程和服务不会再使用该CPU。这样,隔离的CPU就能专门用于实时应用程序。

v2-53f9fa4f0ea89fd8bfc591c877b55037_720w.webp?source=d16d100b

RtaccWinConfig工具的另一个功能是为实时应用程序分配硬件。这意味着常规的 Windows 驱动程序已经卸载,可以从 Windows 用户空间访问硬件。acontis内核驱动程序可以快速、直接地访问已分配硬件的所有内存区域。

v2-7bb28e404712141f66cf26ab79d8a4b1_720w.webp?source=d16d100b

03

软件开发

开发实时应用程序的过程类似于标准Windows应用程序开发的过程。以下是要遵循的步骤:

1、使用RtaccWinConfig工具设置系统
2、为实时任务创建一个或多个线程
3、将这些线程分配给先前隔离的CPU
4、为线程分配一个非常高的优先级,使它们成为“实时线程”
5、可选择通过acontis Windows系统驱动程序生成一个稳定而精确的时钟


一个Windows 进程可以包括“非实时线程”和“实时线程”。这两种线程类型都可以访问全局变量并使用标准同步机制,如事件、关键部分、互斥锁和信号量。常用的 Win32 API 也可在“实时线程”中使用。您可以在整个开发过程中使用Microsoft Visual Studio的全部功能。在调试模式下,所有线程都可以访问所有资源。当然,您也可以在没有实时行为的情况下逐步执行“实时线程”。

v2-de8e5dad66e29ee8bd92fdede10ea4a0_720w.webp?source=d16d100b

04

性能

一个稳定、精确、低抖动的时钟对于实时应用是至关重要的,特别是对于每毫秒执行一次的控制循环。理想情况下,应用程序应该每1000微秒精确触发一次,但在实践中可能会出现偏差,导致间隔或长或短。在使用acontis 实时加速器技术时,这些偏差(也称为抖动)可以在 Windows 下显著减少。

RtaccWinConfig 软件工具可以测量具有特定周期时间的隔离CPU性能。最大和最小偏差值可以用图形显示。允许的最大抖动取决于应用程序,在通常情况下,可以接受高达周期时间10%的偏差。例如,周期时间为1000微秒时,最小值应不小于900微秒,最大值不应大于1100微秒。

如果没有实时加速器技术,周期时间可能会大幅波动。8小时后,在运行Windows IoT的Minis Forum U820(i5-8279U CPU)上进行了测试,并大量加载Passmark老化测试,结果显示有明显的波动。

v2-a448061a89b1585abcdd8036bfb25de8_720w.webp?source=d16d100b

启用实时加速器技术可以保证时钟的精确度同时误差最小,在8小时后的同一系统上进行的测试证明了这一点。

v2-2e6d2d2fb289e090068f758055b1e3ce_720w.webp?source=d16d100b

05

特征

1、微秒级的快速响应时间

2、硬实时与实时加速器技术使用CPU隔离

3、在一个独立的CPU的一个进程中实现实时功能和标准功能

4、RtaccTimer驱动程序生成精确,稳定的时钟

5、RtaccDevice驱动程序,可以直接访问硬件无需内核驱动程序

6、 合适的配置工具RtaccWinConfig

06

优势

1、实时应用程序可以像普通的Windows应用程序一样开发

2、标准Win32 API也可用于实时线程中

3、支持Microsoft Visual Studio。方便开发和调试整个实时应用程序。

4、通过变量进行简单的数据交换。不需要在应用程序的实时和非实时部分之间进行复杂的通信

5、操作简单,培训工作量低

系统要求

Windows 10 IoT 企业版或 Windows 11 IoT 企业版
• 四核CPU


北京盟通科技有限公司成立于2013年,是工业自动化领域的高新技术企业。公司专注于实时现场总线技术及工业通讯技术的研发、推广及技术支持服务。依托于核心团队多年的海外和行业经验,盟通科技与欧洲多家自动化领域的佼佼者达成战略合作关系,为客户提供EtherCAT主站协议栈、OPC UA SDK软件开发包、CANopen协议栈、FSoE协议软件、CAN总线硬件、DINA安全模块、艾默生Connext软件等工业协议的标准和定制化产品

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 软件开发
    +关注

    关注

    0

    文章

    555

    浏览量

    27177
  • 加速器
    +关注

    关注

    2

    文章

    743

    浏览量

    36600
  • WINDOWS
    +关注

    关注

    3

    文章

    3440

    浏览量

    87144
  • 实时操作系统

    关注

    1

    文章

    184

    浏览量

    30516
收藏 人收藏

    评论

    相关推荐

    请问如何给STM32MP157上Linux5.4.31打实时内核补丁?

    我这边想给STM32MP157芯片A7上面的Linux打实时内核补丁,从而运行一些对实时性要求较高的应用程序。我看到我的Linux内核版本是5.4.31的。然而,Linux内核官方网站上面找不到这个
    发表于 03-11 06:09

    粒子加速器加速原理是啥呢?

    粒子加速器加速原理是啥呢? 粒子加速器是一种重要的实验设备,用于研究粒子物理学、核物理学等领域。其主要原理是通过电场和磁场的作用,对带电粒子进行
    的头像 发表于 12-18 13:52 898次阅读

    在CCES环境下如何使用21489的IIR加速器

    在VDSP++的环境下程序已经实现,但是到了CCES下,把中断初始化函数修改了,还是无法正确配置中断,直接返回IIR的中断初始化失败,请问CCES下怎么使用IIR加速器
    发表于 11-30 08:20

    21489的IIR加速器滤波参数设置如何对应加速器的滤波参数?

    目前在用21489内部的IIR加速器去做一个低通滤波,在例程的基础上修改参数。通过平板的fda 工具工具去设计参数,但是设计出来的参数不知道如何对应加速器的滤波参数,手册里也看得不是
    发表于 11-30 08:11

    PCIe在AI加速器中的作用

    从线上购物时的“猜你喜欢”、到高等级自动驾驶汽车上的实时交通信息接收,再到在线视频游戏,所有的这些都离不开人工智能(AI)加速器。AI加速器是一种高性能的并行计算设备,旨在高效处理神经网络等AI工作负载并提供近乎
    的头像 发表于 11-18 10:36 1232次阅读
    PCIe在AI<b class='flag-5'>加速器</b>中的作用

    《 AI加速器架构设计与实现》+第2章的阅读概括

    首先感谢电子发烧友论坛提供的书籍和阅读评测的机会。 拿到书,先看一下封面介绍。这本书的中文名是《AI加速器架构设计与实现》,英文名是Accelerator Based on CNN Design
    发表于 09-17 16:39

    Rapanda流加速器-实时流式FPGA加速器解决方案

    电子发烧友网站提供《Rapanda流加速器-实时流式FPGA加速器解决方案.pdf》资料免费下载
    发表于 09-13 10:17 0次下载
    Rapanda流<b class='flag-5'>加速器</b>-<b class='flag-5'>实时</b>流式FPGA<b class='flag-5'>加速器</b>解决方案

    MA35D1系列微处理实时处理器( RTP) 的自测试库分享

    应用程序: 此示例代码是MA35D1系列微处理实时处理器( RTP) 的自测试库。 此库执行芯片的自测试功能, 以满足市场要求的安全要求。 当芯片出现错误时, 可以实时检测, 系
    发表于 08-29 07:04

    华秋硬创联合安创加速器加速和创新赋能技术驱动型创业者

    167亿,获2轮及以上融资的企业占比达54%。 02****生态伙伴介绍:安创加速器 **安创加速器作为Arm全球唯一加速器,依托于Arm全球庞大的生态系统资源及行业领先的技术,**
    发表于 08-18 14:37

    Microsoft SQL应用程序加速带闪存技术加速

    电子发烧友网站提供《Microsoft SQL应用程序加速带闪存技术加速.pdf》资料免费下载
    发表于 08-04 10:18 0次下载
    Microsoft SQL<b class='flag-5'>应用程序</b><b class='flag-5'>加速</b>带闪存<b class='flag-5'>技术</b><b class='flag-5'>加速</b>

    Intel媒体加速器参考软件用户指南

    英特尔媒体加速器参考软件是用于数字标志、交互式白板(IWBs)和亭位使用模型的参考媒体播放应用软件,它利用固定功能硬件加速来提高媒体流速、改进工作量平衡和资源利用,以及定制的图形处理股(GPU)管道解决方案。该用户指南将介绍和
    发表于 08-04 07:07

    OneInstall Windows驱动程序应用程序

    电子发烧友网站提供《OneInstall Windows驱动程序应用程序.exe》资料免费下载
    发表于 07-28 14:25 0次下载
    OneInstall <b class='flag-5'>Windows</b>驱动<b class='flag-5'>程序</b>和<b class='flag-5'>应用程序</b>

    【书籍评测活动NO.18】 AI加速器架构设计与实现

    NPU架构合二为一,总结并提炼出本书内容。本书主要讨论神经网络硬件层面,尤其是芯片设计层面的内容,主要包含神经网络的分析、神经网络加速器的设计以及具体实现技术通过阅读本书,读者可以深
    发表于 07-28 10:50

    CDN和Web加速器之间的区别

    CDN和web加速器之间的关键区别在于,前者是一种大型、地理位置分散的网络,而后者是一种技术。它们本身不是网络。它们是安装在系统、设备或ISP上的单个代理服务器。 尽管在概念上,web应用程序
    的头像 发表于 06-29 16:20 439次阅读

    微控制器实时操作系统实践—实时系统介绍

    实时系统有各种各样的实现方式和使用情况。本书的重点是如何使用实时操作系统(RTOS)在微控制器单元(MCU)上创建实时应用程序
    发表于 06-15 17:21 898次阅读
    微控制器<b class='flag-5'>实时</b>操作系统实践—<b class='flag-5'>实时</b>系统介绍