generatehdl
生成量化的HDL代码DSP滤波器(需要滤波器设计高密度脂蛋白编码器)
语法
描述
generatehdl (___、名称、值)
使用可选名称参数,除了输入参数在以前的语法。使用这些属性来覆盖默认的HDL代码生成设置。
更多细节,请参阅相应的属性在滤波器设计高密度脂蛋白编码器™文档:
自定义过滤器名称、目标文件夹,并指定目标语言,明白了基本HDL代码生成属性(过滤器设计高密度脂蛋白编码器)。
配置系数,复杂的输入端口,可选端口为特定的滤波器类型,明白了高密度脂蛋白过滤器配置属性(过滤器设计高密度脂蛋白编码器)。
优化速度或HDL代码生成,明白了高密度脂蛋白优化性能(过滤器设计高密度脂蛋白编码器)。
自定义端口、标识符和评论,看到的高密度脂蛋白港口和标识符属性(过滤器设计高密度脂蛋白编码器)。
定制高密度脂蛋白结构,明白了高密度脂蛋白构造属性(过滤器设计高密度脂蛋白编码器)。
生成和定制测试台上,看到的高密度脂蛋白试验台性能(过滤器设计高密度脂蛋白编码器)。
第三方的EDA工具集成到过滤器设计工作流程,明白了高密度脂蛋白的合成和工作流自动化属性(过滤器设计高密度脂蛋白编码器)。
例子
生成冷杉的HDL代码Equiripple过滤器
设计一种直接与这些规范对称equiripple过滤器:
0.2标准化的通频带的频率
规范化的阻带频率为0.22
通带波纹1 dB
阻带衰减的60分贝
的设计
函数返回一个dsp.FIRFilter
系统对象™实现规范。
filtSpecs = fdesign.lowpass (“Fp,置,美联社,Ast”,0.2,0.22,1、60);火=设计(filtSpecs,“equiripple”,“FilterStructure”,“dfsymfir”,“SystemObject”,真正的)
火= dsp。FIRFilter属性:结构:“直接形成对称”NumeratorSource:“财产”分子:[-0.0011 -0.0017 -0.0025 -0.0031 -0.0031 -0.0024 -9.7703 e-04 0.0010 0.0031 0.0049 0.0059 0.0057 0.0046 8.1727 -3.8937 -8.8308 -3.9494 0.0029 - 9.8747 e-04 e-04 e-04 e-04 e-04 0.0022 0.0032 0.0033 0.0025 9.6853 -6.5050 e-04 e-04……]InitialConditions: 0显示所有属性
生成HDL代码,调用generatehdl
函数。过滤器是一个系统对象时,您必须指定一个定点数据类型的输入使用InputDataType(过滤器设计高密度脂蛋白编码器)财产。编码器生成该文件MyFilter.vhd
在默认的目标文件夹,hdlsrc
。
generatehdl(火,“InputDataType”15)numerictype(16日,“名字”,“MyFilter”);
# # #开始硬件描述语言(VHDL)过滤器的代码生成过程:MyFilter # # #生成:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex48836167 / hdlsrc / MyFilter。vhd # # # # # #开始代MyFilter VHDL的实体开始代MyFilter硬件描述语言(VHDL)架构# # #成功完成硬件描述语言(VHDL)过滤器的代码生成过程:MyFilter # # # HDL延迟是2样本
生成HDL代码和试验台冷杉Equiripple过滤器
设计一种直接与这些规范对称equiripple过滤器:
0.2标准化的通频带的频率
规范化的阻带频率为0.22
通带波纹1 dB
阻带衰减的60分贝
的设计
函数返回一个dsp.FIRFilter
系统对象™实现规范。
filtSpecs = fdesign.lowpass (“Fp,置,美联社,Ast”,0.2,0.22,1、60);火=设计(filtSpecs,“equiripple”,“FilterStructure”,“dfsymfir”,“SystemObject”,真正的)
火= dsp。FIRFilter属性:结构:“直接形成对称”NumeratorSource:“财产”分子:[-0.0011 -0.0017 -0.0025 -0.0031 -0.0031 -0.0024 -9.7703 e-04 0.0010 0.0031 0.0049 0.0059 0.0057 0.0046 8.1727 -3.8937 -8.8308 -3.9494 0.0029 - 9.8747 e-04 e-04 e-04 e-04 e-04 0.0022 0.0032 0.0033 0.0025 9.6853 -6.5050 e-04 e-04……]InitialConditions: 0显示所有属性
生成VHDL代码和硬件描述语言(VHDL)试验台的冷杉equiripple过滤器。过滤器是一个系统对象时,您必须指定一个定点数据类型的输入数据类型。编码器生成文件MyFilter.vhd
和MyFilterTB.vhd
在默认的目标文件夹,hdlsrc
。
generatehdl(火,“InputDataType”15)numerictype(16日,“名字”,“MyFilter”,…“GenerateHDLTestbench”,“上”,“TestBenchName”,“MyFilterTB”)
# # #开始硬件描述语言(VHDL)过滤器的代码生成过程:MyFilter # # #生成:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex63281302 / hdlsrc / MyFilter。vhd # # # # # #开始代MyFilter VHDL的实体开始代MyFilter硬件描述语言(VHDL)架构# # #成功完成硬件描述语言(VHDL)过滤器的代码生成过程:MyFilter # # # HDL延迟是2 # # #样品开始一代的硬件描述语言(VHDL)试验台。刺激# # # # # #生成输入生成输入刺激;4486个样本长度。# # #生成试验台:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex63281302 / hdlsrc / MyFilterTB。vhd # # #创造刺激向量……# # #完成生成硬件描述语言(VHDL)试验台。
生成HDL代码完全与可编程并行滤波器系数
设计直接形成对称equiripple过滤器完全平行(默认)体系结构和可编程的系数。的设计
函数返回一个dsp.FIRFilter
系统对象™使用默认低通滤波器规范。
firfilt =设计(fdesign.lowpass,“equiripple”,“FilterStructure”,“dfsymfir”,“SystemObject”,真正的)
firfilt = dsp。FIRFilter属性:结构:“直接形成对称”NumeratorSource:“财产”分子:[-0.0024 -0.0021 0.0068 0.0167 0.0111 -0.0062 -0.0084 0.0093 0.0130 -0.0101 -0.0183 0.0114 0.0262 -0.0125 -0.0380 0.0134 0.0582 -0.0140 -0.1027 0.0145 0.3172 0.4854 0.3172 0.0145 -0.1027 -0.0140 0.0582 0.0134 -0.0380 -0.0125……]InitialConditions: 0显示所有属性
生成HDL代码,调用generatehdl
函数。过滤器是一个系统对象时,您必须指定一个定点数据类型的输入数据。为系数生成处理器接口,您必须指定一个额外的名称-值对的论点。
generatehdl (firfilt“InputDataType”15)numerictype(16日,“CoefficientSource”,“ProcessorInterface”)
# # #开始硬件描述语言(VHDL)过滤器的代码生成过程:firfilt # # #生成:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex74213987 / hdlsrc / firfilt。vhd # # # # # #开始代firfilt VHDL的实体开始代firfilt硬件描述语言(VHDL)架构# # #成功完成硬件描述语言(VHDL)过滤器的代码生成过程:firfilt # # # HDL延迟是2样本
编码器生成这对滤波器硬件描述语言(VHDL)的实体对象。
生成部分与可编程串行冷杉滤波器系数
创建一个直接形成反对称滤波器系数:
0.45多项式系数= fir1(22日);firfilt = dsp.FIRFilter (“分子”多项式系数,“结构”,直接形成反对称的)
firfilt = dsp。FIRFilter属性:结构:直接形成反对称的NumeratorSource:“财产”分子:[3.6133 e-04 e-04 8.4473 0.0031 -0.0090 -0.0072 0.0203 0.0272 -0.0341 -0.0794 0.0455 0.3078 0.4490 0.3078 0.0455 -0.0794 -0.0341 0.0272 0.0203 - -0.0072 -0.0090 - 8.4473 0.0031 - 3.6133 e-04 e-04] InitialConditions: 0显示所有属性
生成HDL代码,调用generatehdl
函数。过滤器是一个系统对象时,您必须指定一个定点数据类型的输入数据。生成部分串行架构,指定一个串行分区。要启用CoefficientMemory
财产,必须设置CoefficientSource
来ProcessorInterface
。
generatehdl (firfilt“InputDataType”15)numerictype(16日,…“SerialPartition”7 [4],“CoefficientMemory”,“DualPortRAMs”,…“CoefficientSource”,“ProcessorInterface”)
# # #开始硬件描述语言(VHDL)过滤器的代码生成过程:firfilt # # #生成:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex21465785 / hdlsrc / firfilt。vhd # # # # # #开始代firfilt VHDL的实体开始代firfilt硬件描述语言(VHDL)架构# # #输入采样率的时钟频率是7倍这个架构。# # #成功完成硬件描述语言(VHDL)过滤器的代码生成过程:firfilt # # # HDL延迟是3样本
生成的代码包含一个双端口RAM接口可编程的系数。
产生串行分区冷杉过滤器
探讨不同的串行实现的时钟频率和延迟相同的过滤器。使用对称结构也允许过滤逻辑共享乘数为对称系数。
创建一个与这些规范直接形成对称的冷杉过滤器:
过滤器订单13
6分贝的归一化截止频率为0.4点
的设计
函数返回一个dsp.FIRFilter
系统对象™实现规范。
冷杉=设计(fdesign.lowpass (“N,俱乐部”13。4)“FilterStructure”,“dfsymfir”,“SystemObject”,真正的)
冷杉= dsp。FIRFilter属性:结构:“直接形成对称”NumeratorSource:“财产”分子:[0.0037 0.0045 -0.0115 0.1776 0.3674 0.3674 0.1776 1.0911 -0.0417 - 1.0911 e-17 e-17 -0.0417 -0.0115 0.0045 0.0037] InitialConditions: 0显示所有属性
生成HDL代码,调用generatehdl
函数。过滤器是一个系统对象时,您必须指定一个定点数据类型的输入数据。
基线比较,首先生成一个默认的完全并行体系结构。
generatehdl(杉木、“名字”,“FullyParallel”,…“InputDataType”numerictype(15) 1, 16日)
# # #开始硬件描述语言(VHDL)过滤器的代码生成过程:FullyParallel # # #生成:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex94948885 / hdlsrc / FullyParallel。vhd # # # # # #开始代FullyParallel VHDL的实体开始代FullyParallel硬件描述语言(VHDL)架构# # #成功完成硬件描述语言(VHDL)过滤器的代码生成过程:FullyParallel # # # HDL延迟是2样本
生成一个完全串行架构通过设置分区大小的有效过滤长度。系统时钟频率是六次输入采样率。高密度脂蛋白延迟报道是样品大于默认的并行实现。
generatehdl(杉木、“SerialPartition”6“名字”,“FullySerial”,…“InputDataType”numerictype(15) 1, 16日)
# # #开始硬件描述语言(VHDL)过滤器的代码生成过程:FullySerial # # #生成:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex94948885 / hdlsrc / FullySerial。vhd # # # # # #开始代FullySerial VHDL的实体开始代FullySerial硬件描述语言(VHDL)架构# # #时钟频率是6乘以这个架构的输入采样率。# # #成功完成硬件描述语言(VHDL)过滤器的代码生成过程:FullySerial # # # HDL延迟是3样本
生成一个部分串行架构有三个分区。此体系结构使用三种乘数。时钟频率是两倍的输入速率,延迟是一样的默认的并行实现。
generatehdl(杉木、“SerialPartition”(2 2 2),“名字”,“PartlySerial”,…“InputDataType”numerictype(15) 1, 16日)
# # #开始硬件描述语言(VHDL)过滤器的代码生成过程:PartlySerial # # #生成:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex94948885 / hdlsrc / PartlySerial。vhd # # # # # #开始代PartlySerial VHDL的实体开始代PartlySerial硬件描述语言(VHDL)架构# # #时钟频率是2乘以这个架构的输入采样率。# # #成功完成硬件描述语言(VHDL)过滤器的代码生成过程:PartlySerial # # # HDL延迟是3样本
生成一个cascade-serial架构通过启用蓄电池重用。指定的三个分区的大小降序排列。注意,时钟频率高于利率的部分串行(没有蓄电池重用)的例子。
generatehdl(杉木、“SerialPartition”(3 2 1),“ReuseAccum”,“上”,“名字”,“CascadeSerial”,…“InputDataType”numerictype(15) 1, 16日)
# # #开始硬件描述语言(VHDL)过滤器的代码生成过程:CascadeSerial # # #生成:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex94948885 / hdlsrc / CascadeSerial。vhd # # # # # #开始代CascadeSerial VHDL的实体开始代CascadeSerial硬件描述语言(VHDL)架构# # #时钟频率4乘以这个架构的输入采样率。# # #成功完成硬件描述语言(VHDL)过滤器的代码生成过程:CascadeSerial # # # HDL延迟是3样本
你也可以生成一个cascade-serial建筑如果没有显式指定分区。编码器自动选择分区大小。
generatehdl(杉木、“ReuseAccum”,“上”,“名字”,“CascadeSerial”,…“InputDataType”numerictype(15) 1, 16日)
# # #开始硬件描述语言(VHDL)过滤器的代码生成过程:CascadeSerial # # #生成:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex94948885 / hdlsrc / CascadeSerial。vhd # # # # # #开始代CascadeSerial VHDL的实体开始代CascadeSerial硬件描述语言(VHDL)架构# # #时钟频率4乘以这个架构的输入采样率。# # # # 1有3个输入串行分区。# # # # 2有3个输入串行分区。# # #成功完成硬件描述语言(VHDL)过滤器的代码生成过程:CascadeSerial # # # HDL延迟是3样本
产生串行级联滤波器的分区
创建一个二级级联滤波器与这些规范为每个阶段过滤:
直接形成对称的冷杉过滤器
过滤器订单8
6分贝的归一化截止频率为0.4点
每个调用的设计
函数返回一个dsp.FIRFilter
系统对象™实现规范。的级联
函数返回一个二级级联滤波器。
lp =设计(fdesign.lowpass (“N,俱乐部”8。4)“FilterStructure”,“dfsymfir”,“SystemObject”,真正的)
lp = dsp。FIRFilter属性:结构:“直接形成对称”NumeratorSource:“财产”分子:[-0.0061 -0.0136 0.0512 0.2657 0.4057 0.2657 0.0512 -0.0136 -0.0061]InitialConditions: 0显示所有属性
惠普=设计(fdesign.highpass (“N,俱乐部”8。4)“FilterStructure”,“dfsymfir”,“SystemObject”,真正的)
惠普= dsp。FIRFilter属性:结构:“直接形成对称”NumeratorSource:“财产”分子:[0.0060 0.0133 -0.0501 -0.2598 0.5951 -0.2598 -0.0501 0.0133 0.0060]InitialConditions: 0显示所有属性
李宁公司=级联(lp)、惠普)
李宁公司= dsp。过滤器Cascade with properties: Stage1: [1x1 dsp.FIRFilter] Stage2: [1x1 dsp.FIRFilter] CloneStages: true
生成HDL代码,调用generatehdl
级联滤波器的功能。过滤器是一个系统对象时,您必须指定一个定点数据类型的输入数据。
为每个指定不同的分区级联阶段作为一个单元阵列。
generatehdl (casc和“InputDataType”15)numerictype(16日,“SerialPartition”1,{2 [3],[4]})
# # #开始硬件描述语言(VHDL)过滤器的代码生成过程:casfilt # # # # 1 # # #级联阶段开始硬件描述语言(VHDL)过滤器的代码生成过程:casfilt_stage1 # # #生成:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex16715237 / hdlsrc / casfilt_stage1。vhd # # # # # #开始代casfilt_stage1 VHDL的实体开始代casfilt_stage1硬件描述语言(VHDL)架构# # #时钟频率是3乘以这个架构的输入采样率。# # #成功完成硬件描述语言(VHDL)过滤器的代码生成过程:casfilt_stage1 # 2 # # # # # #级联阶段开始硬件描述语言(VHDL)过滤器的代码生成过程:casfilt_stage2 # # #生成:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex16715237 / hdlsrc / casfilt_stage2。vhd # # # # # #开始代casfilt_stage2 VHDL的实体开始代casfilt_stage2硬件描述语言(VHDL)架构# # #时钟频率4乘以这个架构的输入采样率。# # #成功完成硬件描述语言(VHDL)过滤器的代码生成过程:casfilt_stage2 # # #生成:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex16715237 / hdlsrc / casfilt。vhd # # # # # #开始代casfilt VHDL的实体开始代casfilt硬件描述语言(VHDL)架构# # #成功完成硬件描述语言(VHDL)过滤器的代码生成过程:casfilt # # # HDL延迟是2样本
探索有效的滤波器长度和分区选项为每个过滤阶段的级联,调用hdlfilterserialinfo
函数。函数返回一个分区向量对应一个所需数量的乘数。请求连环分区第一阶段的可能性,并选择一个数量的乘数。
hdlfilterserialinfo (casc.Stage1“InputDataType”numerictype(15) 1, 16日)
| 0 | |总系数A / Symm有效| | - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | 9 | 0 | 4 | 5 |有效的滤波器长度SerialPartition值是5。表的SerialPartition折叠因子值与相应的值的数量和乘数为给定的过滤器。| |折叠因素乘数| SerialPartition | - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | 1 | 5 | (1 1 1 1 1) | | 2 | 3 | (2 2 1) | | 3 | 2 | 2 [3] | | 4 | 2 | [4 1] | | 5 | 1 | [5] |
选择一个系列划分为两个乘数的目标向量,并通过的向量generatehdl
函数。这样调用函数返回第一个可能的分区向量,但有多个分区向量实现two-multiplier架构。每个阶段使用不同的时钟频率基于乘数的数量。编码器生成派生这些时钟的定时控制器。
sp1 = hdlfilterserialinfo (casc.Stage1,“InputDataType”15)numerictype(16日,“乘数”,2)
sp1 =1×23 - 2
sp2 = hdlfilterserialinfo (casc.Stage2,“InputDataType”15)numerictype(16日,“乘数”3)
sp2 =1×32 2 1
generatehdl (casc和“InputDataType”15)numerictype(16日,“SerialPartition”,{sp1, sp2})
# # #开始硬件描述语言(VHDL)过滤器的代码生成过程:casfilt # # # # 1 # # #级联阶段开始硬件描述语言(VHDL)过滤器的代码生成过程:casfilt_stage1 # # #生成:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex16715237 / hdlsrc / casfilt_stage1。vhd # # # # # #开始代casfilt_stage1 VHDL的实体开始代casfilt_stage1硬件描述语言(VHDL)架构# # #时钟频率是3乘以这个架构的输入采样率。# # #成功完成硬件描述语言(VHDL)过滤器的代码生成过程:casfilt_stage1 # 2 # # # # # #级联阶段开始硬件描述语言(VHDL)过滤器的代码生成过程:casfilt_stage2 # # #生成:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex16715237 / hdlsrc / casfilt_stage2。vhd # # # # # #开始代casfilt_stage2 VHDL的实体开始代casfilt_stage2硬件描述语言(VHDL)架构# # #时钟频率是2乘以这个架构的输入采样率。# # #成功完成硬件描述语言(VHDL)过滤器的代码生成过程:casfilt_stage2 # # #生成:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex16715237 / hdlsrc / casfilt。vhd # # # # # #开始代casfilt VHDL的实体开始代casfilt硬件描述语言(VHDL)架构# # #成功完成硬件描述语言(VHDL)过滤器的代码生成过程:casfilt # # # HDL延迟是2样本
为IIR滤波器生成串行架构
创建一个与这些规范直接形式我SOS过滤器:
48 kHz的采样频率
过滤器订单5
10.8 kHz的截止频率3 dB
的设计
函数返回一个dsp.BiquadFilter
系统对象™实现规范。自定义避免了量化误差累加器数据类型。
Fs = 48 e3;Fc = 10.8 e3;N = 5;lp =设计(fdesign.lowpass (“n, f3db”、N、Fc Fs),“黄油”,…“FilterStructure”,“df1sos”,“SystemObject”,真的,“UseLegacyBiquadFilter”,真正的)
lp = dsp。BiquadFilter属性:结构:“直接形式我”SOSMatrixSource:“财产”SOSMatrix: [3 x6双]ScaleValues: x1双[4]NumeratorInitialConditions: 0 DenominatorInitialConditions: 0 OptimizeUnityScaleValues:正确显示所有属性
nt_accum = numerictype (“Signedness”,“汽车”,“字”,20岁,…“FractionLength”15);nt_input = numerictype(15) 1, 16日;lp。NumeratorAccumulatorDataType =“自定义”;lp。CustomNumeratorAccumulatorDataType = nt_accum;lp。DenominatorAccumulatorDataType =“自定义”;lp。CustomDenominatorAccumulatorDataType = nt_accum;
列出所有可能的串行架构规格过滤器,调用hdlfilterserialinfo
函数。过滤器是一个系统对象时,您必须指定一个定点数据类型的输入数据。
hdlfilterserialinfo (lp),“InputDataType”nt_input)
表折叠因素相应数量的乘数为给定的过滤器。| |折叠因素乘数| - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | 6 | 3 | | 9 | 2 | | 18 | 1 |
生成HDL代码,调用generatehdl
函数的一个串行架构。指定的NumMultipliers
或FoldingFactor
属性,但不能两者兼得。例如,使用NumMultipliers
属性:
generatehdl (lp),“NumMultipliers”2,“InputDataType”nt_input)
# # #开始硬件描述语言(VHDL)过滤器的代码生成过程:lp # # #生成:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex90334139 / hdlsrc / lp。vhd # # #开始一代的lp硬件描述语言(VHDL)实体# # #开始一代的lp硬件描述语言(VHDL)架构# # #成功完成硬件描述语言(VHDL)过滤器的代码生成过程:lp # # # HDL延迟是2样本
另外,与指定相同的体系结构FoldingFactor
财产。
generatehdl (lp),“FoldingFactor”9“InputDataType”nt_input)
# # #开始硬件描述语言(VHDL)过滤器的代码生成过程:lp # # #生成:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex90334139 / hdlsrc / lp。vhd # # #开始一代的lp硬件描述语言(VHDL)实体# # #开始一代的lp硬件描述语言(VHDL)架构# # #成功完成硬件描述语言(VHDL)过滤器的代码生成过程:lp # # # HDL延迟是2样本
这两个命令生成一个过滤器使用共有两个乘数,延迟的九个时钟周期。该建筑使用面积低于并行实现,为代价的延迟。
分布式算法单一税率过滤器
使用分布式算术乘数的选项来减少滤波器的实现。
创建一个直接形式冷杉过滤和计算滤波器长度,FL
。
filtdes = fdesign.lowpass (“N, Fc,美联社,Ast”,30岁,0.4,0.05,0.03,“线性”);firfilt =设计(filtdes,“FilterStructure”,“dffir”,“SystemObject”,真正的);FL =(找到(firfilt长度。分子~ = 0))
FL = 31
指定一组分区,分区大小添加到过滤器长度。这只是一个分区选项,您可以指定其他组合的大小。
generatehdl (firfilt“InputDataType”15)numerictype(16日,…“DALUTPartition”(8 8 8 7))
# # #结构冷杉对称系数,考虑转换成结构symmetricfir面积减少。# # #开始硬件描述语言(VHDL)过滤器的代码生成过程:firfilt # # #生成:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex00198568 / hdlsrc / firfilt。vhd # # # # # #开始代firfilt VHDL的实体开始代firfilt硬件描述语言(VHDL)架构# # #时钟频率是16倍的输入采样率这个架构。# # #成功完成硬件描述语言(VHDL)过滤器的代码生成过程:firfilt # # # HDL延迟是3样本
相比之下,创建一个直接形式对称冷杉过滤器。在对称情况下滤波器长度较小的。
filtdes = fdesign.lowpass (“N, Fc,美联社,Ast”,30岁,0.4,0.05,0.03,“线性”);firfilt =设计(filtdes,“FilterStructure”,“dfsymfir”,“SystemObject”,真正的);(找到(firfilt FL =装天花板(长度。分子~ = 0))/ 2)
FL = 16
指定一组分区,分区大小添加到过滤器长度。这只是一个分区选项,您可以指定其他组合的大小。提示:使用hdlfilterdainfo
函数显示有效的滤波器长度,附近地区分区选项,和可能的DARadix
值一个过滤器。
generatehdl (firfilt“InputDataType”15)numerictype(16日,…“DALUTPartition”,8 [8])
# # #开始硬件描述语言(VHDL)过滤器的代码生成过程:firfilt # # #生成:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex00198568 / hdlsrc / firfilt。vhd # # # # # #开始代firfilt VHDL的实体开始代firfilt硬件描述语言(VHDL)架构# # #时钟频率是17倍的输入采样率这个架构。# # #成功完成硬件描述语言(VHDL)过滤器的代码生成过程:firfilt # # # HDL延迟是3样本
分布式算法多重速率的过滤器
使用分布式算术乘数的选项来减少滤波器的实现。
创建一个直接形式冷杉多相杀害多人者,计算滤波器的长度。
d = fdesign.decimator (4);filt =设计(d,“SystemObject”,真正的);FL =大小(多相(filt), 2)
FL = 27
指定分布式算术附近地区的分区添加到过滤器的大小。当你指定分区作为多相滤波器的向量,每个subfilter使用相同的分区。
generatehdl (filt“InputDataType”15)numerictype(16日,…“DALUTPartition”[8 8 8 3])
# # #开始硬件描述语言(VHDL)过滤器的代码生成过程:firdecim # # #生成:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex51670151 / hdlsrc / firdecim。vhd # # # # # #开始代firdecim VHDL的实体开始代firdecim硬件描述语言(VHDL)架构# # #时钟频率是4倍的输入和输出采样率为16倍这个架构。# # #成功完成硬件描述语言(VHDL)过滤器的代码生成过程:firdecim是16 # # # HDL延迟样本
您还可以指定为每个subfilter独特的分区。同样的滤波器,subfilter分区指定为一个矩阵。第一个subfilter的长度是1,其它subfilters长度26。提示:使用hdlfilterdainfo
函数显示有效的滤波器长度,附近地区分区选项,和可能的DARadix
值一个过滤器。
d = fdesign.decimator (4);filt =设计(d,“SystemObject”,真正的);generatehdl (filt“InputDataType”15)numerictype(16日,…“DALUTPartition”,(1 0 0 0;8 8 8 2;8 8 6 4;8 8 8 2])
# # #开始硬件描述语言(VHDL)过滤器的代码生成过程:firdecim # # #生成:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex51670151 / hdlsrc / firdecim。vhd # # # # # #开始代firdecim VHDL的实体开始代firdecim硬件描述语言(VHDL)架构# # #时钟频率是4倍的输入和输出采样率为16倍这个架构。# # #成功完成硬件描述语言(VHDL)过滤器的代码生成过程:firdecim是16 # # # HDL延迟样本
分布式算术级联滤波器
使用分布式算术乘数的选项来减少滤波器的实现。
建立级联滤波器
创建一个二级级联滤波器。定义每个阶段不同的附近地区分区,并指定分区单元阵列的向量。
lp =设计(fdesign.lowpass (“N,俱乐部”8。4)“filterstructure”,“dfsymfir”,…“SystemObject”,真正的);惠普=设计(fdesign.highpass (“N,俱乐部”8。4)“filterstructure”,“dfsymfir”,…“SystemObject”,真正的);李宁公司=级联(lp)、惠普);nt1 = numerictype (1、12、10);generatehdl (casc和“InputDataType”nt1,“DALUTPartition”2、{[3],[2 2 1]})
# # #开始硬件描述语言(VHDL)过滤器的代码生成过程:casfilt # # # # 1 # # #级联阶段开始硬件描述语言(VHDL)过滤器的代码生成过程:casfilt_stage1 # # #生成:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex17169310 / hdlsrc / casfilt_stage1。vhd # # # # # #开始代casfilt_stage1 VHDL的实体开始代casfilt_stage1硬件描述语言(VHDL)架构# # #时钟频率是13倍的输入采样率这个架构。# # #成功完成硬件描述语言(VHDL)过滤器的代码生成过程:casfilt_stage1 # 2 # # # # # #级联阶段开始硬件描述语言(VHDL)过滤器的代码生成过程:casfilt_stage2 # # #生成:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex17169310 / hdlsrc / casfilt_stage2。vhd # # # # # #开始代casfilt_stage2 VHDL的实体开始代casfilt_stage2硬件描述语言(VHDL)架构# # #时钟频率是29乘以这个架构的输入采样率。# # #成功完成硬件描述语言(VHDL)过滤器的代码生成过程:casfilt_stage2 # # #生成:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex17169310 / hdlsrc / casfilt。vhd # # # # # #开始代casfilt VHDL的实体开始代casfilt硬件描述语言(VHDL)架构# # #成功完成硬件描述语言(VHDL)过滤器的代码生成过程:casfilt # # # HDL延迟是4样本
分布式算法的选择
使用hdlfilterdainfo
函数显示有效的滤波器长度,附近地区分区选项,和可能的DARadix
值为每个滤波器级联的舞台。函数返回一个分区向量对应一个号码的地址位。
请求附近地区分区第一阶段的可能性。
hdlfilterdainfo (casc.Stage1“InputDataType”,nt1);
| 0 | |总系数A / Symm有效| | - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | 9 | 0 | 4 | 5 |有效的滤波器长度SerialPartition值是5。表“DARadix”的折叠因子和多值与相应的值附近地区设置为给定的滤波器。多个| | |折叠因素LUT-Sets DARadix | - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | 1 | 12 | 2 ^ 12 | | 3 | 6 | 2 ^ 6 | | 4 | 4 | 2 ^ 4 | | 5 | 3 | 2 ^ 3 | | 7 | 2 | 2 ^ 2 | | 13 | 1 | 2 ^ 1 |附近地区的细节与相应的“DALUTPartition”值。| |马克斯地址宽度大小(位)| |附近地区细节DALUTPartition | - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | 5 | 416 | 1 x32x13 | [5] | | 216 | | 1 x16x12 1 x2x12 | [4 1] | | 3 | 124 | 1 x4x13 1 x8x9 | 2 [3] | | 2 | 104 | 1 x2x12 1 x4x12 1 x4x8 | |(2 2 1)注:1。附近地区的细节表明附近地区的大小。例如1 x1024x18意味着附近地区1024是18位宽的位置。
为第二阶段请求附近地区分区的可能性,你必须首先确定输入数据类型的第二阶段。
y = casc.Stage1 (fi (0, nt1));nt2 = y.numerictype;hdlfilterdainfo (casc.Stage2“InputDataType”nt2);
| 0 | |总系数A / Symm有效| | - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | 9 | 0 | 4 | 5 |有效的滤波器长度SerialPartition值是5。表“DARadix”的折叠因子和多值与相应的值附近地区设置为给定的滤波器。多个| | |折叠因素LUT-Sets DARadix | - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | 1 | | 28日2 ^ 28 | | 3 | 14 | 2 ^ 14 | | 5 | 7 | 2 ^ 7 | | 8 | 4 | 2 ^ 4 | | 15 | 2 | 2 ^ 2 | | 29日| 1 | 2 ^ 1 |附近地区的细节与相应的“DALUTPartition”值。| |马克斯地址宽度大小(位)| |附近地区细节DALUTPartition | - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | 5 | 896 | 1 x32x28 | [5] | | 488 | | 1 x16x27 1 x2x28 | [4 1] | | 3 | 304 | 1 x4x28 1 x8x24 | 2 [3] | | 2 | 256 | 1 x2x28 1 x4x23 1 x4x27 | |(2 2 1)注:1。附近地区的细节表明附近地区的大小。例如1 x1024x18意味着附近地区1024是18位宽的位置。
每个阶段不同附近地区分区
选择地址宽度和折叠因素为每个阶段获得附近地区分区。第一阶段使用附近地区最大地址大小的五位。第二阶段使用附近地区最大地址大小的三个部分。他们运行在相同的时钟频率,有不同的附近地区分区。
dp1 = hdlfilterdainfo (casc.Stage1,“InputDataType”nt1,…“LUTInputs”5,“FoldingFactor”3);dp2 = hdlfilterdainfo (casc.Stage2,“InputDataType”nt1,…“LUTInputs”3,“FoldingFactor”5);generatehdl (casc和“InputDataType”nt1,“DALUTPartition”,{dp1、dp2});
# # #开始硬件描述语言(VHDL)过滤器的代码生成过程:casfilt # # # # 1 # # #级联阶段开始硬件描述语言(VHDL)过滤器的代码生成过程:casfilt_stage1 # # #生成:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex17169310 / hdlsrc / casfilt_stage1。vhd # # # # # #开始代casfilt_stage1 VHDL的实体开始代casfilt_stage1硬件描述语言(VHDL)架构# # #时钟频率是13倍的输入采样率这个架构。# # #成功完成硬件描述语言(VHDL)过滤器的代码生成过程:casfilt_stage1 # 2 # # # # # #级联阶段开始硬件描述语言(VHDL)过滤器的代码生成过程:casfilt_stage2 # # #生成:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex17169310 / hdlsrc / casfilt_stage2。vhd # # # # # #开始代casfilt_stage2 VHDL的实体开始代casfilt_stage2硬件描述语言(VHDL)架构# # #时钟频率是29乘以这个架构的输入采样率。# # #成功完成硬件描述语言(VHDL)过滤器的代码生成过程:casfilt_stage2 # # #生成:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex17169310 / hdlsrc / casfilt。vhd # # # # # #开始代casfilt VHDL的实体开始代casfilt硬件描述语言(VHDL)架构# # #成功完成硬件描述语言(VHDL)过滤器的代码生成过程:casfilt # # # HDL延迟是4样本
不同的DARadix
每个阶段的值
你也可以指定不同的DARadix
值为每个滤波器级联。你只能在命令行指定不同的级联分区。当你指定的分区产生高密度脂蛋白对话框,所有级联阶段使用相同的分区。检查的结果hdlfilterdainfo
设置DARadix
值为每个阶段。
generatehdl (casc和“InputDataType”nt1,…“DALUTPartition”2、{[3],[2 2 1)},“DARadix”,{2 ^ 3、2 ^ 7})
# # #开始硬件描述语言(VHDL)过滤器的代码生成过程:casfilt # # # # 1 # # #级联阶段开始硬件描述语言(VHDL)过滤器的代码生成过程:casfilt_stage1 # # #生成:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex17169310 / hdlsrc / casfilt_stage1。vhd # # # # # #开始代casfilt_stage1 VHDL的实体开始代casfilt_stage1硬件描述语言(VHDL)架构# # #时钟频率是5乘以这个架构的输入采样率。# # #成功完成硬件描述语言(VHDL)过滤器的代码生成过程:casfilt_stage1 # 2 # # # # # #级联阶段开始硬件描述语言(VHDL)过滤器的代码生成过程:casfilt_stage2 # # #生成:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex17169310 / hdlsrc / casfilt_stage2。vhd # # # # # #开始代casfilt_stage2 VHDL的实体开始代casfilt_stage2硬件描述语言(VHDL)架构# # #时钟频率是5乘以这个架构的输入采样率。# # #成功完成硬件描述语言(VHDL)过滤器的代码生成过程:casfilt_stage2 # # #生成:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex17169310 / hdlsrc / casfilt。vhd # # # # # #开始代casfilt VHDL的实体开始代casfilt硬件描述语言(VHDL)架构# # #成功完成硬件描述语言(VHDL)过滤器的代码生成过程:casfilt # # # HDL延迟是4样本
级联滤波器与多个架构
指定不同的过滤器体系结构级联滤波器的不同阶段。您可以指定一个串行、分布式算术(DA)和并行架构根据你的硬件约束。
建立级联滤波器
创建一个三级过滤。每个阶段都是不同的类型。
h1 = dsp.FIRFilter (“分子”,[0.05 -。25 .88点0.9 .88点-。25 0.05]);h2 = dsp.FIRFilter (“分子”(-0.008 0.06 -0.44 0.44 -0.06 - 0.008),…“结构”,直接形成反对称的);h3 = dsp.FIRFilter (“分子”(-0.008 0.06 0.44 0.44 0.06 - -0.008),…“结构”,直接形成对称的);李宁公司=级联(h1, h2, h3);
为每个阶段指定架构
为第一阶段指定DA架构,为第二阶段串行架构,一个完全平行(默认)架构第三阶段。
获得DARadix
价值观第一建筑使用hdlfilterdainfo
,然后选择一个值博士
。
元= numerictype (1、12、10);[dp,博士,lutsize, ff) = hdlfilterdainfo (casc.Stage1,…“InputDataType”10)numerictype(12日);博士
博士=6 x1细胞{' 2 ^ 12}{2 ^ 6的}{2 ^ 4的}{' 2 ^ 3}{2 ^ 2的}{2 ^ 1的}
属性值设置为细胞阵列,每个单元适用于舞台。禁用一个属性为特定阶段,使用默认值(1和2的分区DARadix
)。
generatehdl (casc和“InputDataType”元,…“SerialPartition”{1,3,1},…“DALUTPartition”,{3 [4],1,1},…“DARadix”,{2 ^ 6 2 2});
# # #结构冷杉对称系数,考虑转换成结构symmetricfir面积减少。# # #开始硬件描述语言(VHDL)过滤器的代码生成过程:casfilt # # # # 1 # # #级联阶段开始硬件描述语言(VHDL)过滤器的代码生成过程:casfilt_stage1 # # #生成:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex13094988 / hdlsrc / casfilt_stage1。vhd # # # # # #开始代casfilt_stage1 VHDL的实体开始代casfilt_stage1硬件描述语言(VHDL)架构# # #时钟频率是2乘以这个架构的输入采样率。# # #成功完成硬件描述语言(VHDL)过滤器的代码生成过程:casfilt_stage1 # 2 # # # # # #级联阶段开始硬件描述语言(VHDL)过滤器的代码生成过程:casfilt_stage2 # # #生成:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex13094988 / hdlsrc / casfilt_stage2。vhd # # # # # #开始代casfilt_stage2 VHDL的实体开始代casfilt_stage2硬件描述语言(VHDL)架构# # #时钟频率是3乘以这个架构的输入采样率。# # #成功完成硬件描述语言(VHDL)过滤器的代码生成过程:casfilt_stage2 # # # # 3 # # #级联阶段开始硬件描述语言(VHDL)过滤器的代码生成过程:casfilt_stage3 # # #生成:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex13094988 / hdlsrc / casfilt_stage3。vhd # # # # # #开始代casfilt_stage3 VHDL的实体开始代casfilt_stage3硬件描述语言(VHDL)架构# # #成功完成硬件描述语言(VHDL)过滤器的代码生成过程:casfilt_stage3 # # #生成:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex13094988 / hdlsrc / casfilt。vhd # # # # # #开始代casfilt VHDL的实体开始代casfilt硬件描述语言(VHDL)架构# # #成功完成硬件描述语言(VHDL)过滤器的代码生成过程:casfilt # # # HDL延迟是3样本
试验台的冷杉滤波器系数可编程
您可以指定输入系数与可编程测试过滤器系数。
创建一个直接形式对称冷杉过滤器与一个完全平行(默认)体系结构。定义过滤器对象的系数向量b
。编码器生成试验台代码测试接口使用第二组系数,系数c
。修剪的编码器c
过滤器的有效长度。
b = (-0.01 0.1 - 0.8 0.1 - -0.01);c = (-0.03 0.5 - 0.7 0.5 - -0.03);c = c(1:装天花板(长度(c) / 2));filt = dsp.FIRFilter (“分子”b“结构”,直接形成对称的);generatehdl (filt“InputDataType”15)numerictype(16日,…“GenerateHDLTestbench”,“上”,…“CoefficientSource”,“ProcessorInterface”,“TestbenchCoeffStimulus”c)
# # #开始硬件描述语言(VHDL)过滤器的代码生成过程:firfilt # # #生成:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex66247050 / hdlsrc / firfilt。vhd # # # # # #开始代firfilt VHDL的实体开始代firfilt硬件描述语言(VHDL)架构# # #成功完成硬件描述语言(VHDL)过滤器的代码生成过程:firfilt # # # HDL延迟是2 # # #样品开始一代的硬件描述语言(VHDL)试验台。刺激# # # # # #生成输入生成输入刺激;3107个样本长度。# # #生成试验台:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex66247050 / hdlsrc / firfilt_tb。vhd # # #创造刺激向量……# # #完成生成硬件描述语言(VHDL)试验台。
IIR滤波器系数与可编程
创建一个过滤器规范。生成HDL代码时,指定一个可编程接口的系数。
Fs = 48 e3;Fc = 10.8 e3;N = 5;f_lp = fdesign.lowpass (“n, f3db”、N、Fc Fs);filtiir =设计(f_lp,“黄油”,“FilterStructure”,“df2sos”,“SystemObject”,真的,“UseLegacyBiquadFilter”,真正的);filtiir。OptimizeUnityScaleValues = 0;generatehdl (filtiir“InputDataType”15)numerictype(16日,…“CoefficientSource”,“ProcessorInterface”)
# # #开始硬件描述语言(VHDL)过滤器的代码生成过程:filtiir # # #生成:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex92389569 / hdlsrc / filtiir。vhd # # # # # #开始代filtiir VHDL的实体开始代filtiir硬件描述语言(VHDL)架构# # #二阶节# 1 # # #二阶节# 2 # # #一阶部分,# 3 # # #成功完成硬件描述语言(VHDL)过滤器的代码生成过程:filtiir # # # HDL延迟是2样本
编码器生成这对滤波器硬件描述语言(VHDL)的实体对象。
时钟端口多重速率的过滤器
探索不同的方式来指定时钟端口多重速率的过滤器。
默认设置
创建一个多相采样率转换器。默认情况下,编码器生成一个单一的输入时钟(clk
),一个输入时钟使(clk_enable
),和一个时钟使输出信号命名ce_out
。的ce_out
信号表明当输出样本已经准备好了。的ce_in
输出信号表示当输入样本接受。您可以使用这个信号来控制上游数据流。
firrc = dsp.FIRRateConverter (“InterpolationFactor”5,“DecimationFactor”3);generatehdl (firrc“InputDataType”numerictype(15) 1, 16日)
# # #开始硬件描述语言(VHDL)过滤器的代码生成过程:firrc # # #生成:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex09049114 / hdlsrc / firrc。vhd # # # # # #开始代firrc VHDL的实体开始代firrc硬件描述语言(VHDL)架构# # #成功完成硬件描述语言(VHDL)过滤器的代码生成过程:firrc # # # HDL延迟是2样本
所生成的实体有以下信号:
自定义时钟的名字
你可以提供自定义的名称输入时钟启用和输出时钟信号。你不能重命名ce_in
信号。
firrc = dsp.FIRRateConverter (“InterpolationFactor”5,“DecimationFactor”3)
firrc = dsp。FIRRateConverter属性:主要InterpolationFactor: 5 DecimationFactor: 3 NumeratorSource:“财产”分子:[0 -1.8884 -2.2552 -1.6044 -6.6976 e-05 e-04 e-04 e-04 0 6.2531 8.2104 6.5785 3.2095 e-04 e-04 e-04 e-04 e-04 -0.0018 -0.0021 -0.0015 -9.1992 0 0 0 0.0021 0.0039 0.0045 0.0032 -0.0042 -0.0077 -0.0087 -0.0061 0.0076 0.0138 0.0154……)显示所有属性
generatehdl (firrc“InputDataType”15)numerictype(16日,…“ClockEnableInputPort”,“clk_en1”,…“ClockEnableOutputPort”,“clk_en2”)
# # #开始硬件描述语言(VHDL)过滤器的代码生成过程:firrc # # #生成:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex09049114 / hdlsrc / firrc。vhd # # # # # #开始代firrc VHDL的实体开始代firrc硬件描述语言(VHDL)架构# # #成功完成硬件描述语言(VHDL)过滤器的代码生成过程:firrc # # # HDL延迟是2样本
所生成的实体有以下信号:
多个时钟输入
生成多个时钟支持多频滤波器的输入信号,设置金宝appClockInputs
财产“多”
。在这种情况下,编码器不生成任何输出时钟使港口。
decim = dsp.CICDecimator (7、1、4);generatehdl (decim“InputDataType”15)numerictype(16日,…“ClockInputs”,“多”)
# # #开始硬件描述语言(VHDL)过滤器的代码生成过程:cicDecOrIntFilt # # #生成:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex09049114 / hdlsrc / cicDecOrIntFilt。vhd # # # # # #开始代cicDecOrIntFilt VHDL的实体开始代cicDecOrIntFilt硬件描述语言(VHDL)架构# # # # 1:部分积分器# # # # 2:部分积分器# # # # 3:部分积分器# # # # 4:部分积分器# # # # 5节:梳子# # # # 6节:梳子# # # # 7节:梳子# # # # 8节:梳子# # #成功完成硬件描述语言(VHDL)过滤器的代码生成过程:cicDecOrIntFilt # # # HDL延迟7样品
所生成的实体有以下信号:
生成默认的阿尔特拉第二第四的合成脚本
创建一个过滤器对象。然后调用generatehdl
,并指定一个合成工具。
lpf = fdesign.lowpass (“fp,置,美联社,ast”,0.45,0.55,1、60);firfilt =设计(通滤波器,“equiripple”,“FilterStructure”,“dfsymfir”,…“SystemObject”,真正的);generatehdl (firfilt“InputDataType”13)、numerictype(1、14日,…“HDLSynthTool”,“第四的”);
# # #开始硬件描述语言(VHDL)过滤器的代码生成过程:firfilt # # #生成:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex92219095 / hdlsrc / firfilt。vhd # # # # # #开始代firfilt VHDL的实体开始代firfilt硬件描述语言(VHDL)架构# # #成功完成硬件描述语言(VHDL)过滤器的代码生成过程:firfilt # # # HDL延迟是2样本
编码器生成一个脚本文件命名firfilt_quartus.tcl
,使用默认的脚本属性阿尔特拉®第二第四的合成工具。
类型hdlsrc / firfilt_quartus.tcl
load_package流设置top_level firfilt src_dir设置”。mkdir / hdlsrc q2dir“设置prj_dir文件. ./ $ prj_dir cd . .美元/ $ prj_dir project_new top_level修订美元top_level覆盖set_global_assignment - name家庭“Stratix II”set_global_assignment - name设备EP2S60F484C3 set_global_assignment - name TOP_LEVEL_ENTITY美元top_level set_global_assignment - name . . / $ src_dir / firfilt vhdl_FILE”。vhd”execute_flow编译project_close
构建定制合成脚本
可以设置脚本自动化属性来说明虚拟值编码器结构的合成脚本属性。
设计一个过滤器和产生高密度脂蛋白。指定一个合成工具,自定义文本中包含合成脚本。
lpf = fdesign.lowpass (“fp,置,美联社,ast”,0.45,0.55,1、60);firfilt =设计(通滤波器,“equiripple”,“FilterStructure”,“dfsymfir”,…“Systemobject”,真正的);generatehdl (firfilt“InputDataType”13)、numerictype(1、14日,…“HDLSynthTool”,“伊势”,…“HDLSynthInit”,“init第1行:模块名称% s \ ninit第2行\ n”,…“HDLSynthCmd”,'命令:高密度脂蛋白文件名是% s \ n”,…“HDLSynthTerm”,“1 \ nterm线2 \ n”一词);
# # #开始硬件描述语言(VHDL)过滤器的代码生成过程:firfilt # # #生成:/ tmp / Bdoc23a_2213998_478575 / tpadc45a61 hdlfilter-ex64737676 / hdlsrc / firfilt。vhd # # # # # #开始代firfilt VHDL的实体开始代firfilt硬件描述语言(VHDL)架构# # #成功完成硬件描述语言(VHDL)过滤器的代码生成过程:firfilt # # # HDL延迟是2样本
编码器生成一个脚本文件命名firfilt_ise.tcl
。注意指定的自定义文本的位置。您可以使用此功能添加合成指令生成的脚本。
类型hdlsrc / firfilt_ise.tcl
init第1行:模块的名字叫firfilt init 2命令行:高密度脂蛋白firfilt文件名。vhd项第1行项第2行
输入参数
filtSO
- - - - - -过滤器
过滤系统对象
过滤器的生成HDL代码,指定为一个过滤系统对象。要创建一个过滤系统对象,可以使用设计
函数或看到页面的对象的引用。您可以使用以下系统对象从DSP系统工具箱™:
单一税率的过滤器
nt
- - - - - -输入数据类型
numerictype
对象
输入数据类型,指定为一个numerictype
(定点设计师)对象。这种说法只适用于当输入滤波器是一个系统对象。调用numerictype(年代,w, f)
,在那里年代
是无符号的签署的1和0,w
是位字长,f
是部分的数量。
fd
- - - - - -分数延迟数据类型
numerictype
对象
分数延迟数据类型,指定为一个numerictype
(定点设计师)对象。这种说法只适用于当输入滤波器dsp.VariableFractionalDelay
系统对象。调用numerictype(年代,w, f)
,在那里年代
是无符号的签署的1和0,w
是位字长,f
是部分的数量。
filterObj
- - - - - -过滤器
dfilt
对象
过滤器的生成HDL代码,指定为一个dfilt
对象。您可以创建这个对象使用设计
函数。支持过滤特性的概述,请参阅金宝app过滤器配置选项(过滤器设计高密度脂蛋白编码器)。
选择
您可以使用fdhdltool
(过滤器设计高密度脂蛋白编码器)函数来生成HDL代码而不是(需要滤波器设计HDL编码)。指定输入和分数延迟数据类型作为参数,然后设置附加属性产生高密度脂蛋白的对话框。
版本历史
之前介绍过的R2006a
另请参阅
generatetbstimulus
(过滤器设计高密度脂蛋白编码器)|fdhdltool
(过滤器设计高密度脂蛋白编码器)
MATLAB命令
你点击一个链接对应MATLAB命令:
运行该命令通过输入MATLAB命令窗口。Web浏览器不支持MATLAB命令。金宝app
你也可以从下面的列表中选择一个网站:
表现最好的网站怎么走吗
选择中国网站(中文或英文)最佳站点的性能。其他MathWorks国家网站不优化的访问你的位置。