PLUGGABLE DEVICE FOR CONTROLLING INTERCONNECTED CIRCUITS
BACKGROUND OF THE INVENTION
One aspect of the present invention relates to electronic toys that are used to educate or entertain people.
It is well known that microprocessors have been used in certain applications to animate aspects of a toy. For example, stuffed animals are sometimes designed to provide an audio output in response to a user pressing its belly. In these and similar applications, it is common to integrate circuitry onto a single circuit board or as few boards as possible to simplify assembly of the electronic toy and reduce overall part costs. Electronic toys typically support only a limited set of features because such electronic devices are usually limited by the corresponding sophistication of controlling electronics. These toys therefore offer limited entertainment value since children quickly tire of novel features that were once thought to be exciting. As a result, most electronic toys designed for children tend to sit around unused or are thrown away.
The functionality of electronic devices tends to increase as the technology of manufacturing and designing silicon chips advances. As a result of more powerful silicon, there is naturally a higher demand for input/output pins on circuit cards and electronic devices . A common solution to address the need for more pins is to supply additional connectors and
corresponding cables between electronic devices . This can be problematic since extra cables tend to easily become entangled. Even worse, such cables can become disconnected and dragged away when a person accidentally becomes entangled with the cable. This potentially results in damage to the electronic device.
Another solution for providing more pins between electronic devices is to simply expand the pin count of existing connectors. This also can be problematic. For example, electronic device connectors used to provide connectivity between a circuit card and electronic device can be difficult to mate when the connectors support a high pin count. This renders it difficult for challenged individuals having potentially limited motor skills to properly align and insert some circuit cards into corresponding receptacles of certain electronic devices. An electronic toy for children utilizing connectable electronic devices therefore must address this issue in order to be successful .
SUMMARY OF THE INVENTION
The present invention is an apparatus and method generally directed towards enhancing the utility of an interconnected circuit system. This is achieved, at least in part, by providing a controller in a pluggable housing that is in communication with elements of the interconnected circuit system. Control instructions generated by a processor in the pluggable housing are communicated to controlled elements using a protocol according to a configuration of the interconnected circuit system.
More particularly, one aspect of the present invention involves controlling at least one electrically controlled element of a device via a controller residing in a pluggable housing. An electrical connector of the pluggable housing is plugged into a complementary connector of the controlled device, supporting the communication of information such as the transfer of control instructions between the controller and electrically controlled device. In one application, the electronically controlled device is a toy.
A controller such as a master processor in the pluggable housing generates the control instructions by which the at least one electrically controlled element of the device is controlled. The controller utilizes configuration information retrieved from target circuitry of the device to determine which of a set of features are supported by the corresponding device into which the controller is plugged. Preferably, the controller in the pluggable housing establishes a communication protocol through the connector depending on received configuration data. For instance, the controller in the pluggable housing determines a configuration of interconnected circuits of the controlled device by reading memory in communication with the device through the connector of the pluggable housing.
A controlled feature of the device may be a mechanical element such as a speaker or motor in communication with the electronically controlled device. In turn, the mechanical element is optionally used to control a mechanical feature of a child's toy such as a limb or voice of a stuffed animal.
The controller such as a processor in pluggable housing may utilize a PCMCIA (Personal Computer Memory Card International Association) protocol to communicate generated control instructions to target electronic circuitry accessible through the connector of the pluggable housing. Additionally, buffers in the pluggable housing are optionally used to temporarily store information such as control information generated by the processor. Accordingly, processor generated information stored in the buffers is multiplexed to target electronic circuitry in an assigned time slot using a corresponding communication protocol . This feature is potentially used to support real-time control of elements such as mechanical assemblies in communication with the device.
Instructions executed by the controller in the pluggable housing may be downloaded from or through one of multiple interconnected circuit boards in communication with the processor through connector of the pluggable housing. Alternatively, an instruction set may reside in non-volatile memory within the pluggable housing. Interconnected circuit boards in communication with the device optionally provide configuration data indicating target circuitry located on the interconnected circuit boards and/or a protocol that is to be used for corresponding communications.
The controller in the pluggable housing optionally communicates with other pluggable circuit cards connected to the controllable device. A subset of signals interconnecting the pluggable housing to other pluggable circuit cards may be used to communicate with other target circuits. For example, electronic signals
interconnecting pluggable circuit cards, one of which is the pluggable housing, may also be connected to parallel or serial interfaces of target circuits in communication with the controllable device. Another aspect of the present invention involves providing an electronically controlled device such as an electronic backplane circuit including at least one electrically controlled element. A connector on the device receives a programmable controller that generates control instructions. Preferably, communication between the controller and device through the connector enables the controller to receive information indicating a configuration of the device. Based on a particular configuration, the controller uses appropriate protocols to communicate through the connector to control at least one element of the device. The element can be an assembly such as a speaker, sensor, motor or the like in communication with the device.
The device can include multiple connectors for receiving multiple circuit cards, circuit boards or other electronic components. It is thus possible that the controller is consequently in communication not only with electronics on the device itself, but also circuits connected to the device through the multiple connectors. For example, an electronic circuit in communication with the device via one of the multiple connectors optionally provides a connection to a network. The controller attached to the device would then have access to data transmitted over a network, which is optionally used to control an electrical element of the device.
In a certain embodiment including multiple circuit cards connected to the device, an arbiter circuit of a
backplane controller intercepts and generates signals between, for example, a computer card and auxiliary circuit card for facilitating communication between both such cards. Additionally, the arbiter circuit facilitates communication with target circuitry located on a backplane circuit of the device using a narrow path communication protocol. Configuration data is potentially retrieved from memory on the auxiliary circuit card in addition to memory located on the device itself.
In one application, the device includes a wireless transceiver for communicating data packets such as control information to at least one other electronic device. Data packets generated by a controller such as a processor are transmitted to control or receive information from at least one other electronic device via a wireless communication link. Each data packet optionally includes an address indicating to which of multiple electronic devices a data packet is directed. Data packets can include raw data for controlling an electrical element and an address indicating to which electrical element or interface a data packet is directed.
In another application, the system of the present invention includes a sensor that detects a presence of other electronic devices via an electronic tag in each device. Received tag information can be used to identify features of a corresponding electronic device. For example, a tag can include encoded digital information indicating a model and version of electronically controlled electronic devices in the immediate vicinity of the sensor. These devices can
then be controlled based on commands issued by the controller as previously mentioned.
Another aspect of the invention involves including a host processor in the controller or pluggable housing for controlling the electrically controllable elements. Accordingly, control instructions are issued by the host processor to orchestrate synchronous or real-time control of multiple elements. In one embodiment, an auxiliary circuit card includes a processor that generates additional instructions to control target circuits of the interconnected circuit system.
The novel features of the present invention provide many advantages over the prior art. In particular, the modular nature of the aforementioned interconnected circuit system supports portability of circuit elements and devices. For example, based on advances in processor speed, a circuit device such as a pluggable housing including a processor is easily upgraded by merely replacing an old processor with a faster version.
According to the principles of the present invention, it is possible to create different devices based on unique configurations of the interconnected circuit system. Marketability of the device to price- sensitive consumers is thus enhanced because it is not necessary to purchase every possible modular component of the system all at once to enjoy its features. Rather, separate elements or circuit boards of the interconnected circuit system can be purchased over a period of time as desired to enhance its features. The base electronics, therefore, need not be thrown away as
it can be used in conjunction with new modular circuit devices to create new and more sophisticated toys.
One aspect of the present invention involves an apparatus and corresponding method for supporting connectivity between a circuit card and another electronic device. In a preferred embodiment, the electronic device includes a docking port having a port connector for receiving an end of the circuit card into which the circuit card is mated. The end of the circuit card is mated with the docking port by an axial movement of the circuit card into the docking port . A guide in the docking port gradually narrows for funneling the end of the card into the docking port of the electronic device. Accordingly, the guide renders it a simpler task to insert an end of the circuit card into a corresponding receptacle of the electronic device because the guide helps align and position the end of the card for docking with the port connector. This relieves the card handler from having to precisely align the card with the corresponding receptacle so that the card can be mated with another electronic device.
The circuit card optionally includes a pluggable connector disposed at an axial end of the circuit card. As the card is moved axially into the docking port, the guide aligns the end of the card so that the pluggable connector is properly mated with a receptacle disposed in the docking port. In one embodiment, the pluggable connector disposed at the end of the circuit card and corresponding receptacle are based on the PCMCIA (Personal Computer Memory Card International Association) standard.
The gradually narrowing guide in the docking port can be formed of many different geometries. For example, the guide is optionally shaped to include a mouth having flat surfaces angled inward to funnel the end of the card into the port connector of the docking port. Alternatively, the guide can be shaped to include a mouth having elliptical surfaces curved inward to funnel the end of the card into the port connector of the docking port. The mouth of the docking port is preferably at least twice as large as a narrow dimension of the axial end of the circuit card so that the card is easily inserted.
The novel aspects of the present invention provide many advantages over the prior art. In particular, the wide mouth into which the circuit card is inserted renders it a much easier task to insert a device such as a circuit card into a corresponding receptacle. Thus, a child or senior citizen having limited motor skills is able to provide the motion and alignment necessary to connect a circuit card to another electronic device. Accordingly, it is therefore less likely that a connector disposed in the end of the circuit card or receptacle will be damaged due to adverse handling such as forcing the card into a socket when it is misaligned. Another aspect of the present invention involves a method and apparatus for providing electrical signal connectivity between a circuit card and an electronic device into which it is plugged. This is achieved by providing a circuit card having contact elements on a face of the card adjacent to an axial end of the card. The card is inserted axially, end first into a docking port where the circuit card makes contact with
corresponding electrical port contacts disposed in the docking port . As the card is inserted into the docking port, port contacts transversely biased toward the face of the card are held away from the card. The port contacts are biased so that they eventually touch the corresponding contact elements of the card in the card's final position.
In one embodiment, the docking port includes a spring-loaded restraining device that holds the port contacts away from the card as the card is moved axially into the docking port. In the card's final position, the restraining device drops into a notch in the face of the card so that the port contacts are no longer held away from the contact elements of the card, i.e., the port contacts are then coupled to corresponding contact elements on the face of the circuit card. Accordingly, electrically distinct signals in addition to those optionally provided by a connector at the axial end of the card are supported between the computer card and the electronic device. The end connector can be a PCMCIA (Personal Computer Memory Card International Association) connector.
The circuit card itself is optionally a circuit board that is shielded by a protective housing and the contact elements are disposed on a face of the housing adjacent to the end of the card.
In one application, the contact elements are noncontiguous with an edge of the circuit card. Multiple electrically distinct contact elements can be disposed in an axial direction of the card, increasing the overall number of potential connections between the circuit card and the electronic device. This provides a
beneficial use of the surface of the card that is quite often unused.
As previously discussed above, a guide that gradually narrows for funneling the end of the card into the docking port of the electronic device can be provided to make it easier to plug the axial end of the card into the docking port. Thus, different aspects of the present invention can be combined and utilized in a single application to further leverage its beneficial features. For example, the funneling aspects of the guide can be combined with the contacts provided by the connective system as previously described between a circuit card and electronic device.
The novel features of the present invention provide many advantages over the prior art. For example, contact elements can be advantageously disposed on an axial surface of a circuit card to provide additional connectivity between a circuit card and electronic device. Additionally, the wide mouth docking port into which the circuit card can be inserted renders it a much easier task to mate a device such as a circuit card with a corresponding receptacle .
BRIEF DESCRIPTION OF THE DRAWINGS
The foregoing and other objects, features and advantages of the invention will be apparent from the following more particular description of preferred embodiments of the invention, as illustrated in the accompanying drawings in which like reference characters refer to the same parts throughout the different views . The drawings are not necessarily to scale, emphasis
instead being placed upon illustrating the principles of the invention.
Fig. 1 is a diagram of a child's toy incorporating the interconnected circuit system of the present invention to create a "live" toy.
Fig. 2 is a diagram illustrating various circuit components of the interconnected circuit system of the present invention.
Fig. 3 is a block diagram of a backplane circuit in communication with various controlled elements according to the principles of the present invention.
Fig. 4 is a diagram of an embodiment of a pluggable computer card of the present invention.
Fig. 5 is a diagram of another embodiment of a pluggable computer card of the present invention.
Fig. 6 is a buffer filled with sample data packets and a corresponding timing diagram illustrating a transmission time of the data packets according to the principles of the present invention. Fig. 7 is a detailed diagram of inbound/outbound buffers for multiple target circuits and a corresponding timing diagram illustrating a transmission time of data packets according to the principles of the present invention.. Fig. 8 is a detailed diagram of inbound/outbound buffers for multiple target circuits and a corresponding timing diagram illustrating transmission time of data packets according to the principles of the present invention. Fig. 9 is a schematic of an exemplary backplane supporting two card sockets according to the principles of the present invention.
Fig. 10 is a schematic of an exemplary backplane supporting a single card socket according to the principles of the present invention.
Fig. 11 is a diagram illustrating protocols supported by signals in connector of pluggable housing according to the principles of the present invention.
Fig. 12 is a pictorial diagram illustrating an embodiment utilizing a flexible circuit board according to the principles of the present invention. Fig. 13 is a pictorial diagram illustrating a "flat wall" funnel for guiding a circuit card into a receptacle according to the principles of the present invention.
Fig. 14 is a pictorial diagram illustrating a "round-wall" funnel for guiding a circuit card into a receptacle according to the principles of the present invention.
Fig. 15 is a pictorial diagram of a system for supporting connections between a circuit card and electronic device according to the principles of the present invention.
Fig. 16 is a pictorial diagram of a system for providing connectivity between a circuit card and an electronic device according to the principles of the present invention.
DETAILED DESCRIPTION OF THE INVENTION
A description of preferred embodiments of the invention follows.
Fig. 1 is an illustration of a child's "live" toy incorporating several principles of the present invention. Toy 1000 such as a teddy bear includes an
interconnected circuit system 100, electro-mechanical devices such as first motor 1010 or speaker 1005 and related computer equipment such as base station 1070. At the core of the interconnected circuit system 100 is backplane 130 disposed in body cavity 1002 of toy 1000. Computer card 115 plugged into backplane 130 includes a processor that issues control instructions for controlling corresponding elements such as speaker 1005, first motor 1010, second motor 1020, and first transceiver 1040. Auxiliary circuit card 140 in communication with backplane 130 and electrically controlled elements provides additional electronic functionality to the interconnected circuit system 100. For example, auxiliary circuit card 115 can be a memory card or even a circuit card including a control processor that also generates control instructions. Based on an orchestration of moving body parts such as first limb 1015 and output of sound from speaker 1005, toy 1000 can be made to appear as though it is alive. Movement of first limb 1015 is achieved by mechanical torque supplied by first motor 1010. As mentioned, computer card 115 generates control instructions to first motor 1010 so that it is appropriately positioned at a given time. Computer card 115 also generates control instructions for second motor 1020 to control corresponding movements of second limb 1025 and speaker 1005 to produce a related sound output. Accordingly, a waving hand of toy 1000 can be synchronized with output of speaker 1005 sounding words such as "hello" or "good-bye."
A sensor 1052 such as an electronic switch, motion sensing device, or pressure sensor is optionally mounted
in toy 1000 to detect aspects of the surrounding environment. This information can be used by computer card 115 on backplane 130 to animate toy 1000. For example, a sensor 1052 such as a electronic switch can be monitored by computer card 115 to detect when it is pressed a certain number of times or which part of toy 1000 is touched. A sensor 1052 such as an accelerometer can be used to detect movement of toy 1000. Finally, sensor 1052 can be a pressure sensor device that senses when a body part is touched or mishandled, e.g., a child squeezing a limb too hard. Consequently, toy 1000 can respond accordingly to sensing these environmental inputs. For example, toy 1000 can respond to a handler saying: "You are squeezing my arm too hard!" Although not shown, dumb toy 1100 can include similar types of sensing devices.
Toy 1000 is optionally in communication with base station 1070 via link 1050, which is preferably a wireless connection based on infrared or RF (radio frequency) technology. Base station 1070 includes electronics such as a computer 1072 to coordinate communications between first transceiver 1040 disposed in toy 1000 and second transceiver 1060 coupled to base station 1070. Link 1050 preferably supports the transmission of digitally encoded information. Base station 1070 optionally controls display 1075 and accesses information on network 1080 such as the Internet. Based on the interconnectivity of electronic circuits and components as shown, toy 1000 is capable of also receiving control instructions issued by base station 1070 and responding to network information such
as control instructions or configuration data received through link 1050.
Although not shown in Fig.l, computer card 115 can include an integrated transceiver device to transmit and receive information from base station 1070 and other electronic devices. In this configuration, the computer card 115 need not be connected to backplane 130 of toy 1000 to relay information to other electronic devices. Consequently, data packets received from base station 1070 can be processed to generate new control information to control aspects of dumb toy 1100.
An electronic serial identification tag 1027 such as a magnetic resonant tag in toy 1000 provides a method of detecting whether an electronic toy is located within a predetermined range of base station 1070. Similarly, an electronic tag 1127 is disposed in dumb toy 1100. Each device preferably includes a unique tag.
Tag sensor unit 1063 generates a signal via antenna 1064. The electronic tags 1027, 1127 then provide identification information in a form such as a serial string of digital data or radio signal response profile in a feedback signal. This feedback signal identifies the presence of toy 1000 or dumb toy 1100 in the range of tag sensor unit 1063. Preferably, the tag information is used by computer card 115 to determine what other potentially controllable electronic toys are in the immediate vicinity of tag sensor unit 1063. This method of automatically sensing the presence of other toys and corresponding configurations alleviates an operator from the chore of manually providing the same information to either base station 1070 or toy 1000,
indicating that such devices are present in the immediate area and are potentially controllable.
It should be noted that although tag sensor unit 1063 is shown coupled to base station 1070, tag sensor unit 1063 is optionally coupled to toy 1000 or dumb toy 1100 in an alternative embodiment. Also, electronic tags 1027 or other position tracking devices can be used to sense the position of electronic tags 1027, 1127 and corresponding devices such as toy 1000 or dumb toy 1100. Another method of detecting a presence of electronic devices such as toy 1000 and dumb toy 1100 is to generate a query signal from the transceiver of either base station 1070 or toy 1000 and detect whether any electronic devices respond to such a query. Electronic toy system 1100 optionally includes toys with less sophisticated electronics than toy 1000. For instance, low-cost dumb toy 1100 does not necessarily include potentially expensive computer card 115. Rather, dumb toy 1100 includes an electronic circuit board 1110 for simple processing of digital information received at transceiver 1140 to generate an output such as sound at speaker 1120. In this way, the processing power of computer card 115 can be leveraged to reduce an unnecessary duplication of sophisticated electronics in other electronic devices.
It should be note that dumb toy 1100 optionally includes input devices such as buttons or electronic switches. An electronic circuit within dumb toy 1100 encodes status information of the input devices into data packets that are transmitted to other devices such as toy 1000 and base station 1070 via transceiver 1140. Depending on a particular application, these data
packets can be transmitted automatically such as on a periodic basis or transmitted in response to a corresponding query command issued by other electronic devices . Data packets generated by computer card 115 can be encoded and transmitted from transceiver 1040 to control aspects of other devices such as dumb toy 1100 or base station 1070. For example, generated data packets optionally include an address indicating to which device a packet is directed. Part of the data packet can indicate to which interface or electrical element such as a DAC (digital to analog converter) of a device a data packet is directed. Accordingly, raw data in the data packet can be used to control a particular aspect of, for example, dumb toy 1100 such as speaker 1120 without requiring sophisticated electronics to process the raw data. That is, a simple decode circuit in dumb toy 1100 can be used to determine that a received data packet is directed to a particular interface such as a DAC to control an output of the target electronic device. Thus, according to the principles of the present invention, it is possible to sense a presence of electronic toy devices and simultaneously control the multiple electronic circuit toys based on control information generated by computer card 115.
In one application, information such as MP3 data is received and processed by computer card 115 of toy 1000. Decoded data information is then relayed to dumb toy 1100 via communication link 1150. This serial data received at transceiver 1140 of dumb toy 1100 is then passed to electronic circuit board 1110 including a D/A converter and amplifier circuitry for generating sound
output at speaker 1120. In this way, the processing power of computer card 115 in toy 1000 is leveraged to provide support for more features of electronic toy system 1200 at the relatively small incremental cost of dumb toy 1100.
It should be noted that toy 1000 is not limited to the configuration of a stuffed animal. For example, toy 1000 optionally is a toy car including similar control electronics as toy 1000 for controlling features of a car such as motors to propel the car and steer it from side to side. Similarly, dumb toy 1000 is optionally a dog capable of walking and running. In this toy configuration, control information is transmitted from the car embodied as toy 1000 to the dog embodied in dumb toy 1100, making it appear as though the dog is chasing the car on its own volition. That is, control information generated by toy car is transmitted to dumb toy 1100 embodied as a dog. To provide enhanced realistic features, speaker 1120 can be used to generate "barking" sounds based on corresponding control instructions generated by toy 1000 car or optionally base station 1070.
One aspect of the present invention as previously mentioned involves incorporating modular electronics to create a "live" toy. The present application is unique and advantageous over other electronic toys that include non-expandable and non-upgradable integrated circuitry. That is, most electronic toys do not support a set of modular circuitry as in the present application. The modular nature of the interconnected circuit system 100 of the present invention allows a consumer to expand a toy's features by purchasing more sophisticated
modular circuits such as computer card 115 or base station 1070 including faster processors. In a similar manner, interconnected circuit system 100 can be expanded to include an auxiliary circuit card 140 having more memory as such items become available for use.
Since there are many potential add-on features to the interconnected circuit system 100 of the present invention that are not necessarily required to enjoy use of toy 1000, a consumer is not forced to purchase every available component such as base station 1070 and related electronic support equipment. Additionally, it is not necessary for a consumer to purchase an expensive and sophisticated computer card 115 including the fastest available processor or auxiliary circuit card 140 for controlling the device. Initial costs to buy a base product of the present invention is therefore potentially minimal.
In some applications, toy 1000 such as a stuffed animal operates as a "stand-alone" device independent of base station 1070. That is, toy 1000 includes entertaining features that do not depend on communication with base station 1070. In one such application, toy 1000 includes a sensor in its belly that is potentially depressed by a child in response to an output at speaker 1005 emitting the sound: "squeeze my belly three times." After sensing a number of belly depressions, the toy 1000 will respond using a synthesized voice whether its belly was depressed the requested number of times. As previously illustrated, the present invention can be used to provide entertainment while teaching a child valuable lessons at the same time. The physical
act of interconnecting modular components of the present invention itself is a valuable exercise for developing a child's cognitive and motor skills. At a more sophisticated level, the conscious act of determining how a particular device shall be configured or fit together is also a potentially valuable exercise for supporting further intellectual development of a child. For example, to create a live toy with a particular personality or set of features, an appropriate computer card 115 and related components such as electromechanical devices must be assembled appropriately to produce a desired type of toy 1000. The modular features of the present invention are similar to other assembled toys to the extent that they require combining or interconnecting components to create a uniquely configured product. However, the building blocks of the present invention are electronic circuit boards, electro-mechanical devices and related electronic equipment . Technology changes over time as do the interests of a child as he or she grows older. As technology advances, more sophisticated components of the interconnected circuit system 100 can be provided to a consumer in a piece-meal manner. As new applications are developed and available for use by consumers, there is no need to replace the entire system since many modular components of system 1000 can be used in different applications.
Components of the interconnected circuit system 100 and related equipment can be upgraded or purchased to support more advanced functionality for the more sophisticated taste of a child as he or she grows older.
For example, the exemplary embodiment of toy 1000 capable of requesting to have its belly squeezed can be upgraded to include base station 1070, display 1075 and components supporting communication on link 1050. Based on a proper utilization of such components, a more sophisticated system 1200 can be used to teach a child how to read. In such an embodiment, a child sitting with toy 1000 is presented with text and related pictures of a story book on display 1075. When the child directs first transceiver 1040 in eye sockets of toy 1000 towards display 1075, base station 1070 transmits digital information such as audio data to toy 1000 that is to be played at speaker 1005. In this way, it appears to the child that toy 1000 is reading text on display 1075. A prompt is optionally used to highlight a particular word on display 1075 as it is being read aloud by toy 1000, indicating to a child which word is being read aloud at a particular time. This configuration of toy 1000 can be used to teach a child how to read in the absence of a "live" teacher. In yet a more advanced application, a more intellectually developed child such as an adult may provide text that is read aloud by toy 1000. For example, user at keyboard 1085 optionally provides a text input, which is converted to a corresponding sound output at speaker 1005. Further, input at keyboard 1085 is optionally used to control more complex features of toy 1000 such as body movements. In other words, a user potentially supplies or chooses instructions that are to control corresponding features of toy 1000. In one application, toy 1000 includes a microphone and input data is processed using a speech recognition algorithm.
Accordingly, voice commands by people can be used to generate control instruction for toy 1000. For example, toy 1000 can be embodied as a dog that reacts to certain commands such as "roll over" or "bark" issued only by its master.
In one embodiment, modular components of interconnected circuit system 100 such as auxiliary card 140 or backplane 130 include configuration devices and software instruction sets that are downloaded to computer card 115 or computer 1072 at base station 1070 when toy 1000 is activated, i.e., power is turned on. This type of automatic or semi-automatic configuration at start-up such as downloading an instruction set frees the consumer from having to read lengthy manuals to properly configure the modular device for use. In one embodiment, configuration information or a set of software instructions is downloaded into non-volatile memory on computer card 115 from network 1080 such as the Internet or base station computer 1072. These user- friendly features render it possible for consumers who are not computer experts to enjoy the use of toy 1000 and its many potential configurations without spending an undue amount of time reading an owner's manual. Computer card 115 and auxiliary circuit card 140 are optionally based on the PCMCIA Standard. This configuration of computer card 115 is unique as a master processor residing within a pluggable housing controls the interconnected circuit system 100 of the present invention. Thus, aspects of the present invention challenge the paradigm that a host computer must be integrated on a circuit device into which other auxiliary circuit devices are plugged. According to the
principles of the present invention, the master processor in computer card 115 is encased in a pluggable housing that is plugged into the device to be controlled. Further distinguishing computer card 115 and reducing overall costs of interconnected circuit system 100 is the potential use of computer card 115 designed according to a PCMCIA standard. This is a unique approach because circuit cards based on the PCMCIA format are typically slave devices. In the present application, a master processor and related circuitry is reduced to fit into a pluggable PCMCIA housing. One advantage of this approach is the reduced cost of such circuit cards resulting from a reduced cost of PCMCIA related components, which are readily available at commodity prices .
Utilizing a standard socket and pinout on computer card 115 and auxiliary circuit card 140 renders it possible to provide more advanced modular circuitry as new technology such as faster processors become available. Additionally, auxiliary circuit cards 140 such as PCMCIA cards available in the market can be used in the interconnected circuit system 100. Hence, there is no need to necessarily develop and manufacture expensive custom cards for the present application. This results in lower overall costs to consumers.
Preferably, a line of toys is manufactured to support a common type of computer card 115. Thus, use of a "brain" such as computer card 115 is portable to the extent that a common computer card 115 can be used to provide control instructions for different types of toys into which the computer card 115 is plugged. For
example, toy 1000 is potentially embodied as a race car or other such device utilizing a common pluggable computer card 115 to issue control instructions. Appropriate software is optionally downloaded into the computer card 115 and the configuration of associated toy 1000 is loaded from the toy 1000 itself.
Fig. 2 is a diagram of interconnected electronic circuits according to the principles of the present invention. As shown, interconnected circuit system 100 includes computer card 115, backplane 130, and auxiliary circuit card 140. In a typical configuration, computer card 115 is in communication with auxiliary circuit card 140 and electronic circuitry on backplane 130. Accordingly, several aspects of interconnected circuit system 100 are controlled by computer card 115.
Although not shown, backplane 130 optionally includes additional sockets for supporting more than two circuit cards such as computer card 115 and auxiliary circuit card 140. Computer card 115 includes circuit substrate 111 for mounting electronic circuitry thereon, and housing 110 for protecting circuitry therein. Preferably, housing 110 provides safe dissipation of electrostatic discharge -so that computer card 115 can be safely handled by a consumer. For example, computer card 115 optionally includes a metallic casing that acts as a protective ground shield. In one embodiment, housing 110 is designed to prevent damage from environmental elements such as rain, humidity, temperature and vibration.
Circuit substrate 111 includes connectors for interfacing circuitry to target circuits within
interconnected circuit system 100. For example, circuit substrate 111 includes pluggable connector 122 and optional connector 112 at top-side (as shown) of computer card 115. Pluggable connector 122 in computer card 115 mates with first card socket 132. As shown, the pluggable connector 122 is rigidly mounted to housing 100. However, in an alternate embodiment, computer card 115 is optionally connected to backplane 130 through a flexible cable (not shown) . Pluggable connector 122 is preferably based on a PCMCIA pinout and computer card 115 is sized according to a PCMCIA standard, but this configuration is not necessary to exploit the principles of the present invention.
Optional connector 112, as its name suggests, can be used to support connectivity of communication with other devices.
As mentioned, computer card 115 includes a microprocessor 116 for generating data such as control information that is communicated to target circuitry located on backplane 130 or auxiliary circuit card 140. In one embodiment, the computer instructions processed by microprocessor 116 are downloaded from an off-board memory device. That is, an instruction set residing on a peripherally connected device such as personal computer 160, auxiliary circuit card 140, or backplane 130 is downloaded to memory device 118 on computer card 115.
This method of downloading instructions from target circuit boards is advantageous because software related to a particular configuration of an interconnected circuit system 100 or version of a backplane 130 preferably remains resident to the corresponding device.
Hence, there is no need to program a computer card 115 with a complete instruction set at a corresponding factory for controlling a particular device into which the computer card 115 is plugged. Accordingly, an older version of computer card 115 can be replaced with a more advanced computer card 115 without having to worry about whether the card includes the appropriate instruction set for the corresponding device such as backplane 130 since instructions are downloaded from the device. Preferably, successive versions of a type of computer card 115 support the same download program for retrieving the set of operational instructions.
In another embodiment, computer card is programmed with the instruction set or software subroutines for controlling elements of the interconnected circuit system of the present invention. For example, a computer card 115 is optionally programmed to include an instruction set for different configurations of an electrically controlled device. However, only certain subroutines corresponding to the target circuitry supported by a corresponding backplane 130 are called to generate control instructions during processor 116 execution. More specifically, configuration information indicates -which of a set of features are supported by a particular backplane and, therefore, which subroutines are called for a particular configuration of a device. In a similar manner, configuration information in computer card 115 is downloaded into configuration registers of backplane 130. Memory device 118 optionally includes volatile and non-volatile memory such as RAM, ROM, and EEPROM devices. In one application, microprocessor 116, memory
-2o-
device 118 and interface controller 120 are combined into a single chip such as an ASIC (Application Specific Integrated Circuit) .
In a preferred embodiment, computer card 115 includes a boot or start-up program for enabling microprocessor 116 to retrieve an instruction set from corresponding target circuitry following power-up . For example, an instruction set stored in backplane memory device 139 is retrieved based on communications through interface circuit 120 and pluggable connector 122 following power-up or an event such as a processor reset. Accordingly, microprocessor 116 utilizes the retrieved instruction set to generate control information transmitted to target electronics such as circuitry located on backplane 130, auxiliary circuit card 140, personal computer 160 or other target circuitry of interconnected circuit system 100 in communication with computer card 115.
Since microprocessor 116 is in communication with multiple circuits through pluggable connector 122, interface circuit 120 provides support for multiple communication protocols. Thus, communication with a particular target circuit accessible by microprocessor 116 is achieved using one of a predefined set of protocols supported by interface circuit 120. For example, a first protocol is optionally used to communicate with backplane memory device 139, while a second protocol is optionally used to communicate with auxiliary circuit card 140. Notably, the computer card 115 and related circuitry optionally support many different protocols, each of which supports communication to corresponding target circuitry.
Moreover, different versions of a computer card 115 optionally support a different set of protocols.
Fig. 11 is a chart of different protocols supported by computer card 115. The chart illustrates how different pin segments of pluggable connector 122 are potentially utilized to support multiple protocols at different times or the same time if the pins segments are non-interfering. A common segment of pins in pluggable connector 122 can be used at different times to support protocols such as SPI1 (Serial Protocol
Interface) , RS-232, integrated DAC (Digital to Analog Converter), ADCl (Analog to Digital Converter), or DAC1. The entire segment of pins in pluggable connector 122 can be used to support a standard PCMCIA or Cardbus protocol. As previously mentioned, it should be noted that different protocols can be utilized simultaneously as long as the pin segments do not overlap during use. For instance, EPP (Enhanced Parallel Port) may be used in conjunction with SPI3, IR, ADC3 or DAC3. Configuration information reflecting a configuration of the interconnected circuit system 100 is preferably stored in a memory device such as configuration memory 138 or backplane memory 139 accessible by computer card 115. Thus, when computer card 115 is first powered or plugged into first card socket 132, configuration information is retrieved from a device indicating which circuits are supported by a corresponding type or version of backplane 130. Configuration information from computer card 115 is optionally downloaded to configuration registers on backplane 130, indicating which logic is to be used in backplane controller for a particular application.
In addition to identifying circuitry of interconnected circuit system 100 or backplane 130, configuration data optionally includes information regarding which of a set of predefined protocols must be used for communicating with a particular target circuit. For example, configuration information may indicate that a particular backplane 130 supports a serial interface to a mechanical device such as a speaker in communication with the backplane 130. Configuration information preferably indicates that a certain protocol such as RS-232 or SPI (Serial Protocol Interface) is to be used for communication with an element such as a DAC (Digital to Analog Converter) . The configuration information optionally includes other control information such as control addresses of corresponding devices .
In one embodiment, various circuit boards or computer cards of the interconnected circuit system 100 include a mechanism to determine whether a controllable element is presently connected to or in communication with backplane 130. For example, the configuration memory may indicate that a speaker is supported by the corresponding backplane 130 device. However, it is not necessarily known whether the speaker is physically connected to backplane 130 through the appropriate connector unless the computer card queries a sensor circuit that detects whether the speaker is properly connected.
One method of sensing whether an electrically controllable device is connected to the backplane 130 is to provide a pull-up resistor that is pulled down when the corresponding device is connected to the backplane
130. Accordingly, a control device such as computer card 115 optionally reads a status of the pull-up resistor to determine whether an electrically controlled element or target circuit such as auxiliary card 140 is connected to the backplane 130.
In a preferred embodiment, backplane 130 includes backplane controller logic 136 for intercepting, decoding and generating electronic signals. One function of the backplane controller logic 136 is to facilitate communication with target circuitry such as circuitry located on backplane 130 including memory device 139, configuration device 138 or auxiliary circuit card 140. Preferably, backplane controller logic 136 is a programmable device such as an FPGA (Field Programable Gate Array) or ASIC (Application Specific Integrated Circuit) .
As mentioned, auxiliary circuit card 140 is also in communication with backplane 130 via a connection between second pluggable connector 142 and second card socket 134. In one embodiment, auxiliary circuit card 140 is a PCMCIA circuit card. However, the second card socket is optionally designed to support connection of any type of circuit board to backplane 130. Auxiliary circuit card 140 can be a wireless communication card or network card, thus providing the computer card and circuits in communication with backplane 130 access to networks such as the Internet .
Auxiliary circuit card 140 includes miscellaneous circuits 144 and configuration memory 146 to store related information such as configuration data. In one embodiment, configuration data stored in configuration memory 146 is retrieved by computer card 115.
Consequently, it is known based on configuration data how to communicate with target circuitry on auxiliary circuit card 140. As mentioned, configuration information can include which of a set of protocols is to be used for communicating or controlling miscellaneous electronics 144. Additionally, configuration information can indicate a version of a particular circuit card or supported target circuitry. According to the aforementioned principles of providing modular interconnected circuitry, it is possible to upgrade an interconnected circuit device such as computer card 115 or electrically controllable device by replacement of the modular device. Thus, a modular device such as computer card 115 having a slow clock speed is optionally upgraded by simply plugging a new computer card with a faster clock speed into the appropriate socket .
Fig. 3 is a block diagram including additional features of the interconnected circuit system of the present invention. Power source 210 such as a battery pack or wall powered supply feeds power to backplane 130. The voltage source supplied by the power source 210 is converted and distributed to power corresponding circuits of the interconnected circuit system 100. As mentioned, computer card 115 in first card socket is in communication with auxiliary circuit card 140 in second card socket 134 via electronic signals 270. A subset of the electronic signals 270 results in a sub-group of electronic signals 275 in communication with other target circuits. For example, computer card 115 or auxiliary circuit card 140 utilizes the sub-group of electronic signals 275 to communicate with circuit
interface 222, serial interface 224 and parallel interface 226. That is, the sub-group of electronic signals supports narrow path communications between either computer card 115 or auxiliary circuit card 140 and circuit interface 222, serial interface 224 or parallel interface 226 using subgroup of electronic signals 275. Also, as mentioned, communication among interconnected circuits is facilitated by backplane controller logic 136. Circuit interface 222 provides connectivity from backplane 130 to off-board devices 234 through cable 232. Consequently, computer card 115 or auxiliary circuit card 140 is able to control or communicate with off-board circuit devices 234 such as a network device in communication with the Internet.
Serial interface 224 provides connectivity to target circuits that utilize a serial communication protocol to transmit and receive data. As shown, D/A converter 240 receives data from serial interface 224. An analog output signal 241 generated by D/A converter 240 is fed into the amplifier 242, which in turn drives speaker 246. In this way, computer card 115 utilizing a serial communication protocol, such as SPI, controls the output of 'speaker 246. In a similar manner, serial data received by serial interface 224 is also used by driver 250 to control light source 252. In one embodiment, the serial protocol is based on SPI and a portion of the serial stream of data indicates to which electronic circuit the corresponding data payload of a message is directed. In other words, a data payload optionally includes an address of a particular target circuit that is to
execute the corresponding control information when several target circuits are connected via common SPI lines .
Parallel interface 226, as its name suggests, provides an electronic circuit by which parallel data is communicated from the computer card 115 to target electronic circuits using a parallel data transfer protocol. That is, data is transmitted from the computer card 115 through parallel interface 226 to communicate with elements such as motor 262, radio 264, detector or sensor device 266, or display 268. Detector 266 includes sensing devices such as electrical switches, motion sensors and pressure sensors. Parallel interface 225 preferably utilizes a parallel protocol such as EPP (Enhanced Parallel Port) for supporting data transfers .
Accordingly, data is transmitted to each of multiple electrically controlled elements based on a use of a parallel communication protocol. Conversely, data is retrieved from such elements based on a parallel protocol. It should be noted that backplane controller logic 136 optionally provides additional electronic signals to facilitate the transfer of data. For example, the backplane controller logic 136 potentially generates control signals such as strobes or chip enable signals to facilitate data transfers. In one embodiment, auxiliary circuit card 140 also controls target circuitry and devices in communication with backplane 130. Fig. 4 is a block diagram of a computer card of the present invention. As previously discussed, processor 116 is in communication with memory 118 and interface
circuit 120, which is further defined by support circuitry including inbound buffers 126, outbound buffers 128, router interface 129, by-pass logic 131, and timer and control circuit 124. Although processor 116 optionally includes a realtime operating system, it is preferably a standard logic device such as a processor found in a personal computer. In a preferred embodiment, processor 116 is a StrongArm (TM) processor chip running a modified Linux (TM) operating system.
As mentioned previously, processor 116 generates control information for controlling one or multiple elements in communication with backplane 130. In one embodiment, control information is generated by processor 116 and directed to the appropriate target circuit based on a corresponding protocol without being buffered. That is, control instructions or data is written directly from the processor 116 to the appropriate target circuit of the interconnected circuit system 100 at the direction of processor 116 using bypass logic 131.
In a preferred embodiment, however, control information generated by processor 116 is routed by router interface 129 to an appropriate outbound buffers 128, where the control information is temporarily stored. Based on scheduling of control instructions or data transmissions by timer and control circuit 124, information such as control instructions generated by processor 116 are stored in outbound buffers 128 where they are thereafter transmitted to a corresponding target circuit during a scheduled time frame or time slot. Preferably, processor 116 additionally generates
scheduling information so that the corresponding control instructions are transmitted at the appropriate time to target circuits.
Based on scheduling of data transfers and time- sharing according to the principles of the present invention, a common set of electrical signals through connector 122 are used to transmit multiple control instructions to separate target circuits in communication with backplane 130. Each data transfer optionally utilizes a protocol as defined by configuration information retrieved from a corresponding circuit device as previously discussed. Thus, data transfers from a particular buffer to a corresponding target circuit are optionally scheduled to be transmitted in a particular time slot using an appropriate protocol for the corresponding target device at a time of data transfer.
Fig. 5 is a block diagram of another embodiment of the computer card of the present invention. Processor 116 is in communication with buffer circuitry 410, which includes outbound buffers 419 and inbound buffers 417 that are respectively used to temporarily store information such as control instructions issued by processor 116 and temporarily store data packets received from target devices. Buffer circuitry 410 includes DMA logic 415, inbound buffers 417, outbound buffers 419 and by-pass logic 413. Buffers can include components such as first-in-first- out (FIFO) memory devices. Protocol interface 420 supports multiple protocols by which data stored in buffers 410 is transmitted to interconnected target circuitry through pluggable
connector 122. Conversely, data is also retrieved from target circuitry through pluggable connector 122 using an appropriate protocol and is stored in the appropriate inbound buffer 417. Communication control logic 430 orchestrates timing of data transfers and selects which of multiple data packets stored in outbound buffers 419 is to be communicated through pluggable connector 122 at a particular time and which of a set of protocols is to be used during the data transfer as supported by protocol interface 420.
Circuitry 410 is optionally designed to support different types of data transfers between processor 116 and interconnected circuitry through pluggable connector 122. For example, DMA (Direct Memory Access) logic 415 and corresponding control logic support direct memory access data transfers. That is, data located on target circuitry is potentially downloaded in an efficient manner using DMA transfer techniques without requiring excessive interruption of processor 116. Accordingly, data such as a processor instruction set can be efficiently downloaded from a target circuit in communication with backplane 130 to memory 118 on the computer card 115 using DMA data transfer techniques. Communication control logic 430 coordinates such data transfers using an appropriate protocol as supported by protocol interface 420.
As their name suggests, inbound buffers 417 are used to store data retrieved from target circuitry in communication with computer card 115 through pluggable connector 122. Outbound buffers 419 are used to store data such as control instructions generated by processor
116 that are transmitted to corresponding target circuitry through pluggable connector 122. Communication control logic 430 preferably selects the appropriate protocol for transmitting or receiving data based on configuration information indicating which of a set of supported protocols is to be used for communicating with corresponding target circuits.
Supported protocols include, for example, a 32-bit protocol 422, a 16-bit protocol 424, and a narrow path protocol 426. The narrow path protocol 426 potentially utilizes a subset of signals supported by a PCMCIA standard to support data communications. For instance, in one embodiment, the narrow path protocol utilizes a subset of electrical signals passing through pluggable connector 122 to communicate with target circuits in communication with backplane 130. As previously discussed, the narrow path protocol 426 optionally includes a serial communication link such as SPI and a parallel communication path such as EPP. The 32-bit protocol 422 and 16-bit protocol 424 support correspondingly sized parallel data transfers and are preferably based on a PCMCIA standard. It should be noted that computer card 115 optionally includes bypass logic 413, enabling processor 116 to perform direct or unbuffered, i.e., immediate or instantaneous, reads and writes from/to selected target circuitry in communication through connector 122. Thus, the processor optionally generates control instructions and transmits them directly to a target circuit rather than transmits them after a predetermined time delay.
In such an application, control instructions are issued
in real-time or pseudo-real-time to control elements of the device such as toy 1000.
It should be noted that any part or all of the previously described circuitry of fig. 4 or 5 is optionally provided in an ASIC (Application Specific Integrated Circuit) or other programmable logic device such as an FPGA (Field Programmable Gate Array) .
Fig. 6 is a sample outbound buffer filled with data packets that are transmitted to target circuitry according to the principles of the present invention. Sample outbound buffer 419 is filled with data packets and corresponding delay instructions for scheduling transmission of the data packets. A lOOμs default delay specified by processor 116 is inserted between packets as long as there is no explicit delay instruction to the contrary. For example, data packet B would be transmitted to a corresponding target circuit lOOμs after data packet A has been transmitted. Likewise, the next data packet, i.e., data packet C, would be transmitted to a corresponding target circuit lOOμs after the end of transmitting previous data packet B. However, insertion of delay instruction 513 between data packet C and data packet D indicates that data packet D is to be transmitted lOμs after ending transmission of data packet C instead of the default delay of lOOμs. In this way, processor 116 generates multiple control instructions including corresponding delays for the real-time control of target circuitry and electrically controlled elements. That is, control instructions are generally executed in time slots for the coordination or timing of related events such as
Λ n
-40-
movement of a mouth and generation of sound from a speaker.
In one embodiment, data packets optionally include information indicating to which target circuit a data packet is directed since the packets can be transmitted using a particular interface such as SPI1. For example, a data packet can include an address indicating a target circuit to which the data packet is directed using a common protocol for a particular buffer. In an alternate embodiment, each data packet stored in a particular buffer is transmitted to a corresponding target circuit using an appropriate protocol for the data transfer as specified by information stored in a data packet . Fig. 7 is a timing diagram illustrating time slots in which data stored in buffers is transferred to corresponding target circuits .
Target circuit #1 includes an electronic interface to both an audio and motor control unit. Hence, corresponding outbound buffers for target circuit #1 include both audio and motor control data packets . In one embodiment, data packets issued by processor 116 are generally inserted into time slots created by a default delay or programmed delay between data packets. Data is transmitted to control the corresponding target circuit after default delay unless instructed otherwise by a delay instruction or absence of a data packet in a corresponding buffer. If there is a delay instruction, it overrides the default delay as shown between motor and audio data packets in Fig. 7.
As shown in fig. 7, data packets in outbound buffers for target circuit #1 and target circuit #2 are
retrieved and transmitted simultaneously from computer card 115. In this particular embodiment, it is possible to both transmit and receive data through pluggable connector 122 because the protocols employ non- interfering electronic signals that form a communication path to corresponding target circuits. For example, the sensor data is transmitted to a target circuit on the SPI1 interface while motor and sensor data packets sequentially transmitted to target circuitry of the SPI2 interface. Accordingly, data packets such as motor control information are transmitted to the appropriate target circuit while data such as sensor information is also transmitted to corresponding target circuits simultaneously in the first time slot. Based on timing of data transfers, it is possible to create data dependencies among data packets. For example, the transmission of audio output data is optionally controlled based on input data from a feedback element such as a sensor. Specifically, an audio device is optionally driven to play music only when the corresponding sensor detects light .
In one embodiment, status request instructions or query commands, i.e., READs of information associated with a particular target sensor circuit such as a light sensor, are generated by processor 116 and are performed in real-time based upon their position in outbound buffers 419. That is, query commands are written to outbound buffer 419 and are executed according to a time-stamp or position in the corresponding buffer. At the appropriate time, the query commands are executed and retrieved information is stored in inbound buffer 417 for processing by processor 116.
In an alternative embodiment, processor 116 programs a circuit to automatically issue query commands for retrieving and storing status information in inbound buffers 417. This can be achieved by writing the query commands directly to outbound buffer where commands are executed in an appropriate time slot. This alleviates processor from having to spend valuable time generating and writing such commands to the appropriate buffer. Thus, processor 116 is able to process retrieved sensor information on a periodic basis without itself generating the query commands. In a similar manner, an automatic circuit can be used to generate a periodic stream of Write commands for appropriately updating and controlling a particular target circuit. A filter circuit is optionally used to process and discard certain values of retrieved information. For example, if the value of retrieved data is within a preprogrammed range, the filter circuit can be used to discard data so that only out-of-range data is stored in inbound buffer 417. Conversely, the filter circuit can be used to discard data so that only in-range data is stored in inbound buffer 417. Consequently, processor 116 need not spend valuable time retrieving and processing irrelevant data as a result of this data filtering technique.
In the present example, sensor status request instructions stored in outbound buffers 419 for target circuit #2 are also executed in the first time slot along with motor control instructions for target circuit #1. It is possible to execute more than one instruction at the same time in this case because the segment of pins in the pluggable connector 122 used to transmit
motor data to corresponding target circuit #1 is exclusive of the segment of pins used to request and retrieve sensor information for target circuit #2.
The status request instructions of target circuit #2 are used to retrieve status information. In our example, the query instruction is used to determine whether a sensor detects light. When the status request instruction is encountered during execution of instructions stored in outbound buffer for target circuit #2, the address associated with the instruction is retained and combined with retrieved data information resulting from the query. That is, data resulting from the READ data instruction is combined with a data identifier such as the address for the READ and is then stored in inbound buffer for processing by processor 116. According to control rules of our example, audio output information is no longer generated for target circuit #1 when no light is detected at the corresponding sensor. Note that sensor data packets only require part of a time slot to be transmitted. This is potentially a result of transmitting different sized data packets or transferring data at different bit rates.
After a motor data packet is transmitted in the first time slot, an audio data packet is transmitted from outbound buffers 419 to target circuits #1. Notably, the delay instruction between packets is zero indicating that an audio data packet should be transmitted immediately after motor data packet is transmitted in first time slot of a new cycle. If delay is other than zero, the audio data packet would be delayed a corresponding amount of time as previously
described. In the present example, the audio data packet is therefore transmitted in second time slot because the delay instruction is zero.
Following the transmission of an audio data packet in second time slot, the balance of the update cycle is dedicated to servicing auxiliary circuit cards 140 such as PCMCIA devices plugged into corresponding card sockets on backplane 130. More specifically, data packets in outbound buffer for target circuit #3 are transmitted to corresponding target circuits such as auxiliary PCMCIA cards or backplane 130. According to this method of regulating the flow of data packets, corresponding elements such as mechanical elements in communication with backplane 130 are controlled in real- time.
Fig. 8 is a timing diagram illustrating the flow of data packets stored in buffers similar to that described for fig. 7. However, unlike fig. 7, outbound buffer for target circuit #1 no longer includes audio data packets directed towards a corresponding target audio device because the present sample illustrates how processor 116 discontinues generating audio data packets when no light is detected.
Fig. 9 is a detailed schematic of a two-card socket system according to the principles of the present invention.
First card socket 132 is in communication with second card socket 134 via circuit traces 820 and circuit signals 810. Notably, selected circuit signals 810 connecting first card socket 132 and second card socket 134 are extended to serial and parallel interfaces on backplane 130. For example, certain
address lines are extended to parallel interface 816 for controlling corresponding target circuits in communication therewith. Likewise, certain signals are extended from second card socket 134 to communicate with first serial interface 812 and second serial interface 814.
One function of backplane controller 136 is to intercept certain electronic signals and generate additional control signals such as enable and interrupt request signals, facilitating data transfers among interconnected circuit devices. Thus, additional control signals such as read/write addresses and strobes are generated by backplane controller 136 for supporting corresponding data transfers as shown. A subset of circuit signals 810 interconnecting first card socket 132 and second card socket 134 support communication with first serial interface 812 and second serial interface 814. For example, selected address lines as defined by PCMCIA standard of first card socket 132 are extended to provide serial communications to corresponding target circuitry .of a serial interface. Likewise, certain signals interconnecting first card socket 132 and second card socket 134 are extended to parallel interface 816 to support corresponding parallel transfers .
As previously mentioned, computer card 115 utilizes the electronic signals on backplane 130 in potentially different ways depending on configuration information and a particular protocol that is to be used for communicating with a target circuit. For example, while communicating between card sockets, certain address signals such as circuit signals 810 are used as address
lines. However, the selected signals serve as clock and data signals when computer card 115 or auxiliary card 140 communicates with first serial interface 812 or second serial interface 814. Backplane controller 136 facilitates serial communication of data between computer card 115 and first serial interface 812 by intercepting and processing signals from first card socket 132 and generating corresponding chip select signals at the appropriate time during a data transfer. In a similar manner, backplane controller 136 facilitates data transfers between computer card 115 or auxiliary card 140 and second serial interface 814.
Fig. 10 is a detailed block diagram of a single- card socket system in communication with corresponding parallel and serial interfaces according to the principles of the present invention.
Fig. 12 is a pictorial diagram illustrating an embodiment of interconnected circuit system 100 that utilizes a flexible circuit board 192 as a backplane 130. Computer card 115 and auxiliary circuit card 140 plug into first card socket 132 and second card socket 134 respectively as shown. Socket pins 198 protruding out the end of each socket are soldered to traces 193 on flexible circuit board 192. Surface mount components such as electronic chips 196 are soldered to flexible circuit board 192 and are interconnected electrically via traces 193. Based on this device configuration, it is possible to provide a compact and lightweight interconnected circuit system 100 for space restricted applications.
Fig. 13 is a pictorial diagram illustrating a docking port 1350 that gradually narrows in the
insertion direction of the card 115 for plugging card 115 into first card socket 132 as shown. Mouth 1310 of the docking port 1350 is preferably at least twice the dimensions of the connector 122 at the axial end of computer card 115 so that it is relatively easy to insert the end of the card in to the docking port 1350. As shown, the flat walls 1330 of docking port are smooth surfaces for sliding and guiding computer card 115 into first card socket 132. Docking port 1350 can be made of material such as plastic or metal.
Fig. 14 is a pictorial diagram illustrating a docking port 1450 that also gradually narrows along an insertion axis of the card 115 so that the end of the card 115 mates properly with the first card socket 132. Docking port 1450 includes a mouth 1410 that is wide enough to easily accept the end of computer card 115. Unlike the flat walls 1330 illustrated in fig. 13, docking port 1450 includes rounded walls 1430. Similar geometries of docking port 1450 can be used as substitutes for the round or flat walls to exploit the principles of the present invention.
Fig. 15 is a pictorial diagram of connective system 1500 that supports electrical signal connectivity between electronic circuitry of card 115 and electronic device 1505. The connective system 1500 is unique because contact elements 1520 are disposed on a surface 1507 of the card 115 adjacent to an axial end of the card 115. Insulation material 1522 isolates the contact elements 1520 from potentially grounded surface 1507 of card 115.
As shown, card 115 is inserted axially end first into the docking port 1590 disposed on electronic device
1505 such as backplane 130. During the insertion process, card 115 is guided towards receptacle 1595 via tracks 1550 disposed at both sides of receptacle as shown. The opening where the card 115 first enters the tracks 1550 is larger than the dimensions of the axial end of card 115 and pluggable connector 152. Similar to the funneling guide as previously discussed, the inside of tracks 1550 at sides of docking port 1590 narrow so that pluggable connector 152 of card 115 mates with receptacle 1595 in docking port 1590. This renders it an easier task to plug an end of card 115 into docking port 1590. It should be noted that pluggable connector 122 is optional although it is shown in fig. 15 to be integrated into card 115. Port contacts 1570 biased towards the face of card 115 are held away from surface 1507 of card 115 as it is inserted into docking port 1590. This is achieved by the pressure or force on contact point 1565 at end of restraining arm 1560. As the card 115 is moved axially towards docking port 1590, contact point 1565 slides along track 1530 towards notch 1510. An upward force on contact point 1565 extends to restraining arm 1560 and restraining bar 1585 to hold spring-loaded and flexible port contacts 1570 away from card 115 and contact elements 1520 on its surface 1507 as the card is inserted into docking port 1590. It should be noted that length of port contacts are flexible and insulated for protection against short circuits.
When the card 115 reaches its final position in docking port 1590, contact point 1565 at end of restraining arm 1560 drops into notch 1510 disposed on surface 1507 of card 115. Since the tension or force on
spring-biased restraining arm 1560 is relieved, restraining bar 1585 also drops towards surface 1507 of card 115 allowing port contacts to come in contact with corresponding contact elements 1507 on the surface 1507 of card 115.
The novel features of connective system 1500 of the present invention provide many advantages over the prior art. Typically, connectors often include a finite number of pins for connecting two separate electronic devices. Unfortunately, this limited number of pins is an obstacle when new functionality incorporated in an electronic device requires that more signals be routed via electrical connectors to related off-board circuitry. The problem is becoming more prevalent today since silicon chips are more powerful and cheaper than ever before. Therefore, in "pin limited" situations, sacrifices must be made. Specifically, there are sometimes not enough pins to support connectivity for desired functionality. Based on the principles of the present invention as previously discussed, contact elements can be advantageously disposed on an axial surface of a circuit card to provide additional connectivity between a circuit card and electronic device. These aspects of the present invention challenge the paradigm that connectors must be limited to the conventional location such as the axial end of a card.
Another advantage of the connective system of the present invention relates to the method of holding port contacts away from the contact elements and face of the circuit card until the card reaches a final position in the port. In many applications, circuit cards often
include protective grounding shields on their outer surface. During insertion of a circuit card, the spring-loaded port contacts biased towards the grounded face of the circuit card would be shorted together as a card is inserted into the docking port if they were not held away during card insertion as in the present application. In addition to scraping and potentially damaging the port contacts, the shorting of electrically distinct port contacts, i.e., each contact is potentially used to carry a unique low impedance drive signal, to each other can cause irreparable harm to certain electronic device. The principles of the present invention avoid this potential damage by supporting connectivity between circuit devices only when it is deemed safe based on a position of the card in the docking port .
Connective system 1500 is beneficial in applications requiring more signal connections than provided by pluggable connector 122 in card 115. For example, interconnected system 100 optionally includes an LCD display and therefore requires an appropriate drive circuit. In an application where pluggable connector 122 is based on a PCMIA standard, additional connector pins are necessary to support dedicated signal connections to control the LCD display. This can be achieved utilizing the principles of connective system 1500 as previously described to provide extra signal connectivity between card 115 and electronic device 1610. More specifically, an LCD driver located in card 115 can be used to drive the LCD display through connections on surface 1507 of card 115 to LCD display in communication with backplane 130. Consequently,
circuitry disposed in computer card 115 can be leveraged to control the LCD display. For instance, there is a space-savings and cost-advantage when the LCD drivers are included in a custom ASIC on the computer card 115 to provide control of LCD display.
Fig. 16 is a pictorial diagram illustrating an alternate method of providing additional connectivity between card 115 and other electronic devices 1610. For example, electronic device 1610 such as a PDA (Personal Digital Assistant) includes an opening 1605 for receiving card 115. In an application where more pins are required than those available on pluggable connector 122, additional connectivity can be provided through optional connector 1630 at axial end of card 115. Ribbon cable 1640 carries the electronic signals to backstop 1655. When card 115 is plugged into cavity of electronic device 1160, backstop 1655 is pressed into opening 1605 to protect contents of electronic device 1610. Signals in ribbon cable 1640 are extended to contact elements 1650 of backstop 1655 and connect to corresponding conductive elements 1620 in electronic device 1610 when backstop 1655 is inserted in opening 1605. In this way, connectivity is supported between card 115 and electronic device 1610. While this invention has been particularly shown and described with references to preferred embodiments thereof, it will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the scope of the invention encompassed by the appended claims.