[发明专利]一种基于web的波形绘制展示方法在审
申请号: | 202310198550.8 | 申请日: | 2023-03-03 |
公开(公告)号: | CN116070047A | 公开(公告)日: | 2023-05-05 |
发明(设计)人: | 周国庆 | 申请(专利权)人: | 湖南泛联新安信息科技有限公司 |
主分类号: | G06F16/957 | 分类号: | G06F16/957;G06T11/20 |
代理公司: | 长沙市护航专利代理事务所(特殊普通合伙) 43220 | 代理人: | 莫晓齐 |
地址: | 410005 湖南省长沙市开福区伍家岭街道*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 web 波形 绘制 展示 方法 | ||
本发明涉及集成电路设计技术领域,具体为一种基于web的波形绘制展示方法,包括如下步骤:1、打开文件,将文件内容解析成波形数据,并对波形数据进行封装;2、对波形数据进行预处理,初始化全局实例waveGraph以及画布;3、分别绘制信号展示列表、绘制信号分组、绘制信号位、绘制信号总线、绘制时间刻度、绘制工具栏、绘制快捷菜单;4、分别绑定并监听信号操作事件以及工具栏事件;5、渲染展示,分层渲染已经添加的图形元素、当有数据变化时更新渲染。本发明基于web浏览器,不用安装客户端,波形通过画布绘制,图形由像素组成,在较小的表面或较大数量的节点对象上都能提供很好的性能,绘制后波形还支持图片快照导出。
技术领域
本发明涉及集成电路设计技术领域,特别涉及一种基于web的波形绘制展示方法。
背景技术
目前,数字集成电路中波形绘制展示以客户端的软件形式作为主流方式,波形绘制由形状组成依赖底层C++库,在节点对象数量较少或表面较大的情况下提供更好的性能,但是当绘制节点对象数量过多时出现渲染慢,缺乏动态交互,图形界面的样式比较单调。软件安装文件比较大,安装耗时,程序运行还依赖客户端环境。通常这个过程需要考虑到很多的因素和处理工作,非常耗费精力和时间。因此,有必要对现有的绘制和展示方法进行改进。
发明内容
本发明提供了一种基于web的波形绘制展示方法,以解决现有技术中波形绘制非常耗费精力和时间的技术问题。
为达到上述目的,本发明的技术方案是这样实现的:
本发明提供了一种基于web的波形绘制展示方法,包括如下步骤:
步骤S1、打开VCD波形文件,对VCD波形文件进行解析并提取波形数据,对提取的波形数据进行封装;
步骤S2、将封装后的波形数据进行预处理,并对波形绘制展示系统进行初始化,定义全局实例waveGraph以及初始化Web浏览器中的Canvas画布;
步骤S3、在Canvas画布中绘制各个图形元素,图形圆形包括信号展示列表、绘制信号分组、绘制信号位、绘制信号总线、绘制时间刻度、绘制工具栏、绘制快捷菜单、信号标注、背景、网格线、滚动条;
步骤S4、在波形绘制展示系统中分别绑定并监听信号操作事件以及工具栏事件,完成波形绘制展示系统的事件绑定;
步骤S5、在事件绑定完成的波形绘制展示系统中分层渲染已经绘制的图形元素,当有数据变化时更新渲染。
进一步地,所述步骤S1具体包含如下步骤:
步骤S11、打开VCD波形文件,逐行用正则表达式解析波形数据;解析过程为:分别用正则表达式提前VCD文件内容中的头信息、变量定义和值变化信息;
步骤S12、将波形数据拆成两部分,并分别封装成信号树结构列表和信号值哈希对象。
进一步地,所述步骤S11中的头信息包括版本信息和时间精度,版本信息和时间精度分别包含在version和timescale关键字之内,每一部分通过end关键字指示结尾;
步骤S11中的变量定义,在scope和upscope关键字之间构成一个模块层级,通过这两个关键字的嵌套可以构成不同的模块层级;变量定义通过enddefinitions关键字指示变量定义结束;
步骤S11中的值变化信息在正则表达式提前时,首先判断VCD文件内容行头的字符#,再用正则表达式提前名称、时间和变化值,通过哈希表结构按名词汇总计算,输出转换后的JSON波形数据。
进一步地,所述步骤S2具体包含如下步骤:
步骤S21、加载JSON波形数据,设定每行波形的行高为固定像素,建立展示区最大宽度和信号最大时间的映射关系;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于湖南泛联新安信息科技有限公司,未经湖南泛联新安信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202310198550.8/2.html,转载请声明来源钻瓜专利网。