
Programming the Board
Gathering information from the card
(c) Spectrum Instrumentation GmbH
67
not need this information but if you have a support question, please provide us with this information. Please note that number of devices and
hence the readable firmware information is card series dependent:
Cards that do provide a golden recovery image for the main control FPGA, the currently booted firmware can additionally read out:
Production date
This register informs you about the production date, which is returned as one 32 bit long word. The lower word is holding the information
about the year, while the upper word informs about the week of the year.
The following example shows how to read out a date and how to interpret the value:
Last calibration date (analog cards only)
This register informs you about the date of the last factory calibration. When receiving a new card this date is similar to the delivery date
when the production calibration is done. When returning the card to calibration this information is updated. This date is not updated when
just doing an on-board calibration by the user. The date is returned as one 32 bit long word. The lower word is holding the information about
the year, while the upper word informs about the week of the year.
Table 14: Spectrum API: Register overview of firmware versions
Register
Value
Direction
Description
Available for
M2i
M3i
M4i
M4x
M2p
SPCM_FW_CTRL
210000
read
Main control FPGA version: the upper 16 bit show the firmware type, the
lower 16 bit show the firmware version. For the standard release firm
-
ware, the type has always a value of 1.
X
X
X
X
X
SPCM_FW_CTRL_GOLDEN
210001
read
Main control FPGA golden version: the upper 16 bit show the firmware
type, the lower 16 bit show the firmware version. For the golden (recov
-
ery) firmware, the type has always a value of 2.
—
—
X
X
X
SPCM_FW_CLOCK
210010
read
Clock distribution version: the upper 16 bit show the firmware type, the
lower 16 bit show the firmware version. For the standard release firm
-
ware, the type has always a value of 1.
X
—
—
—
—
SPCM_FW_CONFIG
210020
read
Configuration controller version: the upper 16 bit show the firmware type,
the lower 16 bit show the firmware version. For the standard release firm
-
ware, the type has always a value of 1.
X
X
—
—
—
SPCM_FW_MODULEA
210030
read
Front-end module A version: the upper 16 bit show the firmware type, the
lower 16 bit show the firmware version. For the standard release firm
-
ware, the type has always a value of 1.
X
X
X
X
X
SPCM_FW_MODULEB
210031
read
Front-end module B version: the upper 16 bit show the firmware type, the
lower 16 bit show the firmware version. For the standard release firm
-
ware, the type has always a value of 1.
The version is zero if no second front-end module is installed on the card.
X
—
—
—
X
SPCM_FW_MODEXTRA
210050
read
Extension module (Star-Hub) version: the upper 16 bit show the firmware
type, the lower 16 bit show the firmware version. For the standard
release firmware, the type has always a value of 1.
The version is zero if no sextension module is installed on the card.
X
X
X
—
X
SPCM_FW_POWER
210060
read
Power controller version: the upper 16 bit show the firmware type, the
lower 16 bit show the firmware version. For the standard release firm
-
ware, the type has always a value of 1.
—
—
X
X
X
Table 15: Spectrum API: Register overview of reading current firmware
Register
Value
Direction
Description
M2i
M3i
M4i
M4x
M2p
SPCM_FW_CTRL_ACTIVE
210002
read
Cards that do provide a golden (recovery) fiwmware additionally have a
register to read out the version information of the currently loaded firm
-
ware version string, do determine if it is standard or golden.
The hexadecimal 32bit format is: TVVVUUUUh
T: the currently booted type (1: standard, 2: golden)
V: the version
U: unused, in production versions always zero
—
—
X
X
X
Register
Value
Direction
Description
SPC_PCIDATE
2020
read
Production date: week in bits 31 to 16, year in bits 15 to 0
spcm_dwGetParam_i32 (hDrv, SPC_PCIDATE, &lProdDate);
printf ("Production: week &d of year &d\n“, (lProdDate >> 16) & 0xffff, lProdDate & 0xffff);
Register
Value
Direction
Description
SPC_CALIBDATE
2025
read
Last calibration date: week in bit 31 to 16, year in bit 15 to 0
Summary of Contents for M2p.59 Series
Page 190: ......