Commit f8ab6414 authored by Andrey Filippov's avatar Andrey Filippov

new vivado test tool configurations

parent 324d4e01
<?xml version="1.0" encoding="UTF-8"?>
<vdt-project>
<interface name="VivadoInterface" extends="FPGAPprojectInterface">
<syntax name="ProgramSyntax" format="%(%%ParamValue%|\n%)" />
<syntax name="read_xdc_syntax" format="%(read_xdc %%ParamValue%|\n%)" />
</interface>
</vdt-project>
<?xml version="1.0" encoding="UTF-8"?>
<vdt-project>
<!-- name shold be the same as VivadoConsole parameter -->
<tool name="Vivado"
label="Launch Vivado"
project="FPGA_project"
package="FPGA_package"
shell="/bin/bash" interface="VivadoInterface" description="Launching remote Xilinx Vivado in console">
<action-menu>
<action label="Launch Vivado" resource="" icon="xilinx.png" />
</action-menu>
<input>
<group name="General">
</group>
</input>
<output>
<line name="vivado_launch"
interrupt="\x03">
"%ShellSwitches"
"%PreSSH"
"ssh"
<if TerminalMode = "true">
"-t -t"
</if>
"%SSHSwitches"
"-l"
"%RemoteUser"
"%RemoteHost"
"'"
"%RemoteCommand"
"'"
"%SSHExtra"
</line>
</output>
</tool>
</vdt-project>
<?xml version="1.0" encoding="UTF-8"?>
<vdt-project>
<tool name="VivadoSynthesis" label="Load Source files to Vivado"
project="FPGA_project"
interface="VivadoInterface"
package="FPGA_package"
shell="/bin/bash"
ignore="%VivadoIgnoreSource"
description="Vivado Synthesis">
<extensions-list>
<extension mask="v" />
<extension mask="tf" />
</extensions-list>
<action-menu>
<action label="Vivado Synthesis" resource="" icon="xilinx.png" />
</action-menu>
<parameter id="ConstraintsFiles" type="Filelist" format="ParamListSyntax"
default="" label="Select constraint files to load to Vivado" readonly="false"
visible="true" />
<parameter id="ResetProject" label="Reset project before loading source files"
default="true"
type= "Boolean" format="None"/>
<parameter id="ShowWarnings" label="Parse warning messages"
default="true"
type= "Boolean" format="None"/>
<parameter id="ShowInfo" label="Parse info messages"
default="true"
type= "Boolean" format="None"/>
<parameter id="PreGrepW" visible="false"
type="String" format="None"
default="?%ShowWarnings=true: |WARNING, "/>
<parameter id="PreGrepI" visible="false"
type="String" format="None"
default="?%ShowInfo=true: |INFO, "/>
<parameter id="GrepEWI" label="Grep filter"
default="grep --line-buffered -E 'ERROR%PreGrepW%PreGrepI'"
type="String" format="CopyValue"
visible="true" readonly="true"/>
<!-- hidden (calculated) parameters -->
<parameter id="FilteredSourceList" type="Stringlist"
format="FilteredSourceListSyntax" default="" readonly="true" visible="false" />
<parameter id="read_xdc" type="Filelist" format="read_xdc_syntax" label="read_xdc"
default="%ConstraintsFiles" visible="true" readonly="false" />
<input>
<group name="General">
"ConstraintsFiles"
"SnapshotSynth" <!-- same as in project -->
"read_xdc"
"ResetProject"
"ShowWarnings"
"ShowInfo"
"GrepEWI"
</group>
</input>
<output>
<!-- mkdir -p vdt/npmtest -->
<line name="vivado_copy_pre_synth">
"-c"
<!-- "echo"
"%RemoteUser@%RemoteHost:%VivadoProjectRoot"
";" -->
"ssh -l"
"%RemoteUser"
"%RemoteHost"
"'"
"mkdir -p"
"%VivadoProjectRoot"
"' ;"
"rsync -avrR -e ssh"
"%FilteredSourceList"
"%ConstraintsFiles"
"%RemoteUser@%RemoteHost:%VivadoProjectRoot"
</line>
<!-- TODO: Make it OK to use just strings, not parameters in dest (for console names) -->
<line name="vivado_run_synth"
dest="VivadoConsole"
mark="``"
sep=""
prompt="@@FINISH@@"
stdout="parser_VivadoSynth">
"cd ~/%VivadoProjectRoot\n"
"set outputDir ~/%VivadoProjectRoot/build\n"
<if ResetProject="true">
"reset_project\n""
</if>
"file mkdir $outputDir\n"
"read_verilog %FilteredSourceList\n"
<if ConstraintsFiles="">
"puts 'No constraints files specified, skipping read_xdc command'\n"
</if>
<if-not ConstraintsFiles="">
"%read_xdc\n"
</if-not>
"synth_design -top npmtest -part xc7k70tfbg484-2 -flatten rebuilt\n"
"write_checkpoint -force %SnapshotSynth\n"
"puts '@@FINISH@@'\n"
</line>
<line name="vivado_copy_after_synth">
"-c"
"mkdir -p %VivadoLocalDir ;"
"rsync -avr -e ssh"
"%RemoteUser@%RemoteHost:%VivadoProjectRoot/%SnapshotSynth"
"%VivadoLocalDir/"
</line>
<line name="parser_VivadoSynth"
errors=".*ERROR: (\[.*\].*)\[(.*):([0-9]+)\]"
warnings=".*WARNING: (\[.*\].*)\[(.*):([0-9]+)\]"
info=".*INFO: (\[.*\].*)\[(.*):([0-9]+)\]">
"-c"
"%GrepEWI"
"| %SedPaths"
</line>
</output>
</tool>
</vdt-project>
<?xml version="1.0" encoding="UTF-8"?>
<vdt-project>
<tool name="VivadoTest" label="VivadoCommand"
project="FPGA_project"
interface="VivadoInterface"
package="FPGA_package"
shell="/bin/bash"
ignore="%VivadoIgnoreSource"
description="Sending command to a remote Vivado session" errors="(.*):([0-9]+): [a-z ]*error: (.*)"
warnings="(.*):([0-9]+): warning: (.*)" info="(.*):([0-9]+): info: (.*)"> <!--does not actually exist -->
<extensions-list>
<extension mask="v" />
<extension mask="tf" />
</extensions-list>
<action-menu>
<action label="Vivado Command" resource="" icon="xilinx.png" />
</action-menu>
<parameter id="TCLCommand" label="Remote TCL Command to send"
type="Stringlist" format="ProgramSyntax" default="puts &quot;Hello, World!&quot;"
readonly="false" visible="true" />
<parameter id="Timeout" label="Script timeout(sec)" type="Cardinal"
format="CopyValue" default="10" readonly="false" visible="true" />
<!-- hidden (calculated) parameters -->
<parameter id="FilteredSourceList" type="Stringlist"
format="FilteredSourceListSyntax" default="" readonly="true" visible="false" />
<input>
<group name="General">
"TCLCommand"
"Timeout"
</group>
</input>
<output>
<line name="pre_tcl">
"-c"
"echo 'scp files here' ;"
"echo '"
"%FilteredSourceList"
"' ;"
"sleep 2 ;"
</line>
<!-- TODO: Make it OK to ose just strings, not parameters in dest (for console names) -->
<line name="vivado_line_01"
dest="VivadoConsole"
mark="``"
sep="\n"
prompt="@@FINISH@@"
stdout="parser_001"
timeout="Timeout">
"%TCLCommand"
"puts '@@FINISH@@'"
"``"`" <!-- two new lines should generate a pair of prompts from the remote -->
</line>
<line name="command_line_02">
"-c"
"echo 'Will scp result files back here' ;"
"sleep 2 ;"
</line>
<!-- parser_01 being referenced should be launched in an asynchronous process/console, removed from the launch sequence -->
<line name="parser_001"
errors="(.*):([0-9]+): [a-z ]*error: (.*)"
warnings="(.*):([0-9]+): warning: (.*)"
info="(.*):([0-9]+): info: (.*)">
"-c"
"cat"
</line>
</output>
</tool>
</vdt-project>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment