Installation and Setup Manual: Ispvm System Linux
Installation and Setup Manual: Ispvm System Linux
Installation and Setup Manual: Ispvm System Linux
System Requirements
The following are the basic system requirements for the ispVM System Linux software:
• Intel Pentium or Pentium-compatible PC
• AMD Opteron system support (32-bit OS only)
• Kernel 2.6 or above
• 110 MB disk space
• 1024 x 768 graphics display
• HTML-compatible Web browser
NOTE: The ispVM System Linux software has only been tested on Red Hat Enterprise Linux version 4.0
operating system.
Installation Procedure
Extracting the ispVM System Installation
To extract the ispVM System, move the installation file to the directory where the user wants it installed.
The installation file name is ispvm_va_b_c_os.tar.gz, where a is the major revision number, b and c
are the minor revision numbers, and os is the target operating system (either UNIX or Linux). For
example, uncompress and unpack the Linux archive as follows:
gunzip ispvm_v17_0_linux.tar.gz
tar xf ispvm_v17_0_linux.tar
After the file has been extracted, it creates the ‘isptools/ispvmsystem’ directory and
ispVMInstallation.pdf. Under the ‘ispvmsystem’ directory, the ispvm, model300,
svfdebugger, and other ispVM System tools, and the ‘Database’, and ‘ispVMEmbedded’
1
ispDCD is Lattice legacy windows download program.
2
LatticePRO (VantisPRO) is the legacy windows download program inherited from Vantis after the
Lattice-Vantis merger.
subdirectories are created. The ‘Database’ directory contains the device support information. The
‘ispVMEmbedded’ directory contains the ispVM embedded source code and executables.
Extracting the ispVM System Device Support Update (if available)
Before extracting the device support update, ispVM System must be installed, as discussed above in
Extracting the ispVM System Installation. To extract the ispVM System device support update, move the
update file to the isptools directory. The update file name is ispvm_va_b_c_os_update.tar.gz,
where a is the major revision number, b and c are the minor revision numbers, and os is the target
operating system (either UNIX or Linux). For example, uncompress and unpack the Linux update archive
as follows:
gunzip ispvm_v17_0_1_linux_update.tar.gz
tar xf ispvm_v17_0_1_linux_update.tar
After the file has been extracted, the ispVM System will be updated to the latest version.
Setup Procedure
If the LD_LIBRARY_PATH and the path variables are not already defined, add the following lines instead:
setenv ISPVM_DIR /usr/local/isptools/ispvmsystem
setenv LD_LIBRARY_PATH $ISPVM_DIR/lib
set path=($ISPVM_DIR)
Note: When setting an LD_LIBRARY_PATH, do not use a tilde (~) anywhere in the designated path.
After the LD_LIBRARY_PATH and path variables are updated, the user is required to login again, or
resource the profile before continuing. This will set the environment variables. To resource the user
profile, type “source ~/.cshrc” at the prompt. Type env and look for the ISPVM_DIR and
LD_LIBRARY_PATH lines to ensure they are pointing to the appropriate directories in which ispVM was
extracted to.
If the LD_LIBRARY_PATH and the path variables are not already defined, add the following lines instead:
ISPVM_DIR = /usr/local/isptools/ispvmsystem
export ISPVM_DIR
LD_LIBRARY_PATH = $ISPVM_DIR/lib
export LD_LIBRARY_PATH
PATH = $ISPVM_DIR
export PATH
Note: When setting an LD_LIBRARY_PATH, do not use a tilde (~) anywhere in the designated path.
After the LD_LIBRARY_PATH and path variables are updated, the user is required to login again, or
resource the profile before continuing. This will set the environment variables. To resource the user
profile, type “source ~/.bashrc” at the prompt. Type env and look for the ISPVM_DIR and
LD_LIBRARY_PATH lines to ensure they are pointing to the appropriate directories in which ispVM was
extracted to.
Example 1:
Change:
lp:x:7:
To:
lp:x:7:user_name1,user_name2,etc
Example 2:
Change:
lp:x:7:daemon,lp
To:
lp:x:7:daemon,lp,user_name1,user_name2,etc
Where user_name1, etc. is the login name for all the users you want to give read/write
permission for parallel port zero. Save the changes and close the “group” file.
7. Using your favorite text editor, edit the file “nsswitch.conf”.
8. Look at the group line. Make sure “files” is there.
Example:
group: files nis
9. If “files” is there then you’re done. You may need to reboot for the changes to take affect.
Below is the link of the documentation on how to setup UDEV rules for Red Hat for more information
http://www.redhat.com/magazine/002dec04/features/udev/
When you create the usbcable file, pay attention to the spacing since some statements are
sensitive to the omission of spaces.
• Copy the Linux usbcam file and save it as usbcable.
On most versions of Linux, a usbcam script is available that changes the device ownership to
the user who inserts the cable and logs into the console. The usbcam script is located in the
same /etc/hotplug/ directory.
If you prefer to use this script, copy the usbcam file and save it as usbcable.
7. Grant the script execute permission
chmod 755 usbcable
NOTE: The USB cable must be removed and reinserted whenever one user logs out and another user
logs in. Otherwise, the system will still recognize the previous user as the owner of the cable, and an error
message will be generated.
FTDI USB Host Chip Configuration
libftd2xx- A library (using libusb) to talk to FTDI's UART/FIFO chips including the popular bitbang mode.
ispVM using the libftd2xx.so.0.4.13 version which included under ispvmsystem\Drivers\FTDIUSBDriver
directory.
Installation:
If you have problems with this check with usbview (search on the internet for application or it can be sent
to you by ftdi) to check the usb file system is mounted properly.
Syntax
<drive>:\<ispvm directory>\ispVM [-help] |
-infile “<input file path>”
[-logfile “<log file path>” ]
<-processtype <turbo | sequential>
-cabletype < lattice [-portaddress <0x0378 | 0x0278 | 0x03bc | 0x<custom address> > ] |
usb [-portaddress <ezusb-0 | ezusb-1 | ezusb-2 | ezusb-3 |
ezusb-4 | ezusb-5 | ezusb-6 | ezusb-7 |
ezusb-8 | ezusb-9 | ezusb-10 > ] |
usb2 [-portaddress <ftusb-0 | ftusb-1 | ftusb-2 | ftusb-3 |
ftusb-4 | ftusb-5 > ] |
]>|
-outfiletype <-svf [-outfile “<output file path>” ] |
-svf_rev_c [-outfile “<output file path>” ] |
-svf_rev_d [-outfile “<output file path>” ] |
-svf_rev_c_d [-outfile “<output file path>” ] |
-vme12 [-outfile “<output file path>” ] |
-vme11 [-outfile “<output file path>” ] |
-vme10 [-outfile “<output file path>” ] |
-vme9 [-outfile “<output file path>” ] |
-vme8 [-outfile “<output file path>” ] |
-slim [-algofile “<output file path>” -datafile “<output file path>” ] >
-slim1 [-algofile “<output file path>” -datafile “<output file path>” ] >
-slim2 [-algofile “<output file path>” -datafile “<output file path>” ] >
-cpu [-outfile “<output file path>” ] |
-stp [-outfile “<output file path>” ] |
-encryption
>
[-o | -w]
Example
ispvm -infile “../demo/demo.xcf” -processtype turbo -cabletype lattice -portaddress
0x0278
ispvm -infile “../demo/demo.xcf” -outfiletype -svf
ispvm -infile “../demo/demo.xcf” -key -hex \"000000004C6174746963652053656D69\"
Description
Default will use the .xcf or .dld file name. If the file path includes spaces, enclose the path in quotes.
Return Codes
Code Definition
0 Success
-1 Log file error
-2 Check configuration setup error
-3 Out of memory error
-4 NT driver error
-5 Cable not detected error
-6 Power detection error
-7 Device not valid error
-8 File not found error
-9 File not valid error
-10 Output file error
-11 Verification error
-12 Unsupported operation error
-13 File name error
-14 File read error
-15 Build SVP file error
-16 Build BJD file error
-17 Build SVF file error
-18 Build VME file error
-19 Build STAPL file error
-20 Build CPU file error
-21 Command line syntax error
Known Issues
1. A super user is required to change the permissions of the serial and parallel ports if the user does not
have proper read/write permission to the ports.
2. Using a serial port cable that is longer than six feet might cause inconsistent results.
3. ispDOWNLOAD Cable TRST Pin
Connecting the board’s TRST pin to the cable’s TRST pin is not recommended. If the board’s TRST
pin is connected to the cable’s TRST pin, instruct the ispVM System to drive the TRST pin high as
follows:
i. Select the Options menu item,
ii. Select Cable and I/O Port Setup,
iii. Check the TRST/Reset Pin Connected check box, and
iv. Select the Set High radio button.
If the proper option is not selected, the TRST pin will be driven low by the ispVM System.
Consequently, the BSCAN chain will not work because the chain is locked into RESET state.
4. ispDOWNLOAD Cable ISPEN Pin
The following pins should be grounded: the BSCAN pin of the 2000VE devices and the ENABLE pin
of MACH4A3/5-128/64, MACH4A3/5-64/64 and MACH4A3/5-256/128 devices. However, the user has
the option of having the BSCAN and ENABLE pins driven by the ISPEN pin from the cable, in which
case the ispVM System must be set to drive the ISPEN pin low as follows:
i. Select the Options menu item,
ii. Select Cable and I/O Port Setup,
iii. Check the ispEN/BSCAN Pin Connected check box, and
iv. Select the Set Low radio button.
5. ispVM System Linux currently does not support importing the WCH file.
6. ispVM System Linux Embedded (ispVME) currently only supports single device chains.
7. ispVM Linux VME Processor currently does not support Version 9 VME files.
8. ispVM Linux: When using the Usercode Editor, click the Read button before changing and saving the
new Usercode value.