ECR Title: RCG V2.7.2	DCC No: E1300671-v1
Date: August 23, 2013
Requester: R. Bork	Impacted Subsystem(s): CDS
Description of Proposed Change(s): Bug fix changes are to be made to the Real-time Code Generator (RCG) and DAQ software, previously released as V2.7.1 Once completed, this software is to become the next release of CDS software, Version 2.7.2.
Reason for Change(s): Fix software issues in RCG V2.7, as reported in the CDS Bugzilla: Bug 490: (Critical) Symptom: In some cases, matrix elements were frozen at 0.0 on code startup ie matrix settings could not be set to different value via MEDM screens or BURT restores. Only way to clear problem was code restart again. Cause: EPICS shared memory, used to communicate between EPICS database and real-time code, was not being properly initialized to all zero values. This can result in mask bits, bits which control local/remote operation, being improperly set to local control, due to “dirty” memory segments, and not allow control via the normal EPICS channel access. Fix: EPICS sequencer software, the first to run on startup, clears all EPICS shared memory before use by any other software. This ensures that all masks are cleared, not just for matrix parts, but for all EPICS parts. Test: On the LHO test system, modified the code which allocates shared memory to fill (dirty) memory with -1 values in all locations. This memory space is then, 1) verified to be cleared on startup, and 2) automated regression testing performed on all RCG components to verify proper operation. The modified code which produces the corrupt shared memory is to remain on the test stand system to support all subsequent RCG regression testing.
Estimated Cost: Costs covered under aLIGO installation manpower.
Schedule Impact Estimate: None.
Nature of Change (check all that apply): Safety Correct Hardware Correct Documentation	Improve Hardware Improve/Clarify Documentation Change Interface Change Requirement
Importance: Desirable for ease of use, maintenance, safety Desirable for improved performance, reliability Essential for performance, reliability Essential for function Essential for safety	Urgency: No urgency Desirable by date/event: ____________ Essential by date/event: _______ Immediately (ASAP)
Impacted Hardware (select all that apply): Repair/Modify. List part & SNs: ______________________ Scrap & Replace. List part & SNs:_____________________ Installed units? List IFO, part & SNs: _________________ Future units to be built	Impacted Documentation (list all dwgs, design reports, test reports, specifications, etc.): RCG V2.7 Release Notes T1300711
Disposition of the proposed change(s): The disposition of this proposed engineering change request is to be completed by Systems Engineering and indicated in the “Notes and Changes” metadata field in the DCC entry for this ECR. The typical dispositions are as follows: Additional Information Required: in which case the additional information requested is defined. The ECR requester then re-submits the ECR with the new information using the same DCC number for the ECR but with the next version number. Rejected: in which case the reason(s) for the rejection are to be given Approved Approved with Caveat(s): in which case the caveat(s) are listed TRB: the ECR is referred to an ad-hoc Technical Review Board for further evaluation and recommendation. It is the System Engineer’s (or designee’s) responsibility to organize the TRB. The System Engineer (or designee) then makes a technical decision based on the TRB’s recommendation. Links to the TRB’s documentation (charge, memos, final report, etc.) are to be added to the “Related Documents” field for this ECR. CCB: a change request for approval of additional funds or schedule impact is to be submitted to the Configuration Control Board. Links to the CCB’s documentation (CR, etc.) are to be added to the “Related Documents” field for this ECR. Concurrence by Project Management: Acknowledgement/acceptance/approval of the disposition is to be indicated by the electronic “signature” feature in the DCC entry for this ECR, by one the following personnel: Systems Scientist Systems Engineer Deputy Systems Engineer