<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head>
<meta http-equiv="content-type" content="text/html; charset=utf-8"><title>CERN TMS Release Notes</title>
<meta name="generator" content="LibreOffice 5.2.7.2 (Linux)">
<meta name="created" content="00:00:00">
<meta name="changed" content="2017-12-11T12:18:15.547092270">
<style type="text/css">
h2.cjk { font-family: "WenQuanYi Micro Hei" }
h2.ctl { font-family: "Lohit Devanagari" }
h3.cjk { font-family: "WenQuanYi Micro Hei" }
h3.ctl { font-family: "Lohit Devanagari" }
h4.cjk { font-family: "WenQuanYi Micro Hei" }
h4.ctl { font-family: "Lohit Devanagari" }
</style></head><body dir="ltr" lang="en-GB">
<h1 align="center">CERN Trajectory Measurement System</h1>
<h2 class="western" align="center">Release Notes</h2>
<h3 class="western">Release 2.2.1 - 2021-01-14</h3>This only affects the tmsPuServer program in the tms-server package.<br>
<ol>
<li>Fixed an issue where PUPE's where being configured from the last
rings state tables rather than the appropriate state table for the ring
the channel is on.</li>
</ol>
<h3 class="western">Release 2.2.0 - 2019-12-09</h3>
This release
provides a 64bit version of the TMS software to run in 64 client
systems. We have provided RPM format packages for Centos/RedHat 7 for
this.<br>
<br>
<h3 class="western">Release 2.1.0-2 - 2018-02-26</h3>
<ol>
<li>The admxrc2.ko kernel module was not in the tms-mcsys RPM. This
has been added and the tms-mcsys-2.1.0-2.beam.i686.rpm RPM created.<br>
</li>
</ol>
<h3 class="western">Release 2.1.0 – 2017-12-11</h3>
<p>This is a major update to the TMS system and software.</p>
<ol>
<li>
<p>The underlying system for the TMS Server has been updated
to the 64bit CentOS-7.</p>
</li><li>
<p>The TMS cPCI controller module operating system has been
updated to with with CentOS-7. This includes its own port of the
Linux kernel for 32bit operation and updated busybox system and core
application shared libraries from CentOS-7.</p>
</li><li>
<p>The TMS software has be updated to use the latest Beam
libraries and build, in 32bit mode, on the 64bit CentOS-7 system.</p>
</li><li>
<p>The TMS configuration scripts have been updated for
CentOS-7.</p>
</li><li>
<p>The TMS software RPM packages have been split further into:
tms, tms-server, tms-clients, tms-mcsys, tms-fpga and tms-doc. This
allows the TMS client software to be easily installed on separate
CentOS-7 systems.</p>
</li><li>
<p>Binary TMS BOAP API compatibility with the old system has
been retained, so CERN’s LynxOS clients should not need to be
updated.</p>
</li><li>
<p>The old 2.0.5 TMS release had a software issue so that
separate state tables could not be used on a per ring basis. This
has been fixed. The system now allows state tables to be defined for
a particular ring and/or channel as well as generic state tables for
any ring and/or channel.</p>
</li><li>
<p>The document: TmsMaintenance has been updated to describe
the installation process.</p>
</li></ol>
<h3 class="western">Release 2.0.6 - Psuedo release</h3>
<p>This is a pusdo release. It contains changes to the software made
by CERN.</p>
<ol>
<li>
<p>Changes around in eventsToPeriods() to fix 2nd INJ JMB -
2014-12-05
</p>
</li></ol>
<h3 class="western">Release 2.0.4 - 2014-12-03</h3>
<p>Minor fixes to Pupe code to handle events and periods.</p>
<h3 class="western">Release 2.0.3 - 2013-03-11</h3>
<p>Major update for new BoosterTMS system. The new software supports
the original PS TMS system with 1 ring and the Booster TMS system
with 4 rings.</p>
<h4 class="western">Updated Underlying System</h4>
<ol>
<li>
<p style="margin-bottom: 0cm;">The TMS Server's underlying
Linux system has been updated to Centos 6.3.
</p>
</li><li>
<p>The TMS modules mcsys system has been updated to be based
on the same package versions as Centos 6.3.
</p>
</li></ol>
<h4 class="western">BoosterTMS modifications for multiple rings</h4>
<p>The Booster PS machine has 4 rings. The layout of the cabling for
this results in each TMS rack module (6 PUPE's) servicing the 4 rings
rather than having one TMS rack module per ring. The systems Software
and Firmware has been modified to support this topology. The changes
are:</p>
<ol>
<li>
<p style="margin-bottom: 0cm;">The TMS server host system can
now run multiple TmsServer processes, one per ring. The TmsServer
process now has an additional "-c <configFile>"
command line argument so that each TmsServer process has its own
configuration file. The convention is to name these
/etc/tmsServer1.conf, /etc/tmsServer2.conf etc. This configuration
file provides information on the ring and the list of PUPE channels
that are part of this ring.</p>
</li><li>
<p style="margin-bottom: 0cm;">The TmsServer configuration file
now has a "ring" parameter to define the ring it operates
on. This should be a value in the range 1-4. For a single ring
system this should be set to 1.
</p>
</li><li>
<p style="margin-bottom: 0cm;">The TmsServer configuration file
now has a "master" parameter. If this is set to 1 this
server is deemed to be a master TmsServer process. A master
TmsServer process distributes the State Table information to all of
the TmsPuServer processes running in the TMS rack modules. It also
sends the setNextCycle command to all of the TmsPuServer processes
when this software signal is received. State tables should only be
modified and updated on the master TmsServer.</p>
</li><li>
<p style="margin-bottom: 0cm;">The BOAP object names used to
access the TmsServer's API's now have the ring number appended to
them This allows a client process to connect to the appropriate
server for the ring in question.</p>
</li><li>
<p style="margin-bottom: 0cm;">The state table files now have
an additional "ring" parameter defining which ring the
state table is for. This works in a similar manner to the channel
number. If the ring parameter is 0 then the state table is deemed
suitable for all rings. If this parameter is one of the values in
the range 1-4, then the state table is deemed to be just for that
ring. It is possible to have a state table for all rings (ring
parameter set to 0) and then override this with another state table
for a particular ring. To help support this the state table file
naming convention has been changed to:
<CycleType>_<ring>_<channel>.spt.
</p>
</li><li>
<p style="margin-bottom: 0cm;">The state tables now have a
"name" parameter so that state tables for different rings
or channels can have a unique name. This is useful for debugging.
</p>
</li><li>
<p style="margin-bottom: 0cm;">The TmsControlGui now has a "-r
<ring>" command line parameter so it can attach itself to
the appropriate ring's server. The ring server's host and ring
number are shown in the windows title.
</p>
</li><li>
<p>The TmsControl program now has a "--ring <ring>"
command line parameter so it can attach itself to the appropriate
ring's server.</p>
</li></ol>
<h4 class="western"><b>Other Fixes</b></h4>
<ol>
<li>
<p style="margin-bottom: 0cm;">Added support for automatic
shutting off of the PUPE FPGA's if the temperature is too high. The
tmsPuServer.conf file defines two maximum temperature values:
TempInternalMax and TempFpgaMax. Every 10 seconds the internal and
FPGA temperatures of each PUPE is compared with these. If the
temperatures are exceeded the system will shutdown the PUPE (clears
the FPGA) and marks the PUPE with an error. This error: "Temperature
Fpga to high: FPGA shutdown" will be returned on all requests.
A complete TMS restart is needed to clear this condition.
</p>
</li><li>
<p style="margin-bottom: 0cm;">Fixed problem where local 10MHz
clock was not being used in simulation mode on PUPE's other than the
master PUPE.
</p>
</li><li>
<p style="margin-bottom: 0cm;">The TmsServer's delControlInfo()
API function no longer deletes the State files from disk. Thus when
a TmsServer is re-initialised or restarted it will re-load any State
tables that were deleted from the TMS server's internal cache.
</p>
</li><li>
<p style="margin-bottom: 0cm;">Modified the FPGA state to
period algorithm based on the new FPGA code. This now allows
multiple injections, delay states and state loops.
</p>
</li><li>
<p>Modified the TmsControlGui's Cycle Params editor to edit
states rather than periods. This now works similarly to CERN's spt
program.</p>
</li></ol>
<h4 class="western">State Table Changes</h4>
<ol>
<li>
<p style="margin-bottom: 0cm;">The State tables have the
additional fields of "name" and "ring".
</p>
</li><li>
<p>The content of the settings fields has been modified. This
now contains the state num and state bit fields. Also the loHarmonic
and loPhase have been renamed lo1Harmonic and lo1Phase. lo2Harmonic
and lo2Phase have been added. The parameters useLoFref and
acquireData have been removed. Note the state bitfield is for
information only. The contents of the stateTable's state field will
be used when loading state tables.</p>
</li></ol>
<p>State table editing software may need to be modified to support
these.
</p>
<h4 class="western">Bugs</h4>
<ol>
<li>
<p>When the PUPE channes's state machine enters the error
state, this should be reported by interrupt. This is disabled in the
current software due to issues in the FPGA firmware.</p>
</li></ol>
<h4 class="western">FPGA Firmware Changes</h4>
<p>The Tms-fpga package has been updated to version 1.3.0. The FPGA
firmware changes include:</p>
<ol>
<li>
<p style="margin-bottom: 0cm;">Includes all of CERN's changes
since version 1.2.4.</p>
</li><li>
<p style="margin-bottom: 0cm;">The CycleInformation table now
has the previous and next state numbers included.
</p>
</li><li>
<p style="margin-bottom: 0cm;">The DELAY_EVENT now has a
programable period in FREF units.
</p>
</li><li>
<p style="margin-bottom: 0cm;">The DELAY_EVENT should now
function correctly.
</p>
</li><li>
<p>The CycleTiming table now has the final 1ms time included.</p>
</li></ol>
<h4 class="western">API Changes</h4>
<p>The TMS BOAP API has been updated to support the changes, but the
standard client access portion is unchanged except for the
requirement to add the ring number to the BOAP service name when
connecting. As the API has been updated a re-compile of the clients
is also required.</p>
<h3 class="western">Release 1.2.12 - 2012</h3>
<p>Some minor modifications by CERN.</p>
<ol>
<li>
<p style="margin-bottom: 0cm;">Modified Gui.cpp to have the
window banner show on which machine the program is running.
</p>
</li><li>
<p>Modified PupeDiagnosticsWin.h and PupeDiagnosticsWin.cpp to
add controls for state-dependent triggers. This also requires
some FPGA firmware changes.
</p>
</li></ol>
<h3 class="western">Release 1.2.11 - 2011-11-03</h3>
<p>Minor changes release.</p>
<ol>
<li>
<p style="margin-bottom: 0cm;">TmsControlGui: CERN: Added the
host name to the window banner.
</p>
</li><li>
<p style="margin-bottom: 0cm;">TmsServer: CERN: Disabled
deletion of *.spt files.
</p>
</li><li>
<p style="margin-bottom: 0cm;">TmsServer: CERN: Increased
maximum number of orbits to 1500000.
</p>
</li><li>
<p style="margin-bottom: 0cm;">TmsPuServer: CERN: Increased
maximum number of orbits to 1500000.
</p>
</li><li>
<p>TmsPuServer: CERN: Removed the sign change and offset
from frefPhaseDelay.
</p>
</li></ol>
<h3 class="western">Release 1.2.10 - 2009-09-18</h3>
<p>Minor bug fix release.</p>
<ol>
<li>
<p>Fixed an unsigned integer overflow in the TmsCycleParam.cc
code when reading state files.
</p>
</li></ol>
<h3 class="western">Release 1.2.9 - 2008-12-18</h3>
<p>Minor bug fix release.</p>
<ol>
<li>
<p style="margin-bottom: 0cm;">Added better argument checking
on getData() calls.
</p>
</li><li>
<p>Fixed a small bug in the InfoTable read.
</p>
</li></ol>
<h3 class="western">Release 1.2.8 - 2008-09-08</h3>
<p>Minor bug fix release.</p>
<ol>
<li>
<p style="margin-bottom: 0cm;">Modified the software to support
the case where the CycleInfoTable entry for the CYCLE_START event is
not for 0ms after CYCLE_START. The software now searches for a
timing table entry with a time of 1ms which will always be present.
It uses this the timing table address before this one in its timing
calculations.
</p>
</li><li>
<p>As the system may not have a valid timing table entry for
0, it also will not have entries in the data averaging tables for
0ms after CYCLE_START. The system now returns an error if the user
requests averaged data starting from a time offset of 0 from
CYCLE_START.
</p>
</li></ol>
<h3 class="western">Release 1.2.7 - 2008-05-01</h3>
<p>Minor bug fix release.</p>
<ol>
<li>
<p>Fixed a bug where the Diagnostics Capture system was
returning the data on the trigger event rather than after the data
had been captured. This resulted in incorect data if the sample
clock was set to a low value.
</p>
</li></ol>
<h3 class="western">Release 1.2.6 - 2008-04-10</h3>
<ol>
<li>
<p style="margin-bottom: 0cm;">Added ability to delete
State/Phase table control information in the tmsControlGui program.
</p>
</li><li>
<p style="margin-bottom: 0cm;">Fixed bug where the StartTime
was not working in diagnostics capture.
</p>
</li><li>
<p style="margin-bottom: 0cm;">Fixed a bug where it was not
possible to change the CycleType when setNextCycle simulation mode
was enabled.
</p>
</li><li>
<p>Note the API has been updated to version 8 with this
release and so all client programs will need recompiling with the
latest TMS API library.
</p>
</li></ol>
<p>The Tms-fpga-1.2.4 package has been updated. The FPGA firmware
changes include:</p>
<ol>
<li>
<p>Now disables the Ethernet PHY's to reduce ADC 25MHz noise.
</p>
</li></ol>
<h3 class="western">Release 1.2.5 - 2008-01-22</h3>
<ol>
<li>
<p style="margin-bottom: 0cm;">Added a new error message
"NumValues to small for request" when the
DataInfo.numValues parameter has been set to small for the request.
</p>
</li><li>
<p style="margin-bottom: 0cm;">Changed default internal
communications timeout to 10 seconds so that the CaptureDiagnostics
can take up to 8 seconds to respond.
</p>
</li><li>
<p style="margin-bottom: 0cm;">Fixed a BOAP error where the
wrong error message was occassionaly rreturned in the case of a
timeout.
</p>
</li><li>
<p style="margin-bottom: 0cm;">We have implemented a Watchdog
reset timer on the Module Controllers. There is a "Watchdog"
parameter in tmsPuServer.conf that sets the Watchdog timeout in
seconds. 0 means turn off the Watchdog timer. If the tmsPuServer
process is killed with CTRL-C (SIG_INT) then the Watchdog timer is
stopped, otherwise it continues and will reset the module
controller. There is also a program tmsWatchdog that will operate
the Watchdog.This is useful if programs other than tmsPuServer are
run.
</p>
</li><li>
<p style="margin-bottom: 0cm;">Fixed a bug where the PUPE FPGA
was not always initialised correctly. This could result in Test
SDRAM write errors and also hard lockups of the Module Controller.
</p>
</li><li>
<p>Modified the TmsPuServer to wait for a cycles data rather
than returning an error if the data has not yet arrived. This is to
stop error returns when using simulated timing where the timing
between modules can be slightly adrift.
</p>
</li></ol>
<h3 class="western">Release 1.2.4 - 2007-12-12</h3>
<ol>
<li>
<p>Fixed a bug where reading the mean values from very near
the end of the cycle period would result in a DMA error message
being returned.
</p>
</li></ol>
<h3 class="western">Release 1.2.3 - 2007-12-10</h3>
<ol>
<li>
<p style="margin-bottom: 0cm;">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.
</p>
</li><li>
<p style="margin-bottom: 0cm;">The TmsPuServer program would
occassionly crash when a getStatus call was made during a
setNextCycle call. This has been fixed.
</p>
</li><li>
<p style="margin-bottom: 0cm;">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).
</p>
</li><li>
<p style="margin-bottom: 0cm;">The getData() call now sets
returned parameters to 0 in the event of an error being returned.
</p>
</li><li>
<p style="margin-bottom: 0cm;">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.
</p>
</li><li>
<p style="margin-bottom: 0cm;">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.
</p>
</li><li>
<p>Changed the name of the captureTestData() function to
captureDiagnostics().
</p>
</li></ol>
<p>The Tms-fpga package has been updated to 1.2.3. The FPGA
firmware changes include:</p>
<ol>
<li>
<p style="margin-bottom: 0cm;">The FPGA now stores the
DataTable pointer in the Cycle Information table.
</p>
</li><li>
<p>The CAL_START event is delayed until the next FREF period
as per the INJECTION and HCHANGE events.
</p>
</li></ol>
<h3 class="western">Release 1.2.2 - 2007-11-26</h3>
<ol>
<li>
<p style="margin-bottom: 0cm;">Added support for second System
Controller on live system.
</p>
</li><li>
<p>Fixed Cycle Parameter generation system to support multiple
injection events.
</p>
</li></ol>
<p>The Tms-fpga 1.2.1 package has been updated. The FPGA firmware
changes include:</p>
<ol>
<li>
<p>The FPGA now loads the PLL_FREQUENCY on CYCLE_START as well
as after the PLL_FREQDELAY.</p>
</li></ol>
<h3 class="western">Release 1.2.1 - 2007-11-14</h3>
<ol>
<li>
<p>Adds the ability to view the raw State/Phase table's
generated in the TmsControlGui program.
</p>
</li></ol>
<h3 class="western">Release 1.2.0 - 2007-11-08</h3>
<ol>
<li>
<p style="margin-bottom: 0cm;">Added tmsBackup utility
</p>
</li><li>
<p style="margin-bottom: 0cm;">Fixed a few bugs in the state
table generation system.
</p>
</li><li>
<p style="margin-bottom: 0cm;">Changed the phase orientation in
the phase tables so that a +ve phase value generates a lag in the
waveform.
</p>
</li><li>
<p>Increased the bit width diagnostics Post Trigger delay
parameter to 32bits.
</p>
</li></ol>
<p>The FPGA firmware changes include:</p>
<ol>
<li>
<p style="margin-bottom: 0cm;">Increased the bit width
diagnostics Post Trigger delay parameter to 32bits.
</p>
</li><li>
<p>Fixed a bug where SDRAM data writes could get currupted
when a large amount of data was being read from the system.
</p>
</li></ol>
<h3 class="western">Release 1.1.0 - Preliminary</h3>
<p>This is a new release with improvements following the full system
installation.</p>
<ol>
<li>
<p style="margin-bottom: 0cm;">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.
</p>
</li><li>
<p style="margin-bottom: 0cm;">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.
</p>
</li><li>
<p style="margin-bottom: 0cm;">The orientation of the
bunchMask, Mean0Mask and Mean1Mask have been reversed so that bucket
1 is bit 0.
</p>
</li><li>
<p style="margin-bottom: 0cm;">The system can now handle
multiple injection events. The cycle periods are now named
CyclePeriodEvent* rather than CyclePeriodHarmonic to reflect this.
</p>
</li><li>
<p style="margin-bottom: 0cm;">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.
</p>
</li><li>
<p style="margin-bottom: 0cm;">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.
</p>
</li><li>
<p>The TmsControlGui application has been modified to handle
the above changes.
</p>
</li></ol>
<h3 class="western">Release 1.0.0 - 2007-10-09</h3>
<p>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:</p>
<ol>
<li>
<p style="margin-bottom: 0cm;">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.
</p>
</li><li>
<p style="margin-bottom: 0cm;">The BunchMean function now
performs the averaging function on the data received from the FPGA
and scales the results as necessary.
</p>
</li><li>
<p style="margin-bottom: 0cm;">The TmsServer's getData call now
supports a channel number of 0 to return data from all of the
channels.
</p>
</li><li>
<p style="margin-bottom: 0cm;">The return Data structure now
returns an error for each of the channels for which data is
returned.
</p>
</li><li>
<p style="margin-bottom: 0cm;">A number of improvements have
been made to the simulated timing system to support multiple
modules.
</p>
</li><li>
<p style="margin-bottom: 0cm;">Added the new
getCycleInformation API function to get information on a processing
cycle.
</p>
</li><li>
<p style="margin-bottom: 0cm;">Added DataValueMean return data
type.
</p>
</li><li>
<p style="margin-bottom: 0cm;">Added PUPE Physical slot
location system.
</p>
</li><li>
<p style="margin-bottom: 0cm;">Improved error messages with
module and PUPE numbers.
</p>
</li><li>
<p style="margin-bottom: 0cm;">Improved FPGA load speed.
</p>
</li><li>
<p style="margin-bottom: 0cm;">Improved system test function to
return status even when Ok.
</p>
</li><li>
<p style="margin-bottom: 0cm;">Improved the tmsStateGen program
</p>
</li><li>
<p style="margin-bottom: 0cm;">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.
</p>
</li><li>
<p style="margin-bottom: 0cm;">Added the tmsTestData program to
set simulation mode and test fetching data from all channels.
</p>
</li><li>
<p>Various minor bugs have been fixed.</p>
</li></ol>
<p>The FPGA firmware changes include:</p>
<ol>
<li>
<p style="margin-bottom: 0cm;">A bug that caused memory reads
from the SDRAM to fail occassionaly has been fixed.
</p>
</li><li>
<p>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.
</p>
</li></ol>
<h3 class="western">Release 0.3.11 - Preliminary</h3>
<ol>
<li>
<p style="margin-bottom: 0cm;">The TmsLib code has been
modified by D.Korchagin of CERN to support the PPC based LynxOS
system.
</p>
</li><li>
<p style="margin-bottom: 0cm;">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.
</p>
</li><li>
<p style="margin-bottom: 0cm;">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.
</p>
</li><li>
<p>Various minor bugs have been fixed.
</p>
</li></ol>
<p>The FPGA firmware changes include:</p>
<ol>
<li>
<p style="margin-bottom: 0cm;">A bug that caused memory writes
to the SDRAM to fail occassionaly has been fixed.
</p>
</li><li>
<p style="margin-bottom: 0cm;">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.
</p>
</li><li>
<p>The FPGA firmware now supports all 3 PUPE channels.
</p>
</li></ol>
<h3 class="western">Release 0.3.9 - Preliminary</h3>
<ol>
<li>
<p style="margin-bottom: 0cm;">The system now will limit the
number of samples of data returned such that all of the data is from
within the specified period.
</p>
</li><li>
<p style="margin-bottom: 0cm;">The Test functionalility has
been improved.
</p>
</li><li>
<p>A bug where the orbit offset used in getData calls has been
fixed.
</p>
</li></ol>
<h3 class="western">Release 0.3.8 - 2007-08-01</h3>
<ol>
<li>
<p style="margin-bottom: 0cm;">The diagnostics source array is
now 4096 samples instread of 1024 samples.
</p>
</li><li>
<p style="margin-bottom: 0cm;">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.
</p>
</li><li>
<p style="margin-bottom: 0cm;">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.
</p>
</li><li>
<p style="margin-bottom: 0cm;">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.
</p>
</li><li>
<p style="margin-bottom: 0cm;">The lower level BOAP API system
has been improved to increase data transfer performance.
</p>
</li><li>
<p>Fixed HCHANGE operation.
</p>
</li></ol>
<p>The FPGA firmware changes include:</p>
<ol>
<li>
<p style="margin-bottom: 0cm;">The diagnostics source array is
now 4096 samples instread of 1024 samples.
</p>
</li><li>
<p style="margin-bottom: 0cm;">Added an EVENT_DELAYED state to
the state table system to allow a delayed state transition.
</p>
</li><li>
<p>Removed HCHANGE event delay.
</p>
</li></ol>
<h3 class="western">Release 0.3.6 - 2007-06-26</h3>
<ol>
<li>
<p style="margin-bottom: 0cm;">This release adds the ability to
edit the CycleParams data in the tmsControlGui application.
</p>
</li><li>
<p style="margin-bottom: 0cm;">The TMS API has been updated to
better support the editing of the CycleParams data at a high level.
</p>
</li><li>
<p style="margin-bottom: 0cm;">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.
</p>
</li><li>
<p>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.
</p>
</li></ol>
<p>The FPGA firmware changes include:</p>
<ol>
<li>
<p style="margin-bottom: 0cm;">The FPGA firmware is now
compiled using the Xilinx XST tool.
</p>
</li><li>
<p style="margin-bottom: 0cm;">The FPGA firmware supports the
ability to disable the BLR algorithm.
</p>
</li><li>
<p>Some changes to the diagnostics output in source 3 were
made.
</p>
</li></ol>
<p>There may be a problem in the individual bunch selection login in
this release.
</p>
<h3 class="western">Release 0.3.5 - 2007-06-19</h3>
<p>This release fixes a number of issues with the first release.<br>
The
software changes include:</p>
<ol>
<li>
<p style="margin-bottom: 0cm;">Modified TMS API to allow
reading the Cycle Parameter iinformation from the server.
</p>
</li><li>
<p style="margin-bottom: 0cm;">Modified TMS sources to support
Redhat 7.3 and PPC based Linux systems.
</p>
</li><li>
<p style="margin-bottom: 0cm;">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.
</p>
</li><li>
<p style="margin-bottom: 0cm;">Major improvements to the
tmsControlGui application.
</p>
</li><li>
<p>Added tmsRestart and improved some of the utility
applications to support the manual installation of software/firmware
packages.
</p>
</li></ol>
<p>The FPGA firmware fixes include:</p>
<ol>
<li>
<p style="margin-bottom: 0cm;">Fixed ADC sample timing to
correct data glitch errors.
</p>
</li><li>
<p style="margin-bottom: 0cm;">Fixed itermittant register write
problem causing diagnostics capture to fail sometimes and the
setting to the PLL phase offset to be incorrect sometimes.
</p>
</li><li>
<p>The internal SDRAM test data source system has been fixed.
</p>
</li></ol>
<h3 class="western">Release 0.3.1 - 2007-06-11</h3>
<p>This is the first external release of the TMS software to CERN as
part of the pre-series system.
</p>
</body></html>