OpenCores
URL https://opencores.org/ocsvn/w11/w11/trunk

Subversion Repositories w11

Compare Revisions

  • This comparison shows the changes necessary to convert path
    /w11/tags/w11a_V0.6/doc/man/man1
    from Rev 23 to Rev 24
    Reverse comparison

Rev 23 → Rev 24

/ti_rri.1
0,0 → 1,210
.\" -*- nroff -*-
.\" $Id: ti_rri.1 558 2014-06-01 22:20:51Z mueller $
.\"
.\" Copyright 2013- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
.\"
.\" ------------------------------------------------------------------
.
.TH TI_RRI 1 2013-05-20 "Retro Project" "Retro Project Manual"
.\" ------------------------------------------------------------------
.SH NAME
ti_rri \- \fBRlink\fP Backend Server
.\" ------------------------------------------------------------------
.SH SYNOPSIS
.
.SY ti_rri
.OP OPTIONS
.OP COMMANDS
.YS
.
.\" ------------------------------------------------------------------
.SH DESCRIPTION
The \fBti_rri\fP command creates a \fBtclsh\fP(1) based \fBRlink\fP backend
server session. After loading all basic packages and shared libraries which
implement the tcl binding of the \fBRlink\fP server the command
 
.RS 2
.PD 0
.IP "-" 2
creates the default \fIrlc\fP and \fIrls\fP commands representing the connection
and the server objects
.IP "-"
loads additional tcl packages when requested with \fB\-\-pack\fP
.IP "-"
sets up logging and debug according to \fB\-\-log\fP, \fB\-\-logl\fP,
\fB\-\-dmpl\fP, and \fB\-\-tiol\fP
.IP "-"
starts an additional process if requested with \fB\-\-run\fP
.IP "-"
opens a connection when requested with \fB\-\-fifo\fP,
\fB\-\-term\fP, or \fB\-\-cuff\fP
.IP "-"
and finally executes all remaining \fICOMMANDS\fP arguments as tcl commands
.PD
.RE
.PP
If no \fICOMMANDS\fP are present or if the \fB\-\-int\fP options is given
an interactive mode is entered with all features of \fBtclsh\fP(1) with
tclreadline loaded.
.
.\" ------------------------------------------------------------------
.SH OPTIONS
.\" ----------------------------------------------
.IP \fB\-\-pack=\fIplist\fR
load, with 'package require', additional packages. \fIplist\fP is a comma
separated list of package names. Note that the packages
.BR rutiltpp ,
.BR rlinktpp ,
and
.BR rlink
are automatically loaded already by \fBti_rri\fP.
.
.\" -- --run -------------------------------------
.IP \fB\-\-run=\fIcmd\fR
execute the shell command \fIcmd\fP as subprocess before the \fBrlink\fP
port is opened. This is mainly used to start \fBghdl\fP(1) based test
benches, usually via the \fBtbw\fP(1) wrapper script.
.
.\" -- --fifo ------------------------------------
.IP \fB\-\-fifo\fR[=\fIname\fR[,\fIopts\fR]]
open a fifo type \fBrlink\fP port. It uses a named pipe, and is usually
employed in conjunction with the \fB\-\-run\fP option.
Optional arguments are
.RS
.IP \fBname\fP
name prefix for the named pipe file names. Default is 'rlink_cext_fifo'.
Two fifo's are generated, one with a '_tx' and one with a '_tx' appended
to the name prefix.
.IP \fBopts\fP
comma separated list of further options for the fifo port:
.RS
.PD 0
.TP
.B keep
fifo is kept open on exit
.PD
.RE
.RE
.
.\" -- --term ------------------------------------
.IP \fB\-\-term\fR[=\fIname\fR[,\fIbaud\fR[,\fIopts\fR]]]
open a serial port type \fBrlink\fP port. Optional arguments are
.RS
.IP \fBname\fP
tty device name, default is 'USB0'. If \fIname\fP does not start with '/'
the name is prefixed with '/dev/tty'.
.IP \fBbaud\fP
serial port baud rate, default is '115k'. Allowed baud rate settings are:
.RS
.PD 0
.IP "" 3
2400, 4800, 9600, 19200, 19k, 38400, 38k,
57600, 57k, 115200, 115k, 230400, 230k,
460800, 460k, 500000, 500k, 921600, 921k,
1000000, 1000k, 1M, 1500000, 1500k,
2000000, 2000k, 2M, 2500000, 2500k,
3000000, 3000k, 3M, 4000000, 4000k, 4M
.PD
.RE
.IP \fBopts\fP
comma separated list of further options for the serial port connection:
.RS
.PD 0
.IP \fBbreak\fP
send a break, do autobaud
.IP \fBcts\fP
hardware flow control (cts/rts)
.IP \fBxon\fP
software flow control (xon/xoff)
.PD
.RE
.RE
.
.\" -- --cuff ------------------------------------
.IP \fB\-\-cuff\fR[=\fIname\fR[,\fIopts\fR]]
open a USB via Cypress FX2 type \fBrlink\fP port. Optional arguments are
.RS
.IP \fBname\fP
USB path, default derived from environment variables RETRO_FX2_VID and
RETRO_FX2_PID.
.IP \fBopts\fP
comma separated list of further options for the fifo port:
.RS
.PD 0
.IP \fBtrace\fP
trace USB activities
.PD
.RE
.RE
.
.\" -- --log ------------------------------------
.IP \fB\-\-log=\fIfile\fR
set log file name. Default is to write to \fBstdout\fP(3).
.
.\" -- --logl -----------------------------------
.IP \fB\-\-logl=\fIlvl\fR
set rlink logging level. Default is '2', allowed values are:
.RS
.PD 0
.IP \fB0\fP 3
no logging
.IP \fB1\fP 3
log rlink commands with communication errors
.IP \fB2\fP 3
log rlink commands with failed checks
.IP \fB3\fP 3
log all rlink commands
.PD
.RE
.
.\" -- --dmpl -----------------------------------
.IP \fB\-\-dmpl=\fIlvl\fR
set rlink dump level. Default is '0', allowed values are as for the
\fB\-\-logl\fP option.
.
.\" -- --tiol -----------------------------------
.IP \fB\-\-tiol=\fIlvl\fR
set I/O trace level. Default is '0', allowed values are:
.RS
.PD 0
.IP \fB0\fP 3
no I/O trace
.IP \fB1\fP 3
trace buffer activities
.IP \fB2\fP 3
trace character activities
.PD
.RE
.
.\" -- --int ------------------------------------
.IP \fB\-\-int\fP
enter interactive mode even when further tcl commands are given on the
\fBti_rri\fP command line.
.
.\" -- --help -----------------------------------
.IP \fB\-\-help\fP
print help text and exit
.
.\" -- -- ---------------------------------------
.IP \fB\-\-\fP
all following arguments are treated as tcl commands.
.
.\" ------------------------------------------------------------------
.SH COMMANDS
For arguments of the form '@<name>.tcl' the respective file is
sourced. All other arguments are treated as Tcl commands and executed
with eval.
.
.\" ------------------------------------------------------------------
.SH EXAMPLES
 
.\" ------------------------------------------------------------------
.SH "SEE ALSO"
.BR ti_w11 (1),
.BR ghdl (1),
.BR tbw (1),
.BR tclsh (1)
 
.\" ------------------------------------------------------------------
.SH AUTHOR
Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
/vbomconv.1
0,0 → 1,469
.\" -*- nroff -*-
.\" $Id: vbomconv.1 558 2014-06-01 22:20:51Z mueller $
.\"
.\" Copyright 2010-2013 by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
.\"
.\"
.\" ------------------------------------------------------------------
.
.TH VBOMCONV 1 2013-10-20 "Retro Project" "Retro Project Manual"
.\" ------------------------------------------------------------------
.SH NAME
vbomconv \- generate files and actions from vbom manifest files
.\" ------------------------------------------------------------------
.SH SYNOPSIS
.
.SY vbomconv
.B \-\-help
.
.SY vbomconv
.OP \-\-trace
.B \-\-dep_xst
|
.B \-\-dep_ghdl
|
.B \-\-dep_isim
.I vbom
.
.SY vbomconv
.OP \-\-trace
.B \-\-xst_prj
|
.B \-\-isim_prj
.I vbom
.
.SY vbomconv
.OP \-\-trace
.B \-\-ghdl_a_cmd
|
.B \-\-ghdl_a
.I vbom
.
.SY vbomconv
.OP \-\-trace
.B \-\-ghdl_i_cmd
|
.B \-\-ghdl_i
.I vbom
.
.SY vbomconv
.OP \-\-trace
.B \-\-ghdl_m_cmd
|
.B \-\-ghdl_m
.I vbom
.
.SY vbomconv
.OP \-\-trace
.BI \-\-xst_export "\fR=\fPpath"
|
.BI \-\-ghdl_export "\fR=\fPpath"
.I vbom
.
.SY vbomconv
.OP \-\-trace
.BI \-\-isim_export "\fR=\fPpath"
.I vbom
.
.SY vbomconv
.OP \-\-trace
.B \-\-get_top
.I vbom
.
.SY vbomconv
.OP \-\-trace
.B \-\-flist
.I vbom
.YS
.
.\" ------------------------------------------------------------------
.SH DESCRIPTION
.
.\" --------------------------------------------------------
.SS Introduction
\fBvbomconv\fP is the central tool in a build system for
\fIvhdl\fP projects. Each \fIvhdl\fP source file has an associated
manifest file in \fBvbom\fP(5) format which contains a list of used
libraries and instantiated components, and the name of the
associated vhdl source file.
The instantiated components are defined via their \fBvbom\fP file.
All file names are relative to the current directory.
A recursive traversal through all \fBvbom\fP's
gives for each vhdl entity all the sources files needed to compile it,
with duplicates removed and in proper compilation order, thus libraries first
and top level design last.
 
