1
0
mirror of https://github.com/wfjm/w11.git synced 2026-01-19 18:07:49 +00:00

get vivado 2017.1 ready

- xviv_msg_filter: add version-range tag support
- *.vmfset:
  - drop the nonsense 'Synth 8-6014' messages
  - adopt to different path used by 'Synth 8-3332' messages
This commit is contained in:
wfjm 2017-06-10 11:36:32 +02:00
parent 27de682629
commit 211e1f3ff3
14 changed files with 210 additions and 23 deletions

View File

@ -1,4 +1,4 @@
# $Id: sys_tst_rlink_arty.vmfset 773 2016-06-05 20:03:15Z mueller $
# $Id: sys_tst_rlink_arty.vmfset 908 2017-06-05 21:03:06Z mueller $
#
# ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[syn]
@ -7,6 +7,9 @@ I [Synth 8-3331] RB_MREQ # generic
# --> rlink_sp1c doesn't use CE_USEC # OK 2016-06-05
i [Synth 8-3331] rlink_sp1c.*CE_USEC
# sequential element removed (2017.1 nonsense) -----------------
I [Synth 8-6014] _reg # generic
# unused sequential element ------------------------------------
# --> many HIO pins not used # OK 2016-06-05
i [Synth 8-3332] IOB_(SWI|BTN)/R_DI_reg[\d*]

View File

@ -1,4 +1,4 @@
-- $Id: sys_tst_rlink_b3.vhd 889 2017-04-30 13:31:27Z mueller $
-- $Id: sys_tst_rlink_b3.vhd 907 2017-06-05 08:19:12Z mueller $
--
-- Copyright 2015-2016 by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
--
@ -28,9 +28,9 @@
-- Test bench: tb/tb_tst_rlink_b3
--
-- Target Devices: generic
-- Tool versions: viv 2014.4-2015.4; ghdl 0.31-0.33
-- Tool versions: viv 2014.4-2016.4; ghdl 0.31-0.34
--
-- Synthesized (xst):
-- Synthesized (viv):
-- Date Rev viv Target flop lutl lutm bram slic
-- 2016-03-27 753 2015.4 xc7a35t-1 986 1352 36 3.0 473 meminf
-- 2016-03-13 743 2015.4 xc7a35t-1 988 1372 64 4.5 503 +XADC

View File

@ -1,4 +1,4 @@
# $Id: sys_tst_rlink_b3.vmfset 773 2016-06-05 20:03:15Z mueller $
# $Id: sys_tst_rlink_b3.vmfset 908 2017-06-05 21:03:06Z mueller $
#
# ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[syn]
@ -7,6 +7,9 @@ I [Synth 8-3331] RB_MREQ # generic
# --> rlink_sp1c doesn't use CE_USEC # OK 2016-06-05
i [Synth 8-3331] rlink_sp1c.*CE_USEC
# sequential element removed (2017.1 nonsense) -----------------
I [Synth 8-6014] _reg # generic
# unused sequential element ------------------------------------
I [Synth 8-3332] R_REGS_reg[(btn|swi)(eff)?][\d*] # generic
# --> monitor outputs moneop,monattn currently not used # OK 2016-06-05

View File

@ -1,4 +1,4 @@
# $Id: sys_tst_rlink_n4.vmfset 773 2016-06-05 20:03:15Z mueller $
# $Id: sys_tst_rlink_n4.vmfset 908 2017-06-05 21:03:06Z mueller $
#
# ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[syn]
@ -9,6 +9,9 @@ I [Synth 8-3331] I_BTNRST_N
# --> rlink_sp1c doesn't use CE_USEC # OK 2016-06-05
i [Synth 8-3331] rlink_sp1c.*CE_USEC
# sequential element removed (2017.1 nonsense) -----------------
I [Synth 8-6014] _reg # generic
# unused sequential element ------------------------------------
I [Synth 8-3332] R_REGS_reg[(btn|swi)(eff)?][\d*] # generic
# --> monitor outputs moneop,monattn currently not used # OK 2016-06-05

View File

