主要内容

coder.HdlConfig

高密度脂蛋白codegen配置对象

描述

一个coder.HdlConfig对象包含高密度脂蛋白的配置参数codegen函数需要生成HDL代码。通过这个对象codegen功能,使用配置选择。

创建

描述

例子

hdlcfg = coder.config(高密度脂蛋白)创建一个coder.HdlConfig对象HDL代码生成。

属性

全部展开

一般

HDL编码标准遵循生成代码时,指定为一个特征向量数组或字符串。生成一个合规报告显示错误、警告和消息。

例子:“行业”“行业”

数据类型:字符|字符串

HDL编码标准和报告定制规则,规定使用HDL编码标准定制属性。有关更多信息,请参见HDL编码标准的定制属性。如果你想定制编码标准规则和报告,您必须设置HDLCodingStandard“行业”

目标语言生成的代码,指定为一个特征向量数组或字符串。

例子:“Verilog”“Verilog”

数据类型:字符|字符串

试验台的功能名称,指定为一个特征向量数组或字符串。您必须指定一个试验台。

数据类型:字符|字符串

工作流

选项来生成一个cosimulation试验台,指定为一个数字或逻辑1(真正的)或0(假)。

数据类型:逻辑

选项来生成一个费尔试验台,指定为一个数字或逻辑1(真正的)或0(假)。

数据类型:逻辑

选项来生成一个高密度脂蛋白试验台,指定为一个数字或逻辑1(真正的)或0(假)。

数据类型:逻辑

选择模拟生成cosimulation试验台,指定为一个数字或逻辑1(真正的)或0(假)。这个选项将被忽略GenerateCosimTestBench

数据类型:逻辑

选择模拟生成cosimulation试验台,指定为一个数字或逻辑1(真正的)或0(假)。这个选项将被忽略GenerateCosimTestBench

数据类型:逻辑

选择模拟生成的代码,指定为一个数字或逻辑1(真正的)或0(假)。

数据类型:逻辑

选择合成生成的代码,指定为一个数字或逻辑1(真正的)或0(假)。

数据类型:逻辑

SystemC试验台函数名称指定为一个特征向量数组或字符串。指定的测试台上SystemC代码生成。

例子:与随机输入刺激的试验台

数据类型:字符|字符串

目标工具的选择

deassertion之间的时间(在时钟周期)复位和时钟启用断言。

数据类型:int32

纳秒时钟高的数量。

数据类型:int32

纳秒时钟的数量很低。

数据类型:int32

输入信号的保存时间和强制复位信号,指定在纳秒。

数据类型:int32

选择日志和情节参考设计函数的输出和HDL模拟器,指定为一个数字或逻辑1(真正的)或0(假)。

数据类型:逻辑

指定的时间(在时钟周期)之间的断言和deassertion重置。

数据类型:int32

高密度脂蛋白在仿真模拟器运行模式,指定为一个特征向量数组或字符串。在批处理模式中,您没有看到HDL模拟器UI。高密度脂蛋白模拟器模拟后关闭。

例子:“图形用户界面”“图形用户界面”

数据类型:字符|字符串

高密度脂蛋白模拟器生成的cosim试验台,指定为一个特征向量数组或字符串。

例子:“尖锐”“尖锐”

数据类型:字符|字符串

额外的源文件包含列表,指定为一个特征向量数组或字符串。单独的文件名称通过使用一个分号(;)。

数据类型:字符|字符串

FPGA的IP地址,指定为一个特征向量数组或字符串。您必须输入一个有效的IP地址。

数据类型:字符|字符串

FPGA板的MAC地址,指定为一个特征向量数组或字符串。你必须输入一个有效的MAC地址。

数据类型:字符|字符串

FPGA板名称指定为一个特征向量数组或字符串。你必须重写默认值并指定一个有效的董事会的名字。

数据类型:字符|字符串

选择日志和情节参考设计函数的输出和FPGA,指定为一个数字或逻辑1(真正的)或0(假)。

数据类型:逻辑

仿真工具名称,指定为一个特征向量数组或字符串。

例子:“ISIM”“ISIM”

数据类型:字符|字符串

合成工具名称,指定为一个特征向量数组或字符串。

例子:“Xilinx Vivado”“Xilinx Vivado”

数据类型:字符|字符串

