1. A stress detection circuit comprising:
a function block that outputs a first voltage, the first voltage varying in response to an extent that the function block is stressed;
a reference block that is activated during a test mode to provide a second voltage, a level of the second voltage corresponding to a level of the first voltage before the function block is stressed; and
a detection signal generation circuit configured to generate a stress result detection signal based upon the first voltage output from the function block and the second voltage output from the reference block during the test mode, wherein the detection signal generation circuit includes a transistor having a gate for receiving an upper reference voltage and another transistor having another gate for receiving a lower reference voltage, a different between the upper reference voltage and the lower reference voltage corresponding to a reference value for determining whether the function block has failed.
2. The stress detection circuit of claim 1 wherein the detection signal generation circuit comprises:
a first detection unit configured to compare the reference value with the second voltage subtracted from the first voltage to generate a first bit of the stress detection signal; and
a second detection unit configured to compare the reference value with the first voltage subtracted from the second voltage to generate a second hit of the stress detection signal.
3. The stress detection circuit of claim 2, wherein each of the first and second detection units comprises:
current paths, each current path for generating a current in proportion to a sum of a first one of the first and second voltages and a second one of the upper and lower reference voltages.
4. The stress detection circuit of claim 2, wherein each of the first and second detection units comprises:
a first current path including a first resistor, a first transistor, and a second transistor, the first resistor being coupled between a power supply voltage and a first node, drains of the first and second transistors being commonly coupled to the first node;
a second current path including a second resistor, a third transistor and a fourth transistor, the second resistor being coupled between the power supply voltage and second node, drains of the third and fourth transistors being commonly coupled to the second node;
a first current source coupled between a first bias node and a ground voltage, sources of the first and third transistors being commonly coupled to the first bias node;
a second current source coupled between a second bias node and the ground voltage, sources of the second and fourth transistors being commonly coupled to the second bias node; and
a comparator configured to compare voltages at the first and second nodes to generate One of the first or second bit of the stress detect signal.
5. The stress detection circuit of claim 4, wherein in the first detection unit, a gate of the first transistor receives first voltage, a gate of the second transistor receives the lower reference voltage, a gate of the transistor receives the second voltage, and a gate of the fourth transistor receives the upper reference voltage; and a
wherein in the second detection unit, a gate of the first transistor receives the second voltage, a gate of second transistor receives lower reference voltage, a gate of the third transistor receives the first voltage, and a gate of the fourth transistor receives the upper reference voltage.
6. A stress detection circuit comprising:
a function block that outputs a first voltage, the first voltage varying in response to an extent that the function block is stressed;
a reference block that is activated during a test mode to provide a second voltage, a level of the second voltage corresponding to a level of the first voltage before the function block is stressed; and
a detection signal generation circuit configured to generate a stress result detection signal based upon the first voltage output from the function block and the second voltage output from the reference block during the test mode, wherein the detection signal generation circuit includes a plurality of transistors having gates for respectively receiving each of k upper reference voltages, where k is an integer greater than 1, and a plurality of transistors having gates for respectively receiving each k lower reference voltages, each difference between each upper reference voltage and each corresponding lower reference voltage respectively corresponding to each of k reference values for determining a stress level of the function block.
7. The stress detection circuit of claim 6, wherein the detection signal generation circuit further comprises:
k first detection units configured to compare the reference values with the second voltage subtracted from the first voltage to generate k first bits of the stress detection signal, respectively; and
k second detection units configured to compare the reference values with the first voltage subtracted from the second voltage to generate k second bits of the stress detection signal, respectively.
8. The stress detection circuit of claim 7, wherein each of the first and second detection units comprises:
current paths, each current path fur generating a current in proportion to a sum of a first one of the first and second voltages and a second one of the upper and lower reference voltages, respectively.
9. A stress detection circuit comprising:
a function block that outputs a first voltage, the first voltage varying in response to an extent that the function block is stressed;
a reference block that is activated during a test mode to provide a second voltage, a level of the second voltage corresponding to a level of the first voltage before the function block is stressed; and
a detection signal generation circuit configured to generate a stress result detection signal based upon the first voltage output from the function block and the second voltage output from the reference block during the test mode, wherein the reference block comprises:
a dummy block having a configuration substantially identical to the function block; and
a switching unit configured to pass an input signal during test mode so that the dummy block outputs the second voltage and configured to block the input signal during a normal operation mode that the dummy block is prevented from being stressed by the input signal.
10. A semiconductor chip comprising:
inputoutput pins for transferring signals with an external device;
a function block that outputs a first voltage, the first voltage varying in response to an extent that the function block is stressed;
a reference block that is activated during a test mode to provide a second voltage, a level of the second voltage corresponding to a level of the first voltage before the function block is stressed;
detection signal generation circuit configured to generate a stress result detection signal based upon the first voltage output from the function block and the second voltage output form the reference block during the test mode; and
an interface unit configured to output the stress result detection signal during the test mode through at least one of the inputoutput pins.
11. The semiconductor chip of claim 10, wherein the interface unit comprises:
at least one multiplexer configured to select one of the stress detection signal and an output signal during a normal operation mode in response to a test mode signal, and configured to output the selected signal through the at least one of the inputoutput pins.
12. The semiconductor chip of claim 10, wherein the detection signal generation circuit includes a transistor having a gate for receiving an upper reference voltage and another transistor having another gate for receiving a lower reference voltage, a difference between the upper reference voltage and the lower reference voltage corresponding to a reference value for determining whether the function block has failed.
13. The semiconductor chip of claim 12, wherein the detection signal generation circuit comprises:
a first detection unit configured to compare the reference value with the second voltage subtracted from the first voltage to generate a first bit of the stress detection signal; and
a second detection unit configured to compare the reference value with the first voltage subtracted from the second voltage to generate a second bit of the stress detection signal.
14. The semiconductor chip of claim 13, wherein each of the first and second detection units comprises:
current paths, each current path for generating a current in proportion to a sum of a first one of the first and second voltages and a second one of the upper and lower reference voltages.
15. The semiconductor chip of claim 10, wherein the detection signal generation circuit includes a plurality of transistors having gates for respectively receiving each of k upper reference voltages, where k is an integer greater than 1, and a plurality of transistors having gates for respectively receiving each of k lower reference voltages, each difference between each upper reference voltage and each corresponding lower reference voltage respectively corresponding to each of k reference values for determining a stress level of the function block.
16. The semiconductor chip of claim 15, wherein the detection signal generation circuit further comprises:
k first detection units configured to compare the reference values with the second voltage subtracted from the first voltage to generate k first bits of the stress detection signal, respectively; and
k second detection units configured to compare the reference values with the first voltage subtracted from the second voltage to generate k second bits of the stress detection signal, respectively.
17. The semiconductor chip of claim 16, wherein each of the first and second detection units comprises:
current paths, each current path for generating a current in proportion to a sum of a first one of the first and second voltages and a second one of the upper and lower reference voltages, respectively.
18. The semiconductor chip of claim 10, wherein the reference block comprises:
a dummy block having a configuration substantially identical to the function block; and
a switching unit configured to pass an input signal during the test mode so that the dummy block output the second voltage and configured to block the input signal during a normal operation mode so that the dummy block is prevented from being stressed by the input signal.
The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.
1. In a proxy server in communication with a network, a method of supporting a plurality of user sessions for a plurality of electronic devices, comprising:
intercepting, at the proxy server, a first user request from a first electronic device directed to a first back-end server, the first user request including first data comprising a device identifier indicative of a vendor and model associated with the first electronic device;
mapping, at the proxy server, the first data comprising the device identifier of the first electronic device to a first session scheme based on the vendor and model associated with the first electronic device from which the first user request is received, the first session scheme determining one or more session tracking characteristics for a first user session;
determining whether a first session key exists that conforms with one or more session tracking characteristics determined by the first session scheme;
upon determining the first session key does not exist:
searching for valid credentials associated with the first electronic device that were previously received by the proxy server; and
upon finding valid credentials, establishing the first session key of a first type as determined by the first session scheme, the first session key holding a client state for the first user session that is stored by the electronic device;
intercepting, at the proxy server, a second user request from a second electronic device directed to a second back-end server, the second user request including second data comprising a device identifier indicative of a vendor and model associated with the second electronic device;
mapping, at the proxy server, the second data comprising the device identifier of the second electronic device to a second session scheme based on the vendor and model associated with the second electronic device from which the second user request is received, the second session scheme determining one or more session tracking characteristics for a second user session;
establishing the second user session having one or more session tracking characteristics determined by the second session scheme; and
establishing a second session key of a second type as determined by the second session scheme, the second session key holding a client state for the second user session that is stored by the electronic device;
wherein the first data and the second data distinguish the first electronic device from the second electronic device;
wherein the first type of session key determined by the first session scheme is different from the second type of session key determined by the second session scheme; and
wherein the first user session co-exists at least in part with the second user session.
2. The method of claim 1, wherein the first electronic device comprises a desktop computer and the second electronic device comprises a mobile telephone.
3. The method of claim 1, wherein receiving the first user request further comprises authenticating the request.
4. The method of claim 1, wherein receiving the first user request further comprises determining authorizations for the request.
5. The method of claim 1, further comprising forwarding at least one of the first user request and the second user request to a third electronic device.
6. The method of claim 5, further comprising receiving a response from the third electronic device.
7. The method of claim 1, wherein mapping the first data to the first session scheme comprises examining an HTTP header to identify a type of the first electronic device.
8. The method of claim 1, further comprising utilizing an application program interface to generate at least one API session scheme capable of retrieval of the first session key to locate the first user session stored in one of a cookie, a persistent session store, and a storage device.
9. The method of claim 8, wherein the API session scheme includes at least one of a context validation function, a retrieval function, a create key function, a create session function, an update function, and a logout function.
10. The method of claim 1, further comprising:
receiving a subsequent user request from the first electronic device, the subsequent user request including the first data;
mapping the first data included in the subsequent user request to the first session scheme; and
retrieving the first session key as determined by the first session scheme.
11. The method of claim 1, wherein the first type of session key and the second type of session key are selected from a group consisting of cookies, secure sockets layer identifiers, IP addresses, device identifiers, and re-written URLs.
12. The method of claim 10, further comprising utilizing the first session key to locate the first user session.
13. The method of claim 12, wherein utilizing the first session key comprises locating the first user session in one of a cookie, a persistent session store, and a storage device, and providing access to the user session.
14. The method of claim 10, further comprising:
forwarding the first user request to a third electronic device;
receiving a response from the third electronic device; and
forwarding the response to the first electronic device.
15. The method of claim 1, wherein the first type of session key is a cookie and the second type of session key is selected from a group consisting of a secure sockets layer identifier, an IP address, a device identifier, and a re-written URL.
16. The method of claim 1, wherein the first type of session key is a re-written URL and the second type of session key is selected from a group consisting of a secure sockets layer identifier, a device identifier, and an IP address.
17. The method of claim 1, wherein the first type of session key is a secure sockets layer identifier and the second type of session key is selected from a group consisting of a device identifier and an IP address.
18. The method of claim 1, further comprising:
intercepting, at the proxy server, a third user request from a third electronic device, the third user request including third data comprising an attribute of the third electronic device;
mapping, at the proxy server, the third data comprising an attribute of the third electronic device to a third session scheme, the third session scheme determining one or more session tracking characteristics for a third user session;
establishing the third user session having one or more session tracking characteristics determined by the third session scheme; and
establishing a third session key of a third type as determined by the third session scheme, the third session key holding a client state for the third user session;
wherein the first data, the second data and the third data distinguish the first electronic device, the second electronic device, and the third electronic device from one another;
wherein the first type of session key determined by the first session scheme, the second type of session key determined by the second session scheme, and the third type of session key determined by the third session scheme are each of different types from one another; and
wherein the first user session, second user session, and third user session co-exists at least in part with one another.
19. The method of claim 1, wherein the device identifier indicative of a type of device of the first electronic device comprises a device identifier indicative of the type of device of the first electronic device identifying a device type selected from the group consisting of a pocket PC type of device, a smart phone type of device, a television set interface type of device, a personal data assistant type of device, and a personal computer type of device.
20. The method of claim 1, further comprising mapping the first and second user requests to first and second uniform resource locator addresses associated with the first and second backend servers, respectively.
21. The method of claim 1, wherein the proxy server is managed by the vendor of the first electronic device.
22. The method of claim 1, further comprising adding a proxy server identifier to the first and second user requests, the proxy server identifier specifically designating the proxy server that intercepted the first and second user requests.
23. The method of claim 1, wherein the second back-end server is different than the first back-end server.
24. In a proxy server in communication with a network, a method of supporting a plurality of user sessions for a plurality of electronic devices, comprising:
intercepting, at the proxy server, a first user request from a first electronic device directed to a first back-end server;
extracting first data from the first user request, the first data comprising a device identifier indicative of a vendor and model associated with the first electronic device;
locating, at the proxy server, a first session scheme that correlates to the first data comprising the device identifier of the first electronic device, the first session scheme determining one or more tracking characteristics for a first user session;
retrieving the first session scheme based on the vendor and model associated with the first electronic device from which the first user request is received;
determining whether there exists a first session key of a first type that conforms with the first session scheme, the first session key holding a client state for the first electronic device that is stored by the electronic device;
upon determining the first session key does not exist:
searching for valid credentials associated with the first electronic device that were previously received by the proxy server; and
upon finding valid credentials, establishing the first session key of a first type as determined by the first session scheme, the first session key holding a client state for the first user session that is stored by the electronic device;
intercepting, at the proxy server, a second user request from a second electronic device directed to a second back-end server;
extracting second data from the second user request, the second data comprising a device identifier indicative of a vendor and model associated with the second electronic device;
attempting to locate, at the proxy server, a second session scheme that correlates to the second data comprising the device identifier of the second electronic device, the second session scheme determining one or more tracking characteristics for a second user session;
at least one of retrieving the second session scheme if the second session scheme is located, providing a default session scheme if the second session scheme is not located, and rejecting the second user request if the default session scheme is not located; and
if one of the second session scheme and the default session scheme is located, obtaining a second session key of a second type as instructed by one of the second session scheme and the default session scheme, the second session key holding a client state for the second electronic device that is stored by the proxy server;
wherein the first data and the second data distinguish the first electronic device from the second electronic device; and
wherein the first type of session key is different from the second type of session key.
25. The method of claim 24, further comprising one of forwarding the first user request upon locating the first user session utilizing the first session key and forwarding the first user request after creating the first user session in association with the first session key.
26. The method of claim 25, further comprising determining a uniform resource locator to which the first user request is forwarded, the uniform resource locator indicating an electronic server device configured in the network.
27. The method of claim 25, further comprising forwarding data from the first user session to an electronic server device configured in the network.
28. The method of claim 25, wherein the first user session comprises data in the form of at least one of a user identifier, a preference, authentication data, and a session expiration period.
29. The method of claim 25, wherein forwarding the first user request comprises executing a proxy rule, the proxy rule determining an electronic server device to receive the first user request.
30. The method of claim 29, wherein executing the proxy rule comprises:
analyzing data from at least one of the first user request, the first user session, and a stored user record;
comparing at least one property associated with the data to at least one predetermined value; and
converting the first user request to a new request according to a result of comparing at least one property associated with the data to at least one predetermined value.
31. The method of claim 30, wherein the at least one predetermined value specifies one of a URL, an authentication indicator, a device type, a host, a user class, and a level of service.
32. The method of claim 24, wherein obtaining the first session key comprises one of locating and creating the first user session in one of a cookie, a persistent session store, and a storage device, and providing access to the first user session.
33. The method of claim 24, wherein the first type of session key and the second type of session key are selected from a group consisting of cookies, secure sockets layer identifiers, IP addresses, device identifiers, and re-written URLs.
34. The method of claim 24, wherein the first data contains a device identifier identifying a type of the first electronic device transmitting the user request.
35. The method of claim 24, wherein the first type of session key is an IP address and the second type of session key is a device identifier.
36. A non-transitory computer readable medium containing a software tool for executing a method of supporting a plurality of user sessions for a plurality of electronic devices, the method comprising:
intercepting, at the proxy server, a first user request from a first electronic device directed to a first back-end server, the first user request including first data comprising a device identifier indicative of a vendor and model associated with the first electronic device;
mapping, at the proxy server, the first data comprising the device identifier of the first electronic device to a first session scheme based on the vendor and model associated with the first electronic device from which the first user request is received, the first session scheme determining one or more session tracking characteristics for a first user session;
determining whether a first session key exists that conforms with one or more session tracking characteristics determined by the first session scheme;
upon determining the first session key does not exist:
searching for valid credentials associated with the first electronic device that were previously received by the proxy server; and
upon finding valid credentials, establishing the first session key of a first type as determined by the first session scheme, the first session key holding a client state for the first user session that is stored by the electronic device;
intercepting, at the proxy server, a second user request from a second electronic device directed to a second back-end server, the second user request including second data comprising a device identifier indicative of a vendor and model associated with the second electronic device;
mapping, at the proxy server, the second data comprising the device identifier of the second electronic device to a second session scheme based on the vendor and model associated with the second electronic device from which the second user request is received, the second session scheme determining one or more session tracking characteristics for a second user session;
establishing the second user session having one or more session tracking characteristics determined by the second session scheme; and
establishing a second session key of a second type as determined by the second session scheme, the second session key holding a client state for the second user session that is stored by the electronic device;
wherein the first data and the second data distinguish the first electronic device from the second electronic device;
wherein the first type of session key determined by the first session scheme is different from the second type of session key determined by the second session scheme; and
wherein the first user session co-exists at least in part with the second user session.
37. A non-transitory computer readable medium containing a software tool for executing a method of supporting a plurality of user sessions for a plurality of electronic devices, comprising:
intercepting, at the proxy server, a first user request from a first electronic device directed to a first back-end server;
extracting first data from the first user request, the first data comprising a device identifier indicative of a vendor and model associated with the first electronic device;
attempting to locate, at the proxy server, a first session scheme that correlates to the first data comprising the device identifier of the first electronic device, the first session scheme determining one or more tracking characteristics for a first user session;
retrieving the first session scheme based on the vendor and model associated with the first electronic device from which the first user request is received;
determining whether there exists a first session key of a first type that conforms with the first session scheme, the first session key holding a client state for the first electronic device that is stored by the electronic device;
upon determining the first session key does not exist:
searching for valid credentials associated with the first electronic device that were previously received by the proxy server; and
upon finding valid credentials, establishing the first session key of a first type as determined by the first session scheme, the first session key holding a client state for the first user session that is stored by the electronic device;
intercepting, at the proxy server, a second user request from a second electronic device directed to a second back-end server;
extracting second data from the second user request, the second data comprising a device identifier indicative of a vendor and model associated with the second electronic device;
attempting to locate, at the proxy server, a second session scheme that correlates to the second data comprising the device identifier of the second electronic device, the second session scheme determining one or more tracking characteristics for a second user session;
at least one of retrieving the second session scheme if the second session scheme is located, providing a default session scheme if the second session scheme is not located, and rejecting the second user request if the default session scheme is not located; and
if one of the second session scheme and the default session scheme is located, obtaining a second session key of a second type as instructed by one of the second session scheme and the default session scheme, the second session key holding a client state for the second electronic device that is stored by the proxy server;
wherein the first data and the second data distinguish the first electronic device from the second electronic device; and
wherein the first type of session key is different from the second type of session key.
38. The method of claim 37, further comprising one of forwarding the first user request upon locating the first user session utilizing the first session key and forwarding the first user request after creating the first user session in association with the first session key.
39. The method of claim 38, wherein forwarding the first user request comprises executing a proxy rule, the proxy rule determining an electronic server device to receive the first user request.