WO2021070986A1 - 복수의 인터페이스를 이용하여 다른 전자 장치를 인식하는 방법 및 그 전자 장치 - Google Patents

복수의 인터페이스를 이용하여 다른 전자 장치를 인식하는 방법 및 그 전자 장치 Download PDF

Info

Publication number
WO2021070986A1
WO2021070986A1 PCT/KR2019/013285 KR2019013285W WO2021070986A1 WO 2021070986 A1 WO2021070986 A1 WO 2021070986A1 KR 2019013285 W KR2019013285 W KR 2019013285W WO 2021070986 A1 WO2021070986 A1 WO 2021070986A1
Authority
WO
WIPO (PCT)
Prior art keywords
electronic device
information
interface
storage unit
information storage
Prior art date
Application number
PCT/KR2019/013285
Other languages
English (en)
French (fr)
Inventor
최형규
김진경
Original Assignee
엘지전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엘지전자 주식회사 filed Critical 엘지전자 주식회사
Priority to KR1020227005871A priority Critical patent/KR20220069925A/ko
Priority to US17/754,528 priority patent/US11983134B2/en
Priority to PCT/KR2019/013285 priority patent/WO2021070986A1/ko
Publication of WO2021070986A1 publication Critical patent/WO2021070986A1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • G06F13/4068Electrical coupling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/24Resetting means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4405Initialisation of multiprocessor systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers

Definitions

  • the present invention relates to a method of recognizing another electronic device using a plurality of interfaces and an electronic device thereof. Specifically, the present invention relates to a method of recognizing another electronic device using a first interface for receiving device information of another electronic device and a second interface for performing communication with another electronic device, and an electronic device thereof.
  • the function expansion technology may include, for example, a technology that connects a mobile terminal to a TV so that a function provided by the mobile terminal can be used even on the TV.
  • Functional expansion may be performed on the basis that a plurality of electronic devices to be connected are compatible with each other. That is, function expansion can be performed only when electronic devices capable of providing function expansion are connected. Accordingly, the electronic device needs to identify whether another electronic device to be connected is an electronic device capable of providing a function extension.
  • the problem to be solved by the present invention is to more quickly identify other electronic devices connected to the electronic device by acquiring device information of other electronic devices using a first interface at the time of booting of the electronic device.
  • the present invention communicates with a process of another electronic device through a second interface to identify another electronic device when device information is not obtained through the first interface, so that other electronic devices connected to the electronic device are more It is to be able to identify accurately and effectively.
  • An electronic device includes: a first interface for receiving information from a device information storage unit that stores information on another electronic device; A second interface for communicating with a processor of the other electronic device; And at least one processor, wherein the at least one processor, when the device information storage unit is identified through the first interface, receives information of the other electronic device from the device information storage unit through the first interface.
  • the device information storage unit is not identified through the first interface, it is checked whether the other electronic device is identified through the second interface, and when the other electronic device is identified through the second interface , Information on the other electronic device may be obtained through the second interface based on communication with the processor of the other electronic device.
  • the device information storage unit when the device information storage unit is identified through a first interface for receiving information from a device information storage unit that stores information on another electronic device, the first Obtaining information of the other electronic device from the device information storage unit through an interface, and a second interface for communicating with a processor of the other electronic device when the device information storage unit is not identified through the first interface
  • An electronic device includes a device information storage unit for storing information on the electronic device, at least one processor, and when another electronic device is connected to the device information storage unit, the device storage unit A first interface for transmitting information to the other electronic device and a second interface for communicating with the other electronic device, wherein the at least one processor is connected to the other electronic device through the first interface If this is not identified, information on the electronic device may be transmitted to the other electronic device based on communication with the other electronic device through the second interface.
  • the system includes a first electronic device, a second electronic device, and a first interface for transmitting information on the second electronic device from the device information storage unit to the first electronic device. And a second interface for communication between the processor of the first electronic device and the processor of the second electronic device, wherein the second electronic device includes a device information storage unit including information on the second electronic device And, when the device information storage unit is identified through the first interface, the first electronic device obtains information on the second electronic device from the device information storage unit through the first interface, and When the device information storage unit is not identified through the first interface, it is checked whether the second electronic device is identified through the second interface, and when the second electronic device is identified through the second interface, the second electronic device is 2 Information on the second electronic device may be obtained through the second interface based on communication with the processor of the electronic device.
  • the electronic device and method according to the embodiment of the present invention can more quickly identify another electronic device connected to the electronic device by acquiring device information of another electronic device using the first interface at the time of booting of the electronic device. .
  • the device information when the device information is not obtained through the first interface, it communicates with the process of the other electronic device through the second interface to identify the other electronic device, Other electronic devices connected to the electronic device can be more accurately and effectively identified.
  • FIG. 1 illustrates an example in which a first electronic device and a second electronic device according to an embodiment of the present invention are used.
  • FIG. 2 is a functional block diagram of a first electronic device and a second electronic device according to an embodiment of the present invention.
  • FIG. 3 is a flowchart illustrating a method of controlling a first electronic device according to an embodiment of the present invention.
  • FIG. 4 is a detailed flowchart of some steps in a method of controlling a first electronic device according to an embodiment of the present invention.
  • FIG. 5 is a detailed flowchart of some other steps in a method of controlling a first electronic device according to an embodiment of the present invention.
  • FIG. 6 is a detailed flowchart of another partial step of a method for controlling a first electronic device according to an exemplary embodiment of the present invention.
  • FIG. 7 is a functional block diagram of a first electronic device and a second electronic device according to another embodiment of the present invention.
  • FIG. 8 is a flowchart illustrating a method of controlling a first electronic device according to another embodiment of the present invention.
  • FIG 9 illustrates an example of a user interface provided by a first electronic device according to an embodiment of the present invention.
  • FIG. 10 illustrates another example of a user interface provided by a first electronic device according to an embodiment of the present invention.
  • FIG. 1 illustrates an example in which a first electronic device and a second electronic device according to an embodiment of the present invention are used. Specifically, FIG. 1 shows an example in which a system 2 including a first electronic device 100 and a second electronic device 200 is implemented.
  • the system 2 may be a system for expanding functions of a vehicle.
  • the first electronic device 10 may be a vehicle insertion (or attachment) device that controls the vehicle, and the second electronic device 20 is detachable to the vehicle and connectable to the first electronic device 10. It may be a separate device.
  • the first electronic device 10 may be a device that is mounted on a vehicle in a vehicle manufacturing stage to provide a driver with various functions related to driving (eg, temperature control, multimedia playback).
  • the second electronic device 20 may be a device that is connected to the first electronic device 10 and can be mounted on a vehicle.
  • the second electronic device 20 may be implemented as a simple module.
  • the first electronic device 10 may provide a function of the second electronic device 20 to a user based on the connection with the second electronic device 20. That is, the first electronic device 10 may provide various functions to a user by expanding functions through connection with other external electronic devices such as the second electronic device 20.
  • FIG. 1 a case in which the present invention is applied to the vehicle system 1 is described as an example, but the present invention is not limited thereto, and the present invention can be applied to various systems requiring extension of functions.
  • FIG. 2 is a functional block diagram of a first electronic device and a second electronic device according to an embodiment of the present invention. Specifically, FIG. 2 shows an example of a system 2 including the first electronic device 100 and the second electronic device 200 to enable function expansion.
  • the system 2 may include a first electronic device 100, a second electronic device 200, a first interface 140, and a second interface 130.
  • the first electronic device 100 may include a first SoC (system on chip) 110 and a storage 120, and in some cases, at least a part of the first interface 140 and the second interface 130 It may include at least some.
  • SoC system on chip
  • the second electronic device 200 may include a second SoC 210, a hub 230, a device information storage unit 240, and a storage 250, and in some cases, the first interface 140 It may be implemented to include at least a portion of and at least a portion of the second interface 130.
  • each component included in the first electronic device 100 and the second electronic device 200 may be implemented by a computing device including a microprocessor.
  • each of the first electronic device 100 and the second electronic device 200 may be one or more input devices (eg, cameras, speakers, microphones, communication modules) or one or more output devices (eg: Display).
  • the first electronic device 100 or the second electronic device 200 may be implemented in a form including an input device or an output device rather than a form connected to an input device or an output device. It is not limited.
  • the first electronic device 100 may provide a specific function using the second electronic device 200 based on information on the second electronic device 200.
  • the information on the second electronic device 200 may include information on hardware or software of the second electronic device 200.
  • the first electronic device 100 identifies whether the second electronic device is a connectable device (or an available device) based on such information on the second electronic device 200, and if the second electronic device 100 is a connectable device, A function provided by the second electronic device 200 (eg, a function using an application installed in the second electronic device 200) may be provided through the first electronic device 100.
  • the first interface 140 may be connected to the second electronic device 200 to transmit and receive device information of the second electronic device 200. Specifically, the first interface 140 connects the device information storage unit 240 and the first SoC 110 so that information on the second electronic device stored in the device information storage unit 240 is stored in the first SoC 110. Can be sent to.
  • the second interface 130 may be connected to the second electronic device 200 to perform communication. Specifically, the second interface may connect the first SoC 110 and the second SoC 210 to perform communication between the first electronic device 100 and the second electronic device 200. In addition, the second interface 130 may transmit information from the second SoC 210 to the first SoC 110, and the transmitted information may be information obtained by the second SoC 210.
  • the first interface 140 may be an interface in which the amount of data transmission per hour is less than the amount of data transmission per hour through the second interface 130. That is, the first interface 140 may be a low-speed interface, and the second interface 130 may be a high-speed interface.
  • the first interface 140 may include an inter-integrated circuit (I2C) or a serial peripheral interface (SPI).
  • the second interface 130 may include peripheral component interconnect express (PCIe).
  • the I2C is an interface used to connect low-speed peripheral devices, and may be a communication interface comprising a line for transmitting and receiving data and a line for timing synchronization.
  • SPI may be an interface capable of full-duplex communication.
  • PCIe is a serial interface for input/output, enabling high-speed communication.
  • PCIe is a more complex configuration than I2C or SPI and can take more time than I2C or SPI to initialize. Meanwhile, I2C, SPI, and PCIe are easy to those skilled in the art, so a detailed description will be omitted.
  • the first SoC 110 of the first electronic device 100 may include at least one processor for controlling the driving of the first electronic device 100, and may be referred to as a controller or a processor according to embodiments. .
  • the first SoC 110 obtains information of the second electronic device 200 from the device information storage unit 240 of the second electronic device 200 through the first interface 140. You can try.
  • the booting operation may refer to a procedure of preparing the first SoC 110 so that the operation of the first SoC 110 is possible based on the application of power to the first SoC 110.
  • the first SoC 110 may initialize the first interface 140 and the second interface 130 in response to the start of booting. Initialization of the first interface 140 and the second interface 130 may be performed independently of each other, and may be performed regardless of the order.
  • the time required to initialize the first interface 140 may be shorter than the time required to initialize the second interface 130. In this case, operations using the first interface 140 to be described later are performed. During operation, the initialization of the second interface 130 may be performed in parallel.
  • the first SoC 110 may identify the device information storage unit 240 of the second electronic device 200 through the first interface 140.
  • the first SoC 110 may identify the device information storage unit 240 based on confirming the connection with the device information storage unit 240 through the first interface 140.
  • the operation of identifying the device information storage unit 240 may be performed in response to a booting operation.
  • the first SoC 110 may attempt to communicate with the device information storage unit 240 through the first interface 140. If the communication attempt is successful, the first SoC 110 may determine that the device information storage unit 240 is connected, that is, that the device information storage unit 240 has been identified.
  • the first SoC 110 may be connected to the device information storage unit 240 through the first interface 140 and the hub 230 of the second electronic device 200 as illustrated. In this case, the first SoC 110 may communicate with the device information storage unit 240 through the hub 230, and based on this, it is possible to identify whether or not the device information storage unit 240 is connected.
  • the hub 230 may allow not only the first interface 140 but also other components (eg, the second SoC 210) to be connected to the device information storage unit 240. That is, access to the device information storage unit 240 may be possible through one path. Based on the hub 230 being connected to one end of the device information storage unit 240, one of a plurality of configurations selectively stores device information. It may be connected to the unit 240.
  • the device information storage unit 240 includes information on the second electronic device 200, for example, information on hardware of the second electronic device 200 and software of the second electronic device 200. May include information about.
  • the information on the hardware is various information related to the hardware, and may include, for example, information on the type of hardware, the version of the hardware, the date of manufacture of the hardware, and the performance of the hardware.
  • the information on the software is various information related to the software and may include, for example, information on the type of software, the version of the software, the date of manufacture of the software, and the date of upgrade of the software.
  • the first SoC 110 may obtain information on the second electronic device 200 from the device information storage unit 240 through the first interface 140. .
  • the first SoC 110 may obtain information on the second electronic device 200 in various ways. For example, when the device information storage unit 240 is identified, the first SoC 110 may access the device information storage unit 240 to directly obtain information on the second electronic device 200. As another example, the first SoC 110 may obtain information on the second electronic device 200 based on receiving information from the second electronic device 200 based on communication with the device information storage unit 240. I can.
  • the first SoC 110 may attempt to obtain information from the device information storage unit 240 a plurality of times.
  • the first SoC 110 may attempt to obtain information on the device information storage unit 240 within a limit of a predetermined number of times until the information acquisition is successful.
  • the number of attempts to acquire information may be determined as an arbitrary value. However, in some cases, the number of attempts to acquire information may be predetermined based on a time point at which the booting operation of the first electronic device 100 is completed. A more detailed description related to this will be described later with reference to FIG. 4.
  • the acquisition of information of the second electronic device 200 through the first interface 140 may be performed in response to a booting operation. That is, before booting of the first electronic device 100 is completed, an operation related to the first interface 140 may be performed. Meanwhile, an operation using the second interface 130 to be described later may be performed after booting of the first electronic device 100 is completed.
  • the first SoC 110 may check whether the second electronic device 200 is identified through the second interface 130 when the device information storage unit 240 is not identified through the first interface 140.
  • the second interface 130 may be connected to the second SoC 210 of the second electronic device 200, and based on this, the first SoC 110 determines whether the second electronic device 200 is identified. I can confirm.
  • the first SoC 110 determines that the device information storage unit 240 is not identified, and the second interface The second electronic device 200 may check the connection through 130. When it is confirmed that the second electronic device 200 is connected through the second interface 130, the first SoC 110 may determine that the second electronic device 200 is identified.
  • the device information storage unit 240 may check the connection through the second interface 130.
  • the first SoC 110 may determine that the second electronic device 200 is identified.
  • the second interface 130 may include PCIe as mentioned above.
  • the first SoC 110 checks whether the second electronic device 200 is connected based on PCIe-based communication. I can. For example, the first SoC 110 performs communication by adding a heartbeat check signal to a sideband signal among PCIe channels, and detects a change related thereto to determine whether the second electronic device 200 is connected. I can confirm.
  • the first SoC 110 performs link initialization after PCIe communication, then performs enumeration, and checks the bus device function (BDF), so that the second electronic device 200 You can check whether it is connected or not.
  • BDF bus device function
  • the first SoC 110 is a second electronic device based on communication with the second SoC 210 of the second electronic device 200.
  • Information on 200 may be obtained through the second interface 130.
  • the first SoC 110 may request information on the second electronic device 200 from the second SoC 210 through the second interface 130.
  • the second SoC 210 may obtain information on the second electronic device 200 by accessing the device information storage unit 240 in response to the request.
  • the second SoC 210 may transmit the obtained information to the first SoC 110 through the second interface 130.
  • the first SoC 110 may determine that the use of a specific function based on the second electronic device 200 is possible. I can.
  • the first SoC 110 disconnects from the second electronic device 200 or disconnects the second electronic device ( 200) may provide information requesting an update of the software. For a more detailed description related to this, refer to FIG. 5.
  • the storage 120 may store various information related to driving of the first electronic device 100.
  • the storage 120 may store, for example, information on available devices, that is, information on other devices connected to the first electronic device 100 and capable of expanding functions.
  • the storage 120 may store information on at least one of hardware or software of an available device.
  • the information on the hardware is various information related to the hardware, and may include, for example, a type of hardware, a version of the hardware, a date of manufacture of the hardware, and information on the performance of the hardware.
  • the information on the software is various information related to the software and may include, for example, information on the type of software, the version of the software, the date of manufacture of the software, and the date of upgrade of the software.
  • Information on the available device may be determined in advance according to the support specification of the first electronic device 100 and stored in the storage 120.
  • the second SoC 210 accesses the device information storage unit 240 Information can be obtained.
  • the second SoC 210 may transmit the acquired information on the second electronic device 200 to the first SoC 110 through the second interface 130.
  • the second SoC 210 may be connected to the device information storage unit 240 through the hub 230. Based on this, the second SoC 210 may obtain information on the second electronic device 200 from the device information storage unit 240.
  • the hub 230 may connect the device information storage unit 240 and a plurality of components.
  • the hub 230 may enable one of a plurality of components to be connected to the device information storage unit 240 based on a switch (switch) a configuration connected to the device information storage unit 240 according to a predetermined setting.
  • one end of the hub 230 may be connected to the device information storage unit 240, and the other end is a plurality of configurations to be connected to the device information storage unit 240 (e.g., the first SoC 110, the second It may be connected to the SoC (210).
  • the device information storage unit 240 e.g., the first SoC 110, the second It may be connected to the SoC (210).
  • the hub 230 may switch according to a predetermined condition so that one of a plurality of components is connected to the device information storage unit 240. For example, when a specific signal is received from the first interface, the hub 230 may allow the device information storage unit 240 to be connected to the first SoC 110 through the first interface 140. When a specific signal is received from the second SoC 210, the hub 230 may allow the device information storage unit 240 to be connected to the second SoC 210 through the path 220.
  • the device information storage unit 240 may store information on the second electronic device 200. Specifically, the device information storage unit 240 stores information on the second electronic device 200, and is implemented to allow access from an external device such as the first electronic device 100 independently of the storage 250 Can be configured.
  • the first SoC 110 may obtain information stored in the device information storage unit 240 through the second SoC 210 or without the second SoC 210. have.
  • the device information storage unit 240 may include information on the second electronic device 200, that is, information on at least one of hardware or software of the second electronic device 200.
  • the device information storage unit 240 may be a nonvolatile memory.
  • the device information storage unit 240 may include, for example, an electrically erasable programmable read-only memory (EEPROM).
  • EEPROM electrically erasable programmable read-only memory
  • EEPROM is a non-volatile memory, but can be written when a specific electrical signal is applied. Based on this, when the information of the second electronic device 200 is changed, the second SoC 210 may update the information of the second electronic device 200 stored in the device information storage unit 240.
  • the storage 250 may include information required to drive the second electronic device 200.
  • the storage 250 may include information on an operating system (OS) of the second electronic device 200.
  • OS operating system
  • the storage 250 is a general storage, and direct access from other electronic devices may be difficult. That is, the information stored in the storage 250 may be used by the second electronic device 200 only through the second SoC 210.
  • the device information storage unit 240 and the storage 250 are shown as separate configurations, but in some cases, the device information storage unit 240 is included in the storage 250 but other information stored in the storage 250 It can be implemented in a manner that allows access to other electronic devices by being separated from them.
  • the first electronic device 100 When booting is started, the first electronic device 100 according to an exemplary embodiment of the present invention is configured to receive data from the device information storage unit 240 through the first interface 140, which is a low-speed interface that can be easily driven before booting is completed. 2 By acquiring information on the electronic device 200, it is possible to more quickly identify the second electronic device 200. That is, the second electronic device 200 is used more quickly by obtaining information on the second electronic device 200 in advance before the time when the booting is completed and the second interface 130, which is a high-speed interface, is available. Can be lost.
  • the first electronic device 100 uses the second interface 130, which is a higher-speed interface. 2 Information on the electronic device 200 may be obtained. Through this, accuracy and reliability of acquiring information on the second electronic device 200 may be improved.
  • FIG. 3 is a flowchart illustrating a method of controlling a first electronic device according to an embodiment of the present invention. Specifically, FIG. 3 shows a flow of a control method of the first electronic device 100 of the system 2 shown in FIG. 2.
  • each step of FIG. 3 may be performed in a different order as shown in the drawings depending on the case.
  • content overlapping with FIG. 1 or 2 may be omitted.
  • the first electronic device 100 may initialize the first interface 140 and the second interface 130 (S110 ). Initialization of the first interface 140 and initialization of the second interface 130 are performed at the start of the operation of the first interface 140 and the second interface 130, and are independent of each other, but are performed regardless of the order. I can.
  • the first electronic device 100 may identify the device information storage unit 240 through the first interface 140 (S120). Specifically, the second electronic device 200 checks whether the device information storage unit 240 of the second electronic device 200 is connected through the first interface 130 to access the device information storage unit 240. Can be identified.
  • the first electronic device 100 may determine that the device information storage unit 240 is identified. When the device information storage unit 240 is not connected, the first electronic device 100 may determine that the device information storage unit 240 is not identified.
  • Whether or not the device information storage unit 240 is connected may be made through an attempt to communicate with the first electronic device 100 through the first interface 140.
  • the first electronic device 100 may transmit a communication signal to the device information storage unit 240 through the first interface 140, and when a response is confirmed, the device information storage unit 240 is connected. Can be determined.
  • the first interface 140 may be connected to the device information storage unit 240 through a hub.
  • the hub is a medium for connecting a plurality of devices and the device information storage unit 240 and may include a switch and control the device to control a device connected to the device information storage unit 240.
  • the hub 230 may connect the first interface 140 and the device information storage unit 240 to each other by adjusting the switch to the first position.
  • the hub 230 may adjust the switch to the second position so that another path (eg, the path 220 of FIG. 2) is connected to the device information storage unit 240.
  • the switching condition of the hub 230 may be specified in advance. For example, when the first electronic device 100 transmits a communication signal through the first interface 140, the hub 230 may allow the device information storage unit 240 and the first electronic device 100 to be connected. have.
  • the first electronic device 100 may obtain information on the second electronic device 200 from the device information storage unit 240 (S130 ). Specifically, the device information storage unit 240 is identified and the first electronic device 100 may obtain information on the second electronic device 200 stored in the device information storage unit 240. The identification of the device information storage unit 240 through the first interface 140 may be performed in response to a booting operation. For example, the first electronic device 100 may identify the device information storage unit 240 through the first interface 140 from a booting start point to a booting completion point.
  • the first electronic device 100 may identify the second electronic device 200 through the second interface 130 (S140). Specifically, when the first electronic device 100 cannot recognize the device information storage unit 240 through the first interface 140 or when it cannot obtain information on the second electronic device 200 Identification of the second electronic device 200 through the second interface 130 may be attempted.
  • Identification of the second electronic device 200 may be determining whether the second electronic device 200 is connected to the first electronic device 100 through the second interface 130.
  • the second interface 130 may be connected to the processor (or the second SoC 210) of the second electronic device 200. Based on this, the first electronic device 100 may identify the second electronic device 200.
  • the first electronic device 100 adds a specific signal (for example, a heartbeat check signal) to a sideband signal among the channels of the PCIe, ), and identifying a response thereto, the second electronic device 200 may be identified. That is, when a response is received, it is determined that the second electronic device 200 is identified, and when the response is not received, it may be determined that the second electronic device 200 is not identified.
  • a specific signal for example, a heartbeat check signal
  • the sideband signal or a specific signal it is easy for a person skilled in the art, and detailed information will be omitted.
  • the first electronic device 100 may identify the second electronic device 200 by performing a connection-type arrangement after initializing the connection and checking the BDF. If it is determined that the second electronic device 200 exists through the BDF check, it is determined that the second electronic device 200 is identified, and if the second electronic device 200 does not exist, the second electronic device 200 is It can be determined that it has not been identified. Connection initialization, connection type arrangement, and confirmation of the BDF are easy for a person skilled in the art, and detailed information will be omitted.
  • the first electronic device 100 may obtain information on the second electronic device 200 from the second electronic device 200 ( S150). Specifically, when the second electronic device 200 is identified, the first electronic device 100 may transmit an information request signal to the processor (or the second SoC 210) of the second electronic device 200. When receiving the information request signal, the processor of the second electronic device 200 may obtain information on the second electronic device 200 stored in the device information storage unit 240 based on the connection to the device information storage unit 240. I can.
  • the first electronic device 100 may perform a single operation of the first electronic device 100 (S160 ). Specifically, if the second electronic device 200 is not identified through the second interface 130, the first electronic device 100 considers that there is no other electronic device connected to the first electronic device 100, and Only the device 100 can perform a single operation.
  • the first electronic device 100 may include a display. In this case, the first electronic device 100 cannot find the second electronic device 200 unless the second electronic device 200 is identified. You can also display a notification window notifying that you have done so on the display.
  • FIG. 4 is a detailed flowchart of some steps in a method of controlling a first electronic device according to an embodiment of the present invention. Specifically, FIG. 4 shows step S120 of FIG. 3 in more detail.
  • the first electronic device 100 may identify the device information storage unit 240 through the first interface 140 (S210 ). Specifically, the first electronic device 100 may identify whether the device information storage unit 240 is connected to the first electronic device 100 through the first interface 140.
  • the first electronic device 100 may perform step S130 of FIG. 3.
  • the first electronic device 100 may increase the count (S220 ).
  • the count may mean the number of times the first electronic device 100 attempts to identify the device information storage unit 240 through the first interface 140. Accordingly, when the count is increased by 1, it may indicate that an attempt for identification of the device information storage unit 240 is performed once more.
  • the first electronic device 100 may identify whether the count is less than a specific number of times (S230).
  • the specific number of times may be a predetermined value based on a boot time of the first electronic device 100 and a recognition time of the device information storage unit 240. For example, if it takes 5 seconds to complete booting of the first electronic device 100 and 1 second for the first electronic device 100 to recognize the device information storage unit 240, the specific number of times is It may be determined as a specific value (eg, 3 times, 5 times) less than the maximum number of times that can be recognized before booting is completed. However, this is only an example and is not limited thereto, and for example, a specific number of times may be designated as an arbitrary value.
  • the first electronic device 100 may re-identify the device information storage unit 240 through the first interface 140 (S210), and perform an operation described later such as increasing the count. have.
  • FIG. 5 is a detailed flowchart of some other steps in a method of controlling a first electronic device according to an embodiment of the present invention. Specifically, FIG. 5 shows the operation of the control method of the first electronic device 100 following step S130 or step S150 of FIG. 3 in more detail.
  • the first electronic device 100 may obtain information on the second electronic device 200 (S310 ). Specifically, in connection with step S130, the first electronic device 100 is connected to the device information storage unit 240 through the first interface 140 to obtain information on the second electronic device 200 or step S150 and Relatedly, information on the second electronic device 200 may be obtained based on a request for information from the second electronic device 200 through the second interface 130.
  • the first electronic device 100 may determine whether the second electronic device 200 is connectable hardware (S320).
  • the first electronic device 100 is hardware capable of providing a specific function by connecting the second electronic device 200 to the first electronic device 100 based on the acquired information on the second electronic device 200. Whether or not it is configured can be determined.
  • the first electronic device 100 may determine whether there is information corresponding to the information on the second electronic device 200 among information on devices available for storage of the first electronic device 100. .
  • the information on the available device may include information on hardware or software for a device that is connectable with the first electronic device 100 or a compatible device.
  • the information on the available device may be provided to at least one device capable of providing a function provided by the other device. It may contain information about hardware or software.
  • the first electronic device 100 compares the information on the available device with information on the hardware among the information on the second electronic device 200. It may be determined whether the second electronic device 200 includes hardware connectable to the first electronic device 100.
  • the connectable hardware may mean hardware that is connected to the first electronic device 100 and manufactured so that a specific function can be extended.
  • the first electronic device 100 When the first electronic device 100 has information corresponding to the hardware information of the second electronic device 200 among the available device information, the first electronic device 100 Can be determined to have connectable hardware.
  • the information on the available device includes information on the first hardware, the second hardware, the first software, and the second software, and the information on the second electronic device 200 is information on the first hardware.
  • the first electronic device 100 may determine that the second electronic device 200 has connectable hardware.
  • the first electronic device 100 When the first electronic device 100 does not have information corresponding to the hardware information of the second electronic device 200 among the available device information, the first electronic device 100 May decide not to have connectable hardware
  • information on available devices includes information on first hardware, second hardware, first software, and second software
  • information on second electronic device 200 is information on third hardware.
  • the first electronic device 100 may determine that the second electronic device 200 does not have connectable hardware.
  • the first electronic device 100 may provide information on connectable hardware (S330). Provision of information on connectable hardware can be accomplished in a variety of ways. For example, the first electronic device 100 may provide information on connectable hardware through the output device of the first electronic device 100. For another example, the first electronic device 100 may provide information on connectable hardware to the second electronic device 200 to provide information on connectable hardware through the second electronic device 200. have.
  • the first electronic device 100 may provide a notification indicating that connection is impossible instead of information on connectable hardware.
  • a notification indicating that connection is impossible instead of information on connectable hardware.
  • the first electronic device 100 may determine whether the second electronic device 200 has supportable software (S340). Step S340 may also be performed in a method corresponding to step S320.
  • the first electronic device 100 compares the information on the available device stored in the storage with information on the software among the information on the second electronic device 200, You can determine whether you have software or not.
  • the supportable software may mean software compatible with hardware or software of the first electronic device 100 so that an extension of a specific function is provided on the first electronic device 100.
  • the first electronic device 100 when the first electronic device 100 has information corresponding to the information on the software of the second electronic device 200 among the information on the available device, the first electronic device 100 200 may be determined to have supportable software. When the first electronic device 100 does not have information corresponding to the software information of the second electronic device 200 among the available device information, the first electronic device 100 May decide not to have supportable software.
  • the first electronic device 100 may perform normal booting (S350). For example, when the first electronic device 100 has software that the second electronic device 200 supports, the hardware of the first electronic device 100 used for a specific function related to the second electronic device 200 By supplying power, the booting can proceed normally.
  • the first electronic device 100 may update software using a firmware over the air (FOTA) or a universal serial bus (USB) (S360). ). A more detailed description related to this will be described later with reference to FIG. 6.
  • FOTA firmware over the air
  • USB universal serial bus
  • the first electronic device 100 may provide information indicating that software update is required. For example, the first electronic device 100 may output information indicating that software update is required through the output device of the first electronic device 100. For another example, the first electronic device 100 indicates that the software needs to be updated through the second electronic device 200 based on transmitting information indicating that the software needs to be updated to the second electronic device 200. Information can be made available. For an example of this information, refer to FIG. 10.
  • FIG. 6 is a detailed flowchart of another partial step of a method for controlling a first electronic device according to an exemplary embodiment of the present invention. Specifically, FIG. 6 shows step S360 of FIG. 5 in more detail.
  • the first electronic device 100 may request an input for determining a method of performing an update (or upgrade) among FOTA or USB (S410). Specifically, when it is determined that the software of the second electronic device 200 is not software that can be supported by the first electronic device 100, the first electronic device 100 determines a method to perform the update among FOTA or USB. You can ask for input.
  • the request for input can be made in a variety of ways.
  • the first electronic device 100 may request an input for determining a method of performing an update among FOTA or USB in a manner in which a window window including information for requesting an input is displayed.
  • a window window including information for requesting an input is displayed.
  • the first electronic device 100 may determine whether to perform the update using FOTA (S420). When an input requesting an update using FOTA is applied, the first electronic device 100 may determine to perform an update using FOTA. If an input requesting an update using FOTA is not applied, the first electronic device 100 may determine not to perform the update using FOTA.
  • the first electronic device 100 may determine whether the first electronic device 100 or the second electronic device 200 is connected to the Internet (S430).
  • the first electronic device 100 may update the FOTA-based software based on an Internet connection (S440).
  • the first electronic device 100 causes the software update information to be downloaded to the second electronic device 200 through the first electronic device 100. Updates can be performed.
  • the first electronic device 100 may update the software based on the transmission of a software update request from the second electronic device 200.
  • the FOTA-based software update a detailed description will be omitted since it is easy for a person skilled in the art.
  • the first electronic device 100 may check whether USB is connected (S450).
  • the USB may be connected to the first electronic device 100 or the second electronic device 200, and a program for updating software may be stored in the USB.
  • the first electronic device 100 may perform a software update of the second electronic device 200 by executing a software update program stored in the USB based on the USB connection (S460).
  • the first electronic device 100 may provide information indicating that software update is required to the second electronic device 200 before performing step S410. Based on this, each of the operations of FIG. 6 may be performed by the second electronic device 200.
  • FIG. 7 is a functional block diagram of a first electronic device and a second electronic device according to another embodiment of the present invention. Specifically, FIG. 7 illustrates a case in which the first electronic device uses the autonomous driving function based on the connection with the second electronic device when the second electronic device is an autonomous driving module including a function related to autonomous driving.
  • the system 3 may include a first electronic device 100 and 301 mounted on a vehicle and a second electronic device 302 including a program for providing an autonomous driving function.
  • the first electronic device 301 and the second electronic device 302 may be connected to each other through the first interface 330 and the second interface 340.
  • the second electronic device 302 may be referred to as an autonomous driving module for autonomous driving.
  • the first electronic device 301 is connected to the first SoC 310 that controls overall driving of the first electronic device 301 and information on the driving of the first electronic device 301 and the first electronic device 301 It may include a storage 320 that contains information about other possible devices.
  • the second electronic device 302 includes a second SoC 350 that controls overall driving of the second electronic device 302, a storage 390 including information on driving of the second electronic device 301, and a second electronic device 302.
  • An autonomous driving module information storage unit 380 including information on the electronic device 302, a hub 370 for connecting other external electronic devices or the second SoC 350 to the autonomous driving module information storage unit 380 ) Can be included.
  • the second electronic device 302 may include an external device for providing an autonomous driving function.
  • the second electronic device 302 may include a camera 361, a radar 363, and a lidar 365, but is not limited thereto. It may include a variety of related devices.
  • the external device may be implemented in a form connected to the second electronic device 302, but the present invention is not limited thereto.
  • the radar 363 may be a sensor that radiates electromagnetic waves and analyzes that the emitted electromagnetic waves are reflected and returned by surrounding objects to measure a distance to surrounding objects.
  • the lidar 365 may be a sensor that measures a distance to a surrounding object by analyzing light returned by the laser emitted by radiating a laser reflected by surrounding objects.
  • the first SoC 310 may initialize the first interface 330 and the second interface 340 in response to the start of booting. Initialization of the first interface 330 and the second interface 340 may be performed independently in any order.
  • the first SoC 310 may identify whether the autonomous driving module information storage unit 380 is connected through the first interface 330.
  • the first SoC 310 may identify whether the autonomous driving module information storage unit 380 is connected based on communication through the first interface 330.
  • the first SoC 310 may attempt communication through the first interface 330.
  • the hub 370 may recognize this so that the first interface 330 is connected to the autonomous driving module information storage unit 380.
  • the first SoC 310 may identify that the autonomous driving module information storage unit 380 is connected.
  • the attempt of communication through the first interface 330 may be made less than or equal to a predetermined number of times based on the booting time of the first electronic device and the recognition time of the autonomous driving module information storage unit. Based on this, an attempt to communicate through the first interface may be made within a time period during which the booting of the first electronic device 301 and the second electronic device 302 is performed.
  • the first SoC 310 may acquire information on the stored second electronic device 302 based on a connection with the autonomous driving module information storage unit 380.
  • the information on the second electronic device 302 may include information on at least one of hardware or software of the second electronic device 302.
  • the information on the hardware may include information on the type of hardware, the version of the hardware, the date of manufacture of the hardware, and the performance of the hardware.
  • the information on the software is various information related to the software and may include, for example, information on the type of software, the version of the software, the date of manufacture of the software, and the date of upgrade of the software.
  • the first SoC 310 may attempt communication through the second interface 340 when the autonomous driving module information storage unit 380 is not identified or information on the second electronic device 302 is not obtained. have.
  • the attempt of communication through the second interface 340 may be made after booting of the first electronic device 301 and the second electronic device 302 is completed.
  • the first SoC 310 may be connected to the second SoC 350 through the second interface 340. Since the second SoC 350 is responsible for overall driving of the second electronic device 302, the second SoC 350 may be internally connected to the autonomous driving module information storage unit 380 through a specific path 355.
  • the second SoC 350 may be connected to the autonomous driving module information storage unit 380 through the hub 370.
  • the hub 370 may include a switch, through which the configuration connected to the autonomous driving module information storage unit 380 may be converted. For example, when a communication signal through the first interface is received, the hub 370 moves the switch to the first position so that the first SoC 310 is connected to the autonomous driving module information storage unit 380 through the first interface. You can do it.
  • the hub moves the switch to the second position so that the second SoC 350 is connected to the autonomous driving module information storage unit 380 through a specific path 355. I can.
  • the first SoC 310 may transmit a signal for requesting autonomous driving module information (hereinafter, an information request signal) to the second SoC 350 through the second interface 340.
  • an information request signal a signal for requesting autonomous driving module information
  • the second SoC 350 is connected to the autonomous driving module information storage unit 380 to obtain information on the second electronic device 302 stored in the autonomous driving module information storage unit 380. have.
  • the second SoC 350 may transmit information on the second electronic device 302 to the first SoC 310 through the second interface 340.
  • the first SoC 310 may determine whether the obtained information on the second electronic device 302 corresponds to at least some of the previously stored information on the available device. When the first SoC 310 corresponds to at least some of the information on the available device previously stored in the acquired information on the second electronic device 302, the second electronic device 302 ) And can be determined to be a connectable device.
  • the first electronic device 301 can use the autonomous driving function of the second electronic device 302 even though the first electronic device 301 cannot provide the autonomous driving function in the first place. Function can be provided.
  • the first SoC 310 When the first SoC 310 does not correspond to any part of the information on the available device previously stored in the acquired information on the second electronic device 302, the second electronic device 302 It may be determined that the device cannot be connected to 301). In this case, the first SoC 310 provides information indicating that connection is not possible or transmits information requesting an update or exchange of the device through the output device of the first electronic device 301 or the second electronic device 302. Can provide.
  • FIG. 8 is a flowchart illustrating a method of controlling a first electronic device according to another embodiment of the present invention. Specifically, FIG. 8 shows a flow of a control method of the first electronic device 301 in the system 3 including the first electronic device 301 and the second electronic device 302 of FIG. 7.
  • the first electronic device 301 may initialize the first interface 330 and the second interface 340 in response to the start of booting (S510 ).
  • the first electronic device 301 may identify the autonomous driving module information storage unit 380 through the first interface 330 (S520).
  • the first electronic device 301 may obtain information on the second electronic device 302 from the autonomous driving module information storage unit 380.
  • the information on the second electronic device 302 may include information on hardware or software of the second electronic device 302. Since the second electronic device 302 is a device for autonomous driving, the software may be software for autonomous driving.
  • the first electronic device 301 may recognize the second electronic device 302 through the second interface (S530). When the second electronic device 302 is recognized, the first electronic device 301 may obtain information on the second electronic device 302 from the second electronic device 302 (S560). The first electronic device 301 compares the information on the second electronic device 302 with the information on the available devices of the first electronic device 301, and the second electronic device 302 It is possible to check whether the device is connectable with 301).
  • the first electronic device 301 provides a function provided by the second electronic device 302 based on the connection with the second electronic device 302, that is, autonomy. Can provide driving.
  • the first electronic device 301 may perform normal driving (S540). Normal driving may be a function originally provided by the first electronic device 301.
  • the first electronic device 301 connects the second electronic device 302 to the first electronic device 301, thereby A function based on the electronic device 302 may be provided to a user.
  • FIG. 9 illustrates an example of a user interface provided by a first electronic device according to an embodiment of the present invention. Specifically, FIG. 9 shows an example of information provided when hardware of a second electronic device is not available.
  • the first electronic device may include an output device such as a display.
  • an output device such as a display.
  • information confirmed through the first electronic device in relation to the second electronic device may be displayed through the output device.
  • a window window including the text “This device is not supported” may be displayed on the first electronic device.
  • the first electronic device includes information on what hardware is currently in the second electronic device, and information on hardware that can be connected to the first electronic device (eg, hardware type, hardware Version).
  • the information as shown in FIG. 9 may also be displayed through the second electronic device, and the present invention is not limited thereto.
  • FIG. 10 illustrates another example of a user interface provided by a first electronic device according to an embodiment of the present invention. Specifically, FIG. 9 shows an example of information provided when the software of the second electronic device is not supported (or cannot be used).
  • the first electronic device when software of a second electronic device is not available in the first electronic device, the first electronic device includes information for requesting software update, a current version of the software of the second electronic device, and a first electronic device. You can provide information about the version of software that can be linked with. Such information may be displayed through an output device of the first electronic device.
  • the first electronic device may request a user's input by displaying an input window 410 indicating whether to update using FOTA or USB.
  • the update may be performed on the software of the second electronic device using FOTA.
  • an update using USB may be performed on the software of the second electronic device.
  • Combinations of each block of the block diagram attached to the present specification and each step of the flowchart may be performed by computer program instructions. Since these computer program instructions can be mounted on the processor of a general-purpose computer, special purpose computer or other programmable data processing equipment, the instructions executed by the processor of the computer or other programmable data processing equipment are displayed in each block or flowchart of the block diagram. Each step creates a means to perform the functions described.
  • These computer program instructions can also be stored in computer-usable or computer-readable memory that can be directed to a computer or other programmable data processing equipment to implement a function in a particular way, so that the computer-usable or computer-readable memory It is also possible to produce an article of manufacture in which the instructions stored in the block diagram contain instruction means for performing the functions described in each block of the block diagram or each step of the flowchart. Since computer program instructions can also be mounted on a computer or other programmable data processing equipment, a series of operating steps are performed on a computer or other programmable data processing equipment to create a computer-executable process to create a computer or other programmable data processing equipment. It is also possible for the instructions to perform the processing equipment to provide steps for executing the functions described in each block of the block diagram and each step of the flowchart.
  • each block or each step may represent a module, segment, or part of code that contains one or more executable instructions for executing the specified logical function(s). It should also be noted that in some alternative embodiments, functions mentioned in blocks or steps may occur out of order. For example, two blocks or steps shown in succession may in fact be performed substantially simultaneously, or the blocks or steps may sometimes be performed in the reverse order depending on the corresponding function.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Stored Programmes (AREA)