合成目标芯片的姓,指定为一个特征向量数组或字符串。

数据类型:字符|字符串

合成目标设备名称,指定为一个特征向量数组或字符串。

数据类型:字符|字符串

矢量合成目标包名称,指定为一个字符或字符串数组。

数据类型:字符|字符串

合成目标速度、指定为一个特征向量数组或字符串。

数据类型:字符|字符串

MHz,指定目标频率的时钟的时钟输入连接到生成的HDL设计。这个频率是一样的输出时钟模块的时钟频率。自适应流水线考虑目标频率你将提高你的设计的频率。

数据类型:

代码风格

选择初始化块RAM0为模拟,指定为一个数字或逻辑1(真正的)或0(假)。

数据类型:逻辑

硬件描述语言(VHDL)代码生成选项包括内联配置,指定为一个数字或逻辑1(真正的)或0(假)。

真正的,包括硬件描述语言(VHDL)配置文件实例化一个组件。

,抑制生成配置,需要用户提供的外部配置。设置为如果你创建你自己的硬件描述语言(VHDL)配置文件。

数据类型:逻辑

后缀添加到设计形成定时控制器的名称,名称指定为一个特征向量数组或字符串。

数据类型:字符|字符串

目标库名称生成VHDL代码,指定为一个特征向量数组或字符串。

数据类型:字符|字符串

时钟

活跃的时钟,指定为一个特征向量数组或字符串。

例子:“上升”“上升”

数据类型:字符|字符串

过采样因素,指定为一个整数大于或等于1。全球过采样时钟的频率指定为设计基准时钟频率的倍数。

数据类型:int32

时间控制器架构,指定为这些选项之一:

TimingControllerArch价值 描述

“默认”

生成一个定时控制器没有重置。这个设置生成一个定时控制器代码文件作为自己的HDL文件并实例化DUT的定时控制器在顶层。

“复位”

生成一个定时控制器在DUT重置。这个设置生成一个定时控制器代码文件作为自己的HDL文件并实例化DUT的定时控制器在顶层。

例子:“复位”

数据类型:字符|字符串

港口

最大数量的I / O引脚FPGA部署,指定为一个整数。指定的最大数量目标FPGA的I / O引脚。如果生成的代码中的DUT销数超过该参数的值,高密度脂蛋白编码器™生成指定的消息TreatIOThresholdAs高密度脂蛋白的参数一致性报告。

数据类型:int32

消息返回如果DUT销数超过I / O的阈值,指定为一个特征向量数组或字符串。指定消息时生成的类型生成的代码中的DUT销数超过I / O引脚的最大数量阈值设定的IOThreshold参数。

例子:“警告”“警告”

数据类型:字符|字符串

优化

选择插入自适应管道注册在你的设计中,指定为一个数字或逻辑1(真正的)或0(假)。使自适应流水线寄存器插入管道模块的设计,减少使用面积,最大限度地实现目标FPGA时钟频率设备。

当你指定这个参数,指定合成工具选择代码生成目标的任务。如果你的设计有乘数,指定合成工具目标频率(MHz)为适应管道插入。

数据类型:逻辑

最低比特宽度共享蛇,指定为一个正整数。

如果ShareAdders真正的ResourceSharing大于1,分享小蝰蛇只有加法器位宽度大于或等于什么AdderSharingMinimumBitwidth

数据类型:int32

选择使用数据流表示为MATLAB函数,指定为一个数字或逻辑1(真正的)或0(假)。改变控制流算法的MATLAB代码在一个MATLAB函数数据流表示。将此属性设置为真正的使用数据流表示的优化和选择,如frame-to-sample本机浮点转换和优化。

如果您设置AggressiveDataflowConversionGenerateMLFcnBlock真正的功能,您可以生成一个等价的模型金宝app®模型包含仿真软件MATLAB函数设计的块,这是与设计模型的算法。金宝app

数据类型:逻辑

选择平衡时钟频率管线式DUT输出端口,指定为一个数字或逻辑1(真正的)或0(假)。同步的DUT输出而满足highest-latency需求输出。应用此选项当接口逻辑与有效信号接口对齐的输出逻辑路径和有效信号路径。

数据类型:逻辑

选项允许时钟频率流水线DUT的输出端口,指定为一个数字或逻辑1(真正的)或0(假)。将此属性设置为真正的尽快生产DUT输出通过输出DUT的时钟频率而不是数据速率。

