The CMS Pixel PLC Code1 CMS Pixel PLC Code Review - Closing Session - Christian Veelken UC Davis 06/26/08.

Slides:



Advertisements
Similar presentations
Software Quality Assurance Plan
Advertisements

purpose Search : automation methods for device driver development in IP-based embedded systems in order to achieve high reliability, productivity, reusability.
Modbus Slave & Modbus Master in S7
Computer Monitoring System for EE Faculty By Yaroslav Ross And Denis Zakrevsky Supervisor: Viktor Kulikov.
Coding Practices. What are Coding Practices ? Coding practices are a set of informal rules that the software development community has learned over time.
Slide 1 FEC Software 21 April 2004 R.Stone Rutgers University Pixel FEC Workshop.
Illinois Institute of Technology
OHT 3.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 The need for comprehensive software quality requirements Classification.
TCP: Software for Reliable Communication. Spring 2002Computer Networks Applications Internet: a Collection of Disparate Networks Different goals: Speed,
Chapter 9 Managing a Cisco Internetwork Cisco Router Components Bootstrap - Brings up the router during initialization POST - Checks basic functionality;
The CMS Pixel PLC Code1 Christian Veelken UC Davis last updated 03/05/08.
1 CMPT 275 Software Engineering Revision Control.
Chapter 7 SYSTEM PROTECTION
Module 13: Network Load Balancing Fundamentals. Server Availability and Scalability Overview Windows Network Load Balancing Configuring Windows Network.
Group Electronique Csnsm AGATA SLOW CONTROL MEETING 19th fev AGATA PROJECT PREPROCESSING MEZZANINE SLOW CONTROL GUI FOR THE SEGMENT AND THE CORE.
Oracle Application Express Security. © 2009 Oracle Corporation Authentication Out-of-the-Box Pre-Configured Schemes LDAP Directory credentials Oracle.
Remote Procedure Calls Adam Smith, Rodrigo Groppa, and Peter Tonner.
Implementation of Finite Field Inversion
Question of the Day  On a game show you’re given the choice of three doors: Behind one door is a car; behind the others, goats. After you pick a door,
Question of the Day  On a game show you’re given the choice of three doors: Behind one door is a car; behind the others, goats. After you pick a door,
1 Online Calibration of Calorimeter Mrinmoy Bhattacharjee SUNY, Stony Brook Thanks to: D. Schamberger, L. Groer, U. Bassler, B. Olivier, M. Thioye Institutions:
CPS120: Introduction to Computer Science Lecture 14 Functions.
3.14 Work List IOC Core Channel Access. Changes to IOC Core Online add/delete of record instances Tool to support online add/delete OS independent layer.
1 Chapter Six - Errors, Error Detection, and Error Control Chapter Six.
1 Memory Management Chapter 7. 2 Memory Management Subdividing memory to accommodate multiple processes Memory needs to be allocated to ensure a reasonable.
Chapter 2 Basic Principle of PLC PLC Configuration &Function   Basic Configuration  CPU  Memory  Programming Interface  Communication.
Software quality factors
Traffic Management - OpenFlow Switch on the NetFPGA platform Chun-Jen Chung( ) Sriram Gopinath( )
Online Restaurant Booking System James Beck (EC) Hardware & CMS John Charlton (EC) XHTML & CSS Design Jamie Hart ( EC) PDA Diary Design Gareth Davies (EC)
 Registry itself is easy and straightforward in implementation  The objects of registry are actually complicated to store and manage  Objects of Registry.