Abstract

본 발명의 일 실시예에 따른 전자 장치는, 다른 전자 장치에 대한 정보를 저장하는 장치 정보 저장부의 정보를 수신하기 위한 제1 인터페이스; 상기 다른 전자 장치의 프로세서와 통신하기 위한 제2 인터페이스; 및 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서는, 상기 제1 인터페이스를 통해 상기 장치 정보 저장부가 식별되는 경우, 상기 제1 인터페이스를 통해 상기 장치 정보 저장부로부터 상기 다른 전자 장치의 정보를 획득하고, 상기 제1 인터페이스를 통해 상기 장치 정보 저장부가 식별되지 않는 경우 상기 제2 인터페이스를 통해 상기 다른 전자 장치가 식별되는지 여부를 확인하고, 상기 제2 인터페이스를 통해 상기 다른 전자 장치가 식별되는 경우, 상기 다른 전자 장치의 프로세서와의 통신에 기초하여 상기 다른 전자 장치에 대한 정보를 상기 제2 인터페이스를 통해 획득할 수 있다.

Description

복수의 인터페이스를 이용하여 다른 전자 장치를 인식하는 방법 및 그 전자 장치
본 발명은 복수의 인터페이스를 이용하여 다른 전자 장치를 인식하는 방법 및 그 전자 장치에 대한 것이다. 구체적으로, 본 발명은 다른 전자 장치의 장치 정보를 수신하는 제1 인터페이스와 다른 전자 장치의 통신을 수행하는 제2 인터페이스를 이용하여 다른 전자 장치를 인식하는 방법 및 그 전자 장치에 관한 것이다.
전자 기술의 급격한 발전에 따라, 일상생활에는 다양한 종류의 전자 장치들이 보급되고 있으며 다양한 전자 장치들을 함께 이용하여 서로의 기능을 보완하기 위한 시도가 증가하고 있다.
이러한 측면에서, 특정 장치에서 제공되는 기능을 다른 장치에서 이용하기 위해 이들을 서로 연결함으로써 기능을 확장하는 기능 확장 기술에 대한 관심이 증가하고 있다. 기능 확장 기술은 예를 들면, 티비(tv)에 모바일 단말을 연결하여, 티비에서도 모바일 단말에서 제공되는 기능을 이용할 수 있도록 하는 기술을 포함할 수 있다.
기능 확장은 연결되는 복수의 전자 장치가 상호 호환이 가능함에 기초하여 이루어질 수 있다. 즉, 기능 확장이 제공 가능한 전자 장치들이 연결되어야 기능 확장이 이루어질 수 있다. 이에 따라, 전자 장치는 연결되는 다른 전자 장치가 기능 확장의 제공이 가능한 전자 장치인지에 대한 식별을 수행해야할 필요가 있다.
기존에 전자 장치의 식별은 부팅이 완료된 후에 수행되기 때문에 전자 장치의 부팅 시작 시점에서부터 실질적으로 기능 확장에 따라 다른 전자 장치의 기능을 이용할 수 있게 되기까지 다소 시간이 걸리게 된다. 따라서, 보다 신속하게 전자 장치에 연결되는 다른 전자 장치를 식별하기 위한 방안이 요구된다.
본 발명이 해결하고자 하는 과제는, 전자 장치의 부팅 시점에 제1 인터페이스를 이용하여 다른 전자 장치의 장치 정보를 획득함으로써, 전자 장치에 연결되는 다른 전자 장치를 보다 신속하게 식별할 수 있도록 하는 것이다.
또한, 본 발명은 제1 인터페이스를 통한 장치 정보의 획득이 이루어지지 않는 경우에는 제2 인터페이스를 통해 다른 전자 장치의 프로세스와 통신하여 다른 전자 장치를 식별함으로써, 전자 장치에 연결되는 다른 전자 장치를 보다 정확하고 효과적으로 식별할 수 있도록 하는 것이다.
다만, 본 발명이 해결하고자 하는 과제는 이상에서 언급한 바로 제한되지 않으며, 언급되지는 않았으나 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있는 목적을 포함할 수 있다.
본 발명의 일 실시예에 따른 전자 장치는, 다른 전자 장치에 대한 정보를 저장하는 장치 정보 저장부의 정보를 수신하기 위한 제1 인터페이스; 상기 다른 전자 장치의 프로세서와 통신하기 위한 제2 인터페이스; 및 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서는, 상기 제1 인터페이스를 통해 상기 장치 정보 저장부가 식별되는 경우, 상기 제1 인터페이스를 통해 상기 장치 정보 저장부로부터 상기 다른 전자 장치의 정보를 획득하고, 상기 제1 인터페이스를 통해 상기 장치 정보 저장부가 식별되지 않는 경우 상기 제2 인터페이스를 통해 상기 다른 전자 장치가 식별되는지 여부를 확인하고, 상기 제2 인터페이스를 통해 상기 다른 전자 장치가 식별되는 경우, 상기 다른 전자 장치의 프로세서와의 통신에 기초하여 상기 다른 전자 장치에 대한 정보를 상기 제2 인터페이스를 통해 획득할 수 있다.
본 발명의 일 실시예에 따른 전자 장치의 제어 방법은, 다른 전자 장치에 대한 정보를 저장하는 장치 정보 저장부의 정보를 수신하기 위한 제1 인터페이스를 통해 상기 장치 정보 저장부가 식별되는 경우, 상기 제1 인터페이스를 통해 상기 장치 정보 저장부로부터 상기 다른 전자 장치의 정보를 획득하는 단계와, 상기 제1 인터페이스를 통해 상기 장치 정보 저장부가 식별되지 않는 경우, 상기 다른 전자 장치의 프로세서와 통신하기 위한 제2 인터페이스를 통해 상기 다른 전자 장치가 식별되는지 여부를 확인하는 단계와, 상기 제2 인터페이스를 통해 상기 다른 전자 장치가 식별되는 경우, 상기 다른 전자 장치의 프로세서와의 통신에 기초하여 상기 다른 전자 장치에 대한 정보를 상기 제2 인터페이스를 통해 획득하는 단계를 포함할 수 있다.
본 발명의 일 실시예에 따른 전자 장치는, 상기 전자 장치에 대한 정보를 저장하는 장치 정보 저장부와, 적어도 하나의 프로세서와, 상기 장치 정보 저장부에 다른 전자 장치가 연결되면 상기 장치 저장 저장부의 정보를 상기 다른 전자 장치에게 전송하기 위한 제1 인터페이스와, 상기 다른 전자 장치와 통신하기 위한 제2 인터페이스를 포함하고, 상기 적어도 하나의 프로세서는, 상기 제1 인터페이스를 통한 상기 다른 전자 장치와의 연결이 식별되지 않는 경우, 상기 제2 인터페이스를 통한 상기 다른 전자 장치와의 통신에 기초하여 상기 전자 장치에 대한 정보를 상기 다른 전자 장치에게 전송할 수 있다.
본 발명의 일 실시예에 따른 시스템은, 제1 전자 장치와, 제2 전자 장치와, 상기 장치 정보 저장부로부터 상기 제1 전자 장치로 상기 제2 전자 장치에 대한 정보를 전송하기 위한 제1 인터페이스와, 상기 제1 전자 장치의 프로세서와 상기 제2 전자 장치의 프로세서 간의 통신을 위한 제2 인터페이스를 포함하고, 상기 제2 전자 장치는, 상기 제2 전자 장치에 대한 정보를 포함하는 장치 정보 저장부를 포함하고, 상기 제1 전자 장치는, 상기 제1 인터페이스를 통해 상기 장치 정보 저장부가 식별되는 경우, 상기 제1 인터페이스를 통해 상기 장치 정보 저장부로부터 상기 제2 전자 장치의 정보를 획득하고, 상기 제1 인터페이스를 통해 상기 장치 정보 저장부가 식별되지 않는 경우 상기 제2 인터페이스를 통해 상기 제2 전자 장치가 식별되는지 여부를 확인하고, 상기 제2 인터페이스를 통해 상기 제2 전자 장치가 식별되는 경우, 상기 제2 전자 장치의 프로세서와의 통신에 기초하여 상기 제2 전자 장치에 대한 정보를 상기 제2 인터페이스를 통해 획득할 수 있다.
본 발명의 실시예에 따른 전자 장치 및 방법은, 전자 장치의 부팅 시점에 제1 인터페이스를 이용하여 다른 전자 장치의 장치 정보를 획득함으로써 전자 장치에 연결되는 다른 전자 장치를 보다 신속하게 식별할 수 있다.
또한, 본 발명의 실시예에 따른 전자 장치 및 방법은, 제1 인터페이스를 통한 장치 정보의 획득이 이루어지지 않는 경우에는 제2 인터페이스를 통해 다른 전자 장치의 프로세스와 통신하여 다른 전자 장치를 식별함으로써, 전자 장치에 연결되는 다른 전자 장치를 보다 정확하고 효과적으로 식별할 수 있다.
다만, 본 발명에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 발명의 일 실시예에 따른 제1 전자 장치와 제2 전자 장치가 이용되는 예를 도시한다.
도 2는 본 발명의 일 실시예에 따른 제1 전자 장치와 제2 전자 장치의 기능 블록도를 도시한다.
도 3은 본 발명의 일 실시예에 따른 제1 전자 장치의 제어 방법의 흐름도를 도시한다.
도 4는 본 발명의 일 실시예에 따른 제1 전자 장치의 제어 방법 중 일부 단계의 흐름을 구체적으로 도시한다.
도 5는 본 발명의 일 실시예에 따른 제1 전자 장치의 제어 방법 중 다른 일부 단계의 흐름을 구체적으로 도시한다.
도 6은 본 발명의 일 실시예에 따른 제1 전자 장치의 제어 방법 중 또 다른 일부 단계의 흐름을 구체적으로 도시한다.
도 7은 본 발명의 다른 실시예에 따른 제1 전자 장치와 제2 전자 장치의 기능 블록도를 도시한다.
도 8은 본 발명의 다른 실시예에 따른 제1 전자 장치의 제어 방법의 흐름도를 도시한다.
도 9는 본 발명의 일 실시예에 따른 제1 전자 장치에서 제공되는 사용자 인터페이스의 예를 도시한다.
도 10은 본 발명의 일 실시예에 따른 제1 전자 장치에서 제공되는 사용자 인터페이스의 다른 예를 도시한다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명의 범주는 청구항에 의해 정의될 뿐이다.
본 발명의 실시예들을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명은 본 발명의 실시예들을 설명함에 있어 실제로 필요한 경우 외에는 생략될 것이다. 그리고 후술되는 용어들은 본 발명의 실시예에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예들을 포함할 수 있는바, 특정 실시예들을 도면에 예시하고 상세한 설명에 설명하고자 한다. 그러나 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로서 이해되어야 한다.
제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 해당 구성요소들은 이와 같은 용어들에 의해 한정되지는 않는다. 이 용어들은 하나의 구성요소들을 다른 구성요소로부터 구별하는 목적으로만 사용된다.
어떤 구성요소가 다른 구성요소에 '연결되어' 있다거나 '접속되어' 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.
도 1은 본 발명의 일 실시예에 따른 제1 전자 장치와 제2 전자 장치가 이용되는 예를 도시한다. 구체적으로, 도 1은 제1 전자 장치(100)와 제2 전자 장치(200)를 포함하는 시스템(2)이 구현되는 예를 나타낸다.
도 1을 참조하면, 시스템(2)은 차량의 기능 확장을 위한 시스템일 수 있다. 이 때, 제1 전자 장치(10)는 차량을 제어하는 차량 삽입용(또는 부착용) 장치일 수 있으며, 제2 전자 장치(20)는 차량에 탈부착 가능하고 제1 전자 장치(10)와 연결 가능한 별도의 장치일 수 있다.
구체적으로, 제1 전자 장치(10)는 차량의 제조 단계에서 차량에 장착되어 운전자에게 주행과 관련된 다양한 기능(예: 온도 조절, 멀티미디어 재생)을 제공하기 위한 장치일 수 있다. 제2 전자 장치(20)는 제1 전자 장치(10)와의 연결되어 차량에 장착가능한 장치일 수 있다. 제2 전자 장치(20)는 간단한 형태의 모듈로 구현될 수도 있다.
제1 전자 장치(10)는 제2 전자 장치(20)와의 연결에 기초하여, 제2 전자 장치(20)의 기능을 사용자에게 제공할 수 있다. 즉, 제1 전자 장치(10)는 제2 전자 장치(20)와 같은 외부의 다른 전자 장치와의 연결을 통해 기능을 확장함으로써 사용자에게 다양한 기능을 제공할 수 있다.
도 1에서는 본 발명이 차량 시스템(1)에 대해 적용되는 경우를 예로서 설명하고 있으나, 이에 제한되는 것은 아니고 기능의 확장이 요구되는 다양한 시스템에도 본 발명이 적용될 수 있다.
도 2는 본 발명의 일 실시예에 따른 제1 전자 장치와 제2 전자 장치의 기능 블록도를 도시한다. 구체적으로, 도 2는 제1 전자 장치(100)와 제2 전자 장치(200)를 포함하여 기능 확장을 가능하도록 하는 시스템(2)의 예를 나타낸다.
도 2를 참조하면, 시스템(2)은 제1 전자 장치(100), 제2 전자 장치(200), 제1 인터페이스(140), 제2 인터페이스(130)를 포함할 수 있다.
제1 전자 장치(100)는 제1 SoC(system on chip)(110), 스토리지(120)를 포함할 수 있으며, 경우에 따라 제1 인터페이스(140)의 적어도 일부, 제2 인터페이스(130)의 적어도 일부를 포함할 수도 있다.
제2 전자 장치(200)는 제2 SoC(210), 허브(hub)(230), 장치 정보 저장부(240), 스토리지(250)를 포함할 수 있으며, 경우에 따라 제1 인터페이스(140)의 적어도 일부, 제2 인터페이스(130)의 적어도 일부를 포함하도록 구현될 수도 있다.
이 때, 제1 전자 장치(100) 및 제2 전자 장치(200)에 포함되는 각 구성은 마이크로프로세서(microprocessor)를 포함하는 연산 장치에 의해 구현될 수 있다.
실시예에 따라, 제1 전자 장치(100)와 제2 전자 장치(200) 각각은 하나 또는 그 이상의 입력 장치(예: 카메라, 스피커, 마이크, 통신 모듈) 또는 하나 또는 그 이상의 출력 장치(예: 디스플레이)와 연결될 수 있다. 경우에 따라, 제1 전자 장치(100) 또는 제2 전자 장치(200)는 입력 장치 또는 출력 장치와 연결되는 형태가 아닌 입력 장치 또는 출력 장치를 포함하는 형태로 구현될 수도 있으며, 이에 본 발명이 제한되지는 않는다.
제1 전자 장치(100)는 제2 전자 장치(200)에 대한 정보에 기초하여 제2 전자 장치(200)를 이용한 특정 기능을 제공할 수 있다. 제2 전자 장치(200)에 대한 정보는 제2 전자 장치(200)의 하드웨어 또는 소프트웨어에 대한 정보를 포함할 수 있다.
제1 전자 장치(100)는 이와 같은 제2 전자 장치(200)에 대한 정보를 기초로 제2 전자 장치가 연결 가능한 장치인지(또는 이용 가능한 장치인지) 여부를 식별하고, 연결 가능한 장치인 경우, 제2 전자 장치(200)에서 제공되는 기능(예: 제2 전자 장치(200)에 설치된 어플리케이션을 이용한 기능)이 제1 전자 장치(100)를 통해서 제공되도록 할 수 있다.
제1 인터페이스(140)는 제2 전자 장치(200)와 연결되어 제2 전자 장치(200)의 장치 정보를 송수신할 수 있다. 구체적으로, 제1 인터페이스(140)는 장치 정보 저장부(240)와 제1 SoC(110)를 연결시켜 장치 정보 저장부(240)에 저장된 제2 전자 장치에 대한 정보가 제1 SoC(110)로 전송되도록 할 수 있다.
제2 인터페이스(130)는 제2 전자 장치(200)와 연결되어 통신을 수행할 수 있다. 구체적으로, 제2 인터페이스는 제1 SoC(110)와 제2 SoC(210)를 연결시켜 제1 전자 장치(100)와 제2 전자 장치(200) 사이의 통신이 수행되도록 할 수 있다. 또한, 제2 인터페이스(130)는 제2 SoC(210)로부터 제1 SoC(110)로 정보를 전달할 수도 있으며, 이 때 전달되는 정보는 제2 SoC(210)에 의해 획득되는 정보일 수 있다.
제1 인터페이스(140)는 시간당 데이터 전송량이 제2 인터페이스(130)를 통한 시간당 데이터 전송량보다 적은 인터페이스일 수 있다. 즉, 제1 인터페이스(140)는 저속의 인터페이스일 수 있고, 제2 인터페이스(130)는 고속의 인터페이스일 수 있다. 예를 들어, 제1 인터페이스(140)는 I2C(inter-integrated circuit) 또는 SPI(serial peripheral interface)를 포함할 수 있다. 제2 인터페이스(130)는 PCIe(peripheral component interconnect express)를 포함할 수 있다.
I2C는 저속의 주변기기를 연결하기 위해 사용되는 인터페이스로서, 데이터 송수신을 위한 선과 타이밍 동기화를 위한 선으로 이루어지는 통신 인터페이스일 수 있다. SPI는 전이중 통신이 가능한 인터페이스일 수 있다. PCIe는 입출력을 위한 직렬 구조의 인터페이스로, 보다 고속의 통신이 가능하도록 한다. PCIe는 I2C 또는 SPI에 비해 보다 복잡한 구성으로 초기화를 위해 I2C 또는 SPI보다 많은 시간이 소요될 수 있다. 한편, I2C, SPI, PCIe에 대해서는 통상의 기술자에게 용이한바 구체적인 설명은 생략하겠다.
제1 전자 장치(100)의 제1 SoC(110)는 제1 전자 장치(100)의 구동을 제어하기 위한 적어도 하나의 프로세서를 포함할 수 있으며, 실시예에 따라 제어부 또는 프로세서로 언급될 수도 있다.
제1 SoC(110)는 부팅(booting) 동작에 대응하여 제1 인터페이스(140)를 통해 제2 전자 장치(200)의 장치 정보 저장부(240)로부터 제2 전자 장치(200)의 정보 획득을 시도할 수 있다. 여기서, 부팅 동작은 제1 SoC(110)에 전원이 인가됨에 기초하여 제1 SoC(110)의 동작이 가능하도록 준비하는 절차를 의미할 수 있다.
구체적으로, 제1 SoC(110)는 부팅(booting)이 시작됨에 대응하여 제1 인터페이스(140)와 제2 인터페이스(130)를 초기화할 수 있다. 제1 인터페이스(140)와 제2 인터페이스(130)의 초기화는 서로 독립적으로 수행될 수 있으며, 순서에 무관하게 이루어질 수 있다.
경우에 따라, 제1 인터페이스(140)의 초기화에 소요되는 시간은 제2 인터페이스(130)의 초기화에 소요되는 시간보다 짧을 수 있는데, 이러한 경우, 후술되는 제1 인터페이스(140)를 이용하는 동작들이 수행되는 동안 제2 인터페이스(130)의 초기화가 병렬적으로 수행될 수 있다.
제1 SoC(110)는 제1 인터페이스(140)의 초기화가 완료되면, 제1 인터페이스(140)를 통해 제2 전자 장치(200)의 장치 정보 저장부(240)를 식별할 수 있다. 제1 SoC(110)는 제1 인터페이스(140)를 통해 장치 정보 저장부(240)와의 연결을 확인함에 기초하여 장치 정보 저장부(240)를 식별할 수 있다. 장치 정보 저장부(240)를 식별하는 동작은 부팅 동작에 대응하여 수행되는 것일 수 있다.
제1 SoC(110)는 제1 인터페이스(140)를 통해 장치 정보 저장부(240)와 통신을 시도할 수 있다. 제1 SoC(110)는 통신의 시도가 성공하면, 장치 정보 저장부(240)가 연결된 것으로, 즉 장치 정보 저장부(240)가 식별된 것으로 결정할 수 있다.
경우에 따라, 제1 SoC(110)는 도시된 바와 같이 제1 인터페이스(140) 및 제2 전자 장치(200)의 허브(230)를 통해 장치 정보 저장부(240)와 연결될 수도 있다. 이러한 경우, 제1 SoC(110)는 허브(230)를 통해 장치 정보 저장부(240)와 통신을 수행할 수 있고, 이에 기초하여 장치 정보 저장부(240)의 연결 여부를 식별할 수 있다.
한편, 허브(230)는 제1 인터페이스(140)뿐 아니라 다른 구성(예: 제2 SoC(210))이 장치 정보 저장부(240)에 연결되도록 할 수도 있다. 즉, 장치 정보 저장부(240)로의 진입은 하나의 경로로 가능할 수 있는데, 허브(230)가 장지 정보 저장부(240)의 일단에 연결됨에 기초하여 복수의 구성 중 하나가 선택적으로 장치 정보 저장부(240)에 연결될 수 있다.
장치 정보 저장부(240)는 제2 전자 장치(200)에 대한 정보, 예를 들어 제2 전자 장치(200)의 하드웨어(hardware)에 대한 정보 및 제2 전자 장치(200)의 소프트웨어(software)에 대한 정보를 포함할 수 있다. 여기서, 하드웨어에 대한 정보는 하드웨어와 관련된 다양한 정보로 예를 들어 하드웨어의 종류, 하드웨어의 버전(version), 하드웨어의 제조일자, 하드웨어의 성능에 대한 정보를 포함할 수 있다. 소프트웨어에 대한 정보는 소프트웨어와 관련된 다양한 정보로 예를 들어 소프트웨어의 종류, 소프트웨어의 버전, 소프트웨어의 제조일자, 소프트웨어의 업그레이드 일자에 대한 정보를 포함할 수 있다.
제1 SoC(110)는 장치 정보 저장부(240)가 식별되는 경우, 제1 인터페이스(140)를 통해 장치 정보 저장부(240)로부터 상기 제2 전자 장치(200)의 정보를 획득할 수 있다.
제1 SoC(110)는 제2 전자 장치(200)의 정보를 다양한 방식으로 획득할 수 있다. 예를 들어, 제1 SoC(110)는 장치 정보 저장부(240)가 식별되면 장치 정보 저장부(240)에 접근하여 제2 전자 장치(200)의 정보를 직접 획득할 수 있다. 다른 예를 들면, 제1 SoC(110)는 장치 정보 저장부(240)와의 통신에 기초하여 제2 전자 장치(200)의 정보를 수신함에 기초하여 제2 전자 장치(200)의 정보를 획득할 수 있다.
일 실시예에서, 제1 SoC(110)는 장치 정보 저장부(240)로부터 정보 획득을 복수회 시도할 수 있다. 제1 SoC(110)는 정보 획득이 성공하기까지 기지정된 횟수의 한도 내에서 장치 정보 저장부(240)에 대한 정보 획득을 시도할 수 있다.
정보 획득의 시도 횟수는 임의의 값으로 결정된 것일 수 있다. 다만 경우에 따라 정보 획득의 시도의 횟수는 제1 전자 장치(100)의 부팅 동작이 완료되는 시점에 기초하여 기결정될 수도 있다. 이와 관련된 보다 구체적인 설명은 도 4를 통해 후술하겠다.
이와 같은 제1 인터페이스(140)를 통한 제2 전자 장치(200)의 정보 획득은 부팅 동작에 대응하여 이루어질 수 있다. 즉, 제1 전자 장치(100)의 부팅이 완료되기 이전에 제1 인터페이스(140)와 관련된 동작이 수행될 수 있다. 한편, 후술하는 제2 인터페이스(130)를 이용한 동작은 제1 전자 장치(100)의 부팅이 완료된 이후에 수행될 수 있다.
제1 SoC(110)는 제1 인터페이스(140)를 통해 장치 정보 저장부(240)가 식별되지 않는 경우 제2 인터페이스(130)를 통해 제2 전자 장치(200)가 식별되는지 여부를 확인할 수 있다. 여기서, 제2 인터페이스(130)는 제2 전자 장치(200)의 제2 SoC(210)와 연결될 수 있는데, 이를 기초로 제1 SoC(110)는 제2 전자 장치(200)가 식별되는지 여부를 확인할 수 있다.
예를 들어, 제1 SoC(110)는 제1 인터페이스(140)를 통해 장치 정보 저장부(240)의 연결이 확인되지 않으면 장치 정보 저장부(240)가 식별되지 않는 것으로 결정하고, 제2 인터페이스(130)를 통해 제2 전자 장치(200)가 연결을 확인할 수 있다. 제2 인터페이스(130)를 통해 제2 전자 장치(200)가 연결됨이 확인되면 제1 SoC(110)는 제2 전자 장치(200)가 식별된 것으로 결정할 수 있다.
다른 예를 들어, 제1 SoC(110)는 제1 인터페이스(140)를 통해 장치 정보 저장부(240)를 통한 제2 전자 장치(200)의 정보가 획득되지 않으면 장치 정보 저장부(240)가 식별되지 않는 것으로 결정하고, 제2 인터페이스(130)를 통해 제2 전자 장치(200)가 연결을 확인할 수 있다. 제2 인터페이스(130)를 통해 제2 전자 장치(200)의 연결이 확인되면 제1 SoC(110)는 제2 전자 장치(200)가 식별된 것으로 결정할 수 있다.
한편, 제2 인터페이스(130)는 앞서 언급했던 바와 같이 PCIe를 포함할 수 있는데, 이러한 경우, 제1 SoC(110)는 PCIe 기반의 통신을 기초로 제2 전자 장치(200)의 연결 여부를 확인할 수 있다. 예를 들어, 제1 SoC(110)는 PCIe 채널 중 사이드밴드(sideband) 신호에 heartbeat check 신호를 추가하여 통신을 수행하고, 이와 관련된 변화를 감지하여 제2 전자 장치(200)가 연결되었는지 여부를 확인할 수 있다.
다른 예를 들면, 제1 SoC(110)는 PCIe 통신 후 링크 초기화(link initialization) 후 열거형(enumeration) 정리를 수행하고 BDF(bus device function)을 확인함에 기초하여 제2 전자 장치(200)가 연결되었는지 여부를 확인할 수 있다.
제1 SoC(110)는 제2 인터페이스(130)를 통해 제2 전자 장치(200)가 식별되는 경우, 제2 전자 장치(200)의 제2 SoC(210)와의 통신에 기초하여 제2 전자 장치(200)에 대한 정보를 제2 인터페이스(130)를 통해 획득할 수 있다.
구체적으로, 제1 SoC(110)는 제2 인터페이스(130)를 통해 제2 SoC(210)에 제2 전자 장치(200)에 대한 정보를 요청할 수 있다. 후술하겠으나, 제2 SoC(210)는 상기 요청에 대응하여 장치 정보 저장부(240)에 접근하여 제2 전자 장치(200)에 대한 정보를 획득할 수 있다. 제2 SoC(210)는 획득된 정보를 제2 인터페이스(130)를 통해 제1 SoC(110)에게 전송할 수 있다.
제1 SoC(110)는 제2 전자 장치(200)에 대한 정보를 획득하면 스토리지(120)에 저장되는 이용 가능 장치에 대한 정보 중 적어도 일부에 제2 전자 장치(200)에 대한 정보가 대응하는지 여부를 판별할 수 있다.
제1 SoC(110)는 제2 전자 장치(200)에 대한 정보가 이용 가능 장치에 대한 정보의 적어도 일부에 대응하는 경우, 제2 전자 장치(200)에 기초한 특정 기능의 사용이 가능한 것으로 판단할 수 있다. 제1 SoC(110)는 제2 전자 장치(200)에 대한 정보가 이용 가능 장치에 대한 정보 중 어느 일부에도 대응하지 않는 경우, 제2 전자 장치(200)와의 연결을 해제하거나 제2 전자 장치(200)의 소프트웨어의 업데이트를 요청하는 정보를 제공할 수 있다. 이와 관련된 보다 구체적인 설명은 도 5를 참조할 수 있다.
스토리지(120)는 제1 전자 장치(100)의 구동과 관련된 다양한 정보를 저장할 수 있다. 스토리지(120)는 예를 들면 이용 가능 장치에 대한 정보, 즉, 제1 전자 장치(100)와 연결되어 기능 확장이 가능한 다른 장치에 대한 정보를 저장할 수 있다.
구체적으로, 스토리지(120)는 이용 가능 장치의 하드웨어 또는 소프트웨어 중 적어도 하나에 대한 정보를 저장할 수 있다. 하드웨어에 대한 정보는 하드웨어와 관련된 다양한 정보로 예를 들어 하드웨어의 종류, 하드웨어의 버전(version), 하드웨어의 제조일자, 하드웨어의 성능에 대한 정보를 포함할 수 있다. 소프트웨어에 대한 정보는 소프트웨어와 관련된 다양한 정보로 예를 들어 소프트웨어의 종류, 소프트웨어의 버전, 소프트웨어의 제조일자, 소프트웨어의 업그레이드 일자에 대한 정보를 포함할 수 있다.
이용 가능 장치에 대한 정보는 제1 전자 장치(100)의 지원 사양에 따라 미리 결정되어 스토리지(120) 저장될 수 있다.
제2 SoC(210)는 제2 인터페이스(130)를 통해 제2 전자 장치(200)의 정보를 요청하는 신호가 수신되면, 장치 정보 저장부(240)에 접근하여 제2 전자 장치(200)의 정보를 획득할 수 있다. 제2 SoC(210)는 획득된 제2 전자 장치(200)에 대한 정보를 제2 인터페이스(130)를 통해 제1 SoC(110)에게 전송할 수 있다.
경우에 따라, 제2 SoC(210)는 허브(230)를 통해 장치 정보 저장부(240)와 연결될 수 있다. 이를 기초로, 제2 SoC(210)는 장치 정보 저장부(240)에서 제2 전자 장치(200)에 대한 정보를 획득할 수 있다.
허브(230)는 장치 정보 저장부(240)와 복수의 구성을 연결할 수 있다. 허브(230)는 기지정된 설정에 따라 장치 정보 저장부(240)와 연결되는 구성을 스위치(switch)함에 기초하여 복수의 구성 중 하나가 장치 정보 저장부(240)에 연결되도록 할 수 있다.
구체적으로, 허브(230)의 일단은 장치 정보 저장부(240)와 연결될 수 있으며, 타단은 장치 정보 저장부(240)와 연결되고자 하는 복수의 구성(예: 제1 SoC(110), 제2 SoC(210))와 연결될 수 있다.
허브(230)는 기지정된 조건에 따라 스위치하여 복수의 구성 중 하나가 장치 정보 저장부(240)에 연결되도록 할 수 있다. 예를 들어, 허브(230)는 제1 인터페이스로부터 특정 신호가 수신되면 장치 정보 저장부(240)가 제1 인터페이스(140)를 통해 제1 SoC(110)와 연결되도록 할 수 있다. 허브(230)는 제2 SoC(210)로부터 특정 신호가 수신되면 장치 정보 저장부(240)가 경로(220)를 통해 제2 SoC(210)와 연결되도록 할 수 있다.
장치 정보 저장부(240)는 제2 전자 장치(200)에 대한 정보를 저장할 수 있다. 구체적으로, 장치 정보 저장부(240)는 제2 전자 장치(200)에 대한 정보를 저장하며, 스토리지(250)와는 독립적으로 제1 전자 장치(100)와 같은 외부 장치로부터의 접근이 가능하도록 구현된 구성일 수 있다.
이에 따라, 상술한 바와 같이 제1 SoC(110)는 장치 정보 저장부(240)에 저장된 정보는 제2 SoC(210)를 통해서 획득할 수도 있고, 제2 SoC(210)를 통하지 않고 획득할 수도 있다.
장치 정보 저장부(240)는 제2 전자 장치(200)에 대한 정보, 즉 제2 전자 장치(200)의 하드웨어 또는 소프트웨어 중 적어도 하나에 대한 정보를 포함할 수 있다. 장치 정보 저장부(240)는 비휘발성 메모리일 수 있다. 장치 정보 저장부(240)는 예를 들면, EEPROM(electrically erasable programmable read-only memory)을 포함할 수 있다.
EEPROM은 비휘발성 메모리이지만 특정한 전기적 신호가 인가되는 경우 쓰기가 가능할 수 있다. 이를 기초로 제2 SoC(210)는 제2 전자 장치(200)의 정보에 변경이 생기는 경우, 장치 정보 저장부(240)에 저장된 제2 전자 장치(200)의 정보를 업데이트할 수 있다.
스토리지(250)는 제2 전자 장치(200)의 구동을 위해 요구되는 정보를 포함할 수 있다. 예를 들어, 스토리지(250)는 제2 전자 장치(200)의 OS(operating system)에 대한 정보를 포함할 수 있다. 이러한 스토리지(250)는 일반적인 저장소로 다른 전자 장치로부터의 직접적인 접근이 어려울 수 있다. 즉, 스토리지(250)에 저장된 정보는 제2 전자 장치(200)는 제2 SoC(210)를 통해서만 이용될 수 있다.
도 2에서는 장치 정보 저장부(240)와 스토리지(250)를 별개의 구성으로 도시하였으나, 경우에 따라 장치 정보 저장부(240)는 스토리지(250)에 포함되지만 스토리지(250)에 저장되는 다른 정보들과 구분되어 다른 전자 장치의 접근을 허여하는 방식으로 구현될 수 있다.
본 발명의 일 실시예에 따른 제1 전자 장치(100)는 부팅이 시작되면 부팅이 완료되기 전에 간단하게 구동 가능한 저속의 인터페이스인 제1 인터페이스(140)를 통해 장치 정보 저장부(240)로부터 제2 전자 장치(200)에 대한 정보를 획득함으로써, 제2 전자 장치(200)에 대한 식별이 보다 신속하게 이루어지도록 할 수 있다. 즉, 부팅이 완료되어 고속의 인터페이스인 제2 인터페이스(130)의 사용 가능 시점 이전에 미리 제2 전자 장치(200)에 대한 정보를 획득하여 보다 신속하게 제2 전자 장치(200)의 사용이 이루어지도록 할 수 있다.
또한, 제1 전자 장치(100)는 만약 제1 인터페이스(140)를 통해 제2 전자 장치(200)에 대한 정보를 획득하지 못하는 경우에는 보다 고속의 인터페이스인 제2 인터페이스(130)를 이용하여 제2 전자 장치(200)에 대한 정보를 획득할 수 있다. 이를 통해 제2 전자 장치(200)에 대한 정보 획득의 정확도 및 신뢰성을 향상시킬 수 있다.
도 3은 본 발명의 일 실시예에 따른 제1 전자 장치의 제어 방법의 흐름도를 도시한다. 구체적으로 도 3은 도 2에 도시된 시스템(2)의 제1 전자 장치(100)의 제어 방법의 흐름을 나타낸다. 이하 도 3의 각 단계는 경우에 따라 도면에 도시된 바와 그 순서를 달리하여 수행될 수 있다. 이하에서는 도 1 또는 도 2와 중복되는 내용이 생략될 수 있다.
도 3을 참조하면, 제1 전자 장치(100)는 제1 인터페이스(140) 및 제2 인터페이스(130)를 초기화할 수 있다(S110). 제1 인터페이스(140)의 초기화 및 제2 인터페이스(130)의 초기화는 제1 인터페이스(140) 및 제2 인터페이스(130)의 동작의 시작 단계에서 이루어지는 것으로, 서로 독립적이되 순서에 무관하게 수행될 수 있다.
제1 전자 장치(100)는 제1 인터페이스(140)를 통해 장치 정보 저장부(240)를 식별할 수 있다(S120). 구체적으로, 제2 전자 장치(200)는 제1 인터페이스(130)를 통해 제2 전자 장치(200)의 장치 정보 저장부(240)가 연결되어 있는지 여부를 확인함으로써 장치 정보 저장부(240)를 식별될 수 있다.
예를 들어, 제1 전자 장치(100)는 장치 정보 저장부(240)가 연결된 경우, 장치 정보 저장부(240)가 식별되는 것으로 결정할 수 있다. 제1 전자 장치(100)는 장치 정보 저장부(240)가 연결되지 않은 경우, 장치 정보 저장부(240)가 식별되지 않은 것으로 결정할 수 있다.
이와 같은 장치 정보 저장부(240)의 연결 여부는 제1 인터페이스(140)를 통한 제1 전자 장치(100)의 통신 시도를 통해 이루어질 수 있다. 예를 들어, 제1 전자 장치(100)는 제1 인터페이스(140)를 통해 장치 정보 저장부(240)에게 통신 신호를 전송할 수 있으며, 이에 대한 응답이 확인되면 장치 정보 저장부(240)가 연결된 것으로 결정할 수 있다.
경우에 따라, 제1 인터페이스(140)는 허브를 통해 장치 정보 저장부(240)와 연결될 수 있다. 허브는 복수의 장치와 장치 정보 저장부(240)를 연결하기 위한 매개체로서, 스위치를 포함하고 이를 제어하여 장치 정보 저장부(240)에 연결되는 장치를 제어할 수 있다. 예를 들어, 허브(230)는 스위치를 제1 위치로 조정하면 제1 인터페이스(140)와 장치 정보 저장부(240)가 연결되도록 할 수 있다. 허브(230)는 스위치를 제2 위치로 조정하여 다른 경로(예: 도 2의 경로(220))가 장치 정보 저장부(240)에 연결되도록 할 수 있다.
이와 같은 허브(230)의 스위칭 조건은 미리 지정되어 있을 수 있다. 예를 들어, 제1 전자 장치(100)가 통신 신호를 제1 인터페이스(140)를 통해 전송하면 허브(230)는 장치 정보 저장부(240)와 제1 전자 장치(100)가 연결되도록 할 수 있다.
제1 전자 장치(100)는 장치 정보 저장부(240)가 식별되면, 장치 정보 저장부(240)로부터 제2 전자 장치(200)의 정보를 획득할 수 있다(S130). 구체적으로, 제1 전자 장치(100)는 장치 정보 저장부(240)가 식별되며 장치 정보 저장부(240)에 저장된 제2 전자 장치(200)의 정보를 획득할 수 있다. 이와 같은 제1 인터페이스(140)를 통한 장치 정보 저장부(240)의 식별은 부팅 동작에 대응하여 이루어질 수 있다. 예를 들어, 제1 전자 장치(100)는 부팅 시작 시점에서부터 부팅 완료 시점까지 제1 인터페이스(140)를 통한 장치 정보 저장부(240)의 식별을 수행할 수 있다.
제1 전자 장치(100)는 장치 정보 저장부(240)가 식별되지 않으면, 제2 인터페이스(130)를 통해 제2 전자 장치(200)를 식별할 수 있다(S140). 구체적으로, 제1 전자 장치(100)는 제1 인터페이스(140)를 통해 장치 정보 저장부(240)를 인식할 수 없는 경우 또는 제2 전자 장치(200)에 대한 정보를 획득할 수 없는 경우에 제2 인터페이스(130)를 통한 제2 전자 장치(200)의 식별을 시도할 수 있다.
제2 전자 장치(200)의 식별은 제2 전자 장치(200)가 제2 인터페이스(130)를 통해 제1 전자 장치(100)와 연결되어 있는지 여부를 판별하는 것일 수 있다. 제2 인터페이스(130)는 제2 전자 장치(200)의 프로세서(또는 제2 SoC(210))와 연결되어 있을 수 있다. 이를 기초로 제1 전자 장치(100)는 제2 전자 장치(200)를 식별할 수 있다.
예를 들어, 제2 인터페이스(130)가 PCIe인 경우, 제1 전자 장치(100)는 PCIe의 채널 중 사이드밴드 신호에 특정 신호(예: heartbeat check 신호)를 추가하여 이를 제2 전자 장치(200)로 전송하고, 이에 대한 응답을 식별함으로써 제2 전자 장치(200)를 식별할 수 있다. 즉, 응답이 수신되면 제2 전자 장치(200)가 식별된 것으로 결정하고 응답이 수신되지 않으면 제2 전자 장치(200)가 식별되지 않은 것으로 결정할 수 있다. 사이드밴드 신호 또는 특정 신호에 대해서는 통상의 기술자에게 용이한바 구체적인 내용은 생략하겠다.
다른 예를 들면, 제2 인터페이스(130)가 PCIe인 경우, 제1 전자 장치(100)는 연결 초기화 후 연결형 정리를 수행하고 BDF를 확인하여 제2 전자 장치(200)를 식별 할 수 있다. 만약 BDF 확인을 통해 제2 전자 장치(200)가 존재하는 것으로 확인되면 제2 전자 장치(200)가 식별된 것으로 결정하고 제2 전자 장치(200)가 존재하지 않으면 제2 전자 장치(200)가 식별되지 않은 것으로 결정할 수 있다. 연결 초기화, 연결형 정리 및 BDF의 확인과 관련하여서는 통상의 기술자에게 용이한바 구체적인 내용은 생략하겠다.
제1 전자 장치(100)는 제2 인터페이스(130)를 통해 제2 전자 장치(200)가 식별되면 제2 전자 장치(200)로부터 제2 전자 장치(200)에 대한 정보를 획득할 수 있다(S150). 구체적으로, 제1 전자 장치(100)는 제2 전자 장치(200)가 식별되면, 제2 전자 장치(200)의 프로세서(또는 제2 SoC(210))에게 정보 요청 신호를 전송할 수 있다. 제2 전자 장치(200)의 프로세서는 정보 요청 신호를 수신하면 장치 정보 저장부(240)에 연결됨에 기초하여 장치 정보 저장부(240)에 저장된 제2 전자 장치(200)에 대한 정보를 획득할 수 있다.
제1 전자 장치(100)는 제2 인터페이스(130)를 통해 제2 전자 장치(200)가 식별되지 않으면, 제1 전자 장치(100)의 단일 동작을 수행할 수 있다(S160). 구체적으로, 제1 전자 장치(100)는 제2 인터페이스(130)를 통해 제2 전자 장치(200)가 식별되지 않으면, 제1 전자 장치(100)와 연결된 다른 전자 장치가 없는 것으로 보고 제1 전자 장치(100)만의 단일 동작을 수행할 수 있다.
경우에 따라 제1 전자 장치(100)는 디스플레이를 포함할 수 있는데, 이러한 경우 제1 전자 장치(100)는 제2 전자 장치(200)가 식별되지 않으면 제2 전자 장치(200)를 발견하지 못하였음을 알리는 알림창을 디스플레이에 표시할 수도 있다.
힌편, 제2 전자 장치(200)에 대한 정보의 획득 및 그 후의 구체적인 동작에 대해서는 도 5를 통해 후술하겠다.
도 4는 본 발명의 일 실시예에 따른 제1 전자 장치의 제어 방법 중 일부 단계의 흐름을 구체적으로 도시한다. 구체적으로, 도 4는 도 3의 단계 S120을 보다 구체적으로 나타낸다.
도 4를 참조하면, 제1 전자 장치(100)는 제1 인터페이스(140)를 통해 장치 정보 저장부(240)를 식별할 수 있다(S210). 구체적으로, 제1 전자 장치(100)는 제1 인터페이스(140)를 통해 장치 정보 저장부(240)가 제1 전자 장치(100)와 연결되었는지 여부를 식별할 수 있다.
제1 인터페이스(140)를 통해 장치 정보 저장부(240)가 제1 전자 장치(100)와 연결된 경우, 제1 전자 장치(100)는 도 3의 단계 S130을 수행할 수 있다.
만약, 제1 인터페이스(140)를 통해 장치 정보 저장부(240)가 제1 전자 장치(100)와 연결되지 않은 경우, 제1 전자 장치(100)는 카운트를 증가할 수 있다(S220). 여기서, 카운트는 제1 전자 장치(100)가 제1 인터페이스(140)를 통해 장치 정보 저장부(240)를 식별하도록 시도한 횟수를 의미할 수 있다. 이에 따라 카운트가 1만큼 증가되면 장치 정보 저장부(240)의 식별을 위한 시도가 한번 더 수행됨을 나타낼 수 있다.
제1 전자 장치(100)는 카운트가 특정 횟수 미만인지 여부를 식별할 수 있다(S230). 여기서, 특정 횟수는 제1 전자 장치(100)의 부팅 시간 및 장치 정보 저장부(240)의 인식 시간에 기초하여 기결정된 값일 수 있다. 예를 들어, 제1 전자 장치(100)의 부팅이 완료되기 까지 5초가 소요되고, 제1 전자 장치(100)가 장치 정보 저장부(240)를 인식하기 까지 1초가 소요되는 경우, 특정 횟수는 부팅이 완료되기 전까지 인식이 이루어질 수 있는 최대 횟수 이하의 특정한 값(예: 3회, 5회)로 결정될 수 있다. 다만, 이는 예시일 뿐 이에 제한되는 것은 아니고, 예를 들어 특정 횟수는 임의의 값으로 지정될 수도 있다.
카운트가 특정 횟수 미만인 경우, 제1 전자 장치(100)는 제1 인터페이스(140)를 통해 장치 정보 저장부(240)를 다시 식별하고(S210), 카운트의 증가와 같은 후술되는 동작을 수행할 수 있다.
도 5는 본 발명의 일 실시예에 따른 제1 전자 장치의 제어 방법 중 다른 일부 단계의 흐름을 구체적으로 도시한다. 구체적으로, 도 5는 도 3의 단계 S130 또는 단계 S150에 후행되는 제1 전자 장치(100)의 제어 방법의 동작을 보다 구체적으로 나타낸다.
도 5를 참조하면, 제1 전자 장치(100)는 제2 전자 장치(200)에 대한 정보를 획득할 수 있다(S310). 구체적으로, 제1 전자 장치(100)는 단계 S130과 관련하여 제1 인터페이스(140)를 통해 장치 정보 저장부(240)에 연결되어 제2 전자 장치(200)에 대한 정보를 획득하거나 단계 S150과 관련하여 제2 인터페이스(130)를 통해 제2 전자 장치(200)에 정보를 요청함에 기초하여 제2 전자 장치(200)의 정보를 획득할 수 있다.
제1 전자 장치(100)는 제2 전자 장치(200)가 연결 가능한 하드웨어인지 여부를 판단할 수 있다(S320). 제1 전자 장치(100)는 획득된 제2 전자 장치(200)에 대한 정보를 기초로 제2 전자 장치(200)가 제1 전자 장치(100)와 연결되어 특정 기능을 제공할 수 있는 하드웨어로 구성되는지 여부를 판단할 수 있다.
구체적으로, 제1 전자 장치(100)는 제1 전자 장치(100)의 스토리지의 이용 가능 장치에 대한 정보 중 제2 전자 장치(200)에 대한 정보와 대응하는 정보가 있는지 여부를 판별할 수 있다.
예를 들면, 이용 가능 장치에 대한 정보는 제1 전자 장치(100)와 연결 가능한 장치 또는 호환 가능한 장치에 대한 하드웨어 또는 소프트웨어에 대한 정보를 포함할 수 있다. 다른 예를 들면, 이용 가능 장치에 대한 정보는 제1 전자 장치(100)가 다른 장치와 연결되는 경우 다른 장치에서 제공되는 기능을 제1 전자 장치(100)에서 제공할 수 있는 적어도 하나의 장치에 대한 하드웨어 또는 소프트웨어에 대한 정보를 포함할 수 있다.
제1 전자 장치(100)는 이와 같은 이용 가능 장치에 대한 정보와 제2 전자 장치(200)의 정보 중 하드웨어에 대한 정보를 비교하여. 제2 전자 장치(200)가 제1 전자 장치(100)와 연결 가능한 하드웨어를 포함하는지 여부를 판별할 수 있다. 여기서, 연결 가능한 하드웨어란 제1 전자 장치(100)에 연결되어 특정 기능의 확장이 가능하도록 제조된 하드웨어를 의미할 수 있다.
제1 전자 장치(100)는 이용 가능 장치에 대한 정보 중 제2 전자 장치(200)의 하드웨어에 대한 정보와 대응되는 정보가 있는 경우, 제1 전자 장치(100)는 제2 전자 장치(200)는 연결 가능한 하드웨어를 가지는 것으로 결정할 수 있다. 예를 들어, 이용 가능한 장치에 대한 정보가 제1 하드웨어, 제2 하드웨어, 제1 소프트웨어, 제2 소프트웨어에 대한 정보를 포함하고, 제2 전자 장치(200)에 대한 정보가 제1 하드웨어에 대한 정보를 포함하는 경우, 제1 전자 장치(100)는 제2 전자 장치(200)는 연결 가능한 하드웨어를 가지는 것으로 결정할 수 있다.
제1 전자 장치(100)는 이용 가능 장치에 대한 정보 중 제2 전자 장치(200)의 하드웨어에 대한 정보와 대응되는 정보가 없는 경우, 제1 전자 장치(100)는 제2 전자 장치(200)는 연결 가능한 하드웨어를 가지지 않는 것으로 결정할 수 있다. 예를 들어, 이용 가능한 장치에 대한 정보가 제1 하드웨어, 제2 하드웨어, 제1 소프트웨어, 제2 소프트웨어에 대한 정보를 포함하고, 제2 전자 장치(200)에 대한 정보가 제3 하드웨어에 대한 정보를 포함하는 경우, 제1 전자 장치(100)는 제2 전자 장치(200)는 연결 가능한 하드웨어를 가지지 않는 것으로 결정할 수 있다.
제1 전자 장치(100)는 제2 전자 장치(200)가 연결 가능한 하드웨어를 가지지 않는 경우에는 연결 가능한 하드웨어에 대한 정보를 제공할 수 있다(S330). 연결 가능한 하드웨어에 대한 정보의 제공은 다양한 방식으로 이루어질 수 있다. 예를 들어, 제1 전자 장치(100)는 제1 전자 장치(100)의 출력 장치를 통해 연결 가능한 하드웨어에 대한 정보를 제공할 수 있다. 다른 예를 들면, 제1 전자 장치(100)는 제2 전자 장치(200)에게 연결 가능한 하드웨어에 대한 정보를 제공함으로써 제2 전자 장치(200)를 통해 연결 가능한 하드웨어에 대한 정보가 제공되도록 할 수 있다.
경우에 따라, 제1 전자 장치(100)는 연결 가능한 하드웨어에 대한 정보 대신 연결이 불가능함을 나타내는 알림(notificiation)을 제공할 수도 있다. 이와 관련된 보다 구체적인 예는 도 9를 참조할 수 있다.
제1 전자 장치(100)는 제2 전자 장치(200)가 연결 가능한 하드웨어를 가지는 경우 제2 전자 장치(200)가 지원 가능한 소프트웨어를 가지는지 여부를 판별할 수 있다(S340). 단계 S340도 단계 S320에 대응하는 방법으로 수행될 수 있다.
즉, 제1 전자 장치(100)는 스토리지에 저장된 이용 가능 장치에 대한 정보를 제2 전자 장치(200)에 대한 정보 중 소프트웨어에 대한 정보와 비교함에 기초하여 제2 전자 장치(200)가 지원 가능한 소프트웨어를 가지는지 여부를 판별할 수 있다. 여기서, 지원 가능한 소프트웨어란 특정 기능의 확장이 제1 전자 장치(100) 상에서 제공되도록 제1 전자 장치(100)의 하드웨어 또는 소프트웨어와 호환 가능한 소프트웨어를 의미할 수 있으다.
구체적으로, 제1 전자 장치(100)는 이용 가능 장치에 대한 정보 중 제2 전자 장치(200)의 소프트웨어에 대한 정보와 대응되는 정보가 있는 경우, 제1 전자 장치(100)는 제2 전자 장치(200)는 지원 가능한 소프트웨어를 가지는 것으로 결정할 수 있다. 제1 전자 장치(100)는 이용 가능 장치에 대한 정보 중 제2 전자 장치(200)의 소프트웨어에 대한 정보와 대응되는 정보가 없는 경우, 제1 전자 장치(100)는 제2 전자 장치(200)는 지원 가능한 소프트웨어를 가지지 않는 것으로 결정할 수 있다.
제2 전자 장치(200)가 지원 가능한 소프트웨어를 가지는 경우, 제1 전자 장치(100)는 정상 부팅을 진행할 수 있다(S350). 예를 들어, 제1 전자 장치(100)는 제2 전자 장치(200)가 지원 가능한 소프트웨어를 가지는 경우 제2 전자 장치(200)와 관련된 특정 기능에 이용되는 제1 전자 장치(100)의 하드웨어에 전원을 공급하여 정상적으로 부팅이 진행되도록 할 수 있다.
제2 전자 장치(200)가 지원 가능한 소프트웨어를 가지지 않는 경우, 제1 전자 장치(100)는 FOTA(firmware over the air) 또는 USB(universal serial bus)를 이용한 소프트웨어의 업데이트를 수행할 수 있다(S360). 이와 관련된 보다 구체적인 설명은 도 6을 통해 후술하겠다.
경우에 따라 제1 전자 장치(100)는 제2 전자 장치(200)가 연결 가능한 소프트웨어를 가지지 않는 경우, 소프트웨어의 업데이트가 필요함을 나타내는 정보를 제공할 수 있다. 예를 들어, 제1 전자 장치(100)는 소프트웨어의 업데이트가 필요함을 나타내는 정보를 제1 전자 장치(100)의 출력 장치를 통해 출력할 수 있다. 다른 예를 들면, 제1 전자 장치(100)는 소프트웨어의 업데이트가 필요함을 나타내는 정보를 제2 전자 장치(200)에 전송함에 기초하여 제2 전자 장치(200)를 통해 소프트웨어의 업데이트가 필요함을 나타내는 정보가 제공되도록 할 수 있다. 이러한 정보의 예는 도 10을 참조할 수 있다.
도 6은 본 발명의 일 실시예에 따른 제1 전자 장치의 제어 방법 중 또 다른 일부 단계의 흐름을 구체적으로 도시한다. 구체적으로, 도 6은 도 5의 단계 S360을 보다 구체적으로 나타낸다.
도 6을 참조하면, 제1 전자 장치(100)는 FOTA 또는 USB 중 업데이트(update)(또는 업그레이드(upgrade))를 수행할 방식을 결정하는 입력을 요청할 수 있다(S410). 구체적으로, 제1 전자 장치(100)는 제2 전자 장치(200)의 소프트웨어가 제1 전자 장치(100)에서 지원 가능한 소프트웨어가 아니라고 판별되는 경우, FOTA 또는 USB 중 업데이트를 수행할 방식을 결정하는 입력을 요청할 수 있다.
입력의 요청은 다양한 방식으로 이루어질 수 있다. 예를 들어, 제1 전자 장치(100)는 입력을 요청하는 정보를 포함하는 윈도우 창이 디스플레이하는 방식으로 FOTA 또는 USB 중 업데이트를 수행할 방식을 결정하는 입력을 요청할 수 있다. 이에 대한 보다 구체적인 예시는 도 10을 참조할 수 있다.
제1 전자 장치(100)는 FOTA를 이용한 업데이트의 수행 여부를 결정할 수 있다(S420). 제1 전자 장치(100)는 FOTA를 이용한 업데이트를 요청하는 입력이 인가되면 FOTA를 이용한 업데이트를 수행하는 것으로 결정할 수 있다. 제1 전자 장치(100)는 FOTA를 이용한 업데이트를 요청하는 입력이 인가되지 않으면 FOTA를 이용한 업데이트를 수행하지 않는 것으로 결정할 수 있다.
제1 전자 장치(100)는 FOTA를 이용한 업데이트를 수행하는 것으로 결정된 경우, 제1 전자 장치(100) 또는 제2 전자 장치(200)의 인터넷 연결 여부를 결정할 수 있다(S430).
제1 전자 장치(100)는 인터넷 연결에 기초하여 FOTA 기반의 소프트웨어의 업데이트를 수행할 수 있다(S440). 제1 전자 장치(100)는 제1 전자 장치(100)가 인터넷에 연결되어 있는 경우 제1 전자 장치(100)를 통해 제2 전자 장치(200)에 소프트웨어 업데이트를 위한 정보가 다운되도록 함으로써 소프트웨어의 업데이트를 수행할 수 있다. 만약 제2 전자 장치(200)에 인터넷이 연결되는 경우, 제1 전자 장치(100)는 제2 전자 장치(200) 소프트웨어 업데이트 요청을 전달함에 기초하여 소프트웨어가 업데이트 되도록 할 수 있다. FOTA 기반의 소프트웨어 업데이트와 관련하여서는 통상의 기술자에게 용이한바 구체적인 설명은 생략하겠다.
제1 전자 장치(100)는 FOTA를 이용한 업데이트를 수행하지 않는 것으로 결정되면, USB의 연결 여부를 확인할 수 있다(S450). 여기서, USB는 제1 전자 장치(100) 또는 제2 전자 장치(200)에 연결될 수 있으며, USB에는 소프트웨어의 업데이트를 위한 프로그램이 저장되어 있을 수 있다.
제1 전자 장치(100)는 USB 연결에 기초하여 USB에 저장된 소프트웨어 업데이트 프로그램을 실행시켜 제2 전자 장치(200)의 소프트웨어 업데이트를 수행할 수 있다(S460).
경우에 따라, 제1 전자 장치(100)는 단계 S410의 수행 전에 제2 전자 장치(200)에게 소프트웨어의 업데이트가 필요함을 나타내는 정보를 제공할 수 있다. 이를 기초로 도 6의 각 동작들은 제2 전자 장치(200)에 의해 이루어질 수도 있다.
도 7은 본 발명의 다른 실시예에 따른 제1 전자 장치와 제2 전자 장치의 기능 블록도를 도시한다. 구체적으로, 도 7은 제2 전자 장치가 자율 주행과 관련된 기능을 포함하는 자율주행 모듈인 경우 제1 전자 장치가 제2 전자 장치와의 연결에 기초하여 자율주행 기능을 이용하는 경우를 나타낸다.
도 7을 참조하면, 시스템(3)은 차량에 장착되는 제1 전자 장치(100)(301)와 자율주행 기능의 제공을 위한 프로그램을 포함하는 제2 전자 장치(302)를 포함할 수 있다. 제1 전자 장치(301)와 제2 전자 장치(302)는 제1 인터페이스(330)와 제2 인터페이스(340)를 통해 서로 연결될 수 있다. 제2 전자 장치(302)는 경우에 따라 자율주행을 위한 자율주행 모듈로 지칭될 수도 있다.
제1 전자 장치(301)는 제1 전자 장치(301)의 전반적인 구동을 제어하는 제1 SoC(310)와 제1 전자 장치(301)의 구동에 대한 정보 및 제1 전자 장치(301)와 연결 가능한 다른 장치에 대한 정보를 포함하는 스토리지(320)를 포함할 수 있다.
제2 전자 장치(302)는 제2 전자 장치(302)의 전반적인 구동을 제어하는 제2 SoC(350)와 제2 전자 장치(301)의 구동에 대한 정보를 포함하는 스토리지(390), 제2 전자 장치(302)에 대한 정보를 포함하는 자율주행 모듈 정보 저장부(380), 외부의 다른 전자 장치 또는 제2 SoC(350)가 자율주행 모듈 정보 저장부(380)와 연결되도록 하는 허브(370)를 포함할 수 있다.
또한 제2 전자 장치(302)는 자율주행 기능의 제공을 위한 외부 장치를 포함할 수 있다. 예를 들어, 제2 전자 장치(302)는 카메라(361), 레이더(rader)(363), 라이다(lidar)(365)를 포함할 수 있으나, 이에 제한되는 것은 아니고 자율주행 기능의 수행과 관련된 다양한 장치를 포함할 수 있다. 경우에 따라 외부 장치는 제2 전자 장치(302)와 연결되는 형태로 구현될 수도 있으나 이에 본 발명이 제한되는 것은 아니다.
한편, 레이더(363)는 전자기파를 방사하고 방사된 전자기파가 주변의 물체에 의해 반사되어 돌아오는 것을 분석하여 주변의 물체와의 거리를 측정하는 센서일 수 있다. 라이다(365)는 레이저를 방사하여 방사된 레이저가 주변의 물제에 의해 반사되어 돌아오는 빛을 분석하여 주변의 물체와의 거리를 측정하는 센서일 수 있다. 레이더(363) 및 라이다(365)와 관련하여서는 통상의 기술자에게 용이한바 구체적인 설명은 생략하겠다.
제1 SoC(310)는 부팅의 시작에 대응하여 제1 인터페이스(330) 및 제2 인터페이스(340)를 초기화시킬 수 있다. 제1 인터페이스(330) 및 제2 인터페이스(340)의 초기화는 독립적으로 순서에 무관하게 이루어질 수 있다.
제1 SoC(310)는 제1 인터페이스(330)를 통해 자율주행 모듈 정보 저장부(380)의 연결 여부를 식별할 수 있다. 제1 SoC(310)는 제1 인터페이스(330)를 통한 통신에 기초하여 자율주행 모듈 정보 저장부(380)의 연결 여부를 식별할 수 있다.
구체적으로, 제1 SoC(310)는 제1 인터페이스(330)를 통한 통신을 시도할 수 있다. 통신의 시도에 의해 특정 신호가 제1 인터페이스(330)를 통해 전송되면 허브(370)는 이를 인식하여 제1 인터페이스(330)가 자율주행 모듈 정보 저장부(380)와 연결되도록 할 수 있다. 자율주행 모듈 정보 저장부(380)로부터의 응답 신호가 제1 SoC(310)에 수신되면 제1 SoC(310)는 자율주행 모듈 정보 저장부(380)가 연결된 것으로 식별할 수 있다.
이와 같은 제1 인터페이스(330)를 통한 통신의 시도는 제1 전자 장치의 부팅 시간 및 자율주행 모듈 정보 저장부의 인식 시간에 기초하여 기결정된 특정 횟수 이하로 이루어질 수 있다. 이를 기초로 제1 인터페이스를 통한 통신의 시도는 제1 전자 장치(301)와 제2 전자 장치(302)의 부팅이 수행되는 시간 이내에 이루어질 수 있다,
제1 SoC(310)는 자율주행 모듈 정보 저장부(380)가 식별되면 자율주행 모듈 정보 저장부(380)와의 연결에 기초하여 저장된 제2 전자 장치(302)에 대한 정보를 획득할 수 있다. 제2 전자 장치(302)에 대한 정보는 제2 전자 장치(302)의 하드웨어 또는 소프트웨어 중 적어도 하나에 대한 정보를 포함할 수 있다. 하드웨어에 대한 정보는, 하드웨어의 종류, 하드웨어의 버전, 하드웨어의 제조일자, 하드웨어의 성능에 대한 정보를 포함할 수 있다. 소프트웨어에 대한 정보는 소프트웨어와 관련된 다양한 정보로 예를 들어 소프트웨어의 종류, 소프트웨어의 버전, 소프트웨어의 제조일자, 소프트웨어의 업그레이드 일자에 대한 정보를 포함할 수 있다.
제1 SoC(310)는 자율주행 모듈 정보 저장부(380)가 식별되지 않거나, 제2 전자 장치(302)에 대한 정보를 획득하지 못한 경우, 제2 인터페이스(340)를 통한 통신을 시도할 수 있다. 이와 같은 제2 인터페이스(340)를 통한 통신의 시도는 제1 전자 장치(301)와 제2 전자 장치(302)의 부팅이 완료된 이후에 이루어질 수 있다,
제1 SoC(310)는 제2 인터페이스(340)를 통해 제2 SoC(350)와 연결될 수 있다. 제2 SoC(350)는 제2 전자 장치(302)의 전반적인 구동을 담당하는 것이기 때문에 내부적으로 자율주행 모듈 정보 저장부(380)와 특정 경로(355)로 연결되어 있을 수 있다.
도시된 바와 같이 제2 SoC(350)는 허브(370)를 통해 자율주행 모듈 정보 저장부(380)와 연결될 수 있다. 한편, 허브(370)는 스위치를 포함할 수 있는데, 이를 통해 자율주행 모듈 정보 저장부(380)와 연결되는 구성을 변환할 수 있다. 예를 들어, 허브(370)는 제1 인터페이스를 통한 통신 신호가 수신되면 스위치를 제1 위치로 이동시켜 제1 인터페이스를 통해 제1 SoC(310)가 자율주행 모듈 정보 저장부(380)와 연결되도록 할 수 있다. 허브는 제2 SoC(350)에 의한 특정 신호가 수신되면 스위치를 제2 위치로 이동시켜 제2 SoC(350)가 특정 경로(355)를 통해 자율주행 모듈 정보 저장부(380)와 연결되도록 할 수 있다.
제1 SoC(310)는 제2 인터페이스(340)를 통해 자율주행 모듈 정보를 요청하는 신호(이하, 정보 요청 신호)를 제2 SoC(350)에게 전송할 수 있다. 정보 요청 신호에 대응하여 제2 SoC(350)는 자율주행 모듈 정보 저장부(380)와 연결되어 자율주행 모듈 정보 저장부(380)에 저장된 제2 전자 장치(302)에 대한 정보를 획득할 수 있다. 제2 SoC(350)는 제2 전자 장치(302)에 대한 정보를 제2 인터페이스(340)를 통해 제1 SoC(310)에 전송할 수 있다.
제1 SoC(310)는 획득된 제2 전자 장치(302)에 대한 정보가 기저장된 이용 가능 장치에 대한 정보 중 적어도 일부에 대응하는지 여부를 판별할 수 있다. 제1 SoC(310)는 획득된 제2 전자 장치(302)에 대한 정보가 기저장된 이용 가능 장치에 대한 정보 중 적어도 일부에 대응하는 경우, 제2 전자 장치(302)가 제1 전자 장치(301)와 연결가능한 장치인 것으로 결정할 수 있다.
이러한 경우 제1 전자 장치(301)는 애초에 자율주행 기능을 제공할 수 없는 장치일지라도 제2 전자 장치(302)의 자율주행 기능을 이용할 수 있게 됨으로써, 제1 전자 장치(301)의 사용자에게 자율주행 기능을 제공할 수 있다.
제1 SoC(310)는 획득된 제2 전자 장치(302)에 대한 정보가 기저장된 이용 가능 장치에 대한 정보 중 어느 일부에도 대응하지 않는 경우, 제2 전자 장치(302)가 제1 전자 장치(301)와 연결 불가능한 장치인 것으로 결정할 수 있다. 이러한 경우, 제1 SoC(310)는 연결이 불가함을 나타내는 정보를 제공하거나 업데이트 또는 장치의 교환을 요청하는 정보를 제1 전자 장치(301) 또는 제2 전자 장치(302)의 출력 장치를 통해 제공할 수 있다.
도 8은 본 발명의 다른 실시예에 따른 제1 전자 장치의 제어 방법의 흐름도를 도시한다. 구체적으로, 도 8은 도 7의 제1 전자 장치(301)와 제2 전자 장치(302)를 포함하는 시스템(3) 내에서 제1 전자 장치(301)의 제어 방법의 흐름을 나타낸다.
도 8을 참조하면, 제1 전자 장치(301)는 부팅의 시작에 대응하여 제1 인터페이스(330) 및 제2 인터페이스(340)를 초기화할 수 있다(S510). 제1 전자 장치(301)는 제1 인터페이스(330)를 통해 자율주행 모듈 정보 저장부(380)를 식별할 수 있다(S520).
제1 전자 장치(301)는 자율주행 모듈 정보 저장부(380)가 식별되면 자율주행 모듈 정보 저장부(380)로부터 제2 전자 장치(302)에 대한 정보를 획득할 수 있다. 제2 전자 장치(302)에 대한 정보는 제2 전자 장치(302)의 하드웨어 또는 소프트웨어에 대한 정보를 포함할 수 있다. 제2 전자 장치(302)가 자율주행을 위한 장치이기 때문에, 소프트웨어는 자율주행을 위한 소프트웨어일 수 있다.
제1 전자 장치(301)는 자율주행 모듈 정보 저장부(380)가 식별되지 않으면 제2 인터페이스를 통해 제2 전자 장치(302)를 인식할 수 있다(S530). 제1 전자 장치(301)는 제2 전자 장치(302)가 인식되면 제2 전자 장치(302)로부터 제2 전자 장치(302)에 대한 정보를 획득(S560)할 수 있다. 제1 전자 장치(301)는 제2 전자 장치(302)에 대한 정보를 제1 전자 장치(301)의 이용 가능 장치에 대한 정보와 비교하여, 제2 전자 장치(302)가 제1 전자 장치(301)와 연결가능한 장치인지 여부를 확인할 수 있다.
제1 전자 장치(301)는 제2 전자 장치(302)가 연결가능한 장치인 것으로 확인되면, 제2 전자 장치(302)와의 연결에 기초하여 제2 전자 장치(302)가 제공하는 기능, 즉 자율주행을 제공할 수 있다.
제1 전자 장치(301)는 제2 전자 장치(302)가 인식되지 않으면 일반 주행을 수행할 수 있다(S540). 일반 주행은 제1 전자 장치(301)가 원래 제공하는 기능일 수 있다.
이와 같이, 본 발명의 일 실시예에 따르면 제1 전자 장치(301)는 제2 전자 장치(302)를 제1 전자 장치(301)에 연결함으로써 제1 전자 장치(301)에서는 제공되지 않았던 제2 전자 장치(302)에 기반한 기능을 사용자에게 제공할 수 있다.
이에 따라 사용자는 전자 기술의 발전에 따라 새로운 기능을 사용하기 위해, 제1 전자 장치(301)를 교체하지 않고, 새로운 기술을 제공하는 제2 전자 장치(302)와 같은 외부 장치를 연결하기만 하면 손쉽게 새로운 기능을 사용할 수 있다.
도 9는 본 발명의 일 실시예에 따른 제1 전자 장치에서 제공되는 사용자 인터페이스의 예를 도시한다. 구체적으로, 도 9는 제2 전자 장치의 하드웨어가 이용 불가한 경우에 제공되는 정보의 예를 나타낸다.
제1 전자 장치는 디스플레이와 같은 출력 장치를 포함할 수 있다. 이러한 경우에는, 도 9에 도시된 바와 같이 제2 전자 장치와 관련하여 제1 전자 장치를 통해 확인된 정보가 출력 장치를 통해 표시될 수 있다.
도 9를 참조하면, 제2 전자 장치의 하드웨어가 제1 전자 장치에서 이용 불가한 경우, '지원이 불가한 장치입니다'라는 텍스트가 포함된 윈도우 창이 제1 전자 장치에 표시될 수 있다.
도시하지는 않았으나, 제1 전자 장치는 도 9에 표시된 텍스트 이외에도, 현재 제2 전자 장치의 하드웨어가 무엇인지에 대한 정보, 제1 전자 장치와 연결가능한 하드웨어에 대한 정보(예: 하드웨어의 종류, 하드웨어의 버전)를 제공할 수도 있다.
경우에 따라, 도 9와 같은 정보는 제2 전자 장치를 통해서도 표시될 수 있으며, 이에 본 발명이 제한되지는 않는다.
도 10은 본 발명의 일 실시예에 따른 제1 전자 장치에서 제공되는 사용자 인터페이스의 다른 예를 도시한다. 구체적으로, 도 9는 제2 전자 장치의 소프트웨어가 지원 불가(또는 이용 불가)한 경우에 제공되는 정보의 예를 나타낸다.
도 10을 참조하면, 제2 전자 장치의 소프트웨어가 제1 전자 장치에서 이용할 수 없는 경우, 제1 전자 장치는 소프트웨어의 업데이트를 요청하는 정보, 현재 제2 전자 장치의 소프트웨어의 버전, 제1 전자 장치와 연결가능한 소프트웨어의 버전에 대한 정보를 제공할 수 있다. 이러한 정보는 제1 전자 장치의 출력 장치를 통해 표시될 수 있다.
제1 전자 장치는 도 9와 같이 FOTA를 이용하여 업데이트를 할 것인지 또는 USB를 이용하여 업데이트를 할 것인지 여부에 대한 입력창(410)을 표시함으로써 사용자의 입력을 요청할 수 있다.
'FOTA 업데이트'라고 표시된 영역에 대한 입력이 획득되면 경우, FOTA를 이용하여 업데이트가 제2 전자 장치의 소프트웨어에 대해 수행될 수 있다. 'USB 업데이트'라고 표시된 영역에 대한 입력이 획득되면, USB를 이용한 업데이트가 제2 전자 장치의 소프트웨어에 대해 수행될 수 있다.
본 명세서에 첨부된 블록도의 각 블록과 흐름도의 각 단계의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수도 있다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 블록도의 각 블록 또는 흐름도의 각 단계에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 블록도의 각 블록 또는 흐름도 각 단계에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 블록도의 각 블록 및 흐름도의 각 단계에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.
또한, 각 블록 또는 각 단계는 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 실시예들에서는 블록들 또는 단계들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들 또는 단계들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 품질에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 명세서에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 균등한 범위 내에 있는 모든 기술사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.