数据类型:逻辑

选择插入管道寄存器时钟频率,指定为一个数字或逻辑1(真正的)或0(假)。使用时钟频率管道插入管道寄存器的时钟频率比数据速度快。这种优化提高时钟频率,减少使用面积不引入额外的延迟。时钟频率流水线不影响现有设计延迟你的设计。

数据类型:逻辑

选择分配管道寄存器,指定为一个数字或逻辑1(真正的)或0(假)。启用时,HDL编码登记在你的设计,以减少关键路径。

数据类型:逻辑

优先考虑分布式流水线算法,指定为一个特征向量数组或字符串。

DistributedPipeliningPriority价值 描述
NumericalIntegrity(默认)

优先级数值当寄存器分配管道完整性。

这个选项使用保守的以算法不转移登记在一个组件如果最初的设计的功能对等是未知的。

性能

优先考虑性能数值的完整性。

使用这个选项如果你的设计需要一个更高的时钟频率和MATLAB的行为不需要严格匹配生成的代码的行为。

这个选项使用一个更激进的重新定时算法移动寄存器在组件即使修改设计的功能对等,最初的设计是未知的。

例子:“NumericalIntegrity”“NumericalIntegrity”

数据类型:字符|字符串

指定输入管道的数量登记阶段。当DistributedPipelining启用,这些寄存器可以分布式设计。

数据类型:int32

循环优化在生成的代码中,指定为一个特征向量数组或字符串。看到MATLAB优化循环

LoopOptimization价值 描述
LoopNone 不优化循环生成的代码。
StreamLoops 流循环。
UnrollLoops 展开循环。

例子:“StreamLoops”“StreamLoops”

数据类型:字符|字符串

持续的数组变量映射到内存,指定为一个数字或逻辑1(真正的)或0(假)。使用这个属性来优化区域和资源保存在目标设备上通过持久映射块RAM阵列。

将这些持久映射数组阻止公羊,RAM的大小必须大于或等于阈值的内存映射。看到RAMThreshold

数据类型:逻辑

管道寄存器在生成的HDL代码映射到内存,指定为一个数字或逻辑1(真正的)或0(假)。使用这个属性映射寄存器插入管道,管道和RAM资源共享优化和块实现。你可以在你的目标设备保存区管道寄存器映射到内存。

这些寄存器映射块公羊,RAM的大小必须大于或等于阈值的内存映射。看到RAMThreshold

数据类型:逻辑

选项来忽略代时钟使逻辑,指定为一个数字或逻辑1(真正的)或0(假)。

(默认),生成时钟使逻辑。

真正的尽可能,省略一代的时钟使逻辑。

数据类型:逻辑

指定最大输入宽度对硬件乘数。如果一个乘数输入宽度大于这个阈值,高密度脂蛋白编码器将乘数分为较小的乘数。

来提高你的硬件映射的结果,这个阈值设置为输入一些数字信号处理器(DSP)的宽度或乘数硬件目标设备。

数据类型:int32

最小宽度共享乘数,指定为一个正整数。

如果ShareMultipliers真正的ResourceSharing大于1,分享乘数只有乘数位宽度大于或等于什么MultiplierSharingMinimumBitwidth

数据类型:int32

指定数量的输出管道登记阶段。当DistributedPipelining启用,这些寄存器可以分布式设计。

数据类型:int32

防止分布式流水线设计延误或允许分布式移动流水线设计延误,指定为一个数字或逻辑1(真正的)或0(假)。

持续的变量和dsp.Delay系统对象设计延误。

数据类型:逻辑

最小RAM大小持久映射数组变量和管道延迟块RAM,指定为字符串数组或特征向量。

指定阈值通过使用内存映射:

  • 一个字符串数组或特征向量的一个正整数持久数组变量映射到内存如果RAM大小大于这个阈值。单位是比特。计算的总内存大小持续数组,使用这个公式:

    RAMSize =数组大小*字长*复杂性
    复杂性2是一个复杂的数据类型或1为一个真正的数据类型。计算延误的总内存大小,用这个公式:
    RAMSize =延迟向量长度* *字长*长度的复杂性

  • 一个字符串数组或特征向量的格式麦根指定两个阈值定义的形状数据映射到内存,是数组大小(用于持久数组)或延迟长度(延迟)和N是为单词长度或宽度的数据类型。