CE Operating Systems Lecture 2 Low level hardware support for operating systems.
Date: File:PRO1_04E.1 SIMATIC S7 Siemens AG All rights reserved. Information and Training Center Knowledge for Automation Hardware Configuration.
CE Operating Systems Lecture 2 Low level hardware support for operating systems.
Source Controller software Ianos Schmidt The University of Iowa.
Mr. Justin “JET” Turner CSCI 3000 – Fall 2015 CRN Section A – TR 9:30-10:45 CRN – Section B – TR 5:30-6:45.
WEEK 11 – TOPOLOGIES, TCP/IP, SHARING & SECURITY IT1001- Personal Computer Hardware System & Operations.
Input/Output Problems Wide variety of peripherals —Delivering different amounts of data —At different speeds —In different formats All slower than CPU.
May 14, 2003The Detector Safety System for LHC Experiments1 Agenda 1) Minutes of last meeting 2) DSS Back End software progress by Giulio Morpurgo 3) DSS.
The Software for the CERN Detector Safety System G. Morpurgo, R. B. Flockhart and S. Lüders, CERN IT/CO.
Firewalls A brief introduction to firewalls. What does a Firewall do? Firewalls are essential tools in managing and controlling network traffic Firewalls.
7/27/2004IETF San-Diego Plenary meeting 8/2004 EPON MIBs Lior Khermosh – Passave Technologies
Input Output Techniques Programmed Interrupt driven Direct Memory Access (DMA)
UNICOS LHCLoggingDB Josef Hofer EN/ICE/SCD. Agenda The LHC Logging Database Purpose of the LHCLogging component Basic concepts Advanced concepts Logging.
Level 1-2 Trigger Data Base development Current status and overview Myron Campbell, Alexei Varganov, Stephen Miller University of Michigan August 17, 2000.
Session 11: Cookies, Sessions ans Security iNET Academy Open Source Web Development.
ONLINE DETECTION AND PREVENTION PHISHING ATTACKS
Monitoring Dynamic IOC Installations Using the alive Record Dohn Arms Beamline Controls & Data Acquisition Group Advanced Photon Source.
Unit Testing CLUE PLAYERS.  How much design do we do before we begin to code?  Waterfall: Design it all! (slight exaggeration… but not much)  Agile:
The Structuring of Systems Using Upcalls By David D. Clark Presented by Samuel Moffatt.
Reliability and Performance of the SNS Machine Protection System Doug Curry 2013.
Tutorial 4 IT323.  Q1. As a software project manager in a company that specializes in the development of software for the offshore oil industry, you.
Point-Point Protocol (PPP) by William F. Widulski.
WORKING OF SCHEDULER IN OS
Kernel Design & Implementation
Interrupts and signals
DSS Front End Software Review
Testing and Debugging.
Chapter 8 The Routing Table: A Closer Look
Open S7 Program & S7 Hardware
Un</br>able’s MySecretSecrets
Packet Sniffing.
Lecture Number 4 Siemens S7.
Module IV Memory Organization.
Bringing more value out of automation testing
PLANNING A SECURE BASELINE INSTALLATION
EZ Positioning with SINAMICS S120 S7 Simatic Manager Programming
ASYN based S7 PLC Driver Jignesh Patel
Presentation transcript:

The CMS Pixel PLC Code1 CMS Pixel PLC Code Review - Closing Session - Christian Veelken UC Davis 06/26/08

The CMS Pixel PLC Code2 The revised Pixel PLC Code Changes to Pixel PLC Code resulting from Review: Changes in Functionality Coding Improvements Improvements to Hardware Configuration Lifetime of Relays Configuration Parameter Checks Open Issues

The CMS Pixel PLC Code3 Changes in Functionality Implemented Diagnostic Interrupt Organization Blocks OB 80, OB 81, … OB 88 OB 121, OB 122 Stefan Lueders Piero Girgio Verdini Added Data-Block for Log-Messages; filled with Entries whenever one of the Diagnostic OBs gets called Adapted from Example Code provided by Stefan Lueders

The CMS Pixel PLC Code4 Coding Improvements - 1 Reduced number of Function Blocks –FC 1110 “isEven” replaced by “MOD 2” –merged FC 1400 and FC 1401 –merged FC 1411 and FC 1412 –removed FC 1421 “testBit” Jim Kowalkowski Kevin Krause Stefan Lueders Replaced all Instances of “Time_of_Day” by “Date_and_Time” Variables; “Date_and_Time” now consistently used everywhere in the Code Jim Kowalkowski FC 1240 “syncSystemDate_and_Time” removed; replaced by Timer Server Stefan Lueders Piero Girgio Verdini

