1
0
mirror of https://github.com/wfjm/w11.git synced 2026-04-29 05:16:20 +00:00

tbrun_tbwrri and ti_w11 updates

- tbrun_tbwrri: fully implement --r(l|b)mon
  - ti_w11: add -w and -to options
This commit is contained in:
wfjm
2022-07-10 12:29:41 +02:00
parent da1f0c151e
commit f2ced63b0d
5 changed files with 87 additions and 18 deletions

View File

@@ -1,5 +1,5 @@
.\" -*- nroff -*-
.\" $Id: tbw.1 1238 2022-05-15 15:19:08Z mueller $
.\" $Id: tbw.1 1250 2022-07-10 10:21:03Z mueller $
.\" SPDX-License-Identifier: GPL-3.0-or-later
.\" Copyright 2013-2022 by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
.\"
@@ -61,6 +61,22 @@ In this case, the \fIFILEDEF\fP argument can be specified as 'tag=value'
pairs where 'tag' refers to a generic name and 'value' gives the concrete
file name. Useful when several input files are to be specified.
.
.SS Using inline configurations
A \fIFILEDEF\fP argument can have the form 'tag={line1;line2;...}'.
In that case, a temporary file is created with the given lines and the name
of the temporary file is associated with the tag as described above.
This is often used in conjunction with the tag referring to the
configuration file.
This mechanism allows for rlink based test benches to
specify '.scntl', '.sdata', 'rlmon', 'rbmon', and '.wait' startup commands
on the \fBtbw\fP command line and is for example used by \fBtbrun_tbwrri\fP(1).
The '-sxon' option of \fBtbrun_tbwrri\fP(1) creates for example
.EX
_conf={.sdata 08 0002;.sdata 10 0002;}
.EE
which generates two 'simbus' configuration cycles before the simulation body
starts.
.
.SS Test benches controlled with \fBti_rri\fP
In this case, the communication between the test bench and the controlling
\fBti_rri\fP is done via two named pipes (see \fBfifo\fP(7)). The test
@@ -177,12 +193,12 @@ a setup like
.SH EXAMPLES
.SS Stimulus file based test benches
Test benches are usually self-checking and produce a comprehensive log file.
For each checked response, the line contains the word \fICHECK\fP and either
an \fIOK\fP or a \fIFAIL\fP, in the latter case in general with an indication
For each checked response, the line contains the word "CHECK" and either
an "OK" or a "FAIL", in the latter case in general with an indication
of what\'s wrong.
Other unexpected behavior, like timeouts, will also result in a line
containing the word \fIFAIL\fP.
When the simulation stops a line with the word \fIDONE\fP is printed.
containing the word "FAIL".
When the simulation stops a line with the word "DONE" is printed.
These test benches are usually run like
.EX

View File

@@ -1,11 +1,11 @@
.\" -*- nroff -*-
.\" $Id: ti_w11.1 1237 2022-05-15 07:51:47Z mueller $
.\" $Id: ti_w11.1 1250 2022-07-10 10:21:03Z mueller $
.\" SPDX-License-Identifier: GPL-3.0-or-later
.\" Copyright 2013-2022 by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
.\"
.\" ------------------------------------------------------------------
.
.TH TI_W11 1 2019-01-04 "Retro Project" "Retro Project Manual"
.TH TI_W11 1 2022-07-08 "Retro Project" "Retro Project Manual"
.\" ------------------------------------------------------------------
.SH NAME
ti_w11 \- Quick starter for \fBti_rri\fP with \fBw11\fP CPU designs
@@ -109,18 +109,25 @@ activate GHDL wave dump, will write a dump file with the name
.PD
.
.SS "common options"
.IP \fB-ll\fIn\fR
.IP \fB-ll\fIn\fR 6
set rlink logging level to \fIn\fR (will issue a --logl=\fIn\fR).
.IP \fB-dl\fIn\fR
set rlink dump level to \fIn\fR (will issue a --dmpl=\fIn\fR).
.IP \fB-tl\fIn\fR
set rlink I/O trace level to \fIn\fR (will issue a --tiol=\fIn\fR).
.IP "\fB-to \fIval\fP"
set timeout for rlink and \fB-w\fP waits (default FPGA 10., sim 120.)
.IP \fB-b\fR
batch mode
batch mode (default is to start interactive session)
.IP \fB-w\fP
wait till CPU halted (used with \fB-e\fP, implies \fB-b\fP)
.IP \fB-ns\fP
don't start w11 shell
.IP "\fB-e \fR\fIfile\fR"
load and execute \fIfile\fP. If the file type is '.mac' the file will
be on the fly compiled with \fBasm-11\fP(1), for all other file types
it is assumed that they are in \fBlda-11\fP(5) format.
Can be combined with \fB-w\fP wait for completion of code.
.IP \fB-dry\fR
dry run, prints the commands but doesn't execute
.
@@ -146,14 +153,20 @@ The typical way to start a Nexys4 board.
.IP "\fBti_w11 -n3 -e $RETROBASE/tools/mcode/dl11/dl11echo.mac\fR"
Will start the \fItb_w11a_n3\fP test bench in \fBghdl\fP(1), on the fly
compile the \fIdz11echo.mac\fP test program with \fBasm-11\fP(1), load
and execute it. This little test code echos console input, just abort
and start it. This little test code echos console input, just abort
with ^C if you have seen enough.
.IP "\fBti_w11 -c7 -tmu -w -e $RETROBASE/tools/tcode/cpu_basics.mac\fR"
Will start the \fItb_w11a_c7\fP test bench in \fBghdl\fP(1), on the fly
compile the \fIcpu_basics.mac\fP test code with \fBasm-11\fP(1), load and
start it, wait for CPU halted, and finally terminate. A tmu trace is written
to file \fItmu_ofile\fP and can be analysed with \fBtmuconv\fP(1).
.
.\" ------------------------------------------------------------------
.SH "SEE ALSO"
.BR ti_rri (1),
.BR asm-11 (1),
.BR lda-11 (1)
.BR lda-11 (5)
.\" ------------------------------------------------------------------
.SH AUTHOR