@ -1,4 +1,4 @@
# $Id: sys_tst_serloop1_n4.vmfset 773 2016-06-05 20:03:15Z mueller $
# $Id: sys_tst_serloop1_n4.vmfset 908 2017-06-05 21:03:06Z mueller $
#
# ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[syn]
@ -24,6 +24,9 @@ i [Synth 8-3331] SER_MONI[abclkdiv.*][\d*]
i [Synth 8-3331] SER_MONI[(rxact|txact|abdone|rxerr|rxovr)]
i [Synth 8-3331] HIO_CNTL[enaftdi]
# sequential element removed (2017.1 nonsense) -----------------
I [Synth 8-6014] _reg # generic
# unused sequential element ------------------------------------
# --> many HIO pins not used # OK 2016-06-05
i [Synth 8-3332] HIO/IOB_(SWI|BTN)/R_DI_reg[\d*]

View File

@ -1,4 +1,4 @@
# $Id: sys_tst_serloop2_n4.vmfset 773 2016-06-05 20:03:15Z mueller $
# $Id: sys_tst_serloop2_n4.vmfset 908 2017-06-05 21:03:06Z mueller $
#
# ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[syn]
@ -26,6 +26,9 @@ i [Synth 8-3331] SER_MONI[abclkdiv.*][\d*]
i [Synth 8-3331] SER_MONI[(rxact|txact|abdone|rxerr|rxovr)]
i [Synth 8-3331] HIO_CNTL[enaftdi]
# sequential element removed (2017.1 nonsense) -----------------
I [Synth 8-6014] _reg # generic
# unused sequential element ------------------------------------
I [Synth 8-3332] R_REGS_reg[(btn|swi)(eff)?][\d*] # generic
# --> currently CDUWIDTH=8, but clock below 127 MHz # OK 2016-06-05

View File

@ -1,8 +1,11 @@
# $Id: sys_tst_snhumanio_b3.vmfset 772 2016-06-05 12:55:11Z mueller $
# $Id: sys_tst_snhumanio_b3.vmfset 908 2017-06-05 21:03:06Z mueller $
#
# ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[syn]
# --> really no messages ... !
# sequential element removed (2017.1 nonsense) -----------------
I [Synth 8-6014] _reg # generic
# --> really no messages otherise... !
# ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[imp]

View File

@ -1,7 +1,10 @@
# $Id: sys_tst_snhumanio_n4.vmfset 772 2016-06-05 12:55:11Z mueller $
# $Id: sys_tst_snhumanio_n4.vmfset 908 2017-06-05 21:03:06Z mueller $
#
# ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[syn]
# sequential element removed (2017.1 nonsense) -----------------
I [Synth 8-6014] _reg # generic
# port driven by constant --------------------------------------
# --> RGBLED0 and upper 4 DSP digits unused # OK 2016-06-05
i [Synth 8-3917] O_RGBLED0[\d]

View File

@ -1,4 +1,4 @@
# $Id: sys_tst_sram_n4.vmfset 785 2016-07-10 12:22:41Z mueller $
# $Id: sys_tst_sram_n4.vmfset 908 2017-06-05 21:03:06Z mueller $
#
# ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[syn]
@ -23,6 +23,9 @@ i [Synth 8-3331] tst_sram.*MEM_ACK_W
# --> rlink_sp2c doesn't use CE_USEC and CE_MSEC # OK 2016-06-05
i [Synth 8-3331] rlink_sp2c.*CE_(USEC|MSEC)
# sequential element removed (2017.1 nonsense) -----------------
I [Synth 8-6014] _reg # generic
# unused sequential element ------------------------------------
I [Synth 8-3332] R_LREGS_reg[attn][\d*] # generic
# --> many HIO pins not used # OK 2016-06-05

View File

