============================================================ ------------------------------------------------------------ FILA 10G Command Reference (01/2011) ------------------------------------------------------------ ============================================================ The FILA10G serial console runs at 19200,N,8,1. You may use the key to display a list of commands. While typing a command, the key will display the syntax of that command. FiLa10G% ... => list of commands FiLa10G% command ... => syntax of command Below is a list of commands and their arguments. Note that arguments are obligatory and arguments marked [] are optional. Alternative values for one argument are denoted by . Most commands accept values and addresses specified in decimal or in hexadecimal. Note that hex is entered as "xFF" instead of "0xFF"! ============================================================ Syntax: arp Enables/disables automatic ARP queries. ------------------------------------------------------------ Syntax: dataselect <5B|5C|VDIF> Data format selection between 5B/5C/VDIF. Case insensitive. At the moment (01/2011) only 5B is supported. ------------------------------------------------------------ Syntax: listdev Lists the devices available in the design. This is a list of device names, their type and their memory address. Most devices are mapped into software address space and their memory can be accessed with the low-level commands 'read', 'write'. Most devices however have an own set of configuration commands and read/write are not recommended. The most useful output of 'listdev' are the names of the devices visible to the software. ------------------------------------------------------------ Syntax: read [] Reads and prints words from memory. Addresses can be decimal or hex. ------------------------------------------------------------ Syntax: regwrite Writes the value into a 32-bit register in a register bank. Bank name: name of register bank (use command 'listdev' for names) Register nr: number of register in the bank, starts from 0 Value: unsigned decimal or hex The list of registers and their meaning is documented in the Project Plan and other documentation. The most important are: read/write 8 = Configuration bits {0=arm, 2,1=inputsrc, 4,3=outformat, 5=rst, 9,8=tvgmode} 9 = UDP/IP data stream destination port 10 = two-letter station ID in the low bits 15-0 11 = UDP/IP data stream destination IP address 13 = RTC base second in decimal (automatically used by 'timesync') 14 = years since 2000 15 = RTC base MJD in decimal (automatically used by 'timesync') read-only 26 = BCD time code version of the current RTC value 28 = current RTC seconds count 29 = growing count of 64-bit words read from input FIFO 30 = status bits ------------------------------------------------------------ Syntax: regread Reads and prints a 32-bit value from the specified register in a register bank. Bank name: name of register bank (use command 'listdev' for names) Register nr: number of register in the bank, starts from 0 ------------------------------------------------------------ Syntax: reset Resets the FIFO and RTC. In practice this clears all data from the FIFOs and restarts the real-time clock on the next 1PPS. Correct time sync is attempted (RTC value of previous second +1) but is not really guaranteed. ------------------------------------------------------------ Syntax: sysstat Shows system status bits. This includes FIFO status, 1PPS sync status, the selected data source and test vector format, amongst much other information. ------------------------------------------------------------ Syntax: tengbinfo <10Gb core name> Retreives the current parameters of a core. Prints the ARP table of the core (table of IP=>MAC mapping). ------------------------------------------------------------ Syntax: tick Toggles 1PPS tick display. If toggled on, the current RTC time value is printed every time it changes. This should happen roughly at each 1PPS boundary, but due to software and serial console lag it is not an exact indication. ------------------------------------------------------------ syntax: time Prints current value of the RTC ------------------------------------------------------------ Syntax: timesync Initiates time synchronization of User Logic RTC to next 1PPS. Sec: second of day MJD: integer days in modified julian date The source of 1PPS depends in the 'inputselect'ed data source. Note that if the input is the TVG test vector generator, it operates standalone from onboard oscillators, your system will _not_ be in sync with any GPS or station 1PPS time reference. If the input is any of the VSI connectors, the clock is synced to the 1PPS coming from there. True sync of course requires that this external VSI data source itself be synchronized before synchronizing the FILA10G to it. ------------------------------------------------------------ Syntax: tvectmode Change test vector generation mode. Case insensitive. The VSI-H mode is a pseudorandom noise sequence that restarts on internal 1PPS. It is an implementation of http://www.haystack.mit.edu/tech/vlbi/mark5/mark5_memos/016.pdf ------------------------------------------------------------ Syntax: tengbarp <10Gb core name> Sets one ARP entry in a 10G core. Only the last byte of an IP address is specified, for example 15 instead of 192.168.1.15. The MAC address is case insensitive. This command is useful for entering a Multicast MAC address into the table. For Mark5C recording, a fake MAC needs to be entered for its IP address. In case of the Mark5C the command is needed to enter a fake MAC for its IP address, since the 5C card is not able to respond to network queries. ------------------------------------------------------------ Syntax: tengbcfg <10Gb core name> Sets the parameters of a 10G core. Somewhat similar to Linux 'ifconfig'. Examples: tengbcfg eth0 mac=ba:dc:af:e4:be:e1 tengbcfg eth0 ip=192.168.1.10 gateway=192.168.1.1 nm=27 tengbcfg eth0 port=46227 mac: interface MAC address Note that changing the MAC will also clear the ARP table! ip: interface IP address It is simultaneously the subnet address prefix so e.g. 192.168.1.10 would mean IP is 10 and subnet is 192.168.1.x nm: netmask of subnet in CIDR notation http://en.wikipedia.org/wiki/CIDR_notation For example 192.168.1.0/24 means nm=24 The ARP table of the 10G core has 255 entries, limiting the subnet to 255 addresses. For this reason you must have nm>=24. gateway: gateway IP through which to reach devices outside own subnet. Naturally the gateway IP must be on own subnet to be reachable itself! port: incoming UDP/IP port Data arriving to this port number is forwarded to FPGA user logic instead of the control software. Currently not really used. A future implementation of a "10GbE UDP/IP => Mark5B/VDIF de-framer => VSI output" processing system would use this port. ------------------------------------------------------------ Syntax: version Displays info about current design ------------------------------------------------------------ Syntax: write
Writes data to memory. Access type: b = write a byte (8-bit) s = write a short (16-bit) l = write a long (32-bit) Address: decimal or hex Data: unsigned decimal or hex ------------------------------------------------------------