典型案例 | 基于全数字实时仿真的嵌入式DevOps解决方案

为丰富浙江省信息技术应用创新(以下简称“信创”)产业生态,在全社会各领域形成示范效应,浙江省经信厅联合省密码管理局开展2023年浙江省深化信创典型案例评选工作。

经过征集申报、专家评选、名单公示等程序,确定36个应用示范案例和24个典型解决方案。

         【典型解决方案】       

基于全数字实时仿真的嵌入式DevOps解决方案

案例概述

基于全数字实时仿真的嵌入式DevOps解决方案通过全数字实时仿真技术,为嵌入式软件提供自动化测试的运行环境,实现嵌入式DevOps,大大提高研发效率。方案集成了天目全数字实时仿真软件SkyEye,能完全仿真目标系统中对应的真实硬件,仿真效果可达1:1,甚至更好。工程师基于SkyEye构建的虚拟硬件运行被测软件,可获得在真实目标系统上运行这些软件的同等效果。通过集成SkyEye和其他各类持续集成工具,将SkyEye虚拟硬件与DevOps工作流紧耦合,集项目管理和流水线于一体,可应用于嵌入式软件开发的全生命周期,打造持续集成全链路一站式平台,使得用户构建、测试、发布软件能够更加便捷、频繁和可靠,节省研发成本、缩短产品上市周期。可用于各类嵌入式领域,如国防科工、工业、能源、交通、通信等领域。

应用场景图

路径优势

基于全数字实时仿真的嵌入式DevOps解决方案的技术特点和优势:

  • 高性能实时仿真。使用基于LLVM的动态二进制编译优化技术,突破了高性能的实时仿真技术,达到最高2000 MIPS的仿真性能,能够实现虚拟机和真机达到1:1的性能指标,从而降低硬件成本。
  • 支持云部署。支持Docker容器化部署,将配置无误的SkyEye环境封装到Docker,用户可直接加载Docker来运行仿真环境,使得本方案可以弹性部署在云平台上。
  • 支持适配各类持续集成工具。支持禅道、Jenkins、GitHub、极狐GitLab、GCC、Maven、Tornado、Workbench、Lambda、Testbed、CppTest、Junit、Sonarqube、Klocwork等,满足用户多样化定制需求,构建完整的嵌入式DevOps工作流。
  • 提高嵌入式软件开发效率。基于嵌入式虚拟机实现多种针对多核的调试手段,有效解决关键领域嵌入式系统中硬件性能越来越高、软件规模急剧上升、多核硬件的使用等情况给嵌入式调试工作带来的巨大挑战。同时利用分布式多核计算平台对系统仿真平台进行加速,使得嵌入式软件开发可与硬件设计同时开展,缩短整体研发周期。

该方案架构如下图所示。

方案架构图

推广价值

基于全数字实时仿真的嵌入式DevOps解决方案的推广价值主要如下:

  • 作为国内持续集成领域的首创方案,基于全数字实时仿真的嵌入式DevOps解决方案可主要应用于嵌入式系统软件的开发、测试阶段,能够解决嵌入式软件研发过程中过分依赖硬件而无法实现完整的DevOps工作流的问题,实现了嵌入式软件研发持续集成方法的突破,探索关键技术的信创化,从根本上提升了软件研发效率。可应用于多个涉及嵌入式软件研发的行业中,提供基于计算机的高效设计开发环境,解决高端装备软件开发和测试时硬件环境搭建成本高、资源调度难、研发周期长等问题。

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

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

相关文章

实现前端项目自动构建和部署(Gitee Go)

前言 相信所有的前端开发者都希望将自己的代码部署在服务器上让所有人都能访问到,但是却不知道如何进行部署。其实要是实现代码上线非常简单,我们只需要将build之后的代码上传到服务器,然后通过Nginx起一个服务指向我们build后的代码就可以了…

Cocos 7.2~7.4

这几天没更新CSDN,跑去玩Cocos了。自从知道我的粉丝百分之十之八九都是假人,更新确实没什么动力了。主要还是把这边当成一个日记本吧。 选择cocos的原因也很简单。会点js,技术栈比较接近,上手估计也快。简单记录下这几天的内容 主…

@amap/amap-jsapi-loader 实现高德地图中添加多边围栏,并可编辑,编辑后获得围栏各个点的经纬度

先上一张效果图 看看是不是大家想要的效果~ ❤️ 希望其中的小点能帮助大家,主要看怎么绘制在地图上的代码即可 1.第一步要加入项目package.json中或者直接yarn install它都可以 想必大家应该都会 "amap/amap-jsapi-loader": "0.0.7&qu…

C语言作业笔记

1. 要找俩个数使其相加等于一个数,那么俩个数从头尾出发,先动一边,假设是尾先动,一开始俩个数相加大于sum(小于的话就动头),那么总有一时刻俩数相加小于sum,则就在那一刻停下来&…

关于5G和卫星

手机,已经串联起了我们生活中的一切环节。我们随时随地拿出手机,都能畅快地上网。 这一切是如此地理所当然,以至于我们甚至想不到这样不可思议的问题: 移动通信网络真的无处不在吗? 我们都知道,地球虽叫…

毕业论文初稿写作方法与过程