Claims (20)

  1. 전자 장치에 있어서,
    다른 전자 장치에 대한 정보를 저장하는 장치 정보 저장부의 정보를 수신하기 위한 제1 인터페이스;
    상기 다른 전자 장치의 프로세서와 통신하기 위한 제2 인터페이스; 및
    적어도 하나의 프로세서를 포함하고,
    상기 적어도 하나의 프로세서는,
    상기 제1 인터페이스를 통해 상기 장치 정보 저장부가 식별되는 경우, 상기 제1 인터페이스를 통해 상기 장치 정보 저장부로부터 상기 다른 전자 장치의 정보를 획득하고,
    상기 제1 인터페이스를 통해 상기 장치 정보 저장부가 식별되지 않는 경우 상기 제2 인터페이스를 통해 상기 다른 전자 장치가 식별되는지 여부를 확인하고,
    상기 제2 인터페이스를 통해 상기 다른 전자 장치가 식별되는 경우, 상기 다른 전자 장치의 프로세서와의 통신에 기초하여 상기 다른 전자 장치에 대한 정보를 상기 제2 인터페이스를 통해 획득하는
    전자 장치.
  2. 제1항에 있어서,
    상기 적어도 하나의 프로세서는,
    상기 다른 전자 장치에 대한 정보에 기초하여 상기 다른 전자 장치를 이용한 특정 기능을 제공하는
    전자 장치.
  3. 제1항에 있어서,
    상기 적어도 하나의 프로세서는,
    상기 전자 장치의 부팅(booting) 동작에 대응하여 상기 제1 인터페이스를 통해 상기 장치 정보 저장부로부터 상기 다른 전자 장치의 정보 획득을 시도하는
    전자 장치.
  4. 제3항에 있어서,
    상기 적어도 하나의 프로세서는,
    상기 다른 전자 장치의 정보가 획득되거나 상기 정보 획득의 시도와 병렬적으로 상기 전자 장치에 대한 초기화를 포함하는 부팅 동작을 수행하는
    전자 장치.
  5. 제3항에 있어서,
    상기 적어도 하나의 프로세서는,
    상기 전자 장치의 부팅 동작 완료에 대응하는 상기 정보 획득의 시도의 횟수를 기초로, 상기 제1 인터페이스를 통해 상기 장치 정보 저장부로부터 상기 다른 전자 장치의 정보 획득을 시도하는
    전자 장치.
  6. 제1항에 있어서,
    상기 제1 인터페이스를 통한 시간당 데이터 전송량이 상기 제2 인터페이스를 통한 시간당 데이터 전송량보다 적은
    전자 장치.
  7. 제6항에 있어서,
    상기 제1 인터페이스는 I2C(inter-integrated circuit) 또는 SPI(serial peripheral interface)를 포함하고,
    상기 제2 인터페이스는 PCIe(peripheral component interconnect express)를 포함하는
    전자 장치.
  8. 제1항에 있어서,
    상기 장치 정보 저장부는 비휘발성 메모리를 포함하며, 상기 다른 전자 장치의 스토리지(storage)와 구분되어 상기 다른 전자 장치에 포함되고,
    상기 스토리지는 상기 다른 전자 장치의 구동과 관련하여 요구되는 정보를 저장하는
    전자 장치.
  9. 제1항에 있어서,
    상기 다른 전자 장치에 대한 정보는,
    상기 다른 전자 장치의 하드웨어(hardware)에 대한 정보 및 상기 다른 전자 장치의 소프트웨어(software)에 대한 정보를 포함하고,
    전자 장치.
  10. 제9항에 있어서,
    상기 적어도 하나의 프로세서는,
    상기 다른 전자 장치에 대한 정보가 상기 전자 장치에서 이용 가능 장치에 대한 정보의 적어도 일부에 대응하는 경우, 상기 다른 전자 장치에 기초한 특정 기능의 사용이 가능한 것으로 판단하고,
    상기 다른 전자 장치에 대한 정보가 상기 전자 장치에서 이용 가능 장치에 대한 정보의 어느 일부에도 대응하지 않는 경우, 상기 다른 전자 장치와의 연결을 해제하거나 상기 다른 전자 장치의 소프트웨어의 업데이트를 요청하는 정보를 제공하며,
    상기 이용 가능 장치에 대한 정보는 상기 전자 장치에 미리 저장된
    전자 장치.
  11. 전자 장치의 제어 방법에 있어서,
    다른 전자 장치에 대한 정보를 저장하는 장치 정보 저장부의 정보를 수신하기 위한 제1 인터페이스를 통해 상기 장치 정보 저장부가 식별되는 경우, 상기 제1 인터페이스를 통해 상기 장치 정보 저장부로부터 상기 다른 전자 장치의 정보를 획득하는 단계와,
    상기 제1 인터페이스를 통해 상기 장치 정보 저장부가 식별되지 않는 경우, 상기 다른 전자 장치의 프로세서와 통신하기 위한 제2 인터페이스를 통해 상기 다른 전자 장치가 식별되는지 여부를 확인하는 단계와,
    상기 제2 인터페이스를 통해 상기 다른 전자 장치가 식별되는 경우, 상기 다른 전자 장치의 프로세서와의 통신에 기초하여 상기 다른 전자 장치에 대한 정보를 상기 제2 인터페이스를 통해 획득하는 단계를 포함하는
    전자 장치의 제어 방법.
  12. 제11항에 있어서,
    상기 전자 장치는,
    상기 다른 전자 장치에 대한 정보에 기초하여 상기 다른 전자 장치를 이용한 특정 기능을 제공하는
    전자 장치의 제어 방법.
  13. 제11항에 있어서,
    상기 다른 전자 장치의 정보를 획득하는 단계는,
    상기 전자 장치의 부팅(booting) 동작에 대응하여 상기 제1 인터페이스를 통해 상기 장치 정보 저장부로부터 상기 다른 전자 장치의 정보 획득을 시도하는 단계를 더 포함하는
    전자 장치의 제어 방법.
  14. 제13항에 있어서,
    상기 다른 전자 장치의 정보가 획득되거나 상기 정보 획득의 시도와 병렬적으로 상기 전자 장치에 대한 초기화를 포함하는 부팅 동작을 수행하는 단계를 더 포함하는
    전자 장치의 제어 방법.
  15. 제13항에 있어서,
    상기 정보 획득을 시도하는 단계는,
    상기 전자 장치의 부팅 동작 완료에 대응하는 상기 정보 획득의 시도의 횟수를 기초로, 상기 제1 인터페이스를 통해 상기 장치 정보 저장부로부터 상기 다른 전자 장치의 정보 획득을 시도하는 단계를 포함하는
    전자 장치의 제어 방법.
  16. 제11항에 있어서,
    상기 제1 인터페이스를 통한 시간당 데이터 전송량이 상기 제2 인터페이스를 통한 시간당 데이터 전송량보다 적은
    전자 장치의 제어 방법.
  17. 제11항에 있어서,
    상기 다른 전자 장치에 대한 정보는,
    상기 다른 전자 장치의 하드웨어(hardware)에 대한 정보 및 상기 다른 전자 장치의 소프트웨어(software)에 대한 정보를 포함하는
    전자 장치의 제어 방법.
  18. 제11항에 있어서,
    상기 다른 전자 장치에 대한 정보가 상기 전자 장치에서 이용 가능 장치에 대한 정보의 적어도 일부에 대응하는 경우, 상기 다른 전자 장치에 기초한 특정 기능의 사용이 가능한 것으로 판단하는 단계와,
    상기 다른 전자 장치에 대한 정보가 상기 전자 장치에서 이용 가능 장치에 대한 정보의 어느 일부에도 대응하지 않는 경우, 상기 다른 전자 장치와의 연결을 해제하거나 상기 다른 전자 장치의 소프트웨어의 업데이트를 요청하는 정보를 제공하는 단계를 더 포함하고,
    상기 이용 가능 장치에 대한 정보는 상기 전자 장치에 미리 저장된
    전자 장치의 제어 방법.
  19. 전자 장치에 있어서,
    상기 전자 장치에 대한 정보를 저장하는 장치 정보 저장부와,
    적어도 하나의 프로세서와,
    상기 장치 정보 저장부에 다른 전자 장치가 연결되면 상기 장치 저장 저장부의 정보를 상기 다른 전자 장치에게 전송하기 위한 제1 인터페이스와,
    상기 다른 전자 장치와 통신하기 위한 제2 인터페이스를 포함하고,
    상기 적어도 하나의 프로세서는,
    상기 제1 인터페이스를 통한 상기 다른 전자 장치와의 연결이 식별되지 않는 경우, 상기 제2 인터페이스를 통한 상기 다른 전자 장치와의 통신에 기초하여 상기 전자 장치에 대한 정보를 상기 다른 전자 장치에게 전송하는
    전자 장치.
  20. 제1 전자 장치와,
    제2 전자 장치와,
    상기 장치 정보 저장부로부터 상기 제1 전자 장치로 상기 제2 전자 장치에 대한 정보를 전송하기 위한 제1 인터페이스와,
    상기 제1 전자 장치의 프로세서와 상기 제2 전자 장치의 프로세서 간의 통신을 위한 제2 인터페이스를 포함하고,
    상기 제2 전자 장치는,
    상기 제2 전자 장치에 대한 정보를 포함하는 장치 정보 저장부를 포함하고,
    상기 제1 전자 장치는,
    상기 제1 인터페이스를 통해 상기 장치 정보 저장부가 식별되는 경우, 상기 제1 인터페이스를 통해 상기 장치 정보 저장부로부터 상기 제2 전자 장치의 정보를 획득하고,
    상기 제1 인터페이스를 통해 상기 장치 정보 저장부가 식별되지 않는 경우 상기 제2 인터페이스를 통해 상기 제2 전자 장치가 식별되는지 여부를 확인하고,
    상기 제2 인터페이스를 통해 상기 제2 전자 장치가 식별되는 경우, 상기 제2 전자 장치의 프로세서와의 통신에 기초하여 상기 제2 전자 장치에 대한 정보를 상기 제2 인터페이스를 통해 획득하는
    시스템.
