CERN Trajectory
Measurement System
Release Notes
Release 1.2.3 - 2007-12-10
- Modified the data fetch system to fetch data from the start of
the next FREF period just after the CAL_START, INJECTION and HCHANGE
events. Previously the system would return data from the next
millisecond period.
- The TmsPuServer program would occassionly crash when a getStatus call was made during a setNextCycle call. This has been fixed.
- The internal communications timeout as been lowered
to 2 seconds. External timouts can be set by using the setTimeout()
call on the BOAP client communications objects (TmsProcess and
TmsControl).
- The getData() call now sets returned parameters to 0 in the event of an error being returned.
- Added the ability to set the TMS system into simulation mode
using a single API call, setSimulation and added a getSimulation call
to get the simulation status.
- Changed the name of the limitData parameter in the DataInfo
class to beyondData. The operation has been changed so that setting
this parameter to 0, the default, limits the data to the period
required.
- Changed the name of the captureTestData() function to captureDiagnostics().
The Tms-fpga package has been updated to 1.2.3. The FPGA firmware changes include:
- The FPGA now stores the DataTable pointer in the Cycle Information table.
- The CAL_START event is delayed until the next FREF period as per the INJECTION and HCHANGE events.
Release 1.2.2 - 2007-11-26
- Added support for second System Controller on live system.
- Fixed Cycle Parameter generation system to support multiple injection events.
The Tms-fpga 1.2.1 package has been updated. The FPGA firmware changes include:
- The FPGA now loads the PLL_FREQUENCY on CYCLE_START as well as after the PLL_FREQDELAY.
Release 1.2.1 - 2007-11-14
- Adds the ability to view the raw State/Phase table's generated in the TmsControlGui program.
Release 1.2.0 - 2007-11-08
- Added tmsBackup utility
- Fixed a few bugs in the state table generation system.
- Changed the phase orientation in the phase tables so that a +ve phase value generates a lag in the waveform.
- Increased the bit width diagnostics Post Trigger delay parameter to 32bits.
The FPGA firmware changes include:
- Increased the bit width diagnostics Post Trigger delay parameter to 32bits.
- Fixed a bug where SDRAM data writes could get currupted when a large amount of data was being read from the system.
Release 1.1.0 - Preliminary
This is a new release with improvements following the full system installation.
- The Cycle Parameter information has been updated with the
additional pllCycleStartFrequency field. This defines the PLL's
frequency which is loaded on CYCLE_START. This setting is entended to
set the initial PLL frequency for a calibration period.
- The Cycle Parameter information has been updated with the
bunchMask field. This bitmap defines in which RF bucket's the bunches
to be captured lie. bit 0 of this bit mask defines bucket 1 etc.
- The orientation of the bunchMask, Mean0Mask and Mean1Mask have been reversed so that bucket 1 is bit 0.
- The system can now handle multiple injection events. The cycle
periods are now named CyclePeriodEvent* rather than CyclePeriodHarmonic
to reflect this.
- The system now has an improved BunchMean system. This calculates
the mean of up to 24 individual bunches during data capture as well as
the overal mean for all bunches. The additional DataInfo function
setting of DataFunctionMean returns data from this system. The top
2MBytes of each channels SDRAM is used for the data storage of the mean
values.
- The BunchMean system now calculates the time for each sample and
returns a standard DataValue object with a time field instread of a
DataValueMean object that had a numSamples field.
- The TmsControlGui application has been modified to handle the above changes.
Release 1.0.0 - 2007-10-09
This is the first release of the TMS system to support a complete,
fully populated, system. There has been a number of enhancements and
bug fixes. The main changes are listed below:
- Improvements have been made to the BEAM BOAP library to reduce
the likelyhood of denial of service attacks. The BEAM BOAP library is
used by the TmsLib API code. THE BOAP packets now contain a magic
number and the packet length is checked.
- The BunchMean function now performs the averaging function on the
data received from the FPGA and scales the results as necessary.
- The TmsServer's getData call now supports a channel number of 0 to return data from all of the channels.
- The return Data structure now returns an error for each of the channels for which data is returned.
- A number of improvements have been made to the simulated timing system to support multiple modules.
- Added the new getCycleInformation API function to get information on a processing cycle.
- Added DataValueMean return data type.
- Added PUPE Physical slot location system.
- Improved error messages with module and PUPE numbers.
- Improved FPGA load speed.
- Improved system test function to return status even when Ok.
- Improved the tmsStateGen program
- A number of improvements to the tmsControlGui program including
the ability to view the Sigma, DeltaX and DeltaY inputs in detail and
with an FFT power spectrum.
- Added the tmsTestData program to set simulation mode and test fetching data from all channels.
- Various minor bugs have been fixed.
The FPGA firmware changes include:
- A bug that caused memory reads from the SDRAM to fail occassionaly has been fixed.
- The Bunch Mean system now integrates the samples over each
millisecond period and scales the result using a factor dependent on
the number of samples integrated. The number of samples integrated is
output in the data samples.
Release 0.3.11 - Preliminary
- The TmsLib code has been modified by D.Korchagin of CERN to support the PPC based LynxOS system.
- The TMS system now supports physical slot addressing for the PUPE
boards allowing individual boards to be taken out of service while
keeping the overal configuration unchanged.
- The PUPE boards now support the ability to use the free running
VXCO or have the VXCO locked to the 10MHz SYSCLOCK input. The system
will report in its status report if the VXCO is locked to the reference
and also report how many times the lock has been lost. The lock status
is checked once per second.
- Various minor bugs have been fixed.
The FPGA firmware changes include:
- A bug that caused memory writes to the SDRAM to fail occassionaly has been fixed.
- The usage of the digital timing master bus sockets on the PUPE board
have been re-arranged. This requires the connections to the digital
timing front-panel to be re-orientated as shown in the latest
TmsHardware manual.
- The FPGA firmware now supports all 3 PUPE channels.
Release 0.3.9 - Preliminary
- The system now will limit the number of samples of data returned such that all of the data is from within the specified period.
- The Test functionalility has been improved.
- A bug where the orbit offset used in getData calls has been fixed.
Release 0.3.8 - 2007-08-01
- The diagnostics source array is now 4096 samples instread of 1024 samples.
- The TmsServer.conf file now has the "AdcSysclkSync" parameter to
globally enable the synchronisation of the ADC clock to the 10MHz
SYSCLK. Note that the pre-series PUPE boards do not support this
feature.
- Some improvemnets have been made to the BOAP API high level to
better separate the control and user access functions into the seperate
TmsControl and TmsProcess objects.
- Task priorities have been added to improve the setNextCycle()
performance. This includes BOAP API functions that can be used to
raise the priority of network interface and the thread implementing
this call.
- The lower level BOAP API system has been improved to increase data transfer performance.
- Fixed HCHANGE operation.
The FPGA firmware changes include:
- The diagnostics source array is now 4096 samples instread of 1024 samples.
- Added an EVENT_DELAYED state to the state table system to allow a delayed state transition.
- Removed HCHANGE event delay.
Release 0.3.6 - 2007-06-26
- This release adds the ability to edit the CycleParams data in the tmsControlGui application.
- The TMS API has been updated to better support the editing of the CycleParams data at a high level.
- The TmsStateGen program's State/Phase table generation code has
been re-written and simplified to be in-line with the tmsControlGui's
CycleParam editing abilities. The State/Phase table generation
code is in the TMS library so that it can be shared between the
tmsStateGen and tmsControlGui programs.
- Some changes to the diagnostics output in source 3 were made. The
Sigma timing source display is now taken from after the BLR algorithm.
This allows the timing between the Gate and incoming Sigma data to be
more accurately determined.
The FPGA firmware changes include:
- The FPGA firmware is now compiled using the Xilinx XST tool.
- The FPGA firmware supports the ability to disable the BLR algorithm.
- Some changes to the diagnostics output in source 3 were made.
There may be a problem in the individual bunch selection login in this release.
Release 0.3.5 - 2007-06-19
This release fixes a number of issues with the first release.
The software changes include:
- Modified TMS API to allow reading the Cycle Parameter iinformation from the server.
- Modified TMS sources to support Redhat 7.3 and PPC based Linux systems.
- A couple of bug fixes to the tmsServer process and tmsPuServer
processes that would result in lock-ups when the init() call was used
in some cases.
- Major improvements to the tmsControlGui application.
- Added tmsRestart and improved some of the utility applications to support the manual installation of software/firmware packages.
The FPGA firmware fixes include:
- Fixed ADC sample timing to correct data glitch errors.
- Fixed itermittant register write problem causing diagnostics
capture to fail sometimes and the setting to the PLL phase offset to be
incorrect sometimes.
- The internal SDRAM test data source system has been fixed.
Release 0.3.1 - 2007-06-11
This is the first external release of the TMS software to CERN as part of the pre-series system.