例子:“256”

例子:“500×50”

数据类型:字符串|字符

选择插入一个流水线寄存器在每个DUT输入,指定为一个数字或逻辑1(真正的)或0(假)。分布式流水线不移动这些寄存器。

数据类型:逻辑

选择插入一个注册在每个DUT输出,指定为一个数字或逻辑1(真正的)或0(假)。分布式流水线不移动这些寄存器。

数据类型:逻辑

选择分享蛇,指定为一个数字或逻辑1(真正的)或0(假)。如果真正的,分享蛇时ResourceSharing大于1和加法器宽度大于或等于什么AdderSharingMinimumBitwidth

数据类型:逻辑

选择分享乘数,指定为一个数字或逻辑1(真正的)或0(假)。如果真正的时,分享乘数ResourceSharing大于1和乘数位宽度大于或等于什么MultiplierSharingMinimumBitwidth

数据类型:逻辑

浮点

浮点库名称,指定为一个特征向量数组或字符串。

例子:“NativeFloatingPoint”

数据类型:字符|字符串

浮点目标配置使用本地浮点HDL代码生成时,指定的作为hdlcoder.FloatingPointTargetConfig对象。配置浮点目标,明白了hdlcoder.FloatingPointTargetConfig。从MATLAB生成HDL代码功能,你只能设置本机浮点属性HandleDenormals,LatencyStategy,MantissaMultiplyStrategyhdlcoder.FloatingPointTargetConfig类。

例子:hdlcfg。FloatingPointTargetConfiguration = hdlcoder.createFloatingPointTargetConfig (“NATIVEFLOATINGPOINT”),在那里hdlcfg是一个coder.HdlConfig对象。看到createFloatingPointTargetConfig

数据类型:hdlcoder.FloatingPointTargetConfig

先进的编码

选择从你的MATLAB函数生成仿真软件模型金宝app,指定为一个数字或逻辑1(真正的)或0(假)。你必须有一个仿真软件许可证。金宝app

如果你设置AggressiveDataflowConversion,该参数生成一个MATLAB函数块使用仿真软件模型。金宝app

如果你设置AggressiveDataflowConversion真正的,该参数生成一个功能等效仿真软件模型的MATLAB函数设计包含仿真软件模块,执行算法在MATLAB函数设计金宝app。这种模型类似于Simulink-to-HDL工作流模型生成。金宝app

数据类型:逻辑

从功能选项来生成instantiable HDL代码模块,指定为一个数字或逻辑1(真正的)或0(假)。

数据类型:逻辑

在生成的HDL代码检查实数,指定为一个特征向量数组或字符串。

价值 描述
没有一个 不检查生成的HDL代码的实数。
警告 检查和警告存在真正的HDL代码生成的数据类型。真正的数据类型生成的HDL代码不synthesizable目标FPGA器件。
错误 检查并生成一个错误如果生成的HDL代码使用真实的数据类型。如果你是用于模拟生成代码,而不是合成设计,您可以更改此设置警告没有一个。生成synthesizable HDL代码,设置浮点IP库本机浮点

例子:“没有”“没有”

数据类型:字符|字符串

试验台

最大数量的模拟迭代期间试验台的一代。这个属性只影响试验台的一代,而不是模拟在定点转换。当价值1(默认),没有设置模拟迭代的最大数量。

数据类型:int32

选项来创建和使用数据文件的阅读和写作测试台上输入和输出数据,指定为一个数字或逻辑1(真正的)或0(假)。

数据类型:逻辑

线头脚本

如果你设置HDLLintTool自定义,您必须使用% s作为一个占位符中的高密度脂蛋白文件名生成Tcl脚本。指定HDLLintCmd作为字符串数组或特征向量通过使用这种格式:

custom_lint_tool_command -option1 -option2 % s

数据类型:字符|字符串

高密度脂蛋白线头脚本初始化的名字,指定为一个特征向量数组或字符串。

数据类型:字符|字符串

高密度脂蛋白线头脚本终止名称,指定为一个特征向量数组或字符串。

数据类型:字符|字符串

高密度脂蛋白线头脚本生成工具,向量指定为一个字符或字符串数组。

