Electrical computers and digital processing systems: support – Computer power control – Power conservation
Reexamination Certificate
1999-12-30
2004-04-27
Lee, Thomas (Department: 2185)
Electrical computers and digital processing systems: support
Computer power control
Power conservation
C713S323000, C713S324000
Reexamination Certificate
active
06728892
ABSTRACT:
BACKGROUND OF THE INVENTION
The present invention relates generally to the field of data communications, and more particularly, to the field of serial communications bus controllers and microcontrollers that incorporate the same.
CAN (Control Area Network) is an industry-standard, two-wire serial communications bus that is widely used in automotive and industrial control applications, as well as in medical devices, avionics, office automation equipment, consumer appliances, and many other products and applications. CAN controllers are currently available either as stand-alone devices adapted to interface with a microcontroller or as circuitry integrated into or modules embedded in a microcontroller chip. Since 1986, CAN users (software programmers) have developed numerous high-level CAN Application Layers (CALs) which extend the capabilities of the CAN while employing the CAN physical layer and the CAN frame format, and adhering to the CAN specification. CALs have heretofore been implemented primarily in software, with very little hardware CAL support. Consequently, CALs have heretofore required a great deal of host CPU intervention, thereby increasing the processing overhead and diminishing the performance of the host CPU.
Thus, there is a need in the art for a CAN hardware implementation of CAL functions normally implemented in software in order to offload these tasks from the host CPU to the CAN hardware, thereby enabling a great savings in host CPU processing resources and a commensurate improvement in host CPU performance. One of the most demanding and CPU resource-intensive CAL functions is message management, which entails the handling, storage, and processing of incoming CAL/CAN messages received over the CAN serial communications bus and/or outgoing CAL/CAN messages transmitted over the CAN serial communications bus. CAL protocols, such as DeviceNet, CANopen, and OSEK, deliver long messages distributed over many CAN frames, which methodology is sometimes referred to as “fragmented” or “segmented” messaging. The process of assembling such fragmented, multi-frame messages has heretofore required a great deal of host CPU intervention. In particular, CAL software running on the host CPU actively monitors and manages the buffering and processing of the message data, in order to facilitate the assembly of the message fragments or segments into complete messages.
Based on the above and foregoing, it can be appreciated that there presently exists a need in the art for a hardware implementation of CAL functions normally implemented in software in order to offload these tasks from the host CPU, thereby enabling a great savings in host CPU processing resources and a commensurate improvement in host CPU performance.
The assignee of the present invention has recently developed a new microcontroller product, designated “XA-C3”, that fulfills this need in the art. The XA-C3 is the newest member of the Philips XA (e
X
tended
A
rchitecture) family of high performance 16-bit single-chip microcontrollers. It is believed that the XA-C3 is the first chip that features hardware CAL support.
The XA-C3 is a CMOS 16-bit CAL/CAN 2.0B microcontroller that incorporates a number of different inventions, including the present invention. These inventions include novel techniques and hardware for filtering, buffering, handling, and processing CAL/CAN messages, including the automatic assembly of multi-frame fragmented messages with minimal CPU intervention, as well as for managing the storage and retrieval of the message data, and the memory resources utilized therefor.
The present invention relates to a power conservation scheme that enables one or more hardware components of the microcontroller, e.g., the CPU core, to remain in a sleep or idle mode while other hardware components, e.g., CAL/CAN hardware components, are active, e.g., automatically assembling a multi-frame, fragmented message.
SUMMARY OF THE INVENTION
The present invention encompasses a method for conserving power in a CAN microcontroller that includes a processor core and a CAN/CAL module that includes a plurality of sub-blocks that cooperatively function to process incoming CAL/CAN messages, which method includes the steps of placing the processor core in a power-reduction mode of operation (e.g., a sleep or idle mode of operation), placing the CAN/CAL module in a power-reduction mode of operation, and activating the CAN/CAL module to process an incoming CAL/CAN message (e.g., to perform automatic hardware assembly of a multi-frame, fragmented CAL/CAN message), thereby terminating the power-reduction mode of operation thereof, while the processor core is in its power-reduction mode of operation.
In a preferred embodiment, the method further includes the steps of generating a message-complete interrupt in response to completion of assembly of the multi-frame, fragmented CAL/CAN message, and activating the processor core in response to the message-complete interrupt. In a particular preferred embodiment, the method further includes the steps of repeating the step of placing the CAN/CAL module in a power-reduction mode of operation and the activating step, in seriatim, a plurality of times, while the processor core is in its power-reduction mode of operation.
In a present specific implementation, the step of placing the CAN/CAL module in a power-reduction mode operation is performed by a power or sleep control module contained within the CAN/CAL module, in the following manner. Particularly, first logic circuitry associated with each of the plurality of sub-blocks generates a respective first signal having a first logic level if that sub-block is currently active, and having a second logic level if that sub-block is not currently active. Second logic circuitry generates a second signal having a first logic level if any of the first signals are at the first logic level, and having a second logic level in response to all of the first signals having the second logic level. Third logic circuitry generates a third signal having a first logic level if the processor core is not idle, and having a second logic level if the processor core is idle. Fourth logic circuitry generates a fourth signal having a first logic level if an incoming message is being received, and having a second logic level if an incoming message is not being received. Fifth logic circuitry generates a clock disable signal in response to the second, third, and fourth signals all being at their respective second logic level. Sixth logic circuitry disables a clock applied to the CAN/CAL module in response to the clock disable signal to thereby place the CAN/CAL module in the power-reduction mode of operation.
In a present specific implementation, the step of placing the processor core in a power-reduction mode of operation is performed by a power or sleep control module contained within the CAN/CAL module, in the following manner. Particularly, a first logic portion of the power control module generates a clock disable signal having a first logic level if the processor core has pending interrupts, and having a second logic level if the processor core has no pending interrupts, and a second logic portion of the power control module disables a clock applied to the processor core in response to the clock disable signal, to thereby place the processor core in the power-reduction mode of operation.
The present invention, in another of its aspects, encompasses a method for conserving power in a CAN microcontroller that includes a processor core and a CAN/CAL module, which method includes the steps of placing the processor core in a power-reduction mode of operation (e.g., a sleep or idle mode of operation), while the CAN/CAL module is actively processing an incoming CAL/CAN message (e.g., to perform automatic hardware assembly of a multi-frame, fragmented CAL/CAN message), and terminating the power-reduction mode of operation in response to an interrupt.
In a preferred embodiment, the CAN/CAL module automatically assembles incoming, multi-frame, fragmented messages while the pr
Birns Neil E.
Habben Hartmut
Silvkoff William J.
Cao Chun
Waxler Aaron
LandOfFree
Method for conserving power in a can microcontroller and a... does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Method for conserving power in a can microcontroller and a..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method for conserving power in a can microcontroller and a... will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-3219561