Loading tools/DesignMenu.xml +5 −0 Original line number Original line Diff line number Diff line Loading @@ -35,6 +35,11 @@ <menu name="Vivado" <menu name="Vivado" label="Vivado Tools" label="Vivado Tools" icon="xilinx.png"> icon="xilinx.png"> <menuitem name="CopyUnisims" label="Copy Xilinx primitives library to the local project" icon="xilinx.png" call="VivadoUnisims"/> <menuitem name="Vivado Server" <menuitem name="Vivado Server" label="Run remote Vivado session" label="Run remote Vivado session" icon="xilinx.png" icon="xilinx.png" Loading tools/FPGA_project.xml +39 −4 Original line number Original line Diff line number Diff line Loading @@ -29,10 +29,35 @@ <parameter id="SSHSwitches" label="Other ssh switches" <parameter id="SSHSwitches" label="Other ssh switches" type="String" format="CopyValue" default="" readonly="false" visible="true" /> type="String" format="CopyValue" default="" readonly="false" visible="true" /> <parameter id="VivadoRelease" label="Vivado release number (part of the path)" type="String" format="CopyValue" default="2013.4" readonly="false" visible="true" /> <parameter id="VivadoInstallationRoot" label="Vivado Installation Root" type="String" format="CopyValue" default="/opt/Xilinx/Vivado" readonly="false" visible="true" /> <parameter id="VivadoRelativeExeOptions" label="Vivado relative executable path and options" type="String" format="CopyValue" default="bin/vivado -mode tcl" readonly="false" visible="true" /> <parameter id="VivadoUnisimsPath" label="Relative location of Xilinx unisims library" type="String" format="CopyValue" default="data/verilog/src" readonly="false" visible="true" /> <!-- /opt/Xilinx/Vivado/2013.4/bin/vivado -mode tcl --> <parameter id="RemoteCommand" label="Remote ssh command" <parameter id="RemoteCommand" label="Remote ssh command" type="String" format="CopyValue" default="/opt/Xilinx/Vivado/2013.4/bin/vivado -mode tcl" readonly="false" type="String" format="CopyValue" default="%VivadoInstallationRoot/%VivadoRelease/%VivadoRelativeExeOptions" readonly="true" visible="true" /> <parameter id="VivadoUnisimsAbsolutePath" label="Full path of Xilinx unisims primitives library" type="String" format="CopyValue" default="%VivadoInstallationRoot/%VivadoRelease/%VivadoUnisimsPath" readonly="true" visible="true" /> visible="true" /> <parameter id="SSHExtra" label="ssh extra parameters" type="String" <parameter id="SSHExtra" label="ssh extra parameters" type="String" format="CopyValue" default="" readonly="false" visible="true" /> format="CopyValue" default="" readonly="false" visible="true" /> Loading @@ -51,9 +76,14 @@ "ShellSwitches" "ShellSwitches" "PreSSH" "PreSSH" "SSHSwitches" "SSHSwitches" "RemoteCommand" "SSHExtra" "SSHExtra" "VivadoConsole" "VivadoConsole" "VivadoRelease" "VivadoInstallationRoot" "VivadoRelativeExeOptions" "VivadoUnisimsPath" "RemoteCommand" "VivadoUnisimsAbsolutePath" </group> </group> </input> </input> Loading @@ -65,14 +95,17 @@ interface="FPGAPprojectInterface"> interface="FPGAPprojectInterface"> <!-- Simulation parameters --> <!-- Simulation parameters --> <parameter id="SimulationTopFile" label="Project top simulation file" <parameter id="SimulationTopFile" label="Project top simulation file" type="Filename" default="default_top (testing)" format="CopyValue" type="Filename" default="" format="CopyValue" readonly="false" /> readonly="false" /> <parameter id="SimulationTopModule" label="Project top simulation module" <parameter id="SimulationTopModule" label="Project top simulation module" type="String" default="" format="CopyValue" readonly="false" /> type="String" default="" format="CopyValue" readonly="false" /> <parameter id="ImplementationTopFile" label="Project file with top implementation module" type="Filename" default="" format="CopyValue" readonly="false" /> <parameter id="SimulDir" label="project simulation directory" <parameter id="SimulDir" label="project simulation directory" type="Pathname" default="simulation" format="CopyValue" readonly="false" /> type="Pathname" default="simulation" format="CopyValue" readonly="false" /> <!-- Vivado parameters --> <!-- Vivado parameters --> <parameter id="part" label= "Xilinx device to use" default="" visible="true" omit="" type="String" format="Dash"/> <parameter id="VivadoProjectRoot" label="Relative (to user home directory) path of the workspace on Vivado server" <parameter id="VivadoProjectRoot" label="Relative (to user home directory) path of the workspace on Vivado server" type="String" default="vdt" format="RemoteRootSyntax" readonly="false" /> type="String" default="vdt" format="RemoteRootSyntax" readonly="false" /> Loading Loading @@ -102,9 +135,11 @@ <group name="Simulation" label="Simulation properties"> <group name="Simulation" label="Simulation properties"> "SimulationTopFile" "SimulationTopFile" "SimulationTopModule" "SimulationTopModule" "ImplementationTopFile" "SimulDir" "SimulDir" </group> </group> <group name="Vivado" label="Vivado general properties"> <group name="Vivado" label="Vivado general properties"> "part" "VivadoProjectRoot" "VivadoProjectRoot" "VivadoLocalDir" "VivadoLocalDir" "VivadoIgnoreSource" "VivadoIgnoreSource" Loading tools/Xilinx/vivado_launch.xml +1 −1 Original line number Original line Diff line number Diff line Loading @@ -15,7 +15,7 @@ </input> </input> <output> <output> <line name="vivado_launch" <line name="Vivado" interrupt="\x03"> interrupt="\x03"> "%ShellSwitches" "%ShellSwitches" "%PreSSH" "%PreSSH" Loading tools/Xilinx/vivado_synthesis.xml +93 −63 Original line number Original line Diff line number Diff line Loading @@ -5,46 +5,46 @@ <syntax name="read_xdc_syntax" format="%(read_xdc %%ParamValue%|\n%)" /> <syntax name="read_xdc_syntax" format="%(read_xdc %%ParamValue%|\n%)" /> <typedef name="FlattenHierarchyType"> <typedef name="FlattenHierarchyType"> <paramtype kind= "enum" base="String"> <paramtype kind= "enum" base="String"> <item value="rebuilt" label="rebuilt: Attempt to rebuild hierarchy after synthesis is completed"/> <item value="rebuilt" label="Attempt to rebuild hierarchy after synthesis is completed"/> <item value="full" label="full: Flatten hierarchy of the design"/> <item value="full" label="Flatten hierarchy of the design"/> <item value="none" label="none: Preserve hierarchy (prevents optimization)"/> <item value="none" label="Preserve hierarchy (prevents optimization)"/> </paramtype> </paramtype> </typedef> </typedef> <typedef name="GatedClockConversionType"> <typedef name="GatedClockConversionType"> <paramtype kind= "enum" base="String"> <paramtype kind= "enum" base="String"> <item value="off" label="off: No conversion of the gated FF clocks"/> <item value="off" label="No conversion of the gated FF clocks"/> <item value="on" label="on: Convert gated clocks to use FF enables where possible"/> <item value="on" label="Convert gated clocks to use FF enables where possible"/> <item value="auto" label="auto: Convert gated clocks to use FF enables where beneficial"/> <item value="auto" label="Convert gated clocks to use FF enables where beneficial"/> </paramtype> </paramtype> </typedef> </typedef> <typedef name="DirectiveType"> <typedef name="DirectiveType"> <paramtype kind= "enum" base="String"> <paramtype kind= "enum" base="String"> <item value="default" label="default: Full optimization"/> <item value="default" label="Full optimization"/> <item value="runtimeoptimized" label="runtimeoptimized: Some optimization skipped"/> <item value="runtimeoptimized" label="Some optimization skipped"/> </paramtype> </paramtype> </typedef> </typedef> <typedef name="ModeType"> <typedef name="ModeType"> <paramtype kind= "enum" base="String"> <paramtype kind= "enum" base="String"> <item value="default" label="default: Insert buffers around imaginary property modules"/> <item value="default" label="Insert buffers around ImgP (imaginary property) modules"/> <item value="out_of_context" label="out_of_context: Mark Imaginary Property as OOC, do not insert buffers"/> <item value="out_of_context" label="Mark ImgP (imaginary property) as OOC, do not insert buffers"/> </paramtype> </paramtype> </typedef> </typedef> <typedef name="FSMType"> <typedef name="FSMType"> <paramtype kind= "enum" base="String"> <paramtype kind= "enum" base="String"> <item value="off" label="off: No FSM extraction"/> <item value="off" label="No FSM extraction"/> <item value="one_hot" label="one_hot: Extract one-hot FSM"/> <item value="one_hot" label="Extract one-hot FSM"/> <item value="sequntial" label="sequntial:Extract Sequential FSM"/> <item value="sequntial" label="Extract Sequential FSM"/> <item value="johnson" label="johnson: Extract Johnson FSM"/> <item value="johnson" label="Extract Johnson FSM"/> <item value="gray" label="gray: Extract Gray FSM"/> <item value="gray" label="Extract Gray FSM"/> <item value="auto" label="auto: Automatically decide on the FSM type to extract"/> <item value="auto" label="Automatically decide on the FSM type to extract"/> </paramtype> </paramtype> </typedef> </typedef> <typedef name="ResourceSharingType"> <typedef name="ResourceSharingType"> <paramtype kind= "enum" base="String"> <paramtype kind= "enum" base="String"> <item value="off" label="off: No sharing of adders and such between different signals"/> <item value="off" label="No sharing of adders and such between different signals"/> <item value="on" label="on: Enable sharing of adders and such between different signals"/> <item value="on" label="Enable sharing of adders and such between different signals"/> <item value="auto" label="auto: Automaticxally enable sharing of adders and such between different signals where beneficial"/> <item value="auto" label="Automatically enable sharing of adders and such between different signals where beneficial"/> </paramtype> </paramtype> </typedef> </typedef> </interface> </interface> Loading @@ -62,11 +62,18 @@ </extensions-list> </extensions-list> <action-menu> <action-menu> <action label="Vivado Synthesis" resource="" icon="xilinx.png" /> <action label="Synthesise with Vivado:" resource="%ImplementationTopFile" check-extension="false" check-existence="true" icon="xilinx.png" /> <action label="Check by Vivado Synthesis:" resource="%%SelectedFile" check-extension="true" check-existence="true" icon="sample.gif" /> </action-menu> </action-menu> <parameter id="ConstraintsFiles" type="Filelist" format="ParamListSyntax" <parameter id="ConstraintsFiles" type="Filelist" format="ParamListSyntax" default="" label="Select constraint files to load to Vivado" readonly="false" default="" label="Select constraint files to load to Vivado" readonly="false" visible="true" /> visible="true" /> <parameter id="SkipSnapshotSynth" label="Do not create snapshot after synthesis" default="false" type= "Boolean" format="None"/> <parameter id="ResetProject" label="Reset project before loading source files" <parameter id="ResetProject" label="Reset project before loading source files" default="true" default="true" type= "Boolean" format="None"/> type= "Boolean" format="None"/> Loading @@ -91,17 +98,21 @@ <parameter id="name" label= "Design to open after synth" <parameter id="name" label= "Design to open after synth" default="" visible="true" omit="" type="String" format="Dash"/> default="" visible="true" omit="" type="String" format="Dash"/> <parameter id="part" label= "Xilinx device to use" <!-- part is defined in "FPGA_project" --> default="" visible="true" omit="" type="String" format="Dash"/> <!-- <parameter id="part" label= "Xilinx device to use" default="" visible="true" omit="" type="String" format="Dash"/> --> <parameter id="constrset" label= "Constraints set to use" <parameter id="constrset" label= "Constraints set to use" default="" visible="true" omit="" type="String" format="Dash"/> default="" visible="true" omit="" type="String" format="Dash"/> <parameter id="top" label= "Top module of the design" default="%%TopModule" visible="true" omit="" type="String" format="Dash"/> <!-- <parameter id="top" label= "Top module of the design (you may set in in project properties)" default="%ImplementationTopModule" visible="true" omit="" type="String" format="Dash"/> --> <parameter id="include_dirs" label= "Include directories for Verilog `include" <parameter id="include_dirs" label= "Include directories for Verilog `include" default="" visible="true" omit="" type="Stringlist" format="DashList"/> default="" visible="true" omit="" type="Stringlist" format="DashList"/> <parameter id="generic" label= "name=value list of VHDL generic entity or Verilog parameter" <parameter id="generic" label= '"name=value" list of VHDL generic entity or Verilog parameter' default="" visible="true" omit="" type="Stringlist" format="DashList"/> default="" visible="true" omit="" type="Stringlist" format="DashList"/> <parameter id="verilog_define" label= "Verilog macro=text definitions" <parameter id="verilog_define" label= 'Verilog "macro=text" definitions' default="" visible="true" omit="" type="Stringlist" format="DashList"/> default="" visible="true" omit="" type="Stringlist" format="DashList"/> <parameter id="flatten_hierarchy" label= "Flatten Hierarchy during LUT mapping" <parameter id="flatten_hierarchy" label= "Flatten Hierarchy during LUT mapping" default="rebuilt" visible="true" omit="rebuilt" type="FlattenHierarchyType" format="Dash"/> default="rebuilt" visible="true" omit="rebuilt" type="FlattenHierarchyType" format="Dash"/> Loading Loading @@ -129,30 +140,37 @@ default="4" visible="true" omit="4" type="Cardinal_1" format="Dash"/> default="4" visible="true" omit="4" type="Cardinal_1" format="Dash"/> <parameter id="quiet" label= "Ignore errors, return TCL_OK in any case" <parameter id="quiet" label= "Ignore errors, return TCL_OK in any case" default="false" visible="true" omit="false" type="Boolean" format="DashName"/> default="false" visible="true" omit="false" type="Boolean" format="DashName"/> <parameter id="verbose" label= "Temporarily override mesage limits set with set_msg_config" <parameter id="verbose" label= "Temporarily override message limits set with set_msg_config" default="false" visible="true" omit="false" type="Boolean" format="DashName"/> default="false" visible="true" omit="false" type="Boolean" format="DashName"/> <!-- hidden (calculated) parameters --> <!-- hidden (calculated) parameters --> <parameter id="FilteredSourceList" type="Stringlist" <parameter id="FilteredSourceList" type="Stringlist" format="FilteredSourceListSyntax" default="" readonly="true" visible="false" /> format="FilteredSourceListSyntax" default="" readonly="true" visible="false" /> <!-- Parameter read_xdc just copies parameter ConstraintsFiles, but they have different syntax (output representation) --> <parameter id="read_xdc" type="Filelist" format="read_xdc_syntax" label="read_xdc" <parameter id="read_xdc" type="Filelist" format="read_xdc_syntax" label="read_xdc" default="%ConstraintsFiles" visible="true" readonly="false" /> default="%ConstraintsFiles" visible="false" /> <parameter id="top" label= "Top module of the design" default="%%TopModule" visible="false" omit="" type="String" format="Dash"/> <parameter id="VivadoSynthActionIndex" default="%%ChosenActionIndex" type="String" format="CopyValue" visible="false" /> <input> <input> <group name="General"> <group name="General"> "ConstraintsFiles" "ConstraintsFiles" "SkipSnapshotSynth" "SnapshotSynth" <!-- same as in project --> "SnapshotSynth" <!-- same as in project --> "read_xdc" "ResetProject" "ResetProject" "ShowWarnings" "ShowWarnings" "ShowInfo" "ShowInfo" "GrepEWI" "GrepEWI" </group> </group> <group name="Synthesis"> <group name="Synthesis"> "top" "name" "name" "part" "part" "constrset" "constrset" "top" "include_dirs" "include_dirs" "generic" "generic" "verilog_define" "verilog_define" Loading Loading @@ -186,7 +204,9 @@ "' ;" "' ;" "rsync -avrR -e ssh" "rsync -avrR -e ssh" "%FilteredSourceList" "%FilteredSourceList" <if VivadoSynthActionIndex="0"> "%ConstraintsFiles" "%ConstraintsFiles" </if> "%RemoteUser@%RemoteHost:%VivadoProjectRoot" "%RemoteUser@%RemoteHost:%VivadoProjectRoot" </line> </line> <!-- TODO: Make it OK to use just strings, not parameters in dest (for console names) --> <!-- TODO: Make it OK to use just strings, not parameters in dest (for console names) --> Loading @@ -203,17 +223,20 @@ </if> </if> "file mkdir $outputDir\n" "file mkdir $outputDir\n" "read_verilog %FilteredSourceList\n" "read_verilog %FilteredSourceList\n" <if VivadoSynthActionIndex="0"> <if ConstraintsFiles=""> <if ConstraintsFiles=""> "puts 'No constraints files specified, skipping read_xdc command'\n" 'puts "No constraints files specified, skipping read_xdc command"\n' </if> </if> <if-not ConstraintsFiles=""> <if-not ConstraintsFiles=""> "%read_xdc\n" "%read_xdc\n" </if-not> </if-not> </if> "synth_design" "synth_design" "%top" <if VivadoSynthActionIndex="0"> "%name" "%name" "%part" "%part" "%constrset" "%constrset" "%top" "%include_dirs" "%include_dirs" "%generic" "%generic" "%verilog_define" "%verilog_define" Loading @@ -229,13 +252,19 @@ "%keep_equivalent_registers" "%keep_equivalent_registers" "%resource_sharing" "%resource_sharing" "%control_set_opt_thershold" "%control_set_opt_thershold" </if> "%quiet" "%quiet" "%verbose" "%verbose" "\n" "\n" <if-and SkipSnapshotSynth="false" VivadoSynthActionIndex="0"> "write_checkpoint -force %SnapshotSynth\n" "write_checkpoint -force %SnapshotSynth\n" </if-and> "puts '@@FINISH@@'\n" "puts '@@FINISH@@'\n" </line> </line> <!-- -top npmtest -part xc7k70tfbg484-2 -flatten rebuilt\n" --> <!-- -top npmtest -part xc7k70tfbg484-2 -flatten rebuilt\n" --> <if-and SkipSnapshotSynth="false" VivadoSynthActionIndex="0"> <line name="vivado_copy_after_synth"> <line name="vivado_copy_after_synth"> "-c" "-c" "mkdir -p %VivadoLocalDir ;" "mkdir -p %VivadoLocalDir ;" Loading @@ -243,6 +272,7 @@ "%RemoteUser@%RemoteHost:%VivadoProjectRoot/%SnapshotSynth" "%RemoteUser@%RemoteHost:%VivadoProjectRoot/%SnapshotSynth" "%VivadoLocalDir/" "%VivadoLocalDir/" </line> </line> </if-and> <line name="parser_VivadoSynth" <line name="parser_VivadoSynth" errors=".*ERROR: (\[.*\].*)\[(.*):([0-9]+)\]" errors=".*ERROR: (\[.*\].*)\[(.*):([0-9]+)\]" warnings=".*WARNING: (\[.*\].*)\[(.*):([0-9]+)\]" warnings=".*WARNING: (\[.*\].*)\[(.*):([0-9]+)\]" Loading Loading
tools/DesignMenu.xml +5 −0 Original line number Original line Diff line number Diff line Loading @@ -35,6 +35,11 @@ <menu name="Vivado" <menu name="Vivado" label="Vivado Tools" label="Vivado Tools" icon="xilinx.png"> icon="xilinx.png"> <menuitem name="CopyUnisims" label="Copy Xilinx primitives library to the local project" icon="xilinx.png" call="VivadoUnisims"/> <menuitem name="Vivado Server" <menuitem name="Vivado Server" label="Run remote Vivado session" label="Run remote Vivado session" icon="xilinx.png" icon="xilinx.png" Loading
tools/FPGA_project.xml +39 −4 Original line number Original line Diff line number Diff line Loading @@ -29,10 +29,35 @@ <parameter id="SSHSwitches" label="Other ssh switches" <parameter id="SSHSwitches" label="Other ssh switches" type="String" format="CopyValue" default="" readonly="false" visible="true" /> type="String" format="CopyValue" default="" readonly="false" visible="true" /> <parameter id="VivadoRelease" label="Vivado release number (part of the path)" type="String" format="CopyValue" default="2013.4" readonly="false" visible="true" /> <parameter id="VivadoInstallationRoot" label="Vivado Installation Root" type="String" format="CopyValue" default="/opt/Xilinx/Vivado" readonly="false" visible="true" /> <parameter id="VivadoRelativeExeOptions" label="Vivado relative executable path and options" type="String" format="CopyValue" default="bin/vivado -mode tcl" readonly="false" visible="true" /> <parameter id="VivadoUnisimsPath" label="Relative location of Xilinx unisims library" type="String" format="CopyValue" default="data/verilog/src" readonly="false" visible="true" /> <!-- /opt/Xilinx/Vivado/2013.4/bin/vivado -mode tcl --> <parameter id="RemoteCommand" label="Remote ssh command" <parameter id="RemoteCommand" label="Remote ssh command" type="String" format="CopyValue" default="/opt/Xilinx/Vivado/2013.4/bin/vivado -mode tcl" readonly="false" type="String" format="CopyValue" default="%VivadoInstallationRoot/%VivadoRelease/%VivadoRelativeExeOptions" readonly="true" visible="true" /> <parameter id="VivadoUnisimsAbsolutePath" label="Full path of Xilinx unisims primitives library" type="String" format="CopyValue" default="%VivadoInstallationRoot/%VivadoRelease/%VivadoUnisimsPath" readonly="true" visible="true" /> visible="true" /> <parameter id="SSHExtra" label="ssh extra parameters" type="String" <parameter id="SSHExtra" label="ssh extra parameters" type="String" format="CopyValue" default="" readonly="false" visible="true" /> format="CopyValue" default="" readonly="false" visible="true" /> Loading @@ -51,9 +76,14 @@ "ShellSwitches" "ShellSwitches" "PreSSH" "PreSSH" "SSHSwitches" "SSHSwitches" "RemoteCommand" "SSHExtra" "SSHExtra" "VivadoConsole" "VivadoConsole" "VivadoRelease" "VivadoInstallationRoot" "VivadoRelativeExeOptions" "VivadoUnisimsPath" "RemoteCommand" "VivadoUnisimsAbsolutePath" </group> </group> </input> </input> Loading @@ -65,14 +95,17 @@ interface="FPGAPprojectInterface"> interface="FPGAPprojectInterface"> <!-- Simulation parameters --> <!-- Simulation parameters --> <parameter id="SimulationTopFile" label="Project top simulation file" <parameter id="SimulationTopFile" label="Project top simulation file" type="Filename" default="default_top (testing)" format="CopyValue" type="Filename" default="" format="CopyValue" readonly="false" /> readonly="false" /> <parameter id="SimulationTopModule" label="Project top simulation module" <parameter id="SimulationTopModule" label="Project top simulation module" type="String" default="" format="CopyValue" readonly="false" /> type="String" default="" format="CopyValue" readonly="false" /> <parameter id="ImplementationTopFile" label="Project file with top implementation module" type="Filename" default="" format="CopyValue" readonly="false" /> <parameter id="SimulDir" label="project simulation directory" <parameter id="SimulDir" label="project simulation directory" type="Pathname" default="simulation" format="CopyValue" readonly="false" /> type="Pathname" default="simulation" format="CopyValue" readonly="false" /> <!-- Vivado parameters --> <!-- Vivado parameters --> <parameter id="part" label= "Xilinx device to use" default="" visible="true" omit="" type="String" format="Dash"/> <parameter id="VivadoProjectRoot" label="Relative (to user home directory) path of the workspace on Vivado server" <parameter id="VivadoProjectRoot" label="Relative (to user home directory) path of the workspace on Vivado server" type="String" default="vdt" format="RemoteRootSyntax" readonly="false" /> type="String" default="vdt" format="RemoteRootSyntax" readonly="false" /> Loading Loading @@ -102,9 +135,11 @@ <group name="Simulation" label="Simulation properties"> <group name="Simulation" label="Simulation properties"> "SimulationTopFile" "SimulationTopFile" "SimulationTopModule" "SimulationTopModule" "ImplementationTopFile" "SimulDir" "SimulDir" </group> </group> <group name="Vivado" label="Vivado general properties"> <group name="Vivado" label="Vivado general properties"> "part" "VivadoProjectRoot" "VivadoProjectRoot" "VivadoLocalDir" "VivadoLocalDir" "VivadoIgnoreSource" "VivadoIgnoreSource" Loading
tools/Xilinx/vivado_launch.xml +1 −1 Original line number Original line Diff line number Diff line Loading @@ -15,7 +15,7 @@ </input> </input> <output> <output> <line name="vivado_launch" <line name="Vivado" interrupt="\x03"> interrupt="\x03"> "%ShellSwitches" "%ShellSwitches" "%PreSSH" "%PreSSH" Loading
tools/Xilinx/vivado_synthesis.xml +93 −63 Original line number Original line Diff line number Diff line Loading @@ -5,46 +5,46 @@ <syntax name="read_xdc_syntax" format="%(read_xdc %%ParamValue%|\n%)" /> <syntax name="read_xdc_syntax" format="%(read_xdc %%ParamValue%|\n%)" /> <typedef name="FlattenHierarchyType"> <typedef name="FlattenHierarchyType"> <paramtype kind= "enum" base="String"> <paramtype kind= "enum" base="String"> <item value="rebuilt" label="rebuilt: Attempt to rebuild hierarchy after synthesis is completed"/> <item value="rebuilt" label="Attempt to rebuild hierarchy after synthesis is completed"/> <item value="full" label="full: Flatten hierarchy of the design"/> <item value="full" label="Flatten hierarchy of the design"/> <item value="none" label="none: Preserve hierarchy (prevents optimization)"/> <item value="none" label="Preserve hierarchy (prevents optimization)"/> </paramtype> </paramtype> </typedef> </typedef> <typedef name="GatedClockConversionType"> <typedef name="GatedClockConversionType"> <paramtype kind= "enum" base="String"> <paramtype kind= "enum" base="String"> <item value="off" label="off: No conversion of the gated FF clocks"/> <item value="off" label="No conversion of the gated FF clocks"/> <item value="on" label="on: Convert gated clocks to use FF enables where possible"/> <item value="on" label="Convert gated clocks to use FF enables where possible"/> <item value="auto" label="auto: Convert gated clocks to use FF enables where beneficial"/> <item value="auto" label="Convert gated clocks to use FF enables where beneficial"/> </paramtype> </paramtype> </typedef> </typedef> <typedef name="DirectiveType"> <typedef name="DirectiveType"> <paramtype kind= "enum" base="String"> <paramtype kind= "enum" base="String"> <item value="default" label="default: Full optimization"/> <item value="default" label="Full optimization"/> <item value="runtimeoptimized" label="runtimeoptimized: Some optimization skipped"/> <item value="runtimeoptimized" label="Some optimization skipped"/> </paramtype> </paramtype> </typedef> </typedef> <typedef name="ModeType"> <typedef name="ModeType"> <paramtype kind= "enum" base="String"> <paramtype kind= "enum" base="String"> <item value="default" label="default: Insert buffers around imaginary property modules"/> <item value="default" label="Insert buffers around ImgP (imaginary property) modules"/> <item value="out_of_context" label="out_of_context: Mark Imaginary Property as OOC, do not insert buffers"/> <item value="out_of_context" label="Mark ImgP (imaginary property) as OOC, do not insert buffers"/> </paramtype> </paramtype> </typedef> </typedef> <typedef name="FSMType"> <typedef name="FSMType"> <paramtype kind= "enum" base="String"> <paramtype kind= "enum" base="String"> <item value="off" label="off: No FSM extraction"/> <item value="off" label="No FSM extraction"/> <item value="one_hot" label="one_hot: Extract one-hot FSM"/> <item value="one_hot" label="Extract one-hot FSM"/> <item value="sequntial" label="sequntial:Extract Sequential FSM"/> <item value="sequntial" label="Extract Sequential FSM"/> <item value="johnson" label="johnson: Extract Johnson FSM"/> <item value="johnson" label="Extract Johnson FSM"/> <item value="gray" label="gray: Extract Gray FSM"/> <item value="gray" label="Extract Gray FSM"/> <item value="auto" label="auto: Automatically decide on the FSM type to extract"/> <item value="auto" label="Automatically decide on the FSM type to extract"/> </paramtype> </paramtype> </typedef> </typedef> <typedef name="ResourceSharingType"> <typedef name="ResourceSharingType"> <paramtype kind= "enum" base="String"> <paramtype kind= "enum" base="String"> <item value="off" label="off: No sharing of adders and such between different signals"/> <item value="off" label="No sharing of adders and such between different signals"/> <item value="on" label="on: Enable sharing of adders and such between different signals"/> <item value="on" label="Enable sharing of adders and such between different signals"/> <item value="auto" label="auto: Automaticxally enable sharing of adders and such between different signals where beneficial"/> <item value="auto" label="Automatically enable sharing of adders and such between different signals where beneficial"/> </paramtype> </paramtype> </typedef> </typedef> </interface> </interface> Loading @@ -62,11 +62,18 @@ </extensions-list> </extensions-list> <action-menu> <action-menu> <action label="Vivado Synthesis" resource="" icon="xilinx.png" /> <action label="Synthesise with Vivado:" resource="%ImplementationTopFile" check-extension="false" check-existence="true" icon="xilinx.png" /> <action label="Check by Vivado Synthesis:" resource="%%SelectedFile" check-extension="true" check-existence="true" icon="sample.gif" /> </action-menu> </action-menu> <parameter id="ConstraintsFiles" type="Filelist" format="ParamListSyntax" <parameter id="ConstraintsFiles" type="Filelist" format="ParamListSyntax" default="" label="Select constraint files to load to Vivado" readonly="false" default="" label="Select constraint files to load to Vivado" readonly="false" visible="true" /> visible="true" /> <parameter id="SkipSnapshotSynth" label="Do not create snapshot after synthesis" default="false" type= "Boolean" format="None"/> <parameter id="ResetProject" label="Reset project before loading source files" <parameter id="ResetProject" label="Reset project before loading source files" default="true" default="true" type= "Boolean" format="None"/> type= "Boolean" format="None"/> Loading @@ -91,17 +98,21 @@ <parameter id="name" label= "Design to open after synth" <parameter id="name" label= "Design to open after synth" default="" visible="true" omit="" type="String" format="Dash"/> default="" visible="true" omit="" type="String" format="Dash"/> <parameter id="part" label= "Xilinx device to use" <!-- part is defined in "FPGA_project" --> default="" visible="true" omit="" type="String" format="Dash"/> <!-- <parameter id="part" label= "Xilinx device to use" default="" visible="true" omit="" type="String" format="Dash"/> --> <parameter id="constrset" label= "Constraints set to use" <parameter id="constrset" label= "Constraints set to use" default="" visible="true" omit="" type="String" format="Dash"/> default="" visible="true" omit="" type="String" format="Dash"/> <parameter id="top" label= "Top module of the design" default="%%TopModule" visible="true" omit="" type="String" format="Dash"/> <!-- <parameter id="top" label= "Top module of the design (you may set in in project properties)" default="%ImplementationTopModule" visible="true" omit="" type="String" format="Dash"/> --> <parameter id="include_dirs" label= "Include directories for Verilog `include" <parameter id="include_dirs" label= "Include directories for Verilog `include" default="" visible="true" omit="" type="Stringlist" format="DashList"/> default="" visible="true" omit="" type="Stringlist" format="DashList"/> <parameter id="generic" label= "name=value list of VHDL generic entity or Verilog parameter" <parameter id="generic" label= '"name=value" list of VHDL generic entity or Verilog parameter' default="" visible="true" omit="" type="Stringlist" format="DashList"/> default="" visible="true" omit="" type="Stringlist" format="DashList"/> <parameter id="verilog_define" label= "Verilog macro=text definitions" <parameter id="verilog_define" label= 'Verilog "macro=text" definitions' default="" visible="true" omit="" type="Stringlist" format="DashList"/> default="" visible="true" omit="" type="Stringlist" format="DashList"/> <parameter id="flatten_hierarchy" label= "Flatten Hierarchy during LUT mapping" <parameter id="flatten_hierarchy" label= "Flatten Hierarchy during LUT mapping" default="rebuilt" visible="true" omit="rebuilt" type="FlattenHierarchyType" format="Dash"/> default="rebuilt" visible="true" omit="rebuilt" type="FlattenHierarchyType" format="Dash"/> Loading Loading @@ -129,30 +140,37 @@ default="4" visible="true" omit="4" type="Cardinal_1" format="Dash"/> default="4" visible="true" omit="4" type="Cardinal_1" format="Dash"/> <parameter id="quiet" label= "Ignore errors, return TCL_OK in any case" <parameter id="quiet" label= "Ignore errors, return TCL_OK in any case" default="false" visible="true" omit="false" type="Boolean" format="DashName"/> default="false" visible="true" omit="false" type="Boolean" format="DashName"/> <parameter id="verbose" label= "Temporarily override mesage limits set with set_msg_config" <parameter id="verbose" label= "Temporarily override message limits set with set_msg_config" default="false" visible="true" omit="false" type="Boolean" format="DashName"/> default="false" visible="true" omit="false" type="Boolean" format="DashName"/> <!-- hidden (calculated) parameters --> <!-- hidden (calculated) parameters --> <parameter id="FilteredSourceList" type="Stringlist" <parameter id="FilteredSourceList" type="Stringlist" format="FilteredSourceListSyntax" default="" readonly="true" visible="false" /> format="FilteredSourceListSyntax" default="" readonly="true" visible="false" /> <!-- Parameter read_xdc just copies parameter ConstraintsFiles, but they have different syntax (output representation) --> <parameter id="read_xdc" type="Filelist" format="read_xdc_syntax" label="read_xdc" <parameter id="read_xdc" type="Filelist" format="read_xdc_syntax" label="read_xdc" default="%ConstraintsFiles" visible="true" readonly="false" /> default="%ConstraintsFiles" visible="false" /> <parameter id="top" label= "Top module of the design" default="%%TopModule" visible="false" omit="" type="String" format="Dash"/> <parameter id="VivadoSynthActionIndex" default="%%ChosenActionIndex" type="String" format="CopyValue" visible="false" /> <input> <input> <group name="General"> <group name="General"> "ConstraintsFiles" "ConstraintsFiles" "SkipSnapshotSynth" "SnapshotSynth" <!-- same as in project --> "SnapshotSynth" <!-- same as in project --> "read_xdc" "ResetProject" "ResetProject" "ShowWarnings" "ShowWarnings" "ShowInfo" "ShowInfo" "GrepEWI" "GrepEWI" </group> </group> <group name="Synthesis"> <group name="Synthesis"> "top" "name" "name" "part" "part" "constrset" "constrset" "top" "include_dirs" "include_dirs" "generic" "generic" "verilog_define" "verilog_define" Loading Loading @@ -186,7 +204,9 @@ "' ;" "' ;" "rsync -avrR -e ssh" "rsync -avrR -e ssh" "%FilteredSourceList" "%FilteredSourceList" <if VivadoSynthActionIndex="0"> "%ConstraintsFiles" "%ConstraintsFiles" </if> "%RemoteUser@%RemoteHost:%VivadoProjectRoot" "%RemoteUser@%RemoteHost:%VivadoProjectRoot" </line> </line> <!-- TODO: Make it OK to use just strings, not parameters in dest (for console names) --> <!-- TODO: Make it OK to use just strings, not parameters in dest (for console names) --> Loading @@ -203,17 +223,20 @@ </if> </if> "file mkdir $outputDir\n" "file mkdir $outputDir\n" "read_verilog %FilteredSourceList\n" "read_verilog %FilteredSourceList\n" <if VivadoSynthActionIndex="0"> <if ConstraintsFiles=""> <if ConstraintsFiles=""> "puts 'No constraints files specified, skipping read_xdc command'\n" 'puts "No constraints files specified, skipping read_xdc command"\n' </if> </if> <if-not ConstraintsFiles=""> <if-not ConstraintsFiles=""> "%read_xdc\n" "%read_xdc\n" </if-not> </if-not> </if> "synth_design" "synth_design" "%top" <if VivadoSynthActionIndex="0"> "%name" "%name" "%part" "%part" "%constrset" "%constrset" "%top" "%include_dirs" "%include_dirs" "%generic" "%generic" "%verilog_define" "%verilog_define" Loading @@ -229,13 +252,19 @@ "%keep_equivalent_registers" "%keep_equivalent_registers" "%resource_sharing" "%resource_sharing" "%control_set_opt_thershold" "%control_set_opt_thershold" </if> "%quiet" "%quiet" "%verbose" "%verbose" "\n" "\n" <if-and SkipSnapshotSynth="false" VivadoSynthActionIndex="0"> "write_checkpoint -force %SnapshotSynth\n" "write_checkpoint -force %SnapshotSynth\n" </if-and> "puts '@@FINISH@@'\n" "puts '@@FINISH@@'\n" </line> </line> <!-- -top npmtest -part xc7k70tfbg484-2 -flatten rebuilt\n" --> <!-- -top npmtest -part xc7k70tfbg484-2 -flatten rebuilt\n" --> <if-and SkipSnapshotSynth="false" VivadoSynthActionIndex="0"> <line name="vivado_copy_after_synth"> <line name="vivado_copy_after_synth"> "-c" "-c" "mkdir -p %VivadoLocalDir ;" "mkdir -p %VivadoLocalDir ;" Loading @@ -243,6 +272,7 @@ "%RemoteUser@%RemoteHost:%VivadoProjectRoot/%SnapshotSynth" "%RemoteUser@%RemoteHost:%VivadoProjectRoot/%SnapshotSynth" "%VivadoLocalDir/" "%VivadoLocalDir/" </line> </line> </if-and> <line name="parser_VivadoSynth" <line name="parser_VivadoSynth" errors=".*ERROR: (\[.*\].*)\[(.*):([0-9]+)\]" errors=".*ERROR: (\[.*\].*)\[(.*):([0-9]+)\]" warnings=".*WARNING: (\[.*\].*)\[(.*):([0-9]+)\]" warnings=".*WARNING: (\[.*\].*)\[(.*):([0-9]+)\]" Loading