Patch files for EMC12 Mezzanine FPGA Configuration and FFT Diagnostic What is Provided by this Patch? ------------------------------- This EMC12 patch provides updates for EMC12 mezzanine FPGA configuration and the DSP code used for the emfft diagnostics program. It is provided for users who have versions 3.4.0 through 3.4.6 of the Empack Software distribution and who do not wish to upgrade to version 3.4.7 or higher. For downloading the patch from the cacdsp WEB site, archive files for Solaris (c12patch.tar.gz) and Windows (c12patch.zip) are provided. Both archives include the patch files for both Solaris and Windows systems. If your system has version 3.4.7 or higher installed, you do not need to install this patch. You may, however, need to upgrade the FPGA configurations in existing Empacks connected to the system. To do this, run the emflash program: emflash all If the version of the Empack software (EMAPI) installed on your system is less than 3.4.0, installing this patch is not recommended. You should, if at all possible, upgrade the Empack software on your system. Reason for EMC12 Patch ---------------------- Recent production EMC12 mezzanines have exhibited intermittent failures running the emfft and emscp diagnostic programs. Due to differences in electrical and timing characteristics of recent lots of certain components on the EMC12 mezzanine, latent defects in the FPGA logic design have become significant. Some of these problems were corrected in the FPGA configuration released with version 3.4.5 of the Empack software. Additional problems have been discovered and are corrected in the FPGA configuration, which is released with version 3.4.7 of the Empack software and is included in this patch. In addition to the FPGA configuration, modifications to the FFT diagnostic programs included in version 3.4.7 eliminate some sources of the reported errors and provide better diagnostics tools. The DSP code in the dspemfft file allows the DSP to process the audio data samples quicker, eliminating problems encountered with the higher sample rates used in the test. The host program, emfft, reports more information about the status of the Codecs and provides some specialized operational options to help narrow down the causes of errors. Without requiring a general software or API upgrade on your system, the FPGA configuration and DSP code for the FFT diagnostic may installed using this patch. The patch files are compatible with versions 3.4.0 through 3.4.6 of the Empack software release. It is recommended that you upgrade the software and API if possible. Several bug fixes and enhancements are included in recent updates to the Empack software. See the release notes available on the CAC web site at http://www.cacdsp.com/software/release_notes/empack_hist.html. However, installing the patch will eliminate most of the timing related problems with the EMc12 mezzanine. Determining FPGA Versions ------------------------- The version of the EmC12 FPGA configuration included in this patch and in software release 3.4.7 is R2.2. It may be desirable to be able to determine the version of the FPGA configurations currently resident in an Empack's flash to know whether the patch needs to be installed. The version information shown by the emfind program indicates the host API version and embedded code version running on the Empacks. Normally, for software releases, the version of the embedded code and FPGA configurations are made the same so that the embedded code version also indicates the FPGA configuration version. However, if you change the FPGA configurations or embedded separately in the flash, emfind does not indicate the FPGA version. To determine the FPGA configuration versions you need to use the command line emflash program from software release version 3.4.2 or higher that supports the -l (lower-case L) option. Using this option will report the versions of the individual flash objects. Alternatively, the Windows software release included a GUI version of emflash called "EmWinFlash". Using that program on Windows systems, the FPGA configuration versions are displayed by clicking the "Show Versions" button. Installing the Patch -------------------- The files required for the patch should be contained in the same directory or folder as this "readme" file. They are: fpga347.bin - FPGA configuration flash file dspemfft.bin - DSP code for the emfft diagnostic program c12patch.bat - DOS batch file that may be used to install the patch on Windows systems (see below). c12patch.sh - Unix batch file that may be used to install the patch on Solaris systems (see below). Also required is the emflash program available with your current EMAPI installation. To manually install the patch, follow the instructions below. The procedure is the same for Windows and Solaris systems. However, the steps are show separately due to differences in the commands and file naming conventions. In either case some assumptions are made, for the purposes of example commands, as to the exact location of the installed files on your system. For Windows, it is assumed that the Empack software is installed in C:\cac. For Solaris, it is assumed that the Empack software is installed in /usr/cac. Make the appropriate directory substitutions when installing the patch on your system. The commands should be run from the location of the patch files. - Patch Installation for Windows systems: 1. Copy the new FPGA flash file to the Empack flash directory. C:\> copy fpga347.bin c:\cac\empack\flash 2. Copy the new DSP code to the Empack diag directory. C:\> copy dspemfft c:\cac\empack\diag 3. Update the FPGA configurations in the Empack flash. C:\> c:\cac\bin\emflash -f c:\cac\empack\flash\fpga347.bin all - Patch Installation for Solaris systems: 1. Copy the new FPGA flash file to the Empack flash directory. # cp fpga347.bin /usr/cac/empack/flash 2. Copy the new DSP code to the Empack diag directory. # cp dspemfft /usr/cac/empack/diag 3. Update the FPGA configurations in the Empack flash. # /usr/cac/bin/emflash -f /usr/cac/empack/flash/fpga347.bin all If your current Empack software is version 3.4.2 or higher, the emflash program will automatically restart the Empacks to reconfigure the FPGAs. If not, you must manually cycle the power on the Empacks to have the new FPGA configurations take effect. Using the DOS Batch File or Unix Shell Script to Install the Patch ------------------------------------------------------------------ For convenience, a DOS batch file and Unix shell script are provided to automate the procedure of installing the patch. However, they rely on the CAC environment variable to specify the location of the Empack software installation. Some installations may not have this environment variable set. In this case, you can edit the batch file or shell script. Both files include commented commands to set the CAC variable. Uncomment and edit those lines to define the variable to the location of the Empack software before executing the batch file or script. The batch file or script should be run from the location of the patch files.