例子:“望远镜”“望远镜”

数据类型:字符|字符串

帧样本转换

选项来启用frame-to-sample转换,指定为一个数字或逻辑1(真正的)或0(假)。如果你的MATLAB函数不是synthesizable因为它需要大量的I / O,这种优化可以减少I / O在设计和生成synthesizable HDL代码。frame-to-sample转换矩阵输入转换为小样本流的输入信号为HDL代码生成来减少I / O处理大量输入信号。有关更多信息,请参见高密度脂蛋白从框架代码生成算法

要启用这个特性,设置AggressiveDataflowConversion真正的

数据类型:逻辑

外部内存延迟阈值大小,指定为一个正整数。指定一个阈值大小的碎片将大整数延迟映射到输入和输出DUT港口。使用这个属性将大延迟你的FPGA之外的外部存储器。如果你大延迟映射到外部存储器,你不能生成一个试验台。

要启用这个特性,设置FrameToSampleConversion真正的

数据类型:int32

寄存器的大小生成输入fifo,指定为一个整数大于或等于4。使用这个参数指定的寄存器大小生成输入流矩阵分区fifo。frame-to-sample转换生成一个输入FIFO每输入MATLAB函数sampled-based输入信号。

要启用这个特性,设置FrameToSampleConversion真正的

数据类型:int32

用于处理输入帧数据,指定为“RowMajor”“ColumnMajor”。选择行和列为主的命令帧输入frame-to-sample转换优化转换示例输入。这个设置会影响数据涌入测试设备(DUT),但不改变生成的DUT的行为。

将此属性设置为“RowMajor”遍历输入帧数据frame-to-sample转换使用行排序,然后遍历数据从左到右和从上到下整个框架的输入矩阵。

将此属性设置为“ColumnMajor”遍历输入帧数据frame-to-sample转换使用列为主的排序,从上到下遍历数据,然后从左到右穿过框架输入矩阵。

要启用这个特性,设置FrameToSampleConversion真正的

数据类型:字符|字符串

生成的输出fifo寄存器大小,指定为一个整数大于或等于4。使用这个参数指定的寄存器大小在流矩阵生成的输出fifo分区。frame-to-sample转换生成一个输出为每个输出FIFO的MATLAB函数sampled-based输出信号。

要启用这个特性,设置FrameToSampleConversion真正的

数据类型:int32

样品每周期,指定为一个整数大于或等于1。使用这个参数指定frame-to-sample转换后的信号流的大小。流输入信号要么是一个标量(一个样本每周期)或一维向量N元素(N样品每周期)。

要启用这个特性,设置FrameToSampleConversion真正的

数据类型:int32

例子

全部折叠

创建一个coder.HdlConfig对象hdlcfg

hdlcfg = coder.config (“高密度”);%创建一个默认的“高密度”配置

设置试验台的名字。在这个例子中,试验台函数名mlhdlc_dti_tb

hdlcfg。TestBenchName =“mlhdlc_dti_tb”;

Verilog设置目标语言®

hdlcfg。开发“Verilog”;

从MATLAB生成HDL代码设计。在这个例子中,MATLAB设计函数名mlhdlc_dti

codegen配置hdlcfgmlhdlc_dti

创建一个coder.FixptConfig对象的默认设置,并提供一个试验台的名字。

fixptcfg = coder.config (“fixpt”);fixptcfg。TestBenchName =“mlhdlc_sfir_tb”;

创建一个coder.HdlConfig对象,默认设置,设置启用。

hdlcfg = coder.config (“高密度”);%创建一个默认的“高密度”配置hdlcfg。EnableRate =“DUTBaseRate”;

指导MATLAB生成cosim试验台和费尔试验台。指定一个FPGA板名称。

hdlcfg。GenerateCosimTestBench = true;hdlcfg。FILBoardName =“Xilinx Virtex-5 XUPV5-LX110T发展委员会”;hdlcfg。GenerateFILTestBench = true;

执行代码生成,Cosim试验台一代,费尔试验台的一代。

codegen-float2fixedfixptcfg配置hdlcfgmlhdlc_sfir

选择

你也可以生成使用高密度脂蛋白HDL代码从MATLAB代码流程顾问。有关更多信息,请参见从MATLAB基本HDL代码生成和FPGA合成

版本历史

介绍了R2014b