@ -1,4 +1,4 @@
# $Id: sys_w11a_br_arty.vmfset 773 2016-06-05 20:03:15Z mueller $
# $Id: sys_w11a_br_arty.vmfset 909 2017-06-09 16:21:55Z mueller $
#
# ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[syn]
@ -6,7 +6,6 @@
I [Designutils 20-1567] # generic
# net without driver -------------------------------------------
i [Synth 8-3848] DM_STAT_SE[snum].*pdp11_sequencer # OK 2016-06-05
# unconnected ports --------------------------------------------
I [Synth 8-3331] RB_MREQ # generic
@ -14,7 +13,11 @@ I [Synth 8-3331] DM_STAT_DP # generic
# --> pdp11_hio70_arty uses only subset of CP_STAT info # OK 2016-06-05
I [Synth 8-3331] pdp11_hio70_arty.*CP_STAT[.*]
# sequential element removed (2017.1 nonsense) -----------------
I [Synth 8-6014] _reg # generic
# unused sequential element ------------------------------------
{:2016.4}
I [Synth 8-3332] R_LREGS_reg[attn][\d*] # generic
# --> many HIO pins not used # OK 2016-06-05
I [Synth 8-3332] HIO/R_REGS_reg[(btn|swi)(eff)?][\d*]
@ -43,6 +46,42 @@ i [Synth 8-3332] SEQ/R_IDSTAT_reg[res_sel][2]
# --> monitor outputs moneop,monattn currently not used # OK 2016-06-05
i [Synth 8-3332] RLINK/CORE/RL/R_LREGS_reg[moneop]
i [Synth 8-3332] RLINK/CORE/RL/R_LREGS_reg[monattn]
# --> dmcmon not configured, snum not used # OK 2017-06-06
i [Synth 8-3332] SEQ/SNUM0.R_VMWAIT_reg
{2017.1:}
I [Synth 8-3332] R_LREGS_reg[attn][\d*] # generic
# --> many HIO pins not used # OK 2017-06-06
I [Synth 8-3332] HIO/R_REGS_reg[(btn|swi)(eff)?][\d*]
i [Synth 8-3332] HIO/IOB_BTN/R_DI_reg[\d*]
i [Synth 8-3332] HIO/DEB.DEB_BTN/R_REGS_reg[(dref|dout|dchange|cecnt)][\d*]
# --> usec not used for serport clock domain # OK 2017-06-06
i [Synth 8-3332] CLKDIV_CLKS/R_REGS_reg[usec]
# --> inst_compl logic disabled in pdp11_mmu # OK 2017-06-06
i [Synth 8-3332] MMU/R_SSR0_reg[inst_compl].* pdp11_vmbox
# --> IB_MREQ.cacc only used in ibd_ibmon, which is disabled # OK 2017-06-06
i [Synth 8-3332] R_REGS_reg[ibcacc].* pdp11_vmbox
# --> not yet used # OK 2017-06-06
i [Synth 8-3332] R_STATUS_reg[suspext].* pdp11_sequencer
# --> mawidth=4, nblock=11, so some cellen unused # OK 2017-06-06
i [Synth 8-3332] BRAM_CTL/R_REGS_reg[cellen][1\d]
# --> indeed no types with [3] set # OK 2017-06-06
i [Synth 8-3332] R_REGS_reg[dtyp][3].* ibdr_rhrp
# --> not yet used # OK 2017-06-06
i [Synth 8-3332] R_REGS_reg[req_lock].* ibd_iist
i [Synth 8-3332] R_REGS_reg[req_boot].* ibd_iist
# --> [8] is for DZ11TX, not yet available # OK 2017-06-06
# --> [9] is for DZ11RX, unclear why this one isn't removed too !!
i [Synth 8-3332] R_STATUS_reg[intvect][8].* pdp11_sequencer
# --> _decode only uses _[oalm]unit -> [2] always '0' in decode # OK 2017-06-06
i [Synth 8-3332] R_IDSTAT_reg[res_sel][2].* pdp11_sequencer
# --> monitor outputs moneop,monattn currently not used # OK 2017-06-06
i [Synth 8-3332] RLINK/CORE/RL/R_LREGS_reg[moneop]
i [Synth 8-3332] RLINK/CORE/RL/R_LREGS_reg[monattn]
# --> dmcmon not configured, snum not used
i [Synth 8-3332] SNUM0.R_VMWAIT_reg.* pdp11_sequencer # OK 2017-06-06
{:}
# ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[imp]

View File

