An example computing device includes: an option card receptacle to receive an option card; a controller interconnected with the option card receptacle, the controller to: apply a first voltage input to the option card in the option card receptacle and detect a first output from the option card; apply a second voltage input to the option card in the option card receptacle and detect a second output from the option card; determine an identifier of the option card based on a combination of the first output and the second output.
Legal claims defining the scope of protection, as filed with the USPTO.
an option card receptacle to receive an option card; apply a first voltage input to the option card in the option card receptacle and detect a first output value from the option card; apply a second voltage input to the option card in the option card receptacle and detect a second output value from the option card, wherein the second voltage is distinct from the first voltage; determine an identifier of the option card based on a combination of the first output value and the second output value; and based on the identifier of the option card, configure the option card for the computing device. a controller interconnected with the option card receptacle, the controller to: . A computing device comprising:
claim 1 . The computing device of, wherein the first voltage input is applied to the option card when the computing device is in a first power state, and the second voltage input is applied to the option card when the computing device is in a second power state.
claim 2 . The computing device of, wherein the first power state comprises a sleep state and the second power state comprises a power-on state.
claim 1 . The computing device of, wherein the controller is to detect the first output value and the second output value at an analog-to-digital converter pin detecting first voltage values and second voltage values, respectively, output values from the option card.
claim 1 . The computing device of, wherein the controller is to retrieve a multi-state identifier mapping to determine the identifier of the option card when the first output value and the second output value are different.
claim 1 . The computing device of, wherein the controller is to retrieve a legacy identifier mapping to determine the identifier of the option card when the first output value and the second output value are the same.
an option card receptacle to receive an option card; apply a first voltage input to the option card in the option card receptacle when the computing device is in a first power state and detect a first output value from the option card; in response to the computing device transitioning to a second power state, apply a second voltage input to the option card in the option card receptacle and detect a second output value from the option card, wherein the second voltage is distinct from the first voltage; determine an identifier of the option card based on a combination of the first output value and the second output value; and based on the identifier of the option card, configure the option card for the computing device. a controller interconnected with the option card receptacle, the controller to: . A computing device comprising:
claim 7 . The computing device of, wherein the first and second output values represent voltage steps output from the option card.
claim 7 identify a first range of a plurality of predefined ranges in which the first output value fails; identify a second range of the plurality of predefined ranges in which the second output value fails; and select an option card identifier corresponding to the first range and the second range as the identifier of the option card. . The computing device of, wherein to determine the identifier, the controller is to:
claim 9 use a multi-state identifier mapping to select a multi-state option card identifier as the identifier of the option card when the first range and the second range are different; and use a legacy identifier mapping to select a legacy option card identifier as the identifier of the option card when the first range and the second range are the same. . The computing device of, wherein the controller is to:
Complete technical specification and implementation details from the patent document.
A variety of option cards may be used in computing devices to provide the computing device with additional functionality, such as additional input port types, graphics capabilities, and similar. The computing devices may use one of the pins of the option card to identify the option card to correctly configure the option card.
Option cards communicate their identity via one of their pins by outputting a voltage in a predefined range, or a voltage step with a magnitude within a predefined range. For example, one pin may support up to 16 predefined ranges (15 active ranges and a zero or no-option card range), and hence up to 16 identifiers. However, as the number of options grows, the number of identifiers also increases. If more than 16 identifiers are employed, it may be inefficient to use another pin to increase the number of identifiers possible for the option card. Additionally, adding another identification pin may lead to incompatibility with older cards.
An example computing device may identify option cards using multiple power state inputs. That is, the computing device may apply a first voltage input to the option card and receive a corresponding first output from the option card. The computing device may additionally apply a second voltage input to the option card and receive a corresponding second output from the option card. In particular, the first and second voltage inputs may correspond to different power states of the computing device. The computing device may use the combination of the first output and the second output to determine the identifier of the option card.
In particular, to enable such a determination, the option cards themselves may include a circuit which provides a first output in response to the first voltage input and a second output in response to the second voltage input. For example, the option cards may include a circuit having two resistors forming a resistor divider, as well as a third resistor which is conditionally added in series and forms part of the resistor divider based in the input voltage. Hence, at a first input voltage, the resistor divider does not include the third resistor and results in a first output, and at the second input voltage, the resistor divider includes the third resistor and results in a second output. Since the additional resistor is added to the resistor divider, the combination of two different active ranges may only be achieved in one way, and hence the option cards may provide 15 choose 2 (15 active ranges, of which two are selected), or 105 active range combinations, as well as a zero or no-option card range, for a total of 106 possible identifiers.
1 FIG. 100 100 100 102 104 shows a block diagram of an example computing devicewhich identifies option cards based on multiple power state inputs. The computing devicemay be a desktop computer, a notebook or laptop computer, an all-in-one (AIO) computing device, or other suitable computing device. The computing deviceincludes an option card receptacleand a controllerinterconnected with the option card receptacle.
102 106 102 100 102 100 102 106 The option card receptacleis to receive an option card. For example, the option card receptaclemay be a slot on a motherboard (not shown) of the computing device. In some examples, the option card receptaclemay further include an aperture or the like in a housing of the computing device, for example to accommodate an external interface of the option card (e.g., a port or the like). The option card receptaclemay further include pin interfaces to interface with the pins of the option card.
104 104 104 104 The controllermay include a central processing unit (CPU), a microcontroller, a microprocessor, a processing core, or similar device capable of executing instructions. In particular, the controllermay be a chip or integrated circuit integrated on the motherboard of the computing device. The controllermay also be interconnected with a non-transitory machine-readable storage medium, such as a memory, that may be electronic, magnetic, optical, or other physical storage device that stores executable instructions. The memory may be integrated with the controller.
104 106 106 102 106 106 104 106 104 104 104 106 The controlleris generally to apply voltage inputs to the option cardand to obtain output values from the option card. In particular, the option card receptaclemay include an input interface to input a voltage input to the option cardand an output interface to read the outputs from the option card. The output interface may be an analog-to-digital pin (e.g., associated with the controller) which is capable of receiving an analog output from the option cardand converting the analog output to a digital value for processing by the controller. Accordingly, the controllermay control the voltage inputs applied at the input interface to the option card. Additionally, the controllermay analyze the outputs received from the option cardto determine an identifier of the option card.
2 FIG. 106 106 200 100 202 100 204 200 202 Turning now to, a block diagram of the example option cardis depicted. The option cardincludes an input pinto receive a voltage input from the computing device, an output pinto provide an output to the computing device, and a circuitconnected to the input pinand to the output pin.
200 100 204 202 204 100 The input pinmay be a suitable pin which may receive a voltage input from the computing deviceto be applied to the circuit. The output pinbe a suitable pin to receive a voltage output from the circuitand provide the voltage to the computing device.
204 200 204 204 204 The circuitincludes suitable components (e.g., including resistors, switches, field-effect transistors, and the like) to conditionally produce at least different first and second outputs based on the voltage input received from the input pin. In other words, the circuitproduces a first output when a first voltage input is applied to the circuit, and a second output when a second voltage input is applied to the circuit.
106 102 104 106 200 104 106 202 102 100 104 106 200 104 106 202 104 In operation, when the option cardis received in the option card receptacle, the controllermay apply a first voltage input to the option cardvia the input interface and the input pin. In particular, the first voltage input may correspond to a first power state (e.g., a sleep or low-power state). The controllermay further detect a first output from the option cardvia the output pinand the output interface of the option card receptacle. When the computing devicetransitions to a second power state (e.g., a power on state), the controllermay apply a second voltage input to the option card, via the input interface and the input pin. The second voltage input may correspond to the second power state. The controllermay further detect a second output from the option cardvia the output pinand the output interface. The controllermay then determine an identifier of the option card based on a combination of the first output and the second output.
3 FIG. 204 For example,is a schematic diagram of an example circuitwhich conditionally produces different first and second outputs based on the voltage input received.
204 300 302 304 306 204 308 300 302 106 308 106 308 202 100 1 2 The circuitincludes a first resistorhaving a resistance Rand a second resistorRforming a resistor dividerextending from a first source. The circuitfurther includes an output pointbetween the first resistorand the second resistorwhich provides the output used to determine the identifier of the option card. That is, the voltage reading at the output pointdefines the identifier of the option card. Accordingly, the output pointis connected to the output pinto provide the output to the computing device.
204 310 304 310 312 312 308 304 312 314 316 318 320 320 200 106 100 3 The circuitfurther includes a third resistorhaving a resistance Rwhich is conditionally included in the resistor dividerbased on the voltage input. In particular, the third resistoris provided in parallel with a metal-oxide-semiconductor field effect transistor(simply referred to herein as transistor) to enable the conditional inclusion of the third resistorin the resistor divider. The transistoris fed by a linebetween a fourth resistorextending from a second sourceand a second metal-oxide-semiconductor field effect transistor, and the second transistoris fed by the input pinof the option cardand receives voltage inputs from the computing device.
204 312 310 320 318 200 In other examples, the circuitmay include the first transistorand third resistorto produce the conditional outputs. In other words, the second transistorand second sourcemay be optional to invert the signal received from the input pin, as will be described further below.
4 FIG.A 204 400 400 100 400 400 320 402 318 316 314 314 402 312 320 100 316 318 For example, referring to, a schematic diagram of the voltages applied in the circuitupon application of a first voltage inputis depicted. In particular, the first voltage inputcorresponds to the signal generated by the computing devicein the first power state, or sleep state. Accordingly, the first voltage inputhas a relatively low voltage. In response to the low first voltage input, the second transistorprovides a high resistance. Accordingly, a voltageapplied by the second sourcethrough the fourth resistoris directed primarily to the line. The linethus applies a relatively high voltage inputto the first transistor. In other words, the transistoreffectively serves to invert the signal received from the computing device, while the fourth resistorstabilizes the signal from the second source.
402 312 404 306 312 310 406 308 300 302 1 2 1 2 In response to the relatively high voltageapplied, the first transistorprovides a low resistance. Accordingly, a voltageapplied by the first sourceis substantially shorted through the transistorrather than being routed through the third resistor. The voltageat the output point, is therefore defined by the ratio of the resistance of the first resistorto the resistance of the second resistor, i.e., R/R. Hence, the first output corresponding to the first power state (i.e., the sleep state) is also defined by the ratio R/R.
4 FIG.B 204 410 410 100 410 410 320 412 318 316 320 414 314 312 320 100 316 318 Referring to, a schematic diagram of the voltages applied in the circuitupon application of a second voltage inputis depicted. In particular, the second voltage inputcorresponds to the signal generated by the computing devicein the second power state, or power-on state (S0). Accordingly, the second voltage inputhas a relatively high voltage. In response to the high voltage input, the second transistorprovides a low resistance. Accordingly, a voltageapplied from the second sourcethrough the fourth resistoris directed primarily through the transistor. A relatively low voltageis therefore directed through the lineto the first transistor. The transistortherefore still serves to invert the signal received from the computing device, while the fourth resistorstabilizes the signal from the second source.
414 312 416 306 310 418 308 300 302 310 1 2 3 1 2 3 In response to the relatively low voltageapplied, the first transistorprovides a high resistance. Accordingly, a voltageapplied by the first sourceis directed through the third resistor. The voltageat the output pointis therefore defined by the ratio of the resistance of the first resistorto the sum of the resistances of the second resistorand the third resistor, i.e., R/(R+R). Hence, the second output corresponding to the second power state (i.e., the power-on state) is also defined by the ratio R/(R+R).
5 FIG. 1 2 FIGS.and 500 500 100 500 Referring to, an example methodof identifying an option card using multiple power state inputs is depicted. The methodwill be described in conjunction with its performance by the computing device, with reference to the components described in. In other examples, the methodmay be performed by other suitable devices and/or systems.
502 104 100 106 102 104 200 106 100 104 106 100 At block, the controllerof the computing deviceapplies a first voltage input to the option cardin the option card receptacle. In particular, the controllermay apply the first voltage input via the input interface to the input pinof the option card. The first voltage input may correspond to a first power state of the computing device. For example, the first power state may be a sleep state, and hence the first voltage input may have a relatively low magnitude. In some examples, the controllermay periodically sample the output from the option cardwhile the computing deviceis in the sleep state.
502 104 106 104 202 106 204 202 104 Additionally, at block, the controllerdetects a first output of the option cardas a result of the application of the first voltage input. In particular, the controllermay detect the first output via the output interface to the output pinof the option card. The first output may represent, for example, a voltage value, or magnitude of a voltage step output from the circuit. Upon receipt of an analog voltage output from the output pin, the controllermay convert the analog voltage to a digital value for further processing.
504 104 106 102 104 200 106 100 504 100 104 100 At block, the controllerapplies a second voltage input to the option cardin the option card receptacle. In particular, the controllermay apply the second voltage input via the input interface to the input pinof the option card. The second voltage input may correspond to a second power state of the computing device. In particular, the performance of blockmay be initiated when the computing devicetransitions from the first power state to the second power state. For example, the second power state may be a power-on state, and hence the application of the second voltage input by the controllermay be performed in response to the computing devicebeing powered on. Further, the second voltage input may have a relatively high magnitude corresponding with signals associated with the power-on state.
504 104 106 104 202 106 204 Additionally, at block, the controllerdetects a second output of the option cardas a result of the application of the second voltage input. In particular, the controllermay detect the second output via the output interface to the output pinof the option card. The second output may represent, for example, a voltage value, or a magnitude of a voltage step output from the circuit.
100 104 104 102 106 502 504 In some examples, the computing devicemay additionally include a resistor which provides a pull down signal to the controllerto allow the controllerto still receive a signal and when no option card is present in the option card receptacle. This resistor contributes to the resistor divider of the option card, and hence may be considered when considering the first and second outputs at blocksand.
506 104 106 106 At block, the controllerretrieves a multi-state identifier mapping (e.g., from a memory) to determine the identifier of the option card. In particular, the multi-state identifier mapping may include associations between the combinations of possible first and second outputs with an identifier of the option card.
204 For example, the first and second outputs may represent voltage steps output from the circuit. To account for minor variances in the output based on imperfections in circuit construction, nearby components causing minor interference, or the like, the multi-state identifier mapping may define ranges for the outputs in the first power state and the second power state, and associate said ranges to the option card identifier. For example, Table 1 shows an example multi-state identifier mapping.
TABLE 1 Multi-state identifier mapping Power-on state (S0) Sleep State (S5) Option Card S0 step min S0 step max S5 step min S5 step Identifier [Hex] [Hex] [Hex] max] No card 0 7 0 7 1 8 12 8 12 2 13 01E 8 12 3 01F 02B 8 12 . . . . . . . . . . . . . . . 14 13 01E 13 01E 15 01F 02B 13 01E 16 02C 32 13 01E . . . . . . . . . . . . . . .
In the above table, a range of magnitudes for the voltage step detected in each of the power states (power-on state or S0 and sleep state or S5) is defined. Each combination of ranges is associated with an option card identifier.
508 104 104 At block, the controllerdetermines whether the first output and the second output are substantially the same. That is, the controllermay determine whether the first output and the second output both fall within the same range as defined in the multi-state identifier mapping. Option cards built in accordance with the present description include a circuit with an output that varies based on the voltage input. Accordingly, the first output and the second output will differ between the first voltage input and the second voltage input based on the differences of the voltage inputs applied in the first power state and the second power state. In contrast, legacy option cards have a circuit which produces the same output irrespective of the voltage input. Accordingly, the first output and the second output will be substantially the same for both the first voltage input and the second voltage input.
508 104 500 512 If, at block, the controllerdetermines that the first output and the second output are not the same, the methodproceeds to block, as described below.
508 104 500 510 500 510 If, at block, the controllerdetermines that the first output and the second output are substantially the same (i.e., that the first output and the second output both fall within the same one of the predefined ranges of the multi-state identifier mapping), the methodproceeds to block. In some examples, certain rows of the multi-state identifier mapping (i.e., rows which for which the ranges for the first power state and the second power state are the same) may be flagged to cause the methodto proceed to block.
510 104 106 106 106 At block, the controllerretrieves a legacy identifier mapping (e.g., from a memory) to determine the identifier of the option card. In particular, the legacy identifier mapping may include a further of the multi-state identifier of the option cardwith a legacy identifier of the option card. For example, Table 2 shows an example legacy identifier mapping.
TABLE 2 Legacy identifier mapping Power-on State (S0) Sleep State (S5) Option Card Option Card S0 step S0 step S5 step S5 Identifier Identifier min max min step (legacy) (multi-state) [Hex] [Hex] [Hex] max] 1 No card 0 7 0 7 2 1 8 12 8 12 3 14 13 01E 13 01E . . . . . . . . . . . . . . . . . .
In the above table, a range of magnitudes for the voltage step detected in each of the power states (power-on state or S0 and sleep state or S5) is defined and is the same range for both power states. Further, each range corresponds to a multi-state option card identifier as well as a legacy option card identifier.
512 104 106 506 510 104 506 510 At block, the controllerdetermines the identifier of the option cardbased on the mapping(s) retrieved at blocksand. In particular, the controllermay identify a first range of the predefined ranges (i.e., defined in the mapping(s) retrieved at blockand/or) in which the first output falls, and a second range of the predefined ranges in which the second output falls.
104 106 104 For example, the controllermay simply use the multi-state identifier mapping to identify the row having the first and second ranges select the corresponding option card identifier as the identifier of the option card. In particular, the controllermay use the multi-state identifier mapping when the first range and the second range are different.
104 106 104 106 In some examples, when the first range and the second range are the same, after identifying the multi-state option card identifier, the controllermay additionally use the legacy identifier mapping to identify the legacy option card identifier corresponding to the multi-state option card identifier and select the legacy option card identifier as the identifier of the option card. In other examples, when the first range and the second range are the same, rather than identifying the multi-state option card identifier, the controllermay use the legacy identifier mapping to identify the row having the range in which the first output and the second output fall and select the corresponding legacy option card identifier as the identifier of the option card.
As described above, example computing devices and option cards may allow for the number of option card identifiers transmitted by a single option card pin to be expanded by using multiple voltage inputs and using a combination of the multiple corresponding outputs to determine the identifier of the option card. The option cards may include a circuit which, in addition to the traditional two resistors forming the resistor divider from which the identifier is obtained, also includes a third resistor. The third resistor is conditionally included in series and forms part of the resistor divider based on the voltage input. Hence, at a first voltage input, the resistor divider does not include the third resistor and results in a first output, and at a second voltage input, the resistor divider does include the third resistor and results in a second output.
To provide the different input voltages, the computing device may apply the first input voltage when it is in a first power state (e.g., sleep state) and the second input voltage when it is in a second power state (e.g., power on state). By using the combination of voltages in each of the states, more identifiers may be communicated on a single pin. Additionally, the option card circuitry structure and computing device readings allow backwards compatibility with option cards without the new resistors. In particular, legacy option cards do not produce outputs which are conditional upon high or low voltage inputs; rather, they produce the same output regardless of input. Accordingly, if the computing device detects that the outputs are different, it may use a multi-state identifier mapping to determine the identifier of the option card, while if the outputs are the same, it may use a legacy identifier mapping to determine the identifier of the option card.
The scope of the claims should not be limited by the above examples, but should be given the broadest interpretation consistent with the description as a whole.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
June 28, 2021
July 21, 2026
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.