Patent Abstract:
A base system for bus connection with a docking system and a method for controlling the same. The base system can include a docking connection processing circuit and a docking switch. The docking connection processing circuit detects connection of at least one docking system to the base system, generates a bus cycle in the base system of a type different from that of a bus cycle used in the docking system and outputs a docking bus connection enable signal within a period of time for which the bus cycle of the different type is generated. The docking switch couples a bus of the docking system to a bus of the base system in response to the docking bus connection enable signal from the docking connection processing circuit. The base system is easily coupled with an external system for function expansion.

Full Description:
BACKGROUND OF THE INVENTION  
         [0001]    1. Field of the Invention  
           [0002]    The present invention relates to a base system for bus connection with a docking system and a method for controlling the same.  
           [0003]    2. Background of the Related Art  
           [0004]    As well known to those skilled in the art, a portable terminal that uses battery power for system power such as a personal digital assistant (PDA), an international mobile telecommunications (IMT)-2000 terminal, a personal communication service (PCS) terminal, personal computer and so forth, includes a plurality of devices. The plurality of devices can include, for example, a central processing unit (CPU), a random access memory (RAM), an audio module, a liquid crystal display (LCD) module, a communication module, etc.  
           [0005]    The portable terminal (hereafter “base system”) further includes at least one expansion unit for function expansion through which an external system (hereafter “docking system”) can be docked to the base system as needed. The docking system is typically dockable to the base system via a bus interface predefined by a hardware logic, for example, an industry standard architecture (ISA) bus interface or a peripheral component interconnect (PCI) bus interface.  
           [0006]    However, conflicts between the docking system and the base system when establishing an interface for functional expansion of the base system can prevent the interface and cause base system hang-ups. Accordingly, attempts to establish the interface must be repeated which reduce the base system availability and increase operator inconvenience.  
           [0007]    [0007]FIG. 1 is a block diagram showing construction of a related art base system for improving bus connection with a docking system. As shown in FIG. 1, the base system  100  is connected with the docking system  150  via a docking PCI bus interface. The base system  100  includes a PCI bus controller  110 , a PCI bus idle state detector  120  and a docking switch  130 .  
           [0008]    The PCI bus controller  110  recognizes a docking detection signal generated because of connection of the docking system  150  to the base system  100 , and provides a PCI bus ready signal to the PCI bus idle state detector  120 . In response to the PCI bus ready signal from the PCI bus controller  110 , the PCI bus idle state detector  120  checks whether a PCI bus is currently in an idle state, and provides a docking PCI bus connection enable signal to the docking switch  130  if the PCI bus is in the idle state.  
           [0009]    The docking switch  130  performs a switching operation in response to the PCI bus connection enable signal from the PCI bus idle state detector  120  to carry out the bus connection-based docking between the docking system  150  and the PCI bus controller  110  in the base system  100 .  
           [0010]    However, to accurately check the idle state of the PCI bus, which is an essential element for the docking between the related art base system and the docking system, the base system must have a hardware module for operating the base system at a higher speed than a clock frequency (i.e., 33 Khz) at which the PCI bus is operated, namely, a logic for checking the idle state of the PCI bus. The hardware module results in an increase in installation cost. Moreover, because the PCI bus instantaneously enters the idle state on an irregular time basis, as a practical matter, it is difficult to detect and generate the PCI bus connection enable signal at a point of time that the PCI bus enters the idle state. Further hardware logic checks to system idle state should be added to connect the docking system  150  with the base system  100 , because it is difficult for the PCI bus idle state detector  120  to generate “dock PCI bus connect enable signal” by using software polling for the very short “idle state” period. Further, the PCI bus idle state checking logic has to include a separate hardware unit for inputting and outputting event information and status information to notify the base system that the docking bus connection has actually been successfully established.  
           [0011]    Provided that the base system receives a docking connection event message resulting from a docking connection process from the docking system under the condition that it has no separate unit for inputting and outputting event information and status information, the base system will internally perform a docking configuration-based process by operating systems under the condition that a failure in its docking reprocessing operation occurs when it does not complete the docking bus connection with the docking system.  
           [0012]    As described above, the related art base system has various disadvantages. The related art base system must additionally include the PCI bus idle state detection logic, which causes an increase in installation cost. Further, the related art base system still fails to establish the interface and cause the base system hang-up because the base system bus (e.g., PCI bus) status can change after being checked before interface establishment. In addition, not all base system buses are checked by the related art hardware module. Thus, the bus connection is difficult to make because of characteristics of the PCI bus.  
           [0013]    The above references are incorporated by reference herein where appropriate for appropriate teachings of additional or alternative details, features and/or technical background.  
         SUMMARY OF THE INVENTION  
         [0014]    An object of the invention is to solve at least the above problems and/or disadvantages and to provide at least the advantages described hereinafter.  
           [0015]    Another object of the present invention is to provide a base system for bus connection with a docking system, a method for controlling the same, and a computer-readable storage medium for storing a program for the same that stably docks the docking system to a base system via a bus connection.  
           [0016]    Another object of the present invention is to provide a base system for bus connection with a docking system, a method for controlling the same, and a computer-readable storage medium for storing a program for the same that executes a bus cycle in the base system different from that of the docking system.  
           [0017]    Another object of the present invention is to provide a base system for bus connection with a docking system, a method for controlling the same, and a computer-readable storage medium for storing a program for the same that controls bus operation of a base system so that bus operations of a docking system are prevented from coming into collision with each other when the docking system is docked to the base system via the bus connection.  
           [0018]    Another object of the present invention is to provide a base system for bus connection with a docking system and a method for controlling the same that forces bus cycles of the base system to be fixed at a specific bus cycle for a predetermined period of time so that the docking system can be stably docked to a desired connection bus within the predetermined time period.  
           [0019]    Another object of the present invention to provide a base system for bus connection with a docking system and a method for controlling the same that can mount the docking system to the base system via the bus connection at any time while the base system is in use, so that the docking can be conducted more stably than in a warm-docking or cold-docking system with a limited connection time.  
           [0020]    In order to achieve at least the above objects in a whole or in part, and in accordance with the present invention, there is provided a system that includes a base system that is configured to connect with a docking system, wherein the base system includes a docking connection controller that detects connection of at least one docking system to the base system and forcibly generates at least one bus operation in the base system different from that of a bus operation used in the docking system for a prescribed period of time, and an interface controller that initiates an interface to a bus of the base system for connection to a bus of the docking system within the prescribed period.  
           [0021]    To further achieve at least the above objects in a whole or in part and in accordance with the present invention, there is provided a method for operating a base system that includes detecting attachment to the base system of a docking system, making at least one bus of the base system operate in a prescribed state for a period of time, and enabling in the base system an interface for connection to the docking system within the period of time, wherein the prescribed state of the bus cycle in the base system does not generate a conflict during said enabling the interface for connection to the docking system.  
           [0022]    To further achieve at least the above objects in a whole or in part and in accordance with the present invention, there is provided a base system for bus connection with a docking system that includes docking connection processing units for detecting connection of at least one docking system to the base system, generating a bus cycle in the base system different from that of a bus cycle used in the docking system and outputting a docking bus connection enable signal within a period of time for which the bus cycle of the different type is generated, and docking switching units for connecting a bus of the base system to a bus of the docking system in response to the docking bus connection enable signal from the docking connection processing units.  
           [0023]    To further achieve at least the above objects in a whole or in part and in accordance with the present invention, there is provided a method for coupling a base system with a docking system that includes generating information regarding a docking bus connection command in response to a docking event signal resulting from a docking connection of the docking system to said base system, executing the docking bus connection command to generate a docking bus connection enable signal, and concurrently generating and maintaining a bus cycle in the base system of a type different from that of a bus cycle used in the docking system, establishing the docking connection with the docking system by performing a switching operation in response to the docking bus connection enable signal while the bus cycle of the different type is generated and maintained, recognizing at least one device in the docking system in response to docking completion acknowledgement information from the docking system, and configuring the base system to indicate accessibility of at least one device in the docking system.  
           [0024]    To further achieve at least the above objects in a whole or in part and in accordance with the present invention, there is provided a computer readable medium having computer executable instructions carried thereon, the computer readable instructions includes units for detecting attachment to the base system of a docking system, units for making at least one bus of the base system operate in a prescribed state for a period of time, and units for enabling in the base system an interface for connection to the docking system within the period of time, wherein the prescribed state of the bus cycle in the base system does not generate a conflict during the enabling the interface for connection to the docking system.  
           [0025]    Additional advantages, objects, and features of the invention will be set forth in part in the description which follows and in part will become apparent to those having ordinary skill in the art upon examination of the following or may be learned from practice of the invention. The objects and advantages of the invention may be realized and attained as particularly pointed out in the appended claims.  
       
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0026]    The invention will be described in detail with reference to the following drawings in which like reference numerals refer to like elements wherein:  
         [0027]    [0027]FIG. 1 is a block diagram showing a related art base system for bus connection with a docking system;  
         [0028]    [0028]FIG. 2 is a block diagram showing a preferred embodiment of a base system for bus connection with a docking system in accordance with the present invention;  
         [0029]    [0029]FIG. 3 is a block diagram showing another preferred embodiment of a base system for bus connection with a docking system in accordance with the present invention;  
         [0030]    [0030]FIG. 4 is a flow chart illustrating a preferred embodiment of a method for controlling the base system for a bus connection with a docking system in accordance with the present invention; and  
         [0031]    [0031]FIG. 5 is a flow chart illustrating another preferred embodiment of a method for controlling a base system for bus connection with a docking system in accordance with the present invention. 
     
    
     DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS  
       [0032]    [0032]FIG. 2 is a diagram that shows in block form a first preferred embodiment of a base system for bus connection with a docking system in accordance with the present invention. As shown in FIG. 2, a base system  200  for the bus connection with the docking system includes a PCI bus controller  210 , a docking switch  220 , a docking connection processing unit  230  and an ISA/PCI internal bus controller  240 .  
         [0033]    The docking connection processing unit  230  includes a docking signal detector  250 , a docking connection controller  260  and a docking connection processor  270 . The docking signal detector  250  is adapted to detect a physical connection of a docking system  280  to the base system  200 , generate an event signal SMI/SCI and provide the generated event signal SMI/SCI to the docking connection controller  260 .  
         [0034]    The docking connection controller  260  is adapted to recognize the event signal provided from the docking signal detector  250  and perform a docking processing routine based on the bus connection. The docking connection controller  260  sends information regarding a docking bus connection command to the docking signal detector  250  to interface a bus of the docking system  280  with a bus of the base system  200 , and then waits until the docking signal detector  250  recognizes the docking bus connection command information. That is, the docking connection controller  260  performs command interface-based communications with the docking signal detector  250  to determine whether the docking signal detector  250  has recognized the docking bus connection command information.  
         [0035]    Thereafter, the docking connection controller  260  controls the ISA/PCI internal bus controller  240  to force it to successively generate a bus cycle different from that of the docking system  280  to prevent each device in the base system  200  from colliding with the bus of the docking system  280 , and then waits until the docking signal detector  250  processes the docking bus connection command. At this time, 1 msec is required for the docking signal detector  250  to process the docking bus connection command. However, the present invention is not intended to be so limited as required forced bus cycle times can vary based on various criteria.  
         [0036]    The docking connection controller  260  preferably forces each base system bus that could conflict such as a CPU host bus, an internal PCI bus, an external PCI bus and an ISA bus into a non-conflicting state that preferably puts the bus controller (e.g., PCI bus controller  210  in an idle state) in a state that reduces or prevents conflict to increase or guarantee successful docking interface establishment. Preferably, the docking connection controller  260  forces the relevant bus controllers to prevent conflict by causing a non-operation cycle for a prescribed period of time. Thus, for example, the CPU preferably operate a non-operation command, and the CPU can operate a command between the CPU and ISA devices, and the CPU and PCI devices to generate an idle cycle for a CPU host bus, a ISA bus and a PCI internal bus, respectively. Otherwise, buses in the base system  200  could switch into a non-idle cycle such as an active or working state and conflict with a non-idle bus cycle in the docking system  280 . If the PCI external bus status is not idle, a base system hang-up and/or a failed connection to the docking system  280  can result.  
         [0037]    When the bus cycle different from that used in the docking system  280  is provided to the base system  200  under the control of the docking connection controller  260 , the docking signal detector  250  generates a docking bus connection enable signal and provides it to the docking switch  220 . In response to the docking bus connection enable signal from the docking signal detector  250 , the docking switch  220  preferably performs a switching operation using hardware to establish the bus connection between the docking system  280  and the PCI bus controller  210  in the base system  200 .  
         [0038]    At this time, the base system  200  preferably maintains the bus cycle different from that used in the docking system  280  for a period of time required for the docking switch  220  to establish the bus connection based on the switching operation.  
         [0039]    Thereafter, the docking connection controller  260  reads a device ID of a PCI-to-PCI bridge controller or the like in the docking system  280  to determine whether the docking bus of the docking system  280  has made a normal connection to the base system  200 . If the device ID of the bridge controller that was read is normal because the bus of the docking system  280  was normally connected, the docking connection controller  260  provides docking completion acknowledgement information, or docking configuration changed information, to the docking connection processor  270 .  
         [0040]    The docking connection processor  270  preferably recognizes devices in the docking system  280  on the basis of the docking configuration changed information from the docking connection controller  260 , and then configures a newly expanded system by exchanging information with the docking system  280 .  
         [0041]    [0041]FIG. 3 is a block diagram showing a second preferred embodiment of a base system for bus connection with a docking system in accordance with the present invention. As shown in FIG. 3, a base system  200 ′ for the bus connection with the docking system includes the PCI bus controller  210 , the docking switch  220 , a docking connection processing unit  235 , and the ISA/PCI internal bus controller  240 .  
         [0042]    The docking connection processing unit  235  includes a docking signal detector  255 , a docking connection controller  265 , and the docking connection processor  270 . The docking signal detector  255  is preferably adapted to detect a physical connection of the docking system  280  to the base system  200 ′, generate an event signal SMI/SCI and provide the generated event signal to the docking connection controller  265 .  
         [0043]    The docking connection controller  265  is preferably adapted to recognize the event signal SMI/SCI provided from the docking signal detector  255  and perform a bus docking processing routine. The docking connection controller  265  further sends information regarding a docking bus connection command to the docking signal detector  255  to connect a bus of the docking system  280  with a bus of the base system  200 ′.  
         [0044]    That is, in the case where the docking signal detector  255  employs a general-purpose input/output pin, the docking connection controller  265  generates a docking bus connection enable signal and provides it directly to the docking signal detector  255  via the input/output pin, without waiting until the docking signal detector  255  processes the docking bus connection command.  
         [0045]    Thereafter, the docking connection controller  265  controls the ISA/PCI internal bus controller  240  to force it to successively generate a bus cycle different from that of the docking system  280  so as to prevent each device in the base system  200 ′ from colliding with the bus of the docking system  280  while the docking signal detector  255  performs an operation corresponding to the docking bus connection enable signal.  
         [0046]    When the bus cycle different from that used in the docking system  280  is provided to the base system  200 ′ under the control of the docking connection controller  265 , the docking signal detector  255  generates a docking bus connection enable signal and provides it to the docking switch  220 . In response to the docking bus connection enable signal from the docking signal detector  255 , the docking switch  220  preferably performs a hardware switching operation to establish the bus connection between the docking system  280  and the PCI bus controller  210  in the base system  200 ′.  
         [0047]    At this time, the base system  200 ′ preferably maintains the bus cycle different from that used in the docking system  280  for a period of time required for the docking switch  220  to establish the bus connection based on the switching operation.  
         [0048]    Subsequently, the docking connection controller  265  accesses a device ID of a PCI-to-PCI bridge controller in the docking system  280  to determine whether the docking bus of the docking system  280  has been normally connected to the base system  200 ′. When the accessed device ID of the bridge controller is normal because the bus of the docking system  280  was normally connected, the docking connection controller  265  provides docking completion acknowledgement information, or docking configuration changed information, to the docking connection processor  270 .  
         [0049]    The docking connection processor  270  recognizes devices in the docking system  280  on the basis of the docking configuration changed information from the docking connection controller  265 . The docking connection processor then preferably configures a newly expanded system by exchanging information with the docking system  280 .  
         [0050]    [0050]FIG. 4 is a flow chart illustrating a first preferred embodiment of a method for controlling a base system for bus connection to a docking system in accordance with the present invention. The first preferred embodiment of a method for controlling a base system for bus connection to a docking system can be performed, for example, by the base system  200  and will now be described using the base system  200 . However, the present invention is not intended to be so limited.  
         [0051]    As shown in FIG. 4, after a process starts, upon receiving a docking connection signal resulting from the connection of the docking system  280  to the base system  200 , the docking signal detector  250  generates a docking event signal SMI/SCI and provides it to the docking connection controller  260  (step S 401 ).  
         [0052]    Then, the docking connection controller  260  recognizes the docking event signal from the docking signal detector  250  and branches to a bus docking processing routine (step S 402 ). The bus docking processing routine preferably controls base system operations to reduce or prevent docking system connection failures. The docking connection controller  260  transfers information regarding a docking bus connection command to the docking signal detector  250  (tep S 403 ), and then waits until the docking signal detector  250  recognizes the bus connection command (S 404 ).  
         [0053]    While the docking signal detector  250  recognizes and executes the bus connection command, the docking connection controller  260  successively generates an ISA bus cycle or internal PCI bus cycle for the base system  200  by force (step S 405 ). At this time, the generated bus cycle is of a type different from that of a PCI bus cycle used in the docking system  280 . As a result, the PCI bus cycle used in the docking system  280  is not generated in the base system  200 .  
         [0054]    While the docking connection controller  260  generates the bus cycle of the type different from that of the PCI bus cycle used in the docking system  280 , the docking signal detector  250  generates a docking bus connection enable signal and provides it to the docking switch  220  (step S 406 ).  
         [0055]    In response to the docking bus connection enable signal from the docking signal detector  250 , the docking switch  220  performs a switching operation to establish the bus docking connection between the base system  200  and the docking system  280 . Thereafter, the docking connection controller  260  reads a device ID of a PCI-to-PCI bridge controller in the docking system (step S 407 ) and then determines whether the read device ID of the bridge controller is normal (step S 408 ).  
         [0056]    In the case where it is determined at the step S 408  that the read device ID of the PCI-to-PCI bridge controller is not normal, control preferably returns to step S 403  where the docking connection controller  260  transfers the docking bus connection command information to the docking signal detector  250 , and the bus docking processing routine is repeated. Preferably, the returning to step S 403  when the read device ID is not normal is repeated a prescribed number of times such as ten times. If the read device ID is not normal even after returning to step S 403  is repeated ten times, the routine is preferably ended and processed as an error.  
         [0057]    On the other hand, if it is determined at step S 408  that the read device ID of the PCI-to-PCI bridge controller is normal, the docking connection controller  260  notifies the docking connection processor  270  that the docking system  280  has been normally docked (step S 409 ). Accordingly, the docking connection processor  270  recognizes devices in the docking system  280 , re-configures the base system as a new system (step S 410 ) and the process is complete.  
         [0058]    [0058]FIG. 5 is a flow chart illustrating a second preferred embodiment of a method for controlling a base system for bus connection with a docking system in accordance with the present invention. The second preferred embodiment of a method for controlling a base system for bus connection with a docking system can be performed, for example, by the base system  200 ′ and will be described using the base system  200 ′. However, the present invention is not intended to be so limited.  
         [0059]    As shown in FIG. 5, after a process starts, a docking connection signal is received because of the connection of the docking system  280  to the base system  200 ′. The docking signal detector  255  preferably receives the docking connection signal and generates a docking event signal SMI/SCI and provides it to the docking connection controller  265  (step S 501 ).  
         [0060]    Then, the docking connection controller  265  recognizes the docking event signal from the docking signal detector  255  and branches to a docking processing routine (step S 502 ). The bus docking processing routine preferably controls base system operations to reduce or prevent docking system connection failures. Thereafter, the docking connection controller  265  generates a docking bus connection enable signal and transfers it directly to the docking signal detector  255  via the input/output pin (step S 503 ).  
         [0061]    While the docking signal detector  255  executes a docking bus connection command, the docking connection controller  265  successively generates an ISA bus cycle or internal PCI bus cycle for the base system  200 ′ by force. At this time, the generated bus cycle is of a type different from that of a PCI bus cycle used in the docking system  280 . As a result, the PCI bus cycle used in the docking system  280  is not generated in the base system  200  (step S 504 ).  
         [0062]    While the docking connection controller  265  generates the bus cycle of the type different from that of the PCI bus cycle used in the docking system  280 , the docking signal detector  255  generates a docking bus connection enable signal and provides it to the docking switch  220  (step S 505 ).  
         [0063]    In response to the docking bus connection enable signal from the docking signal detector  255 , the docking switch  220  performs a switching operation to establish the bus connection between the base system  200 ′ and the docking system  280 . Thereafter, the docking connection controller  265  reads a device ID of a PCI-to-PCI bridge controller in the docking system (step S 506 ) and then determines whether the read device ID of the bridge controller is normal (step S 507 ).  
         [0064]    If it is determined at step S 507  that the read device ID of the PCI-to-PCI bridge controller is not normal, control preferably returns to step S 503  where the docking connection controller  265  transfers the docking bus connection command information to the docking signal detector  255 , and the bus docking routine is repeated.  
         [0065]    Preferably, returning to step S 503  when the read device ID is not normal is repeated a prescribed number of times such as ten times. If the read device ID is not normal even after returning to step S 503  is repeated ten times, the process is preferably ended and handled as an error.  
         [0066]    On the other hand, if it is determined at step S 507  that the read device ID of the PCI-to-PCI bridge controller is normal, the docking connection controller  265  notifies the docking connection processor  270  that the docking system  280  has been normally connected (step S 508 ). As a result, the docking connection processor  270  recognizes devices in the docking system  280 , re-configures the base system as a new system (step S 509 ) and the process is preferably complete.  
         [0067]    As described above, according to preferred embodiments of the present invention, a bus cycle collision between the base system and the docking system is avoided by compulsorily generating a bus cycle of a type different from that of a cycle of a bus in the docking system to be connected. Although the bus to be connected has been disclosed in the preferred embodiments to be a PCI bus for illustrative purposes, all types of buses are easily applicable for the bus connection according to the present invention.  
         [0068]    As described above, preferred embodiments of a bus docking apparatus and methods of connecting a docking system to a base system and a computer-readable storage medium for storing instructions according to the present invention have various advantages. Preferred embodiments according to the present invention provide a base system for bus connection with a docking system, computer-readable instructions and a method for controlling the same that fixes an internal bus cycle of the base system at a specific bus cycle of a type different from that of a bus cycle used in the docking system for a predetermined period of time preferably during docking operations, which include when a bus of the docking system is connected to a bus of the base system. Therefore, the bus of the docking system can be stably connected to the bus of the base system and docking failures are reduced or prevented. Further, the docking system can be docked to the base system without causing any damage to either system, compared with a related art system having an uncontrolled and limited defined connection point of time.  
         [0069]    Further, even if docking system is not a PCI bus, while the base system software such as BIOS consistently staying in the prescribed state are connected with a docking system bus, preferred embodiments of the present invention guarantee or increase safety of the bus connection. Also, preferred embodiments can reduce cost of a base system that uses a standard or legacy system by eliminating additional ASICs or hardware.  
         [0070]    The foregoing embodiments and advantages are merely exemplary and are not to be construed as limiting the present invention. The present teaching can be readily applied to other types of apparatuses. The description of the present invention is intended to be illustrative, and not to limit the scope of the claims. Many alternatives, modifications, and variations will be apparent to those skilled in the art. In the claims, means-plus-function clauses are intended to cover the structures described herein as performing the recited function and not only structural equivalents but also equivalent structures.

Technology Classification (CPC): 6