主要内容

比较使用socModelAnalyzer冷杉滤波器实现

这个例子展示了如何分析和比较不同实现的仿真软件®算法基于算术运算的数量。金宝app使用SoC BlocksetsocModelAnalyzer函数来生成报告显示运营商的数量的不同实现冷杉过滤器使用静态和运行时执行。

设计任务和要求

这个设计任务评估两种实现冷杉过滤和比较了实现的成本。这个示例使用运营商的数量来测量实施成本。

以满足系统需求,如速度、延迟,和硬件资源,考虑和比较几种算法的实现。算术运算符用于执行的数量可以帮助你识别资源的使用和分配。

手工分析和计算算术运算符的数量可以是乏味的,容易出错,耗费时间。手工计算可以准确的算法涉及一个分支,循环,或者递归构造和可能无法计算,如果执行路径取决于输入数据或随机因素(例如,收敛算法)。

结构的模型

soc_analyze_FIR_tb模型实现了一个低通数字滤波器在两个方面。Symmetric_FIR子系统利用对称系数优化资源。Transposed_FIR子系统采用滤波器结构面向更高速度的操作。模型使用了一个线性调频输入信号作为输入的刺激和FIR_ref(离散冷杉过滤器)块作为参考检查数值实现的正确性。

打开soc_analyze_FIR_tb模型仿真软件和检查金宝app的结构模型。

open_system (“soc_analyze_FIR_tb”);

设计低通滤波器我们使用filterDesigner(DSP系统工具箱)应用程序为8日订单生成系数冷杉过滤器。冷杉滤波器的截止频率为0.25(归一化)和通带波纹和阻带衰减1 dB和60 dB,分别。模型集这些系数通过模型初始化的回调。

模拟的模型来验证功能实现对参考冷杉块。匹配滤波器的响应实现参考。

sim卡(“soc_analyze_FIR_tb”);

使用模型分析比较实现

使用socModelAnalyzer函数来生成报告的数量在每个实现和比较实现算术运算符。报告生成模型的使用运行时执行。

对称的冷杉过滤器:

估计的数量运营商对于对称滤波器实现,使用socModelAnalyzer函数。指定子系统的名称IncludeBlockPath名称-值对函数的参数。设置输出文件夹指定在生成的报告。在MATLAB命令提示符输入这个命令。

socModelAnalyzer (“soc_analyze_FIR_tb.slx”,“文件夹”,“report_sym”,“IncludeBlockPath”,“soc_analyze_FIR_tb / Symmetric_FIR”);
为/ tmp / Bdoc22b_2134332_2870326生成运营商分析报告/ tp21597950 / soc-ex82446029 / soc_analyze_FIR_tb。基金……保存报告文件/ tmp / Bdoc22b_2134332_2870326 / tp21597950 soc-ex82446029 / report_sym。运营商估计:< a href = " matlab: socAlgorithmAnalyzerReport (“/ tmp / Bdoc22b_2134332_2870326 / tp21597950 / soc-ex82446029 / report_sym / soc_analyze_FIR_tb.mat’)”< / > >查看器打开报告完成了。

通过单击打开报告打开报表查看器链接在MATLAB控制台上。或者,您可以使用socAlgorithmAnalyzerReport函数。该报告提供了两种观点。第一个观点是运营商的观点,介绍了数据,每一行对应一个操作符。使用这个视图中,点击操作视图在将来发布报告。第二种观点是每一行对应的模型视图模型子系统的道路。金宝app使用这个视图中,点击模型视图在将来发布报告。报告也保存在report_sym文件夹MAT-file (soc_analyze_FIR_tb.mat)和一个Excel®文件(soc_analyze_FIR_tb.xlsx)。

默认情况下,操作员的报告打开视图。观众打开每个操作符和数据类型的聚合视图。例如,对称的冷杉过滤器包含共有8添加(+)运营商的数据类型和5MUL (*)运营商的数据类型执行10001次。(模型仿真时间10年代和基准利率是10 ms。生产10000模拟初始化周期+ 1)。每个运营商的详细报告,扩大运营商。报告显示操作员算作用于不同的块。跟踪操作员通过点击一个链接在最后一列的报告强调运营商的位置soc_analyze_FIR_tb模型。

转置冷杉过滤器

估计的数量运营商转置冷杉滤波器实现,使用socModelAnalyzer函数。指定“soc_analyze_FIR_tb / Transposed_FIR”“IncludeBlockPath”名称-值对函数的参数。设置输出文件夹中生成的报告report_trans。在MATLAB命令提示符输入这个命令。

socModelAnalyzer (“soc_analyze_FIR_tb.slx”,“文件夹”,“report_trans”,“IncludeBlockPath”,“soc_analyze_FIR_tb / Transposed_FIR”);
为/ tmp / Bdoc22b_2134332_2870326生成运营商分析报告/ tp21597950 / soc-ex82446029 / soc_analyze_FIR_tb。基金……保存报告文件/ tmp / Bdoc22b_2134332_2870326 / tp21597950 soc-ex82446029 / report_trans。运营商估计:< a href = " matlab: socAlgorithmAnalyzerReport (“/ tmp / Bdoc22b_2134332_2870326 / tp21597950 / soc-ex82446029 / report_trans / soc_analyze_FIR_tb.mat’)”< / > >查看器打开报告完成了。

打开报告转置冷杉过滤器通过单击打开报表查看器链接在MATLAB控制台上。

转置滤波器的估计报告显示8添加的数据类型和9的乘法数据类型(每个操作符执行10001次)。

比较对称和转置实现

比较对称和转置冷杉过滤报告生成的使用socModelAnalyzer函数。对称的冷杉过滤器使用乘法操作符(9)少于转置冷杉过滤器(5)。他们都使用相同数量的添加操作符(8)。

结论

你使用了socModelAnalyzer函数估计和分析算术运算符的数量在两个数字滤波器实现。你运营商报告生成对称和转置FIR滤波器。你比较的数量乘法和添加两个实现的运营商。

您可以使用socModelAnalyzer函数模型算法分析运营商的数量。金宝app

另请参阅

|