精华内容
下载资源
问答
  • OneSpin 360™2020.2.0版本已准备就绪,该版本包括功能和性能方面的改进。新增与增强的功能有: ● 新的编译器和优化程序:这些改进了工具所有部分的性能,包括更快的工具启动,设计编译和GUI交互。 ● 新的FSM...

    在这里插入图片描述

    Onespin是领先的EDA解决方案提供商,其360系列产品为FPGA形式化验证工具。它以强大、高性能的形式化验证引擎为基础,能够覆盖自动设计分析到高级属性检查以及逻辑等效性验证,帮助构建功能正确,安全,可靠、可信赖的系统。

    OneSpin 360™2020.2.0版本现已准备就绪,该版本包括功能和性能方面的改进。新增与增强的功能有:

    ● 新的编译器和优化程序:这些改进了工具所有部分的性能,包括更快的工具启动,设计编译和GUI交互。

    ● 新的FSM指示器:如下所示,此新指示器提供了更高级的界面来调试和理解FSM。它允许按状态过滤状态,并且能够交互式地自定义状态布局。

    在这里插入图片描述

    ● 新的形式化引擎:新引擎在履行设计限制的同时,其行为就像是随机模拟器。它可以很好地按顺序解决深度属性,并且在某些属性上已证明比现有引擎快300倍以上。与以前的默认引擎设置相比,它还可以在属性检查上并行运行,可检查的属性数量增加了10倍以上。

    ● 对SystemC附加构造的支持:扩展的构造支持包括自动插入等待状态以打破循环。

    新版发行的具体内容如下:

    OneSpin 360™常用功能的新功能

    ▷ 支持VHDL物理类型“时间”。
    ▷ SystemVerilog类支持已得到改进。
    ▷ SystemC现在支持C++ 14,包括std::array和std::tuple。所有从C++到14的语法改进,例如SCIN < ScIt< 10 >的双角括号也可用。
    ▷ 大大提高了编译命令的运行时间,运行效率的改善高达几个数量级。

    图形用户界面中的新功能

    ▷ 从2020.2版本开始,FSM表中的状态可使用拖放手势。手势生成的是所有onespin shell命令可接受状态的字符串类型名称。

    ▷ 通过上下文菜单功能增强了属性调试器。自该版本发布以来,信号可以被跟踪,添加到波形中或在其他查看器中显示。

    ▷ 从此版本开始,打开代码查看器后,调试器的响应能力明显包括了新的触发器类别。信任问题管理器中的问题现在可以从视图中排除与/或导出到CSV。状态机的死锁情况现在会在信任问题管理器中报告。

    OneSpin 360™设计验证的新功能

    ▷ 新的随机模拟引擎:disprover6。这个新引擎已添加到用于坚持和整数检查的默认配置中。也可以添加到prove配置中。例如:“check -prover_exec_order {{approver2 disprover6}} my_property”。

    ▷ 现在可以直接创建SVA模块,而无需使用create_sva_module -no_read_sva读取。

    ▷ 改进了截断和固定溢出检查的显示名称。例如:“ @ truncation @@ / local/TEST/dut.sv@16:1”到“ truncation_check_1”。

    ▷ 覆盖关闭加速器(CCA)应用程序已增强了与受支持模拟器的集成。

    ▷ FPU应用程序现在支持生成溢出异常以转换为整数。

    ▷ 处理器架构和验证应用已发布。

    ▷ 信任评估平台(TAP)应用程序具有以下增强功能:默认情况下,不会报告冗余分配带来的可靠性问题。运行analyze_trust -category reliability_assign指令以观察问题。信任问题管理器现在已自动启动。如果查看器关闭,则可以使用launch_trust启动报告视图,新命令export_trust可以用于生成CSV文件以进行脱机处理/分析,analytics_trust包括新的触发器类别。可以将信任问题管理器中的问题排除在视图之外与/或导出到CSV。

    360 EC-FPGA的新功能

    ▷ OneSpin 360™现在包括针对以Max 10目标器件为目标的Quartus Prime Standard™实施流程的全面综合验证支持。

    ▷ 通过Virtex、Kintex和Zynq系列芯片对Xilinx Vivado的综合验证支持现在包括对状态的自动映射,其中Xilinx Vivado™生成的netlist名称依赖于分配的范围。此外,OneSpin 360™ 现在已经改进了分布式ram的状态映射,比如RAM32M和RAM64M内存块。

    ▷ OneSpin 360™的新指令analytics_clock_mapping,可通过查找映射到非时钟的时钟来帮助用户确定错误的设计设置。

    ▷ OneSpin 360™具有一项新功能,实现相同功能的映射RAM会被自动黑盒,这是一个抽象的概念,它可以显著提高可伸缩性。

    ▷ OneSpin 360™现在提供工具认证套件与实施流一起使用,该实施流是基于Synopsys Synplify™(G-2012.09A-SP4版本)进行合成和MicroChip Libero IDE™(9.2版本)反熔丝芯片(SX-A™、eX™、MX™和Axcelerator™系列)。

    OneSpin 360™常用功能的已修复问题

    ▷ 修正了在调整FSM表格的大小期间可能偶尔发生的显示问题。

    ▷ 修复了一些窗口可能被缩小为零的问题。现在,所有窗口和选项卡都具有最小尺寸。

    ▷ 新的FSM可视化GUI。更好的FSM气泡默认设置以及交互式重新排序。可用的过滤器可以更好地可视化状态。

    局限性

    ▷ Windows版本不支持OneSpin 360 DV的并行验证。这意味着尽管验证器并行工作,但不支持多个断言的并行运行(set_ check_option -local_processes)。也不支持通过网络进行证明分布(set_ check_option -parallel network)。这些选项被接受但被忽略。此外,Windows版本不支持GUI中的HTML选项卡。对于生成HTML输出的应用程序,如quantify或visualize_fsm,需要一个外部浏览器。

    ▷ 由于Windows平台上不存在Verdi™,因此Windows版本不支持在Verdi中进行调试或从FSDB读取初始状态。

    ▷ 如想要在Windows上验证SystemC,需进行64位Cygwin的最新版本安装。此外,软件包mingw64-x86_64-gcc-g ++必须安装在7.4.0版本中。

    ▷ 如在Linux系统上验证SystemC,必须安装软件包libstdc +±devel。

    -版权所有,抄袭必究-

    更多信息:http://www.softtest.cn/

    展开全文
  • 总共进 8 万行代码实现H5可视构建工具,自去年十月开始陆续做了大半年,已投入到业务中使用,虽然算是个人项目,但组件和部署模块涉及大量公司业务代码,就不开源了,主要讲讲实现思路,算是该项目的回顾总结,...

    前言

    总共进 8 万行代码实现H5可视化构建工具,自去年十月开始陆续做了大半年,现已投入到业务中使用,虽然算是个人项目,但组件和部署模块涉及大量公司业务代码,就不开源了,主要讲讲实现思路,算是该项目的回顾总结,将核心难点、重点做拆分解析,拆分成系列不定期更新

    成品图

    动图太大,可以点击链接查看

    技术栈

    • 前端 Vue-CLI3 全家桶、Electron、Graphql、Typescript、Stylus、Vuetify
    • 后端 Koa2、Graphql、Nuxt、MongoDB

    为什么需要 H5 可视化构建工具

    互联网行业运营需求频繁,而且需求周期短,往往只有1、2天开发时间,放在项目里既拖慢整体编译效率,同时又没有任何意义,基本上都是当月作废,同时对开发者本身没有任何提升,重复劳动,我们要做的就是通过工程的方式解放生产力,由运营同学自己完成活动页上线,而不再需要开发资源

    确定产品原型

    • 提供可视化编辑的控制台生成Vue SFC源码
    • 可以对已生成的页面进行管理(编辑,上下线)
    • 控制台提供自上而下的单列布局适配移动端H5,简化操作逻辑
    • 添加的组件可编辑属性、样式、事件回调
    • 易于扩展的组件注册机制

    这是我早期画的原型图,原谅我拙劣的画图能力,看看就好

    接下来,我们对第一个会遇到的难点进行解析

    如何尽可能模拟移动端真实环境

    方案一:通过子组件实现模拟

    • 优点:实现简单,并且作为子组件,状态和行为完全受父组件控制
    • 缺点:由于处于同一个window上下文,子组件的内容会被全局样式污染,难以保证与实机一致,同时 UA和rem等相对尺寸会失效

    方案二: 通过iframe创建独立的window上下文来模拟

    • 优点:iframe包含完整的HTML代码,拥有独立的上下文,可以尽可能的模拟移动端环境
    • 缺点:数据不共享,只能通过PostMessage机制进行通信

    对于方案一,没有独立的window上下文,缺陷是不可逆的,而方案二除了通信困难,其他近乎完美,数据不共享的问题我们可以通过实现StateSync机制来实现,我们这里选择方案二,那如何实现StateSync呢?

    这里只需要三个步骤

    1. 首先我们把页面编辑所需要的所有数据都提升到Vuex做全局存储
    2. 监听store中所有的数据变化

    实现监听store的伪代码:

    const store = new Vuex.Store({
        state:{
            // 页面数据
            // ...
        },
        mutations:{
            //...
        },
    });
    
    // !由于mutation是Vuex中最小的提交粒度,所以只需要监听mutation就可以监听所有的数据变动
    store.subscribe((mutation, state) => {
    
        // 数据发送
        // do someting ...
    });
    复制代码

    重点来了

    1. 当触发mutation时将整个Vuex Module State 通过PostMessage发送给对方(主窗口/iframe)

    数据流走向图:

    // 主窗口代码
    
    // 监听来自iFrame的数据推送
    window.addEventListener("message", (event) => {
    
       // 将iFrame推送的数据做同步操作
       store.dispatch(STATE_SYNC, event.data);
    });
    
    
    store.subscribe((mutation, state) => {
    
        // 这里我们要避免出现死循环,忽略掉来自 THREAD_STATE_SYNC 的提交
        if (mutation.type.includes(THREAD_STATE_SYNC)) return;
        
        // 主窗口数据变动时同步至iframe
        iframe.contentWindow.postMessage(state);
    });
    
    复制代码
    // iframe 代码
    
    
    window.addEventListener("message", (event) => {
    
       // 将iFrame推送的数据做同步操作
       store.dispatch(STATE_SYNC, event.data);
    });
    
    
    store.subscribe((mutation, state) => {
    
      if (mutation.type.includes(THREAD_STATE_SYNC)) return;
      
      // 副线程发送
      window.parent.postMessage(state);
    });
    
    复制代码

    至此,我们完成了主窗口到iframe的数据自动同步,保证了数据的一致性同时,尽可能的模拟了移动端的真实特性,为我们的H5可视化编辑器打好基础,下一期我会开始讲如何实现UI组件库和可视化编辑器解偶,实现无痛迭代UI组件库和最大化复用UI组件

    下一期

    深入解析 H5 可视化构建工具原理(二) 如何实现外部组件注册机制

    最后

    第一次正儿八经的写文章,可能想表达的东西没写清楚,有问题大家可以在评论区留言,顺便最近在找工作,有在杭州滨江附近好的就业机会请联系我的微信:wxdreams,十分感激

    转载于:https://juejin.im/post/5ce7d201f265da1b6a346f0a

    展开全文
  • [程序开发系列一]流行数据库程序开发工具的比较分析武汉华中师大信管 谢刚 摘要:随着计算机技术不断发展,各种数据库编程工具也随着发展,使当今的大多数程序开发人员可以摆脱枯燥无味的用计算机指令或汇编...

    [程序开发系列一]现流行数据库程序开发工具的比较分析

    武汉华中师大信管系 谢刚

     


    摘要:随着计算机技术不断发展,各种数据库编程工具也随着发展,使当今的大多数程序开发人员可以摆脱枯燥无味的用计算机指令或汇编语言开发软件,而是利用一系列高效的、具有良好可视化的编程工具去开发各种数据库软件,从而达到事半功倍的效果,但是现在市面上的数据库编程工具门类众多,优良不齐,比如VB,VC,DEPHI,PB等,对此我特别针对流行的开发语言介绍相应的较为成熟的数据库编程工具。

    关键字:数据库编程  程序开发工具

    1 几种数据库开发工具的介绍
    1.1 VB
        全称Visual Basic,它是以Basic语言作为其基本语言的一种可视化编程工具。在中国乃至全世界都曾看到过它的身影,它曾是在中国最为流行的编程工具,到现在还占据着非常重要的地位,对于它的好坏大家都有一定的了解,VB作为一种较早出现的开发程序以其容易学习,开发效率较高,具有完善的帮助系统等优点曾影响了好几代编程人员,但是由于VB不具备跨平台这个特性,从而也决定了VB在未来的软件开发中将会逐渐地退出其历史舞台;它对组件技术的支持是基于COM和ActiveX,对于组件技术不断完善发展的今天,它也显出了它的落后性;同时VB在进行系统底层开发的时候也是相对复杂的,调用API函数需声明,调用不方便,不能进行DDK编程,不可能深入Ring0编程,不能嵌套汇编;而且面向对象的特性差;网络功能和数据库功能也没有非常特出的表现,综上所述,VB作为一种可视化的开发工具由于其本身的局限性,导致了它在未来软件开发中逐步被其他工具所代替。

    1.2 PB
        全称PowerBuilder,是开发MIS系统和各类数据库跨平台的首选,使用简单,容易学习,容易掌握,在代码执行效率上也有相当出色的表现。PB是一种真正的4GL语言(第四代语言),可随意直接嵌套SQL语句返回值被赋值到语句的变量中,支持语句级游标,存储过程和数据库函数,是一种类似SQLJ的规范,数据访问中具有无可比拟的灵活性。但是它在系统底层开发中犯了跟VB一样的错误,调用API函数需声明,调用不方便,不能进行DDK编程,不可能深入Ring0编程,不能嵌套汇编;在网络开发中提供了较多动态生成Web页面的用户对象和服务以及系统对象,非常适合编写服务端动态Web应用,有利于商业逻辑的封装;但是用于网络通讯的支持不足;静态页面定制支持有限,使得PB在网络方面的应用也不能非常广泛。面向对象特向也不是太好。

    1.3 C++Builder/Delphi
      它们都是基于VCL库的可视化开发工具,它们在组件技术的支持、数据库支持、系统底层开发支持、网络开发支持、面向对象特性等各方面都有相当不错的表现,并且学习使用较为容易,充分提现了所见即所得的可视化开发方法,开发效率高。由于两者都是Borland 公司的产品,自然继承了该公司一贯以来的优良传统:代码执行效率高。但是,它们并不是毫无缺点,它们所作的最大不足之处就是他们的帮助系统在众多的编程工具中是属于比较差的。C++Builder 的VCL库是基于Object pascal(面向对象pascal),使得C++Builder在程序的调试执行上都面向落后于其他编程工具。而Delphi则是它的语言不够广泛,开发系统软件功能不足两个比较大的缺点。

    1.4 Visual C++
      是基于MFC库的可视化的开发工具,从总体上说它是一个功能强大但是不便使用的一种工具。它在网络开发和多媒体开发都具有不俗的表现,帮助系统也做得非常不错(Microsoft 在细节方面的处理往往都让人觉得亲切),但是虽然是使用C++作为基本语言,但是它在面向对象特性上却不够好,主要是为了兼容C的程序,结果顾此失彼;在组件支持上也不太好,虽然说除了支持COM,ActiveX外还支持CORBA,但是没有任何IDE支持,是所有C编译器的功能, 需要CORBA中间件支持;最大的问题是开发效率也不高。

    1.5 Java编程工具
      目前比较出名的是Borland出的JBuilder和IBM出的Visual Age for Java,两种工具都有一定数量的是用人群。JBuilder继承了C++Builder/Delphi的特点,在可视化上做得非常不错,使用简便。由于Java本身语言的特点使得他们在网络开发中具有高人一等的表现,而且面向对象特性高,支持的组件技术也非常多,跨平台的特性也使得它在现在和未来的开发中占据越来越重要的地位。但是在系统底层开发和多媒体开发中却表现得并不让人那么满意,这个可能跟设计Java的意图有关吧。

    2 各种开发工具在对数据库方面的支持比较分析
    2.1数据访问对象:
    2.1.1VB:DAO,ADO,RDO功能相仿;
    2.1.2PB:Transaction,DwControl,可绑定任何SQL语句和存储过程,数据访问具有无与比拟的灵活性
    2.1.3 C++ Builder/Dephi:具有包括DataSource,Table,Query,Midas,ADO在内的二十多个组件和类完成数据访问
    2.1.4 VC:同VB,但有不少类库可供使用,但极不方便,开发效率很低
    2.1.5 JAVA:JAVA JDBC API,不同的IDE具有不同的组件

    2.2 数据表现对象:
    2.2.1 VB:DBGriD,与数据库相关的数据表现控件只有此一种,只能表现简单表格数据,表现手段单一
    2.2.2 PB:DataWindow对象(功能异常强大,其资源描述语句构成类似HTML的另外一种语言,可在其中插入任何对象,具有包括DBGrid在内的数百种数据表现方法),只此一项功能就注定了PB在数据库的功能从诞生的那一天起就远远超过了某些开发工具今天的水平
    2.2.3 C++Builder/Dephi:具有包括DBGrid,DBNavigator,DBEdit, DBLookupListBox在内的15个数据感知组件,DecisionCube, DecisionQuery在内的6个数据仓库组件和包括QRChart, QRExpr在内的20多个报表组建,可灵活表现数据
    2.2.4 VC:同数据访问对象
    2.2.5 JAVA:不同的IDE具有不同的组件,比较著名的有Jbuilder,PowerJ, VisualAge for Java

    2.3 语句执行方式:
    2.3.1 VB:将一句SQL串绑定到一个命令对象中,结果返回到ResultSet对象中自行拆取
    2.3.2 PB:是一种真正的4GL语言,可随意直接嵌套SQL语句返回值被赋值到语句的变量中,支持语句级游标,存储过程和数据库函数,是一种类似SQLJ的规范
    2.3.3 C++ Builder/Dephi:使用数据库组件或类完成SQL语句串的执行和提交
    2.3.4 VC:同数据访问对象
    2.3.5 JAVA:SQLJ,JAVA JDBC API

    3 各种开发工具其他的比较分析
    3.1面向对象特性
    VB:差;PB:较好;C++ Builder/Dephi:很好; VC:一般 ;JAVA:非常好

    3.2跨平台特性
    VB:跨平台性不怎么好,但是可以与WINDOWS 家族无缝连接。
    PB:跨平台性一般
    C++ Builder/Dephi:WINDOWS家族,Linux
    VC:无
    JAVA:所有能够运行JAVA虚拟机的操作系统

    3.3 组件技术支持
    VB:COM,ActiveX
    PB:COM,JavaBean,Jaguar,UserObject使用:CORBA+Acti veX
    C++ Builder/Dephi:COM, ActiveX CORBA(本身自带CORBA中间件VisiBroker,有丰富向导)
    VC:COM,ActiveX,CORBA(没有任何IDE支持,是所有C编译器的功能,需要CORBA中间件支持)
    JAVA:JavaBean,CORBA;ActiveX

    3.4网络或Web开发支持
    VB:Asp,VBScript,具有编写DHTML的简单IDE,编写静态页面非常方便;用于网络通讯的支持一般
    PB:DynaSript, Web.PB;提供了较多动态生成Web页面的用户对象和服务以及系统对象,非常适合编写服务端动态Web应用,有利于商业逻辑的封装;用于网络通讯的支持不足;静态页面定制支持有限
    C++ Builder/Dephi:ISAPI,WININET API等各类网络或互联网API可自由而方便的调用;提供了ServerSocket,ClientSocket等三十余个组件及类,用来处理网络通讯控制,流处理,Mail,Email,FTP,HTTP等应用协议处理以及生成动态页面和商业逻辑的封装;功能强大,使用方便
    VC:SAPI,WININET API等各类网络或互联网API可自由而方便的调用;提供CAsyncSocket等数量众多的类;功能强大但使用不太方便
    JAVA:不可直接调用API但内置非常多的网络及互联网功能;可利用Servlet API,Java Bean API,以及JSP等协同开发功能强大的Web应用;功能强大,对于某些IDE使用不太方便

    4 综合评价:
    4.1 VB:是新人开发与系统无关的综合应用程序的首选;容易使用和厂商财力很强是其仅有的两点优势。VB开发效率高,代码执行效率一般,但是入门和学习速度快,有较好的学习氛围和帮助书籍和帮助文档。但是随着微软的.net技术的推广,VB将会逐渐推出历史舞台。
    PB:是开发大型MIS及各类数据库跨平台应用的首选;从数据库前端工具来讲甚至远远超过了Oracle的Develop系列等专门的工具;从通用语言角度来讲功能也与VB等不相上下;多媒体和网络功能与其他工具相比较弱。

    4.2 PB最大的优势就是Datawindow技术的成熟和方便,他成为PB与其他数据库开发工具抗衡的资本。同时PB在对JAVA和WEB,以及面向对象方面的发展也可以预见PB将成继续成为数据库系统(特别是MIS系统)开发工具的首选。同时PB的强大帮助文档也为初学者提供了入门基础,PB连接数据库的自由和方面也为PB的提供了方便,同时PB对API的调用以及对报表的处理强大。但是PB的高级编程书籍的缺乏和基础语言PowerScript的普及程度对PB的明天有一定的限制。

    4.3 C++ Builder/Dephi:是唯一一套能够同时适用于开发数据库应用、网络及Web应用、分布式应用、可重用组件、系统软件、驱动程序、多媒体及游戏等所有软件的高效率开发环境;VCL源码基于Object Pascal是C++ Builder 唯一的缺憾,基础语言不够通用和开发系统软件功能不足是Dephi仅有的两点不足。

    4.4 VC:从功能上讲除了跨平台应用外什么都可开发;从开发效率角度讲只局限于开发windows系统应用、可重用组件及驱动程序。 又因为有微软的支持,其自身的基础语言的普及程度高,以及其代码的执行效率高等特性、VC自带强大帮助文档和大量优质教材,VC在数据库开发工具中始终可以稳住阵角。

    4.5 JAVA:适用于开发除了系统软件、驱动程序、高性能实时系统、大规模图像处理以外所有的应用。在一般的管理信息系统中和一般的数据库开发中,很少有人会选择JAVA,一是由于其开发环境的配置较难,已经和数据库连接时较为负责,对开发人员的开发经验和学习时间都要很高要求,所以对于经验不是很丰富的开发人员一般是不选择JAVA,但是JAVA的强大网络功能和真正的面向对象特性决定了JAVA的未来,JAVA将在一个较为长期的时段里可以与微软家族抗衡。

    5 选择开发工具的几点建议:
    5.1 如果你的程序基本上完全是数据录入、查询、汇总、打印等,性能要求高,打算使用C/S结构,那么PowerBuilder的确是不错的选择。

    5.2 如果数据库要求不高,只是本地的,对于用户界面、通信、多媒体等方面有要求,那么我觉得VB、VC、Delphi更好。我个人不太喜欢BDE,主要是分发和建立别名比较麻烦。

    5.3 一旦你确定了基本使用的语言,那么采用什么方式也就定下来。如对于VC、VB,访问本地数据库一般为DAO,访问服务器上数据库一般使用ODBC/RDO/ADO。我在访问本地数据库一般不使用ADO,主要是在配置比较低的机器上速度比较慢,不过DAO迟早要被ADO取代。

    5.4 同时结合MS SQL或是My SQL的其他功能,比如触发器,存储过程,视图等。
       
    6 说明:
    6.1 参考(整理)网友意见部分:
    1.1,1.3,1.4,2.2.3,3.3,3.4
    6.2 原创部分:
    1.2,2.1,2.2,2.3,3.1,3.2,4(全部),5(全部)
    6.3 其他为对一些网友和自己的看的整理归纳
    6.4 由于自己能力有限,漏洞之处还请大家斧正!
    6.5 希望对大家在进行数据库程序开发选择开发工具(或是学习)时有用
    6.6 最后提醒一下,注意根据自己的爱好和基础选择一个或是多个适合自己并适合当前程序需求的开发工具。切勿多而不精!

    【今天只是調整了各式,內容文字一個沒動,保持以前的歷史的完整性,加了一個文章摘要。記得當時發文時沒有文章摘要,但是我還是在正文中加了一個摘要,呵呵】

    展开全文
  • 标准已经为此创建了先决条件:因为数据库已使用ODX(ASAM MCD-2D)协议进行了标准;而使用ASAM MCD-3D协议,戴姆勒公司可以使用基于该标准的诊断系统的编程接口。此外,ODX2.2协议,具有很好的成熟度和功能范围...

    | 摘   要

    自1997年开始,Daimler公司就着手于搭建一个诊断系统,这个系统使用私有的、数据驱动通信平台,用于在诊断应用和车辆之间交换数据。这个平台(包括数据)被广泛用在Daimler公司的工程/开发阶段、生产阶段和售后阶段。

    当S级222在2013年推出时,Daimler公司选择了Softing公司的COTS产品(商用现货)。从那时起,Softing公司的产品已应用于所有新梅赛德斯汽车和厢式货车系列在工程/开发阶段、生产阶段和售后阶段中诊断应用与车辆之间的数据通信。

    由于从一开始就实施了明智的迁移策略,该项目不仅在技术方面获得了成功,而且还确保了快速的投资回报。

    · 成员

    Softing Automotive Electronics GmbH

    Daimler AG

    · 使用标准

    ASAM MCD-2D

    ASAM MCD-3D

     

    多年来在标准方面的投入,现在是时候实施和使用它们了!即使你考虑了以前的投入,它也很快获得了回报!” —— DaimlerAG,项目经理,Marc Blatter

    | 情 况

    Daimler公司早在1997年就已经成功引入了诊断通信平台,并在工程/开发、生产和售后的所有流程中使用它。

    这个系统被(进一步)开发,专门用于Daimler。本质上,这个系统是一个用于存储ECU诊断信息的数据库,和带有API的序列系统。来自数据库的ECU诊断信息,被转换为运行时系统,并由序列系统进行处理,使操作员易于辨认。

    此过程的优势是显而易见的:

    • ECU诊断数据仅需创建一次,然后被多个应用程序使用;
    • 使用标准API集成到工具内,该API集中记录和支持;
    • 由于使用标准化平台,因此诊断服务的运行时行为是确定性的。

    最后,由于数据处理与工程/开发是并行创建的,因此数据处理具有明显的优势,即用于生产和售后服务的数据具有统一的质量。

    由于维护私有工具环境非常耗时,因此Daimler公司决定针对指定的使用区域,使用现成的工具。标准化已经为此创建了先决条件:因为数据库已使用ODX(ASAM MCD-2D)协议进行了标准化;而使用ASAM MCD-3D协议,戴姆勒公司可以使用基于该标准的诊断系统的编程接口。此外,ODX2.2协议,具有很好的成熟度和功能范围,可以将其用作现有解决方案的替代品。

    | 挑 战

    新的通信平台一般只能在新的车型项目中引入,否则所有的诊断说明、测试序列和工具都必须在操作过程中进行修改。但是,对于新车型项目,这不仅意味着实施新开发的挑战;而且还意味着向新的通信平台迁移的挑战。如果新的通信平台实施步履蹒跚,就需要退回到原有的方案进行诊断。

    在这种情况下,这相对简单,因为ECU诊断数据的编辑系统,既可以导出旧格式,也可以导出ODX。我们需要做的是,暂时生成两个数据库,修改了新车型的数据,然后将其从编辑系统导出为新格式,用于采集控制单元的迁移。

    图片
    表 整车生命周期中涉及到需要迁移的主要工具

    在工具方面,从一开始,就特别需要对三种工具进行调整,以适应新的运行时环境:

    • 刚刚启动并已经基于新格式(Softing的DTS Monaco)的工程诊断仪;
    • 产线系统NISP(在全球所有汽车制造工厂中使用);
    • 以及售后诊断仪XENTRY。

    NISP是针对Daimler定制化开发的,而XENTRY诊断仪所基于的框架已经在ASAM MCD-3D标准的早期版本基础上实现了。

    由于其在全球范围内使用,因此所有组件在性能、不稳定性以及Bugs方面都是至关重要的。

     | Daimler成功的秘诀

    为了确保项目的完成,从一开始就确定了一个多阶段的程序:

    • 在所有其他步骤之前,将VCI驱动程序转换为基于D-PDU API标准;
    • 概念验证阶段;
    • 使用工程诊断仪使用了数据;
    • 同时,对生产和售后修改后的应用程序进行试点;
    • 对现有的生产和售后数据,起草和实施迁移策略。

    在使用新的VCI(车辆通讯接口卡,eCOM)之前,驱动程序层已经转换为D-PDU API标准。这就意味着旧系统和D-Server可以在同一硬件上运行。

    然后,与多家供应商合作启动了概念验证(PoC)项目。目的是证明标准中定义的范围确实满足要求,并且可以在整个环境中实施。

    该系统是在工程诊断仪DTS Monaco成功完成PoC之后实施的,该诊断仪与MVCI-Server一样,都是Softing公司的产品。因为该诊断仪支持旧的数据格式,和ODX格式处理数据,因此在比较旧数据和ODX数据的时候,非常容易实现数据质量和ODX处理。这意味着对ECU的测试任务只有极小的限制。同时,还需要对生产和售后诊断仪以及诊断数据编辑系统进行调整,并对相关用户进行培训。

    图片
    表 不同的迁移策略

    为了最大程度地减少迁移,Daimler决定先同时运行新旧两个平台,并逐步淘汰工程/开发阶段和生产阶段的旧通信平台。

    但是,必须保证在未来很多年内都能够提供售后支持。这种方式的优点是不再需要更改已有的数据和测试序列,从而节省了耗时的版本发布。

     

    “令人兴奋的是,经过多年的标准化,经过多年的工具开发,对标准实现的实际应用都非常顺利,甚至比预期的还要顺利! ”—— Softing Automotive Electronics GmbH 产品总监 Markus Steffelbauer

     | 项目进行中的挑战

    在项目进行过程中,选择的过程显然确实是正确的。总而言之,实施工作如期进行并提供了想要的质量。

    为了确保完全一致,必须在Softing 的MVCI-Server内加入一些额外功能。这是必要的,因为这些工具具有某些操作顺序,而这些操作顺序无法用标准实现。选择的开发方法使能了简单的扩展实现。

     | 商业价值

    · 自由选择工具和供应商;

    · 与其他OEM厂商简化合作;

    · 由于不同的用户群,保证了产品的高成熟度。

    ASAM官方原文链接:https://www.asam.net/application-stories/detail/migration-from-an-in-house-diagnostic-base-system-to-a-cots-solution/#backToFilters

    图片

     

    展开全文
  •  上海,2018年5月9日——采用UHF RFID和传感器数据的Auto ID构成增强自动技术的基础。但是,这些信息如何进入ERP或云中?通过利用W-LAN,3G/4G(LTE)和蓝牙接口的浩亭RFID解决方案即可轻松实现。  基于其自身...
  • JAVA面试常考系列七

    2018-05-21 10:03:24
    Swing的规则是:当Swing组件被具现化时,所有可能影响或依赖于组件状态的代码都应该在事件派发线程中执行。因此有3个线程安全的方法:repaint(),revalidate(),andinvalidate()。题目二Component子类中,哪些支持...
  • 泛在技术的普及使得信息的获取更加便捷,与之伴随地是信息消费中的碎片、多任务和浅层读图的 象。针对这一问题,该文依托于“语义图示”所开展的研究,提出一个有助于提高学习深度的方案——语义图示工具 模型。...
  • 现代php开发系列标记

    2016-04-29 02:28:56
    使用虚拟工具(vagrant)以及配置工具(ansible、chef、puppet),来搭建跟生产服务器一样的本地开发环境。 使用依赖管理工具composer使用专门的php组件。 我们自己写的代码遵循psr社区标准。 使...
  • 这篇文章基本上不涉及具体的技能、工具,更多是我对“如何设计好一个软件”这个问题多年来的思考...但就是因为 太过抽象,所以我们需要各种工具(流程图、脑图,甚至用图画工具画画,用笔画画)来努力让软件变得具现化
  • 大规模的管理以及快速部署。中心配置管理软件有很多,Unix 下最出名的是 cfengine,其目的是使主机配置管理简单和任务自动,使困难的任务变得较容易。由于 cfengine 的语法比较晦涩,于是出现了 Puppet 。...
  • 泛在技术的普及使得信息的获取更加便捷,与之伴随地是信息消费中的碎片、多任务和浅层读图的 象。针对这一问题,该文依托于“语义图示”所开展的研究,提出一个有助于提高学习深度的方案——语义图示工具 模型。...
  • *所有页面-代码的常规清理-更改为'm'到“ M”以匹配弹出菜单的细微类名更改(以更改方向)*广告系列列表-重新格式的Adobe消息框-删除了搜索框图标/宽度的格式修复程序(已固定为真)*广告系列编辑-调整了可调整...
  • MAPGIS地质制图工具

    2013-05-06 16:15:30
    Section版本具有的主要功能模块: 1、绘制剖面图功能; 2、绘制柱状图功能; 3、辅助工具Ⅰ和辅助工具Ⅱ(CAD转MapGis文件); 4、其他功能(暂时未归类功能)。 编辑本段Section快捷键对照表 Ctrl+A 选择相同图元...
  • 彩虹UDA软件狗工具带硬复制工具

    千次下载 热门讨论 2010-11-23 15:53:11
    软件狗开发商工具可以使开发商方便地对软件狗存储区进行编辑、读取系列号以及连续初始等操作。 工作原理: 开发商程序通过调用软件狗开发套件提供的接口模块对软件狗操作,软件狗响应该操作并通过接口模块将...
  • 深度启动盘制作工具(Deepin Boot Maker)用于来帮助用户简单便捷的制作Deepin...推荐下载:打开deepin-boot-maker-1.0软件,选择下载的kubuntu-15.04-desktop-amd64 iso镜像,选择U盘,点击格式,然后制作deepin...
  • 这是Ayunger开发的一个AutoCAD修改工具集合,与各位共享,主要包括: 1、 绘制类: 箭头、示坡线、锥坡线、剖断线、垂线、切线、等高线加密、Hatch轮廓线等; 2、 标注类: 各类引线标注(圆形、坐标、断面、里程、...
  • 条款41 了解隐式接口与编译器多态 记住: ★classes和templates都支持接口和多态 ★对classes而言接口是显式的(explicit),以...多态则是通过template具现化和函数重载解析发生于编译期 条款42 了解ty...
  • 我是在一家电商公司工作,每个月要接触的数据约200百万,经常要出一些分析报告,之前都是用Excel做图,粘贴到PPT或者Word中,后来慢慢接触了一些数据处理工具,如SQL,但是可视还是没学习,和大家一起讨论提高...
  • 在机加工中最常用的几种铣刀你都知道吗?首先呢,铣刀为多齿回转刀具,其每一个刀齿都相当于一把车刀...通用规格的铣刀已标准,一般均由专业工具厂生产。介绍几种常用铣刀。1立铣刀立铣刀是数控机床上用得最多的...
  • 某知名大型互联网公司资深架构师,技术总监,职业规划师,面试官,曾在某上市培训机构,高校任教多年。     Array老师 10多年互联网公司实战经验,知名的大型互联网公司的架构师,高管等职,在企业长期...
  • 公司拥有药用包装玻璃、耐热玻璃、电光源玻璃三大系列产品,高硼硅耐热玻璃器具成为美的、格兰仕、瑞典Electrolux、美国WORLD KITCHEN、美国OXO、德国EMSA,韩国LG电子等著名企业的核心供应商;电光源玻壳成为Phil
  • 薄薄的一条丝巾,改装效果却极佳,随意绑上一条丝巾,美丽优雅从丝巾中得以具现化。小优在这里为大家分享8条高颜值的丝巾,帮你的穿搭增加一些优雅感!拇指姑娘丝巾设计师定居在新西兰的花园城市,纯净国度...
  • 译者简介: 李玉山,为西安电子科技大学教授、国家重点学科“电路与系统”博士生导师、国家电工电子教学基地副主任、电路CAD研究所所长、全国通信ASIC委员会委员及国家IC设计西安基地专家委员。曾于1986年和1999...
  • 李玉山,为西安电子科技大学教授、国家重点学科“电路与系统”博士生导师、国家电工电子教学基地副主任、电路CAD研究所所长、全国通信ASIC委员会委员及国家IC设计西安基地专家委员。曾于1986年和1999年分别赴美国...
  • 李玉山,为西安电子科技大学教授、国家重点学科“电路与系统”博士生导师、国家电工电子教学基地 副主任、电路CAD研究所所长、全国通信ASIC委员会委员及国家IC设计西安基地专家委员。曾于1986年和 1999年分别赴...
  • 李玉山,为西安电子科技大学教授、国家重点学科“电路与系统”博士生导师、国家电工电子教学基地副主任、电路CAD研究所所长、全国通信ASIC委员会委员及国家IC设计西安基地专家委员。曾于1986年和1999年分别赴美国...
  •  Synplify Premier软件采用基于图形的物理层综合技术,采用自动单通路设计流程,可改进定时性能和定时相关,并降低设计流程和迭代次数。 这种基于图形的物理综合工具与单独的逻辑综合工具相比,性能提升了20%,...
  • 为您提供一鹤快手 AAuto Studio下载,一鹤快手(AAuto Studio)是一鹤软件推出的AAuto语言开发工具,更名为aadio,AAuto语言以LAscript脚本语言为基础并基于更为通用的C语法打造的新一代编程语言。基本简介 主要...

空空如也

空空如也

1 2 3 4 5 ... 7
收藏数 128
精华内容 51
关键字:

具现化系