Technical Document #80

Technical Document #80        [Product Version: 6.2.3 and below]
I have a PLX 9050 card, but I cannot access the card's memory with WinDriver's PLX 9050 diagnostics utility. I am using the P9050_Read/WriteXXX() functions.

When using WinDriver's sample P9050_Read/WriteXXX() functions, you must set the values of the re-map register in the p9050_lib.c file (this depends on your hardware). The card may hang if the wait-states are not set correctly.

Since many developers are not aware of this feature, and they prefer to set the re-map register in the EEPROM init (when the computer is turned on), beginning with version 3.0.3 of WinDriver we have added new functions to the PLX 9050 library, which access the PLX 9050 card's address ranges without changing the re-map register. These functions are P9050_ReadSpaceByte() and friends. When using a WinDriver version 3.0.3 and higher, you can use these functions by selecting to "Access address spaces on the board" instead of selecting to "Access local address ranges on the board" from the main menu of the WinDriver PLX 9050 diagnostics utility.
This option uses P9050_ReadSpaceByte() and the similar Read/Write Space functions, instead of the "regular" P9050_ReadByte() (and similar) functions. The "regular" P9050 Read/Write function first set the re-map register, then call the relevant Read/Write Space function (e.g., P9050_ReadByte() calls P9050_ReadSpaceByte()).

If you do not want WinDriver to set the re-map register, but prefer a low-level access (like DriverWizard and PLX-MON do), call the Read/Write Space functions (like P9050_ReadSpaceByte()).