PCT/KR2019/013285 2019-10-10 2019-10-10 복수의 인터페이스를 이용하여 다른 전자 장치를 인식하는 방법 및 그 전자 장치 WO2021070986A1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020227005871A KR20220069925A (ko) 2019-10-10 2019-10-10 복수의 인터페이스를 이용하여 다른 전자 장치를 인식하는 방법 및 그 전자 장치
US17/754,528 US11983134B2 (en) 2019-10-10 2019-10-10 Method for recognizing another electronic device by using plurality of interfaces, and electronic device therefor
PCT/KR2019/013285 WO2021070986A1 (ko) 2019-10-10 2019-10-10 복수의 인터페이스를 이용하여 다른 전자 장치를 인식하는 방법 및 그 전자 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/KR2019/013285 WO2021070986A1 (ko) 2019-10-10 2019-10-10 복수의 인터페이스를 이용하여 다른 전자 장치를 인식하는 방법 및 그 전자 장치

Publications (1)

Publication Number Publication Date
WO2021070986A1 true WO2021070986A1 (ko) 2021-04-15

Family

ID=75438239

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2019/013285 WO2021070986A1 (ko) 2019-10-10 2019-10-10 복수의 인터페이스를 이용하여 다른 전자 장치를 인식하는 방법 및 그 전자 장치