The \fBvbomconv\fP tool does this traversal of \fBvbom\fP
files and generates, depending on command line options, the files and/or
commands needed to run a synthesis tool or to build a simulation model.
Currently supported is synthesis with ISE \fBxst\fP and simulation with
\fBghdl\fP(1) or ISE \fBISim\fP.
\fBvbomconv\fP therefore currently generates
 
.PD 0
.IP "\fB- xst\fP" 8
project files
.IP "\fB- ghdl\fP" 8
commands for analysis, inspection and make step
.IP "\fB- ISim\fP" 8
project files
.IP "\fB- make\fP" 8
dependency files
.PD
 
.PP
Key advantage of this approach is that the individual \fBvbom\fP
files are easy to maintain. They reflect the libraries and components used
in the vhdl source they describe, a structural change in the vhdl source
usually implies an update of the vbom. The project files are automatically
generated from this 'local' information, which can be of great help in
projects with many top level designs which large number of entities in
different constellations.
 
\fBvbomconv\fP is usually embedded in a GNU \fBmake\fP(1) based build system.
The \fIMakefile\fP's in general just contain a few definitions and includes,
the whole \fBvbomconv\fP magic is encapsulated in some pattern rules for
simulation and synthesis.
Some are given in the EXAMPLES section.
.
.\" --------------------------------------------------------
.SS Principle of Operation
\fBvbomconv\fP will start with processing the \fIvbom\fP
file given as argument.
Each file name extracted from a \fBvbom\fP is prepended with the directory
path of the \fBvbom\fP.
This ensures that all file names are relative to working directory under
which \fBvbomconv\fP was started, even though each \fBvbom\fP file holds
only file names which are relative to the \fBvbom\fP.
 
\fBvbomconv\fP expects that the entries in the \fBvbom\fP's
are ordered, libraries first, than the components in the order they are
instantiated, finally the name of the associated source file.
Each \fI.vhd\fP file is added to a table of source files.
Each \fI.vbom\fP file is added to a list of \fBvbom\fP's
to be processed if it hasn't been processed yet.
The sub-\fBvbom\fP's are processed in the order they were found which
leads to breadth-first traversal of the \fBvbom\fP tree.
 
After all \fBvbom\fP's
are processed a ranking algorithm will generate an ordered list of source
files in proper compilation order. This ensures that libraries are compiled
before a source refers to them with a '\fIuse\fP' clause, and that entities
are compiled before they are refered to by an explicit instatiation.
 
The \fBvbom\fP file format supports conditional inclusion of files via a
condition prefix.
The main purpose of this mechanism is to handle libraries and components
which are only refered in
.EX
-- synthesis translate_off
-- synthesis translate_on
.EE
sections and are used only for simulation.
 
The \fBvbom\fP file format has a logical name mechanism to support the
\fIconfiguration\fP mechanism of vhdl. A logical name can be defined with
.EX
<lname> = <filename>
.EE
and it can be used with
.EX
<lname> : <filename>
.EE
The first definition seen in the \fIvbom\fP
traversal is taken, all others are ignored. The filename in the usage clause
is the default used in case the logical name wasn't defined.
 
Last but not least are 3 directives defined in the \fBvbom\fP
file format:
.
.IP "\fB@top\fP:\fIname\fP"
allows to specify the top level design name in case it differs from the
stem of the \fIvbom\fP file name.
.
.IP "\fB@lib\fP:\fIname\fP"
allows to specify additional system libraries. Currently used to indicate
that the \fIunisim\fP or \fIsimprim\fP libraries are needed by \fBghdl\fP.
.
.IP "\fB@ucf_cpp\fP:\fIfile\fP"
indicates that a \fIfile\fP.ucf file is to be generated by \fBcpp\fP(1)
from a \fIfile\fP.ucf_cpp source file. This allows to modularize ISE ucf files.
.PP
The full description of the file format and examples are given in a
separate man page \fBvbom\fP(5).
.
.\" --------------------------------------------------------
.SH USAGE
The \fBvbomconv\fP command has the form
.IP "" 4
.B vbomconv
.RI [ options ]
.RI [ action ]
.I vbom
.PP
and must be called, with the exception of the \fB\-\-help\fP case, with
exactly one \fIvbom\fP file.
.
.\" --------------------------------------------------------
.SH OPTIONS
.P
.IP \fB\-\-trace\fP
Gives a detailed trace, written to \fIstderr\fP,
of the vbom file traversal and processing, the process of source file ranking
to determine the compilation order, and of the final internal file list and
property table.
.
.SH ACTIONS
.P
.\" ----------------------------------------------
.IP \fB\-\-help\fP
Prints a usage summary to \fIstdout\fP and quits. This action is the only
one not requiring a \fIvbom\fP file.
.
.\" ----------------------------------------------
.TP
.B \-\-dep_xst
.TQ
.B \-\-dep_ghdl
.TQ
.B \-\-dep_isim
These three actions write to \fIstdout\fP dependency rules for inclusion in
\fIMakefile\fPs.
Together with an appropruate pattern rule they allow to automatitize
the dependency handling, see the EXAMPLES section for practical usage.
 
\fB\-\-dep_xst\fP creates the dependencies for \fBxst\fP
synthesis make flows and produces the following types of dependencies
.EX
\fI<stem>\fP.ngc : \fI<stem>\fP.dep_xst
\fI<stem>\fP.ngc : \fB*\fP.vhd
\fI<stem>\fP.dep_xst : \fB*\fP.vbom
.EE
with \fB*\fP indicating that one rule will be generated for each file
involved.
 
If a \fB@ucf_cpp\fP directive was found also rules describing the
.I ucf
file handling are added
.EX
<stem>.ncd : <stem>.ucf
include sys_w11a_n2.dep_ucf_cpp
.EE
If this mechanism is used the \fIMakefile\fP must contain, usually via
another include, a pattern rule to create the \fI.dep_ucf_cpp\fP file,
for example
.EX
%.dep_ucf_cpp : %.ucf_cpp
cpp -I${RETROBASE}/rtl -MM $*.ucf_cpp |\\
sed 's/\.o:/\.ucf:/' > $*.dep_ucf_cpp
.EE
 
\fB\-\-dep_ghdl\fP creates the dependencies for \fBghdl\fP
based simulation models and produces the following types of dependencies
.EX
\fI<stem>\fP : \fI<stem>\fP.dep_ghdl
\fI<stem>\fP : \fB*\fP.vhd
\fI<stem>\fP.dep_ghdl : \fB*\fP.vbom
.EE
 
