Systems and methods for automatic detection of sd and sd express memory cards
The SoC with a repurposed GPIO pin for SD Express detection simplifies and speeds up the detection of SD and SD Express cards, addressing delays and space consumption issues in existing technologies.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- QUALCOMM INC
- Filing Date
- 2024-12-23
- Publication Date
- 2026-07-02
AI Technical Summary
Current SD and SD Express card detection processes in computing devices require hardware support for multiplexing/demultiplexing and involve delays in boot time initialization, consuming vital space and increasing costs.
A system-on-chip (SoC) with a general purpose input/output (GPIO) pin repurposed for SD Express detection, eliminating the need for bi-directional analog switches and allowing immediate detection of SD and SD Express cards without initial SD initialization, reducing boot time and costs.
Enables automatic and efficient detection of SD and SD Express cards, reducing boot time delays and conserving space on the SoC by eliminating the need for analog switches and simplifying the detection process.
Smart Images

Figure CN2024141317_02072026_PF_FP_ABST
Abstract
Description
SYSTEMS AND METHODS FOR AUTOMATIC DETECTION OF SD AND SD EXPRESS MEMORY CARDSDESCRIPTION OF THE RELATED ART
[0001] A “system-on-a-chip” , or “SoC” , is an example of one such chip that integrates numerous subsystems to provide system-level functionality. For example, an SoC may include one or more types of processors, such as central processing units ( “CPU” s) , graphics processing units ( “GPU” s) , digital signal processors ( “DSP” s) , and neural processing units ( “NPU” s) . An SoC may include other subsystems, such as a transceiver or “modem” subsystem that provides wireless connectivity, a memory subsystem, etc.
[0002] Computing devices also include various types of memory devices that are used by the processing units for storing data and computer instructions, including removable flash memory cards, such as Secure Digital (SD) and Secure Digital (SD) Express cards. The SD 7.0 specification (SD7.0) defines the standards for the SD Express card. The SD7.0 specification combines the traditional SD interface with Peripheral Component Interconnect Express (PCIe) and Non-volatile Memory Express (NVMe) technologies to achieve much faster data transfer rates and much greater storage capacity than standard SD cards. The SD7.0 specification incorporates both the standard SD interface and the PCIe 3.1 / NVMe interface. The SD 8.0 specification (SD8.0) combines dual lane SD Express technology with PCIe technology.
[0003] When an SD or SD Express card is inserted into a compatible port of a computing device such as a mobile phone, for example, the SD host controller of the computing device performs a detection process to determine whether the card is an SD card or an SD Express card. The current detection process typically requires hardware support in terms of a bi-directional analog switch within the SoC or external to the SoC to multiplex / demultiplex (MUX / DEMUX) between four SD data lines (SD_DAT0, SD_DAT1, SD_DAT2, SD_DAT3 lines) and PCIe Sideband signals (PCIe_PERST, PCIe_CLKREQ and PCIe_REFCLK+ / -) along with changes in the host SD host controller (SDHC) register space.
[0004] The current detection process also requires hardware or software interactions between the host SDHC and host PCIe controller to perform detection. The detection starts with a driver of the host SDHC assuming that an SD card has been inserted and sending an initialization command to the inserted card to perform an initialization process that allows the host SDHC to determine the type of card that has been inserted. If the host SDHC determines that the card is an SD Express card, it will notify PCIe driver of the host PCIe controller to further continue with SD Express enumeration. This process delays boot time initialization.
[0005] A need exists for a system and method for automatic detection of SD and SD Express cards that obviate the need for the MUX / DEMUX and reduce delays in boot time initialization. SUMMARY OF THE DISCLOSURE
[0006] A system for automatically detecting a type of memory card inserted into a portable computing device includes a system on chip (SoC) capable of detecting a first type of memory card and a second type of memory card. The first memory card may include a secure digital (SD) express memory card. The SoC may a general purpose input / output (GPIO) pin, the GPIO pin activating a first communication bus protocol associated with the SD express memory card in response to receiving a first signal. A socket may be coupled to the SoC.
[0007] The socket may have a first pin capable of being coupled to a reserved for future use (RFU) pin on the first type of memory card. The first pin may relay the first signal to the GPIO pin when the RFU pin on the first type of memory card is active. And the socket may have a second pin for detecting a presence of a memory card. The second pin may cause an interrupt signal when a memory card is inserted into the socket.
[0008] A system for automatically detecting a type of memory card inserted into a portable computing device may include a system on chip (SoC) capable of detecting a first type of memory card and a second type of memory card. The first memory card may include a secure digital (SD) express memory card. The SoC may have a general purpose input / output (GPIO) pin. The GPIO pin may activate a first communication bus protocol associated with the SD express memory card in response to receiving a first signal.
[0009] A socket may be coupled to the SoC. The socket may have a first pin capable of being coupled to a detection pin on the first type of memory card. The first pin may relay the first signal to the GPIO pin when the detection pin on the first type of memory card is active. And the socket may have a second pin for detecting a presence of the second type of memory card. The first type of memory card may have at least two reserved for future use (RFU) pins in addition to the detection pin.
[0010] A system for automatically detecting a type of memory card inserted into a portable computing device may include memory card detection circuitry for detecting a first type of memory card and a second type of memory card inserted into the portable computing device. The first memory card may include a secure digital (SD) express memory card. The memory card detection circuitry may further include a general purpose input / output (GPIO) pin.
[0011] The GPIO pin may activate a first communication bus protocol associated with the SD express memory card in response to receiving a first signal. The socket may be coupled to the memory card detection circuitry. The socket may have a first pin capable of being coupled to a reserved for future use (RFU) pin on the first type of memory card. The first pin relaying the first signal to the GPIO pin when the RFU pin on the first type of memory card is active. And the socket may have a second pin for detecting a presence of a memory card. The second pin may cause an interrupt signal when a memory card is inserted into the socket. The memory card detection circuitry may include a System on Chip (SoC) having a controller.
[0012] These and other features and advantages will become apparent from the following description, drawings and claims.BRIEF DESCRIPTION OF THE DRAWINGS
[0013] In the Figures, like reference numerals refer to like parts throughout the various views unless otherwise indicated. For reference numerals with letter character designations such as “101A” or “101B” , the letter character designations may differentiate two like parts or elements present in the same Figure. Letter character designations for reference numerals may be omitted when it is intended that a reference numeral encompass all parts having the same reference numeral in all Figures.
[0014] FIG. 1 illustrates a block diagram of a conventional Secure Digital (SD) system that has SD and SD Express card reading capability;
[0015] FIG. 2 is a block diagram of the system for performing SD card and SD Express card automatic detection in accordance with one exemplary embodiment;
[0016] FIG. 3 is a plan view of a standard SD Express card having a standard SD Express pin layout;
[0017] FIG. 4 is a flow diagram representing the SD and SD Express card detection method in accordance with the exemplary embodiment shown in FIG. 2;
[0018] FIG. 5A is a block diagram of the system for performing SD card and SD Express card automatic detection in accordance with another exemplary embodiment;
[0019] FIG. 5B is a plan view of a standard SD Express card having a standard SD Express pin layout;
[0020] FIG. 6 is a flow diagram representing the SD and SD Express card detection method in accordance with the exemplary embodiment shown in FIG. 5A; and
[0021] FIG. 7 illustrates an example of a portable computing device (PCD) that may include the system of FIG. 2 or FIG. 5A and execute the methods illustrated in FIGs. 4 & 6.DETAILED DESCRIPTION
[0022] The word “exemplary” is used herein to mean “serving as an example, instance, or illustration. ” The word “illustrative” may be used herein synonymously with “exemplary. ” Any aspect described herein as “exemplary” is not necessarily to be construed as preferred or advantageous over other aspects.
[0023] The term “logic” , as that term is used herein, means circuitry that is programmed or configured by software and / or firmware to perform particular operations. For example, logic gates of logic arrays, state machines or processors are examples of “logic” , as that term is used herein. The term “circuit” or “circuitry” , as those terms are used herein, denotes electrical circuitry comprising discrete analog, digital, and / or discrete circuit elements / hardware components.
[0024] The present disclosure discloses systems and methods for automatic detection of SD and SD Express cards that obviate the need for the MUX / DEMUX and reduce delays in boot time initialization.
[0025] FIG. 1 illustrates a block diagram of a conventional Secure Digital (SD) system 1 that has SD and SD Express card reading capability. The system 1 comprises a secure digital host controller (SDHC) SDHC 2, a Peripheral Component Interconnect Express (PCIe) controller 3, and an SD Express card socket 4. The SD Express card socket 4 is in communication with the SDHC 2 and with the PCIe controller 3 via communication links 5.
[0026] The SDHC 2 and PCIe controller 3 may comprise discrete circuitry. However, it is possible to implement these controllers 2, 3 in firmware and / or software as understood by one of ordinary skill in the art. However, the SDHC 2 and PCIe controller 3 are generally implemented using discrete circuitry for better energy efficiency and increased speed compared to software and / or firmware implementations.
[0027] The system 1 of FIG. 1 can be part of a system-on-chip (SoC) 10. As indicated above, the current detection process requires a bi-directional analog switch 15 to multiplex / de-multiplex (MUX / DEMUX) between four SD DAT lines: SD_DAT0 6, SD_DAT1 7, SD_DAT2 8, and SD_DAT3 9, and four PCIe Sideband signals PCIe_PERST 11, PCIe_CLKREQ 12, PCIe_REFCLK-13 and PCIe_REFCLK+ 14 as well as changes in register space of the SDHC 2.
[0028] The detection process begins with the SDHC 2 enabling the bi-directional analog switch 15 and initializing the SD interface of the SD Express card socket 4. Once initialized in SD mode, the SDHC 2 reads the card inserted into the socket 4 to determine whether it is an SD card or an SD Express card.
[0029] If the SDHC 2 determines that the card is an SD Express card, then the SDHC 2 switches to PCIe mode, asserts the PCTe / NVMe_Interface_Enable signal 16, which causes the PCIe_PERST# signal 11 to be asserted and the PCIe_CLKREQ# signal 12 to be pulled up by the PCIe controller 3, stops the SD clock signal SD_CLK 17 and the SD command signal SD_CMD 18, and turns on the VDD2 voltage supply 21 to the socket 4 by activating a switch 19.
[0030] As indicated above, the conventional process described above with reference to FIG. 1 delays boot time initialization due mainly to the requirement of performing SD initialization before performing PCIe initialization even when the card inserted into the socket 4 is an SD Express card rather than an SD card. In addition, the bi-directional analog switch 15 consumes vital space on the SoC 10 and usually increases costs.
[0031] In accordance with embodiments of the present disclosure, auto detection of whether an SD or SD Express card is inserted into socket 4 is performed without the need to first perform SD initialization, which reduces SD Express boot time. Additionally, the need for the analog bi-directional switch 15 is eliminated, which reduces costs and conserves vital space on the SoC 10.
[0032] Referring now to FIG. 2, this figure is a block diagram of a system 200 for performing SD card and SD Express card automatic detection in accordance with an exemplary embodiment. It can be seen in FIG. 2 that the bi-directional analog switch 15 shown in FIG. 1 has been eliminated. Meanwhile, FIG. 3 is a plan view of a standard SD Express card 300 having a standard SD Express pin layout.
[0033] Referring back to FIG. 2, the system 200 comprises an SoC 201 that includes an SDHC 2 and a PCIe controller 3 and an SD Express socket 202 that is compatible with legacy SD cards and with SD Express cards.
[0034] Referring briefly to FIG. 3, it can be seen that the SD Express card 300 includes two pins 301A and 302 that are reserved for future use ( “RFU” ) . In accordance with an exemplary embodiment, one of these RFU pins 301A or 302 is used for SD Express card detection. For purposes of discussion, it will be assumed that RFU pin 301A is used for this purpose. Meanwhile, RFU pin 302 may be used in another exemplary embodiment for this purpose. The remaining numbered pins on SD Express card 300 that include pins numbered 1-17 line up with the pins numbered 1. -17. in socket 202 of FIG. 2.
[0035] Referring now to FIG. 2 again, the numbers of the pins (1. -17. ) of the socket 202 match up with the pin numbers of the SD Express card 300 shown in FIG. 3 as mentioned previously. SD and SD Express cards usually have identical layouts for pin numbers 1 –9, but SD Express cards have an additional row of pin numbers 10 –17 as shown in FIGs. 2-3 to support the PCIe and NVMe interfaces. As mentioned above, SD express card 300 also has RFU pins 301A and 302 that are designed for future uses (including the several uses described in this disclosure) .
[0036] Thus, the socket 202 of FIG. 2 is compatible with SD cards and with SD Express cards. The numbers of the pins shown in FIG. 3 match up with the pin numbers of the socket 202 shown in FIG. 2 such that when the SD Express card 300 of FIG. 3 is inserted into the socket 202, the pins shown in FIG. 3 make contact with the like-numbered pins of the socket 202 shown in FIG. 2. If an SD card (not shown) is inserted into the socket 202, pin numbers 1 –9 make contact with pin #s 1 –9 of the socket 202.
[0037] Referring back to FIG. 2, socket pins #4 and #14 are coupled to VDD1 and VDD2 supply voltage sources 204 and 205, respectively, that supply a 3.3 Volt (V) and a 1.8 V supply voltage, respectively, to the socket 202. The SD_CMD and SD_CLK pin connections #2 and #5 are linked to the SDHC 2.
[0038] The reserved for future use (RFU) pin connection 301B on socket 202 in FIG. 2 is connected to the PCIE_WAKEUP / SDEx_CD general purpose input / output (GPIO) pin 207 of the SoC 201. Because the SD Express card 300 is a passive device, there is no need for a sideband interrupt signal, and therefore the PCIe WAKEUP pin 207 is often left unused. For this reason, this pin 207 preferably is connected to the RFU pin 301B and used for detection of the SD Express card 300.
[0039] By repurposing the GPIO pin 207 to be used for detecting the SD Express card 300, other GPIO pins of the SoC 201 remain available for other purposes. It should be noted, however, that any suitable pin of the SoC 201 can be used for this purpose of detecting an SD Express card 300.
[0040] Referring again to FIG. 2, pin #7, #8, #9 and #1 of the socket 202 corresponds to the SD_DAT0, SD_DAT1, SD_DAT2 and SD_DAT3 pins, respectively, for SD card mode and correspond to RCLK+, RCLK-, CLKREQ and PERST# for SD Express mode. Pin #s 7, 8, 9 and 1 of the socket 202 are connected to the PCIE3_REFCLK+ pin 211, the PCIE3_REFCLK-pin 212, the PCIE3_CLKREQ (GPIO) pin 209 and the PCIE3_RESET pin 208, respectively, of the SoC 201.
[0041] Pin #s 11, 12, 15 and 16 of the socket 202 in FIG. 2 are the positive and negative PCIe transmit data to and receive data from the SoC in SD Express mode. Pin #s 11, 12, 15 and 16 are connected to pins 213, 214, 215 and 216, respectively, of the SoC 201 that are used to transmit and receive data. Pin #s 3, 6, 10, 13 and 17 of the socket 202 are connected to common (i.e. ground) .
[0042] The card detect pin 221 of the socket is connected to the SD_CD pin 217 of the SoC 201. Whenever an SD card or an SD Express card is inserted into the socket 202, the card detect pin 221 of the socket 202 is enabled, which causes the SD driver and the SD Express driver of the SoC 201 to receive an interrupt signal. This causes the SD driver and the SD Express driver to check the status of the RFU pin 301B via pin 207 of the SoC 201.
[0043] The signal output from the RFU pin 301B will only be asserted when an SD Express card is inserted into the socket 202 because there is no RFU pin on the legacy SD card. Based on the SD Express driver of the SoC 201 determining that this signal of the RFU pin 301B is asserted, the SoC 201 and the socket 202 switch to SD Express mode and SD Express initialization is performed per the standard. If the SD driver determines that the signal output from the RFU pin 301B is unasserted / not asserted (i.e. SD Express card 300 of FIG. 3 is not present) , it will continue with SD initialization per the standard.
[0044] Referring now to FIG. 4, this figure is a flow diagram representing the SD and SD Express card detection method in accordance with the exemplary embodiment shown in FIG. 2. Block 401 represents an SD card or an SD Express card 300 being inserted into the socket 202. Block 402 represents the card detect pin 221 of the socket 202 being enabled, causing the SD driver and the SD Express driver of the SoC 201 to receive an interrupt signal.
[0045] Block 403 represents the step of the SD driver of the SDHC 2 and the SD Express driver of the PCIe controller 3 checking the status of the RFU pin 301 via pin 207 of the SoC 201 to determine whether the signal is asserted or unasserted. If the SD driver determines at block 404 that the signal output from the RFU pin 301 is unasserted, it will continue with SD initialization, as indicated by block 405. If the SD Express driver of the SoC 201 determines that this signal is asserted, the Soc 201 and the socket 202 switch to SD Express mode and SD Express initialization is performed, as indicated by block 406.
[0046] Referring now to FIG. 5A, this figure is a block diagram of the system 500 for performing SD card and SD Express card automatic detection in accordance with another exemplary embodiment. It is similar to the embodiment depicted in FIG. 2 except that the socket 502 has a new SD Express card detect pin 501B as does the SD Express card 505 (shown in FIG. 5B with new pin 501A) that is used to detect when an SD Express card has been inserted into the socket 502.
[0047] In contrast to the system 200 shown in FIG. 2, the pin 221 is only used to detect when an SD card has been inserted into the socket 502. In all other respects, the system 500 may be identical to the system 200 shown in FIG. 2.
[0048] When an SD Express card 505 of FIG. 5B that has new pin 501A is inserted into the socket 502 of FIG. 5A, the signal from pin 501B of socket 502 is detected by the PCIE_WAKEUP / SDEX_CD gpio pin 207 and is toggled, which causes the SD Express driver of the PCIe controller 3 (that is part of SoC 201) to receive an interrupt signal.
[0049] Upon receiving this interrupt signal, the SD Express driver of SoC 201 will perform SD Express initialization as per the SD Express standard / specification and invoke the PCIe driver application program interface (API) for link establishment and enumeration. The PCIe driver, in turn, invokes the NVMe storage driver upon successful enumeration. The NVMe storage driver will then perform further storage-related initialization per the standard. The SD Driver, SD Express driver, PCIe driver, and NVMe storage driver may be executed by one or more processors (i.e. see CPU 701 of FIG. 7 described below) which are present on the SoC 201.
[0050] When a “standard” SD card (i.e. not SD Express Card 300) is inserted into the socket 502, the SD card detect pin 221 of the socket 502 is enabled, which causes the SD driver of the SoC 201 to perform SD initialization and enumeration.
[0051] Referring to FIG. 5B, it can be seen that the SD Express card 505 may include a new pin 501A. The SD Express card may still include pins 301A and 302 that are reserved for future use ( “RFU” ) . However, in this exemplary embodiment of FIG. 5B, the two RFU pins 301A & 302 have been crossed-off / denoted with dashed “X” –marks to indicate that these two pins 301A & 302 are not being used and / or they could be removed entirely from this exemplary embodiment, and / or they could be used for different purposes (i.e. other than SD Express detection) . As noted previously, new pin 501A of the SD Express card may align and contact SD Express Card Detect pin 501B of socket 502 of FIG. 5A.
[0052] FIG. 6 is a flow diagram representing the SD and SD Express card detection method 600 in accordance with the exemplary embodiment shown in FIG. 5A. Block 505 represents an SD card or an SD Express card being inserted into the socket 502. Decision block 510 represents whether the SD Express card detect pin 501 of the socket 502 detects and SD Express card. If the inquiry to decision block 510 is positive, meaning that the SD Express card detect pin 501 has detected the SD Express card, then the “Yes” branch is followed to block 515. In block 515, SD Express Card initialization and enumeration is performed by the PCIe controller 3. The method 600 then ends.
[0053] If the inquiry to decision block 510 is negative, meaning that the SD Express card detect pin 501 has not detected the SD Express card, then the “No” branch is followed to decision block 520. In decision block 520, the socket 502 and particularly, the SD Card detect pin 221 of FIG. 5A determines whether a “standard” SD Card has been detected (i.e. by receiving a signal) .
[0054] If the inquiry to decision block 520 is positive, meaning that the “standard” SD card detect pin 221 of FIG. 5A has detected the “standard” SD Express card, then the “Yes” branch is followed to block 525. In block 525, “standard” SD Card initialization and enumeration is performed by the SDHC 2. The method 600 then ends.
[0055] If the inquiry to decision block 520 is negative, meaning that the SD Express card detect pin 221 of FIG. 5A has not detected the “standard” SD card, then the “No” branch is followed where method 600 ends.
[0056] FIG. 7 illustrates an example of a PCD 700, such as a cellular or mobile telephone, smartphone, a tablet personal computer (PC) , a hand-held computer, a palmtop computer, a portable digital assistant (PDA) , a laptop computer, a portable game console such as an Extended Reality (XR) device, a Virtual Reality (VR) device, an Augmented Reality (AR) device, a Mixed Reality (MR) device; and an Internet-of-Things ( “IoT” ) device.
[0057] Such PCDs 700 may support exemplary embodiments of the inventive systems, methods, and computer-readable media described in this disclosure. The PCD 700 may comprise an SoC 201 (also shown in FIGs. 2 & 5A) . The PCD 700 may further comprise the SD Express Card 300, 505 in FIGs. 3 & 5B and the sockets 202, 502 in FIGs. 2 & 5A which are coupled to the CPU 701 on the SoC 201.
[0058] The SoC 201 of the PCD 700 may include a CPU 701, an NPU 705, a GPU 706, a DSP 707, an analog signal processor 708, a modem / modem subsystem 754, and / or other processors. Any processor of the SoC 201 can operate as a host processor for software including, but not limited to, the drivers discussed above. For illustrative purposes, the CPU 701 may operate as the host processor.
[0059] The CPU 701 may include one or more CPU cores, such as a first CPU core 7011, a second CPU core 7012, etc., through an Mth CPU core 701M. A display controller 709 and a touch-screen controller 712 may be coupled to the CPU 701. A touchscreen display 714 external to the SoC 702 may be coupled to the display controller 709 and the touch-screen controller 712.
[0060] The PCD 700 may further include a video decoder 716 coupled to the CPU 101. A video amplifier 718 may be coupled to the video decoder 716 and the touchscreen display 714. A video port 720 may be coupled to the video amplifier 718. A subscriber identity module ( “SIM” ) card 726 may also be coupled to the CPU 101.
[0061] One or more memories 728 may be coupled to the CPU 701. The one or more memories 528 may include both volatile and non-volatile memories. Examples of volatile memories include static random access memory ( “SRAM” ) , dynamic random access memory ( “DRAM” ) , double data rate synchronous DRAM (DDR SDRAM) , etc. Such memories may be external to the SoC 201 or internal to the SoC 201. The one or more memories 728 may also include local cache memory or a system-level cache memory.
[0062] A stereo audio CODEC 734 may be coupled to the analog signal processor 708. An audio amplifier 736 may be coupled to the stereo audio CODEC 734. First and second stereo speakers 738 and 740, respectively, may be coupled to the audio amplifier 736. In addition, a microphone amplifier 742 may be coupled to the stereo audio CODEC 734, and a microphone 744 may be coupled to the microphone amplifier 742.
[0063] A frequency modulation ( “FM” ) radio tuner 746 may be coupled to the stereo audio CODEC 734. An FM antenna 748 may be coupled to the FM radio tuner 746. Further, stereo headphones 750 may be coupled to the stereo audio CODEC 734. Other devices that may be coupled to the CPU 701 include one or more digital (e.g., CCD or CMOS) cameras 752.
[0064] A modem or RF transceiver 754 may be coupled to the analog signal processor 708 and the CPU 701. An RF switch 756 may be coupled to the RF transceiver 754 and an RF antenna 756. A keypad 760 and a mono headset with a microphone 762 may be coupled to the analog signal processor 708. A power supply 774 and a power management IC (PMIC) 776 may supply power to the SoC 702.
[0065] Firmware or software may be stored in any of the above-described memories, or may be stored in a local memory directly accessible by the processor hardware on which the software or firmware executes. Execution of such firmware or software by logic of the CPU 701 may control aspects of any of the above-described methods or configure aspects of any of the above-described systems. Any such memory or other non-transitory storage medium having firmware or software stored therein in computer-readable form for execution by processor hardware may be an example of a “computer-readable medium, ” as the term is understood in the patent lexicon.
[0066] Implementation examples are described in the following numbered clauses:
[0067] 1. A system for automatically detecting a type of memory card inserted into a portable computing device, the system comprising:
[0068] a system on chip (SoC) capable of detecting a first type of memory card and a second type of memory card, the first memory card comprising a secure digital (SD) express memory card;
[0069] the SoC having a general purpose input / output (GPIO) pin, the GPIO pin activating a first communication bus protocol associated with the SD express memory card in response to receiving a first signal;
[0070] a socket coupled to the SoC, the socket having first pin capable of being coupled to a reserved for future use (RFU) pin on the first type of memory card, the first pin relaying the first signal to the GPIO pin when the RFU pin on the first type of memory card is active; and
[0071] the socket having a second pin for detecting a presence of a memory card, the second pin causing an interrupt signal when a memory card is inserted into the socket.
[0072] 2. The system of clause 1, wherein the SoC does not have an analog switch for switching between the first type of memory card and the second type of memory card.
[0073] 3. The system of clause 2, wherein the analog switch comprises a bi-directional analog switch.
[0074] 4. The system of clauses 1-3, wherein the second type of memory card comprises a secure digital (SD) memory card.
[0075] 5. The system of clauses 1-4, wherein the SoC activates a second communication bus protocol associated with the SD memory card when the first signal is not received by the GPIO pin.
[0076] 6. The system of clauses 1-5, wherein the SoC comprises a first controller associated with the first communication bus protocol.
[0077] 7. The system of clause 6, wherein the SoC comprises a second controller associated with a second communication bus protocol.
[0078] 8. The system of clause 1, wherein the portable computing device comprises at least one of: a cellular or mobile telephone, a smartphone, a tablet personal computer (PC) , a hand-held computer, a palmtop computer, a portable digital assistant (PDA) , a laptop computer, a portable game console such as an Extended Reality (XR) device, a Virtual Reality (VR) device, an Augmented Reality (AR) device, a Mixed Reality (MR) device; and an Internet-of-Things ( “IoT” ) device.
[0079] 9. A system for automatically detecting a type of memory card inserted into a portable computing device, the system comprising:
[0080] a system on chip (SoC) capable of detecting a first type of memory card and a second type of memory card, the first memory card comprising a secure digital (SD) express memory card;
[0081] the SoC having a general purpose input / output (GPIO) pin, the GPIO pin activating a first communication bus protocol associated with the SD express memory card in response to receiving a first signal;
[0082] a socket coupled to the SoC, the socket having first pin capable of being coupled to a detection pin on the first type of memory card, the first pin relaying the first signal to the GPIO pin when the detection pin on the first type of memory card is active; and
[0083] the socket having a second pin for detecting a presence of the second type of memory card.
[0084] 10. The system of clause 9, wherein the first type of memory card comprises at least two reserved for future use (RFU) pins in addition to the detection pin.
[0085] 11. The system of clauses 9-10, wherein the SoC does not have an analog switch for switching between the first type of memory card and the second type of memory card.
[0086] 12. The system of clause 11, wherein the analog switch comprises a bi-directional analog switch.
[0087] 13. The system of clauses 9-12, wherein the second type of memory card comprises a secure digital (SD) memory card.
[0088] 14. The system of clauses 9-13, wherein the SoC activates a second communication bus protocol associated with the SD memory card when the first signal is not received by the GPIO pin.
[0089] 15. The system of clauses 9-14, wherein the SoC comprises a first controller associated with the first communication bus protocol.
[0090] 16. The system of clause 15, wherein the SoC comprises a second controller associated with a second communication bus protocol.
[0091] 17. A system for automatically detecting a type of memory card inserted into a portable computing device, the system comprising:
[0092] memory card detection circuitry for detecting a first type of memory card and a second type of memory card inserted into the portable computing device, the first memory card comprising a secure digital (SD) express memory card;
[0093] the memory card detection circuitry further comprising a general purpose input / output (GPIO) pin, the GPIO pin activating a first communication bus protocol associated with the SD express memory card in response to receiving a first signal;
[0094] a socket coupled to the memory card detection circuitry, the socket having first pin capable of being coupled to a reserved for future use (RFU) pin on the first type of memory card, the first pin relaying the first signal to the GPIO pin when the RFU pin on the first type of memory card is active; and
[0095] the socket having a second pin for detecting a presence of a memory card, the second pin causing an interrupt signal when a memory card is inserted into the socket.
[0096] 18. The system of clause 17, wherein the memory card detection circuitry comprises a System on Chip (SoC) having a controller.
[0097] 19. The system of clauses 17-18, wherein the SoC does not have an analog switch for switching between the first type of memory card and the second type of memory card
[0098] 20. The system of clauses 17-19, wherein the second type of memory card comprises a secure digital (SD) memory card.
[0099] Alternative embodiments will become apparent to one of ordinary skill in the art to which the invention pertains in view of the present disclosure. Therefore, although selected aspects have been illustrated and described in detail, it will be understood that various substitutions and alterations may be made therein.
Claims
1.A system for automatically detecting a type of memory card inserted into a portable computing device, the system comprising:a system on chip (SoC) capable of detecting a first type of memory card and a second type of memory card, the first memory card comprising a secure digital (SD) express memory card;the SoC having a general purpose input / output (GPIO) pin, the GPIO pin activating a first communication bus protocol associated with the SD express memory card in response to receiving a first signal;a socket coupled to the SoC, the socket having first pin capable of being coupled to a reserved for future use (RFU) pin on the first type of memory card, the first pin relaying the first signal to the GPIO pin when the RFU pin on the first type of memory card is active; andthe socket having a second pin for detecting a presence of a memory card, the second pin causing an interrupt signal when a memory card is inserted into the socket.2.The system of claim 1, wherein the SoC does not have an analog switch for switching between the first type of memory card and the second type of memory card.3.The system of claim 2, wherein the analog switch comprises a bi-directional analog switch.4.The system of claim 1, wherein the second type of memory card comprises a secure digital (SD) memory card.5.The system of claim 4, wherein the SoC activates a second communication bus protocol associated with the SD memory card when the first signal is not received by the GPIO pin.6.The system of claim 1, wherein the SoC comprises a first controller associated with the first communication bus protocol.7.The system of claim 6, wherein the SoC comprises a second controller associated with a second communication bus protocol.8.The system of claim 1, wherein the portable computing device comprises at least one of: a cellular or mobile telephone, a smartphone, a tablet personal computer (PC) , a hand-held computer, a palmtop computer, a portable digital assistant (PDA) , a laptop computer, a portable game console such as an Extended Reality (XR) device, a Virtual Reality (VR) device, an Augmented Reality (AR) device, a Mixed Reality (MR) device; and an Internet-of-Things ( “IoT” ) device.9.A system for automatically detecting a type of memory card inserted into a portable computing device, the system comprising:a system on chip (SoC) capable of detecting a first type of memory card and a second type of memory card, the first memory card comprising a secure digital (SD) express memory card;the SoC having a general purpose input / output (GPIO) pin, the GPIO pin activating a first communication bus protocol associated with the SD express memory card in response to receiving a first signal;a socket coupled to the SoC, the socket having first pin capable of being coupled to a detection pin on the first type of memory card, the first pin relaying the first signal to the GPIO pin when the detection pin on the first type of memory card is active; andthe socket having a second pin for detecting a presence of the second type of memory card.10.The system of claim 9, wherein the first type of memory card comprises at least two reserved for future use (RFU) pins in addition to the detection pin.11.The system of claim 10, wherein the SoC does not have an analog switch for switching between the first type of memory card and the second type of memory card.12.The system of claim 11, wherein the analog switch comprises a bi-directional analog switch.13.The system of claim 1, wherein the second type of memory card comprises a secure digital (SD) memory card.14.The system of claim 13, wherein the SoC activates a second communication bus protocol associated with the SD memory card when the first signal is not received by the GPIO pin.15.The system of claim 9, wherein the SoC comprises a first controller associated with the first communication bus protocol.16.The system of claim 15, wherein the SoC comprises a second controller associated with a second communication bus protocol.17.A system for automatically detecting a type of memory card inserted into a portable computing device, the system comprising:memory card detection circuitry for detecting a first type of memory card and a second type of memory card inserted into the portable computing device, the first memory card comprising a secure digital (SD) express memory card;the memory card detection circuitry further comprising a general purpose input / output (GPIO) pin, the GPIO pin activating a first communication bus protocol associated with the SD express memory card in response to receiving a first signal;a socket coupled to the memory card detection circuitry, the socket having first pin capable of being coupled to a reserved for future use (RFU) pin on the first type of memory card, the first pin relaying the first signal to the GPIO pin when the RFU pin on the first type of memory card is active; andthe socket having a second pin for detecting a presence of a memory card, the second pin causing an interrupt signal when a memory card is inserted into the socket.18.The system of claim 17, wherein the memory card detection circuitry comprises a System on Chip (SoC) having a controller.19.The system of claim 18, wherein the SoC does not have an analog switch for switching between the first type of memory card and the second type of memory card.20.The system of claim 19, wherein the second type of memory card comprises a secure digital (SD) memory card.