The CMS Pixel PLC Code5 Coding Improvements - 2 Return codes of SFC 20 “BLKMOV” and SFC 21 “FILL” taken into account everywhere in the Code Jim Kowalkowski Kevin Krause Stefan Lueders Piero Girgio Verdini Changed Order by which Functions are compiled in Makefile, taking into account Dependencies Stefan Lueders Shortened Variable Names  No Warnings during Compilation anymore Stefan Lueders Piero Girgio Verdini

The CMS Pixel PLC Code6 Coding Improvements - 3 Added Checks for lower Alarm Threshold < upper Alarm Threshold to FC 110 and FC 111 Stefan Lueders Piero Girgio Verdini Changed Heart-Beat Period from 1.6s to 2min  will come back to this later… Other (minor) Code Improvements (Details of which sent to respective Reviewer) Stefan Lueders Piero Girgio Verdini

The CMS Pixel PLC Code7 Improvements to the HW-Config. Added IP Address Protection Added Password Protection for read/write Access to PLC via Siemens Step7 software Enabled Diagnostic Interrupts Stefan Lueders Piero Girgio Verdini

The CMS Pixel PLC Code8 Lifetime of Relays Relay specified for 1 million Switching 0.5 A, 24V DC actually lower Limit, as current significantly smaller in Pixel case  Relay might break after 2-3 weeks of operation in case Heart- Beat Signal has Period of 1.6s.  Change Heart-Beat period to 2 minutes  Lifetime Expectancy for Relay increased to 3-4 years minimum. Stefan Lueders Piero Girgio Verdini

The CMS Pixel PLC Code9 Configuration Parameter Checks - 1 The Change would not reduce the overall Amount of Code (just move it from the PLC to PVSS, where it will not be significantly easier to maintain, we believe). The PLC code would become simpler, but at the same Time the PVSS code would become more complex. Stefan Lueders suggested to move the Implementation of Validity Checks performed on the Configuration Parameters uploaded by PVSS from the Pixel PLC Code to PVSS:  Decided not to to it Reasons:

The CMS Pixel PLC Code10 Configuration Parameter Checks - 2 We do actually prefer to perform the Checks in the PLC, so that the entire Chain of Data Transmission can be validated (Concerns about possible Data Corruption by the PVSS native S7 Driver have been raised by Piero Giorgio Verdini) The current Implementation of the Configuration Parameters in the Pixel PLC Code has been tested, debugged and verified to work. The effort to move the Code for the Configuration Parameter Checks from Pixel PLC code to PVSS and repeat the Testing, Debugging and Verification of the Code would be significant.

The CMS Pixel PLC Code11 Open Issues - 1 CRC-16 Checksums Different Opinions held by different Reviewers: Stefan Lueders “I believe this is Overkill” Piero Giorgio Verdini “PVSS data transmission - strange things to happen from Time to Time. Packets need to be broken up on large Transmissions. Sometimes blocks are garbled.” (Minutes of Meeting 04/25/08)

The CMS Pixel PLC Code12 Unit Tests/automated Code Validation All Reviewers pointed out that this would be good to have, but: suitable Tools are lacking !! Open Issues - 2 Gennadiy Lukhanin “It may be useful to store Checksums for DB 1xx in a Data-Base, so that the entire Chain of Data Transmission from the Data-Base to Data-Blocks in the PLC can be validated.”  Common Issue of CMS Pixel and Silicon Strip Tracker PLC Codes  Issue common to PLC Codes of many (if not all) CMS Subdetectors

The CMS Pixel PLC Code13 Thank you !!

The CMS Pixel PLC Code14 Special Acknowledgements Piero Giorgio Verdini for taking the Time to discuss his Comments with me Stefan Lueders for providing me with an example Implementation of the diagnostic Interrupt Organization Blocks and for taking the Time for many useful Explanations