What are the software differences between Acromag and Greenspring VME carriers?

There are a few differences between the Acromag and GreenSpring VME carriers. The GreenSpring carriers (VIPC616 or VIPC-618) can use either A24 or A32 address, but normally uses A32 addressing. The Acromag VME carriers (AVME9630 or AVME9660) can only use A24 addressing. To switch carriers you must change the initialization calls BusTools_API_InitExtended. When you do this, you need to consider how differences in A24 and A32 addressing affect the base address of the board. A24 addresses only 16 megabyte of memory, while A32 has about 4 gigabytes of addressable memory. If you have an IP-D1553 on an Acromag carrier, you need to set the base address to even 4-megabyte boundary (0x0, 0x400000, 0x800000, or 0xc00000). The GreenSpring carrier has a base address of 0xd0000000 for NI-VXI systems or 0x08000000 for VxWorks systems. The following show the format of the BusTools_API_InitExtended call for both the GreenSpring and Acromag carriers :

IP-1553 or IP-D1553 on a GreenSring carrier (A32) using NI-VXI
status = BusTools_API_InitExtended(0, 0xd0000000 0x6000,
         &pwflag, PLATFORM_USER, IP1553, VIPC616_618, 
         SLOT_A, (BT_UNIT)"BTVXIMAP.DLL");
         // this is for IP in slot a/b
 
status = BusTools_API_InitExtended(0, 0xd0000000 0x6000, 
         &pwflag,  PLATFORM_USER, IPD1553, VIPC616_618, 
         SLOT_C, (BT_UNIT)"BTVXIMAP.DLL"); 
         // this is for the IP in slot c/d.
IP-1553 on a Acromag carrier (A24) using NI-VXI
status = BusTools_API_InitExtended(cardnum, 0x600000 0x6000, 
         &pwflag, PLATFORM_USER, IP1553, AVME9660, 
         SLOT_A, (BT_UNIT)"BTVXIMAP.DLL");  
         // this is for IP in slot a/b

status = BusTools_API_InitExtended(cardnum, 0x600000 0x6000, 
         &pwflag, PLATFORM_USER, IP1553, AVME9660, 
         SLOT_A, (BT_UNIT)"BTVXIMAP.DLL"); 
         // this is for IP in slot c/d
The following examples show how you call the BusTools_API_InitExtended for the IP-1553 and IP-D1553 when running with VxWorks:

IP-1553 or IP-D1553 on a GreenSring carrier (A32) using VxWorks
status = BusTools_API_InitExtended(cardnum,0x08000000,0x6000, &pwFlag, 
                                                             PLATFORM_VME,IPD1553, VIPC616_618, 
                                                             channel, CARRIER_MAP_A32);

status = BusTools_API_InitExtended(cardnum,0x08000000,0x6000,&pwFlag, 
                                                             PLATFORM_VME,IP1553,VIPC616_618,
                                                             channel,CARRIER_MAP_A32);
IP-1553 or IP-D1553 on a Acromag carrier (A24) using VxWorks
status = BusTools_API_InitExtended(cardnum,0xC00000,0x6000,&pwFlag,   
                                                             PLATFORM_VME, IP1553,AVME9660,
                                                             channel,CARRIER_MAP_A24);

status = BusTools_API_InitExtended(cardnum,0x400000,0x6000,&pwFlag, 
                                                             PLATFORM_VME,IPD1553,AVME9660,
                                                             channel,CARRIER_MAP_A24);

These initialization calls represent the factory default setting for the A16 and A24/A32 address space. The A16 base address is jumper-selectable on both the GreenSpring and Acromag carriers. If the jumpers are changed, you need to use this new setting in place of the 0x6000. The Acromag carrier has a programmable A24 address so there is no need to change jumpers if you want a different A24 base address. Both the A16 and A24/A32 addresses passed in the call to BusTools_API_InitExtended must match the setting in the NI-VXI setup.