@ -1,4 +1,4 @@
# $Id: sys_w11a_b3.vmfset 773 2016-06-05 20:03:15Z mueller $
# $Id: sys_w11a_b3.vmfset 909 2017-06-09 16:21:55Z mueller $
#
# ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[syn]
@ -6,14 +6,16 @@
I [Designutils 20-1567] # generic
# net without driver -------------------------------------------
# --> snum currently disabled # OK 2016-06-04
i [Synth 8-3848] DM_STAT_SE[snum].*pdp11_sequencer
# unconnected ports --------------------------------------------
I [Synth 8-3331] RB_MREQ # generic
I [Synth 8-3331] DM_STAT_DP # generic
# sequential element removed (2017.1 nonsense) -----------------
I [Synth 8-6014] _reg # generic
# unused sequential element ------------------------------------
{:2016.4}
I [Synth 8-3332] R_LREGS_reg[attn][\d*] # generic
I [Synth 8-3332] HIO/R_REGS_reg[(btn|swi)(eff)?][\d*] # generic
# --> usec not used for serport clock domain # OK 2016-06-04
@ -39,6 +41,39 @@ i [Synth 8-3332] SEQ/R_IDSTAT_reg[res_sel][2]
# --> monitor outputs moneop,monattn currently not used # OK 2016-06-04
i [Synth 8-3332] RLINK/CORE/RL/R_LREGS_reg[moneop]
i [Synth 8-3332] RLINK/CORE/RL/R_LREGS_reg[monattn]
# --> dmcmon not configured, snum not used # OK 2017-06-06
i [Synth 8-3332] SEQ/SNUM0.R_VMWAIT_reg
{2017.1:}
I [Synth 8-3332] R_LREGS_reg[attn][\d*] # generic
I [Synth 8-3332] R_REGS_reg[(btn|swi)(eff)?][\d*] # generic
# --> usec not used for serport clock domain # OK 2017-06-06
i [Synth 8-3332] R_REGS_reg[usec].* clkdivce
# --> inst_compl logic disabled in pdp11_mmu # OK 2017-06-06
i [Synth 8-3332] MMU/R_SSR0_reg[inst_compl].* pdp11_vmbox
# --> IB_MREQ.cacc only used in ibd_ibmon, which is disabled # OK 2017-06-06
i [Synth 8-3332] R_REGS_reg[ibcacc].* pdp11_vmbox
# --> not yet used # OK 2017-06-06
i [Synth 8-3332] R_STATUS_reg[suspext].* pdp11_sequencer
# --> mawidth=4, nblock=11, so some cellen unused # OK 2016-06-05
i [Synth 8-3332] R_REGS_reg[cellen][1\d].* pdp11_bram_memctl
# --> indeed no types with [3] set # OK 2017-06-06
i [Synth 8-3332] R_REGS_reg[dtyp][3].* ibdr_rhrp
# --> not yet used # OK 2017-06-06
i [Synth 8-3332] R_REGS_reg[req_lock].* ibd_iist
i [Synth 8-3332] R_REGS_reg[req_boot].* ibd_iist
# --> [8] is for DZ11TX, not yet available # OK 2017-06-06
# --> [9] is for DZ11RX, unclear why this one isn't removed too !!
i [Synth 8-3332] R_STATUS_reg[intvect][8].* pdp11_sequencer
# --> _decode only uses _[oalm]unit -> [2] always '0' in decode # OK 2017-06-06
i [Synth 8-3332] R_IDSTAT_reg[res_sel][2].* pdp11_sequencer
# --> monitor outputs moneop,monattn currently not used # OK 2017-06-06
i [Synth 8-3332] CORE/RL/R_LREGS_reg[moneop].* rlink_sp2c
i [Synth 8-3332] CORE/RL/R_LREGS_reg[monattn].* rlink_sp2c
# --> dmcmon not configured, snum not used # OK 2017-06-06
i [Synth 8-3332] SNUM0.R_VMWAIT_reg.* pdp11_sequencer
{:}
# ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[imp]

View File