\fB\-\-dep_isim\fP creates the dependencies for ISE \fBISim\fP
based simulation models and produces the following types of dependencies
.EX
\fI<stem>\fP_ISim : \fI<stem>\fP.dep_isim
\fI<stem>\fP_ISim : \fB*\fP.vhd
\fI<stem>\fP.dep_isim : \fB*\fP.vbom
.EE
.
.\" ----------------------------------------------
.TP
.B \-\-xst_prj
.TQ
.B \-\-isim_prj
These two actions write to \fIstdout\fP a project file suitable for ISE
\fBxst\fP or \fBISim\fP, respectively.
The vhdl source files are in proper compilation order. See
the EXAMPLES section for practical usage in a make flow.
.
.\" ----------------------------------------------
.TP
.B \-\-ghdl_a_cmd
.TQ
.B \-\-ghdl_a
The \fB\-\-ghdl_a_cmd\fP action writes to \fIstdout\fP a list of
\fB"ghdl -a"\fP commands for the \fBghdl\fP analysis step.
The commands are in proper compilation order. The \fB\-\-ghdl_a\fP
action immediately executes these commands via \fBexec\fP(3).
.
.\" ----------------------------------------------
.TP
.B \-\-ghdl_i_cmd
.TQ
.B \-\-ghdl_i
The \fB\-\-ghdl_i_cmd\fP action writes to \fIstdout\fP
a \fB"ghdl -i"\fP command for the \fBghdl\fP inspection step with all
source file names in proper compilation order. The \fB\-\-ghdl_i\fP
action immediately executes this command via \fBexec\fP(3).
.
.\" ----------------------------------------------
.TP
.B \-\-ghdl_m_cmd
.TQ
.B \-\-ghdl_m
The \fB\-\-ghdl_m_cmd\fP action writes to \fIstdout\fP
a \fB"ghdl -m"\fP command for the \fBghdl\fP inspection make with all
required library and external object file qualifiers.
The \fB\-\-ghdl_m\fP action immediately executes this command via
\fBexec\fP(3).
.
.\" ----------------------------------------------
.TP
.BI \-\-xst_export \fR=\fPpath
.TQ
.BI \-\-ghdl_export \fR=\fPpath
.TQ
.BI \-\-isim_export \fR=\fPpath
These three actions create a flat copy of all source files needed for a
\fBxst\fP synthesis or a \fBghdl\fP or \fBISim\fP
simulation model in the directory \fIpath\fP.
The sub directory structure is lost, all files will be in directory
\fIpath\fP. This is for example helpful for setting up an ISE project.
.
.\" ----------------------------------------------
.IP \fB\-\-get_top\fP
Returns the top level entity name to \fIstdout\fP.
Is by default the stem of the \fIvbom\fP file name, or given by a
\fB@top\fP directive picked up during \fBvbom\fP traversal.
.
.\" ----------------------------------------------
.IP \fB\-\-flist\fP
Write an alphabetically sorted list of all source and vbom files to
\fIstdout\fP.
This information is for example helpful to build a project export tool.
Note that in contrast to most other actions the files are not in compilation
but in alphabetic order, and that also the \fBvbom\fP files are included
in this list.
.
.\" ------------------------------------------------------------------
.SH EXIT STATUS
Returns a non-zero exit status when the
.I vbom
file is not found or readable or none or multiple actions are given.
.PP
The \fB\-\-ghdl_a\fP, \fB\-\-ghdl_i\fP, or \fB\-\-ghdl_m\fP
actions use \fBexec\fP(3) to execute the \fBghdl\fP command.
In these cases the caller will see the exit status of \fBghdl\fP.
.
.\" ------------------------------------------------------------------
.SH BUGS
.IP \(bu 2
Duplicate file elimination fails when one source file is refered to by
different \fIvbom\fP's
with different paths, like for example the file
.I aa/bb/cc/foo.vdh
seen from
.I aa/xx/yy
via
.EX
../../bb/cc/foo.vhd
../../../aa/bb/cc/foo.vdh
.EE
The synthesis and simulation tools will react with sometimes hard to
trace error messages.
.br
To avoid this problem ensure that building of the relative paths
is always done with the minimal number of \fI../\fP to reach the file.
.
.IP \(bu 2
The handling of \fIucf\fP files with the \fB@ucf_cpp\fP directive
is a kludge and should be revised.
.
.\" ------------------------------------------------------------------
.SH EXAMPLES
.
.\" --------------------------------------------------------
.SS Auto-Dependency Generation
The \fB\-\-dep_xst\fP, \fB\-\-dep_ghdl\fP and \fB\-\-dep_isim\fP
actions allow to setup together with the auto-rebuild and restart semantics
of the GNU \fBmake\fP(1) \fIinclude\fP directive to fully automatize the
proper generation of dependencies.
Just add to the \fIMakefile\fP
a pattern rule to create the dependency rule files from the \fBvbom\fP
files and include them. In case they don't yet exists or are out of date
\fBmake\fP(1) will (re-)create them and restart. Example for using
\fB\-\-dep_xst\fP in a \fIMakefile\fP :
.PP
.EX
VBOM_all = $(wildcard *.vbom)
...
%.dep_xst: %.vbom
vbomconv --dep_xst $< > $@
...
include $(VBOM_all:.vbom=.dep_xst)
.EE
.PP
After renames and deletions of source files the dependency rule files can have
dangling entries which cause 'No rule to make target' errors. In that case
just delete all '.dep_*' files. The script \fBrm_dep\fP(1)
will do that recursively for a whole directory tree.
.
.\" --------------------------------------------------------
.SS Xst Synthesis
A simple \fBmake\fP(1) flow for synthesis with \fBxst\fP using
ISE \fBxflow\fP and the \fB\-\-xst_prj\fP action and a pattern
rule looks like
.PP
.EX
%.ngc: %.vbom
if [ ! -d ./ise ]; then mkdir ./ise; fi
(cd ./ise; vbomconv --xst_prj ../$< > $*.prj)
(cd ./ise; touch $*.xcf)
xtwi xflow -wd ise -synth xst_vhdl.opt $*.prj
(cd ./ise; chmod -x *.* )
if [ -r ./ise/$*.ngc ]; then cp -p ./ise/$*.ngc .; fi
if [ -r ./ise/$*_xst.log ]; then cp -p ./ise/$*_xst.log .; fi
.EE
.PP
It creates a working directory \fI./ise\fP, the xst project file, runs
\fBxst\fP via ISE \fBxflow\fP, and copies the \fIngc\fP and \fIlog\fP files
back into the working directory.
The ISE environment is started with \fBxtwi\fR(1) wrapper.
.
.\" --------------------------------------------------------
.SS Ghdl Simulation
A simple \fBmake\fP(1) flow for building a \fBghdl\fP simulation model from
the sources described by a \fBvbom\fP file is given by the following
pattern rule:
.PP
.EX
% : %.vbom
vbomconv --ghdl_i $<
vbomconv --ghdl_m $<
.EP
.
.\" --------------------------------------------------------
.SS Collecting Statistics
A simple way to determine the number of sources involved in a
synthesis or simulation model is to count with \fBwc\fP(1)
the lines of a \fB\-\-xst_prj\fP or \fB\-\-isim_prj\fP
output like in
.PP
.EX
vbomconv --xst_prj sys_w11a_n2.vbom | wc
vbomconv --ghdl_a_cmd tb_w11a_n2.vbom | wc
vbomconv --isim_prj tb_w11a_n2.vbom | wc
.EP
.
.\" ------------------------------------------------------------------
.SH "SEE ALSO"
.BR vbom (5),
.BR rm_dep (1),
.BR ghdl (1),
.BR xtwi (1),
.BR cpp (1),
.br
.BR xilinx_ghdl_simprim (1),
.BR xilinx_ghdl_unisim (1)
.
.\" ------------------------------------------------------------------
.SH AUTHOR
Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
/xtwi.1
0,0 → 1,55
.\" -*- nroff -*-
.\" $Id: xtwi.1 558 2014-06-01 22:20:51Z mueller $
.\"
.\" Copyright 2014- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
.\"
.\" ------------------------------------------------------------------
.
.TH XTWI 1 2013-11-10 "Retro Project" "Retro Project Manual"
.\" ------------------------------------------------------------------
.SH NAME
xtwi \- Xilinx Tool Wrapper script for ISE
.\" ------------------------------------------------------------------
.SH SYNOPSIS
.
.SY xtwi
.OP COMMAND
.YS
.
.\" ------------------------------------------------------------------
.SH DESCRIPTION
The Xilinx ISE setup script redefines PATH and LD_LIBRARY_PATH. The ISE
tools run fine in this environment, but other installed programs on the
system can (and actually do) fail. \fBxtwi\fP helps to keep the ISE
environment separate from the normal working environment.
 
The environment variable XTWI_PATH must be setup to the install path
of the ISE version to be used. Without the /ISE_DS/ which is added
by the ISE installation procedure.
 
\fBxtwi\fP uses XTWI_PATH to locate the ISE setup script, sources it,
and execs the \fICOMMAND\fP. This way \fICOMMAND\fP is executed in the
ISE environment, while the login shell stays clean.
 
.
.\" ------------------------------------------------------------------
.SH ENVIRONMENT
.TP 4
.B XTWI_PATH
Install path of ISE, without the /ISE_DS/ appended by ISE installation
.
.\" ------------------------------------------------------------------
.SH FILES
.TP 4
$XTWI_PATH/ISE_DS/settings32.sh
.TQ
$XTWI_PATH/ISE_DS/settings64.sh
ISE setup script located and sourced on 32 or 64 bit systems
.
.\" ------------------------------------------------------------------
.SH "SEE ALSO"
.BR xtwv (1)
.
.\" ------------------------------------------------------------------
.SH AUTHOR
Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
/ti_w11.1
0,0 → 1,89
.\" -*- nroff -*-
.\" $Id: ti_w11.1 550 2014-02-03 08:16:57Z mueller $
.\"
.\" Copyright 2013- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
.\"
.\" ------------------------------------------------------------------
.
.TH TI_W11 1 2013-05-20 "Retro Project" "Retro Project Manual"
.\" ------------------------------------------------------------------
.SH NAME
ti_w11 \- Quick starter for \fBti_rri\fP with \fBw11\fP CPU designs
.\" ------------------------------------------------------------------
.SH SYNOPSIS
.
.SY ti_w11
.OP OPTIONS
.OP "ti_rri options and commands"
.YS
.
.\" ------------------------------------------------------------------
.SH DESCRIPTION
Generates the \fBti_rri\fP(1) commands for starting the \fBrri\fP backend
in standard configurations with \fBw11\fP CPU designs. Connections to
FPGA boards as well as to \fPghdl\fP based simulations are supported.
 
Since \fBti_w11\fP is only a quick starter for \fBti_rri\fP(1) this man page
will only describe briefly the \fBti_w11\fP specific options, for any further
detail consult the \fBti_rri\fP(1) man page.
 
\fBti_w11\fP will print the generated \fBti_rri\fP(1) command to stdout before
executing it.
.
.\" ------------------------------------------------------------------
.SH OPTIONS
.SS "setup options for FPGA connects"
.IP \fB-u\fP
use \fB\-\-cuff\fP connect (USB via Cypress FX2)
.IP \fB-t\fIDN\fR[,\fIopts\fP]
use \fB\-\-term\fP connect, \fID\fP specifies device name, \fIN\fP
specified the device number, and \fIopts\fP the addtional options
a \fB\-\-term\fP can hold (e.g. break or xon). \fID\fP is mapped as
.RS
.PD 0
.IP \fBs\fP 4
use /dev/ttyS* (* is device number \fIN\fP)
.IP \fBu\fP 4
use /dev/ttyUSB* (* is device number \fIN\fP)
.PD
.RE
.
.SS "setup options for ghdl simulation runs"
.IP \fB-s3\fP
start \fItb_w11a_s3\fP simulation (w11a on S3BOARD)
.IP \fB-n2\fP
start \fItb_w11a_n2\fP simulation (w11a on Nexys2 board)
.IP \fB-n3\fP
start \fItb_w11a_n3\fP simulation (w11a on Nexys3 board)
.
.SS "common options"
.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 the are in \fBlda\fP(5) format.
.
.\" ------------------------------------------------------------------
.SH EXAMPLES
.IP "\fBti_w11 -u @211bsd_rk_boot.tcl\fR" 4
Assumes a FPGA board, with a \fBw11\fP CPU design already configured,
is connected via USB. \fBti_rri\fP(1) will be started and the given
boot script executed.
 
.IP "\fBti_w11 -n3 -e $RETROBASE/tools/asm-11/w11/sys/dl11/simple_out.mac\fR"
Will start the \fItb_w11a_n3 test\fP bench in \fBghdl\fP(1), on the fly
compile the \fIsimple_out.mac\fP test program with \fBasm-11\fP(1), load
and execute it. This little test code just produces
.EX
Hello world!
Hello world!
.EE
forever, just abort with ^C if you have seen enough.
.
.\" ------------------------------------------------------------------
.SH "SEE ALSO"
.BR ti_rri (1),
.BR asm-11 (1)
 
.\" ------------------------------------------------------------------
.SH AUTHOR
Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
/xtwv.1
0,0 → 1,54
.\" -*- nroff -*-
.\" $Id: xtwv.1 558 2014-06-01 22:20:51Z mueller $
.\"
.\" Copyright 2014- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
.\"
.\" ------------------------------------------------------------------
.
.TH XTWV 1 2014-04-21 "Retro Project" "Retro Project Manual"
.\" ------------------------------------------------------------------
.SH NAME
xtwv \- Xilinx Tool Wrapper script for Vivado
.\" ------------------------------------------------------------------
.SH SYNOPSIS
.
.SY xtwv
.OP COMMAND
.YS
.
.\" ------------------------------------------------------------------
.SH DESCRIPTION
The Xilinx Vivado setup script redefines PATH and potentially LD_LIBRARY_PATH.
The Vivado tools run fine in this environment, but other installed programs
on the system might fail. \fBxtwv\fP helps to keep the Vivado environment
separate from the normal working environment.
 
The environment variable XTWV_PATH must be setup to the install path
of the Vivado version to be used.
 
\fBxtwv\fP uses XTWV_PATH to locate the Vivado setup script, sources it,
and execs the \fICOMMAND\fP. This way \fICOMMAND\fP is executed in the
Vivado environment, while the login shell stays clean.
 
.
.\" ------------------------------------------------------------------
.SH ENVIRONMENT
.TP 4
.B BXTWV_PATH
Install path of Vivado
.
.\" ------------------------------------------------------------------
.SH FILES
.TP 4
$XTWV_PATH/settings32.sh
.TQ
$XTWV_PATH/settings64.sh
Vivado setup script located and sourced on 32 or 64 bit systems
.
.\" ------------------------------------------------------------------
.SH "SEE ALSO"
.BR xtwi (1)
.
.\" ------------------------------------------------------------------
.SH AUTHOR
Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
/set_ftdi_lat.1
0,0 → 1,67
.\" -*- nroff -*-
.\" $Id: set_ftdi_lat.1 547 2013-12-29 13:10:07Z mueller $
.\"
.\" Copyright 2010-2013 by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
.\"
.\" ------------------------------------------------------------------
.
.TH SET_FTDI_LAT 1 2013-12-26 "Retro Project" "Retro Project Manual"
.\" ------------------------------------------------------------------
.SH NAME
set_ftdi_lat \- set latency timer in FTDI USB UART or FIFO
.\" ------------------------------------------------------------------
.SH SYNOPSIS
.
.SY set_ftdi_lat
.RI [ dev ]
.RI [ time ]
.YS
.
.\" ------------------------------------------------------------------
.SH DESCRIPTION
\fBNote:\fP command is obsolete when kernel 2.6.32 or newer is used.
See NOTES section.
.
.PP
FTDI USB UART or FIFO adapters of type FT232, FT245, and other similar
models have a latency timer which controls the maximal time between reception
of a byte by the UART or FIFO and the emission of a USB frame. The default
is 16 msec on kernels prior to 2.6.32 and can lead to unsatisfactory
response times.
The
.B set_ftdi_lat
script allows to set this latency timer via a node in the \fI/sys\fP
virtual file system, specifically
.IP "" 4
.I /sys/bus/usb-serial/devices/ttyUSBn/latency_timer
.
.PP
The first optional argument \fIdev\fP allows to specify the device name
in the form \fIUSBn\fP with the default \fIUSB0\fP. The second optional
argument \fItime\fP allows to specify the new value of the latency timer,
given in msec. Default is 1 msec.
.
.\" ------------------------------------------------------------------
.SH EXIT STATUS
If device tty\fIdev\fP is not found or the entry in \fI/sys\fP is not
writable an exit status 1 is returned.
 
.\" ------------------------------------------------------------------
.SH EXAMPLES
In general the command is given via \fBsudo\fP(8) like
 
.EX
sudo set_ftdi_lat USB0 1
.EE
.\" ------------------------------------------------------------------
.SH "SEE ALSO"
.BR sudo (8)
.
.\" ------------------------------------------------------------------
.SH NOTES
For linux kernel 2.6.32 or newer the default is 1 ms already. On all
up-to-date systems therefore no need to use this command.
.
.\" ------------------------------------------------------------------
.SH AUTHOR
Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
/svn_set_ignore.1
0,0 → 1,50
.\" -*- nroff -*-
.\" $Id: svn_set_ignore.1 550 2014-02-03 08:16:57Z mueller $
.\"
.\" Copyright 2013- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
.\"
.\" ------------------------------------------------------------------
.
.TH SVN_SET_IGNORE 1 2010-04-26 "Retro Project" "Retro Project Manual"
.\" ------------------------------------------------------------------
.SH NAME
svn_set_ignore \- setup svn:ignore properties based on .cvsignore files
.\" ------------------------------------------------------------------
.SH SYNOPSIS
.
.SY svn_set_ignore
.OP \-\-dry-run
.YS
.
.\" ------------------------------------------------------------------
.SH DESCRIPTION
Creates or updates a \fIsvn:ignore\fP property for the current directory
and all sub-directories. The current directory must contain a
\fI.cvsignore\fP file which defines the default list of ignore patterns for the
whole project. If a local \fI.cvsignore\fP file is found in a sub directory
its content will be appended to the default list.
.
If no \fIsvn:ignore\fP property exists or the existing one differs from
the ignore pattern list determined from the top level and local
\f.cvsignore\fP file the property is set or updated.
.
.\" ------------------------------------------------------------------
.SH OPTIONS
.
.\" ----------------------------------------------
.IP \fB\-\-dry-run\fP
Shows \fIsvn:ignore\fP property changes, but doesn't store them in the
svn repository.
.
.\" ------------------------------------------------------------------
.SH EXIT STATUS
If no \fI.cvsignore\fP file is found or a \fBsvn\fP(1) command fails the
script dies with exit status 2.
.
.\" ------------------------------------------------------------------
.SH "SEE ALSO"
.BR svn (1)
 
.\" ------------------------------------------------------------------
.SH AUTHOR
Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
/config_wrapper.1
0,0 → 1,138
.\" -*- nroff -*-
.\" $Id: config_wrapper.1 550 2014-02-03 08:16:57Z mueller $
.\"
.\" Copyright 2013- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
.\"
.\" ------------------------------------------------------------------
.
.TH CONFIG_WRAPPER 1 2013-01-02 "Retro Project" "Retro Project Manual"
.\" ------------------------------------------------------------------
.SH NAME
config_wrapper \- configure FPGA via ISE impact or Linux jtag
.\" ------------------------------------------------------------------
.SH SYNOPSIS
.
.SY config_wrapper
.OP \-\-board=\fIb\fP
.OP \-\-path=\fIp\fP
.I COMMAND
.I FILE
.
.SY config_wrapper
.B \-\-help
.YS
.
.\" ------------------------------------------------------------------
.SH DESCRIPTION
Wrapper script to handle the configuration of an FPGA board with either
a XILINX JTAG programming cable and the ISE \fBimpact\fP program or with
an onboard Cypress FX2 USB controller and the \fBjtag\fP(1) program.
The \fICOMMAND\fP argument controls the action:
 
.RS 3
.PD 0
.IP \fBiconfigf\fP 10
configure using \fBimpact\fP with \fI.bit\fP file \fIFILE\fP
.IP \fBjconfigf\fP
configure using \fBjtag\fP(1) with \fI.svf\fP file \fIFILE\fP
.IP \fBbit2svf\fP
create a \fI.svf\fP file from the \fI.bit\fP file \fIFILE\fP
.PD
.
.\" ------------------------------------------------------------------
.SH OPTIONS
.
.\" ----------------------------------------------
.IP \fB\-\-board=\fIb\fR
determines the type of board to be configured. The default is 's3board',
currently supported boards are:
.RS
.RS 3
.PD 0
.IP \fBs3board\fP 10
Digilent S3BOARD. Default path: xc3s1000
.IP \fBnexys2\fP
Digilent Nexys2. Default path: xc3s1200e
.IP \fBnexys3\fP
Digilent Nexys3. Default path: xc6slx16
.IP \fBatlys\fP
Digilent Atlys. Default path: xc6slx45
.IP \fBsp605\fP
Xilinx SP605. Default path: xc6slx45t
.RE
.RE
.PD
.
.\" ----------------------------------------------
.IP \fB\-\-path=\fIp\fR
determines the type of FPGA to be configured. It usually properly defaulted
based on the \fB\-\-board\fP option. Only in cases were a board is available
with several die sizes this option will be needed.
.
.\" ----------------------------------------------
.IP \fB\-\-help\fP
print help text and exit.
.
.\" ------------------------------------------------------------------
.SH COMMANDS
.
.\" ----------------------------------------------
.IP \fBbit2svf\fP
Convert a FPGA configuration file from \fI.bit\fP format (the native XILINX
format) to \fI.svf\fP format (the portable Serial Vector Format). The
XILINX ISE \fBimpact\fP program is used, the input \fIFILE\fP must be in
\fI.bit\fP format.
.
.\" ----------------------------------------------
.IP \fBiconfig\fP
Configure a FPGA with XILINX ISE \fBimpact\fP. The input \fIFILE\fP must be in
\fI.bit\fP format.
.
.\" ----------------------------------------------
.IP \fBjconfig\fP
Configure a FPGA with \fBjtag\fP(1). The input \fIFILE\fP must be in
\fI.svf\fP format. This sub command is usually used for boards with a
Cypress FX2 USB controller, like the Digilent Nexys2, Nexys3 or Atlys,
and a FX2 firmware which emulates an Altera USB-Blaster programming cable.
 
The USB device path is defined by the environment variables RETRO_FX2_VID
and RETRO_FX2_PID, or defaults to vid=16c0 and pid=03ef.
 
Use the \fBfx2load_wrapper\fP(1) command to ensure that the proper firmware
is loaded in the Cypress FX2 USB controller.
The \fBbit2svf\fP sub command can be used to create a \fI.svf\fP from
a \fI.bit\fP file.
.
.\" ------------------------------------------------------------------
.SH EXIT STATUS
In case of an error an exit status 1 is returned.
.
.\" ------------------------------------------------------------------
.SH ENVIRONMENT
.IP "\fBRETRO_FX2_VID, RETRO_FX2_PID\fR" 4
Used by the \fBjconfig\fP sub command to define the USB path of the
Cypress FX2 USB controller emulating an Altera USB-Blaster cable.
.IP \fBXILINX\fR
Path to current XILINX ISE installation. Required by all sub commands,
mainly to locate the \fI.bsdl\fP files which describe the JTAG commands
of all devices in the JTAG chain.
.
.\" ------------------------------------------------------------------
.SH EXAMPLES
.IP "\fBconfig_wrapper bit2svf test.bit\fR" 4
Creates \fItest.svf\fP from \fItest.bit\fP.
.
.IP "\fBconfig_wrapper --board=nexys2 iconfig test.bit\fR"
Configures a Nexys2 board with \fItest.bit\fP using ISE \fBimpact\fP.
.
.IP "\fBconfig_wrapper --board=nexys3 jconfig test.svf\fR"
Configures a Nexys3 board with \fItest.svf\fP using \fBjtag\fP(1).
.
.\" ------------------------------------------------------------------
.SH "SEE ALSO"
.BR jtag (1),
.BR fx2load_wrapper (1)
 
.\" ------------------------------------------------------------------
.SH AUTHOR
Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
/asm-11_expect.1
0,0 → 1,161
.\" -*- nroff -*-
.\" $Id: asm-11_expect.1 550 2014-02-03 08:16:57Z mueller $
.\"
.\" Copyright 2014- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
.\"
.\" ------------------------------------------------------------------
.
.TH ASM-11_EXPECT 1 2013-03-30 "Retro Project" "Retro Project Manual"
.\" ------------------------------------------------------------------
.SH NAME
asm-11_expect \- expect checker for asm-11 test bench
.\" ------------------------------------------------------------------
.SH SYNOPSIS
.
.SY asm-11_expect
.RI [ OPTION ]...
.I FILE...
.
.SY asm-11_expect
.B \-\-help
.YS
.
.\" ------------------------------------------------------------------
.SH DESCRIPTION
Reads one of more \fBasm-11\fP(1) listing files and checks for unexpected
assembly errors and tests for expected address and generated data values.
What is expected is specified by comments, described in section EXPECT COMMENTS,
which are added to the asm-11 source code.
asm-11 will copy these comments to the listing file and asm-11_expect extracts
them and checks whether the actual assembly results match the expected ones.
.PP
asm-11_expect produces at least a one line summary per file like
.PP
.EX
asm-11_expect: test_0010_alloc.lst OK
asm-11_expect: test_0020_expr.lst OK
.EE
.PP
where each file is marked either \fBOK\fR or \fBFAILED\fR.
In case of detected errors additional output follows which gives a description
of each error and the affected listing line, like
.PP
.EX
asm-11_expect: test_0110_op_gg.lst FAILED
FAIL: data 1 mismatch: found=177736, expect=177734
in: 1 27 001042 067700 177736 add @pa,r0 ;;!! 067700 177734
.EE
.PP
Main application for asm-11_expect is to build self-checking test benches
for \fBasm-11\fP(1).
.
.
.\" ------------------------------------------------------------------
.SH EXPECT COMMENTS
The special comments which describe what to expect for an assembly line
have the format
.PP
.EX
;;!! [\fIetags\fP] [\fIaddr\fP:] [\fIdata\fP]...
.EE
.PP
with
.PP
.PD 0
.IP "\fBetags\fP"
list of expected assembly error flags, given as sequence of uppercase letters
without white space between letters.
.IP "\fBaddr\fP"
expected location counter (value of '.'), given as 6 digit octal number.
Note that all 6 digits must be specified, even leading zeros.
.IP "\fBdata\fP"
expected generated assembly output data, given as blank separated list
of either 3 (for byte output) or 6 (for word output) digit octal numbers.
Again, all 3 or 6 digits must be specified, even leading zeros.
This is checked against the data section of the assembly listing.
.br
In general this is used to check data emitted into the binary output.
However, some assembler statements, e.g. assignments or directives like .end,
indicate some result value in data section, and this can of course be
checked as well.
.PD
.PP
All three components are optional. Error flags are always tested, if no
\fIetags\fP are specified it is checked that no assembly error flag has
been generated for the line. Address and data tests are only done in case
\fIaddr\fP or \fIdata\fP components have been given.
.PP
If a line starts with an expect comment it will be applied to the asm-11
statement in the following line. Or it is simply appended to a asm-11
statement.
.SS Comment examples
.IP "\fB;;\-\- DM\fR" 4
expect a D and a M error flag
.IP "\fB;;\-\- 001020:\fR"
expect that current location will be 001020, data not checked
.IP "\fB;;\-\- 074167 177762\fR"
expect that the listing data section shows two words, 074167 and 177762.
Address is not checked.
.IP "\fB;;\-\- 001004: 000207\fR"
expect that current location will be 001004 and that the listing data section
shows one word with value 000207.
 
.SS Some practical cases
.EX
.word 65537. ;;!! T
sob r4,s4 ;;!! A
 
stkbot: .blkw 400 ;;!! 001000:
 
.word 100+77 ;;!! 000177
.byte 2+<4*10> ;;!! 042
spl 5 ;;!! 000235
inc @1234(r4) ;;!! 005274 001234
add @p,@#a ;;!! 067737 177614 001000
 
jsr pc,sub ;;!! 001006: 004767 177772
 
cmp = 1234 ;;!! 001234
c2 = inc + 67 ;;!! 005267
.end ;;!! 000001
 
.EE
 
.\" ------------------------------------------------------------------
.SH OPTIONS
.
.\" ----------------------------------------------
.IP "\fB\-\-tline\fR"
Prints input lines from listing file as they are processed. Helpful to
debug expect comments, e.g. in conjunction with the \fB-\-tcheck\fR
option.
.
.\" ----------------------------------------------
.IP "\fB\-\-tcheck\fR"
Prints for each detected expect comment in the listing file a line reflecting
the content of the comment, like
.EX
...line generated by \-\-tcheck ... | original expect comment
exp: err=T | ;;!! T
exp: dot=001000 | ;;!! 001000:
exp: dat=060037 001000 | ;;!! 060037 001000
exp: dot=001006 dat=004767 | ;;!! 001006: 004767
.EE
.
.\" ----------------------------------------------
.IP "\fB\-help\fR"
print full help text and exit.
.
.\" ------------------------------------------------------------------
.SH EXAMPLES
.IP "\fBasm-11_expect *.lst\fR" 4
Will check all listing files in current directory and produce a listing with
at least one summary line per file as described in section DESCRIPTION.
 
.\" ------------------------------------------------------------------
.SH "SEE ALSO"
.BR asm-11 (1)
 
.\" ------------------------------------------------------------------
.SH AUTHOR
Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
/xilinx_ghdl_simprim.1
0,0 → 1,70
.\" -*- nroff -*-
.\" $Id: xilinx_ghdl_simprim.1 522 2013-05-24 17:50:29Z mueller $
.\"
.\" Copyright 2010- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
.\"
.\" ------------------------------------------------------------------
.
.TH XILINX_GHDL_SIMPRIM 1 2010-07-25 "Retro Project" "Retro Project Manual"
.\" ------------------------------------------------------------------
.SH NAME
xilinx_ghdl_simprim \- compile Xilinx ISE SIMPRIM libraries for ghdl
.\" ------------------------------------------------------------------
.SH SYNOPSIS
.
.B xilinx_ghdl_simprim
.
.\" ------------------------------------------------------------------
.SH DESCRIPTION
\fBxilinx_ghdl_simprim\fP compiles the Xilinx ISE/WebPack SIMPRIM libraries
for \fBghdl\fP.
The object files generated by \fBghdl\fP are stored in the directory
tree of the currently active version of ISE/WebPack under
\fI$XILINX/ghdl/simprim\fP.
This is convenient when several ISE/WebPack versions are installed in
parallel, the \fB$XILINX\fP
environment variable is enough to setup the context for the synthesis
flows as well as for build of \fBghdl\fP models. Just use the \fBghdl\fP
option
 
.EX
-P${XILINX}/ghdl/simprim
.EE
 
to link to the SIMPRIM library.
 
Up to ISE 10 the VITAL models were all concatinated in one large file
\fIsimprim_VITAL.vhd\fP.
In this case the \fBxilinx_vhdl_chop\fP
helper script will create individual source files for each model.
For ISE 11 and later the modules are shipped as separate files.
 
The XILINX source code has since many releases some buggy statements with
self-referencial initializations. They seem to be tolerated by the commercial
tools but not by \fBghdl\fP.
The \fBxilinx_vhdl_memcolltype_fix\fP
helper script simply removes them, no further problems seen so far.
 
.\" ------------------------------------------------------------------
.SH ENVIRONMENT VARIABLES
.TP
.B XILINX
points to the root of the currently active ISE/WebPack installation.
.
.\" ------------------------------------------------------------------
.SH FILES
.IP \fI$XILINX/vhdl/src/simprims\fP
The vhdl sources for the SIMPRIM library are looked for in this directory tree.
.IP \fI$XILINX/ghdl/simprim\fP
The created object files will be written into this directory. The directory
is created if not yet existing. Note that the \fI$XILINX\fP
directory must be writable for the script.
.
.\" ------------------------------------------------------------------
.SH "SEE ALSO"
.BR ghdl (1),
.BR xilinx_ghdl_unisim (1)
.
.\" ------------------------------------------------------------------
.SH AUTHOR
Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
/isemsg_filter.1
0,0 → 1,108
.\" -*- nroff -*-
.\" $Id: isemsg_filter.1 550 2014-02-03 08:16:57Z mueller $
.\"
.\" Copyright 2014- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
.\"
.\" ------------------------------------------------------------------
.TH ISEMSG_FILTER 1 2014-01-02 "Retro Project" "Retro Project Manual"
.\" ------------------------------------------------------------------
.SH NAME
isemsg_filter \- message filter for Xilinx ISE tool chain log files
.\" ------------------------------------------------------------------
.SH SYNOPSIS
.
.SY isemsg_filter
.OP \-\-pack
.I TYPE
.I MFSET
.I LOGFILE
.
.SY isemsg_filter
.B \-\-help
.YS
.
.\" ------------------------------------------------------------------
.SH DESCRIPTION
.\" ----------------------------------------------
Scans the log file \fILOGFILE\fP generated by Xilinx ISE tool specified
by \fITYPE\fP for informational, warning and error messages and compares
these messages against a set of message filter rules defined in the
\fIMFSET\fP file.
isemsg_filter will print all no-matching messages.
All filter rules which do not match a message are also listed, these
messages are considered missing.
Matched messages are considered accepted.
In normal operation they will not create output.
isemsg_filter is useful for example in \fBmake\fP(1) based flows to
create a short summary from the log files.
 
The accepted values for \fITYPE\fP are:
 
.RS 3
.PD 0
.IP \fBxst\fP 6
ISE xst
.IP \fBtra\fP
ISE ngdbuild (translate)
.IP \fBmap\fP
ISE map
.IP \fBpar\fP
ISE par
.IP \fBtwr\fP
ISE trce
.IP \fBbgn\fP
ISE bitgen
.PD
.RE
.
.\" ------------------------------------------------------------------
.SH OPTIONS
.\" ----------------------------------------------
.IP \fB\-\-pacc\fP
Print a summary of all accepted messages. The match count for each rule is
listed.
.
.\" ----------------------------------------------
.IP \fB\-\-help\fP
print full help.
.
.\" ------------------------------------------------------------------
.SH MESSAGE FILTER FILE FORMAT
.\" ----------------------------------------------
Simply a list of regular expression patters structured by section headers
of the form "[TYPE]".
Blank lines and lines starting with '#' will be ignored.
isemsg_filter will extract the patters of the section matching the
\fITYPE\fP argument.
.SS Example message filter file
.EX
# ---------
[xst]
INFO:.*The FF/Latch <.*> is equivalent to .* will be removed
Node <HIO/IOB_BTN/R_DI_[1-4]> of sequential type is unconnected
# ---------
[map]
INFO:.*The FF/Latch <.*>.*is equivalent to the following FF/Latch
.EE
.\" ------------------------------------------------------------------
.SH EXIT STATUS
If \fITYPE\fP is invalid or the \fIMFSET\fP or \fILOGFILE\fP files
can't be opend an exit status 1 is returned.
 
.\" ------------------------------------------------------------------
.SH EXAMPLES
.IP "\fBisemsg_filter xst proj.mfset proj_xst.log\fR" 4
Generate a short summary of a ISE xst log file.
.
.\" ------------------------------------------------------------------
.SH "BUGS"
The \fIMFSET\fP file is flat, no structuring possible, e.g. with includes.
It be great to have for example default rules for each target device.
Since ISE is 'end-of-life' no further work on isemsg_filter will be done.
.
.\" ------------------------------------------------------------------
.SH "SEE ALSO"
.
.\" ------------------------------------------------------------------
.SH AUTHOR
Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
/tbw.1
0,0 → 1,192
.\" -*- nroff -*-
.\" $Id: tbw.1 550 2014-02-03 08:16:57Z mueller $
.\"
.\" Copyright 2013- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
.\"
.\" ------------------------------------------------------------------
.
.TH TBW 1 2011-11-06 "Retro Project" "Retro Project Manual"
.\" ------------------------------------------------------------------
.SH NAME
tbw \- wrapper script to start ghdl based VHDL test benches
.\" ------------------------------------------------------------------
.SH SYNOPSIS
.
.SY tbw
.I TBPROG
.RI [ FILEDEF ]...
.RI [ GHDL-OPTIONS ]...
.
.SY tbw
.B \-\-help
.YS
.
.\" ------------------------------------------------------------------
.SH DESCRIPTION
Executes the \fBghdl\fP based test bench \fITBPROG\fP in an environment
defined by the descriptor file \fItbw.dat\fP and the \fIFILEDEF\fP
arguments. Any additional options \fIGHDL-OPTIONS\fP are passed on to the test
bench executable.
 
.SS Backgroud
The VHDL implementation in \fBghdl\fP has no direct support for passing
command line arguments to the VHDL code. All test benches in the Retro
project use therefore fixed build-in generic file names. By convention
they refer to symlinks (see \fBsymlink\fP(7)) which are setup by
\fBtbw\fP to point to a specific file prior to the execution of the
test bench.
 
.SS Default behaviour
In the simplest case \fBtbw\fP assumes a test bench with a single stimulus
file which is opened by convention as \'<TBPROG>_stim\'. The default
stimulus file is named \'<TBPROG>_stim.dat\'. \fBtbw\fP will simply
define \'<TBPROG>_stim\' as a symlink refering to \'<TBPROG>_stim.dat\',
or if defined to \fIFILEDEF\fP, and execute \fITBPROG\fP. In essence
 
.EX
ln -s -f <TBPROG>_stim.dat <TBPROG>_stim
<TBPROG> <GHDL-OPTIONS>
.EE
.
.SS Using a \fItbw.dat\fP configuration file
When the generic file name or the stimulus file name does not follow the
simple default pattern or more than one input file is required a
configuration file can be used to define the setup. It has the fixed
name \fItbw.dat\fP and is searched the current working directory. The
format is described in section FILES.
 
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 Test benches controlled with \fBti_rri\fP
In this case the communication between test bench and the controlling
\fBti_rri\fP is done via two named pipes (see \fBfifo\fP(7)). The test
bench might open in addition a configuration file. This setup is also
defined via the \fItbw.dat\fP file, for details see section FILES.
.
.\" ------------------------------------------------------------------
.SH GHDL OPTIONS
All options are passed on to the test bench executable. The list of
available options for a \fBghdl\fP generated executable can be inquired
with the "\fB\-\-help\fR" option. Some especially useful options are:
.
.\" ----------------------------------------------
.IP "\fB\-\-wave=\fIfile\fR"
dump signal values into a wave file (use file type .ghw). Far superior
to the VCD format and allows to inspect all VHDL records and all data types
with \fBgtkwave\fP(1).
.
.\" ----------------------------------------------
.IP "\fB\-\-stack-max-size\fP=\fIn\fR"
set maximum stack size. Very helpful in case of very large models. A value
of \fIn\fP=16384 is in general enough for all generated models, which usually
have a large number of very simple processes.
.
.\" ----------------------------------------------
.IP "\fB\-\-stop-time\fI=t\fR"
stop the simulation at time \fIt\fP (in VHDL notation, e.g. 100ns).
.
.\" ----------------------------------------------
.IP "\fB\-\-disp-time\fR"
display time as simulation advances.
.
.\" ----------------------------------------------
.IP "\fB\-\-trace-processes\fR"
display process name before each cycle.
.
.\" ------------------------------------------------------------------
.SH FILES
.IP "\fI./tbw.dat\fR" 4
This configuration file is searched for in the current working directory
and holds associations between generic file names and concrete file names
for one or more test bench executables. It contains sections of the format
 
.EX
[\fITBPROG\fP]
<generic name 1> = <concrete file name 1>
<generic name 2> = <concrete file name 2>
...
.EE
 
.RS
.IP "\fBUsage with Stimulus file based test benches\fR" 4
\fBtbw\fP will create a \fBsymlink\fP(7) with the generic name which
refers to the given concrete file name. A typical example is
 
.EX
[tb_nx_cram_memctl_as]
tb_nx_cram_memctl_stim = tb_nx_cram_memctl_stim.dat
.EE
 
.IP "\fBUsage with test benches controlled with ti_rri\fR"
The special token \fI<fifo>\fP indicates that a named pipe is used
rather than a normal file. In this case \fBtbw\fP will create a
\fBfifo\fP(7) rather than a symlink. Another special token is
\fI<null>\fP, it simply translates to \fI/dev/null\fP and can be
used as default value for configuration files. Currently all
\fBrlink\fP based test benches use the same generic names and have
a setup like
 
.EX
[tb_w11a_n3]
rlink_cext_fifo_rx = <fifo>
rlink_cext_fifo_tx = <fifo>
rlink_cext_conf = <null>
.EE
 
.RE
.
.\" ------------------------------------------------------------------
.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 later case in general with an indication
of whats wrong.
Other unexpected behaviour, 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.
These test benches are usually run like
 
.EX
tbw <testbenchname> [stimfile] | tee <logfile> | egrep "(FAIL|DONE)"
.EE
 
where
.RS 2
.PD 0
.IP "\-" 2
\fBtbw\fP sets up the stimulus file and runs the test bench executable
.IP "\-"
\fBtee\fP ensures that the full log is saved
.IP "\-"
\fBegrep\fP filters \fIFAIL\fP and \fIDONE\fP lines, a successful run will
produce a single \fIDONE\fP line
.PD
.RE
 
.SS Test benches controlled with \fBti_rri\fP
In these cases the test bench is started via \fBti_rri\fP using the
\fB\-\-run\fP and \fB\-\-fifo\fP options. Also here Usually a pipe with
\fBtee\fP and \fBegrep\fP is used, a typical example is
 
.EX
ti_rri \-\-run="tbw tb_tst_rlink_n3" \-\-fifo \-\-logl=3 \-\- \\
"package require tst_rlink" \\
"tst_rlink::setup" "tst_rlink::test_all" |\\
tee tb_tst_rlink_n3_dsim.log |\\
egrep "(\-[EFW]:|FAIL|PEND|DONE)"
.EE
 
.
.\" ------------------------------------------------------------------
.SH "SEE ALSO"
.BR ti_rri (1),
.BR gtkwave (1),
.BR symlink (7),
.BR fifo (7)
 
.\" ------------------------------------------------------------------
.SH AUTHOR
Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
/create_disk.1
0,0 → 1,159
.\" -*- nroff -*-
.\" $Id: create_disk.1 550 2014-02-03 08:16:57Z mueller $
.\"
.\" Copyright 2013- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
.\"
.\" ------------------------------------------------------------------
.
.TH CREATE_DISK 1 2013-05-20 "Retro Project" "Retro Project Manual"
.\" ------------------------------------------------------------------
.SH NAME
create_disk \- create disk container file for ti_w11
.\" ------------------------------------------------------------------
.SH SYNOPSIS
.
.SY create_disk
.BI \-\-typ "\fR=\fPtyp"
.OP \-\-ini=\fIpat\fP
.OP \-\-bad
.OP \-\-boot
.I FILE
.
.SY create_disk
.B \-\-help
.YS
.
.\" ------------------------------------------------------------------
.SH DESCRIPTION
Creates a disk container file \fIFILE\fP with the proper size for a disk of
type \fItyp\fP.
.
.\" ------------------------------------------------------------------
.SH OPTIONS
.
.\" ----------------------------------------------
.IP \fB\-\-typ=\fItyp\fR
determines disk type, must be specified.
The list of supported disk types can be obtained with the
.B \-\-help
option.
.
.\" ----------------------------------------------
.IP \fB\-\-ini=\fIpat\fR
determines whether the container file will be initialized with specific
data pattern. Note that the \fB\-\-bad\fP and \fB\-\-boot\fP options will
overwrite the last track or the first sector(s) respectively.
Allowed values for \fIpat\fP are
.RS
.IP \fBzero\fP
creates a disk with all sectors zero'ed. This is the default when no
\fB\-\-ini\fP option is given.
.IP \fBones\fP
creates a disk with all data bytes set to 0xff.
.IP \fBdead\fP
creates a disk with an alternating 0xdead 0xbeaf pattern. Can be helpful
to diagnose whether an operating system access previously in initialized
parts of a disk.
.IP \fBtest\fP
creates a disk with a unique test pattern in each sector. The whole disk
is initialized with groups of 8 16bit words (in PDP-11 little endian) with
 
.RS
.RS 3
.PD 0
.IP 0: 4
absolute disk byte address, lower word
.IP 1: 4
absolute disk byte address, upper word
.IP 2: 4
current cyclinder number (0 based)
.IP 3: 4
current track/head number (0 based)
.IP 4: 4
current sector number (0 based)
.IP 5: 4
number of cyclinders for disk type
.IP 6: 4
number of tracks/heads for disk type
.IP 7: 4
number of sectors for disk type
.RE
.PD
.PP
A \fBhexdump\fP(1) of a RP06 disk image initialized with
\fB\-\-ini\fP=\fItest\fP
will look like
 
.EX
0000000 0000 0000 0000 0000 0000 032f 0013 0016
0000010 0010 0000 0000 0000 0000 032f 0013 0016
...
00001f0 01f0 0000 0000 0000 0000 032f 0013 0016
0000200 0200 0000 0000 0000 0001 032f 0013 0016
...
a657be0 7be0 0a65 032e 0012 0015 032f 0013 0016
a657bf0 7bf0 0a65 032e 0012 0015 032f 0013 0016
.EE
.
.RE
.RE
.
.\" ----------------------------------------------
.IP \fB\-\-bad\fP
creates a DEC standard 044 compliant bad block table on the last track
of the disk container file.
.
.\" ----------------------------------------------
.IP \fB\-\-boot\fP
creates a PDP-11 dummy boot block. When such a disk is attached and booted
with \fBti_w11\fP(1) or a simh pdp11 a message like
 
.EX
++======================================++
|| This is not a hardware bootable disk ||
++======================================++
 
Disk image created with 'create_disk --typ=RK05':
number of cylinders: 203
tracks per cylinder: 2
sectors per track: 12
block size: 512
total number of sectors: 4872
capacity in kByte: 2436
 
CPU WILL HALT
.EE
 
will be printed on the system console and the CPU HALTed.
.
.\" ----------------------------------------------
.IP \fB\-\-help\fP
print full help, with list \fB\-\-typ\fP and \fB\-\-ini\fP options.
.
.\" ------------------------------------------------------------------
.SH EXIT STATUS
If the file
.I FILE
can not be created an exit status 1 is returned.
 
.\" ------------------------------------------------------------------
.SH EXAMPLES
.IP "\fBcreate_disk -typ=rk05 rk05.dsk\fR" 4
This will create a zero'ed disk contained sized for a RK05 disk. In most
cases it is sufficient to create such plain zero'ed disk images.
.
.IP "\fBcreate_disk -typ=rl02 -bad rl02.dsk\fR"
Creates a RL02 sized disk with a 'factory bad block table'. When using
RLxx, RPxx, or RMxx type disks, especially in conjunction with DEC
operating systems, it is advisable to create disks with \fB\-\-bad\fP.
.
.IP "\fBcreate_disk -typ=rk05 -ini=test rk05_test.dsk\fR"
Creates a RK05 sized disk with test pattern.
.
.\" ------------------------------------------------------------------
.SH "SEE ALSO"
.BR ti_w11 (1)
 
.\" ------------------------------------------------------------------
.SH AUTHOR
Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
/xilinx_ghdl_unisim.1
0,0 → 1,67
.\" -*- nroff -*-
.\" $Id: xilinx_ghdl_unisim.1 522 2013-05-24 17:50:29Z mueller $
.\"
.\" Copyright 2010- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
.\"
.\" ------------------------------------------------------------------
.
.TH XILINX_GHDL_UNISIM 1 2010-07-25 "Retro Project" "Retro Project Manual"
.\" ------------------------------------------------------------------
.SH NAME
xilinx_ghdl_unisim \- compile Xilinx ISE UNISIM libraries for ghdl
.\" ------------------------------------------------------------------
.SH SYNOPSIS
.
.B xilinx_ghdl_unisim
.
.\" ------------------------------------------------------------------
.SH DESCRIPTION
\fBxilinx_ghdl_unisim\fP compiles the Xilinx ISE/WebPack UNISIM libraries for
\fBghdl\fP. The object files generated by \fBghdl\fP
are stored in the directory tree of the currently active version of
ISE/WebPack under \fI$XILINX/ghdl/unisim\fP.
This is convenient when several ISE/WebPack versions are installed in
parallel, the \fB$XILINX\fP
environment variable is enough to setup the context for the synthesis
flows as well as for build of \fBghdl\fP models. Just use the
\fBghdl\fP option
 
.EX
-P${XILINX}/ghdl/unisim
.EE
 
to link to the UNISIM library.
 
Up to ISE 10 the VITAL models were all concatinated in one large file
\fIunisim_VITAL.vhd\fP. In this case the \fBxilinx_vhdl_chop\fP
helper script will create individual source files for each model.
For ISE 11 and later the modules are shipped as separate files.
 
The XILINX source code has since many releases some buggy statements with
self-referencial initializations. They seem to be tolerated by the commercial
tools but not by \fBghdl\fP.
The \fBxilinx_vhdl_memcolltype_fix\fP
helper script simply removes them, no further problems seen so far.
 
.\" ------------------------------------------------------------------
.SH ENVIRONMENT VARIABLES
.IP \fBXILINX\fP
points to the root of the currently active ISE/WebPack installation.
.
.\" ------------------------------------------------------------------
.SH FILES
.IP \fI$XILINX/vhdl/src/unisims\fP
The vhdl sources for the UNISIM library are looked for in this directory tree.
.IP \fI$XILINX/ghdl/unisim\fP
The created object files will be written into this directory. The directory
is created if not yet existing. Note that the \fI$XILINX\fP
directory must be writable for the script.
.
.\" ------------------------------------------------------------------
.SH "SEE ALSO"
.BR ghdl (1),
.BR xilinx_ghdl_simprim (1)
.
.\" ------------------------------------------------------------------
.SH AUTHOR
Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
/telnet_starter.1
0,0 → 1,130
.\" -*- nroff -*-
.\" $Id: telnet_starter.1 550 2014-02-03 08:16:57Z mueller $
.\"
.\" Copyright 2013- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
.\"
.\" ------------------------------------------------------------------
.
.TH TELNET_STARTER 1 2010-07-09 "Retro Project" "Retro Project Manual"
.\" ------------------------------------------------------------------
.SH NAME
telnet_starter \- setup vt52/vt100 emulator windows for ti_rri or simh
.\" ------------------------------------------------------------------
.SH SYNOPSIS
.
.SY telnet_starter
.OP \-t term
.OP \-d dev
.OP \-s
.OP \-w
.OP \-l
.
.SY telnet_starter
.B \-\-h
.YS
.
.\" ------------------------------------------------------------------
.SH DESCRIPTION
Script to setup a \fBxterm\fP vt52 or vt100 emulator window which
will connect to a DL11 or DZ11 serial interface emulation port of
\fBti_rri\fP or a CPU emulator from the \fBsimh\fP suite,
e.g. \fBpdp11\fP, via a \fBtelnet\fP connection.
 
If the connect to the interface emulation port fails or is terminated
a message like
 
.EX
localhost 8000
Trying 127.0.0.1...
telnet: Unable to connect to remote host: Connection refused
telnet failed with rc=256
enter q or <^D> to quit, otherwise hit <ENTER> to reconnect:
.EE
 
is displayed in the \fBxterm\fP window. Entering a 'q' or 'Control-D'
will terminate the \fBxterm\fP window, after pressing the '<ENTER>'
key a re-connect will be tried.
 
.
.\" ------------------------------------------------------------------
.SH OPTIONS
.
.\" ----------------------------------------------
.IP "\fB\-t \fIterm\fR"
defines the terminal emulator type. Allowed values are:
.RS
.RS 3
.PD 0
.IP \fBvt100\fP 8
use VT100 emulation. The default.
.IP \fBvt52\fP
use VT52 emulation. Useful in conjunction with OS which do not have VT100
support, like early DEC RSX-11M versions.
.RE
.RE
.PD
.
.\" ----------------------------------------------
.IP "\fB\-d \fIdev\fR"
defines the serial interface emulation port to connect to. Supported
are currently primary and secondary DL11 interface and eight lines of
the first DZ11 interface. Allowed values for \fIdev\fP are:
.RS
.RS 3
.PD 0
.IP \fBDL0\fP 6
first DL11 (usually console). The default.
.IP \fBDL1\fP 6
second DL11.
.IP \fBDZ\fIn\fP 6
eight lines of the first DZ11. \fIn\fP = 0,...,7.
.RE
.RE
.PD
.
.\" ----------------------------------------------
.IP "\fB\-s\fR"
Use simh port numbers. Default is to use \fBti_rri\fP ports.
.
.\" ----------------------------------------------
.IP "\fB\-w\fR"
Use a wide 132 column screen. Default is 80 column screen width.
.
.\" ----------------------------------------------
.IP "\fB\-l\fR"
Use a long 48 line screen. Default is a 24 lines screen height.
.
.\" ----------------------------------------------
.IP "\fB\-h\fR"
print full help text and exit.
.
.
.\" ------------------------------------------------------------------
.SH EXIT STATUS
In case of an error an exit status 1 is returned.
.
.\" ------------------------------------------------------------------
.SH BUGS
Stupid name, it's not telnet but a terminal emulator which is started.
.
.\" ------------------------------------------------------------------
.SH EXAMPLES
.IP "\fBtelnet_starter -d DL0 &\fR" 4
Creates a background process with a \fBxterm\fP in VT100 emulation mode
with a 80x24 screen size which will try to connect to the primary DL11
emulator port of \fBti_rri\fP.
.
.IP "\fBtelnet_starter -t vt52 -d DL1 -s &\fR"
Creates a background process with a \fBxterm\fP in VT52 emulation mode
with a 80x24 screen size which will try to connect to the secondary DL11
emulator port of a \fBsimh\fP suite CPU emulator.
.
.\" ------------------------------------------------------------------
.SH "SEE ALSO"
.BR telnet (1),
.BR ti_rri (1),
.BR xterm (1)
 
.\" ------------------------------------------------------------------
.SH AUTHOR
Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
/fx2load_wrapper.1
0,0 → 1,117
.\" -*- nroff -*-
.\" $Id: fx2load_wrapper.1 550 2014-02-03 08:16:57Z mueller $
.\"
.\" Copyright 2013- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
.\"
.\" ------------------------------------------------------------------
.
.TH FX2LOAD_WRAPPER 1 2013-01-05 "Retro Project" "Retro Project Manual"
.\" ------------------------------------------------------------------
.SH NAME
fx2load_wrapper \- auto-load firmware into Cypress FX2 USB controller
.\" ------------------------------------------------------------------
.SH SYNOPSIS
.
.SY fx2load_wrapper
.OP \-\-board=\fIb\fP
.OP \-\-file=\fIf\fP
.OP \-\-ihx_path=\fIp\fP
.OP \-\-cycfx2prog
.OP \-\-force
.OP \-\-dry_run
.
.SY fx2load_wrapper
.B \-\-help
.YS
.
.\" ------------------------------------------------------------------
.SH DESCRIPTION
Checks firmware state of a Cypress FX2 USB controller and re-loads the
firmware in case of a mismatch of currently active and desired firmware.
 
The command locates a USB device with a USB path defined by the environment
variables RETRO_FX2_VID and RETRO_FX2_PID, or default vid=16c0 and pid=03ef.
It inquires with \fBlsusb\fP(1) the 'iProduct' attribute of the currently
active USB descriptor. If this attribute is defined and equals the basename
of the firmware image given with \fB-\-file\fP it is assumed the the proper
firmware is already active. Otherwise the firmware image is loaded with
either \fBfxload\fP(1) or \fBcycfx2prog\fP.
 
\fBNote:\fP after a firmware load the Cypress FX2 USB controller restarts.
This causes a USB re-numeratation, the USB device disconnects and reconnects
with a new device descriptor. It can take some time till the Linux USB stack
shows the new device descriptor. The command sleeps for 1.5 seconds, this is
usually enough to ensure that subsequent commands see the new state.
.
.\" ------------------------------------------------------------------
.SH OPTIONS
.
.\" ----------------------------------------------
.IP \fB\-\-board=\fIb\fR
determines the type of board to be configured. The default is 'nexys2',
currently supported boards are:
.RS
.PD 0
.IP \fBnexys2\fP
Digilent Nexys2. Default file: nexys2_jtag_2fifo_as.ihx
.IP \fBnexys3\fP
Digilent Nexys3. Default file: nexys3_jtag_2fifo_as.ihx
.IP \fBatlys\fP
Digilent Atlys. Default file: nexys3_jtag_2fifo_as.ihx
.RE
.PD
.
.\" ----------------------------------------------
.IP \fB\-\-file=\fIf\fR
specifies the firmware image to be loaded. Must be in \fI.ihx\fP format
and located in the path defined with the \fB\-\-ihx_path\fP option.
.
.\" ----------------------------------------------
.IP \fB\-\-ihx_path=\fIp\fR
specifies the directory were firmware image files are searched. The default
is \fI$RETROBASE/tools/fx2/bin\fP.
.
.\" ----------------------------------------------
.IP \fB\-\-cycfx2prog\fP
Use \fBcycfx2prog\fP instead of \fBfxload\fP(1) to load the firmware.
.
.\" ----------------------------------------------
.IP \fB\-\-force\fP
Unconditionally load the firmware, even when a 'iProduct' attribute match
is seen. Useful to reset the Cypress FX2 controller.
.
.\" ----------------------------------------------
.IP \fB\-\-dry_run\fP
Don't load the firmware, display only the command used to do so.
.
.\" ----------------------------------------------
.IP \fB\-\-help\fP
print help text and exit.
.
.\" ------------------------------------------------------------------
.SH EXIT STATUS
In case of an error an exit status 1 is returned.
.
.\" ------------------------------------------------------------------
.SH ENVIRONMENT
.IP "\fBRETRO_FX2_VID, RETRO_FX2_PID\fR" 4
Define the USB path of the Cypress FX2 USB controller. If not specified
the defaults vid=16c0 and pid=03ef are used.
.IP \fBRETROBASE\fR
Path to current Retro project root directory. Used for the default
firmware path in case no \fB\-\-ihx_path\fP option given.
.
.\" ------------------------------------------------------------------
.SH EXAMPLES
.IP "\fBfx2load_wrapper --board=nexys2 --file=nexys2_jtag_2fifo_ic.ihx\fR" 4
Checks whether the 'nexys2_jtag_2fifo_ic' version of the firmware is loaded
and in case not loads the firmware image.
 
.\" ------------------------------------------------------------------
.SH "SEE ALSO"
.BR fxload (1),
.BR config_wrapper (1)
 
.\" ------------------------------------------------------------------
.SH AUTHOR
Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
/rm_dep.1
0,0 → 1,43
.\" -*- nroff -*-
.\" $Id: rm_dep.1 321 2010-08-01 19:43:39Z mueller $
.\"
.\" Copyright 2010- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
.\"
.\" ------------------------------------------------------------------
.
.TH RM_DEP 1 2010-07-24 "Retro Project" "Retro Project Manual"
.\" ------------------------------------------------------------------
.SH NAME
rm_dep \- remove vbomconv generated dependency files in a directory tree
.\" ------------------------------------------------------------------
.SH SYNOPSIS
.
.SY rm_dep
.YS
.
.\" ------------------------------------------------------------------
.SH DESCRIPTION
.B rm_dep
removes all
.B vbomconv
generated dependency rule files from the whole directory tree starting
at the current working directory. Specifically, it removes
.PP
.EX
*.dep_ghdl
*.dep_isim
*.dep_xst
*.dep_ucf_cpp
.EE
.PP
The script produces a log to
.I stdout
indicating all removed files, the messages are generated by '\fIrm -v\fP'.
.
.\" ------------------------------------------------------------------
.SH "SEE ALSO"
.BR vbomconv (1)
.
.\" ------------------------------------------------------------------
.SH AUTHOR
Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
/.
. Property changes : Added: svn:ignore ## -0,0 +1,32 ## +*.dep_ghdl +*.dep_isim +*.dep_xst +work-obj93.cf +*.vcd +*.ghw +*.sav +*.tmp +*.exe +ise +xflow.his +*.ngc +*.ncd +*.pcf +*.bit +*.msk +isim +isim.log +isim.wdb +fuse.log +*_[sft]sim.vhd +*_tsim.sdf +*_xst.log +*_tra.log +*_twr.log +*_map.log +*_par.log +*_pad.log +*_bgn.log +*_svn.log +*_sum.log +*_[dsft]sim.log

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.