Semiconductor device
By using the unused address of the gyroscope sensor in semiconductor devices for SPI communication, the problem of increased wiring in the prior art is solved, efficient data transmission and system simplicity are achieved, and efficiency and synchronization capabilities are improved.
Patent Information
- Application Number
- CN202410648720.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2023-06-30
- Filing Date
- 2024-05-23
- Publication Date
- 2024-12-31
AI Technical Summary
When using optical image stabilizers (OIS) and electronic image stabilizers (EIS), there is a problem of increased wiring in the prior art, especially when sharing data from two semiconductor chips, resulting in system complexity and inefficiency.
By using the unused address of the gyroscope sensor in semiconductor devices for SPI communication, sending and receiving data, the number of wiring is reduced, and efficient data transmission is achieved, and it can work properly even without the chip selecting signal lines.
It effectively reduces the number of wiring, improves the simplicity and efficiency of the system, reduces data communication time, and can accurately synchronize data on all axes, reducing the data communication volume of EIS.
Smart Images

Figure CN119233092A_ABST
Abstract
Description
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS
[0002] The disclosure of Japanese Patent Application No. 2023-108002 filed on June 30, 2023 including the specification, drawings and abstract is incorporated herein by reference in its entirety. Technical Field
[0003] The present invention relates to semiconductor devices. Background Art
[0004] In a video camera or a digital still camera, camera shake correction is performed using one or both of an optical image stabilizer (OIS) and an electronic image stabilizer (EIS).
[0005] The technologies listed below are disclosed.
[0006] [Patent Document 1] Japanese Unexamined Patent Application Publication No. 2019-106655
[0007] Patent Document 1 discloses a semiconductor device that reduces the risk of either OIS or EIS exceeding the correctable range when used in combination. The semiconductor device adjusts the position of a correction lens for optical camera shake correction based on information indicating the current position of the correction lens and positional information about the output image of electronic camera shake correction relative to a captured image captured by an imaging element. As a result, the operating margin of the correction lens is maintained, while also maintaining a correction margin for electronic camera shake correction. Summary of the Invention
[0008] Although data can be shared between two semiconductor chips using SPI communication, where a chip select signal line is used for communication between the two semiconductor chips, there is a problem of increased wiring. Therefore, an object of the present disclosure is to provide a semiconductor device that transmits and receives data using unused addresses of a gyro sensor to reduce the amount of wiring.
[0009] Other problems and novel features will become apparent from the description of this specification and the accompanying drawings.
[0010] According to one embodiment, in a semiconductor device, the second semiconductor chip transmits data to a storage unit of a gyro sensor via SPI communication, and the first semiconductor chip uses the data.
[0011] According to the above-described embodiments, a semiconductor device can be provided that transmits and receives data using unused addresses of a gyro sensor to reduce the number of wirings. BRIEF DESCRIPTION OF THE DRAWINGS
[0012] Figure 1is a block diagram illustrating a configuration of an image stabilizer according to a first embodiment, which controls a three-axis OIS lens using two two-axis OIS-ICs (Integrated Circuits).
[0013] Figure 2 is a sequence diagram of the OIS process according to the first embodiment.
[0014] Figure 3 is a block diagram illustrating an X-axis correction process using a Z-axis lens position in an OIS process according to the first embodiment.
[0015] Figure 4 is a diagram illustrating an unused area of a data address of a gyro sensor during OIS according to the first embodiment.
[0016] Figure 5 is a flowchart illustrating the operation of a primary semiconductor chip of a two-axis OIS-IC during an OIS process according to the first embodiment.
[0017] Figure 6 is a flowchart illustrating the operation of the secondary semiconductor chip of the two-axis OIS-IC during the OIS process according to the first embodiment.
[0018] Figure 7 is a sequence diagram of the OIS process according to the second embodiment.
[0019] Figure 8 is a flowchart illustrating the operation of a primary semiconductor chip of a two-axis OIS-IC during an OIS process according to the second embodiment.
[0020] Figure 9 is a flowchart illustrating the operation of the secondary semiconductor chip of the two-axis OIS-IC during the OIS process according to the second embodiment.
[0021] Figure 10 is a flowchart illustrating the operation of the host controller during the OIS process according to the second embodiment.
[0022] Figure 11 : is a view illustrating a content example of EIS data according to the second embodiment.
[0023] Figure 12 is a view illustrating a content example of EIS data according to the related art.
[0024] Figure 13 is a sequence diagram of the OIS process according to the third embodiment.
[0025] Figure 14 is a diagram illustrating an unused area of a data address of a gyro sensor in an OIS process according to the third embodiment.
[0026] Figure 15 : is a block diagram illustrating a configuration of an image stabilizer according to a fourth embodiment, which controls a plurality of two-axis OIS-ICs and two-axis OIS lenses respectively connected to the two-axis OIS-ICs.
[0027] Figure 16 is a sequence diagram of the OIS process according to the fourth embodiment.
[0028] Figure 17 is a flowchart illustrating the operation of the primary semiconductor chip of the two-axis OIS-IC in the OIS process according to the fourth embodiment.
[0029] Figure 18 is a flowchart illustrating the operation of the secondary semiconductor chip of the two-axis OIS-IC in the OIS process according to the fourth embodiment.
[0030] Figure 19 is a diagram illustrating an unused area of a data address of a gyro sensor in an OIS process according to a fourth embodiment.
[0031] Figure 20 is a flowchart illustrating the operation of the host controller in the OIS process according to the fourth embodiment.
[0032] Figure 21 is a diagram illustrating the time required for the OIS process according to the fourth embodiment and the time required for the OIS process according to the related art.
[0033] Figure 22 is a sequence diagram of the OIS process according to the fifth embodiment. DETAILED DESCRIPTION
[0034] The following description and drawings are appropriately omitted and simplified to clarify the description. In addition, each of the elements described in the drawings as functional blocks that perform various processes can be configured by a CPU, memory, and other circuits in hardware, and implemented by a program loaded in a memory, etc. in software. Therefore, it should be understood by those skilled in the art that these functional blocks can be implemented in various forms by hardware only, software only, or a combination thereof, without being limited to any of them. In the drawings, the same elements are represented by the same reference numerals, and redundant descriptions are omitted as necessary.
[0035] (Description of Image Stabilizer According to First Embodiment)
[0036] Figure 1 1 is a block diagram illustrating a configuration of an image stabilizer according to a first embodiment, which controls a three-axis OIS lens using two two-axis OIS-ICs. Figure 1An image stabilizer according to a first embodiment will be described. The image stabilizer 100 is a semiconductor device for correcting camera shake in an imaging device. The image stabilizer 100 uses two two-axis OIS-ICs to correct camera shake of a three-axis OIS lens.
[0037] like Figure 1 As shown, the image stabilizer 100 according to the first embodiment includes a three-axis OIS lens (hereinafter referred to as a camera lens) 101, a first two-axis OIS IC (hereinafter referred to as a first semiconductor chip) 103, a second two-axis OIS IC (hereinafter referred to as a second semiconductor chip) 102, a gyro sensor 104, and a gyro sensor storage unit 105. The image stabilizer 100 also includes a host controller 106.
[0038] The camera lens 101 is a lens controlled by three-dimensional coordinates, including an X-axis, a Y-axis orthogonal to the X-axis, and a Z-axis orthogonal to the X-axis and Y-axis. The camera lens 101 includes an X-axis position sensor 112 (X lens position sensor) and an X-axis actuator 113 (X voice coil motor (VCM)). The camera lens 101 also includes a Y-axis position sensor 114 (Y lens position sensor) and a Y-axis actuator 115 (Y-VCM). The camera lens 101 also includes a Z-axis position sensor 110 (Z lens position sensor) and a Z-axis actuator 111 (Z-VCM).
[0039] The X-axis position sensor 112 and the X-axis actuator 113 are connected to the first semiconductor chip 103 and are controlled by the first semiconductor chip 103. In addition, the Y-axis position sensor 114 and the Y-axis actuator 115 are connected to the first semiconductor chip 103 and are controlled by the first semiconductor chip 103. In addition, the Z-axis position sensor 110 and the Z-axis actuator 111 are connected to the second semiconductor chip 102 and are controlled by the second semiconductor chip 102.
[0040] The second semiconductor chip 102 is a primary semiconductor chip. The second semiconductor chip 102 is connected to the three-axis OIS lens 101 to store Z-axis position data 107 and control the Z-axis of the camera lens 101. The second semiconductor chip 102 is connected to the host controller via inter-integrated circuit (IIC) communication or improved inter-integrated circuit (I3C) communication.
[0041] The second semiconductor chip 102 is connected to the gyro sensor 104 via a chip selection signal line, a data signal line, and a clock signal line of a serial peripheral interface (SPI) communication. In addition, the second semiconductor chip 102 is connected to the first semiconductor chip 103 via a chip selection signal line, a data signal line, and a clock signal line of SPI communication. Although one data line is illustrated in the drawing, two or more data lines may be used in practice.
[0042] The second semiconductor chip 102 sends the Z-axis position data 107 to the storage unit 105 of the gyro sensor via SPI communication. The second semiconductor chip 102 reads the camera shake state data and calculates the Z-axis target position of the camera lens 101.
[0043] The first semiconductor chip 103 is a secondary semiconductor chip. The first semiconductor chip 103 is connected to the camera lens 101 to store X-axis position data and Y-axis position data 108. Furthermore, the first semiconductor chip 103 controls the X-axis and Y-axis of the camera lens 101. The first semiconductor chip 103 is connected to the host controller via IIC communication or I3C communication.
[0044] The first semiconductor chip 103 continuously monitors the SPI data. Thus, the first semiconductor chip 103 can obtain Z-axis position data 109. The Z-axis position data 109 is obtained from the Z-axis position data stored in the storage unit 105 of the gyroscope sensor via SPI communication. The first semiconductor chip 103 reads the gyroscope data and corrects it with the Z-axis position data to calculate the X-axis target position and the Y-axis target position of the camera lens 101.
[0045] The gyro sensor 104 acquires X-axis gyro data, Y-axis gyro data, and Z-axis gyro data as camera shake status data. The gyro sensor 104 transmits the gyro data to the first semiconductor chip 103 and the second semiconductor chip 102 via SPI communication. The first semiconductor chip 103 and the second semiconductor chip 102 use the camera shake status data to perform camera shake correction. The gyro sensor 104 includes a gyro sensor storage unit 105. The gyro sensor storage unit 105 includes a first area and a second area. The camera shake status data is stored in the first area, and the Z-axis position data is stored in the second area.
[0046] The host controller 106 obtains the camera shake status data and the X-axis position data, Y-axis position data, and Z-axis position data from the connected second semiconductor chip 102 and the first semiconductor chip 103. The host controller 106 uses the camera shake status data and the X-axis position data, Y-axis position data, and Z-axis position data for EIS.
[0047] With this configuration, even if there is no chip selection signal line connecting the second semiconductor chip 102 and the first semiconductor chip 103 , Z-axis position data can be transmitted and received via SPI communication using unused addresses of the gyro sensor.
[0048] (Description of OIS Process According to First Embodiment)
[0049] Figure 2is a sequence diagram of the OIS process according to the first embodiment. Figure 3 is a block diagram illustrating an X-axis correction process using a Z-axis lens position in an OIS process according to the first embodiment. Figure 4 is a diagram illustrating an unused area of a data address of a gyro sensor during OIS according to the first embodiment. Figure 5 is a flowchart illustrating the operation of a primary semiconductor chip of a two-axis OIS-IC during an OIS process according to the first embodiment. Figure 6 is a flowchart illustrating the operation of the secondary semiconductor chip of the two-axis OIS-IC during the OIS process according to the first embodiment. Figures 2 to 6 The OIS process according to the first embodiment is described.
[0050] like Figure 2 As illustrated, the image stabilizer 100 operates in the following sequence.
[0051] (1) The host controller 106 sends a start command to the second semiconductor chip 102 .
[0052] (2) The host controller 106 sends a start command to the first semiconductor chip 103 .
[0053] (3) The second semiconductor chip 102 outputs the Z-axis lens position to the SPI line. At this time, the unused address and the Z-axis lens position are output. Since the address is unused, the gyro sensor 104 performs no operation (NOP). The first semiconductor chip 103 recognizes the address, which is the Z-axis identification (ID), as information on the Z-axis lens position. The first semiconductor chip 103 uses the information on the Z-axis lens position to calculate the target position.
[0054] (4) The second semiconductor chip 102 outputs a drive command to the gyro sensor 104 to the SPI line. The drive command is the ID of the gyro sensor. The gyro sensor 104 recognizes the ID of the gyro sensor. The first semiconductor chip 103 recognizes the ID of the gyro sensor.
[0055] (5) The gyro sensor 104 outputs gyro data to the SPI line. The first semiconductor chip 103 calculates the X-axis target position and the Y-axis target position. The second semiconductor chip 102 calculates the Z-axis target position.
[0056] like Figure 3 As shown, when calculating the target position of the first semiconductor chip in sequence (5), the Z-axis lens position is used for the X-axis correction process. Although the X-axis is used as an example here, the same applies to the Y-axis.
[0057] The raw data 301 of the X-axis gyro sensor is subjected to crosstalk correction and limit value correction using the Z-axis lens position 308 , thereby calculating the X-axis target position.
[0058] In the case of an actuator where the X-axis lens position depends on the Z-axis lens position shift, the following crosstalk correction is required.
[0059] X' = X + (Z-axis lens position - Z-axis center) × coefficient 1
[0060] In the case of an actuator in which the X-axis limit lens position and the Y-axis limit lens position depend on the Z-axis lens position shift, it is necessary to correct the limit values as follows.
[0061] Maximum value = normal limit maximum value + Z axis lens position × coefficient 0
[0062] Minimum value = normal limit minimum value + Z axis lens position × coefficient 0
[0063] like Figure 4 As shown, in (3) of the sequence, the Z-axis lens position is output to the SPI line of the second semiconductor chip 102. For example, after communication is started via the SPI chip select signal line, address 0×03 as an unused address and data of the Z-axis lens position are sent to the SPI data signal line in a state included in the SPI clock. Note that the unused area is a part of the area of the storage unit 105 of the gyro sensor, and indicates an area that is not designed to store data related to the operation of the gyro sensor (such as command data, program data, and data indicating status). Therefore, even if data is stored in the unused area, the gyro sensor does not change operation based on the data. The unused area is also called a "reserved area." The unused address indicates an address included in the unused area.
[0064] like Figure 5 As shown, the second semiconductor chip 102 operates as follows. Here, the OIS process operates at 1kHz. First, it is determined whether 1 millisecond has passed since the start of the OIS (step S501). In the case that 1 millisecond has not passed (no in step S501), the process returns to the start of the OIS. In the case that 1 millisecond has passed (yes in step S501), the second semiconductor chip 102 sends Z-axis lens position data from the chip select signal line 0 (CS (chip select) 0) (step S502). The Z-axis lens position data includes data of the unused address 0×03 and the Z-axis lens position. Next, the second semiconductor chip 102 obtains the data of the gyro sensor 104 via the chip select signal line 0 (step S503). Finally, the second semiconductor chip 102 calculates the Z-axis target position (step S504). Then, steps S501 to S504 are repeated while the OIS is operating.
[0065] like Figure 6 As shown, the first semiconductor chip 103 operates as follows. First, it is determined whether the first semiconductor chip 103 has received a signal from the chip select signal line 0 (step S601). In the case where no signal has been received (No in step S601), it is determined whether to end the OIS process (step S607). In the case where a signal has been received (Yes in step S601), it is determined whether the address is an unused address of the gyro sensor (step S602). In the case where the address is not an unused address and is, for example, 0×A2 which is the first address, the calculation Figure 3 The target position described (including crosstalk correction) is determined (step S603). Next, the limit value is updated (step S604). In the case where the address is an unused address and is, for example, 0×03 as the second address, the address is recognized as Z-axis lens position data, and the Z-axis lens position data is maintained (step S605). Next, the limit value according to the Z-axis lens position is updated (step S606). After steps S604 and S606, it is determined whether to end the OIS process (step S607). In the case where the OIS process is to end (yes in step S607), the OIS process ends. In the case where the OIS process is not to end (no in step S607), the process returns to the start of the OIS process (step S601).
[0066] In this manner, even if there is no chip selection signal line connecting the second semiconductor chip 102 and the first semiconductor chip 103 , Z-axis position data can be transmitted and received via SPI communication using unused addresses of the gyro sensor.
[0067] (Description of OIS Process According to Second Embodiment)
[0068] Figure 7 is a sequence diagram of the OIS process according to the second embodiment. Figure 8 is a flowchart illustrating the operation of a primary semiconductor chip of a two-axis OIS-IC during an OIS process according to the second embodiment. Figure 9 is a flowchart illustrating the operation of the secondary semiconductor chip of the two-axis OIS-IC during the OIS process according to the second embodiment. Figure 10 is a flowchart illustrating the operation of the host controller during the OIS process according to the second embodiment. Figure 11 : is a view illustrating a content example of EIS data according to the second embodiment. Figure 12 1 is a diagram illustrating an example of the contents of EIS data according to the related art. Figures 7 to 12 The OIS process according to the second embodiment is described.
[0069] The image stabilizer according to the second embodiment has the same configuration as the image stabilizer 100 according to the first embodiment. The second embodiment is different from the first embodiment in that the host controller 106 performs an EIS process.
[0070] like Figure 7 As illustrated, the image stabilizer 100 according to the second embodiment operates in the following sequence.
[0071] (1) The host controller 106 sends a start command to the second semiconductor chip 102 .
[0072] (2) The host controller 106 sends a start command to the first semiconductor chip 103 .
[0073] (3) The second semiconductor chip 102 outputs a gyro command to the SPI line. The gyro sensor ID is output. The gyro sensor 104 recognizes the command as the gyro sensor ID. The first semiconductor chip 103 recognizes the command as the gyro sensor ID.
[0074] (4) The gyro sensor 104 outputs gyro data to the SPI line. The second semiconductor chip 102 calculates the Z-axis target position. The first semiconductor chip 103 calculates the X-axis target position and the Y-axis target position.
[0075] (5) The second semiconductor chip 102 outputs the Z-axis lens position and the Z-axis target position to the SPI line. The first semiconductor chip 103 obtains the Z-axis lens position and the Z-axis target position.
[0076] (6) The host controller 106 acquires X-axis EIS data, Y-axis EIS data, and Z-axis EIS data from the first semiconductor chip 103 via IIC communication.
[0077] The second semiconductor chip 102 and the first semiconductor chip 103 transmit and receive camera shake status data, lens position data, and target position data using the gyro sensor 104 at a calculation cycle of, for example, 1 kHz, and accumulate EIS data. The host controller 106 reads the EIS data at an image reading cycle of, for example, 30 fps and executes the EIS process.
[0078] like Figure 8As shown, the second semiconductor chip 102 operates as follows. Here, the OIS process operates at 1kHz. First, it is determined whether 1 millisecond has passed since the start of the OIS (step S801). In the case that 1 millisecond has not passed (no in step S801), the process returns to the start of the OIS. In the case that 1 millisecond has passed (yes in step S801), the second semiconductor chip 102 sends Z-axis data from the chip select signal line 0 (CS0) (step S802). The Z-axis data includes 0×03, lens position data and target position data. Next, the second semiconductor chip 102 obtains the data of the gyro sensor 104 via the chip select signal line 0 (step S803). Finally, the second semiconductor chip 102 calculates the Z-axis target position (step S804). Then, steps S801 to S804 are repeated while the OIS is operating.
[0079] like Figure 9 As shown, the first semiconductor chip 103 operates as follows. First, it is determined whether the first semiconductor chip 103 has received a signal from the chip select signal line 0 (step S901). In the case where no signal has been received (No in step S901), it is determined whether to end the OIS process (step S907). In the case where a signal has been received (Yes in step S901), it is determined whether the address is an unused address of the gyro sensor (step S902). In the case where the address is not an unused address and is, for example, 0×A2 which is the first address, the calculation Figure 3 The target position described (including crosstalk correction) is determined (step S903). Next, the limit value is updated (step S904). In the case where the address is an unused address and is, for example, 0×03 as the second address, the address is identified as Z-axis data, and the Z-axis data is maintained (step S905). Next, the EIS data according to the Z-axis lens position and the target position is updated (step S906). After steps S904 and S906, it is determined whether to end the OIS process (step S907). In the case where the OIS process is to end (yes in step S907), the OIS process ends. In the case where the OIS process is not to end (no in step S907), the process returns to the start of the OIS process (step S901).
[0080] like Figure 10As shown, the host controller 106 operates as follows. First, the host controller 106 sends a start command to the second semiconductor chip 102, which is the primary semiconductor chip, via IIC communication. In addition, the host controller 106 sends a start command to the first semiconductor chip 103, which is the secondary semiconductor chip, via IIC communication (step S1001). Next, the host controller 106 determines whether a frame of image has been acquired (step S1002). In the case where a frame has been acquired (in the case of yes in step S1002), an EIS process is performed (step S1003). The host controller 106 acquires X-axis EIS data, Y-axis EIS data, and Z-axis EIS data from the first semiconductor chip 103. In the case where a frame has not yet been acquired (in the case of no in step S1002) and step S1003 ends, the host controller 106 determines whether to end the camera function (step S1004). In the case where the camera function is not ended (no in step S1004), the process returns to step S1002. If the camera function is about to end (Yes in step S1004), the host controller 106 sends a stop command to the second semiconductor chip 102, which is the primary semiconductor chip, via IIC communication. Furthermore, the host controller 106 sends a stop command to the first semiconductor chip 103, which is the secondary semiconductor chip, via IIC communication (step S1005). Finally, the host controller 106 ends the OIS process.
[0081] like Figure 11 As shown in the figure, when an image is acquired at 30 fps, the shooting time per frame is 33.3 milliseconds. When data such as the lens position is acquired every 4 milliseconds, the number of data per frame is about 8. Three types of lens position data, target position data, and gyroscope raw data are acquired. Figure 12 As shown, in the case where images are similarly acquired at 30 fps, lens position data is generated for each of the first semiconductor chip 103 and the second semiconductor chip 102. Figure 12 In addition to the table, target position data and gyroscope raw data are also generated similarly.
[0082] Therefore, the number of data in the second embodiment is 3×4×8=96, while the number of data in the related art is 3×3×8+3×2×8=120. Therefore, the second embodiment can reduce the number of data. The theoretical value of communication time at 1Mbps can be shortened from 2.22 milliseconds to 1.76 milliseconds. In addition, there is a situation where the timing of acquiring data is different between the two systems of IIC communication, and the EIS process becomes difficult. In the method of the second embodiment, the data of all axes are accurately synchronized.
[0083] Since data of all axes can be acquired from one semiconductor chip in this manner, the data communication volume of the EIS can be reduced.
[0084] (Description of OIS Process According to Third Embodiment)
[0085] Figure 13 is a sequence diagram of the OIS process according to the third embodiment. Figure 14 FIG3 is a diagram illustrating an unused area of a data address of a gyro sensor during an OIS process according to a third embodiment. Figure 13 and Figure 14 An OIS process according to the third embodiment is described.
[0086] The image stabilizer according to the third embodiment has the same configuration as the image stabilizer 100 according to the first embodiment. The OIS process according to the third embodiment differs from the OIS process according to the first embodiment in that the gyro sensor 104 transmits Z-axis position data and gyro data to the first semiconductor chip 103 at the same time.
[0087] like Figure 13 As illustrated, the image stabilizer 100 operates in the following sequence.
[0088] (1) The host controller 106 sends a start command to the second semiconductor chip 102 .
[0089] (2) The host controller 106 sends a start command to the first semiconductor chip 103 .
[0090] (3) The second semiconductor chip 102 outputs the Z-axis lens position to the SPI line. At this time, it outputs the unused address and the Z-axis lens position. The gyro sensor 104 stores the data generated by the unused address. The first semiconductor chip 103 ignores the data from the second semiconductor chip 102.
[0091] (4) The second semiconductor chip 102 outputs an unused address to the SPI line.
[0092] (5) The gyro sensor 104 outputs the data of the unused address and the gyro sensor data. The first semiconductor chip 103 recognizes the data of the unused address and the gyro sensor data. The first semiconductor chip 103 calculates the target position based on these data. The second semiconductor chip 102 calculates the Z-axis target position.
[0093] like Figure 14As shown, the second area, which is an unused area, and the first area storing camera shake status data are continuous in the gyro sensor's storage unit 105. The first semiconductor chip 103 transmits the address (0x20)+(0x80) of the unused area to the SPI line to obtain gyroscope data and data from the unused area from the gyro sensor 104. The first semiconductor chip 103 can then obtain Z-axis lens position data and gyroscope data for the unused address.
[0094] In this way, not only can the Z-axis position data be sent and received through SPI communication using the unused addresses of the gyro sensor, but the number of communications can also be reduced.
[0095] (Description of Image Stabilizer According to Fourth Embodiment)
[0096] Figure 15 : is a block diagram illustrating a configuration of an image stabilizer according to a fourth embodiment, which controls a plurality of two-axis OIS-ICs and two-axis OIS lenses respectively connected to the two-axis OIS-ICs. Figure 15 An image stabilizer according to a fourth embodiment will be described. The image stabilizer 1500 is a semiconductor device for correcting camera shake in an imaging device. The image stabilizer 1500 uses two or more two-axis OIS-ICs and two or more two-axis OIS lenses to correct camera shake.
[0097] The image stabilizer 1500 according to the fourth embodiment includes a first two-axis OIS lens (hereinafter referred to as the first camera lens) 1501, a second two-axis OIS lens (hereinafter referred to as the second camera lens) 1502, a first two-axis OIS-IC (hereinafter referred to as the first semiconductor chip) 1505, a second two-axis OIS-IC (hereinafter referred to as the second semiconductor chip) 1506, a gyro sensor 1509, a host controller 1510, and a gyro sensor storage unit 1511. Furthermore, the image stabilizer 1500 according to the fourth embodiment may include a third two-axis OIS lens (hereinafter referred to as the third camera lens) 1503, a fourth two-axis OIS lens (hereinafter referred to as the fourth camera lens) 1504, a third two-axis OIS-IC (hereinafter referred to as the third semiconductor chip) 1507, and a fourth two-axis OIS-IC (hereinafter referred to as the fourth semiconductor chip) 1508.
[0098] The first camera lens 1501 is a lens controlled by two axes of three-dimensional coordinates, including an X-axis, a Y-axis orthogonal to the X-axis, and a Z-axis orthogonal to the X-axis and Y-axis. The first camera lens 1501 includes position sensors for the two axes and actuators for the two axes. The two position sensors and actuators for two of the three axes are connected to and controlled by the first semiconductor chip 1505.
[0099] The first semiconductor chip 1505 is a primary semiconductor chip. The first semiconductor chip 1505 is connected to the second semiconductor chip 1506 via a chip select signal line, a data signal line, and a clock signal line for SPI communication. Furthermore, the first semiconductor chip 1505 is connected to the gyro sensor 1509 via the chip select signal line, a data signal line, and a clock signal line for SPI communication. The first semiconductor chip 1505 is connected to the host controller 1510 via IIC communication.
[0100] The first semiconductor chip 1505 receives a command by connecting with the host controller 1510. The first semiconductor chip 1505 transmits the command from the host controller to the storage unit 1511 of the gyro sensor via SPI communication.
[0101] Second camera lens 1502 is controlled by two axes of three-dimensional coordinates, including an X-axis, a Y-axis orthogonal to the X-axis, and a Z-axis orthogonal to the X-axis and Y-axis. Position sensors for the two axes and actuators for two of the three axes are connected to and controlled by second semiconductor chip 1506.
[0102] The second semiconductor chip 1506 is a secondary semiconductor chip. The second semiconductor chip 1506 is connected to the gyro sensor 1509 via a chip select signal line, a data signal line, and a clock signal line for SPI communication. Furthermore, the second semiconductor chip 1506 is connected to the first semiconductor chip 1505 via a chip select signal line, a data signal line, and a clock signal line for SPI communication. The second semiconductor chip 1506 is connected to the host controller 1510 via IIC communication.
[0103] In addition, the second semiconductor chip 1506 continuously monitors the SPI data. In the case where the address of the SPI data is the address of the gyroscope, the address is recognized as gyroscope data and used to calculate the target position. In the case of an unused address indicating command information, the unused address is used as the command. In other words, the number of commands sent by the host controller 1510 to the plurality of semiconductor chips is one.
[0104] The gyroscope sensor 1509 obtains X-axis gyroscope data, Y-axis gyroscope data, and Z-axis gyroscope data as camera shake status data. The gyroscope sensor 1509 transmits the gyroscope data to the first semiconductor chip 1505 and the second semiconductor chip 1506 via SPI communication. As in the fifth embodiment, the gyroscope sensor 1509 can also transmit the gyroscope data to the host controller 1510 via SPI communication.
[0105] Since the third camera lens 1503 and the fourth camera lens 1504 have the same configuration as the second camera lens 1502, their description is omitted. Since the third semiconductor chip 1507 and the fourth semiconductor chip 1508 have the same configuration as the second semiconductor chip 1506, their description is omitted. As described above, one of the plurality of semiconductor chips is connected to one of the plurality of camera lenses. There is no limit to the number of sets of third camera lens 1503 and third semiconductor chip 1507, or the number of sets of fourth camera lens 1504 and fourth semiconductor chip 1508.
[0106] With this configuration, the host controller can command multiple semiconductor chips by sending a command once, thereby shortening the command sending time.
[0107] (Description of OIS Process According to Fourth Embodiment)
[0108] Figure 16 is a sequence diagram of the OIS process according to the fourth embodiment. Figure 17 is a flowchart illustrating the operation of the primary semiconductor chip of the two-axis OIS-IC in the OIS process according to the fourth embodiment. Figure 18 is a flowchart illustrating the operation of the secondary semiconductor chip of the dual-axis OIS-IC in the OIS process according to the fourth embodiment. Figure 19 is a diagram illustrating an unused area of a data address of a gyro sensor in an OIS process according to the fourth embodiment. Figure 20 is a flowchart illustrating the operation of the host controller in the OIS process according to the fourth embodiment. Figure 21 is a diagram illustrating the time required for the OIS process according to the fourth embodiment and the time required for the OIS process according to the related art. Figures 16 to 21 An OIS process according to the fourth embodiment is described.
[0109] like Figure 16 As shown, the image stabilizer 1500 operates in the following sequence.
[0110] (1) The host controller 1510 sends a start command to the first semiconductor chip 1505 .
[0111] (2) The first semiconductor chip 1505 transmits a start command to an unused area of the gyro sensor's memory unit 1511 via SPI communication. The second semiconductor chip 1506, the third semiconductor chip 1507, and the fourth semiconductor chip 1508 monitor the SPI communication and receive the start command. Each of the second semiconductor chip 1506, the third semiconductor chip 1507, and the fourth semiconductor chip 1508 initiates the process. Due to the unused address area, the gyro sensor does not operate.
[0112] (3) First semiconductor chip 1505 outputs a drive command for gyro sensor 1509 to the SPI line. The drive command is the gyro sensor ID. Gyro sensor 1509 recognizes the command as the gyro sensor ID. Second semiconductor chip 1506, third semiconductor chip 1507, and fourth semiconductor chip 1508 recognize the command as the gyro sensor ID.
[0113] (4) Gyro sensor 1509 outputs data from gyro sensor 1509 to the SPI line. The first semiconductor chip 1505 acquires gyro data and calculates the target positions of the two axes. The second semiconductor chip 1506 acquires gyro data and calculates the target positions of the two axes. The third semiconductor chip 1507 acquires gyro data and calculates the target positions of the two axes. The fourth semiconductor chip 1508 acquires gyro data and calculates the target positions of the two axes.
[0114] (5) The host controller 1510 transmits a mode change command such as changing a shooting condition to the first semiconductor chip 1505 .
[0115] (6) The first semiconductor chip 1505 transmits a mode change command to an unused area of the gyro sensor's memory unit 1511 via SPI communication. The second semiconductor chip 1506, the third semiconductor chip 1507, and the fourth semiconductor chip 1508 monitor the SPI communication and receive the mode change command. Each of the second semiconductor chip 1506, the third semiconductor chip 1507, and the fourth semiconductor chip 1508 changes its mode. Due to the unused address area, the gyro sensor does not operate.
[0116] (7) The host controller 1510 sends a stop command to the first semiconductor chip 1505 .
[0117] (8) The first semiconductor chip 1505 transmits a stop command to an unused area of the gyro sensor's memory unit 1511 via SPI communication. The second semiconductor chip 1506, the third semiconductor chip 1507, and the fourth semiconductor chip 1508 monitor the SPI communication and receive the stop command. Each of the second semiconductor chip 1506, the third semiconductor chip 1507, and the fourth semiconductor chip 1508 stops the process. Due to the unused address area, the gyro sensor does not operate.
[0118] like Figure 17 As shown, the host controller 1510 operates as follows. First, the camera function is activated, and a start command is sent only to the first semiconductor chip 1505 via IIC communication (step S1701). Next, it is determined whether the host controller 1510 has acquired a frame of image (step S1702). If a frame has been acquired (if yes in step S1702), the host controller 1510 performs an EIS process (step S1703). If a frame has not been acquired (if no in step S1702) and after performing the EIS process (step S1703), the host controller 1510 determines whether to change the camera mode (step S1704). If the camera mode is to be changed (if yes in step S1704), the host controller 1510 sends only a mode change command to the first semiconductor chip 1505 via IIC communication (step S1705). If no change has been made (no in step S1704) and after the mode change command has been sent (step S1705), the process returns to step S1702.
[0119] like Figure 18 As shown, the first semiconductor chip 1505 operates as follows. First, it is determined whether a command has been sent from the IIC (step S1801). In the case where no command has been sent (no in step S1801), the first semiconductor chip 1505 stands by. In the case where a command has been sent (yes in step S1801), the first semiconductor chip 1505 sends a command from the SPI line (step S1802). Figure 19As shown, the command includes, for example, the address 0×04, which is an unused area of the gyro sensor, a command ID, and command data. Next, the first semiconductor chip 1505 determines what the command from the IIC is (step S1803). When the command ID is 0×11, the hardware (HW) of the OIS is started and the start flag is set to 1 (step S1804). When the command ID is 0×22, the HW of the OIS is stopped and the start flag is set to 0 (step S1805). When the command ID is 0×33, the OIS mode is changed and the command data is input to the mode (step S1806). Next, it is determined whether the start flag is 1 and whether the time has passed (step S1807). When the start flag is 1 and the time has passed, the first semiconductor chip 1505 obtains data from the gyro sensor 1509 (step S1808). Finally, the first semiconductor chip 1505 calculates the target positions of the two axes (step S1809). When the start flag is not 1 or the time has not elapsed (No in step S1807 ) and after the target position is calculated (step S1809 ), the process returns to step S1801 , and steps S1801 to S1809 are repeated while the OIS is operating.
[0120] like Figure 20As shown, the second semiconductor chip 1506 operates as follows. First, it is determined whether a command has been sent to the SPI line (step S2001). In the case where no command has been sent (no in step S2001), the second semiconductor chip 1506 stands by. In the case where the command has been sent (yes in step S2001), the second semiconductor chip 1506 determines whether the SPI data indicates a command at, for example, address 0×04 (step S2002). In the case where the SPI data does not indicate a command (no in step S2002), the process returns to step S2001. In the case where the SPI data indicates a command (yes in step S2002), the second semiconductor chip 1506 determines what command data 1 is (step S2003). In the case where the command ID is 0×11, the hardware (HW) of the OIS is started and the start flag is set to 1 (step S2004). In the case where the command ID is 0×22, the HW of the OIS is stopped and the start flag is set to 0 (step S2005). If the command ID is 0x33, the OIS mode is changed and the command data is input to the mode (step S2006). Next, it is determined whether SPI data 0 is the gyroscope ID and whether the start flag is 1 (step S2007). If SPI data 0 is the gyroscope ID and the start flag is 1, the second semiconductor chip 1506 calculates the target positions of the two axes (step S2008). If SPI data 0 is not the gyroscope ID or the start flag is not 1 (no in step S2007) and after calculating the target position (step S2008), the process returns to step S2001, and steps S2001 to S2008 are repeated while the OIS is operating.
[0121] In this way, as Figure 21 As shown, the time for the host controller 1510 to send a command to one semiconductor chip through the IIC is set to 38 μs. When the host controller 1510 sends a command to four semiconductor chips, 152 μs is required in the related art, but this can be shortened to 40.4 μs through the method of the present disclosure.
[0122] (Description of OIS Process According to Fifth Embodiment)
[0123] Figure 22 is a sequence diagram of the OIS process according to the fifth embodiment. Figure 22 An OIS process according to the fifth embodiment is described.
[0124] The image stabilizer according to the fifth embodiment has the same configuration as the image stabilizer 1500 according to the fourth embodiment. The OIS process according to the fifth embodiment is different from the OIS process according to the fourth embodiment in that a host controller 1510 calculates a target position.
[0125] like Figure 22 As shown, the image stabilizer 1500 operates in the following sequence.
[0126] (1) The host controller 1510 sends a start command to the first semiconductor chip 1505 .
[0127] (2) The first semiconductor chip 1505 transmits a start command to an unused area of the gyro sensor's memory unit 1511 via SPI communication. The second semiconductor chip 1506, the third semiconductor chip 1507, and the fourth semiconductor chip 1508 monitor the SPI communication and receive the start command. Each of the second semiconductor chip 1506, the third semiconductor chip 1507, and the fourth semiconductor chip 1508 initiates the process. Due to the unused address area, the gyro sensor does not operate.
[0128] (3) The host controller 1510 sends a gyroscope read command to the first semiconductor chip 1505 .
[0129] (4) The first semiconductor chip 1505 sends a read command to the gyro sensor 1509 via SPI communication.
[0130] (5) The first semiconductor chip 1505 reads data from the gyro sensor 1509 via SPI communication.
[0131] (6) The host controller 1510 acquires gyro data from the first semiconductor chip 1505 through IIC communication. The host controller 1510 calculates the target position of the corresponding lens.
[0132] (7) The host controller 1510 sends the target position of the corresponding lens to the first semiconductor chip 1505.
[0133] (8) The first semiconductor chip 1505 uses an unused area of the storage unit 1511 of the gyro sensor to send a target update command to the second semiconductor chip 1506, the third semiconductor chip 1507, and the fourth semiconductor chip 1508. The first semiconductor chip 1505, the second semiconductor chip 1506, the third semiconductor chip 1507, and the fourth semiconductor chip 1508 each control the position of the connected lens.
[0134] (9) The host controller 1510 sends a stop command to the first semiconductor chip 1505 .
[0135] (10) The first semiconductor chip 1505 transmits a stop command to an unused area of the gyro sensor's memory unit 1511 via SPI communication. The second semiconductor chip 1506, the third semiconductor chip 1507, and the fourth semiconductor chip 1508 monitor the SPI communication and receive the stop command. Each of the second semiconductor chip 1506, the third semiconductor chip 1507, and the fourth semiconductor chip 1508 stops the process. Due to the address of the unused area, the gyro sensor does not operate.
[0136] In this manner, the first semiconductor chip 1505 , the second semiconductor chip 1506 , the third semiconductor chip 1507 , and the fourth semiconductor chip 1508 may be configured not to calculate the target position. The host controller 1510 may only send the target position to the first semiconductor chip 1505 at high speed.
[0137] In the above-mentioned first semiconductor chip 103, second semiconductor chip 102, first semiconductor chip 1505, second semiconductor chip 1506, third semiconductor chip 1507 and fourth semiconductor chip 1508, processing is performed using a program. In the host controller 106 and host controller 1510, processing is performed using a program. The program can be stored using various types of non-transitory computer-readable media and provided to the computer. Non-transitory computer-readable media include various types of tangible storage media. Examples of non-transitory computer-readable media include magnetic recording media (e.g., floppy disks, magnetic tapes, and hard disk drives), magneto-optical recording media (e.g., magneto-optical disks), CD-ROMs (read-only memories), CD-Rs, CD-R / Ws, and semiconductor memories (e.g., mask ROMs, programmable ROMs (PROMs), erasable PROMs (EPROMs), flash ROMs, and random access memories (RAMs)). In addition, various types of temporary computer-readable media can be used to provide the program to the computer. Examples of temporary computer-readable media include electrical signals, optical signals, and electromagnetic waves. Transitory computer readable media can provide the program to a computer via a wired communication path such as electric wires and optical fibers, or a wireless communication path.
[0138] As described above, the invention made by the inventors has been described in detail based on the embodiments, the present invention is not limited to the above-mentioned embodiments, and various types of modifications can obviously be made within the scope not departing from the gist thereof.
Claims
1. A semiconductor device, comprising: A camera lens configured to control an X-axis, a Y-axis orthogonal to the X-axis, and a Z-axis orthogonal to the X-axis and the Y-axis to perform camera shake correction; A first semiconductor chip is configured to receive the X-axis and Y-axis data of the camera lens; A second semiconductor chip is configured to receive the Z-axis data of the camera lens; as well as The gyroscope sensor is configured to obtain the camera shake status data. wherein the second semiconductor chip is connected to the first semiconductor chip via a chip selection signal line, a data signal line and a clock signal line of a serial peripheral interface SPI communication, wherein the second semiconductor chip is connected to the gyro sensor via the chip selection signal line, the data signal line and the clock signal line of the SPI communication, and The second semiconductor chip sends the position data of the Z axis to the storage unit of the gyro sensor via the SPI communication.
2. The semiconductor device according to claim 1, wherein the storage unit of the gyro sensor comprises a first area and a second area, wherein the camera shake state data is stored in the first area, and The position data of the Z axis is stored in the second area.
3. The semiconductor device according to claim 1, wherein the second semiconductor chip is a primary chip, and The first semiconductor chip is a secondary chip.
4. The semiconductor device according to claim 1, wherein the first semiconductor chip is connected to a host controller, and The second semiconductor chip is connected to a host controller.
5. The semiconductor device according to claim 2, The first semiconductor chip reads the position data of the Z axis in the second area and performs a correction process.
6. The semiconductor device according to claim 1, The first semiconductor chip reads the camera shake state data and calculates the target position of the camera lens on the X-axis and the Y-axis, and The second semiconductor chip reads the camera shake status data and calculates the target position of the camera lens on the Z axis.
7. The semiconductor device according to claim 2, The second semiconductor chip reads the camera shake state data, calculates the target position of the camera lens on the Z axis, and outputs the target position of the camera lens on the Z axis to the second area, and The first semiconductor chip reads the position data of the Z axis in the second area and the target position of the camera lens on the Z axis, and stores electronic image stabilizer (EIS) data.
8. The semiconductor device according to claim 2, The first region is continuous after the second region.
9. A semiconductor device comprising: The first camera lens is configured to control two axes among the following three axes: an X-axis, a Y-axis orthogonal to the X-axis, and a Z-axis orthogonal to the X-axis and the Y-axis; The second camera lens is configured to control two axes among the following three axes: the X axis, the Y axis and the Z axis; A first semiconductor chip, configured to control the first camera lens; a second semiconductor chip, configured to control the second camera lens; as well as The gyroscope sensor is configured to obtain the camera shake status data. The first camera lens and the second camera lens are used for camera shake correction, wherein the first semiconductor chip is connected to the second semiconductor chip via a chip selection signal line, a data signal line and a clock signal line of SPI communication, wherein the first semiconductor chip is connected to the gyro sensor via the chip selection signal line, the data signal line, and the clock signal line of the SPI communication, wherein the first semiconductor chip is connected to a host controller via inter-integrated circuit (IIC) communication, and The first semiconductor chip transmits a command from the host controller to a storage unit of the gyro sensor via the SPI communication.
10. The semiconductor device according to claim 9, wherein the storage unit of the gyro sensor comprises a first area and a second area, wherein the camera shake state data is stored in the first area, and The command from the host controller is stored in the second area.
11. The semiconductor device according to claim 9, The second semiconductor chip receives the command of the host controller from the first semiconductor chip via the SPI communication.
12. The semiconductor device according to claim 9, comprising: a plurality of said second semiconductor chips; as well as a plurality of said second camera lenses, One of the plurality of second semiconductor chips is connected to one of the plurality of second camera lenses.
13. The semiconductor device according to claim 9, The second semiconductor chip obtains the camera shake state data and calculates the target position of the second camera lens.
14. The semiconductor device according to claim 9, The host controller obtains the camera shake status data and calculates the target positions of the first camera lens and the second camera lens.
15. The semiconductor device according to claim 9, The first semiconductor chip is a primary chip, and the second semiconductor chip is a secondary chip.
