CN109634584A - 一种基于代码生成的驱动封装和通信机制 - Google Patents
一种基于代码生成的驱动封装和通信机制 Download PDFInfo
- Publication number
- CN109634584A CN109634584A CN201811396592.8A CN201811396592A CN109634584A CN 109634584 A CN109634584 A CN 109634584A CN 201811396592 A CN201811396592 A CN 201811396592A CN 109634584 A CN109634584 A CN 109634584A
- Authority
- CN
- China
- Prior art keywords
- code
- interface
- communication
- bus
- model
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/35—Creation or generation of source code model driven
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种基于代码生成的驱动封装和通信机制,包括总线式的板卡驱动配置和通讯机制、实时操作系统任务调度机制、对象接口的Simulink图形化封装方法、代码生成机制。通过总线式的板卡驱动配置和通讯机制可使对象系统具备良好的可扩展性,便于系统的功能扩展以及后期的维护与升级;建立实时操作系统任务调度机制可保证驱动配置及通讯的快速性实时性,MATLAB/Simulink中图形化的接口模型便于对系统的开发和逻辑理解;通过利用快速原型代码生成技术将接口模型直接转化为代码可以大大降低对象软件的开发难度和开发周期,有效地提高仿真软件的可靠性。本发明能够使用于各类基于内部总线的对象系统图形化接口的构建,能够在有效降低对象系统开发难度和开发周期。
Description
技术领域
本发明涉及一种基于代码生成的驱动封装和通信机制,具体涉及到总线式的板卡驱动配置和通讯机制、实时操作系统任务调度机制、对象接口的Simulink图形化封装方法、代码生成实现。
背景技术
基于代码生成的驱动封装和通信机制是快速原型开发过程中的重要机制,在实际对象例如仿真系统,飞控系统等的图形化快速原型开发过程中占据重要作用。设计和开发基于代码生成的驱动封装和通信机制的目的是为了在对象系统的研制过程中,不需关心底层代码,将工作重点集中在算法开发中。随着各类对象系统的不断发展,其更新换代需要十分迅速,这要求开发速度能够适应这种快速的发展。而且在实际开发过程中若硬件不匹配需求,若重新开发新的接口硬件或CPU将浪费大量的时间和成本。为了解决这些问题,就要求系统在具备基本功能之外,还应具备较强的可扩展性、可维护性以及快速开发性。
随着系统复杂度的增大,传统集成式硬件结构和手工编码的软件开发方式已经越来越难以满足这些需求,因为集成式的硬件结构不利于系统硬件和接口的扩展,而手工编码的软件开发方式不仅需要消耗大量的开发和调试时间,并且容易引入程序错误。采用总线式的硬件结构和快速原型的设计方法可以有效解决这些问题。因为,采用总线式硬件结构时,各个功能板卡与CPU之间都通过标准的总线进行通信,可以方便地实现硬件设备和接口的扩展,而利用快速原型技术进行仿真软件的开发则可以通过将仿真模型直接生成可执行的C代码,从而避免手工编码方式存在的问题。同时,采用基于代码生成的驱动封装和通信机制可以灵活地运用于各类硬件上,硬件通过使用此机制形成逻辑的图形化模块并可代码生成,不仅提高了实际开发过程中的硬件更换效率成本,大大增加了硬件选择面,而不必执着于传统的xpc,也能提高总代码的代码生成率,使得系统具备强大的扩展性、可维护性和快速开发性。
发明内容
为了解决传统快速原型代码生成开发过程中底层驱动的图形化逻辑和代码生成问题,本发明提出了一种具有良好可扩展性,能够快速开发和维护的基于代码生成的驱动封装和通信机制。
本发明的驱动封装和通信机制的适用于所有的对象系统的开发,可重复应用于对象系统的快速原型代码生成开发过程。设计方法可分为四大部分,第一,在设计板卡驱动配置和通讯机制时,采用总线式的软硬件结构;第二,在进行配置和通讯任务设计时,采用实时操作系统任务调度机制。第三,在对象接口的Simulink图形化封装设计时,采用C-mexsfunction和Mask工具;第四,利用快速原型技术将建立好的数学模型和驱动接口自动生成代码,完成软件的开发。
本发明的对象系统硬件结构采用不限类型的总线结构,对象计算机的CPU单元板卡、串口数据功能板卡、模拟量采集和输出功能板卡、数字量输入输出功能板卡以及1553B功能板卡都采用总线进行通信,仿真计算机总线结构的构建方法包括以下几个步骤:
步骤1:设计CPU单元板卡的总线硬件接口;
步骤2:设计各个功能板卡的总线硬件接口和可供CPU总线通讯调用的驱动接口;
步骤3:设计对象计算机的总线板卡。
本发明的对象系统任务调度机制采用实时操作系统任务调度机制,通过实时任务进行接口板卡的配置和通讯,实时操作系统任务调度机制的构建方法包括以下几个步骤:
步骤1:选择CPU的实时操作系统,并创建可重配置任务和通讯任务;
步骤2:设计配置和通讯逻辑;
步骤3:设计配置和通讯互斥保护逻辑。
本发明的对象接口的Simulink图形化封装设计包括网口模块、串口模块、DIO模块、PWM模块、脉冲模块、AIO模块、1553B模块等,以及各个模块的模型接口规范等,主要包括以下几个步骤:
步骤1:根据各类型板卡建立对应的配置参数和通讯参数表;
步骤2:使用MASK工具根据表格自动生成相应的模块界面;
步骤3:编写相应的C-mex sfunction给相应模块调用以及tlc文件用于代码生成;
步骤4:编写Stateflow进行参数和数据传递,形成接口;
步骤5:编写回调函数将上述功能整合成模块;
步骤6:编写m函数将模块封装进库中;
本发明的软件快速实现包括快速原型模型的配置、模型优化和代码自动生成等,主要包括以下几个步骤:
步骤1:设置模型解算算法和解算步长;
步骤2:对模型从内存使用量和代码执行效率两个方面进行优化;
步骤3:设置模型的目标系统的目标语言编译文件;
步骤4:编写模板联编文件,指导模型的编译过程;
步骤5:编译模型,将模型转化为代码,然后将生成的代码编译链接生成可在选定的操作系统上运行的软件可执行程序。
本发明实现了总线式计算机的接口图形化配置通讯及其代码生成功能,在CPU单元板上通过主流厂商的可运行各类实时操作系统的嵌入式CPU,以及主流厂商的总线控制器芯片;在串口数据、模拟量采集和输出、数字量输入输出以及1553B等各类功能板卡上分别利用主流厂商的总线控制器芯片;通过采用底板加标准插槽结构的总线板卡将所有板卡都挂接在总线上。
本发明利用总线通讯传参和中断机制,在接口板卡上实现接口驱动的配置和通讯,通过“握手协议”实现接口配置和通讯的安全性和可靠性。
本发明CPU板卡上利用实时操作系统的任务调度,通过优先级抢占实现接口配置和通讯任务的实时性。
本发明构建了对象系统的代码生成模型,在MATLAB/Simulink环境下用图形化的simulink模块、Stateflow以及S-Function模块建立了接口板卡的图形化接口模型,对各个模型模块的输入输出接口进行了统一的规范和管理。
本发明利用快速原型技术自动实现了仿真软件的构建,通过“存储空间重用”和“参数内联化”方法对模型生成代码的内存使用量进行了优化,通过“使能子系统”和“参数内联化”方法对模型生成代码的执行效率进行了优化。
本发明通过目标语言编译器文件和模板联编文件的设置和编写,指导和控制了模型自动生成代码的过程,将对象系统的接口配置和通讯模型自动转化为可在各类实时操作系统上运行的软件可执行程序。
有益效果:本发明通过使用总线式的对象计算机硬件结构可以提高仿真系统的可扩展性,便于系统的功能扩展和后期维护和升级;通过建立符合相应驱动的封装模块和通讯任务,提高快速原型代码生成的代码生成率,去除反复的底层驱动代码修改,使得任务接口板卡都可以使用总线为媒介进行图形化配置和通讯;通过建立对象系统的快速原型模型可以对软件的功能进行初步的仿真验证,图形化的模型结构也便于对软件功能和逻辑的理解和维护;利用快速原型技术将建立完成的对象系统直接转化为代码可以大大降低软件的开发难度和开发周期,有效提高软件的可靠性。
附图说明
图1为对象系统采用CAN总线式硬件结构示意图;
图2为CPU单元板卡CAN总线实现结构示意图;
图3为接口板卡配置逻辑;
图4为板卡接口配置和通讯互斥逻辑;
图5为板卡接口封装流程;
图6为接口模块封装进库中样例;
图7为封装模块内部模型;
图8为对象系统软件快速原型实现过程示意图。
具体实施方式
本实例中的基于代码生成的总线式对象系统图形化接口的构建方法,包括总线式的板卡驱动配置和通讯机制设计、对象系统实时操作系统任务调度的构建、对象接口的Simulink图形化封装以及对象软件的快速原型实现四个部分。具体构建方法如下:
1、总线式的板卡驱动配置和通讯机制设计
对象系统采用总线式硬件结构,以CAN总线举例,如附图1所示。要使CPU单元板卡与各个功能板卡之间都能通过CAN总线进行通信,需要为CPU单元板卡和各个功能板卡设计CAN总线接口,同时还要设计总线板卡,使CPU单元板卡和各个功能板卡通过标准的插拔式接插件挂接到CAN总线上。具体实现步骤如下:
步骤1:设计CPU单元板卡的CAN总线;
CPU单元板卡的CAN总线实现结构如附图2所示。CPU单元板卡使用Altera公司的MAXII系列CPLD复杂可编程逻辑器件EPM570T,以及NXP公司的SJA100OT CAN控制器扩展出4路CAN总线。CPLD负责对4路CAN控制器的接口逻辑进行统一管理,实现地址译码、中断信号处理功能。
步骤2:设计各个功能板卡的CAN总线接口;
串口数据功能板卡、模拟量采集和输出功能板卡、数字量输入输出功能板卡以及1553B功能板卡都采用Silicon Laboratories公司的C8051单片机作为处理器,利用同样利用NXP公司的NXP SJA1000T作为CAN控制器,实现串口信息、模拟量信息、数字量信息以及1553B信息与CAN总线信息的转换。
步骤3:设计对象计算机的总线板卡;
总线板卡采用底板加标准插槽结构,共采用10只180点的标准插槽。通过标准插槽将所有板卡都挂接在4路CAN总线上,而各个功能板卡的信号接口则可单独通过航插引出。
2、对象系统接口配置和通讯任务调度机制
对象系统任务调度机制采用实时操作系统任务调度机制,通过实时任务进行接口板卡的配置和通讯,其任务执行的配置逻辑如图3所示,通讯逻辑和配置逻辑一致,并且逻辑上不能同时进行,其互斥逻辑如图4所示。具体实现步骤如下:
步骤1:选择CPU的实时操作系统,并创建可重配置任务和通讯任务;
根据项目需求,选择符合性能要求和客户需求的CPU和实时操作系统,通过创建高优先级的配置任务和低一等的通讯任务,保证任务的实时性。具体操作系统可采用Vxworks、ucos、rtos等各种主流实时操作系统,低实时性要求也可采用windows和linux等。通过信号量控制任务的执行和堵塞状态。
步骤2:设计配置和通讯逻辑;
通过制定统一的板卡地址协议和接口需求文档,并根据如图3所示的任务配置和通讯逻辑即可在总线式系统上完成接口的重复配置和通讯而不需要修改底层代码。通过CPU运行软件,实时更新配置参数,配置任务通过总线传输到接口板卡,接口板卡解析出参数并配置,若配置成功则反馈至CPU,握手成功。否则的话,继续等待参数,超时则反馈配置失败。
步骤3:设计配置和通讯互斥保护逻辑;
通过如图4所示的互斥逻辑,配置完成后进行通讯任务,通过和配置流程一样的握手过程保证数据的正确性,同时休眠配置任务。若通讯过程中受到系统的重新配置指令,则先休眠通讯任务然后进行配置任务。
3、对象接口的Simulink图形化接口构建
对象接口的Simulink图形化构建就是要在MATLAB/Simulink环境下,根据DIO、AIO、PWM、Pluse、1553B、网口等板卡接口的具体配置参数和接口数量,利用图形化的Simulink模块图,Stateflow状态图,Cmex S-Function、Tlc、Mask工具等建立可以进行代码生成的板卡接口模块。同时,对各个模块的输入输出接口进行规范,提高模型的模块化特性和可维护性。如图5所示具体实现步骤如下:
步骤1:根据各类型板卡建立对应的配置参数和通讯参数表;
根据板卡接口数量和每个接口的配置参数或者通讯参数生成独立的模块excel表格。
步骤2:使用MASK工具根据表格自动生成相应的模块界面;
通过MASK工具或使用其m语言接口,创建sfunction模块图形并根据excel表格生成相应的模块mask界面。
步骤3:编写相应的C-mex sfunction给相应模块调用以及tlc文件用于代码生成;
将驱动配置和通讯接口写成xxx.c,手动编写C-mex sfunction和其tlc文件或者使用Lagacy生成。将sfuntion和tlc文件用于图形模块调用。
步骤4:编写Stateflow进行参数和数据传递,形成接口;
如图7所示,使用stateflow将模块参数和操作系统配置通讯任务连接,打通图形模块和操作系统之间的壁垒。
步骤5:编写回调函数将上述功能整合成模块;
将前3步生成的C-mex sfunction模块和stateflow模块封装成一个模块,并使用回调函数调用sfunction的mask界面。此时,可代码生成的图形化模块已完成。
步骤6:编写m函数将模块封装进库中;
最后通过库文件的创建,并将所有图形化模块存入其中,得到如图6所示的库文件,可进行开发端的交付和移植。
4、对象系统软件的快速原型实现
对象系统软件快速原型实现过程如附图8所示。对象系统软件的快速原型实现就是在建立完成的对象系统快速原型代码生成模型的基础之上,对模型进行进一步的设置和优化,然后利用快速原型工具将图形化的模型自动转化为C代码,并对代码进行编译和链接,生成可以直接在目标操作系统之上运行的仿真软件。具体实现步骤如下:
步骤1:设置模型解算算法和解算步长;
综合考虑对象系统的仿真精度需求、CPU负荷需求等功能和性能指标,选取对象系统模型的解算算法和解算步长。
步骤2:优化模型的内存使用量和代码执行效率;
使用“存储空间重用”和“参数内联化”优化方法对代码的生成方式进行优化,降低对象系统模型生成代码的代码量和内存使用量;在模型建立的过程中,利用“使能子系统”和“参数内联化”的方式降低模型解算的冗余、减少不必要的全局数据访问操作,实现对代码执行效率的优化。
步骤3:设置模型的目标系统的目标语言编译文件;
设置代码生成使用的目标语言编译文件(TLC),指导和控制模型生成代码的过程,使模型生成的代码适应目标系统的操作系统平台。
步骤4:编写模板联编文件,指导模型的编译过程;
在模型生成代码之后,要编写模板联编文件(TMF)来指导代码的编译过程,包括配置目标CPU类型、设置选择的实时操作系统编译器(如VXWORKS)和链接器的类型和调用路径、指定用户代码路径、设置编译优化操作参数等。
步骤5:编译模型,将模型转化为代码,然后将生成的代码编译链接生成可在实时操作系统上运行的对象软件可执行程序。
完成上述步骤后,在MATLAB/Simulink环境下利用快速原型代码生成设计工具将模型自动转化为C代码,并根据编写的模板联编文件对生成的代码进行编译链接,生成可在目标系统的实时操作系统上直接运行的对象软件可执行程序。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (5)
1.一种基于代码生成的驱动封装和通信机制,其特征在于,包括:
第一部分:在设计板卡驱动配置和通讯机制时,采用总线式的软硬件结构;
第二部分:在进行配置和通讯任务设计时,采用实时操作系统任务调度机制;
第三部分:在对象接口的Simulink图形化封装设计时,采用C-mex sfunction和Mask工具;
第四部分:利用快速原型技术将建立好的数学模型和驱动接口自动生成代码,完成软件的开发。
2.根据权利要求1所述的一种基于代码生成的驱动封装和通信机制,其特征在于,所述第一部分包括如下步骤:
步骤1.1:设计CPU单元板卡的总线硬件接口;
步骤1.2:设计各个功能板卡的总线硬件接口和可供CPU总线通讯调用的驱动接口;
步骤1.3:设计对象计算机的总线板卡。
3.根据权利要求1所述的一种基于代码生成的驱动封装和通信机制,其特征在于,所述第二部分包括如下步骤:
步骤2.1:选择CPU的实时操作系统,并创建可重配置任务和通讯任务;
步骤2.2:设计配置和通讯逻辑;
步骤2.3:设计配置和通讯互斥保护逻辑。
4.根据权利要求1所述的一种基于代码生成的驱动封装和通信机制,其特征在于,所述第三部分包括如下步骤:
步骤3.1:根据各类型板卡建立对应的配置参数和通讯参数表;
步骤3.2:使用MASK工具根据表格自动生成相应的模块界面;
步骤3.3:编写相应的C-mex sfunction给相应模块调用以及tlc文件用于代码生成;
步骤3.4:编写Stateflow进行参数和数据传递,形成接口;
步骤3.5:编写回调函数将上述功能整合成模块;
步骤3.6:编写m函数将模块封装进库中。
5.根据权利要求1所述的一种基于代码生成的驱动封装和通信机制,其特征在于,所述第四部分包括如下步骤:
步骤4.1:设置模型解算算法和解算步长;
步骤4.2:对模型从内存使用量和代码执行效率两个方面进行优化;
步骤4.3:设置模型的目标系统的目标语言编译文件;
步骤4.4:编写模板联编文件,指导模型的编译过程;
步骤4.5:编译模型,将模型转化为代码,然后将生成的代码编译链接生成可在选定的操作系统上运行的软件可执行程序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811396592.8A CN109634584A (zh) | 2018-11-22 | 2018-11-22 | 一种基于代码生成的驱动封装和通信机制 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811396592.8A CN109634584A (zh) | 2018-11-22 | 2018-11-22 | 一种基于代码生成的驱动封装和通信机制 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109634584A true CN109634584A (zh) | 2019-04-16 |
Family
ID=66068818
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811396592.8A Pending CN109634584A (zh) | 2018-11-22 | 2018-11-22 | 一种基于代码生成的驱动封装和通信机制 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109634584A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111208987A (zh) * | 2019-11-14 | 2020-05-29 | 天津航空机电有限公司 | 一种基于VxWorks系统的TTP总线配置动态加载方法及加载装置 |
CN111880779A (zh) * | 2020-07-17 | 2020-11-03 | 盛视科技股份有限公司 | 一种系统应用源代码生成方法及装置 |
CN112162743A (zh) * | 2020-08-24 | 2021-01-01 | 西安广和通无线软件有限公司 | 驱动程序生成方法、装置、计算机设备和存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101482753B (zh) * | 2009-02-11 | 2012-05-02 | 北京华力创通科技股份有限公司 | 一种多余度飞控计算机实时仿真系统 |
US20140109044A1 (en) * | 2010-03-10 | 2014-04-17 | National Instruments Corporateion | Multi-Touch Editing in a Graphical Programming Language |
CN106970787A (zh) * | 2017-03-03 | 2017-07-21 | 浙江仕善汽车科技股份有限公司 | 一种汽车控制器快速原型实现方法 |
-
2018
- 2018-11-22 CN CN201811396592.8A patent/CN109634584A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101482753B (zh) * | 2009-02-11 | 2012-05-02 | 北京华力创通科技股份有限公司 | 一种多余度飞控计算机实时仿真系统 |
US20140109044A1 (en) * | 2010-03-10 | 2014-04-17 | National Instruments Corporateion | Multi-Touch Editing in a Graphical Programming Language |
CN106970787A (zh) * | 2017-03-03 | 2017-07-21 | 浙江仕善汽车科技股份有限公司 | 一种汽车控制器快速原型实现方法 |
Non-Patent Citations (1)
Title |
---|
张 煜: "基于 MPC8280 的 CPU 单元与内部总线驱动程序设计", 《电子设计工程》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111208987A (zh) * | 2019-11-14 | 2020-05-29 | 天津航空机电有限公司 | 一种基于VxWorks系统的TTP总线配置动态加载方法及加载装置 |
CN111880779A (zh) * | 2020-07-17 | 2020-11-03 | 盛视科技股份有限公司 | 一种系统应用源代码生成方法及装置 |
CN111880779B (zh) * | 2020-07-17 | 2023-12-26 | 盛视科技股份有限公司 | 一种系统应用源代码生成方法及装置 |
CN112162743A (zh) * | 2020-08-24 | 2021-01-01 | 西安广和通无线软件有限公司 | 驱动程序生成方法、装置、计算机设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109634584A (zh) | 一种基于代码生成的驱动封装和通信机制 | |
CN106313038B (zh) | 一种实时控制调试系统及调试方法 | |
CN204759403U (zh) | 一种基于数据透传实现设备内部模块升级的系统 | |
CN108460199B (zh) | Cni建模系统 | |
CN102945202B (zh) | 一种基于代理的rtems系统调试方法 | |
CN102436385A (zh) | 一种可编程逻辑器件配置文件在线更新装置 | |
CN102902624B (zh) | 一种软件调试系统及方法 | |
CN103902305A (zh) | 基于ti dsp的软件远程加载与固化方法 | |
CN103823467A (zh) | 具备运动规划功能的工业机器人示教规划器的控制方法 | |
CN105740139B (zh) | 一种基于虚拟环境的嵌入式软件调试方法 | |
CN104503771A (zh) | 一种列车网络控制系统集成开发平台 | |
CN105468817A (zh) | 一种多模型实时仿真系统 | |
CN103399528B (zh) | 一种Modbus从站模拟器系统的自动生成方法 | |
CN103955190A (zh) | 一种用于分布式智能测试系统的通讯构架及网络控制方法 | |
CN104572108A (zh) | 一种列车网络控制系统软件开发方法 | |
CN110861085A (zh) | 一种基于VxWorks的机械臂指令解释器系统 | |
CN101666855A (zh) | 一种集成电路的通用测试系统和方法 | |
CN103425055A (zh) | 一种半虚拟式的控制系统功能测试装置及方法 | |
CN105468431B (zh) | 多模型实时仿真系统 | |
CN102279736A (zh) | 一种基于d2p的rms电机控制器开发系统 | |
CN109460225B (zh) | 一种多cpu架构的可视化编译调试系统及方法 | |
CN103546527B (zh) | 一种可扩展的工业组态或仿真软件通信方法 | |
CN102902207B (zh) | 基于Matlab/VC的转台一体化控制方法、装置和系统 | |
CN105740039A (zh) | 基于rtx与vmic的gnc实时仿真系统构建方法 | |
CN114492268A (zh) | 一种asic原型验证的方法、系统、设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190416 |
|
RJ01 | Rejection of invention patent application after publication |