Chapter 4. CPU Operation172 PACSystems* RX7i, RX3i and RSTi-EP CPU Reference Manual GFK-2222AD4.10.3 I/O System Diagnostic Data CollectionDiagnostic data in a PACSystems I/O system is obtained in either of the following two ways:▪ If an I/O module has an associated bus controller, the bus controller provides the diagnostic datafrom that module to the CPU. For details on GBC faults, see PACSystems Handling of GBC Faults.▪ For I/O modules not interfaced through a bus controller, the CPU’s I/O Scanner subsystem generatesthe diagnostic bits based on data provided by the module.The diagnostic bits are derived from the diagnostic data sent from the I/O modules to their I/O controllers(CPU or bus controller). Diagnostic bits indicate the current fault status of the associated module. Bitsare set when faults occur and are cleared when faults are cleared.Diagnostic data is not maintained for modules from other manufacturers. The application program mustuse the BUS Read function blocks to access diagnostic information provided by those boards.Note: At least two sweeps must occur to clear the diagnostic bits: one scan to send the %Q datato the module and one scan to return the %I data to the CPU. Because module processing isasynchronous to the controller sweep, more than two sweeps may be needed to clear thebits, depending on the sweep rate and the point at which the data is made available to themodule.Discrete I/O Diagnostic InformationThe CPU maintains diagnostic information for each discrete I/O point. Two memory blocks are allocatedin application RAM for discrete diagnostic data, one for %I memory and one for %Q memory. One bit ofdiagnostic memory is associated with each I/O point. This bit indicates the validity of the associated I/Odata. Each discrete point has a fault reference that can be interrogated using two special contacts: a faultcontact (-[F]-) and a no-fault contact (-[NF]-). The CPU collects this fault data if enabled to do so by theprogramming software. The following table shows the state of the fault and no-fault contacts.Condition [FAULT] [NOFLT]Fault Present ON OFFFault Absent OFF ONAnalog I/O Diagnostic DataDiagnostic information is made available by the CPU for each analog channel associated with analogmodules and Genius analog blocks. One byte of diagnostic memory is allocated to each analog I/Ochannel. Since each analog I/O channel uses two bytes of %AI and %AQ memory, the diagnostic memoryis half the size of the data memory.The analog diagnostic data contains both diagnostics and process data with the process data being theHigh Alarm and Low Alarm bits. The diagnostic data is referenced with the -[F]- and -[NF]- contacts. Theprocess bits are referenced with the high alarm (-[HA]- and low alarm (-[LA]-) contacts. The memoryallocation for analog diagnostic data is one byte per word of analog input and analog output allocated byprogramming software. When an analog fault contact is referenced in the application program, the CPUdoes an Inclusive OR on all bits in the diagnostic byte, except the process bits. The alarm contact is closedif any diagnostic bit is ON and OFF only if all bits are OFF.