Country Status (3)

Country Link
US (1) US11983134B2 (ko)
KR (1) KR20220069925A (ko)
WO (1) WO2021070986A1 (ko)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990006749A (ko) * 1997-06-06 1999-01-25 하나와 기이찌 차량 탑재 네트워킹 구조에 적용가능한 정보 통신 시스템 및 방법
KR20120074020A (ko) * 2010-12-27 2012-07-05 (주) 비앤디 기기 통합 시스템 및 방법
KR101490409B1 (ko) * 2014-02-13 2015-02-05 현대자동차주식회사 차량용 이더넷을 위한 제어기 및 그 제어방법
KR20180083572A (ko) * 2017-01-13 2018-07-23 삼성전자주식회사 전자장치 및 그 제어방법
JP2019070906A (ja) * 2017-10-06 2019-05-09 トヨタ自動車株式会社 電子制御装置のソフトウェア書換方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI530797B (zh) * 2014-04-30 2016-04-21 宏碁股份有限公司 電子裝置及偵測方法
US10078361B2 (en) * 2014-10-08 2018-09-18 Apple Inc. Methods and apparatus for running and booting an inter-processor communication link between independently operable processors
US10572390B2 (en) * 2016-02-29 2020-02-25 Apple Inc. Methods and apparatus for loading firmware on demand
TWI663505B (zh) * 2018-05-28 2019-06-21 凌華科技股份有限公司 功能電路板模組
US11003780B2 (en) * 2018-08-03 2021-05-11 Dell Products L.P. Method and apparatus for validating BIOS firmware using a baseboard management controller

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990006749A (ko) * 1997-06-06 1999-01-25 하나와 기이찌 차량 탑재 네트워킹 구조에 적용가능한 정보 통신 시스템 및 방법
KR20120074020A (ko) * 2010-12-27 2012-07-05 (주) 비앤디 기기 통합 시스템 및 방법
KR101490409B1 (ko) * 2014-02-13 2015-02-05 현대자동차주식회사 차량용 이더넷을 위한 제어기 및 그 제어방법
KR20180083572A (ko) * 2017-01-13 2018-07-23 삼성전자주식회사 전자장치 및 그 제어방법
JP2019070906A (ja) * 2017-10-06 2019-05-09 トヨタ自動車株式会社 電子制御装置のソフトウェア書換方法