@ -1,4 +1,4 @@
# $Id: sys_w11a_n4.vmfset 885 2017-04-23 15:54:01Z mueller $
# $Id: sys_w11a_n4.vmfset 909 2017-06-09 16:21:55Z mueller $
#
# ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[syn]
@ -13,7 +13,11 @@ i [Synth 8-3917] O_RGBLED0[\d]
I [Synth 8-3331] RB_MREQ # generic
I [Synth 8-3331] DM_STAT_DP # generic
# sequential element removed (2017.1 nonsense) -----------------
I [Synth 8-6014] _reg # generic
# unused sequential element ------------------------------------
{:2016.4}
I [Synth 8-3332] R_LREGS_reg[attn][\d*] # generic
I [Synth 8-3332] HIO/R_REGS_reg[(btn|swi)(eff)?][\d*] # generic
# --> only 4 MB out of 16 MB used # OK 2016-05-28
@ -41,6 +45,36 @@ i [Synth 8-3332] RLINK/CORE/RL/R_LREGS_reg[monattn]
# --> scnt disabled, thus 3 SNUM bits '0' # OK 2017-04-22
i [Synth 8-3332] R_REGS_reg[se_snum][(4|5|6)]
{2017.1:}
I [Synth 8-3332] R_LREGS_reg[attn][\d*] # generic
I [Synth 8-3332] R_REGS_reg[(btn|swi)(eff)?][\d*] # generic
# --> only 4 MB out of 16 MB used # OK 2017-06-06
i [Synth 8-3332] IOB_MEM_ADDRH/R_DO_reg[20]
i [Synth 8-3332] IOB_MEM_ADDRH/R_DO_reg[21]
# --> usec not used for serport clock domain # OK 2017-06-06
i [Synth 8-3332] R_REGS_reg[usec].* clkdivce
# --> inst_compl logic disabled in pdp11_mmu # OK 2017-06-06
i [Synth 8-3332] MMU/R_SSR0_reg[inst_compl].* pdp11_vmbox
# --> not yet used # OK 2017-06-06
i [Synth 8-3332] R_STATUS_reg[suspext].* pdp11_sequencer
# --> indeed no types with [3] set # OK 2017-06-06
i [Synth 8-3332] R_REGS_reg[dtyp][3].* ibdr_rhrp
# --> not yet used # OK 2017-06-06
i [Synth 8-3332] R_REGS_reg[req_lock].* ibd_iist
i [Synth 8-3332] R_REGS_reg[req_boot].* ibd_iist
# --> [8] is for DZ11TX, not yet available # OK 2017-06-06
# --> [9] is for DZ11RX, unclear why this one isn't removed too !!
i [Synth 8-3332] R_STATUS_reg[intvect][8].* pdp11_sequencer
# --> _decode only uses _[oalm]unit -> [2] always '0' in decode # OK 2017-06-06
i [Synth 8-3332] R_IDSTAT_reg[res_sel][2].* pdp11_sequencer
# --> monitor outputs moneop,monattn currently not used # OK 2017-06-06
i [Synth 8-3332] CORE/RL/R_LREGS_reg[moneop].* rlink_sp2c
i [Synth 8-3332] CORE/RL/R_LREGS_reg[monattn].* rlink_sp2c
# --> scnt disabled, thus 3 SNUM bits '0' # OK 2017-06-06
i [Synth 8-3332] R_REGS_reg[se_snum][(4|5|6)]
{:}
# INFO: encoded FSM with state register as --------------------
# test for sys_w11a_n4 that all FSMs are one_hot
r [Synth 8-3354] R_BREGS_reg[state.*'one-hot'.*'rlink_core'

View File

@ -1,7 +1,7 @@
#!/usr/bin/perl -w
# $Id: xviv_msg_filter 772 2016-06-05 12:55:11Z mueller $
# $Id: xviv_msg_filter 909 2017-06-09 16:21:55Z mueller $
#
# Copyright 2016- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
# Copyright 2016-2017 by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
#
# This program is free software; you may redistribute and/or modify it under
# the terms of the GNU General Public License as published by the Free
@ -14,6 +14,7 @@
#
# Revision History:
# Date Rev Version Comment
# 2017-06-06 909 1,1 add version-range tags
# 2016-06-04 772 1.0 Initial version
#
@ -43,6 +44,10 @@ my $rmisscnt = 0;
my $timebad = 0;
my $timegood = 0;
my $vercur;
my $vermin = "0000.0";
my $vermax = "9999.9";
my $retrobase = $ENV{RETROBASE};
autoflush STDOUT 1 if (-p STDOUT); # autoflush if output into pipe
@ -63,6 +68,7 @@ if ($type !~ m{^(syn|imp)$}) {
exit 1;
}
if (read_ver($lognam)) {exit 1;}
if (read_mfs($mfsnam)) {exit 1;}
if (read_log($lognam)) {exit 1;}
@ -207,6 +213,8 @@ sub read_mfs {
if (m{^\[([a-z]{3})\]$}) { # [typ] tag found
if ($1 eq $type) {
$intyp = 1;
$vermin = "0000.0";
$vermax = "9999.9";
} else {
$intyp = 0;
}
@ -215,6 +223,14 @@ sub read_mfs {
next unless $intyp; # only process relevant lines
if (m/\{(\d{4}\.\d)?:(\d{4}\.\d)?\}/) { # {vermin:varmax} tag found
$vermin = (defined $1) ? $1 : "0000.0";
$vermax = (defined $2) ? $2 : "9999.9";
next;
}
next if $vercur lt $vermin || $vercur gt $vermax;
if (/^([iIr])\s+\[(.+?)\]\s*(.*)\s*$/) {
#print "+++0m '$1' '$2' '$3'\n";
my $fmode = $1;
@ -257,6 +273,33 @@ sub read_log {
return 0;
}
#-------------------------------------------------------------------------------
sub read_ver {
my ($fname) = @_;
if (not -r $fname) {
print STDERR "xviv_msg_filter-E: \'$fname\' not existing or readable\n";
return 1;
}
open (LFILE, $fname) or die "can't open for read $fname: $!";
my $nline = 0;
while (<LFILE>) {
chomp;
if (m/\*\*\*\*\*\* Vivado v(\d{4}\.\d)/) {
$vercur = $1;
close (LFILE);
return 0;
}
last if $nline++ > 100; # stop looking after 100 lines
}
close (LFILE);
print STDERR "xviv_msg_filter-E: no vivado version found in \'$fname\'\n";
return 1;
}
#-------------------------------------------------------------------------------
sub print_help {

View File

@ -1,10 +1,10 @@
.\" -*- nroff -*-
.\" $Id: xviv_msg_filter.1 845 2017-01-15 14:58:27Z mueller $
.\" $Id: xviv_msg_filter.1 909 2017-06-09 16:21:55Z mueller $
.\"
.\" Copyright 2016- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
.\"
.\" ------------------------------------------------------------------
.TH XVIV_MSG_FILTER 1 2016-05-27 "Retro Project" "Retro Project Manual"
.TH XVIV_MSG_FILTER 1 2017-06-06 "Retro Project" "Retro Project Manual"
.\" ------------------------------------------------------------------
.SH NAME
xviv_msg_filter \- message filter for Xilinx Vivado tool chain log files
@ -66,6 +66,18 @@ after a '#' in a line will be ignored.
xviv_msg_filter will extract the rules of the section matching the
\fITYPE\fP argument.
A line of the form
.EX
{yyyy.n:yyyy.n}
{:yyyy.n}
{yyyy.n:}
{:}
.EE
acts as version range tag and specifies a range of vivado versions for which the
following rules shall be applied.
"{:2016.4}" means up to version 2016.4, "{:2017.1}" from 2017.1 on, while
"{:}" cancels version range checking.
A line starting with '@' specifies a nested mfset file. This allows to
store the message filter sets in a structured way and factor out common
rule sets in separate files.
@ -95,7 +107,7 @@ Vivado message name, enclosed in [] brackets
regular expression to match the message text. This field is optional, if
omitted all messages with th given name will match. '[' and ']' characters
are escaped to '\\[' and '\\]', because [] is very often part of signal
names. Character set matches are therefore not possible.
names. Character set matches are therefore not possible, unfortunately.
.SS Example message filter file
.EX