このページの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。
高密度脂蛋白ワークフローアドバイザーは,次のような金宝app仿真软件®サブシステムのHDLコードを生成する各段階と,FPGA設計プロセスをサポートします。
モデルにHDLコード生成との互換性があるか確認し,非互換設定を自動的に修正。
高密度脂蛋白コード,テストベンチ,コードとテストベンチをビルドして実行するスクリプトの生成。
コシミュレーションまたはSystemVerilog DPIテストベンチ,コードカバレッジの生成(HDL校验™が必要)。
サードパーティ製の合成ツールとの統合による合成とタイミング解析。
合成時に取得したクリティカルパスなどの情報によるモデルのバックアノテーション。
FPGAインザループシミュレーション(HDL校验が必要)を含む,選択したFPGA開発ターゲットデバイスと金宝app仿真软件实时™FPGA的I / Oワークフローに対する完全な自動ワークフロー。
高密度脂蛋白ワークフローをコマンドラインスクリプトとして実行するには,金宝app仿真软件設計によりHDLワークフローアドバイザーを構成し,実行してからスクリプトをエクスポートします。このスクリプトはHDLワークフローCLIコマンドを使用して,FPGAビットストリームまたは合成プロジェクトの生成を含む,高密度脂蛋白ワークフローアドバイザーと同じタスクを実行します。
次のターゲットワークフロー向けのHDLワークフロースクリプトをエクスポートできます。
汎用ASIC / FPGA
(FPGAインザループ]
(HDL校验ライセンスが必要)
FPGAターンキー
IPコアの生成
S金宝appimulink实时FPGA I/O
(金宝app实时仿真软件が必要)
既存のスクリプトを更新するには,それをHDLワークフローアドバイザーにインポートして,タスクを変更してから更新したスクリプトをエクスポートします。あるいは,スクリプトを手動で編集できます。
HDLワークフローアドバイザー,ですべてのタスクを設定して実行します。
[ファイル]、[スクリプトにエクスポート]を選択します。
(出口工作流配置)ダイアログボックスで,ファイル名を入力してスクリプトを保存します。
スクリプトは,コマンドラインから実行できるMATLAB®ファイルです。
メモ
スクリプトにエクスポートする場合,[リセットタイプ]の异步
など,既定値はエクスポートされません。スクリプトからインポートする場合,モデルに変更がなければ,スクリプトの既定の設定は表示されません。
関数hdlcoder.runWorkflow
の冗长
プロパティを使用して,コード生成および配布処理の進行に合わせて生成される進捗メッセージの詳細レベルを指定できます。hdlcoder。WorkflowConfig
ワークフロー構成オブジェクトの中国
および仿金宝app真软件設定の模型/ DUTname
のワークフローを実行中に詳細メッセージを生成するには,冗长
を在
に設定します。
hdlcoder.runWorkflow (“模型/ DUTname”中国,“冗长”,“上”);
すべてのワークフロータスクを無効にするには,clearAllTasks
メソッドを使用してワークフロー構成オブジェクトを更新します。
すべてのワークフロータスクを再度有効にするには,setAllTasks
メソッドを使用してワークフロー構成オブジェクトを更新します。
他のワークフロータスクを再実行せずに1つのワークフロータスクを実行するには,次の手順に従います。
clearAllTasks
メソッドを実行して,ワークフロー構成オブジェクトのすべてのタスクを無効にします。
ワークフロー構成オブジェクトで,実行するタスクを有効にします。
たとえば,以前にHDLワークフロースクリプトを実行して,ビットストリームを生成していた場合,他のワークフロータスクを再実行せずにターゲットハードウェアをプログラムできます。hdlcoder。WorkflowConfig
ワークフロー構成オブジェクトの中国
および仿金宝app真软件設計の模型/ DUTname
に対してターゲットデバイスのプログラミングタスクを実行するには,次を行います。
clearAllTasks
メソッドを実行します。
hWC.clearAllTasks;
ターゲットデバイスのプログラミングタスクを有効にします。
中国。RunTaskProgramTargetDevice = true;
ワークフローを実行します。
hdlcoder.runWorkflow (“模型/ DUTname”、中国);
高密度脂蛋白ワークフローアドバイザーで,[ファイル]、[スクリプトからインポート]を選択します。
[ワークフローコンフィギュレーションのインポート]ダイアログボックスで,スクリプトファイルを選択して[開く]をクリックします。
高密度脂蛋白ワークフローアドバイザーは,インポートされたスクリプト設定を使用してタスクを更新します。
メモ
高密度脂蛋白ワークフローアドバイザースクリプトをインポートするときは,高密度脂蛋白ワークフローアドバイザーUIからエクスポートしたのと同じスクリプトを使用してください。
この例では,エクスポートされたHDLワークフロースクリプトを構成して実行する方法を説明します。
このスクリプトは,Xilinx®Virtex®7デバイスをターゲットとする汎用ASIC / FPGAワークフロースクリプトです。Xilinx Vivado®合成ツールを使用します。
エクスポートされたHDLワークフロースクリプトを開いて表示します。
%导出工作流配置脚本%生成与MATLAB 9.5 (R2018b预发布)在14:42:37在29/03/2018%该脚本使用以下参数值生成:% Filename: 'S:\generic_workflow_example.m'%覆盖:true%评论:正确% Headers: true% DUT: 'sfir_fixed/symmetric_fir'%需要查看修改后的工作流程,执行如下命令:% > > hWC.export (DUT, sfir_fixed / symmetric_fir);%--------------------------------------------------------------------------%%加载模型load_system (“sfir_fixed”);%%将模型恢复为默认的HDL参数% hdlrestoreparams (' sfir_fixed / symmetric_fir ');%%模型HDL参数%%设置模型“sfir_fixed”HDL参数hdlset_param (“sfir_fixed”,“GenerateCoSimModel”,“ModelSim”);hdlset_param (“sfir_fixed”,“GenerateHDLTestBench”,“关闭”);hdlset_param (“sfir_fixed”,“HDLSubsystem”,“sfir_fixed / symmetric_fir”);hdlset_param (“sfir_fixed”,“SynthesisTool”,“Xilinx Vivado”);hdlset_param (“sfir_fixed”,“SynthesisToolChipFamily”,“Virtex7”);hdlset_param (“sfir_fixed”,“SynthesisToolDeviceName”,“xc7vx485t”);hdlset_param (“sfir_fixed”,“SynthesisToolPackageName”,“ffg1761”);hdlset_param (“sfir_fixed”,“SynthesisToolSpeedValue”,' 2 ');hdlset_param (“sfir_fixed”,“TargetDirectory”,“hdl_prj \ hdlsrc”);%%工作流配置设置使用默认设置构造工作流配置对象中国= hdlcoder。WorkflowConfig (“SynthesisTool”,“Xilinx Vivado”,“TargetWorkflow”,“通用ASIC / FPGA”);%指定顶级项目目录中国。ProjectFolder =“hdl_prj”;%设置要运行的工作流任务中国。RunTaskGenerateRTLCodeAndTestbench = true;中国。RunTaskVerifyWithHDLCosimulation = true;中国。RunTaskCreateProject = true;中国。RunTaskRunSynthesis = true;中国。RunTaskRunImplementation = false; hWC.RunTaskAnnotateModelWithSynthesisResult = true;%设置与RunTaskGenerateRTLCodeAndTestbench任务相关的属性中国。GenerateRTLCode = true;中国。GenerateTestbench = false;中国。GenerateValidationModel = false;设置与RunTaskCreateProject任务相关的属性中国。目标= hdlcoder.Objective.None;中国。AdditionalProjectCreationTclFiles ='';%设置与RunTaskRunSynthesis任务相关的属性中国。SkipPreRouteTimingAnalysis = false;%设置与RunTaskRunImplementation任务相关的属性中国。IgnorePlaceAndRouteErrors = false;%设置与“RunTaskAnnotateModelWithSynthesisResult”任务相关的属性中国。CriticalPathSource =“pre-route”;中国。CriticalPathNumber = 1;中国。ShowAllPaths = false;中国。ShowDelayData = true;中国。ShowUniquePaths = false;中国。ShowEndsOnly = false;%验证工作流配置对象hWC.validate;%%运行工作流hdlcoder.runWorkflow (“sfir_fixed / symmetric_fir”、中国);
必要に応じて,スクリプトを編集します。
たとえば,hdlcoder。WorkflowConfig
オブジェクト中国
内のタスクを有効または無効にします。
高密度脂蛋白ワークフロースクリプトを実行します。
たとえば,スクリプトファイル名がgeneric_workflow_example.m
である場合,コマンドラインで以下のように入力します。
generic_workflow_example.m
この例では,エクスポートされたHDLワークフロースクリプトを構成して実行する方法を説明します。
高密度脂蛋白ワークフロースクリプトを生成するには金宝app,仿真软件設計でHDLワークフローアドバイザーを設定および実行してから,スクリプトをエクスポートします。
このスクリプトはXilinx Virtex 5開発ボードをターゲットとするFPGAインザループワークフロースクリプトで,Xilinx ISE合成ツールを使用します。
エクスポートされたHDLワークフロースクリプトを開いて表示します。
%--------------------------------------------------------------------------% HDL工作流脚本%生成与MATLAB 9.5 (R2018b预发布)在15:11:23 on 04/05/2018%该脚本使用以下参数值生成:% Filename: 'C:\Users\ggnanase\Desktop\R2018b\18b_models\ipcore_timing_failure\hdlworkflow_FIL.m'%覆盖:true%评论:正确% Headers: true% DUT: 'sfir_fixed/symmetric_fir'%需要查看修改后的工作流程,执行如下命令:% > > hWC.export (DUT, sfir_fixed / symmetric_fir);%--------------------------------------------------------------------------%%加载模型load_system (“sfir_fixed”);%%将模型恢复为默认的HDL参数% hdlrestoreparams (' sfir_fixed / symmetric_fir ');%%模型HDL参数%%设置模型“sfir_fixed”HDL参数hdlset_param (“sfir_fixed”,“HDLSubsystem”,“sfir_fixed / symmetric_fir”);hdlset_param (“sfir_fixed”,“SynthesisTool”,“Xilinx Vivado”);hdlset_param (“sfir_fixed”,“SynthesisToolChipFamily”,“Kintex7”);hdlset_param (“sfir_fixed”,“SynthesisToolDeviceName”,“xc7k325t”);hdlset_param (“sfir_fixed”,“SynthesisToolPackageName”,“ffg900”);hdlset_param (“sfir_fixed”,“SynthesisToolSpeedValue”,' 2 ');hdlset_param (“sfir_fixed”,“TargetDirectory”,“hdl_prj \ hdlsrc”);hdlset_param (“sfir_fixed”,“TargetFrequency”25);hdlset_param (“sfir_fixed”,“TargetPlatform”,Xilinx Kintex-7 KC705开发板);hdlset_param (“sfir_fixed”,“工作流程”,“FPGA-in-the-Loop”);%%工作流配置设置使用默认设置构造工作流配置对象中国= hdlcoder。WorkflowConfig (“SynthesisTool”,“Xilinx Vivado”,“TargetWorkflow”,“FPGA-in-the-Loop”);%指定顶级项目目录中国。ProjectFolder =“hdl_prj”;%设置要运行的工作流任务中国。RunTaskGenerateRTLCodeAndTestbench = true;中国。RunTaskVerifyWithHDLCosimulation = false;中国。RunTaskBuildFPGAInTheLoop = true;%设置与RunTaskGenerateRTLCodeAndTestbench任务相关的属性中国。GenerateRTLCode = true;中国。GenerateTestbench = false;中国。GenerateValidationModel = false;%设置与RunTaskBuildFPGAInTheLoop任务相关的属性中国。IPAddress =期间的“192.168.0.2;中国。MACAddress =“00-0A-35-02-21-8A”;中国。源文件='';中国。连接=“以太网”;中国。RunExternalBuild = true;%验证工作流配置对象hWC.validate;%%运行工作流hdlcoder.runWorkflow (“sfir_fixed / symmetric_fir”、中国);hdlcoder.runWorkflow (“hdlcoderUARTServoControllerExample / UART_Servo_on_FPGA”、中国);
必要に応じて,スクリプトを編集します。
たとえば,hdlcoder。WorkflowConfig
オブジェクト中国
内のタスクを有効または無効にします。
高密度脂蛋白ワークフロースクリプトを実行します。
たとえば,スクリプトファイル名がFIL_workflow_example.m
である場合,コマンドラインで以下のように入力します。
fil_workflow_example.m
この例では,エクスポートされたHDLワークフロースクリプトを構成して実行する方法を説明します。
このスクリプトは,Xilinx Virtex 5開発ボードをターゲットとするFPGAターンキーワークフロースクリプトです。Xilinx ISE合成ツールを使用します。
エクスポートされたHDLワークフロースクリプトを開いて表示します。
%导出工作流配置脚本%生成的MATLAB 8.6 (R2015b)在14:24:32在08/07/2015%的参数值:% Filename: 'S:\turnkey_workflow_example.m'%覆盖:true%评论:正确% Headers: true% DUT: 'hdlcoderUARTServoControllerExample/UART_Servo_on_FPGA'%%加载模型load_system (“hdlcoderUARTServoControllerExample”);%%模型HDL参数%设置模型HDL参数hdlset_param (“hdlcoderUARTServoControllerExample”,...“HDLSubsystem”,“hdlcoderUARTServoControllerExample / UART_Servo_on_FPGA”);hdlset_param (“hdlcoderUARTServoControllerExample”,...“SynthesisTool”,“Xilinx ISE”);hdlset_param (“hdlcoderUARTServoControllerExample”,...“SynthesisToolChipFamily”,“Virtex5”);hdlset_param (“hdlcoderUARTServoControllerExample”,...“SynthesisToolDeviceName”,“xc5vsx50t”);hdlset_param (“hdlcoderUARTServoControllerExample”,...“SynthesisToolPackageName”,“ff1136”);hdlset_param (“hdlcoderUARTServoControllerExample”,...“SynthesisToolSpeedValue”,' 1 ');hdlset_param (“hdlcoderUARTServoControllerExample”,...“TargetDirectory”,“hdl_prj \ hdlsrc”);hdlset_param (“hdlcoderUARTServoControllerExample”,...“TargetPlatform”,Xilinx Virtex-5 ML506开发板);hdlset_param (“hdlcoderUARTServoControllerExample”,“工作流程”,“FPGA交钥匙”);%设置导入HDL参数hdlset_param (“hdlcoderUARTServoControllerExample / UART_Servo_on_FPGA / uart_rxd”,...“IOInterface”,'RS-232串行端口Rx');hdlset_param (“hdlcoderUARTServoControllerExample / UART_Servo_on_FPGA / uart_rxd”,...“IOInterfaceMapping”,“[0]”);%设置Outport HDL参数hdlset_param (“hdlcoderUARTServoControllerExample / UART_Servo_on_FPGA / uart_txd”,...“IOInterface”,RS-232串行端口Tx);hdlset_param (“hdlcoderUARTServoControllerExample / UART_Servo_on_FPGA / uart_txd”,...“IOInterfaceMapping”,“[0]”);%设置Outport HDL参数hdlset_param (“hdlcoderUARTServoControllerExample / UART_Servo_on_FPGA /版本”,...“IOInterface”,' led General Purpose [0:7]');hdlset_param (“hdlcoderUARTServoControllerExample / UART_Servo_on_FPGA /版本”,...“IOInterfaceMapping”,“(0:3)”);%设置Outport HDL参数hdlset_param (“hdlcoderUARTServoControllerExample / UART_Servo_on_FPGA / pwm_output”,...“IOInterface”,'膨胀头J6 Pin 2-64 [0:31]');hdlset_param (“hdlcoderUARTServoControllerExample / UART_Servo_on_FPGA / pwm_output”,...“IOInterfaceMapping”,“[0]”);%设置Outport HDL参数hdlset_param (“hdlcoderUARTServoControllerExample / UART_Servo_on_FPGA / servo_debug1”,...“IOInterface”,'膨胀头J6 Pin 2-64 [0:31]');hdlset_param (“hdlcoderUARTServoControllerExample / UART_Servo_on_FPGA / servo_debug1”,...“IOInterfaceMapping”,“[1]”);%设置Outport HDL参数hdlset_param (“hdlcoderUARTServoControllerExample / UART_Servo_on_FPGA / servo_debug2”,...“IOInterface”,'膨胀头J6 Pin 2-64 [0:31]');hdlset_param (“hdlcoderUARTServoControllerExample / UART_Servo_on_FPGA / servo_debug2”,...“IOInterfaceMapping”,“[2]”);%%工作流配置设置使用默认设置构造工作流配置对象中国= hdlcoder。WorkflowConfig (“SynthesisTool”,“Xilinx ISE”,...“TargetWorkflow”,“FPGA交钥匙”);%指定顶级项目目录中国。ProjectFolder =“hdl_prj”;%设置要运行的工作流任务中国。RunTaskGenerateRTLCodeAndTestbench = true;中国。RunTaskVerifyWithHDLCosimulation = true;中国。RunTaskCreateProject = true;中国。RunTaskPerformLogicSynthesis = true;中国。RunTaskPerformMapping = true; hWC.RunTaskPerformPlaceAndRoute = true; hWC.RunTaskGenerateProgrammingFile = true; hWC.RunTaskProgramTargetDevice = false;%设置“创建项目任务”相关的属性中国。目标= hdlcoder.Objective.None;中国。AdditionalProjectCreationTclFiles ='';%设置“执行映射任务”相关属性中国。SkipPreRouteTimingAnalysis = true;%设置“执行地点和路由任务”的相关属性中国。IgnorePlaceAndRouteErrors = false;%验证工作流配置对象hWC.validate;%%运行工作流hdlcoder.runWorkflow (“hdlcoderUARTServoControllerExample / UART_Servo_on_FPGA”、中国);
必要に応じて,スクリプトを編集します。
たとえば,hdlcoder。WorkflowConfig
オブジェクト中国
内のタスクを有効または無効にします。
高密度脂蛋白ワークフロースクリプトを実行します。
たとえば,スクリプトファイル名がturnkey_workflow_example.m
である場合,コマンドラインで以下のように入力します。
turnkey_workflow_example.m
この例では,エクスポートされたHDLワークフロースクリプトを構成して実行する方法を説明します。
このスクリプトは,阿尔特拉®气旋V SoC開発キットをターゲットとするIPコアの生成ワークフロースクリプトです。阿尔特拉第四的二世合成ツールを使用します。
エクスポートされたHDLワークフロースクリプトを開いて表示します。
%导出工作流配置脚本%生成的MATLAB 8.6 (R2015b)在14:42:16在08/07/2015%的参数值:% Filename: 'S:\ip_core_gen_workflow_example.m'%覆盖:true%评论:正确% Headers: true% DUT: 'hdlcoder_led_blink /led_counter'%%加载模型load_system (“hdlcoder_led_blinking”);%%模型HDL参数%设置模型HDL参数hdlset_param (“hdlcoder_led_blinking”,...“HDLSubsystem”,“hdlcoder_led_blinking / led_counter”);hdlset_param (“hdlcoder_led_blinking”,“OptimizationReport”,“上”);hdlset_param (“hdlcoder_led_blinking”,...“ReferenceDesign”,'默认系统(Qsys 14.0)');hdlset_param (“hdlcoder_led_blinking”,“ResetType”,“同步”);hdlset_param (“hdlcoder_led_blinking”,“ResourceReport”,“上”);hdlset_param (“hdlcoder_led_blinking”,“SynthesisTool”,“阿尔特拉第四的二世”);hdlset_param (“hdlcoder_led_blinking”,“SynthesisToolChipFamily”,“气旋V”);hdlset_param (“hdlcoder_led_blinking”,“SynthesisToolDeviceName”,“5 csxfc6d6f31c6”);hdlset_param (“hdlcoder_led_blinking”,“TargetDirectory”,“hdl_prj \ hdlsrc”);hdlset_param (“hdlcoder_led_blinking”,...“TargetPlatform”,Altera Cyclone V SoC development kit - Rev.D);hdlset_param (“hdlcoder_led_blinking”,“可追溯性”,“上”);hdlset_param (“hdlcoder_led_blinking”,“工作流程”,“IP核心代”);%设置子系统HDL参数hdlset_param (“hdlcoder_led_blinking / led_counter”,...“ProcessorFPGASynchronization”,“自由奔跑”);%设置导入HDL参数hdlset_param (“hdlcoder_led_blinking / led_counter / Blink_frequency”,...“IOInterface”,“AXI4”);hdlset_param (“hdlcoder_led_blinking / led_counter / Blink_frequency”,...“IOInterfaceMapping”,“x“100””);hdlset_param (“hdlcoder_led_blinking / led_counter / Blink_frequency”,...“IOInterfaceOptions”, {“RegisterInitialValue”, 5});%设置导入HDL参数hdlset_param (“hdlcoder_led_blinking / led_counter / Blink_direction”,...“IOInterface”,“AXI4”);hdlset_param (“hdlcoder_led_blinking / led_counter / Blink_direction”,...“IOInterfaceMapping”,“x“104””);hdlset_param (“hdlcoder_led_blinking / led_counter Blink_direction,……“IOInterfaceOptions”, {“RegisterInitialValue”1});%设置Outport HDL参数hdlset_param (“hdlcoder_led_blinking / led_counter /领导”,“IOInterface”,“外部端口”);%设置Outport HDL参数hdlset_param (“hdlcoder_led_blinking / led_counter / Read_back”,“IOInterface”,“AXI4”);hdlset_param (“hdlcoder_led_blinking / led_counter / Read_back”,...“IOInterfaceMapping”,“x“108””);hdlset_param (“hdlcoder_led_blinking / led_counter /读回,…“IOInterfaceOptions”, {“RegisterInitialValue”3});%%工作流配置设置使用默认设置构造工作流配置对象中国= hdlcoder。WorkflowConfig (“SynthesisTool”,“阿尔特拉第四的二世”,...“TargetWorkflow”,“IP核心代”);%指定顶级项目目录中国。ProjectFolder =“hdl_prj”;%设置要运行的工作流任务中国。RunTaskGenerateRTLCodeAndIPCore = true;中国。RunTaskCreateProject = true;中国。RunTaskGenerateSoftwareInterface = false;中国。RunTaskBuildFPGABitstream = true;中国。RunTaskProgramTargetDevice = false;%设置与生成RTL代码和IP核心任务相关的属性中国。IPCoreRepository ='';中国。GenerateIPCoreReport = true;%设置“创建项目任务”相关的属性中国。目标= hdlcoder.Objective.AreaOptimized;%设置与生成软件接口模型任务相关的属性中国。操作系统='';中国。AddLinuxDeviceDriver = false;%设置Build FPGA Bitstream Task相关属性中国。RunExternalBuild = true;中国。TclFileForSynthesisBuild = hdlcoder.BuildOption.Default;%验证工作流配置对象hWC.validate;%%运行工作流hdlcoder.runWorkflow (“hdlcoder_led_blinking / led_counter”、中国);
必要に応じて,スクリプトを編集します。
たとえば,hdlcoder。WorkflowConfig
オブジェクト中国
内のタスクを有効または無効にします。
高密度脂蛋白ワークフロースクリプトを実行します。
たとえば,スクリプトファイル名がip_core_workflow_example.m
である場合,コマンドラインで以下のように入力します。
ip_core_gen_workflow_example.m
この例では,エクスポートされたHDLワークフロースクリプトを構成して実行する方法を説明します。
高密度脂蛋白ワークフロースクリプトを生成するには金宝app,仿真软件設計でHDLワークフローアドバイザーを設定および実行してから,スクリプトをエクスポートします。
このスクリプトは,Xilinx Vivado合成ツールを使用するSpeedgoat io333 - 325 k
ボードをターゲットとする金宝appSimulink实时FPGA I/O
ワークフロースクリプトです。
エクスポートされたHDLワークフロースクリプトを開いて表示します。
%--------------------------------------------------------------------------% HDL工作流脚本%用MATLAB 9.5生成(R2018b预发布)在2018年8月05日18:14:33%该脚本使用以下参数值生成:% Filename: 'C:\Users\ggnanase\Desktop\R2018b\18b_models\ipcore_timing_failure\hdlworkflow_IO333.m'%覆盖:true%评论:正确% Headers: true% DUT: 'sfir_fixed/symmetric_fir'%需要查看修改后的工作流程,执行如下命令:% > > hWC.export (DUT, sfir_fixed / symmetric_fir);%--------------------------------------------------------------------------%%加载模型load_system (“sfir_fixed”);%%将模型恢复为默认的HDL参数% hdlrestoreparams (' sfir_fixed / symmetric_fir ');%%模型HDL参数%%设置模型“sfir_fixed”HDL参数hdlset_param (“sfir_fixed”,“HDLSubsystem”,“sfir_fixed / symmetric_fir”);hdlset_param (“sfir_fixed”,“SynthesisTool”,“Xilinx Vivado”);hdlset_param (“sfir_fixed”,“SynthesisToolChipFamily”,“Kintex7”);hdlset_param (“sfir_fixed”,“SynthesisToolDeviceName”,“xc7k325t”);hdlset_param (“sfir_fixed”,“SynthesisToolPackageName”,“ffg900”);hdlset_param (“sfir_fixed”,“SynthesisToolSpeedValue”,' 2 ');hdlset_param (“sfir_fixed”,“TargetDirectory”,“hdl_prj \ hdlsrc”);hdlset_param (“sfir_fixed”,“TargetFrequency”, 100);hdlset_param (“sfir_fixed”,“TargetPlatform”,“Speedgoat io333 - 325 k”);hdlset_param (“sfir_fixed”,“工作流程”,S金宝appimulink实时FPGA I/O);%%工作流配置设置使用默认设置构造工作流配置对象中国= hdlcoder。WorkflowConfig (“SynthesisTool”,“Xilinx Vivado”,“TargetWorkflow”,S金宝appimulink实时FPGA I/O);%指定顶级项目目录中国。ProjectFolder =“hdl_prj”;中国。ReferenceDesignToolVersion =“2017.4”;中国。IgnoreToolVersionMismatch = false;%设置要运行的工作流任务中国。RunTaskGenerateRTLCodeAndIPCore = true;中国。RunTaskCreateProject = true;中国。RunTaskBuildFPGABitstream = true;中国。RunTaskGenerate金宝appSimulinkRealTimeInterface = true;%设置与runtaskgeneratertlcodeanddipcore任务相关的属性中国。IPCoreRepository ='';中国。GenerateIPCoreReport = true;中国。GenerateIPCoreTestbench = false;中国。CustomIPTopHDLFile ='';中国。AXI4RegisterReadback = false;中国。IPDataCaptureBufferSize =“128”;设置与RunTaskCreateProject任务相关的属性中国。目标= hdlcoder.Objective.None;中国。AdditionalProjectCreationTclFiles ='';中国。EnableIPCaching = true;%设置与RunTaskBuildFPGABitstream任务相关的属性中国。RunExternalBuild = false;中国。TclFileForSynthesisBuild = hdlcoder.BuildOption.Default;中国。CustomBuildTclFile ='';中国。ReportTimingFailure = hdlcoder.ReportTiming.Error;%验证工作流配置对象hWC.validate;%%运行工作流hdlcoder.runWorkflow (“sfir_fixed / symmetric_fir”、中国);
必要に応じて,スクリプトを編集します。
たとえば,hdlcoder。WorkflowConfig
オブジェクト中国
内のタスクを有効または無効にします。
高密度脂蛋白ワークフロースクリプトを実行します。
たとえば,スクリプトファイル名がslrt_workflow_example.m
である場合,コマンドラインで以下のように入力します。
slrt_workflow_example.m