Also Published As

Publication number Publication date
US20230315666A1 (en) 2023-10-05
KR20220069925A (ko) 2022-05-27
US11983134B2 (en) 2024-05-14

Similar Documents

Publication Publication Date Title
WO2019135552A1 (ko) 통신 연결의 형성 또는 해제를 제어하는 전자 장치 및 그 동작 방법
WO2019103527A1 (en) Electronic device and communication method thereof
WO2020032510A1 (en) Electronic device including electronic pen and method of controlling communication connection between electronic device and electronic pen
WO2016006734A1 (ko) 생체정보를 인식하는 방법 및 장치
WO2020022780A1 (en) Method and apparatus for establishing device connection
WO2019108001A1 (ko) 무선 통신 시스템에서 데이터를 송수신하는 전자 장치 및 이를 위한 방법
WO2015034249A1 (ko) Nfc 태그를 이용한 리모콘의 오토페어링 장치 및 방법
WO2020036299A1 (en) Electronic device, server and method of controlling the same
WO2018169374A1 (ko) 전자 장치 및 그 제어 방법
EP3103308A1 (en) Method of reconnecting master device and slave device
WO2020101351A1 (en) Electronic device and method for transceiving control signal
WO2019164248A1 (en) Method for adaptively controlling low power display mode and electronic device thereof
WO2019066521A1 (en) ELECTRONIC DEVICE AND METHOD FOR CONTROLLING ELECTRONIC DEVICE
WO2019045517A1 (ko) 복수의 이미지 센서들의 동기화 제어 방법 및 이를 구현한 전자 장치
AU2019384601B2 (en) Electronic device and method for obtaining information associated with fingerprint
EP3409073A1 (en) Method and electronic device for providing tethering service
WO2020106019A1 (en) Electronic device and method for providing in-vehicle infotainment service
WO2020122402A1 (ko) 세컨더리 노드 추가를 지원하는 전자 장치 및 그 방법
WO2019221514A1 (en) Universal flash storage, electronic device capable of connecting to a plurality type of memory devices and method thereof
WO2019117535A1 (ko) 외부 전자 장치와의 통신을 위한 전자 장치
WO2021153955A1 (ko) 표시 장치를 포함하는 전자 장치 및 그의 동작 방법
WO2019135603A1 (ko) 전자 장치 및 전자 장치의 동작 방법
WO2021070986A1 (ko) 복수의 인터페이스를 이용하여 다른 전자 장치를 인식하는 방법 및 그 전자 장치
EP3639584A1 (en) Method and apparatus for determining location by using identification information corresponding to external electronic device
WO2020180072A1 (ko) 엣지 컴퓨팅 환경에서 어플리케이션 재배치를 제어하기 위한 장치 및 방법

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19948782

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19948782

Country of ref document: EP

Kind code of ref document: A1