Mercury Remote Diagnostics Manager
   Mercury Remote Diagnostics is a stand-alone service which collects failure information
from Intellitech testers (and SystemBIST) over a network and creates failure reports by serial number, date and time.  Tester throughput is unaffected by the length of time diagnostics may take.

-PCI drivers no longer required for MRDM to run
-Added the MRDM Launcher application to the install of MRDM for controlling the starting and stopping of the MRDM and its settings
-MRDM Launcher will setup MRDM as a service.
-Added ability to stop and start MRDM service from the tray icon - previously had to use Start menu shortcut and Task Manager to kill the process
-Added settings dialog to control MRDM service from tray icon - previously had to edit mrdm_settings.ini by hand
-MRDM now finds, copies, and unpacks appropriate archive for the synchronized EDTF files it finds, previously it operated from a simple static test directory
- MRDM searches for and can process .sbf failure files from an UltraTAP-BT. Requires archive with a .tst file.

UltraTAP-BT – Add BOST (Built-off self-test) to your products.  UltraTAP-BT is a small USB drive sized pod which rides with your PCB enabling test without a PC. MRDM collects failure information over Bluetooth and processes it into failure report files.
-added script commands for control of UltraTAP-BT over Bluetooth wireless
setBT - send commands to write registers or start tests
getBT - get contents of UltraTAP-BT status registers (failure code, pass, fail etc)
getBTFailures - gets the failure report from an UltraTAP-BT and saves to a file - use extension .sbf
MRDM searches for and can process .sbf files from an UltraTAP-BT. Requires archive with a .tst file.

IJTAG support:
Tcl Methods added:
iRead (similar to getUUT)
iWrite (similar to setUUT)
iApply (similar to DRScan)
iScope (similar to setHierarchy)

Interconnect Test generation
-fixed  package problems related to 1149.6 support
- Generate SVF output compatible with 1149.6 driver/receivers and diagnostic engine
-Improved consistency of messages

