当前位置: 首页 > news >正文

执行matlab后进行RTL功能仿真check

1 背景简介

最近在做算法的RTL实现,算法是通过matlab来写的,但RTL设计做完了还需要进行多场景仿真,和算法进行一一比对,由于功能case较多,每跑一次仿真都要先手动跑一次算法,然后再跑一次功能仿真,效率很低,想着能不能一个命令算法和功能仿真一起执行了,因此就有了这个笔记整理,写记录一下,后续进步了再来修改。

2 整理思路

仿真命令是通过makefile来实现的,因此也想通过makefile来之行matlab,同时并将需要配置的参数传递给matlab,让matlab根据具体的配置来执行。

因此以前的RTL功能仿真的命令不变,只需要在makefile里加一个matlab的命令即可。下面记录一种方法,肯定还有其他更好的方法,以后找到了再补充修改吧……

3 脚本简记

makefile中的命令如下:

reg1 = 32
reg2 = 10
reg3 = crc_on
reg4 = 1matlab:@matlab_test.csh "$(reg1)" "$(reg2)" "'$(reg3)'" "$(reg4)"

说明一下,matlab_test.csh是用shell写的一个脚本文件,用来执行matlab,reg1/reg2/'reg3'/reg4都是要传参给matlab的参数,传递的参数可能是纯数字,也可能是字符串,如果是字符或者字符串需要加上单引号,如'reg3'一样。

执行matlab时只需要把需要的参数通过make命令传递则可以,如下所示。

make matlab reg1=9+reg2=10+reg3=crc_off+reg4=0

matlab_test.csh这个文件比较关键,不仅要接收外面传进来的参数,还需要带参数运行matlab,该文件的大致内容如下:

#!/bin/cshset v1 = “$1”
set v2 = “$2”
set v3 = “$3”
set v4 = “$4”echo "===========config data============="
echo "           v1: $v1                 "
echo "           v2: $v2                 "
echo "           v3: $v3                 "
echo "           v4: $v4                 "
echo "==================================="matlab -nojvm -noFigureWindows -nodisplay -nodesktop -nosplash -batch "matlab_main $v1 $v2 $v3 $v4;exit"

需要注意的是此处提到的matlab_main是一个matlab的函数,后面跟的$v1/$v2/$v3/$v4分别指的是参数reg1/reg2/'reg3'/reg4,都是需要传递给matlab的参数。把我们之前执行的matlab主函数改写成matlab函数即可,但需要注意的是在打印输出相关的数据文件时需要把打开文件、写入文件、关闭文件的都行在同一行,这是由shell语法决定的。

4 写在最后

简单整理到这里,后面有机会再做修改补充……


http://www.mrgr.cn/news/29454.html

相关文章:

  • FlinkPipelineComposer 详解
  • 【机器学习】机器学习中用到的高等数学知识
  • SpringCloud学习笔记
  • Linux软件包管理与Vim编辑器使用指南
  • 人工智能数据栈互操作性架构师指南
  • 数字后端教程之Innovus report_property和get_property使用方法及应用案例
  • MySQL慢查询日志
  • 浅谈Tair缓存的三种存储引擎MDB、LDB、RDB
  • 力扣(LeetCode)每日一题 2848. 与车相交的点
  • 龙蜥anolis8.9安装hadoop3.3.6伪分布环境
  • JAVA对象、List、Map和JSON之间的相互转换
  • WhatsApp藏着这么多功能秘密,让我带你一一探索
  • 自动化测试框架pytest命令参数
  • 实战15-状态栏颜色
  • 第二届Apache Flink极客挑战赛冠军比赛攻略_SkyPeaceLL队
  • dcmtk的自动输入数据纠错模式对DICOMDIR读取的影响
  • golang面试
  • 被复线远传设备ACC1800J-2W/4W2F1E16P
  • 2024年Apple Search Ads(简称:苹果ASA):开展有效活动的秘诀
  • 为什么宠物空气净化器价格差别那么大?好用的宠物空气净化器推荐
  • [ABC330E] Mex and Update
  • 超详细一文到底!软件测试基本流程
  • 如何对企业源代码进行加密?10个保护企业源代码防泄密方法
  • 非常实用的桌面日历 你桌面上的备忘录和提醒工具
  • 巨坑!!华为大数据平台sparksql,连接gauss200数据库
  • ESXI主机证书报错