Memory pooling between selected memory resources
By introducing controllers into the system and realizing wireless sharing of memory resources and processing resources, the problem of wireless sharing and pooling between selected memory resources is solved, and the resource utilization efficiency and reliability of automation functions are improved.
Patent Information
- Application Number
- CN202510113364.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2018-09-26
- Filing Date
- 2019-08-28
- Publication Date
- 2025-05-23
AI Technical Summary
The prior art is difficult to effectively realize wireless sharing and pooling between selected memory resources, resulting in low resource utilization efficiency and high execution error rate of automation functions.
By introducing a controller in the system, configuring memory resources and processing resources as wireless sharing, and forming a memory pool through a transceiver, wireless data sharing and resource pooling between selected memory resources are allowed.
It realizes efficient wireless sharing between memory resources and processing resources, improves accumulated computing power and reliability, reduces cost, power consumption and operating temperature, extends battery life, and reduces failure rate.
Smart Images

Figure CN120029945A_ABST
Abstract
Description
[0001] Information about divisional applications
[0002] This case is a divisional application. The parent case of the divisional application is an invention patent application with an application date of August 28, 2019, an invention name of “Memory pooling between selected memory resources”, and an application number of 201980061906.5. Technical Field
[0003] The present disclosure relates generally to semiconductor memories and methods, and more particularly to apparatus, systems, and methods for memory pooling among selected memory resources. Background Art
[0004] Memory resources are typically provided as internal, semiconductor integrated circuits in a computer or other electronic system. There are many different types of memory, including volatile and non-volatile memory. Volatile memory may require power to maintain its data (e.g., host data, error data, etc.). Volatile memory may include random access memory (RAM), dynamic random access memory (DRAM), static random access memory (SRAM), synchronous dynamic random access memory (SDRAM), and thyristor random access memory (TRAM), as well as other types. Non-volatile memory can provide permanent data by maintaining stored data when there is no power. Non-volatile memory may include NAND flash memory, NOR flash memory, and resistance variable memory, such as phase change random access memory (PCRAM) and resistive random access memory (RRAM), ferroelectric random access memory (FeRAM), and magnetoresistive random access memory (MRAM), such as spin torque transfer random access memory (STT RAM), as well as other types.
[0005] Electronic systems typically include a number of processing resources (e.g., one or more processors) that can retrieve instructions from appropriate locations and execute the instructions and / or store the results of the executed instructions to appropriate locations (e.g., memory resources). A processor may include a number of functional units, such as arithmetic logic unit (ALU) circuitry, floating point unit (FPU) circuitry, and combinatorial logic blocks, which can be used to perform logical operations such as AND, OR, NOT, NAND, NOR, and XOR and inversion (e.g., NOT) logical operations on data (e.g., one or more operands). For example, the functional unit circuitry can be used to perform arithmetic operations such as addition, subtraction, multiplication, and division on operands via a number of operations. Summary of the invention
[0006] In one aspect, the present application provides a system comprising: a first memory resource, which is coupled to a first processor and configured to wirelessly share data; a second memory resource, which is coupled to a second processor, wherein the second memory resource is separate from the first memory resource and configured to wirelessly share data between the second memory resource and the first memory resource; and a controller, which is configured to selectively determine whether the first memory resource and the second memory resource are authorized to enable the formation of a memory pool; wherein the first processor and the controller are configured to determine to enable the memory pool between the first memory resource and the second memory resource in response to a request for the wirelessly shared data from the first processor or the second processor.
[0007] On the other hand, the present application further provides a system comprising: a first memory resource configured to wirelessly share data; a second memory resource configured to wirelessly share data; and a controller configured to evaluate the resource availability of the first memory resource and the second memory resource to determine whether to allow them to combine to wirelessly share data; wherein the controller is further configured to determine that the data stored by the available second memory resource is capable of enabling the first memory resource to perform an operation that is different from an operation that can be performed based on the data stored by the first memory resource, and then enable a memory pool between the first memory resource and the available second memory resource.
[0008] On the other hand, the present application further provides a device comprising: a first memory resource; a first processor coupled to the first memory resource; and a transceiver coupled to the first processor; wherein the first memory resource, the first processor and the transceiver are configured to enable formation of a memory pool between the first memory resource and the second memory resource in response to a request for access to a second memory resource at another device transmitted from the first processor via the transceiver.
[0009] On the other hand, the present application further provides a method, comprising: transmitting, via a first transceiver at a first vehicle, a request for data stored by a second memory resource at a second vehicle to facilitate processing of a task file stored by the first memory resource at the first vehicle; and in response to the request, receiving, via the first transceiver at the first vehicle, the stored data from the second memory resource at the second vehicle to facilitate the processing of the task file. BRIEF DESCRIPTION OF THE DRAWINGS
[0010] Figure 1is a schematic diagram illustrating examples of wirelessly usable resources that may be used to form a memory pool among selected memory resources according to several embodiments of the present disclosure.
[0011] Figure 2 is a block diagram of an example of a system including wirelessly usable resources according to several embodiments of the present disclosure.
[0012] Figure 3 is a block diagram of an example of a network for wirelessly coupling selected wirelessly usable resources to form a memory pool according to several embodiments of the present disclosure.
[0013] Figure 4 is a block diagram illustrating examples of environments corresponding to a range of densities of wirelessly usable resources that may be coupled to form a memory pool, according to several embodiments of the present disclosure.
[0014] Figure 5 is a block diagram illustrating an example of a route of vehicles on which resources may be implemented to form a storage pool, according to several embodiments of the present disclosure.
[0015] Figure 6 is a schematic diagram illustrating examples of wirelessly usable resources that may be selectively coupled to circuitry to enable memory pool formation according to several embodiments of the present disclosure.
[0016] Figure 7 is a block diagram illustrating an example of authorization criteria that may be used to authorize memory pool formation, according to several embodiments of the present disclosure.
[0017] Figure 8 is a flow chart illustrating an example of forming a memory pool among selected wirelessly usable resources implemented on a corresponding number of vehicles according to several embodiments of the present disclosure. DETAILED DESCRIPTION
[0018] The present disclosure includes systems, devices, and methods associated with memory pooling between selected memory resources. In several embodiments, a device includes a memory resource, a processing resource coupled to the memory resource, and a transceiver resource coupled to the processing resource. The memory resource, the processing resource, and the transceiver resource are configured to enable formation of a memory pool between the memory resource and the other memory resource in response to a request transmitted from the processing resource via the transceiver to access another memory resource at another device.
[0019] A processing resource (e.g., one or more processors, microprocessors, or some other type of control circuitry) and memory resources as described herein may operate at high speed (e.g., at a bandwidth greater than 10 gigabits per second (GB / s)) to perform some operations. To facilitate such execution, faster processing resources and / or more memory resources may be combined on a particular computing device. However, the higher the bandwidth used by such resources and / or the more such resources are operated on a computing device, the higher the failure rate (e.g., failures per unit time (FIT)) may be and / or the mean time between failures (MTBF) may be reduced. Combining processing resources with lower bandwidth and / or memory resources with less memory capacity (e.g., fewer memory devices, banks, arrays, etc.) on such computing devices may significantly reduce the failure rate.
[0020] However, the execution of a particular function (e.g., functionality that has been programmed and / or programmable to produce an expected result and / or a number of operations performed as sub-parts of a function) may rely on the ability of processing resources and memory resources to operate at a bandwidth high enough to likely produce a high FIT and / or low MTBF. Such functions may include automated functions, which may, for example, use machine learning and / or artificial intelligence to sense the environment and adjust operations accordingly to increase the probability of producing the expected result of the particular functionality (e.g., without human interaction and / or supervision).
[0021] Proper execution of operations that facilitate such automated functionality may be critical to preventing damage to products (e.g., autonomous vehicles, such as cars, trucks, trains, airplanes, rockets, space stations, etc., among many other possibilities) that incorporate such automated functionality and / or the safety of objects (e.g., human passengers or any other objects) transported by the autonomous vehicles. Thus, automated functionality used in such embodiments may benefit from having a lower error rate (e.g., relative to higher error rates that are considered acceptable for other facilities, such as cellular phones, smart phones, personal computers, etc.) when executing instructions to perform and / or selecting operations that facilitate automated functionality.
[0022] Two methods of affecting bandwidth are adjusting the bit width (e.g., number of channels) for data input and output (I / O) on the bus and adjusting the speed for data I / O by the processor. For example, an embodiment with a processor (e.g., processing resource) running at 14 GB / s and coupled to a 256-bit interface of 8 DRAM devices comprising one or more groups (e.g., memory resources) may have a high bandwidth of 448 GB / s, which may be associated with high cost, high power consumption, high operating temperature and / or short battery life and high FIT rate. An embodiment with a processor running at 6 GB / s and coupled to a 32-bit interface of 1 DRAM device may have a lower bandwidth of 25 GB / s, which may be associated with lower cost, lower power consumption, lower operating temperature and / or longer battery life and lower FIT rate. However, the reduction in bandwidth of the processing resource and / or the number of memory resources combined on a particular computing device may conflict with the expected performance level of the embodiment that meets the automation functionality and / or includes the functionality.
[0023] In contrast, according to several embodiments described herein, there may be multiple memory resources and processing resources (e.g., a network of memory resources and processing resources) (e.g., formed and / or located on corresponding multiple vehicles), which are wirelessly connected (e.g., coupled) through transceiver resources (e.g., several radio frequency (RF) transmitters / receivers, referred to as transceivers) to share data by forming a memory pool. For example, such an inter-vehicle memory pool may include 100 vehicles, each of which may include a 32-bit interface running at 6GB / s and coupled to 1 DRAM device. The memory pool so formed may effectively have a 3,200-bit wide bus, with a total available bandwidth of approximately 2600GB / s. In order to achieve such bus width and / or bandwidth between individual vehicles, wireless coupling may be performed using fifth generation (5G) wireless technology, but embodiments are not limited to using 5G technology. The actual size of the memory pool and the corresponding bit width and / or bandwidth may be scalable, depending on the number of vehicles included in the memory pool and other considerations described herein.
[0024] Thus, forming a memory pool in this manner can increase the cumulative computing power (e.g., capacity) and / or reliability of the combination of memory resources and processing resources on multiple vehicles (e.g., relative to processing resources on each vehicle operating at a higher bandwidth and coupled to a greater number of memory groups). The reduced complexity and / or bandwidth of such processing resource and memory resource implementations can be associated with lower cost, power consumption, operating temperature, and / or longer battery life. Reliability can be increased by a reduced FIT rate for each processing resource and / or memory resource on each individual vehicle, by not including a faulty processing resource and / or memory resource in the first place in the memory pool, and / or by replacing a faulty processing resource and / or memory resource with another processing resource and / or memory resource on one or more other vehicles.
[0025] The figures herein follow a numbering convention in which the first digit or digits of a reference number correspond to the figure number, and the remaining digits identify an element or component in the figure. Similar elements or components between different figures may be identified by using similar numerals. For example, 108 may refer to Figure 1 Element "08" in , and similar elements in Figure 6 It can be expressed as 608.
[0026] Figure 1 is a schematic diagram illustrating examples of wirelessly usable resources that may be used to form a memory pool among selected memory resources, according to several embodiments of the present disclosure. Figure 1 The wirelessly usable resource 100 shown is intended to represent an example of one implementation of a combination of various resources. The wirelessly usable resource 100 shown may represent an example of a "device" as described herein, but such a device may include more than one embodiment. Figure 1 Wirelessly usable resource 100 may also represent an example of an embodiment of a plurality of such resources (e.g., 100-1, 100-2, ..., 100-N) that may be used in combination to enable the formation of a memory pool between at least one memory resource and another memory resource, wherein an embodiment of one memory resource is Figure 1 101 in FIG. 102. For clarity, a memory resource and another memory resource can be distinguished from each other as a first memory resource and a second memory resource represented by reference numerals 101-1 and 101-2, respectively. Similarly, a processing resource and another processing resource can be distinguished from each other as a first processing resource and a second processing resource represented by reference numerals 108-1 and 108-2, respectively. Other components presented herein can be distinguished in a similar manner. As described herein, embodiments are not limited to two memory resources 101, processing resources 108, and corresponding other components contained in the memory pool.
[0027] As used herein, "memory resource" is a general term intended to include at least memory (e.g., memory cells) arranged, for example, as a number of groups, banks, bank sections, sub-arrays, and / or rows of memory devices. For example, Figure 1 The illustrated embodiment of the memory resource 101 is shown as including a plurality of memory devices 103-1, 103-2, ..., 103-N. In several embodiments, the memory resource 101 may be or may include a plurality of volatile memory devices formed and / or usable as RAM, DRAM, SRAM, SDRAM, and / or TRAM, as well as other types of volatile memory devices. Alternatively or additionally, in several embodiments, the memory resource 101 may be or may include a plurality of non-volatile memory devices formed and / or usable as NAND, NOR, other flash memory devices, PCRAM, RRAM, FeRAM, MRAM, STT RAM, phase change memory, and / or 3DXPoint, as well as other types of non-volatile memory devices.
[0028] In several embodiments, each memory device 103 may represent a memory device having several groups, sets, sections of sets, sub-arrays, and / or rows thereon configured (e.g., dedicated and / or programmable) to store data values (e.g., instructions) to perform a particular functionality. Each functionality may include the storage of data values that direct the execution of several operations that facilitate the execution of the functionality. By way of example and not limitation, such functionality may include steering a vehicle to reach a desired destination, steering a vehicle to avoid congestion, following a traffic light signal, and / or enabling the formation of a memory pool between a memory resource 101 formed and / or located on a vehicle and at least one other memory resource formed and / or located on another vehicle, as well as many other possibilities for functionality stored by a memory device 103 of a memory resource 101 associated with a vehicle or other implementation.
[0029] Each of the plurality of memory devices 103-1, 103-2, ..., 103-N of the memory resource 101 may be coupled to a corresponding plurality of channels 105-1, 105-2, ..., 105-N. Figure 6 The plurality of channels 105-1, 105-2, ..., 105-N are further described. The plurality of channels 105-1, 105-2, ..., 105-N may be selectively coupled to a control circuitry 107 of the memory resource 101. The control circuitry 107 may be configured to direct data values for execution of a particular functionality and / or instructions (e.g., commands) related to the execution to an appropriate one or more of the plurality of memory devices 103-1, 103-2, ..., 103-N.
[0030] In several embodiments, data values and / or instructions may be provided by (e.g., sent from) processing resource 108 (e.g., from its controller 110). Instructions may be sent from processing resource 108 to memory resource 101 by coupling the resources via bus 118. Bus 118 may include several I / O lines (e.g., via Figure 6 As shown in and combined with Figure 6 The depicted switch 661 is optionally coupled to the channel 105), which is sufficient to send instructions to the memory resource 101 and / or input data to the memory resource 101 and / or output data from the memory resource 101 for execution by the processing resource 108 (e.g., when performing various functionalities).
[0031] The controller 110 of the processing resources 108 may include and / or may be physically associated with (e.g., coupled to) a number of components configured to facilitate operations controlled (e.g., performed) by the controller 110. In several embodiments, such components may include a combining component 112 configured to evaluate resource availability in the plurality of individual memory devices 103, an arbiter component 114 configured to selectively determine whether a first memory resource and an individual second memory resource (e.g., located and / or formed on a different vehicle than the first memory resource) are authorized to enable memory pool formation, and / or an operating mode component 116 configured to determine a particular number of individual second memory resources to be included in a memory pool with the first memory resource and direct modulation of operating parameters for accessing and transmitting data from the individual second memory resources, as further described herein.
[0032] In several embodiments, each memory resource 101 may be coupled to a respective processing resource 108 configured to send a request to form a memory pool. Alternatively or in addition, each memory resource 101 may be coupled to a respective processing resource 108 configured to respond to a request to form a memory pool sent from a processing resource 108 of another memory resource 101. For example, in several embodiments, in several embodiments, each memory resource 101 located and / or formed on a vehicle may be coupled to a respective processing resource 108 configured to both send a request to form a memory pool and respond to a request to form a memory pool sent from a processing resource 108 located and / or formed on another vehicle. However, in some embodiments, a particular vehicle may be configured to only send a request to form a memory pool or respond to a request to form a memory pool.
[0033] In several embodiments, the first memory resource 101-1 and the second memory resource 101-2 may each include at least one volatile memory device 103 (e.g., in a DRAM configuration, among other possible configurations of volatile memory) coupled to a corresponding processing resource 108 configured to wirelessly share data. Alternatively or in addition, the first memory resource 101-1 and the second memory resource 101-2 may each include at least one non-volatile memory device 103 (e.g., in a NAND configuration, among other possible configurations of non-volatile memory) coupled to a corresponding processing resource 108 configured to wirelessly share data.
[0034] In several embodiments, the processing resource 108 may include and / or be physically associated with a task file 117. The task file 117 may be selectively coupled to the controller 110 and / or components 112, 114, 116 associated with the controller 110. The task file 117 may be stored by and / or accessible in a memory (e.g., SRAM) (not shown), for example, of the processing resource 108 (e.g., to perform read and / or write operations directed by the controller 110). Alternatively or in addition, the task file 117 may be stored by a memory resource 101 (e.g., memory device 103) and accessible to the controller 110 of the processing resource 108 (e.g., via the bus 118, the control circuit system 107, and / or the channel 105) to perform read and / or write operations.
[0035] Thus, in several embodiments, the mission file 117 may be formed and / or located on the vehicle to provide resources for the controller 110 of the processing resource 108 to execute instructions when executing various functionalities stored on the memory resource 101 (e.g., the memory device 103 of the memory resource 101). The memory resource 101 may be selectively coupled to several hardware components (e.g., located and / or formed as part of the vehicle) configured to perform actions that implement the tasks stored on the mission file 117 and consistent with the functionality stored on the memory resource 101. On the vehicle, such hardware components may include hardware for, for example, enabling steering, braking, and / or acceleration of the vehicle to reach an intended destination at an intended time in order to implement the tasks stored on the mission file 117.
[0036] "Formed on a vehicle" is intended to mean that a resource (e.g., Figure 1 Shown in and combined with Figure 1At least one of the described resources 101, 108, and / or 120) may be formed on hardware (e.g., structural components and / or computing devices) of a vehicle (e.g., during or after manufacture). Alternatively, additionally, "formed on a shipping vehicle" is intended to mean that a resource may be "located on a shipping vehicle" to provide, for example, a computing device of the vehicle as hardware, software, and / or firmware after the vehicle is manufactured (e.g., as a factory and / or dealer-installed option or as an after-market purchase). "Formed on a vehicle" or "located on a vehicle" may be referred to herein as simply a statement that a resource is "on a vehicle."
[0037] In several embodiments, the mission file 117 may include an expected destination, an expected arrival time, and / or an expected route to follow to arrive at the expected destination at the expected arrival time, as well as many other possibilities for inclusion in the mission file 117. The functionality and / or operations on the memory resources 101 may be stored data values (e.g., code) intended to enable implementation of the mission file 117 when executed by the controller 110 on the processing resource 108. However, the likelihood of completing the mission file 117 may be increased (e.g., such access and transfer may be required) by accessing and transferring data from other memory resources 101 (e.g., by forming an inter-vehicle memory pool).
[0038] The communicated data may relate to possible obstacles (e.g., unexpected obstacles) that may be encountered during transportation (e.g., driving) along the intended route. The data communicated from the plurality of memory resources 101 (e.g., on a plurality of vehicles located at or near various locations along the intended route) may perform compensatory actions (e.g., based on corresponding data stored on the memory resources 101) to complete or more closely match the mission file 117 (e.g., by avoiding such obstacles and / or following another route to the intended destination, among other possibilities). Possible obstacles may include adverse weather conditions (e.g., wind, fog, rain, snow, temperature, etc.), traffic jams, pedestrians on the route, accidents involving another vehicle and / or pedestrians, speed bumps, road construction, slippery roads, and many other possible obstacles.
[0039] Thus, the processing resource 108 of the memory resource 101 on the first vehicle can send a request to the processing resources on other vehicles to access a plurality of memory resources formed by the enabled memory pool (e.g., automatically and / or in response to instructions from a human driver), thereby potentially improving the functionality of completing the enabled task file 117. The other vehicles may be located near the intended route or possible alternative routes. In several embodiments, the information (e.g., data) can be provided by a plurality of base stations (e.g., as shown at 225 and 325, respectively, and in combination with the base stations) located near the intended route or possible alternative routes. Figure 2 and 3described) and / or infrastructure (e.g., houses, police / fire / news stations, businesses, factories, etc., as shown and combined at 444, 445 and 446 Figure 4 The data of the memory pool formed by these resources can be in addition to or instead of the data sent from the resources on other vehicles.
[0040] In several embodiments, determining and / or following (e.g., tracking) the location (e.g., geographic location and / or location relative to a particular point) of the processing resources 108, base stations 225, 325, and / or infrastructure 444, 445, 446, individually and / or relative to each other can use a global positioning system (GPS). GPS is a space-based radio navigation system. It is a global navigation satellite system that can provide geolocation and time information to a GPS receiver on or near the earth, with the earth having an unobstructed line of sight of four or more GPS satellites. Alternatively or in addition, location determination and / or tracking can be performed via triangulation relative to the location of, for example, several base stations, cellular towers, etc. and / or via photographic mapping (e.g., using satellite and / or ground-based digital photography resources), among other possibilities.
[0041] Processing resources 108 (e.g., Figure 3 As shown in and combined with Figure 3 The plurality of single vehicles 331 and / or the plurality of transport vehicles 334 described herein may be coupled 119 to a transceiver resource 120. The transceiver resource 120 may be configured to wirelessly share data between at least two of the plurality of memory resources 101 via a processing resource 108 coupled 118 to each of the memory resources 101. In several embodiments, each of the plurality of memory resources may be on a corresponding plurality of vehicles (e.g., on each of the plurality of single vehicles 331 and / or the plurality of transport vehicles 334). In several embodiments, each transceiver resource 120 may include one or more radio frequency (RF) transceivers (e.g., as shown at 661 and in conjunction with Figure 6 As described herein, a transceiver is intended to mean a device that includes both a transmitter and a receiver. In several embodiments, the transmitter and receiver may be combined and / or share common circuitry. In several embodiments, there may be no common circuitry between the transmit and receive functions, and the device may be referred to as a transmitter-receiver. Other devices consistent with the present disclosure may include repeaters, converters, and / or relays, and the like.
[0042] In several embodiments, the transceiver resources 120 may be wirelessly coupled to the base station 225 and / or the cloud processing resources 122 to enable the formation of a memory pool. As described herein, the cloud processing resources 122 are intended to include enabling access to network resources from a centralized third-party provider using a wide area network (WAN) or Internet-based access technology (e.g., as opposed to a wireless local area network (WLAN)). Improved Internet access and / or more reliable WAN bandwidth (e.g., suitable for use with 5G wireless technology) may enable processing of network management functions in the cloud. The cloud processing resources 122 may provide centralized management, connectivity, security, and / or control of the network. This may include having a distribution of centrally managed wireless access routers or branch office devices in the cloud (e.g., in the base station 225).
[0043] As described herein, wireless coupling can use 5G technology. Compared to other wireless communication technologies (e.g., 4G and previous generations and other technologies), 5G can be designed to use a high-frequency portion of the wireless spectrum that operates in a millimeter wave band (e.g., 28, 38 and / or 60 gigahertz). The millimeter wave band of 5G can enable data transfer to be faster than technologies using low frequency bands. For example, it is estimated that 5G networks have a transfer speed hundreds of times faster than 4G networks, which can provide high bandwidth to enable data transfer rates for tens of thousands of users at a time (e.g., in a memory pool, as described herein) in the range of tens of megabits per second (MB / s) to tens of GB / s. The actual size of the memory pool and the corresponding bandwidth can be scalable, depending on the number of vehicles included in the memory pool and other considerations described herein.
[0044] For example, in several embodiments, data wirelessly shared by at least two memory resources 101 in a memory pool (e.g., a network) may be transferred directly between vehicles, indirectly between vehicles via a base station 225, and / or uploaded to a cloud processing resource 122 via a first processing resource 108 coupled to a first transceiver resource 120 (e.g., from a vehicle and / or a base station). When uploaded to the cloud processing resource 122, the data may be accessed (e.g., processed) by the cloud processing resource 122 for download via a second (e.g., separate) processing resource 108 coupled to a second transceiver resource 120. As an alternative or in addition to a network, the cloud processing resource 122 may be used by directly transmitting and / or directly receiving data between vehicles and / or using the base stations 225, 325 and / or the infrastructure 444, 445, 446 as intermediate transceivers.
[0045] like Figure 1As shown, the processing resource 108 includes multiple sets of logic units 111-1, ..., 111-N (collectively referred to as logic units 111). In several embodiments, the processing resource 108 can be configured to use the multiple sets of logic units 111-1, ..., 111-N to execute multiple sets of instructions and transmit outputs obtained as execution results via inter-device communication technology, and the inter-device communication technology can operate in several frequency bands including the EHF band. The transmitted output can be transmitted to other devices, such as wirelessly usable resources (e.g., wirelessly usable resources 200-1, ..., 200-5).
[0046] At least one of the logic units 111 may be an arithmetic logic unit (ALU), which is a circuit that can perform arithmetic and bitwise logic operations on integer binary numbers and / or floating point numbers, but the embodiments are not limited thereto. As an example, the ALU can be used to execute instructions by performing logic operations such as AND, OR, NOT, NAND, NOR, and XOR and inverting (e.g., reversing) logic operations on data (e.g., one or more operands). The processor resources 108 may also include other components that can be used to control the logic units 111. For example, the processing resources 108 may also include control logic (e.g., configured to control the flow of data into and out of the logic units 111) and / or a cache coupled to each of the plurality of sets of logic units 111-1, ..., 111-N.
[0047] Several ALUs may be used as floating point units (FPUs) and / or graphics processing units (GPUs). In other words, at least one of the plurality of groups of logic units 111-1, ..., 111-N may be an FPU and / or a GPU. As an example, the group of logic units 111-1 may be an FPU, and the group of logic units 111-N may be a GPU.
[0048] As used herein, "FPU" refers to a dedicated electronic circuit that operates on floating point numbers. In several embodiments, the FPU can perform various operations, such as addition, subtraction, multiplication, division, square root and / or bit shifting, but the embodiments are not limited thereto. As used herein, "GPU" refers to a dedicated electronic circuit that quickly controls and modifies memory (e.g., memory resource 101) to speed up the creation of images in a frame buffer intended for output to a display. In several embodiments, the GPU can include several logical operations on floating point numbers, so that the GPU can perform, for example, several floating point operations in parallel.
[0049] In some embodiments, the GPU may provide non-graphic operations. As an example, the GPU may also be used to support shading, which is associated with controlling vertices and textures using the same operations supported by many CPUs, oversampling and interpolation techniques intended to reduce aliasing, and / or high-precision color spaces. These example operations that may be provided by the GPU are also associated with matrix and vector calculations, which may be provided by the GPU as non-graphic operations. As an example, the GPU may also be used for calculations associated with executing machine learning algorithms, and may provide execution that is faster than the CPU may provide. For example, when training a deep learning neural network, the GPU may be 250 times faster than the CPU. As used herein, a "machine learning algorithm" refers to an algorithm that uses statistical techniques to provide a computing system with the ability to learn using data (e.g., gradually improve the performance of a particular function) rather than explicit programming.
[0050] The GPU can reside in a variety of locations. For example, the GPU can be internal to (e.g., within) a CPU (e.g., of network device 102). For example, the GPU can be on the same board (e.g., onboard unit) as the CPU, but not necessarily internal to the GPU. For example, the GPU can be on a wirelessly accessible resource (e.g., such as in conjunction with Figure 2 Thus, the wirelessly usable resource 100 may be an additional video card that may be external to a network device such as a wirelessly usable resource and wirelessly coupled to the network device for graphics and / or non-graphics operations.
[0051] The GPUs of the processing resources 108 may speed up the video decoding process. As an example, the video decoding process that may be accelerated by the processor 214 may include motion compensation (mocomp), inverse discrete cosine transform (iCDT), inverse modified discrete cosine transform (iMDCT), in-loop deblocking filter, intra prediction, inverse quantization (IQ), variable length decoding (VLD) also known as slice-level acceleration, space-time deinterlacing, automatic interlaced / progressive source detection, bitstream processing (e.g., context adaptive variable length coding and / or context adaptive binary arithmetic coding), and / or perfect pixel positioning. As used herein, "video decoding" refers to the process of converting a baseband and / or analog video signal into a digital component video (e.g., a raw digital video signal).
[0052] In some embodiments, the processing resource 108 may be further configured to perform a video encoding process that converts digital video signals into analog video signals. For example, if a network device (including a display) requests that the wirelessly usable resource 100 return a signal in a specific form, such as an analog video signal, the wirelessly usable resource 100 may be configured to convert the digital video signal into an analog video signal via the processing resource 108 and then wirelessly transmit them to the network device.
[0053] The wirelessly usable resource 100 includes a transceiver 120. As used herein, a "transceiver" may refer to a device that includes both a transmitter and a receiver. In several embodiments, the transceiver 120 may be and / or include several radio frequency (RF) transceivers. In several embodiments, the transmitter and receiver may be combined and / or share common circuitry. In several embodiments, there may be no common circuitry between the transmission and reception functions, and the device may be referred to as a transmitter-receiver. Other devices consistent with the present disclosure may include repeaters, converters, and / or relays, and similar devices.
[0054] In several embodiments, the communication technology that the processing resource 108 can use can be an inter-device communication technology as well as a cellular telecommunication technology, and the processing resource 108 can be configured to use the same transceiver (e.g., transceiver 120) for both technologies, which can provide various benefits, such as reducing the design complexity of the wirelessly usable resource 100. As an example, consider the devices in the previous methods (e.g., wirelessly usable resources 200-1, ..., 200-5 and / or any other device that can be similar to the wirelessly usable resource 100), where the devices use the inter-device communication technology and the cellular telecommunication technology when communicating with other devices. The devices in those previous methods may include at least two different transceivers (e.g., one each for the inter-device communication technology and the cellular telecommunication technology), because each type of communication technology can use different network protocols, and thus they must use unique transceivers. Therefore, devices implemented with different transceivers will increase the design (e.g., structural) complexity, which may increase the cost associated with the device. On the other hand, in some embodiments, the processing resource 108 is configured to use the same network protocol for both technologies (e.g., device-to-device communication and cellular telecommunication technology), which eliminates the need for different transceivers for different types of wireless communication technologies. Therefore, some of the present disclosures can reduce the design complexity of the wirelessly usable resource 100.
[0055] In several embodiments, because the resources of the wirelessly usable resource 100 can be wirelessly usable, the wirelessly usable resource 100 may not have those physical interfaces for physically connecting to the motherboard and / or the display of the network device that may have been included in the expansion card of the previous method. For example, the wirelessly usable resource 100 as an expansion card may not include a physical interface that has been used to connect to the motherboard, such as a physical bus (e.g., S-100 bus, Industry Standard Architecture (ISA) bus, NuBus bus, micro channel bus (or micro channel architecture (MCA), extended industry standard architecture (EISA) bus, VESA local bus (VLB), peripheral component interconnect (PCI) bus, ultraport architecture (UPA), universal serial bus (USB), peripheral component interconnect extended (PCI-X), peripheral component interconnect express (PCIe)) or other physical channels, such as the accelerated graphics port (AGP) that has been used to connect to the motherboard. For example, the wirelessly usable resource 100 as an expansion card may not include a physical interface that has been used to connect to the motherboard, such as a physical bus (e.g., S-100 bus, Industry Standard Architecture (ISA) bus, NuBus bus, micro channel bus (or micro channel architecture (MCA), extended industry standard architecture (EISA) bus, VESA local bus (VLB), peripheral component interconnect (PCI) bus, ultraport architecture (UPA), universal serial bus (USB), peripheral component interconnect extended (PCI-X), peripheral component interconnect express (PCIe)) or other physical channels, such as the accelerated graphics port (AGP) that has been used to connect to the motherboard. The resource 100 used may not include a physical interface that has been used to connect to a display, such as a video graphics array (VGA), a digital video interface (DVI), a high-definition multimedia interface (HDMI), and / or a display port. Therefore, the wirelessly usable resource 100 may be configured to wirelessly transmit those signals that have been transmitted through those physical interfaces listed above to a network device and / or a display via the transceiver 120. For example, the signals that can be wirelessly transmitted via the transceiver 120 may include compressed and / or uncompressed digital video signals (that have been transmitted through HDMI and / or VGA), compressed and / or uncompressed audio signals (that have been transmitted through HDMI), and / or analog video signals (that have been transmitted through VGA).
[0056] In addition, the wirelessly usable resource 100 can be used by other wirelessly usable resources (e.g., Figure 2 The wirelessly usable resources 200-1, ..., 200-5) in the wireless communication band are used via inter-device communication technology that can operate in the EHF band. The communication technology that can operate in the EHF band may include fifth generation (5G) technology or later technology. 5G technology can be designed to use high-frequency parts of the wireless spectrum, including the EHF band (for example, in the range of 30 to 300 GHz specified by the ITU).
[0057] As used herein, in contrast to wireless communication technologies such as cellular telecommunication technologies and / or those communication technologies based on infrastructure modes, by which network devices communicate with each other, it is necessary to first pass through intermediate network devices (e.g., base stations and / or access points (APs)), device-to-device communication technologies refer to wireless communications performed directly between a transmitting device and a receiving device. Thus, via the device-to-device communication technology, data to be transmitted by a transmitting device can be transmitted directly to a receiving device without being routed through intermediate network devices (e.g., as in combination with Figure 2Base station 225 described herein). In some embodiments, inter-device communication may rely on existing infrastructure (e.g., network entities such as base stations); therefore, it may be infrastructure mode. For example, as described herein, inter-device communication whose transmission timing is scheduled by a base station may be infrastructure mode. In some embodiments, receiving and transmitting devices may communicate in the absence of existing infrastructure; therefore, it may be ad hoc mode. As used herein, "infrastructure mode" refers to an 802.11 network framework in which devices communicate with each other by first passing through an intermediary device such as an AP. As used herein, "ad hoc mode" refers to an 802-11 network framework in which devices communicate with each other without using an intermediary device such as an AP. The term "ad hoc mode" may also be referred to as "peer mode" or "independent basic service set (IBSS)".
[0058] As used herein, cellular telecommunication technology refers to wireless communication technology that is indirectly performed between a transmitting device and a receiving device via a base station, compared to those types of wireless communication technologies that include inter-device communication technologies. Cellular telecommunication can use resources of the spectrum. Licensed spectrum resources can be scheduled for use or access by specific devices, and these resources cannot be accessed by other devices. In contrast, resources of shared or unlicensed spectrum can be open and available to many devices without the need for a license. There may be different technical challenges in allocating licensed and shared or unlicensed frequency resources. In the case of a licensed spectrum, resources may be controlled by a central entity, such as a base station or an entity within a core network. However, devices using resources of a shared or unlicensed spectrum may compete for access (for example, a device may wait until a communication channel is idle or unused before transmitting on the channel). Shared resources may allow for higher utilization, but successful access is not guaranteed.
[0059] The techniques described herein may consider or use licensed and unlicensed spectrum. In some communication schemes, inter-device communication may occur on resources of a licensed spectrum, and such communication may be scheduled by a network entity (e.g., a base station). Such schemes may include protocols established by certain 3GPPs, such as Long Term Evolution (LTE) or New Radio (NR). In such schemes, the communication link between devices (e.g., user equipment (UE)) may be referred to as a side link, while the communication link from the base station to the device may be referred to as a downlink, and the communication from the device to the base station may be referred to as an uplink.
[0060] In other schemes, inter-device communication may occur on resources of unlicensed spectrum, and devices may contend for access to the communication channel or medium. Such schemes may include WiFi or MulteFire. Hybrid schemes including License Assisted Access (LAA) may also be employed.
[0061] As used herein, the EHF band refers to a radio frequency band in the 30 to 300 Gigahertz (GHz) range in the electromagnetic spectrum designated by the International Telecommunication Union (ITU) and further described herein. The radio frequency range specified by the ITU may include an extremely low frequency (ELF) band in the range of 3 to 30 Hz, a very low frequency (SLF) band in the range of 30 Hz to 300 Hz, an ultra low frequency (ULF) band in the range of 300 Hz to 3 kilohertz (kHz), a very low frequency (VLF) band in the range of 3 to 30 kHz, a low frequency (LF) band in the range of 30 kHz to 300 kHz, a medium frequency (MF) band in the range of 300 kHz to 3 megahertz (MHz), a high frequency (HF) band in the range of 3 MHz to 30 MHz, a very high frequency (VHF) band in the range of 30 MHz to 300 MHz, an ultra high frequency (UHF) band in the range of 300 MHz to 3 GHz, an ultra high frequency (SHF) band in the range of 3 GHz to 30 GHz, an extremely high frequency (EHF) band in the range of 30 GHz to 300 GHz, and a very high frequency (THF) band in the range of 0.3 to 3 terahertz (THz).
[0062] Compared to those network communication technologies that only use the low frequency portion of the wireless spectrum, several embodiments of the present disclosure can provide various benefits by using network communications that can operate in several frequency bands including the high frequency portion (e.g., EHF) of the wireless spectrum. As an example, the EHF band of 5G technology can enable data to be transferred faster than technologies that only use the low frequency band (e.g., technologies including previous generations). For example, it is estimated that 5G networks have transfer speeds that are hundreds of times faster than 4G networks, which can be achieved by providing high bandwidth so that the data transfer rate of tens of thousands of users at a time (e.g., in a memory pool, as described herein) is in the range of tens of megabits per second (MB / s) to tens of GB / s. For example, the transfer rate provided by 5G networks is faster than 802.11-based networks such as WiFi that operate on unlicensed 2.4 GHz radio frequency bands (e.g., ultra-high frequency (UHF) bands). Therefore, several embodiments may enable the wirelessly usable resource 100 to be used at a high transfer speed, as if the wirelessly usable resource 100 were wired to wirelessly usable resources (eg, wirelessly usable resources 200 - 1 , . . . , 200 - 5 ).
[0063] In addition to the EHF band, the communication technology of the communication may also operate in other frequency bands, such as the UHF band and the SHF band. As an example, in addition to the frequency bands above 6 GHz (e.g., high 5G frequencies), the communication technology may operate in frequency bands below 2 GHz (e.g., low 5G frequencies) and / or frequency bands between 2 GHz and 6 GHz (e.g., medium 5G frequencies). Other details of the several frequency bands (e.g., below 6 GHz) in which the 5G technology may operate are defined in the 3rd Generation Partnership Project (3GPP) Release 15 as New Radio (NR) Frequency Range 1 (FR1), as shown in Table 1.
[0064]
[0065]
[0066] Table 1: 5G operating frequency bands for FR1
[0067] In addition, details of several frequency bands (e.g., above 6 GHz) in which 5G technology can operate are defined as NR Frequency Range 2 (FR2) in 3GPP Release 15, as shown in Table 2.
[0068]
[0069] Table 2: 5G operating frequency bands for FR2
[0070] In some embodiments, the number of frequency bands in which the communication technology used for communication 106 (e.g., device-to-device communication technology using 5G technology and / or cellular telecommunication technology) can operate may further include the THF band in addition to those frequency bands such as the SHF, UHF, and EHF bands. The memory, transceiver, and / or processor described herein may be resources that can be used wirelessly via a corresponding communication technology such as the 5G technology.
[0071] As used herein, FDD means frequency division duplex, TDD means time division duplex, SUL means supplementary uplink, and SDL means supplementary downlink. FDD and TDD are each a specific type of duplex communication system. As used herein, a duplex communication system refers to a point-to-point system with two connected parties and / or devices that can communicate with each other in two directions. TDD refers to a duplex communication link in which an uplink is separated from a downlink by allocating different time slots in the same frequency band. FDD refers to a duplex communication system in which a transmitter and a receiver operate at different frequency bands. SUL / SDL refers to a point-to-point communication system with two connected parties and / or devices that can communicate with each other in a unilateral direction (e.g., via an uplink or a downlink, but not via both at the same time).
[0072] 5G technology can selectively operate in one or more low, medium and / or high 5G frequency bands based on, for example, the characteristics of the communication. As an example, low 5G frequencies can be used for certain use cases (e.g., enhanced mobile broadband (eMBB), ultra-reliable and low-latency communications (URLLC), massive machine type communications (mMTC)) where 5G technology needs to cover extremely wide areas. As an example, medium 5G frequencies can be used in certain use cases (e.g., eMBB, URLLC, mMTC) where higher data rates than low 5G frequencies are required for the communication technology. As an example, high 5G frequencies can be used in certain use cases (e.g., eMBB) where 5G technology requires extremely high data rates.
[0073] As used in this article, eMBB, URLLC, and mMTC each refer to one of the three categories of services that the ITU has defined as being available with 5G technology. According to the ITU definition, the goal of eMBB is to meet the needs of people's increasingly digital lifestyles and focus on services with high bandwidth requirements, such as high-definition (HD) video, virtual reality (VR), and augmented reality (AR). According to the ITU definition, the goal of URLLC is to meet the needs of demanding digital industries and focus on latency-sensitive services such as assisted and automated driving and remote management. According to the ITU definition, the goal of mMTC is to meet the needs of a further evolving digital society and focus on services with high connection density requirements, such as smart cities and smart agriculture.
[0074] As used herein, channel bandwidth refers to the frequency range occupied when data and / or instructions are transmitted on a specific frequency band (e.g., by a single carrier). As an example, a channel bandwidth of 100 MHz may indicate a frequency range from 3700 MHz to 3800 MHz, which the data and / or instructions may occupy when transmitted on the n77 frequency band, as shown in Table 1. As shown in 3GPP Release 15, 5G technology may use several different channel bandwidths, such as a channel bandwidth equal to or greater than 50 MHz (e.g., 50 MHz, 100 MHz, 200 MHz, and / or 400 MHz).
[0075] Embodiments are not limited to a particular communication technology; however, communication may employ various types of communication technologies. Wirelessly accessible resources (e.g., Figure 2 The various types of communication technologies that can be used in the wirelessly usable resources 200-1, ..., 200-5) may include: cellular telecommunication technologies including, for example, 0-5 generation broadband cellular network technologies, device-to-device communications including Bluetooth, Zigbee and / or 5G, and / or other wireless communications using intermediate devices (for example, WiFi utilizing an AP), but the embodiments are not limited thereto.
[0076] Figure 2is a block diagram of an example of a system including wirelessly usable resources according to several embodiments of the present disclosure. Figure 2 As shown in , in several embodiments, the system 223 may include multiple elements. For example, the multiple elements of the system 223 may be several wirelessly usable resources 200-1, ..., 200-5 (collectively referred to as wirelessly usable resources 200) and / or a base station 225. At least a portion of the wirelessly usable resources 200 may include local commodity DRAM, and resources in the wirelessly usable resources 200-1 may be used as supplementary resources. The wirelessly usable resources 200-1 include resources (e.g., memory resources, transceivers, and / or processors) that are wirelessly usable (e.g., shared) by at least the wirelessly usable resources 200.
[0077] The wirelessly usable resource 200 may be a variety of user devices. As an example, the wirelessly usable resource 200 may be a computing device, such as a laptop, a phone, a tablet, a desktop computer, a wearable smart device, etc. In some embodiments, the user device may also be mobile. As used herein, a "mobile user device" may be a device that is portable and uses a portable power source. In several embodiments, the wirelessly usable resource 200 may include local DRAM and memory resources, which may be included in the wirelessly usable resource 200-1 and may be used by the wirelessly usable resource 200 and may supplement the wirelessly usable resource 200.
[0078] The wirelessly usable resource 200-1 including the wirelessly usable resource may be a wireless electronic component of at least one of the wirelessly usable resources 200. As used herein, an "electronic component" refers to an electronic component that can provide additional functionality to a network device and / or help the network device facilitate a specific function. For example, the electronic component may include various types of components (e.g., expansion cards), such as video cards, sound cards, primary storage devices (e.g., main memory) and / or secondary (auxiliary) storage devices (e.g., flash memory, optical disks, magnetic disks and / or tapes), but the embodiments are not limited thereto. As used herein, a "radio electronic component" refers to an electronic component that is wirelessly coupled to a network device.
[0079] Thus, as an example, the wirelessly usable resource 200-1 can be used by the wirelessly usable resource 200 for various functions. As an example, the wirelessly usable resource 200-1 can be used for graphics operations that require high-performance processing and / or memory resources, such as memory-intensive games and / or high-quality videos associated with higher resolutions and / or frame rates. In addition, as an example, the wirelessly usable resource 200-1 can be used for non-graphics operations, such as several operations of applications associated with machine learning algorithms, which require high-performance processing and / or memory resources.
[0080] In some embodiments, at least a portion of the wirelessly usable resources 200 may be a small form factor (SFF) device, such as a handheld computing device (e.g., a personal computer (PC)). The degree of execution that can typically be provided by an SSF device may be relatively low due to its limited size and volume. In addition, an SSF device may not have several channels that can be used to add expansion cards such as high-performance video cards. Therefore, providing a mechanism for wirelessly adding a high-performance video card such as the wirelessly usable resource 200-1 to an SSF device may provide benefits, such as performing memory-intensive operations (e.g., memory-intensive games and / or high-quality videos associated with higher resolutions and / or frame rate levels) at the SSF device, which operations may not be correctly performed at the SSF device in the absence of the wirelessly usable resources.
[0081] In some embodiments, the wirelessly available resource 200-1 can be wirelessly available via inter-device communication technology, for example, by Figure 2 The wirelessly available resource 200 is used, for example, in conjunction with Figure 1 As shown, the inter-device communication technology can operate in a high frequency portion of the wireless spectrum, including UHF, SHF, EHF and / or THF bands, as defined by the ITU. However, embodiments are not limited thereto. For example, other network communication technologies in the inter-device communication technology can be employed within the system 223. As an example, the wirelessly usable resource 200-1 can communicate with at least one of the wirelessly usable resources 200 via another type of inter-device communication technology (e.g., Bluetooth, Zigbee and / or other types of inter-device communication technology).
[0082] like Figure 2 As shown in , the wirelessly usable resource 200-1 can be used by the wirelessly usable resource 200 via the base station 225 in a wireless manner. As an example, the communication technology that can be used between the wirelessly usable resource 200-4 and the wirelessly usable resource 200-1 can be a cellular telecommunication technology. In several embodiments, the cellular telecommunication technology that can be used for communication between the wirelessly usable resource 200-4 and the wirelessly usable resource 200-1 can include 5G cellular telecommunication technology, which operates in at least one of several frequency bands including UHF, SHF, EHF and / or THF.
[0083] The term "base station" may be used in the context of mobile phones, wireless computer networks, and / or other wireless communications. As an example, a base station 225 may include a GPS receiver at a known location, while in wireless communications it may include a transceiver that connects several other devices to each other and / or to a wider area. As an example, in a mobile phone, a base station 225 may provide a connection between the mobile phone and the wider telephone network. As an example, in a computing network, a base station 225 may include an electrical component (e.g., Figure 1 Base station 225 may be a wireless communication station installed at a fixed location.
[0084] In some embodiments, the wirelessly usable resource 200-1 can use the same network protocol and the same transceiver (e.g., RF transceiver) for device-to-device communication technology (e.g., 5G device-to-device communication technology) and cellular telecommunication technology (e.g., 5G cellular telecommunication technology), such as in combination with Figure 1 As an example, wirelessly usable resource 200-1 may use the same network protocol when communicating with wirelessly usable resource 200-4 (eg, via base station 225 via cellular telecommunication technology) and with wirelessly usable resource 200 (eg, via device-to-device communication technology).
[0085] In several embodiments, various types of network protocols may be used to transmit data within the system 223 (e.g., among the wirelessly usable resources 200, between the wirelessly usable resources 200, between the wirelessly usable resources 200 and the base station 225, etc.). The various types of network protocols may include time division multiple access (TDMA), code division multiple access (CDMA), space division multiple access (SDMA), frequency division multiple access (FDMA), orthogonal FDMA (OFDMA), single carrier (SC)-FDMA, and / or non-orthogonal multiple access (NOMA), but the embodiments are not limited thereto.
[0086] In some embodiments, cellular telecommunication technology (e.g., between wirelessly usable resources 200-1 and wirelessly usable resources 200-4) may be performed via NOMA (e.g., including NOMA). As used herein, NOMA refers to a network protocol that separates signals based on a power domain. For example, signals may be received (e.g., from users) in intentionally introduced mutual interference and may be separated from each other based on their power level differences. Thus, compared to those orthogonal multiple access (OMA) schemes, in which different users are allocated orthogonal resources in the time, frequency, and / or code domains, the time, frequency, and / or code of the signals received and to be processed according to NOMA may be non-orthogonal. Therefore, using a non-orthogonal network protocol such as NOMA can provide benefits, such as reduced latency associated with separating users based on factors other than the power domain, which can enable massive multiple-input multiple-output (MIMO).
[0087] In several embodiments, the wirelessly usable resource 200-1 may be used by the wirelessly usable resource 200 at discrete times. For example, the wirelessly usable resource 200-1 may be used by the wirelessly usable resource 200-3 during a subsequent period of a specific period during which the wirelessly usable resource 200-1 is used by the wirelessly usable resource 200-2, for example. Thus, the wirelessly usable resource 200-1 may be used by each of the wirelessly usable resources 200 at different times (e.g., non-overlapping time periods). However, the embodiments are not limited thereto. For example, the wirelessly usable resource 200-1 may be used by the wirelessly usable resource 200 at the same time. As an example, the wirelessly usable resource 200-1 may be physically and / or logically divided so that the divided portions may be used by the wirelessly usable resource 200 at the same time.
[0088] Figure 3 is a block diagram of an example of a network 330 that wirelessly couples selected wirelessly usable resources to form a storage pool according to several embodiments of the present disclosure. In several embodiments, the network 330 may include multiple elements (e.g., two or more vehicles) that may be included in a storage pool, as described herein.
[0089] like Figure 3 As shown in FIG. 3 , in some embodiments, the elements that may be included in the network 330 may be several single vehicles 331 and / or transport vehicles 333. In some embodiments, the network 330 may include several base stations 325.
[0090] As described herein, a single vehicle 331 is intended to mean a vehicle that can be owned, leased, rented, or borrowed to enable travel from a starting point to a predetermined destination, or vice versa. A single vehicle 331 can be driven or directed to travel by a person (e.g., a driver) and / or autonomously (e.g., via a memory resource coupled to a processing resource, as described herein). Travel can be performed by a single vehicle 331 and a number of passengers (e.g., a driver and / or a number of other persons) or by the vehicle itself as an autonomous vehicle. Examples of a single vehicle 331 may include: automobiles (e.g., sedans, pickup trucks, minivans, personal trucks and / or vans, sport utility vehicles, etc.); motorcycles; taxis; buses; limousines; airplanes; helicopters; aerial drones; watercraft (e.g., private and / or commercial vessels and / or ships operating in port environments and / or waterways), motorboats, submarines, locomotives operating on rails (e.g., connected to a number of rail cars); and mobile equipment operating within or outside of a commercial or industrial facility (e.g., manual or automated pallet trucks, boxes, carts, etc.); and many other such possibilities.
[0091] As described herein, transport vehicle 333 is intended to mean a vehicle that can be owned, leased, rented, or borrowed to enable the transportation of goods and / or services (e.g., shipment of one or more products provided by a business) from a place of origin to a predetermined destination, or vice versa. Transport vehicle 333 can be driven or directed to travel by a person (e.g., a driver) and / or autonomously (e.g., via a memory resource coupled to a processing resource, as described herein). Travel can be performed by transport vehicle 333 and several passengers (e.g., the driver and / or several other persons), which can also include transporting products (e.g., in a loading bed of transport vehicle 333) or the transport vehicle itself as an autonomous vehicle. Examples of transport vehicles 333 may include: commercial trucks and / or vans; a fleet of trucks and / or vans operating as a train, group, and / or convoy (e.g., on or within a designated lane of a road, highway, interstate, etc.); a fleet of commercial vessels and / or ships operating in a port environment and / or waterway; a fleet of commercial aerial drones operating on or within a designated airport, runway, and / or flight path; and many other such possibilities.
[0092] Also as shown at 225 and in combination Figure 2As described elsewhere herein, base station 325 is intended to mean a land station in mobile service (e.g., according to the International Telecommunication Union (ITU) Radio Regulations). The term may be used in the context of mobile phones, wireless computer networks, and other wireless communications and / or in land surveying. Base station 325 may include a GPS receiver located at a known location, and in wireless communications, it may include a transceiver that connects several other devices to each other and / or connects it to a wider area. In a mobile phone, base station 325 may provide a connection between a mobile phone and a wider telephone network. In a computing network, base station 325 may include a transceiver that acts as a router for computing components (e.g., memory resources 101 and processing resources 108) in a network (e.g., a memory pool), and it is possible to connect them to a WAN, WLAN, the Internet, and / or the cloud. For a wireless network, base station 325 may include a radio transceiver that can be used as the center of a local wireless network. Base station 325 may also be a gateway between a wired network and a wireless network. Base station 325 may be a wireless communication station installed at a fixed location.
[0093] In geographic areas with relatively low densities of memory resources 101, processing resources 108, and / or transceiver resources 120 (e.g., rural areas versus urban areas, such as in combination with Figure 4 As described above), low density can reduce the likelihood of building new base stations (e.g., making such a structure commercially unfeasible, among other possible reasons). Therefore, wireless communications that can form a memory pool can be enabled by installing repeaters. A repeater is a base station that extends the range of a mobile radio transceiver (e.g., wireless communications via transceiver resources 120). A repeater may include a bidirectional amplifier for improving wireless signal reception. The repeater system may also include an antenna that receives and transmits signals from, for example, a base station, a cellular tower, a coaxial cable, etc. via a signal amplifier and / or a rebroadcast antenna. However, some rural, suburban, and / or urban environments may include multiple base stations within a particular area (e.g., determined by the reception / transmission range of a cellular tower and / or possible obstructions to it by infrastructure such as buildings).
[0094] Therefore, in several embodiments, Figure 3The illustrated network 330 may implement wireless sharing of data by forming a memory pool between multiple 332 single vehicles 331, multiple 334 transport vehicles 333, and / or multiple 336 base stations 325. Alternatively or additionally, in several embodiments, the network 330 may implement wireless sharing of data by forming a memory pool 338 between at least one of the multiple 332 single vehicles 331 and at least one of the multiple 334 transport vehicles 333. The network 330 may also implement wireless sharing of data by forming a memory pool 337 between at least one of the multiple 332 single vehicles 331 and at least one of the multiple 336 base stations 325 and / or a memory pool 339 between at least one of the multiple 332 transport vehicles 333 and at least one of the multiple 336 base stations 325. Alternatively or in addition, in several embodiments, a memory pool can be formed between at least one of a plurality 332 of single vehicles 331 and / or at least one of a plurality 334 of transport vehicles 333 and an infrastructure (e.g., a house, police / fire / news station, business, factory, etc., as shown at 444, 445, 446) containing memory resources 101, processing resources 108, and / or transceiver resources 120, as described herein.
[0095] Thus, as described herein, a first memory resource 101-1 located and / or formed on a first device (e.g., one of a single vehicle 331, a transport vehicle 333, or a base station 325), a first processing resource 108-1 coupled to the first memory resource 101-1, and a transceiver resource 120 coupled to the first processing resource 108-1 may be configured to enable formation of a memory pool between the first memory resource 101-1 and the second memory resource 101-2 in response to a request (e.g., a request received from the first processing resource 108-1) to access a second memory resource 101-2 located and / or formed on a second device (e.g., at least another of the single vehicle 331, the transport vehicle 333, or the base station 325). The request may be transmitted from the first processing resource 108-1 via the transceiver resource 120. The controller 110 may be coupled to the first processing resource 101-1.
[0096] In several embodiments, the controller 110 may be configured to selectively determine specific functionality in which data will be shared by the second memory resource 101-2 with the first memory resource 101-1, as described herein. The controller 110 may be further configured to selectively determine, in response to a prioritization of the requested data, a specific memory device (e.g., determined in the memory devices 103-1, 103-2, ..., 103-N) of the first memory resource 101-1 with which the data will be shared by receiving from the second memory resource 101-2 via the transceiver resource 120. For example, a request from a first processing resource 108-1 (e.g., located and / or formed on an autonomous vehicle) to access the second memory resource 101-2 may be prioritized so that the first processing resource 108-1 processes the data received from the second memory resource 101-2, in several embodiments, to enable transportation guidance of the autonomous vehicle, and then may provide a response to a request for data received from the second processing resource 108-2 coupled to the second memory resource 101-2. The controller 110 may be further configured to selectively determine, in response to the prioritization of the requested data, a particular memory device 103 of the first memory resource 101-1 that the data is to be shared by transmitting via the transceiver resource 120 to the second processing resource 108-2 coupled to the second memory resource 101-2.
[0097] The second memory resource 101-2 coupled to the second processing resource 108-2 may be configured to share data between the second memory resource 101-2 and the first memory resource 101-1. The first memory resource 101-1, the second memory resource 101-2, and the transceiver resource 120 may be configured to enable execution of an operation directed by the first processing resource 108-1 based on processing of data shared between the first memory resource 101-1 and the second memory resource 101-2. Execution of the operation by the first processing resource 108-1 may be enabled based on processing of data values shared by the second processing resource 108-2 coupled to the second memory resource 101-2. In several embodiments, the data values shared by the second processing resource 108-2 may include at least one data value that is different from a data value previously stored by the first memory resource 101-1. The storage of the at least one different data value may enable execution of an operation, the execution of the operation based on processing of code including the at least one different data value being different from execution of the operation based on processing of the code prior to storing the at least one different data value.
[0098] In several embodiments, the transceiver resource 120 may include a first RF transceiver coupled to the first processing resource 108-1 (eg, as shown at 663 and in conjunction with Figure 6The transceiver resource 120 may be wirelessly coupled to a cloud processing resource 122, as described herein, to enable the formation of a memory pool.
[0099] In several embodiments, first memory resource 101-1 and first processing resource 108-1 may be on a first autonomous vehicle, and second memory resource 101-2 and second processing resource 108-2 may be on a second autonomous vehicle. Data shared by first memory resource 101-1 and second memory resource 101-2 may enable directing of a transport of the first autonomous vehicle or the second autonomous vehicle to an intended destination. The transport may be directed (e.g., by controller 110) to include performance of at least one operation by the first autonomous vehicle or the second autonomous vehicle that is different from an operation previously performed based on data values stored by the respective first memory resource 101-1 or second memory resource 101-2.
[0100] Figure 4 4 is a block diagram illustrating an example of an environment corresponding to a range of densities of wirelessly usable resources that can be coupled to form a memory pool according to several embodiments of the present disclosure. In several embodiments, the range of density 440 of resources can correspond to Figure 4 A "low" density of such resources as shown at or near the left to a "high" density of such resources as shown at or near the right.
[0101] The density range 440 of such resources may correspond to the number of resources 441 located (e.g., fixedly and / or movably located at a particular point in time and / or within a particular time period) within a particular area (e.g., geographically defined and / or defined by base stations, cellular towers, cloud coverage, and other possibilities for defining an area). In several embodiments, the density of resources 440 and / or the number of resources 441 in a particular area may help determine the size of a memory pool between a plurality of such resources coupled to wirelessly share data. For example, a low density of such resources may support the formation of a memory pool that includes fewer such resources than may be included in a memory pool formed in the presence of a high density of such resources, wherein a memory pool is likely to include an intermediate number of such resources, wherein the density 440 is between low and high.
[0102] The number of resources 441 in a particular area may correspond to the number of memory resources 101, processing resources 108, transceiver resources 120, and / or base stations 425 within the particular area. In several embodiments, the number 441 of resources may be formed and / or located on a corresponding number of single vehicles 431, transport vehicles 433, base stations 425, and / or infrastructure (e.g., houses 444, police / fire / news stations and / or businesses 445, factories and / or corporate offices, etc. 446) located within the area and / or within the proximity of an expected delivery route or possible alternative delivery routes for a single vehicle 431 and / or transport vehicle 433. An increased density 440 within a region, an increased number 441 of such resources, and / or an increased number of different types of such resources (e.g., a mix of single vehicles 431, transport vehicles 433, several base stations 425, and / or infrastructure 444, 445, 446) may correspond to an increased complexity 442 of such resources within the region.
[0103] For example, an area with low density 440, number 441, and / or complexity 442 of resources may be a rural area, such as Figure 4 . Such a rural area may include multiple delivery routes 443 (e.g., widely separated interstate highways, state and / or county roads, etc.), which may correspond to potential expected delivery routes of a single vehicle 431 and / or a transport vehicle 433. Such a rural area may have as few as two single vehicles 431-1 or as few as two transport vehicles 433 and / or as few as one single vehicle 431-1 and one transport vehicle 433 at a specific point in time and / or within a specific time period to form a memory pool. In some cases, such a rural area and / or a portion of a delivery route 443 may or may not include base stations and / or infrastructure that facilitate the formation of a memory pool. Therefore, a memory pool can be formed by direct wireless coupling between processing resources of a single vehicle 431 and / or a transport vehicle 433.
[0104] For example, an area with medium density 440, number 441, and / or complexity 442 of resources may be a suburban area, such as Figure 4In the middle or near. Such a suburb may include a delivery route 443 of a single vehicle 431 and / or a transport vehicle 433 that exists in a rural area. At a specific point in time and / or within a specific time period, such a suburb may be more likely to have at least two single vehicles 431-2 to form a memory pool. The suburb may or may not include any transport vehicle 433 at a specific point in time and / or within a specific time period. Such a suburb may be more likely to include at least one base station 425-1 and / or infrastructure 444, 445 that contributes to the formation of a memory pool. Therefore, the memory pool can be formed by direct or indirect wireless coupling between the processing resources of a single vehicle 431-2 and / or a transport vehicle 433. In several embodiments, the memory pool can be formed between the processing resources of a single vehicle 431 and / or a transport vehicle 433 by indirect wireless coupling via the base station 425-1 and / or the infrastructure 444, 445.
[0105] For example, an area with high density 440, number 441, and / or complexity 442 of resources may be an urban area, such as Figure 4 As shown on or near the right. Such an urban area may include a delivery route 443 of a single vehicle 431 and / or a transport vehicle 433 that exists in a rural area and / or suburb. At a specific point in time and / or within a specific time period, such an urban area may be more likely to have more than two single vehicles 431-3 to form a memory pool. An urban area may or may not include any transport vehicle 433 at a specific point in time and / or within a specific time period. Such an urban area may be more likely to include more than one base station 425-2 and / or infrastructure 446 (for example, in addition to infrastructure 444, 445) that contributes to the formation of a memory pool. Therefore, a memory pool can be formed by direct wireless coupling between processing resources of a single vehicle 431-3 and / or a transport vehicle 433. In several embodiments, a memory pool can be formed between processing resources of a single vehicle 431 and / or a transport vehicle 433 by indirect wireless coupling via a base station 425-2 and / or infrastructure 444, 445, 446.
[0106] Figure 5 5 is a block diagram illustrating an example of a route of a vehicle on which wirelessly usable resources may be implemented to form a memory pool in accordance with several embodiments of the present disclosure. In several embodiments, route 550 may represent an intended route for a vehicle to be transported toward an intended destination. The intended destination may vary depending on the individual vehicle under consideration. Route 550 may be rural, suburban, and / or urban areas (e.g., as combined with Figure 4 roads, streets, highways, interstates, etc., as described herein.
[0107] Route 550 can be used for transportation of several transport vehicles (e.g., as shown at 533-1, 533-2, ..., 533-M) and / or several single vehicles (e.g., as shown at 531-1, 531-2, ..., 531-O) at a specific time and / or within a specific time period. In several embodiments, route 550 or at least a portion 551 of the route (e.g., one or more lanes) can be designated for transportation of several transport vehicles 533. For example, portion 551 of route 550 can be designated for or at least for multiple automated transport vehicles 533-1, 533-2, ..., 533-M that transport in sequence (e.g., as a convoy) toward an intended destination, but at least some of the transport vehicles can continue toward various other destinations after arriving at the intended destination.
[0108] Alternatively or additionally, in several embodiments, the route 550 or at least a portion 552, 553 of the route 550 (e.g., one or more lanes) may be designated for the transportation of several single vehicles 531. For example, the portions 552, 553 of the route 550 may be designated for or at least for autonomous single vehicles 531-1, 531-2, ..., 531-O that are each transported toward an intended destination, and in several embodiments, the intended destination of each single vehicle may be different. At least one portion 552 (e.g., lane) of the route 550 where the single vehicle 531 can be transported may be adjacent to (e.g., next to) the portion 551 designated for the transportation of the transport vehicle 533. For example, the lane designated for the transportation of the single vehicle may be positioned on each side of the one or more lanes designated for the transportation of the transport vehicle. The portion shown at 553 may represent one or more lanes designated for the transportation of the single vehicle 531, which extend outward relative to the portion 552 adjacent to the portion 551 designated for the transportation of the transport vehicle 533.
[0109] In some embodiments, each portion 551 (e.g., lane) of a delivery designated for a transport vehicle 533 may be wider than each portion 552, 553 (e.g., lane) of a delivery designated for a single vehicle 531. In some embodiments, each portion 551 of a delivery designated for a transport vehicle 533 and / or each portion 552, 553 of a delivery designated for a single vehicle 531 may be equipped with sensors (e.g., configured to wirelessly communicate with an on-vehicle processing resource 108) to facilitate determining and / or tracking the location of the transport vehicle 533 and / or the single vehicle and / or verifying that the transport vehicle 533 and / or the single vehicle is making the delivery in the appropriate portion of the route 550.
[0110] Figure 6 is a schematic diagram showing an example of a wirelessly usable resource that can be selectively coupled to a circuit system to enable memory pool formation according to several embodiments of the present disclosure. Figure 6 The resources of the circuit system 660 shown include processing resources 608 and coupling to memory resources (e.g., such as Figure 1 605-1, ..., 605-N of the memory devices in 103-1, ..., 103-N and 101, respectively. Processing resource 608 is shown as including controller 610. In combination Figure 6 When describing the circuit system shown in FIG. 6 , for the sake of clarity, the controller 610 is shown as being formed of a plurality of sections (e.g., sections 610-1, 610-2, . . . , 610-N), but the controller 610 may be formed as a single component (e.g., Figure 1 As further described herein, the circuit system (e.g., as shown at 618 and / or 661) and / or the controller 610 can be coupled to a plurality of RF transceivers (e.g., as shown at 663-1, 663-2, ..., 663-N) of the transceiver resources 120 to enable transmission of requests for wireless shared data for forming a memory pool and / or reception of the data. In several embodiments, in addition to incorporating Figure 6 In addition to the functions described, the resources just described can each be configured to perform combined Figure 1-5 and at least part of the functions described in 7-8.
[0111] The controller section 610-1 may be coupled to Figure 1 1) of the bus 118 described above may be selectively coupled to the channel 605-1 to issue commands and / or addresses related to the execution of specific functionality from the processing resource 608 to be directed to the appropriate one or more memory devices selectively coupled to the I / O line 618-1. The commands and / or addresses may enable retrieval of previously stored data from the appropriate memory device and / or the appropriate number of rows in the memory device via the I / O line 618-1 to enable execution of the specific functionality by the controller section 610-1.
[0112] In several embodiments, the I / O line 618-1 may cause the input of newly received data (e.g., received by the processing resource 608 via the formation of a memory pool between the first memory resource 201-1 and the second memory resource 201-2) to be stored by the appropriate memory device and / or the appropriate row of the memory device, thereby improving the execution of the specific functionality by the controller section 610-1. Alternatively or in addition, in response to a request for such data by another processing resource (e.g., the second processing resource 208-2), the I / O line 618-1 may cause previously stored data to be output from the appropriate memory device and / or the appropriate row of the memory device (e.g., output by the processing resource 608 via the formation of a memory pool with the second memory resource 201-2) via a command and / or an address.
[0113] Issuance of a sub-specific command and / or address by the processing resource 608 via the controller section 610-1 may selectively determine whether the I / O line 618-1 is configured to enable input of newly received data or output of previously stored data or to enable retrieval of previously stored data to enable execution of the specific functionality by the controller section 610-1. Thus, a first command and / or address issued via the controller section 610-1 may instruct a switch 661-1 of the circuitry associated with the I / O line 618-1 to open to disconnect the channel 605-1 from the controller section 610-1, while connecting (e.g., coupling) the portion of the I / O line 618-1 that remains connected to the channel 605-1 to the RF transceiver 663-1 to enable input of newly received data or output of previously stored data. A second command and / or address issued via controller section 610-1 may instruct switch 661-1 of the circuitry associated with I / O line 618-1 to close to connect (e.g., couple) channel 605-1 with controller section 610-1, while disconnecting RF transceiver 663-1 to enable retrieval of previously stored data and enable execution of the particular functionality by controller section 610-1. Other controller sections, I / O lines, channels, switches, and / or RF transceivers (e.g., as shown at 610-N-1, 618-N, 505-N, 661-N, and / or 663-N-1, respectively) may operate in a similar manner.
[0114] Thus, a processing resource 608 including a controller section 610-1, ..., 610-N-1 can be selectively coupled to a plurality of switches 661-1, ..., 661-N corresponding to a plurality of channels 605-1, ..., 605-N of a memory resource. In response to a request received from a second processing resource coupled to a second memory resource, the controller section can be configured to select which specific channel to enable in response to selective activation of a specific switch to transmit data stored in the memory of the specific channel via an RF transceiver 663-1, ..., 663-N-1 selectively coupled to the specific channel. The controller section can be further configured to receive data from the second memory resource via an RF transceiver selectively coupled to the specific channel to be stored in the memory of the specific channel in response to a request transmitted by the processing resource 608.
[0115] The controller section 610-2 of the processing resource 608 can be optionally coupled to the RF transceiver 663-2 to issue (e.g., transmit) a request to form a memory pool to wirelessly share data to other processing resources (e.g., the second processing resource 108-2). In several embodiments, the request can be for data corresponding to a specific functionality of data stored by an appropriate memory device and / or an appropriate row of a memory device that is optionally coupled to the channel 605-1. After receiving a response from at least one other processing resource (e.g., the second processing resource 208-2) that such data is stored and / or available at a specific address in the memory resource (e.g., the second memory resource 201-2), the processing resource 608 can issue a command and / or address to form a memory pool and / or access the data to be shared wirelessly via the controller section 610-2. Other controller sections and / or RF transceivers (e.g., as shown at 610-N and / or 663-N, respectively) can operate in a similar manner.
[0116] In several embodiments, a first memory resource (e.g., memory resource 201-1) may be configured to wirelessly share data, and a second memory resource (e.g., memory resource 201-2) may be configured to wirelessly share data. Figure 1 The controller 110 (shown at 112 in the figure) may be configured to evaluate the resource availability of the first memory resource and the second memory resource to determine whether to allow them to combine and wirelessly share data. The availability of the first memory resource or the second memory resource may be determined based on determining that the first memory resource and / or the second memory resource is executing a workload at a specific point in time and / or within a specific time period.
[0117] For example, the first memory resource is available at a specific point in time when the first memory resource and / or the corresponding processing resource is not being used to perform a specific operation (e.g., involving forming a memory pool and / or enabling execution of a specific functionality). Similarly, the second memory resource is available at a specific point in time when the second memory resource and / or the corresponding processing resource is not being used to perform a specific operation. The combining component 112 can be further configured to facilitate the formation of a memory pool to share data in response to determining (e.g., for the specific functionality) that data stored by the available second memory resource 201-2 corresponds to data stored by the available first memory resource 201-1.
[0118] In several embodiments, the combining component 112 may be further configured to determine that the data stored by the available second memory resource 201-2 is capable of enabling the first memory resource 201-1 to perform an operation that is different from the operation that can be performed based on the data stored by the first memory resource 201-1, and then enable a memory pool between the first memory resource and the available second memory resource. The combining component 112 may be further configured to facilitate the transfer of data from the available second memory resource 201-2 to the corresponding first memory resource 201-1 via the formation of a memory pool. The data transferred from the available second memory resource 101-2 may be stored by the corresponding first memory resource 101-1.
[0119] A first processing resource (e.g., 208-1 or 608) including a controller (e.g., as shown at 110 and / or 610-2) may be selectively coupled to a transceiver resource (e.g., as shown at 663-2) configured to transmit a request for wirelessly shared data. The request may be to receive data from at least one second memory resource 201-2, wherein the data may correspond to a specific functionality having instructions executed therefor stored in a memory of a corresponding specific channel (e.g., as shown at 105-1 and / or 605-1) of the first memory resource 201-1. Execution of the specific functionality may be different due to accessing instructions stored by the first memory resource 201-1, including data received from the at least one second memory resource 201-2, relative to instructions previously stored in the memory of the specific channel.
[0120] As described herein, a first memory resource 201-1 coupled to a first processing resource 208-1 and a second memory resource 201-2 coupled to a second processing resource 208-2 can each be configured to wirelessly share data. In several embodiments, the second memory resource 201-2 can be separate from the first memory resource 201-1 (e.g., by being formed and / or positioned on a different vehicle, as described herein), and the second memory resource 201-2 can be configured to wirelessly share data between the second memory resource and the first memory resource.
[0121] Arbitrator components (e.g. Figure 1 The controller 110 (shown at 114 in the middle) can be configured to selectively determine whether the first memory resource 201-1 and the second memory resource 201-2 are authorized to enable the formation of a memory pool to wirelessly share data. Thus, the first processing resource 208-1 and the arbitrator component 114 can be configured to determine the enabling of the memory pool between the first memory resource 201-1 and the second memory resource 201-2 in response to a request for wirelessly shared data from the first processing resource or the second processing resource.
[0122] In several embodiments, a particular number of memory resources included in the memory pool of the plurality of possible memory resources may be selectively scalable in response to a corresponding number of memory resources authorized by the arbitrator component 114. The bandwidth of the memory pool may be selectively scalable based on the particular number of memory resources authorized by the arbitrator component 114 for inclusion in the memory pool. The particular number of memory resources included in the memory pool of the plurality of possible memory resources may be dynamically determined in response to the number of memory resources present within a particular proximity to each other within a particular time period. The particular number of memory resources included in the memory pool of the plurality of possible memory resources may be dynamically determined in response to the number of memory resources authorized by the arbitrator component 114 as a match to the authorization criteria within the particular time period.
[0123] In several embodiments, a match can be determined by the arbitrator component 114 as a match to at least one authorization criterion. For example, multiple authorization criteria (e.g., Figure 7 770) can be used by the arbitrator component 114 to selectively determine whether the first memory resource 201-1 and the second memory resource 201-2 are authorized to be included in the memory pool. Thus, the match to the authorization criteria can be a match to at least one of the following: a specific proximity of the first memory resource relative to the second memory resource, as shown at 771, where the specific proximity can be a stable proximity (e.g., relative to other vehicles and / or base stations, among other possibilities), or in response to a determined density of memory resources (e.g., as combined with Figure 3 and4 the proximity of the memory pool to be dynamically adjusted, as shown at 772, the timing of the request for wirelessly shared data, as shown at 772, wherein the timing may correspond to the time of day, and the authorization may be dynamically adjusted in response to the determined density of the memory resources at the time of day (e.g., a higher density during peak hours may increase or decrease the number of resources authorized for inclusion in the memory pool); and / or matching of protocols for wireless communication between a first transceiver resource coupled to the first memory resource and a second transceiver resource coupled to the second memory resource (e.g., matching for an organization's proprietary encryption, a specific wireless fidelity (WiFi) protocol, and / or a protocol requiring matching keys associated with a particular portion of a possibly single vehicle and / or a transport vehicle). Thus, in several embodiments, a particular number of multiple memory resources included in the memory pool may correspond to a corresponding number of authorized vehicles, and in several embodiments, each authorized vehicle may be automatic.
[0124] Operational mode components (e.g. Figure 1 The first operation mode component 116-1 may be coupled to a processing resource 108 of each memory resource 101 included in the memory pool. For example, the first operation mode component 116-1 may be coupled to a first processing resource 208-1 of the first memory resource 201-1. The first operation mode component 116-1 may be configured to determine a specific number of a plurality of second memory resources 201-2 included in the memory pool. The first operation mode component 116-1 may be further configured to direct the operation mode component 116-2 of each second processing resource 208-2 coupled to the plurality of second memory resources 201-2 to modulate an operation parameter for accessing and / or transmitting data from a number of memory devices 103 in the second memory resource 201-2 to correspond to the determined specific number of the plurality of second memory resources 201-2. For example, in several embodiments, the burst length of data allowed to be transmitted from the second memory resource 201-2 may be modulated to be shorter, and / or cache pre-fetch operations may be modulated to increase to correspond to a higher number of second memory resources 201-2 in the memory pool, as well as modulation of other possible operating parameters.
[0125] Figure 8 8 is a flow chart illustrating an example of a method 880 for forming a memory pool between selected wirelessly usable memory resources implemented on a corresponding number of vehicles according to several embodiments of the present disclosure. Unless explicitly stated, the method elements described herein are not limited to a particular order or sequence. In addition, several method embodiments or elements thereof described herein may be performed at the same or substantially the same time point.
[0126] At block 881, in several embodiments, method 880 may include transmitting, via a first transceiver at a first vehicle, a request for data stored by a second memory resource at a second vehicle to facilitate access to a task file stored by a first memory resource at the first vehicle (e.g., as shown at 117 and in conjunction with Figure 1 The request may be wirelessly transmitted via a first transceiver through a first processing resource located and / or formed on a first vehicle (e.g., an autonomous vehicle) coupled to a first memory resource. In various embodiments, a particular number of the plurality of memory resources may be located and / or formed on a corresponding number of the plurality of vehicles (e.g., as combined with Figure 1-7 described).
[0127] At block 882, in several embodiments, method 880 may include, in response to the request, receiving, via a first transceiver at the first vehicle, stored data from a second memory resource at the second vehicle to facilitate processing of the task file. The response may be wirelessly transmitted via the second transceiver through a second processing resource located and / or formed on the second vehicle and coupled to the second memory resource to form a memory pool to transmit data to facilitate processing of the task file (e.g., as shown at 117 and in conjunction with Figure 1 The request and the response may be sent directly between vehicles. In several embodiments, at least one of the request and the response may be transmitted via a base station. In several embodiments, the response may be transmitted via a base station different from the base station from which the request was sent.
[0128] In some embodiments, the method 880 may further include forming a memory pool including more than two memory resources of the plurality of memory resources to transfer data, thereby facilitating processing of the task file (eg, up to the combined memory resources). Figure 1 and 6 -7). For example, a memory pool may be formed to include a first memory resource at a first vehicle, a second memory resource at a second vehicle, and one or more additional memory resources at one or more additional vehicles, wherein data received from each of the additional memory resources may facilitate processing of the task file. The method 880 may further include forming the memory pool in response to determining that the data stored by the second memory resource enables improved duration or safety of execution of at least a portion of a previously stored task file.
[0129] The method 880 may further include executing the task file based at least in part on processing the instructions stored by the first memory resource and the stored data received from the second memory resource. For example, the task file may be executed differently based on processing the stored instructions relative to the instructions stored by the task file prior to storing the transferred data, including the data transferred from the second memory resource. The method 880 may further include forming a memory pool in response to determining that the data stored by the second memory resource enables improved duration and / or safety of execution of at least a portion of the previously stored task file.
[0130] Method 880 may further include determining that a second memory resource stores data representing at least one of a mapping, imaging, or classification of objects associated with an expected delivery route for a task file, or any combination thereof. A request for such data may be based, at least in part, on determining that such data is stored by a second memory resource for transmission. In several embodiments, an improved duration and / or safety of execution of a previously stored task file may be based on determining that a second memory resource stores data representing at least one of a mapping, imaging, and / or classification of objects associated with an expected delivery route for a previously stored task file (e.g., a vehicle, a construction road, and / or other movable or inanimate objects that may affect time and / or safety). Upon determining that such, a memory pool may be formed to transmit at least one of the corresponding mapped, imaged, and / or classified data, thereby enabling processing of task files that are improved over previously stored task files.
[0131] In the above detailed description of the present disclosure, reference is made to the accompanying drawings which form a part of the present disclosure and in which are shown by way of illustration the manner in which one or more embodiments of the present disclosure may be practiced. These embodiments are described in sufficient detail to enable one of ordinary skill in the art to practice the embodiments of the present disclosure, and it is understood that other embodiments may be utilized and process, electrical and structural changes may be made without departing from the scope of the present disclosure.
[0132] As used herein, particularly with respect to the drawings, reference numerals with hyphenated numerals and / or designators such as “M,” “N,” “X,” “Y,” etc. (e.g., Figure 1 103-1, 103-2, ..., 103-N) in the indication may include a plurality of the specific features so specified. In addition, in some embodiments, when only the first three digits (e.g., 103) are used without hyphens, these digits are presented to generally represent all the plurality of the specific features.
[0133] It should also be understood that the terms used herein are for the purpose of describing specific embodiments only and are not intended to be limiting. As used herein, unless the context clearly dictates otherwise, the singular forms "a" and "the" include single and multiple references, such as "several", "at least one" and "one or more" (e.g., several memory arrays may refer to one or more memory arrays), while "multiple" is intended to refer to more than one such thing. In addition, throughout this application, the word "can / may" is used in a permissive sense (i.e., it is possible, can) rather than in a mandatory sense (i.e., must). The term "comprising" and its derivatives mean "including but not limited to". The term "coupled / coupling" means physically connected directly or indirectly for access and / or for moving (transmitting) instructions (e.g., control signals, address signals, etc.) and data when the context is appropriate. The terms "data" and "data value" are used interchangeably herein and may have the same meaning (e.g., one or more data units or "bits") when the context is appropriate.
[0134] Although example embodiments of various combinations and configurations of memory resources, processing resources, transceiver resources, memory devices, controllers, mission files, single vehicles, transport vehicles, base stations, infrastructure, and switches, and other components for forming a memory pool between selected memory resources have been shown and described herein, embodiments of the present disclosure are not limited to those combinations that have been explicitly listed herein. Other combinations and configurations of memory resources, processing resources, transceiver resources, memory devices, controllers, mission files, single vehicles, transport vehicles, base stations, infrastructure, and switches disclosed herein for forming a memory pool between selected memory resources are explicitly included within the scope of the present disclosure.
[0135] Although specific embodiments have been illustrated and described herein, it will be appreciated by those skilled in the art that arrangements calculated to achieve the same results may replace the specific embodiments shown. The present disclosure is intended to cover modifications or variations of one or more embodiments of the present disclosure. It should be understood that the above description is in an illustrative and not restrictive manner. After reviewing the above description, the combination of the above embodiments and other embodiments not specifically described herein will be apparent to those skilled in the art. The scope of one or more embodiments of the present disclosure includes other applications in which the above structures and processes are used. Therefore, the scope of one or more embodiments of the present disclosure should be determined with reference to the attached claims and the full scope of equivalents to which such claims are assigned.
[0136] In the foregoing Detailed Description, some features are grouped together in a single embodiment for the purpose of simplifying the disclosure. This method of disclosure should not be interpreted as reflecting an intention that the disclosed embodiments of the disclosure must use more features than those explicitly recited in each claim. On the contrary, as reflected in the appended claims, the subject matter of the present invention lies in less than all features of a single disclosed embodiment. Therefore, the appended claims are hereby incorporated into the Detailed Description, with each claim standing on its own as a separate embodiment.
Claims
1. A system, wherein include: a first memory resource coupled to the first processor and configured to wirelessly share data; a second memory resource coupled to a second processor, wherein the second memory resource is separate from the first memory resource and configured to wirelessly share data between the second memory resource and the first memory resource; as well as A controller configured to determine whether the first memory resource and the second memory resource are authorized to enable formation of a memory pool based on authorization criteria, and wherein the first processor and the controller are configured to determine to enable the memory pool between the first memory resource and the second memory resource.
2. The system of claim 1, wherein a specific number of the plurality of memory resources contained in the memory pool is selectively expandable in response to a corresponding number of memory resources authorized by the controller.
3. The system of claim 1, wherein the bandwidth of the memory pool is selectively scalable based on a specific number of memory resources authorized by the controller to be included in the memory pool. 4 . The system of claim 1 , wherein the specific number of the plurality of memory resources included in the memory pool is dynamically determined in response to a number of memory resources that exist within a specific proximity to each other within a specific time period.
5. The system of claim 1, wherein the specific number of the plurality of memory resources included in the memory pool is dynamically determined in response to the number of memory resources authorized by the controller as a match to authorization criteria within a specific time period.
6. The system according to any one of claims 1 to 5, wherein the authorization criteria include at least one of the following: a specific proximity of the first memory resource relative to the second memory resource, wherein the specific proximity is a stable proximity or a proximity that can be dynamically adjusted in response to a determined density of memory resources; and Matching of a protocol for wireless communication between a first transceiver coupled to the first memory resource and a second transceiver coupled to the second memory resource.
7. The system of any one of claims 1-5, wherein the second memory resource is included on a base station.
8. The system according to claim 1, in: Each respective memory resource included in the memory pool includes a respective controller coupled to a respective processor; as well as A first controller coupled to the first processor for the first memory resource is configured to: determining a specific number of a plurality of second memory resources included in the memory pool; as well as A controller coupled to each second processor for the plurality of second memory resources is directed to modulate operating parameters for accessing and transferring data from a number of memory devices in the second memory resources to correspond to the determined particular number of the plurality of second memory resources.
9. A system, wherein include: a first memory resource and a first processor configured to wirelessly share data; a second memory resource and a second processor configured to wirelessly share data; as well as a controller configured to evaluate resource availability of the first memory resource and the second memory resource to determine whether to allow them to be combined to wirelessly share data in a memory pool; Authorization criteria that can be used by the controller to determine whether the first memory resource and the second memory resource are authorized for inclusion in the memory pool.
10. The system of claim 9, wherein the availability of the first memory resource or the second memory resource is determinable based on determining a workload being executed by the first memory resource or the second memory resource during a specific time period.
11. The system of claim 9, wherein the controller is further configured to facilitate formation of the memory pool to share the data in response to determining that the data stored by the available second memory resource corresponds to data stored by available first memory resources.
12. The system according to claim 9, in: The controller is further configured to facilitate transfer of the data from the available second memory resources to corresponding first memory resources via formation of the memory pool; as well as The data transferred from the available second memory resource is stored by the corresponding first memory resource.
13. The system of claim 9, wherein the first processor, which includes the controller, is selectively coupled to a plurality of switches corresponding to a plurality of channels of the first memory resource; and The controller is configured to select which particular channel to enable in response to selective activation of a particular switch to: transmitting, in response to a request received from a second processor coupled to the second memory resource, data stored in the memory of the particular channel via a transceiver selectively coupled to the particular channel; and In response to a request transmitted by the first processor, data is received from the second memory resource via the transceiver selectively coupled to the particular channel for storage in the memory of the particular channel.
14. The system of claim 9, wherein the first processor, which includes the controller and is selectably coupled to a transceiver configured to transmit a request for the wirelessly shared data; and in: The request is to receive data from at least one second memory resource, the data corresponding to a specific functionality, the specific functionality having instructions to be executed thereon, the instructions stored in a memory corresponding to a specific channel of the first memory resource; as well as Execution of the particular functionality differs from accessing stored instructions relative to instructions previously stored in the memory of the particular channel, including data received from the at least one second memory resource.
15. A device, wherein include: a first memory resource; a first processor coupled to the first memory resource; as well as a transceiver coupled to the first processor; wherein the first memory resource, the first processor, and the transceiver are configured to enable formation of a memory pool between the first memory resource and the second memory resource in response to a request for access to a second memory resource transmitted from the first processor via the transceiver, and wherein data of wirelessly shared data from the first memory resource to the second memory resource is maintained by the first memory resource, and wherein authorization criteria are used by a controller to determine whether the first memory resource and the second memory resource are authorized to be included in the memory pool.
16. The apparatus of claim 15, further comprising a controller configured to selectively determine a particular memory device of the first memory resource to which data is to be shared by receiving data from the second memory resource via the transceiver in response to a prioritization of requested data.
17. The apparatus of claim 15, further comprising a controller configured to, in response to a prioritization of requested data, selectively determine a particular memory device of the first memory resource that data is to be shared by transmitting via the transceiver to the second processor coupled to the second memory resource.
18. The apparatus of any one of claims 15-17, wherein the transceiver comprises a first radio frequency (RF) transceiver coupled to the first processor and a second RF transceiver coupled to a second processor such that the memory pool is formed between the first memory resource and the second memory resource.
19. The apparatus of any one of claims 15-17, wherein the second memory resource is located on a base station.
20. The apparatus of any of claims 15-17, wherein the request from the first processor for the access to the second memory resource takes precedence over a request for data received by the second processor from another processor coupled to another memory resource.