毕业论文初稿写作方法与过程 毕业论文是大学生在学业结束前必须完成的一项重要任务,它不仅是对学生所学知识的综合运用,也是对学生研究能力和写作能力的检验。写好毕业论文初稿是完成高质量毕业论文的关键一步。下面将具体阐述毕业论文初稿的写作方法和过…

Redis 7.x 系列【18】事务

有道无术,术尚可求,有术无道,止于术。 本系列Redis 版本 7.2.5 源码地址:https://gitee.com/pearl-organization/study-redis-demo 文章目录 1. 概述2. 命令2.1 MULTI2.2 EXEC2.3 DISCARD2.4 WATCH2.5 UNWATCH 3. 事务中的错误4.…

无法识别为 cmdlet、函数、脚本文件或可运行程序的名称

一、遇到问题 PS D:\software\nacos\nacos-server-2.3.1\bin> startup.cmd -m standalone startup.cmd : 无法将“startup.cmd”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径, 请确保路径正确,然后…

Ubuntu su命令输入密码后提示“su: 认证失败”

在Ubuntu系统中,使用su命令切换到root用户时提示“su: 认证失败”通常是因为root账户默认情况下是被锁定的,没有设置密码。以下是一些解决这个问题的方法: 使用sudo命令:Ubuntu推荐使用sudo命令代替直接使用root用户。sudo命令允许…

Aavegotchi的Gotchiverse新地图: 沉睡的野兽即将苏醒!

Gotchi 守护者们,准备好了,因为我们要大开杀戒了! 加入我们吧(后果自负!),我们将深入Gotchiverse,前往奥姆夫山--我们虚拟世界中所有 FOMO 的炽热源头。 请继续阅读,了解…

AI 绘画的常用技巧和操作方法

随着人工智能技术的飞速发展,AI 绘画已经成为设计和艺术领域的一股新兴力量。无论是设计师、艺术家,还是普通的科技爱好者,都能通过 AI 绘画工具创造出令人惊叹的作品。 AI 绘画的基本原理 AI 绘画的核心在于机器学习算法。通过训练大量的图像…

餐饮界的新传奇:沃可趣员工社区,让品牌关怀在指尖流淌

咖啡师与顾客发生肢体冲突、员工用咖啡粉泼顾客……某精品咖啡一天爆出两个大瓜! 很快有网友指出咖啡店员工长期遭受重压,与品牌之间存在根本矛盾。 同样做餐饮的老牌快餐,门店密度与之不相上下,却很少发生这样的暴雷。 不仅因…

算法力扣刷题 三十一【150. 逆波兰表达式求值】

前言 栈和队列篇。 记录 三十一【150. 逆波兰表达式求值】 一、题目阅读 给你一个字符串数组 tokens ,表示一个根据 逆波兰表示法 表示的算术表达式。 请你计算该表达式。返回一个表示表达式值的整数。 注意: 有效的算符为 、-、* 和 / 。 每个操作…

Django创建项目(1)

运行 注意 在本次创建Django项目时,出现了一点小问题,由于我之前pip换源过,换源用的是http,结果在创建时,pip只支持https,所以如果出现创建项目失败的问题,那么有可能是因为换源的问题&#xf…

(三十一)Flask之wtforms库【剖析源码下篇】

每篇前言: 🏆🏆作者介绍:【孤寒者】—CSDN全栈领域优质创作者、HDZ核心组成员、华为云享专家Python全栈领域博主、CSDN原力计划作者 🔥🔥本文已收录于Flask框架从入门到实战专栏:《Flask框架从入…

AlphaGo 背后的人工智能:机器学习和神经网络

文章目录 一、说明二、背景三、围棋游戏四、AlphaGo 算法五、神经网络六、AlphaGo 的未来七、人工智能的未来八、结论 一、说明 棋盘游戏围棋被视为人工智能最具挑战性的任务之一,因为它“复杂、基于模式且难以编程”。计算机程序 AlphaGo 战胜李世石成为人工智能和…

Redis 五大数据类型底层原理

0、前言 本文涉及的主题: redis 对象存储 底层数据结构:int、embstr、raw、ziplist、listpack、quicklist、skiplist、intset、hashtable redis 数据类型:string、list、set、zset、hash 1、对象存储、底层编码、数据类型 1.1 对象存储…

14-23 深度神经网络的主要架构(RNN/LSTM/CNN)

神经网络架构 神经网络的架构决定了这些网络如何运行,这是执行各种任务和扩展神经网络应用的关键因素,主要有两种方法:前馈神经网络和反馈神经网络。在本文中,在彻底分析每种方法之后,我们将对这两种架构进行深入比较…

规则·理解·成长:与自闭症儿童共绘记忆蓝图

在星贝育园,作为专注于自闭症儿童康复的专业教育者,我们常常遇到家长的疑惑:“为什么我的孩子总是记不清楚规则?”这个问题触及了自闭症谱系障碍(ASD)儿童在理解与遵守规则方面面临的独特挑战。下面&#x…

每日一题——Python实现PAT乙级1005 继续(3n+1)猜想(举一反三+思想解读+逐步优化)五千字好文

一个认为一切根源都是“自己不够强”的INTJ 个人主页:用哲学编程-CSDN博客专栏:每日一题——举一反三Python编程学习Python内置函数 Python-3.12.0文档解读 目录 我的写法 代码逻辑概述 时间复杂度分析 空间复杂度分析 总结 我要更强 代码优化点…