SYSTEM AND METHOD FOR MONITORING COMPUTER SERVERS AND NETWORK APPLIANCES
A sensor board includes at least one sensor in communication with a controller having a single board address to facilitate sensor polling by standard, product-independent modules of a circuit board for a computer server or network appliance. Miniature low-cost sensor boards can be placed in multiple locations on circuit boards without the necessity of being specified and integrated into the circuit board during the design phase to reduce or eliminate associated design risks or delays.
Latest Oracle Patents:
- TRACING USING CONFIGURABLE REFLECTION CHAINING
- USER INTERFACES FOR CLOUD LIFECYCLE MANAGEMENT
- GRAPHQL FILTER DESIGN FOR A GRAPHQL APPLICATION PROGRAMING INTERFACE (API) SCHEMA
- MULTIPLE TOP-OF-RACK (TOR) SWITCHES CONNECTED TO A NETWORK VIRTUALIZATION DEVICE
- MULTI-TIER DEPLOYMENT ARCHITECTURE FOR DISTRIBUTED EDGE DEVICES
1. Field
Embodiments of the present disclosure relate to a system and method for standardized monitoring of one or more operating conditions of computer servers and network appliances.
2. Background Art
Various types of sensors are provided for monitoring of environmental and operating conditions for computer servers and network appliances, such as enclosure intrusion, temperature, vibration, and airflow, for example. The number, type, and position of the sensors are often specified during design of the server and/or one or more circuit boards, each of which may include one or more processors, memory, related chipsets, and electronic components, for example. Each sensor must communicate information relating to a sensed or measured parameter to a controller or processor to determine whether the system is operating as expected and/or to provide information to a local or remotely situated device administrator. Sensors may include, but are not limited to, thermal, humidity, vibration, altitude, acoustic noise, airflow, and electrical parameter sensors. One or more sensors mounted on a motherboard may provide information relative to operating characteristics within a particular area or zone of the motherboard. For example, the operating temperature(s) may be used to control system operation, such as adjusting airflow or processor speed, to provide a status or warning message relative to operating temperature, or to shutdown the system to protect components from damage due to overheating, for example.
Various standard protocols, such as I2C (or I2C) and SMBus, for example, may be used to communicate control, diagnostic, and power management data between integrated circuit chips, which may include a microcontroller or microprocessor. The I2C and SMBus protocols are popular 2-wire buses (plus a ground connection) that include many similarities and are generally compatible with respect to devices designated as slave or master devices. As one example of operating characteristics, the I2C protocol developed by Phillips Semiconductors provides for serial communication of data between I2C integrated circuit devices using two conductors to implement an I2C bus. A serial data line and a serial clock line are provided with each device connected to the bus being addressable by a unique address. Similar to other protocols, the I2C protocol provides various multi-master bus features, such as collision detection and arbitration, to prevent data corruption when more than one master simultaneously initiates a data transfer.
Computer servers and network appliances may include multiple sensors on a single circuit board, and multiple circuit boards in a particular enclosure, rack, or other arrangement. Because the 2-wire serial bus protocols, and similar protocols, provide relatively low bandwidth for communicating information to the processor or controller, it may take several minutes for the controller to receive updated information from a particular sensor. Likewise, much of the information that could be provided by sensors sampling at frequencies ranging between 10-100 Hz, for example, can not be used due to the bandwidth constraints of the serial data bus.
SUMMARYA system and method for monitoring operating conditions of a computer server or network appliance include at least one sensor in communication with a sensor controller having a single address on a corresponding service bus for communication with a microprocessor of the server or network appliance. In one embodiment, a plurality of sensors and a sensor controller are mounted on a sensor circuit board. The sensors communicate data to the sensor controller, which operates as a master or slave device on a corresponding standard-protocol service bus with a single bus address, to process the data and communicate corresponding information to a main processor via the service bus. The sensor circuit board may be connected to a main circuit board via a corresponding board-to-board connector, which may also provide physical support for the sensor circuit board. Alternatively, the sensor circuit board may be hard-wired or soldered to the main circuit board. Each main circuit board may include one or more sensor boards to monitor operating conditions at different locations within a multi-board chassis, rack, or enclosure.
The present disclosure includes embodiments having various advantages. For example, various embodiments create a layer of hardware abstraction by providing an intermediate microcontroller or processor to process raw sensor data and provide a single bus address for communicating raw or processed data from one or more sensors. Similarly, use of a single bus address for multiple sensors may increase overall sensor data availability to the main processor by reducing latency and overhead associated with collisions and arbitration of multiple master devices attempted to communicate on a narrow bandwidth service bus. Use of a standard protocol and board connector allows the sensor board to be mounted in various locations on a particular circuit board, or on one or more boards of a multi-board application. A standard protocol and connector also facilitates modular development of the sensor circuit board independent of the development cycle of the primary circuit boards used in the server or network appliance.
The above advantages and other advantages and features will be readily apparent from the following detailed description of the preferred embodiments when taken in connection with the accompanying drawings.
Embodiments of the present disclosure described herein are recited with particularity in the appended claims. However, other features will become more apparent, and the embodiments may be best understood, by referring to the following detailed description in conjunction with the accompanying drawings, in which:
As those of ordinary skill in the art will understand, various features of the embodiments illustrated and described with reference to any one of the Figures may be combined with features illustrated in one or more other Figures to produce embodiments that are may not be explicitly illustrated or described. The combinations of features illustrated provide representative embodiments for typical applications. However, various combinations and modifications of the features consistent with the teachings of the present disclosure may be desired for particular applications or implementations. The representative embodiments used in the illustrations relate generally to a main or primary circuit board for a computer server or network or storage appliance having at least one sensor circuit board with at least one sensor and an associated microcontroller communicating with a processor on the primary circuit board via a service or signaling bus. Although a single main circuit board is illustrated, many applications will include more than one main circuit board in a chassis, rack, or enclosure. Each board may include one or more locations for sensor boards that may be selectively utilized for particular implementations. Of course, those of ordinary skill in the art may recognize similar applications or implementations consistent with the teachings of the present disclosure although not specifically illustrated or described.
As illustrated in
Connectors 60 may be used to provide physical support to secure each SBU 50, 52, 54 to circuit board 10. Connectors 60 provide a plurality of conductors to deliver power from PSU 40 and to connect each sensor board 50, 52, 54 to a signaling bus for direct or indirect communication with processor (CPU) 20. One or more firmware modules may be used to provide a standard interface between one or more sensor boards 50, 52, 54 and processor 20, for example. In one embodiment, the signaling or service bus is a low-bandwidth bus implemented by a 2-conductor bus that substantially complies with a standard specification and protocol, such as the I2C (also denoted as I2C) or SMBus specifications/protocols and is separate from the main system address/data bus used by processor 20 to communicate with memory 22, 24 and/or I/O 26. Of course, various other standard or proprietary signaling or service bus specifications may be used to communicate data between sensor boards 50, 52, 54 and processor 20. In one embodiment, MCU 200 includes logic to simulate more than one service bus protocol to provide compatibility with various main circuit boards 10. The appropriate service bus protocol may be automatically detected during operation, or may be selected by a jumper, switch, or firmware setting, for example.
As shown in
In one embodiment, controller 200 includes logic for operating as a master device to selectively initiate communication or messages on the service bus to broadcast sensor data. Data communication may be initiated in response to a trigger event, such as an intrusion sensor detecting an enclosure intrusion, or a temperature sensor exceeding a corresponding threshold. Alternatively, or in combination, data communication may be initiated at selected intervals subject to service bus collision detection and arbitration, for example. Controller 200 may also be configured to operate as a slave device such that data is communicated only in response to a polling request by processor 20 or an associated firmware module on the signaling bus, for example. Processor 200 may include logic implemented in hardware and/or software for processing raw (or pre-processed/conditioned) sensor signals from sensors 200 and communicating associated results for receipt by processor 20 on circuit board 10 via the signaling or service bus. Raw sensor data may be processed using any of a number of processing strategies to detect trends or changes in sensor values, minimum/maximum values, averages, and other statistics, for example. Similarly, sensor raw data or processed data may be compared to a threshold to with a status flag or indicator communicated to processor 20 when the sensor value crosses the threshold. In one embodiment, data from an accelerometer or vibration sensor is processed by controller 200 using a Fast Fourier Transform (FFT) to extract information associated with performance of one or more fans 42, 44, 46. The resulting vibration frequency signature and levels may be used to detect deteriorating performance and provide an associated message, alarm, or warning for additional processing by processor 20, for example.
The use of controller 200 to provide sensor data processing provides an additional layer of hardware abstraction to facilitate independent development of processor board 10 and sensor board 50. In addition, by processing raw sensor data associated with one or more sensors 202, controller 200 facilitates better utilization of the available bandwidth for the relatively narrow bandwidth signaling or service bus. Preprocessing of sensor data may reduce the number of collisions and associated overhead of service bus communications so that sensor data may be more easily and reliably communicated to processor 20 or other firmware modules on circuit board 10.
In one embodiment, a method for monitoring operating conditions of a computer system includes receiving raw data directly from one or more associated sensors as represented by block 310. The sensor data or signals may be received by a controller or micro-control unit mounted on the same board or substrate separate from the main circuit board (10,
As such, various embodiments of the present disclosure provide a standardized approach to environmental and component monitoring in computer servers, network appliances, and similar devices through use of low-cost miniature sensor boards to facilitate sensor polling by standard, product-independent firmware modules to reduce design and schedule risks and enhance reliability, accessibility, and serviceability (RAS). Similarly, various embodiments create a layer of hardware abstraction by providing an intermediate microcontroller or processor to process raw sensor data and provide a single bus address for communicating raw or processed data from one or more sensors. Use of a single bus address for multiple sensors may increase overall sensor data availability to the main processor by reducing latency and overhead associated with collisions and arbitration of multiple master devices attempting to communicate on a narrow bandwidth service bus. Use of a standard protocol and board connector allows the sensor board to be mounted in various locations on a particular circuit board, or on one or more boards of a multi-board application. A standard protocol and connector also facilitates modular development of the sensor circuit board independent of the development cycle of the primary circuit boards used in the server or network appliance.
While one or more embodiments have been illustrated and described, it is not intended that these embodiments illustrate and describe all possible embodiments within the scope of the claims. Rather, the words used in the specification are words of description rather than limitation, and various changes may be made without departing from the spirit and scope of the disclosure. While various embodiments may have been described as providing advantages or being preferred over other embodiments or prior art implementations with respect to one or more desired characteristics, as one skilled in the art is aware, one or more features or characteristics may be compromised to achieve desired overall system attributes, which depend on the specific application and implementation. These attributes include, but are not limited to: cost, strength, durability, life cycle cost, marketability, appearance, packaging, size, serviceability, weight, manufacturability, ease of assembly, etc. The embodiments described as less desirable than other embodiments or prior art implementations with respect to one or more characteristics are not outside the scope of the disclosure and may be desirable for particular applications or implementations.
Claims
1. A system for monitoring operating conditions of a main circuit board having a processor and associated signaling bus, the system comprising:
- at least one sensor;
- a controller in direct communication with the at least one sensor without using the signaling bus, the controller having an associated unique address on the signaling bus and selectively communicating sensor data on the signaling bus for receipt by the processor, wherein the at least one sensor and the controller are mounted to a substrate separate from the main circuit board, which is adapted for connection to the main circuit board to monitor operating conditions of the main circuit board.
2. The system of claim 1 wherein the system further comprises memory mounted on the substrate and directly accessible by the controller without using the signaling bus.
3. The system of claim 1 wherein the at least one sensor comprises a plurality of sensors.
4. The system of claim 3 wherein the plurality of sensors includes at least one of a temperature sensor, humidity sensor, and accelerometer.
5. The system of claim 1 further comprising a connector mounted to the substrate in communication with the controller and adapted for removably connecting the controller to a corresponding connector mounted on the main circuit board in communication with the signaling bus.
6. The system of claim 5 wherein the signaling bus comprises a 2-conductor bus and wherein the controller comprises logic for communicating with the processor using a standard 2-conductor bus protocol.
7. The system of claim 1 wherein the at least one sensor includes a plurality of sensors and wherein the controller includes logic for communicating data associated with each of the plurality of sensors to the processor on the main circuit board using the unique address on the signaling bus.
8. The system of claim 1 wherein the signaling bus comprises a 2-conductor bus and wherein the processor communicates with the controller using the unique address on the signaling bus.
9. The system of claim 1 wherein the controller functions as a master device and initiates communication of sensor data on the signaling bus.
10. The system of claim 9 wherein the controller initiates communication of sensor data in response to a trigger event.
11. The system of claim 9 wherein the controller initiates communication of sensor data at a designated interval.
12. The system of claim 1 wherein the controller operates as a slave device and responds to requests for sensor data.
13. The system of claim 1 wherein the controller comprises logic for processing raw sensor data and communicating associated results to the processor on the main circuit board over the signaling bus.
14. A computer system comprising:
- a main circuit board having a processor and associated signaling bus;
- a sensor board secured to the main circuit board, the sensor board having a controller in communication with the signaling bus and accessible by a single unique signaling bus address, the sensor board including a controller in direct communication with at least one sensor and associated memory without using the signaling bus, the controller processing raw data from the at least one sensor and communicating associated results to the processor over the signaling bus.
15. The computer system of claim 14 wherein the sensor board is secured to the main circuit board using a standard board-to-board connector.
16. The computer system of claim 14 wherein the signaling bus comprises a 2-conductor bus.
17. The computer system of claim 14 further comprising a plurality of sensor boards each secured to the main circuit board and communicating with the processor via a unique address on the signaling bus.
18. A method for monitoring operating conditions of a computer system having a circuit board with a processor and associated signaling bus, the method comprising:
- communicating data from a plurality of sensors to the processor via an associated controller in direct communication with the sensors, the controller and sensors mounted on a substrate separate from the circuit board, wherein the controller is addressable via a single address on the signaling bus.
19. The method of claim 18 wherein the signaling bus is a 2-conductor bus and wherein communicating comprises communicating data in response to polling by the processor.
20. The method of claim 18 further comprising processing raw data from the sensors using the controller before communicating data via the signaling bus.
Type: Application
Filed: Jul 22, 2010
Publication Date: Jan 26, 2012
Patent Grant number: 8648690
Applicant: ORACLE INTERNATIONAL CORPORATION (Redwood City, CA)
Inventors: Anton Bougaev (La Jolla, CA), Aleksey Urmanov (La Jolla, CA), James Britton (El Paso, TX)
Application Number: 12/841,239
International Classification: G05B 23/02 (20060101);