ICE Help RELEASE
Summary: Release notes for the current version
A listing of the release notes for the current ICE Option Tree release.
Contents
- 1 NEW_FEATURES - New Features (this release only)
- 2 BUGS_FIXED - Bugs fixed (current release only)
- 3 WHAT_MIGHT_BREAK - Possible gotchas (current release only)
- 4 NONVOLATILE - Non-Volatile EEPROM Signatures for Series-5/6 Cards
- 5 COMPATIBILITY - Compatibility Guidelines
- 6 BIRTHDATE - Hardware / Software Compatibility
- 7 NEW_FEATURES_ALL - New Features (all previous releases)
- 8 BUGS_FIXED_ALL - Bugs fixed (all previous releases)
- 9 WHAT_MIGHT_BREAK_ALL - Possible gotchas (all previous releases)
NEW_FEATURES - New Features (this release only)
Version 3.9.6 adds SNTR7, D2RF, A2DM18, and LB2D-M3 IO Modules Version 3.9.6 adds PIC7 card Version 3.9.6 adds multicard PIC# syntax in Nextmidas Version 3.9.6 adds Kernel Allocated Memory mode to Linux driver
Version 3.9.8 adds Web-kit interface to SNAPAPP Version 3.9.8 adds support for PIC8, POD8, and K8M Version 3.9.8 adds support for D2AWG-M3 Version 3.9.8 adds support for raw network cards by SNAPPER Version 3.9.8 adds segmented archiving or TIVO recorder functionality
BUGS_FIXED - Bugs fixed (current release only)
Version 3.9.8 fixes performance issues in D2RF Version 3.9.8-20 fixes timecode issues with gapped data in segmented archiving Version 3.9.8-20 fixes no room for TC_PREC in header for archive files Version 3.9.8-20 fixes VITA-49 packet output mode
WHAT_MIGHT_BREAK - Possible gotchas (current release only)
Other discussions pertinent to all ICE releases.
NONVOLATILE - Non-Volatile EEPROM Signatures for Series-5/6 Cards
The Series-5+ cards use a reprogrammable Flash to allow field upgrades to the PCI interface. To insure the EEPROM still contains only the baseline code from ICE, a procedure is provided to read-back the EEPROM contents and calculate its 32-bit CRC.
See HELP on CRCs to read the as shipped EEPROM CRCs for this release.
To readback the CRC from a midas account, run
nM> PICD CHECKFLASH <device>
From outside Midas, run the test function
>$ICEROOT/test/test pic # checkflash
where # is the 0 based index of the ICE cards in the system. See the $ICEROOT/test/readme.txt file to build the test executable (if not previously built).
When upgrading to a new software release, the EPROM will need to be flashed with the new release. See the HELP on SOC for more information on the correct download for your card.
To program the flash with newer code from a midas account, run
nM> PICD LOADFLASH <device> <loadfile>
From outside Midas, run
>$ICEROOT/test/test pic <#> loadflash <loadfile>
where <loadfile> is an appropriate device file, like ICEPIC5_SS or ICEPIC5_HHF, and <#> is the zero-based index of the desired card on this machine's PCI bus. Make sure ICEROOT is defined properly. Files are read from $ICEROOT/dat/ .
You need to reboot the system for the card to load the new FPGA code. Make sure the procedure returns zero errors before rebooting your system. If you reboot with errors, the card will be lost to the PCI bus, and you will need to send it back to the factory.
COMPATIBILITY - Compatibility Guidelines
To install as an X-Midas option tree, ICE320 requires XM364 or greater. To install as a NeXtMidas option tree, ICE320 requires NXM250 or greater.
On systems using ICE310 or later, the drivers and libraries have a DETECT function to display all of the cards on a system and their pertinent version information.
From XMidas or NeXtMidas, use "PICD DETECT " or From the test subdirectory use "./test detect"
The output on a computer looks like
CARD #0 Type=PIC4 (Up/Active) Ndmac=1
Interface Type=PCI ChipRev=9 Bus=32b Clk=33MHz Endian=4 Driver=317 FirmWare Proc=318 Ioc=IIX
CARD #1 Type=PIC5 (Up/Idle)
Interface Type=PCI ChipRev=4 Bus=64b Clk=66MHz+ Endian=0 Driver=317 Modules Iom1=SDDSXDr5 Iom2=SDDSXDr5 Pm1=DTDMX:DEF Pm2=NONE: FirmWare Proc=318 Ioc=II SoC Ver=318 Sig=HH
CARD #2 Type=MBT4 (Down)
Interface Type=PCI ChipRev=8 Bus=64b Clk=66MHz+ Endian=0 Driver=317 FirmWare
ICE option tree libraries are normally compatible with drivers from other revisions of the ICE tree. The known exceptions are
- On OSF, pre-283 drivers are not compatible with 283+ libraries, or the reverse.
- (i.e. pre-283 libraries need pre-283 drivers and 283+ libs need 283+ drivers)
- On Linux, pre-307 drivers do not support PCI memory above 2G
- Pre-310 drivers do not have the ability to query the driver version
The ICE driver does not change with each option tree rev. When a change occurs, it is stamped with the current option tree rev. The latest revs for each OS are
VMS 310 OSF 315 LNX 398 SOL 317 WIN 312 MAC 310 SGI 310 HPUX 313
ICE option tree libraries and drivers are normally compatible with all PCI firmware revs. The exceptions are
- Pre-306 libraries will fail self test #4 (FIFO) on PIC3/MBT3 cards with
- new V5 PCI firmware and all PIC4Ts due to changes in the FIFO pipelining.
- Normal DMA operations are NOT affected.
BIRTHDATE - Hardware / Software Compatibility
Cards are supported under versions on or after their birthdate.
PIC1 - Version 1xx 2/1998 retired at 215 PIC2 - Version 210 11/1998 MBT2 - Version 222 3/1999 MBT3 - Version 236 6/1999 PIC3T - Version 240 7/1999 PIC4T - Version 293 7/2001 PIC4X - Version 311 9/2001 MBT4 - Version 313 6/2003 PIC5 - Version 317 6/2005 PIC6 - Version 320 6/2008 PIC7 - Version 400 6/2014 PIC8 - Version 400 1/2017
Cards are only retired from option trees when necessary.
I/O Modules for series 2 cards (PIC2,MBT2) are not compatible with series 3 or 4 cards. I/O Modules for series 3 & 4 cards are interchangeable and are not compatible with series 5, 6, or 7 cards.. I/O Modules for series 5, 6, 7 & 8 cards (PIC5,PIC6,PIC7,PIC8) are interchangeable.
A listing of release notes for all previous versions of the ICE tree.
NEW_FEATURES_ALL - New Features (all previous releases)
Version 2.1.9 adds single channel input up to 70Mby/s. Version 2.2.2 adds support for ICE-MBT2 cards. Version 2.2.7 adds IOC code for E1 sync and demux via PICEXTRACT Version 2.2.8 adds IOC code for E3/E2/E1 sync and demux via PICEXTRACT Version 2.3.6 adds support for ICE-MBT3 Version 2.3.6 adds tuner oversampling / clock deglitch for ICE-PIC2 cards. Version 2.3.6 adds user programmable filter support for ICE-MBT2 / ICE-MBT3 Version 2.4.0 adds spin/reload modes in SINKPIC Version 2.4.0 adds ICE-PIC3 and improved ICE-MBT3 IOC code Version 2.4.0 adds /GAINONLY and /DECONLY switches to PICDRIVER Version 2.4.0 adds tuner oversampling on PIC2/PIC3/MBT2/MBT3 Version 2.4.4 adds support for the Windows OS (uses EGCS and WinRT) Version 2.4.4 adds packet modes for mux/demux of multiple tuner channels Version 2.5.2 adds scalar mode tuner output to PIC3T with better filters Version 2.5.2 adds multi-channel mode to SOURCEPIC Version 2.5.2 adds muxed clock source from Internal|eXternal|A|B|Crystal Version 2.5.2 adds external sync support via the XSOE and XGO flags Version 2.5.3 reallocated DMA channels to allow simultaneous 2 tuner and 2 high speed module transfers on PIC2Ts Version 2.6.6 adds mode for 100Mby/sec acquisition on PIC3T Version 2.6.6 adds support for CXD modules Version 2.7.0 adds support for D2A modules Version 2.7.0 adds support for the Silicon Graphics Operating System Version 2.7.5 adds mode for 100Mby/sec mux channel for PIC3T/MBT3 Version 2.7.9 adds mode for 100Mby/sec single channel for PIC3T/MBT3 Version 2.7.9 adds DevIce class for Java apps and NeXtMidas primitives Version 2.7.9 driver installation script mods for Digital Unix 5.0A Version 2.8.1 auto detect input rate when checking TC for clock dropouts Version 2.8.1 adds PICMEASURE to compute time diff between data packets Version 2.8.3 new OSF driver scheme to force cleanup in multiuser env Version 2.8.3 will also clear any corrupt UNIX semaphores in a pic_reset Version 2.8.3 adds a C environment for user code on the SHARC Version 2.8.4 adds MATLAB example script ice.m in the test area Version 2.8.5 uses SHARC to speed up IOC and MOD Altera program loading Version 2.8.7 adds frame decimation in IOC to reduce PCI BW for sparse PSDs Version 2.8.7 adds internal algorithms for AM/FM/PM demodulators Version 2.8.8 adds Windows-2000 drivers Version 2.9.1 adds /TC=CPU mode for rough time stamping Version 2.9.1 supports looping output data back through tuners on same side Version 2.9.1 adds ICEPIC,DEVNO=n, syntax for OS independent config strings Version 2.9.1 supports dec=1 on ICEPIC3 tuners, sharper filters with SFILT Version 2.9.1 adds ICEPIC3 tuner gain in 1db inc (used to be 6db) Version 2.9.1 allows negative tuning freqs (to get inverted spectra) Version 2.9.1 adds clock dropout detection in IOC, flags as timecode problem Version 2.9.3 adds support for the ICEPIC4 card Version 2.9.4 increased max oversampling rate from 15 to 255 Version 2.9.8 adds auto clock source alg for IIX(mux) and IIV(VHS) modes Version 2.9.8 adds automatic handling of "double clutch" time code Version 2.9.9 adds routing of A side data to B side resources (ALT flag) Version 2.9.9 adds PIC SNAP function for GUI based snapshot and archiving Version 3.0.0 add PICTUNER macro for file-to-file tuning Version 3.0.4 add setkeyl, setkeyd, getkeyl, and getkeyd for easy OO access Version 3.0.4 add autodetect of kernel parameters for Linux driver install Version 3.0.5 add byte/short/int swapping in PCI chip for BigEndian, etc.. Version 3.0.6 adds full 64bit/66Mhz In/Out on PIC4T cards. Version 3.0.6 VHS mode (>80Mby) now works on Module 1, 2, muxed or both. Version 3.0.6 adds NODE=name flag to support global config files Version 3.0.7 adds Linux Driver support for 4G memory space and PowerPC Version 3.0.7 adds independent tuner decimation (flag=ITDEC) on PIC4T Version 3.0.8 adds tuner oversampling up to 101MHz on PIC4T cards Version 3.0.8 adds decimate by 8 and 4 modes on PIC4 using CPC flag (12.5M BW) Version 3.0.8 adds Lost Buffer status widgets to SOURCEPIC and SINKPIC Version 3.0.8 adds Windows Driver support for 4G memory space Version 3.0.8 Linux driver uses new PCI interface for 2.4 kernels Version 3.0.8 adds MUXCLK=D which is half rate of MUXCLK=C Version 3.0.8 adds DEGLITCH flag to apply deglitch circuit on MUXCLK source Version 3.0.8x adds SOURCEPIC concurrent snapshot/archive modes with timecode Version 3.0.9 adds Demod Algorithms for PIC4,MBT3,SLIC3 (was PIC3 only) Version 3.0.9 adds SOURCEPIC ability to slave resources on same side of card Version 3.0.9 adds enhanced ARCHIVING modes in snapper macro Version 3.0.9 adds Linux driver mmap entry to eliminate need for kernel mod Version 3.0.9 adds MUXCLK=D which is CCLK/N where n = 1 to 16 Version 3.1.0 adds download of CFIR coef on PIC4Ts through LOADFC Version 3.1.0 adds run-time query of driver version and PIC DETECT function Version 3.1.0 adds LOOP and LOOPIO picdriver functions for data chaining Version 3.1.1 adds tuner AOVSR and decimation change while running on PIC4T Version 3.1.1 adds server/client web based snapper macro under NeXtMidas Version 3.1.3 adds support for the 32+ channel MBT4 card Version 3.1.3 adds digital IRIG-B timecode (with opt 1PPS) on series-4 cards Version 3.1.3 adds driver for HPUX (by Bill Reece) Version 3.1.3 adds support for SONET rev 2 I/O module Version 3.1.3 adds INP=n flag to make use of the ALT function easier Version 3.1.3 adds EXTERNAL=n no-conflict algorithm buffers on PIC4 Version 3.1.4 adds fractional digital resampling on PIC4T and MBT4 tuner chip outputs Version 3.1.4 adds support for SDDS packet input and SDDS timecode handlers Version 3.1.4 adds clock delay feature to adjust for skewed input clocks. See KEY_CLKDLY. Version 3.1.4 adds NODITHER and 20-bit data output to PIC4/MBT4 tuners for precision phase meas. Version 3.1.4 adds external 10MHz reference for MUXCLK=P programmable clock (1-101MHz) Version 3.1.5 converts to NeXtMidas formulation of help and html documentation Version 3.1.5 adds /TC=CPUxP for NTP locked CPUs with an external 1PPS to the ICE Card Version 3.1.6 adds support for 2.6+ linux kernels (includes IA64 platforms) Version 3.1.6 adds ignore of NOCLOCK time code errors where appropriate. See the OKNC flag. Version 3.1.6 adds VLAN support for SDDS modules. See the IPVLAN flag. Version 3.1.7 adds support for 2.6 linux kernels (SUSE-92|93 and RHE-40) Version 3.1.7 adds support for the ICE-PIC5. Version 3.1.7 adds support for Bank of Tuners and Fast Tuner Transforms (FTTs). Version 3.1.7 adds external site reference for MUXCLK=P. See flag PREFX. Version 3.1.7 extends DTDM tuner clock rate up to 110MHz Version 3.1.8 adds circuit to ignore 1PPS trailing edge noise from lousy GPS units Version 3.1.8 adds PFAT test for PIC5 cards Version 3.1.8 adds RXTCBSWAP flag for SDDS tape playback with timecode on bit 3 Version 3.1.8 adds tuning of sinkpic's throttled rate using /TRATE switch Version 3.1.8 adds pre-trigger capture on PIC5 (0 to 15 samples) Version 3.1.8 adds VERBOSE widget on SOURCEPIC for in-system application debug Version 3.1.8 adds TimeCode calibration for resampled tuner paths Version 3.1.8 adds handlers in PIC5 for SDDS or embedded SDN0|1|3|4 timecode in SDDS packets Version 3.1.8 adds timestamp of card and I/O port resets (see RSTIME key) Version 3.1.8 adds wideband resampler for PIC5 Version 3.1.9 adds 32MHz BW tuner mode on PIC5 (decimate by 2 at up to 128MHz input) Version 3.1.9 extends PIC5 P-clk upper limit from 120 to 150 MHz Version 3.1.9 adds fractional (N/M) resampler (.5->4)to PIC5 tuner (up to 32MHz BW). Version 3.1.9 adds programmable CFIR(21|31), PFIR(63|127), and RFIR(20480) tap filters for PIC5 tuner. Version 3.1.9 adds SDDS packet sequence check for streams with or without parity packets (key=SEQERR) Version 3.1.9 adds handlers in series 4 cards for SDN timecode on bit 3 (replaces RXTCBSWAP flag) Version 3.1.9 adds ICE packets to XMidas SOURCEPICs archive output (see /APACKET= ) Version 3.1.9 accepts valid tuner frequencies (-1 < f/ny < 2) with proper folding inversions Version 3.1.9 adds KEY_PKTHDR to retrieve last SDDS packet header for analysis (series 5+ only) Version 3.1.9 adds KEY_SEQERR and SEQFILL keys to monitor SDDS sequence fills and errors Version 3.1.9 adds PCI addressing > 4G on 5+ series cards Version 3.1.9 add tuner bank support to X-Midas SOURCEPIC Version 3.1.9 adds NFREQ, NDEC, and NRATIO keys to report the actual nearest available values Version 3.1.9X adds ONDEMAND throttling in SINKPIC for packetized output streams Version 3.2.0 adds /proc filesystem entry for mapped RAM allocation status Version 3.2.0 adds complex input to FPGA tuner/resampler core Version 3.2.0 adds PRESAMP flag to insert FPGA resampler in front of DTDM tuners Version 3.2.0 adds 3rd stage of Fast Tuner Transform on DTDM for max of 2048 channels Version 3.2.0 backport PIC5s 1PPS in bit 0 with independent A&B clocks to PIC4/MBT4 Version 3.2.0 adds FIRONLY flag to PIC5 tuner to implement a 63 tap real filter at 64MHz SR (or 127@32MHz) Version 3.2.0 adds ITCPC and ITFMT for graychip tuners (PIC4/MBT4/MBT5) Version 3.2.0 adds timecode calibration for tuner bank outputs with FTTM=1|2|3 Version 3.2.0 adds 64G memory addressing for PIC5+ cards Version 3.2.0 adds support for mapping ram files > 2G (NeXtMidas Only) Version 3.2.0 adds preliminary support for PIC6 Version 3.2.0 adds the ICETUNER macro - a file based BankOfTuners using SINKPIC/SOURCEPIC Version 3.3.0 adds IRIG-B capability on PIC5+ cards Version 3.3.4 adds support for A2DR13 250MHz/12bit IO module with high quality onboard clock generation Version 3.3.6 adds Xilinx RocketIO module with mini-SAS connectors for 3G IO connections Version 3.3.6 adds looping different module configurations for PIC5+ self tests Version 3.3.6 adds combining high speed IO modules for 1500Mby acq/ply on PIC6 (A2DR11/FLZR modules) Version 3.3.9 adds support for complex data in SDDS data packets Version 3.3.9 adds 32 more dma channels to support 64 independent tuner channels with dual DTDMs Version 3.3.9 adds 128MHz BW complex input and 64MHz BW output on PIC5+ FPGA tuners (was 50MHz/32MHz) Version 3.3.9 adds 125MHz BW complex data input from A2DR13/LB2D IO modules Version 3.3.9 adds support for LB2D L-Band Receiver module support with 700MHz-2.2GHz tuning range Version 3.4.0 adds support for ICEPOD6 devices Version 3.4.0 adds support for D2AWG, TGSDDS, MSAS, DSFP, LB2D and RFXD IO modules Version 3.4.0 adds support for V5M and V6M processor modules (with JVM, tuners, and tunerbanks) Version 3.4.0 adds buffering for SDDS data through 10G switches and fills up to 16 packet drops (on PIC5+ cards) Version 3.5.0 adds support for S6M processor module Version 3.5.1 adds support for deep (127 tap) filters on V6M Version 3.5.4 adds non-blocking flags to pic_dmaxfer and pic_dmaxptr routines Version 3.6.0 adds CORE FPGA development libraries Version 3.6.0 adds ICE Deployment Environment for Midas free environments ($ICEROOT/jre/ice) Version 3.6.0 adds 4Mby card buffers for less dropout shaging bus with other HP PCIe cards Version 3.6.0 adds support for CI data at 125MHz to processor modules Version 3.6.0 adds support for A2DM14 Version 3.6.1-02 adds support for Snapapp extension macros Version 3.6.1-05 adds support for TGSDDS rev 2 module Version 3.6.1-05 adds sourcepic.getChnFreq(n) to return actual freq of each tunerbank channel Version 3.6.1-07 adds FPGA Real|Complex 4K FFT with PolyPhase|Window at up to 125MHz Version 3.6.1-11 adds PM temperature logging and version to /proc/driver/icepic entry (plus kernel 2.6.36 mods) Version 3.6.1-15 enhanced code for femto 2.5s Version 3.7.0 adds PCI express NACK accounting to help debug problems on newer HP servers Version 3.7.0 adds VITA-49 network interface module Version 3.7.0 adds support for physical memory up to 256G Version 3.7.2 allows addressing CORES 1-4 on a given module instead of just CORES 1-2 and MCORES 1-2 Version 3.7.2 adds C-Only compile of X-Midas primitives by setting the ICEUSECC environment variable Version 3.7.2 adds optional kernel memory allocator in icepic driver script Version 3.7.4 adds back-to-back PCI target access in support of bridge chips on external PCIe chassis Version 3.9.0 increases transfer rate to/from PMs from 512Mby/s to 800Mby/s Version 3.9.0 adds independently throttled output from PM cores to IO modules
BUGS_FIXED_ALL - Bugs fixed (all previous releases)
Version 2.2.8 recalibrated timecode support on ICE-PIC2 cards. Version 2.2.8 calibrated timecode support on ICE-MBT2 cards. Version 2.4.1 fix alloc bug in SINKPIC when input format != output format Version 2.5.2 fix improper scaling of upper VFT timecode bits Version 2.7.4 fix OSF driver to dynamically unload and reload Version 2.7.5 fix FPGA version anomalies causing random noise in data Version 2.7.9 fix (last) FPGA timing anomaly in PIC3 II code Version 2.7.9 fix /dev/linkname to resolve to raw /dev/icepic# on Solaris Version 2.7.9 PIC3 B side tuner decimation > 512 problem Version 2.8.1 fix tuner timecode slips by input sample on PIC3 Version 2.8.4 fix OSF driver install scripts not creating /dev/ice/ directory Version 2.9.1 fix OSF driver install scripts not creating /dev/ice/ again Version 2.9.1 fixes oversampling that was broken in 2.9.0 Version 2.9.1 fix MBT2/MBT3/SLIC3 tuner for unity gain (was -9 to -6 dB) Version 2.9.3 fix SHARC "not responding" problem with internal algorithms Version 2.9.4 fix timecode start-up problem using multiple chips on an MBT Version 2.9.5 fix timecode calibration when using oversampling Version 2.9.8 fix decimation limiting calculations when using oversampling Version 2.9.8 fix external triggering problem on MBT3s Version 2.9.9 handles new /etc/rc.d/init.d locations for Linux driver Version 2.9.9 fix occasional garbled tuner startup problem with OVSR>1 Version 3.0.0 fix one sample delay when master/slaving an input to an output Version 3.0.0 fix PIC3T tuner filters on Solaris (Big Endian platforms) Version 3.0.3 add locks&barriers in OSF driver for pre-emptive kernel (Affects 4000,4100,+?) (Thanks to Dave Podany for this revelation) Version 3.0.3 fix PICDRIVER call to PIC_TIMER function Version 3.0.7 fix problem with timecode when using the ALT flag Version 3.0.7 fixed PIC PFAT with IOM!=NONE for in the field GO/NOGO test Version 3.0.7 fixed MBT3 sample slip on tuner chan 1-8 under heavy loading Version 3.0.7 fixed multiple sharc/module code download Big Endian problems Version 3.0.7 fixed MBT3 tuner restart gain bug with OVSR>0, SR<10e6, and wideband. Version 3.0.8 fixed PIC4T tuner gain >= 18 problem Version 3.0.8 fixed "==" bugs in Linux driver script Version 3.0.8 fixed OVSR gain adjustment factors Version 3.0.8 fixed POVSR input rate issues. Version 3.0.8 fixed RGO flag issues for multichannel tuner start synchronization. Version 3.0.8 fixed synchronization bug in output modes with rates < 1e6 Version 3.0.8x fixed master/slave stop synchronization problem in SINKPIC Version 3.0.8x fixed bad bug in timecode of non-tuner data on PIC4T Version 3.0.9 fix buffer allocation algorithm for 64bit transfer cases Version 3.0.9 setkey now provides status of execution Version 3.0.9 fixed bug in Archive length calc if rate changed after startup Version 3.0.9 fix complex output on PIC4 Version 3.0.9 fix CPC!=4 with OVSR>1 frequency change problems on PIC4 Version 3.0.9 fix PIC4 tuner restart while wideband is active Version 3.1.0 fix TC=CPU with tuners and packet headers offsets Version 3.1.0 compensate for default tuner filter gains (~1dB) in PIC4T Version 3.1.1 fix noise problem when running tuners on PIC4T output channel Version 3.1.1 fix VMS 7.3 long node/lock name problems Version 3.1.1 fix MBT2/MBT3 TC offset when starting chns 1-8 after 9-24 Version 3.1.2 fix LINUX/WIN driver cleanup problems in multithreaded env Version 3.1.2 addition fix for above fix if restart tuner 1-8 while 9-24 is running Version 3.1.2 add automatic PIC4 clock edge adjustments for sample rates > 50MHz Version 3.1.2 loads IOC code in manner respective of PCI EPROM rev to avoid intermittent issues Version 3.1.3 fix data buffer sync when using mux module3 with sample rate < 10kHz Version 3.1.3 fix ITDEC with CPC=2 problem on PIC4 and MBT4 Version 3.1.3 fix calibration PIC4/MBT4 Timecode with CPC!=4 and/or POVSR Version 3.1.3 add driver mods for Linux 2.4.20 kernel changes (RedHat90/Suse82) Version 3.1.3 add auto Master/Slave clock edge select to better handle clock skew Version 3.1.3 adds conditionals for driver header file changes in OSF 5.1B+ Version 3.1.3 adds conditionals for headers.h changes in X-Midas 380 Version 3.1.3x fix SDN time code BCD errs when input sample rate < 200kHz Version 3.1.3x fix missing return compile errs in 313 Version 3.1.3x fix clock phase calibration and reset current surge on MBT4 Version 3.1.3z accept new Xilinx chip revs on MBT4s Version 3.1.4 revamp output code for 100MHz output and VHS for 220Mby/sec Version 3.1.4 fix timecode startup issues on MBT4 using > 8 channels Version 3.1.4 clock invert now works in any configuration on all cards Version 3.1.4 fix IOC timing calibrations to support SDDS 45/55 duty cycle Version 3.1.4 allow more than 26 devices per card on OSF (max is now 40) Version 3.1.4 fix FPGA ram read race condition on series-3 cards causing time code anomalies Version 3.1.4 fix PIC4T problem with low data rate, multiple channel start/stop using ITDEC Version 3.1.4 adds check in Linux driver for driver interface changes in Linux kernels >= 2.4.20 Version 3.1.4z fixes IRIG-B time code broken in 3.1.4 release Version 3.1.5 fix TC startup issues on PIC4/MBT4 with CPC=2 in ITDEC mode Version 3.1.5 fix TC startup issues on PIC4/MBT4 at low input rates (~1Mhz) in ITDEC mode Version 3.1.6 fix data corruption on PIC4/MBT4 tuner channels at high temp (yet another SHARC anomaly) Version 3.1.6 change VMS driver build and connect switches for VMS 7.3.2 compatibility Version 3.1.6 fix bugs when using tuners with IRIG-B timecode causing DMA stalls and NOBITS errors Version 3.1.6 fix SOURCEPIC problem chaining more than 2 master/slave instances Version 3.1.6 fix timecode on start/stop wideband while narrow bands are running Version 3.1.6 fix numerous startup/reconnect glitch issues when using ITDEC on PIC4T/MBT4 Version 3.1.6 fix 2-sample startup timecode anomaly when not using ITDEC on PIC4T while WideBand running Version 3.1.6 strip SDDS parity packets in RXICESDDS data mode and fix join/leave hangups Version 3.1.7 better handling of tag bits on PIC4/MBT4 in ITDEC mode to minimize tuner's DC spur Version 3.1.7 fix lock problem when setting resampler ratio and/or loading filters on GC from multiple threads Version 3.1.7 fix IRIG-B resync problem if IRIG signal is bogus for a while. Version 3.1.7 fix Tuner OVSR with SDDS Input modules. Version 3.1.7 fix Tuner Freq change with CPC<4 at low sample rates. Version 3.1.7 fix playback card hang due to non-8-byte-aligned block transfers Version 3.1.7 fix CPC=2 and CPC=1 multichannel startup phase problems on MBT4 Version 3.1.8 fix gain compensation for user filters in GC4016s Version 3.1.8 remove dependence on 1ms TimeCode flag in SDDS packets Version 3.1.8 fix SDDS TimeCode calibrations on Tuner channels Version 3.1.8 fix RealTime Archive through message startup problem in SOURCEPIC Version 3.1.8 fix TC 1 in 1.9076 million counter error (causes 1M sample error) Version 3.1.8 fix race condition in DMA_RESET with multiple tuner start/stop causing hangs Version 3.1.8 fix data/control interaction integrity problems on MBT4 and MBT4X Version 3.1.8 fix race condition in tuner+wideband startup with SDDS modules Version 3.1.8 fix fifo overrun when SDDS packets are bursted (faster than RealTime) to card Version 3.1.8 fix calibration of 1PPS signal in timecode (A2Ds have 4 sample pipeline delay) Version 3.1.8 fix X-Midas SOURCEPIC was not setting the TimeCode Mode in the ice packets Version 3.1.8 fix SOURCEPIC to adjust timecode year at ray day (DR 500234-3) Version 3.1.8 added int_u8 defines in icedefs.h for newer X-Midas builds Version 3.1.8 add /STATS function to X-Midas SINKPIC (was only in NeXtMidas version) Version 3.1.9 fix packed nibble SDDS modes on PIC5 Version 3.1.9 fix PICDRIVER not heeding timeout when /TC= switch is also applied Version 3.1.9 update SNAPPER macro for proper remoting in newer browsers Version 3.1.9 SDDS module will now resend JOINS every 2 seconds if no data is received Version 3.1.9 fixes bogus initial timecode if no input clock is present at start of acquisition Version 3.1.9 fixes problems setting up MUXCLK=P when using PREFX on series 4 cards Version 3.1.9 getkey on KEY_ACTIVE now returns -2 if locked instead of clearing lock Version 3.1.9 fix LSB rounding error in PIC5 tuner's 32 bit frequency register Version 3.1.9 fix warning messages in Linux 2.6+ drivers Version 3.1.9 fix sourcepic Master/Slave misalign error without /SYNCDATA switch Version 3.1.9X fix SINKPIC indexing error at end of file when /WRAP is used Version 3.1.9X fix 8-bit SDDS data to SI reformat FIFO overrun problem on PIC4/MBT4 Version 3.1.9X fix SDN timecode in SDDS packets processing on PIC5 Version 3.1.9X fix return status of pic_send and pic_recv calls Version 3.2.0 fix PIC5 rounding of 8b/16b tuner output Version 3.2.0 fix PIC5 SoC Version corruption on fast machines using gcc with optimization -O3 Version 3.2.0 fix PIC5 PCI data hiccup on DL385 (AMD PCI chipset) Version 3.2.0 fix CPU0P/XP timecode modes on PIC4/MBT4 with VHS flag enabled Version 3.2.0 fix code to compile on VMS without warnings Version 3.2.0 fix 100Mby/sec SDDS modes on 4 series cards Version 3.2.0 fix Xilinx reprogram problem (erratic behavior) on Processor Modules with high density cores Version 3.2.1 fix PIC5 DDR drive strength data integrity problem Version 3.3.6 fix PIC4 Tuners 3&4 with CPC=2 without ITDEC Version 3.3.6 fix sinkpic of very small files (inefficient loop) Version 3.3.8 fix PIC5 DDR drive strength data integrity problem Version 3.3.9 fix PIC6 errant AHIR read value Version 3.3.9 fix DTDMX data integrity problems under heavy FPGA loading Version 3.3.9 fix Xmidas sourcepic archive problem introduced with ice320 TBANK mods Version 3.4.0 fix all PIC5/PIC6 problems listed in 3.3.6 WHAT_MIGHT_BREAK section Version 3.4.2 fix corruption of PKTHDR debug buffer when using timecode Version 3.4.2 fix PIC6 no recognition on cold boot Version 3.5.0 fix control of correct RF module when using the INP=x flag Version 3.5.0 fix restart of TBANK ports Version 3.5.0 fix RFXD synthesizer setup Version 3.5.0 fix timecode of non-standard CB and CI formats in SDDS packets Version 3.5.0 adds 16K internal BRAM cache for DDR memory Version 3.5.6 fix timecode when using presampler direct output using multiple OVSRs Version 3.6.1 fix nextmidas sourcepic to readback actual freq not desired freq Version 3.6.1 fix PCI express logic on direct-connect SandyBridge and ARM platforms Version 3.6.1-02 fix NTP Err calculation when using resampling in tuner Version 3.6.1-03 fix PKT.TCOFF rollover problem in XMidas sourcepic (~3 days @ 1250MHz) Version 3.6.1-07 fix readback of actual frequency from sourcepic running tuner banks Version 3.6.1-11 fix autoswap of SGO|RGO when using INP=x Version 3.6.1-16 fix D2AWG trigger startup glitch and reset tone Version 3.6.1-16 fix X-Midas sourcepic tuner bank timecode offset (broken by 361-03 fix) Version 3.6.1-17 fix X-Midas picdriver timecode insertion (broken by ice359) Version 3.6.1-17 fix gain problem on femto 2.5s Version 3.7.0 fix SINKPIC ONDEMAND throttle issue with RAM files > 2 Gby Version 3.7.1-05 add clock invert for bit-packed input mode on PIC5/PIC6 cards (_dd only) Version 3.7.2 allows format change on output COREs Version 3.9.0 fix output problems after running PI TEST/SPEC
WHAT_MIGHT_BREAK_ALL - Possible gotchas (all previous releases)
Version 2.1.5 and later does not support the ICE-PIC1 or ICE-NBT cards Version 2.3.6 changed the /RATE switch to /SRATE on PICDRIVER and SOURCEPIC to help avoid macro conflicts Version 2.4.4 folded the PICEXTRACT functions into the PICFUNC primitive Version 2.6.6 obsoleted the ALT, DUAL, and SINGLE flags Version 2.7.0 The build scripts in the ./test area now build the libice.so shared object library that is suitable for M2K apps. The old name was libm2ice.so . Linkage scripts will need to change. Version 2.8.3 On OSF will need to load the new drivers in this version !!! Version 2.9.1 MBT2/MBT3/SLIC3 tuner is now unity gain (was -9 to -6 dB) Version 2.9.7 is one sample off on byte and bit data (don't use it) Version 3.0.6 _iiv IOC files disappear - VHS modes now in standard downloads. Version 3.0.6 has new tests for PIC4, PIC4 FIFO test will not work with pre306 releases. Version 3.0.8 has new widgets on SOURCEPIC and SINKPIC for status monitoring. In SOURCEPIC, they were placed ahead of the ALG and ALG ARG since there are a variable number of args. Any macros using the ALG as a widget will need to fix the offset. Version 3.0.8 Linux driver uses new PCI interface for 2.4 kernels. Older kernels may need to use the .pre24 files in the driver directory. Version 3.0.9 Linux driver implements mmap() interface to replace /dev/mem in the mmap calls. A link /dev/pmem is made to /dev/icepic0 so X-Midas libraries can reference pmem and point it to /dev/mem when there are no ice cards in the system. If /dev/pmem is a real device on your system, let us know. Version 3.1.2 Now initializes PICSTRUCT to zero in pic_open(). If this was not allocated correctly, an access violation may occur. Version 3.1.5 now has documentation in ice/docs instead of /docs/htm Version 3.1.5 removed fastio.inc support for X-Midas because there was no way to make the pointers both pre and post 4.0.0 compatible Version 3.1.8 changed default throttle rate to rate/8 instead of 10000Hz in SINKPIC Version 3.1.8 changed delta in ramfile to reflect resampler ratio in PICDRIVER and SOURCEPIC. This affects what the primitive calculates to be the desired input data rate. Previously, only the decimation was reflected in the ramfile. Version 3.1.8 changed address of RSTIME keys (different than 318bXX), PSM daemon must be recompiled. Version 3.1.9 pic RESET only reloads FPGA code when needed, use FORCE flag for old behavior Version 3.2.0 The DMAMAP struct now has 64bit fields. User C/Fortran code may need casts to compile and run properly. Version 3.2.0 Now getKey TYPE and PMTYPE must be used to determine card/processor module combos. No more TYPE=11. Version 3.3.6 PIC5+ cards don't handle SDN embedded timecode in SDDS packets, 4-bit SDDS data, or 1 bit data Version 3.4.0 Snapper MAXFS is now in bytes for tighter shutoff control. Use to be in Gigabytes. Version 3.5.4 pic_dmaxfer and pic_dmaxptr have different return status values Version 3.6.1 moves all snapapp table files from mcr to tbl subdirectory and test macros from mcr to fat Version 3.6.1-05 sourcepic channel numbers are now 1-based to match XMidas and ICE libraries