This page is "http://www.cs.tut.fi/~albert/BOAR/design-cycle.html".
xilbitcat is a program that reads any number of input files and generates one output file, which contains the concatenated result of the separate configurations in the input files. The input files should be in the '.bit'-format, outputted by XACT MakeBits.
At least four configurations must be attached together to make the master Xilinx' and dataflow configure properly. Also, configurations need to match the actual chips in the sockets or the configuration process will fail. Currently all four chips are XC4010's. The first input file contains the configuration for the master Xilinx chip and the following three configurations are for the dataflow.
The configuration files can also be merged together on the target system (BOAR).
An example: 55 albert@lenkkari ~ > x ^P to quit, ^U to upload a file Connection established to sigx8.cs.tut.fi, port 9100 RAM: > _Uploading the files to BOAR is as simple as pressing ^U (ctrl-U) and giving the file name to upload. However, you should be in the right working directory in BOAR before starting the upload. ("cd ram:" or just "ram:").
The RAM disk (RAM:) is preferred over the FLASH EEPROM filesystem (ROM:), because EEPROM wears out when being used.
Now you can also use YMODEM-protocol, which is better than the ascii-format protocol. YMODEM has flow control, error detection and resending of incorrect blocks. Use ^T (ctrl-T) in the terminal program to use YMODEM-protocol.
Example: RAM: > [^U]File to upload: mx_biq_iir.bit L mx_biq_iir.bit 22340 0 bytes left RAM: > [^U]File to upload: biq_iir.bit L biq_iir.bit 22337 0 bytes left RAM: > [^U]File to upload: iirscript L iirscript 723 0 bytes left RAM: > [^U]File to upload: in.data L in.data 29822 0 bytes left RAM: > ls ----drwedrwedrwe mx_biq_iir.bit 22340 0 0 ----drwedrwedrwe biq_iir.bit 22337 0 0 ----drwedrwedrwe iirscript 723 0 0 ----drwedrwedrwe in.data 29822 0 0 RAM: >As you can see, the test data does not need to be the whole 512k (256 kilowords). Uploading 512k at 38400 bps would take a while.
[Currently: If the uploading does not complete properly, when using the ascii 'protocol', keep pressing e.g. 'A' until the counter reaches zero and then try to upload again.]Then we can merge the configurations into one file (g.bit). Here we put the same design in all dataflow Xilinx chips and a special master configuration for the master Xilinx chip.
RAM: > xilbitcat.b68k g.bit mx_biq_iir.bit biq_iir.bit biq_iir.bit biq_iir.bit Name of the design: mx_biq_iir.lca Type of chip (?): 4010PG191 Date of creation: 95/02/28 Time of creation: 14:09:08 Configuration data: 22267 bytes, 178134 bits, 2 extra one-bits Name of the design: biq_iir.lca Type of chip (?): 4010PG191 Date of creation: 95/02/27 Time of creation: 12:03:01 Configuration data: 22267 bytes, 178134 bits, 2 extra one-bits Name of the design: biq_iir.lca Type of chip (?): 4010PG191 Date of creation: 95/02/27 Time of creation: 12:03:01 Configuration data: 22267 bytes, 178134 bits, 2 extra one-bits Name of the design: biq_iir.lca Type of chip (?): 4010PG191 Date of creation: 95/02/27 Time of creation: 12:03:01 Configuration data: 22267 bytes, 178134 bits, 2 extra one-bits Writing to "g.bit" RAM: >Now we have the needed parts for a test run. So, just let the xilscript program read and execute the script file.
RAM: > xilscript.b68k iirscript 512 kB of output memory detected, 512 kB of input memory assumed xilc_PROGRAM is 0, changed to 0 Reading data for the input memory xilc_TESTSEL0 is 0, changed to 1 xilc_TESTSEL1 is 0, changed to 0 xilc_TDI is 0, changed to 0 Clearing configuration....Cleared Done! xil_DONE is 1 Clearing configuration....Cleared Done! xilc_DONE is 1 Waiting for 50 ms xilc_TDI is 0, changed to 1 Waiting for 11600 ms xilc_TDI is 1, changed to 0 xilc_PROGRAM is 1, changed to 0 xil_PROGRAM is 1, changed to 0 Writing output memory data to file ram:output.data RAM: > ls output.data ----drwedrwedrwe output.data 524288 0 0 RAM: >Downloading files is done with the "send" command. The terminal program will detect the incoming data and you can either start the transfer with ^V (ctrl-v) or abort the transfer with ^X (ctrl-X).
Now you can also use YMODEM-protocol, which is better than the ascii-format protocol. YMODEM has flow control, error detection and resending of incorrect blocks. Use "sx <file>" in BOAR to start YMODEM send and then use ^W (ctrl-W) in the terminal program to start YMODEM receive.
[Currently: If the ascii 'protocol' downloading halts for one reason or another, kill the running terminal (^Z, kill %%), start another and abort the transfer with ^X. Then try again.]
RAM: > send output.data **W0 Incoming data detected! Press ^V to start transfer, ^X to abort 524288 bytes Successful RAM: >Downloading the whole 512k will take some time, so if you only need to take a look into the file, use the "type" command with the "hex" option. You can press ^C (ctrl-C) to abort the display.
RAM: > type output.data hex 00000000 : cfa4 cffd c00c c003 cffd cffe cfff cfff 00000010 : cfff cfff cfff cfff cfff cfff cfff cfff 00000020 : cfff cfff cfff cfff cfff cfff cfff cfff 00000030 : cfff cfff cfff cfff cfff cfff cfff cfff 00000040 : cfff cfff cfff cfff cfff cfff cfff cfff 00000050 : cfff cfff cfff cfff cfff cfff cfff cfff 00000060 : cfff cfff cfff cfff cfff cfff cfff cfff 00000070 : cfff cfff cfff cfff cfff cfff cfff cfff 00000080 : cfff cfff cfff cfff cfff cfff cfff cfff 00000090 : cfff cfff cfff cfff cfff cfff cfff cfff 000000a0 : cfff cfff cfff cfff cfff cfff cfff cfff 000000b0 : cfff cfff cfff cfff cfff cfff cfff cfff 000000c0 : cfff cfff cfff cfff cfff cfff cfff cfff 000000d0 : cfff cfff cfff cfff cfff cfff cfff cfff 000000e0 : cfff cfff cfff cfff cfff cfff cfff cfff^C ***aborted 000000f0 : cfff cfff cfff cfff cfff cfff cfff cfff type failed: returncode 20 RAM: >That was the minimum amount of information you need to know about BOAR to be able to use it. However, the command line editor in the shell is a lot like tcsh, with command/filename completion/listing, which makes it very convenient to use. Take a look into the shell manual for advanced information about the command line editor, the builtin commands and other shell-related stuff.