-Added Download via FAC feature for SB1AC1 with complete readback verification after programming
-Added support for SystemBIST 128bit customer keys implemented with License feature SYSTEMBIST-SBKEY1, SYSTEMBIST-SBKEY2, ...SYSTEMBIST-SBKEY<n>
-Added generation of incremental image with embedded commands for use with the SPI interface of the SystemBIST
-added support for SystemBIST unique identifier, customer code and CM codes
-added SystemBIST image updates with customer key protection
-running systembist prompts user to Open a project instead of create
-Added ability to abort from a test run by clicking Escape
-added systembist validate tab and changed "view" tab to "generate"
-added function to Execute Test Suites and obtain pass/fail/test code results to the Generate TAB
-TAP voltage is automatically turned on and set to 3.3 Volts prior to a test suite run (all SystemBIST are 3.3V interface)
-added systembist chip reset function to Generate TAB
-added status function to check the pass/fail status of a systembist you are connected to
-fixed bug in writeEOT() in which call to writeBuffer set
endCompression TRUE, which is incorrect for the end of test packet use.  This
packet would not fall at the end of a test sequence (as the Test Done packet
-added support for .pof and .bit files to be compiled into SBI as parallel programming packets - still needs file filters added to TAC.
-embedded codes now start at 0x10 (17) rather than 0x8 supporting new SystemBIST codes for failures in programming FPGAs via parallel interface

EXTEST Flash/Memory Programming/Testing:
-improved erase speed for flash with non-uniform sector sizes
-Allow for 1 scan read sequences to improve speed
-improved file I/O buffering efficiency
-improved overall efficiency of variable lookups providing from 200 to 400% speedup in
Read operations, i.e. BlankCheck, Verify, Save
-added better progress indication with a percent complete printout as programming proceeds
-improved memoryTest address pins fault diagnostics
-fixed memoryVerify to display address and data with proper field
width based on address bus size and data bus size
fixed message "done. Finished programming... to remove extra '.'
-unlock/lock support is checked for now and unlock is selected by default for the user when necessary
-Improved flash blank check messaging - addresses are now displayed in byte-address format with appropriate field widths
-Added support for .s19 file format
-Added automatic setting of correct endianness based on file type - Motorola s-record/s19/.s default to Big Endian
-changed s-record files to do an endian swap
-fixed failure of unlock on an unlockall call
-fixed message indicating unlock when a lock function was executing
-Added status messages to report run times for individual operations of Flash programming i.e. Erase, Blank Check, Program, Verify
-improved memory management to decrease memory consumption during flash programming runs
-eliminated increasing memory usage during repetitive flash/memory testing or programming
-added support for deviceID<N> allowing for multiple Flash device IDs
  as in AMD-am29DL640D
-applyToMemory can now perform all operations in one call rather than having to
make multiple calls as a workaround to number of argument limits

-Added Projects Tab
-Moved Internal Tab to last Tab of the options dialog.

-added setting to select "Use Eclipse Projects" and specify and projects directory in Options
-added dialogs, menus and buttons to support Projects and Archives
-added version notes feature to Archives
-added unpacking of an Archive to a project
-added saving of a project to an archive
-added creation and saving of default.ise to the new project creation
-Eclipse now opens default.ise if found in a project folder

Eclipse/Nebula WGL support:
-Bugfix: fixed printStateInfo to properly display scans in Status
Window with last bit prepended rather than appended.
-Added display of expected and actual TDO.
-multiple vectors that hold tap state in a runtest state now compile
to one runtest packet for faster execution instead of an individual single-step
tms packet.

Eclipse Test Development Environment
-compiling SVFs is 15 times faster due to improvements in data organization in algorithms.
-Eclipse Parallel Port will stay open even if no Parallel Port is detected, allowing the user to develop tests on PCs without parallel printer ports.
-Intellitech Hardware revision now displayed on detection.
-Improved the placement of popup dialogs for smoother working flow
-Improved memory model access speed in tool
-Improved protection against user creating accidental comparisons on IR Scans
-fixed crash when applying svf on tap 1
-Added support for FAC Programming via FlashJETT for serial and parallel Spansion flash on UltraTAP and PT100 with concurrent RDY/BSY support
-Added Flash ID and Blank Check functions to FAC programmer

Menu Organization:
-Development Menu now has Cadence Concept PST To Edif translator dialog
-Eclipse Test Development menu is shortened to "Development"
-Eclipse Test Application menu is shortened to "Apply"
-When "Use Eclipse Projects" is selected in options, File Menu has new Project Options:
  Create Project
  Set Project
  Save project to Archive
  Load Project Settings
  Save Project Settings
-Added Netlist Translation feature to the Tools Menu
-Eclipse SystemBIST window is moved from Tools menu to a menu item under Development.


Eclipse and Scan Executive General:
-added Tcl command support for Measurement Computing USB Relays:
  int cbDBitIn(int boardNum, int bitNum)
  int flashLED(int boardNum)
  int cbDBitOut(int boardNum, int bitNum, int offOn)
  int cbDOut(int boardNum, char * portName, unsigned short int dataValue)
  int cbDIn(int boardNum, char * portName)
  int setMCCBoardPorts(int boardNum, int bits, char* portNames)
  int setMCCBoardBits(int boardNum, char * bitList, char * offOn)
-Eclipse and Scan Executive now can be run as power users in Windows XP
-added Tcl command "spit" as a short-cut to the verifyscanpathall command
-serialnumbered EDTF files are now time-stamped with test run date and time
-fixed bug in setting binary values with b’  which was confused with ‘bypass’
-added Tcl command setValueAtPinExp to set expected values on pins
-Added restoration to the hardware frequency to the software value
after svf application in case it changed inside the SVF.
-Fixed bug found when Instatest NOMASK vectors were broken up due to
size (> ~16mil bits) after the first packet, the remaining packets were not
checked for NOMASK, therefore the number of databytes calculation was incorrect.
(data x3 was being used, as if mask and exp were present)...which is not the
case with NOMASK.
-Added null pointer protections in Tcl_getStringFromObj where slp was crashing
-improved messaging to give user steps to recover with software when it appears hardware is not responding. Messages were indicating that hardware was bad when often a software restart was required.
-fixed numerous PCI driver timeout problems
-fixed the intermittent "last word not received (even though it was)"" bug in National Instrument PCI driver routines. This was resulting in the reporting of a FALSE Hardware communication error once every 3000 to 5000 iterations on a cycling PT100 test.
-added execution of serialentry.tcl if present in C:\Intellitech for each serial number entered into GUI – this is in addition to use of the serial.tcl validation script that can validate all serial numbers when start button is pressed.
-fixed bug with properly calculating the input buffer length when
compiling SVF for Instatest with large SDRs that need to be split up into
multiple scan packets
-Options are now saved when user clicks OK. Previously one had to wait until program exit to have the values saved.
-Pinfault diagnostics are now run automatically if BSID is specified but no license is present
-Users can no longer override hardware in Scan Executive.  This prevents novices from
Playing with this setting which only has value for our software test team
-Programming is done and Tests are run using a Test workspace folder for the generation of all intermediate files that are local. This allows multiple Intellitech software stations to point to one network test folder and the intermediate files generated during software operation will not cause conflicts during test application.
-added the setting of the 'disable return addressing' option to
automatically be set when using a 'Compile For' operation for SVF compilation.
This will allow users to compile the SVF without being connected physically to a
Scanbridge device.  Previously if you were unable to address the scanbridge then
the path would not get turned on and the header and trailer bits would not get
compiled into the SOF/INST file as desired.
-Infineon XC866 microcontrollers added to Intellitech’s on-chip programming support Infineon XC866 on-chip programming
- NEC V850ES microcontrollers added to Intellitech’s on-chip programming support NEC V850ES Microcontroller
-skipping hdr/tdr for FPGA SVFs.  FPGA tools have changed over the years and the common flow now is that FPGA SVF’s have HDR/TDR in the SVF which are just stripped by Eclipse to enable use of Eclipse hdr/tdrs.
-removed popup design warning when compiling Xilinx FPGAs
-removed Xilinx check from svf compilation
-frequency command in Xilinx FPGAs is ignored allowing user’s TCK setting to be used
-Added limited licensing support for new instructions FAC_SETUP_SCAN, FAC_SCAN, WRITE_SPI_OS, FAC_SETUP, FAC
-Increased size of Hardware control window
-Only allow SRL specified as a DBS when compiling into a larger database
-Added support for the SCANSTA112 device
- added SCANSTA112 instruction register scan to load BYPASS into the SCANSTA
device after turning on the LSPs.  Rather than UNPARK being the last instruction
loaded.  (this was done as a fix for Altera FPGA programming, which requires all
devices be in BYPASS in the scan chain)
-Eclipse now has Cadence PST to Edif translator tool
-improved memory management
-added support to setDIO for default HIGH-Z on all signals.
Users can call the following:
setDIO 1010
rather than

Scan Executive:
-Scan Executive Parallel Port version now available
-PT100 window displays abort correctly now when problems are encountered during a tcl script syntax (or other) error.
-There is a user field in the status bar now that can be written during tests with the setUserBar "message" command
-PT100/PT100Pro: serial.tcl executed if found to validate serial numbers, posttest.tcl executed at end of test if found. Serial.tcl can be written with functions for setting status in Pt100 dialog to alert operator that serial number was rejected and to edit/re-enter.
-PT100:  if autoload.tcl file detected, it is executed when the autodetect button is pressed by the operator, potentially performing other actions such as loading a test based on a condition determined in the script.
-added Tcl commands for extracting failing test codes at conclusion of PT100 test and managing and displaying operator readable test code tags. These can be displayed in the PT100 display window for operator triage.
-getUUT returns expected value if set, X's otherwise during PT100 run
-Added the Remote Diagnostics Tab to the Options for specifying MRDM settings and turning on Remote Diagnostics Mode. This detects an operating MRDM that is monitoring the share folder specified.
-StatusBar is now pinned to all windows of Scan Executive and not
focus-dependent on the Testing Control Window
-Added resetStatusBarPassFail Tcl command to clear the pass/fail/yield on the status bar

Model Changes/Fixes:

  Changed wait times. Erase:1.2seconds for 128k sectors, Program:125us
for 65nm technology (planned), Read time 110ns for 65nm technology (tsop) wdt
  changed wait times to match spec.  128K blocks have wait time of 1.2
seconds for erase.  32K blocks only have 400ms.  original model had 400ms for
each block.  we need to take the longest one, 1.2 seconds.  also changed program
time and read time to mach 65 nm technology change.  Spec recommended that any
new design use the timing for 65 nm technology
  Changed erase sec/chip wait times.  needed to increase wait times.
Erase was not functioning correctly due to software moving ahead too rapidly.
BA for extended mode register was set wrong in previous alg files.
should be set to 0x2  for extended mode register.  Fixing the BA value has
fixed a reported problem by customer.