Control device, radio base station, and program
Patent Information
- Application Number
- PCT/JP2025/006739
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2025-02-26
- Publication Date
- 2026-09-03
Smart Images

Figure JP2025006739_03092026_PF_FP_ABST
Abstract
Description
Control device, radio base station, and program
[0001] The present invention relates to a control device, a wireless base station, and a program.
[0002] Patent Document 1 describes a terminal, wireless communication method, and base station that can achieve suitable overhead reduction / channel estimation / resource utilization. Patent Document 2 describes a technique for dynamic feature size adaptation in a divisible deep neural network (DNN). [Prior Art Documents] [Patent Documents] [Patent Document 1] International Publication No. 2024 / 201961 [Patent Document 2] Japanese Patent Publication No. 2024-509670
[0003] Currently, there is consideration to extending the application scope of AI (Artificial Intelligence) models to lower layers such as the physical layer. Since the acceptable delay for tasks in lower layers such as the physical layer is extremely short, it is necessary to lighten the AI model in order to extend its application scope to lower layers such as the physical layer. However, if the AI model is made lighter, there is a high possibility that its versatility will be compromised. Therefore, if a lightweight AI model is used to provide mobile communication services, there is a risk that the service quality of the mobile communication services may actually decrease. For these reasons, it is desirable to be able to lighten the AI model while maintaining its versatility.
[0004] According to one embodiment of the present invention, a control device to be mounted on a wireless base station is provided. The control device may include a first task execution unit. The control device may include a plurality of second task execution units. The control device may include a processing unit that processes tasks of the wireless base station using the first task execution unit and any of the plurality of second task execution units. The control device may include a determination unit that determines whether the communication quality of the wireless base station satisfies predetermined communication quality conditions while the processing unit is processing a task to be processed using one of the plurality of second task execution units. The control device may include a control unit that controls the processing unit to switch the processing of the task to be processed using the one second task execution unit if the determination unit determines that the communication quality of the wireless base station does not satisfy the communication quality conditions. Each of the plurality of second task execution units may be capable of executing a specific task at a higher speed than the first task execution unit. The specific tasks of each of the plurality of second task execution units may be different from each other.
[0005] The wireless base station may further include a receiving unit that receives movement speed information indicating the movement speed of a communication terminal from a communication terminal within a RAN (Radio Access Network) configured by the wireless base station, and a selection unit that, when the determination unit determines that the communication quality of the wireless base station does not meet the communication quality conditions, selects a switching destination task execution unit from among the first task execution unit and a plurality of second task execution units based on the movement speed information of the communication terminal, and the control unit may control the processing unit to switch the processing of the target task using the first second task execution unit to the processing of the target task using the switching destination task execution unit.
[0006] Any of the above-mentioned wireless base stations may further include a transmitting unit that transmits a reference signal to a communication terminal in the RAN configured by the wireless base station, a receiving unit that receives a measurement report of the reference signal from the communication terminal, and a selection unit that, when the determination unit determines that the communication quality of the wireless base station does not meet the communication quality conditions, selects a switching destination task execution unit from the first task execution unit and the plurality of second task execution units based on the measurement report of the reference signal, and the control unit may control the processing unit to switch the processing of the target task using the first second task execution unit to the processing of the target task using the switching destination task execution unit.
[0007] In any of the aforementioned wireless base stations, the selection unit may select the first task execution unit as the switching destination task execution unit.
[0008] In any of the aforementioned wireless base stations, the selection unit may select a second task execution unit other than the one second task execution unit from among the plurality of second task execution units as the switching destination task execution unit.
[0009] Any of the aforementioned wireless base stations may further include a receiving unit that receives user data to be transmitted by communication terminals within the RAN configured by the wireless base station, and the determination unit may determine that the communication quality of the wireless base station satisfies the communication quality conditions when the error rate, which is the probability that an error has occurred in the user data received by the receiving unit, is lower than a predetermined error rate threshold.
[0010] In any of the aforementioned wireless base stations, the control unit may control the processing unit to stop using the first second task execution unit if, within a predetermined period, the processing unit uses the first second task execution unit to process a plurality of tasks to be processed, and the number of times the determination unit has determined that the communication quality of the wireless base station does not meet the communication quality conditions exceeds a predetermined threshold for the number of determinations.
[0011] In any of the aforementioned wireless base stations, the processing unit may estimate the wireless channel between the wireless base station and the communication terminals in the RAN configured by the wireless base stations by processing the task to be processed using one of the first task execution unit and the plurality of second task execution units.
[0012] In any of the aforementioned wireless base stations, the first task execution unit may execute the task using an algorithm, and each of the plurality of second task execution units may execute the task using an AI model.
[0013] In any of the aforementioned wireless base stations, the first task execution unit and the plurality of second task execution units may be located in the physical layer of the wireless base station, and the control unit may be located in the data link layer of the wireless base station.
[0014] According to one embodiment of the present invention, a wireless base station is provided that is equipped with any of the above-mentioned control devices.
[0015] According to one embodiment of the present invention, a program is provided that, when executed by a computer, causes the computer to function as one of the control devices.
[0016] Furthermore, the above summary of the invention does not enumerate all the necessary features of the present invention. Subcombinations of these features may also constitute an invention.
[0017] A schematic diagram of one example of system 10 is shown. Another schematic diagram of system 10 is shown. A schematic diagram of one example of a wireless base station 300 is shown. This is an explanatory diagram for illustrating an example of an AI model implemented in the wireless base station 300. A schematic diagram of one example of the functional configuration of the control device 350 is shown. This is an explanatory diagram for illustrating an example of the processing flow of the control device 350. This is an explanatory diagram for illustrating another example of the processing flow of the control device 350. A schematic diagram of one example of the hardware configuration of the computer 1200 that functions as the control device 350 is shown.
[0018] Hereinafter, the present invention will be described through embodiments of the invention. However, the following embodiments do not limit the invention according to the claims. In addition, not all combinations of features described in the embodiments are necessarily essential to the solution of the invention. In the drawings, the same or similar parts may be assigned the same reference numerals, and overlapping descriptions may be omitted.
[0019] In the system according to the present embodiment, for example, a mechanism is adopted in which a plurality of lightweight AI models and existing algorithms are implemented in parallel in a radio base station, and a selector is arranged in front of the plurality of AI models and existing algorithms. For example, the radio base station switches the AI model used for processing tasks of the radio base station in accordance with instructions from a MAC (Media Access Control) scheduler and according to the status of a UE (User Equipment) within the radio communication area of the radio base station. As a result, the selective diversity gain of the AI model is added, and the AI model can be reduced in weight while maintaining the versatility of the AI model.
[0020] FIG. 1 schematically shows an example of the system 10. The system 10 may include one or more radio base stations 300 constituting a RAN. The system 10 may include a plurality of distributed infrastructures 200. The system 10 may include a management infrastructure 100 that manages the plurality of distributed infrastructures 200. In the system 10 according to the present embodiment, for example, the management infrastructure 100 and the plurality of distributed infrastructures 200 may cooperate to execute RAN control and AI processing.
[0021] The system 10 according to this embodiment may be applied to AI-RAN. AI-RAN may include three types: "AI for RAN", "AI on RAN", and "AI and RAN". "AI for RAN" may be a technology that utilizes AI and machine learning techniques to improve the frequency utilization efficiency and performance of existing RANs, or to realize automation of base station operations and power saving. "AI for RAN" is expected to optimize processing at all layers, such as channel estimation and scheduling processing performed by each cell of the RAN, optimize cooperation between RAN cells, and improve the equipment utilization rate of wireless base stations. "AI on RAN" may be a technology that utilizes the computing infrastructure of a wireless base station to provide highly immediate services to users and devices around the wireless base station with low latency. "AI on RAN" enables the deployment of AI and machine learning technology applications at the network edge via RAN, thereby facilitating the creation of new industries and solutions that leverage low latency and confidentiality. "AI and RAN" may be a technology for performing RAN processing and AI and machine learning technology processing that is not directly related to RAN on the same computing infrastructure. By integrating AI and RAN processing with "AI and RAN," improvements in infrastructure utilization efficiency can be expected. System 10 according to this embodiment may be applied in particular to "AI for RAN."
[0022] In the system 10 according to this embodiment, for example, the RAN function can be run on a high-performance GPU (Graphics Processing Unit) server instead of a general-purpose server, thereby allowing the surplus computing resources to be utilized for AI processing. Examples of AI processing include AI processing related to RAN control (sometimes referred to as RAN control AI processing) and AI processing unrelated to RAN control (sometimes referred to as non-RAN control AI processing).
[0023] As an example of RAN control AI processing, RIC (RAN Intelligent Controller) can be cited. RIC is a technology that uses AI to optimize RAN radio resources and automate RAN operation. RIC includes Non-RT RIC (Non-Real Time RIC) and Near-RT RIC (Near-Real Time RIC). Non-RT RIC is sometimes referred to as Centralized RIC. Non-RT RIC is located inside SMO (Service Management and Orchestration) that performs RAN management and orchestration. Non-RT RIC generates and notifies policies related to RAN control, and transmits information to Near-RT RIC. For example, Non-RT RIC executes machine learning using data collected from RAN to generate a trained model for RAN control and transmits it to Near-RT RIC. Near-RT RIC is sometimes referred to as Distributed RIC. Compared with Non-RT RIC, Near-RT RIC is located near RAN nodes (RU (Radio Unit), DU (Distributed Unit), CU (Central Unit)), and performs control of RAN nodes, resource control, etc. Compared with Non-RT RIC, Near-RT RIC executes processing with high real-time performance. Near-RT RIC executes inference processing related to RAN control using a trained model acquired from Non-RT RIC, for example. RAN control AI processing is not limited to RIC.
[0024] Non-RAN control AI processing may correspond to a so-called MEC (Multi-access Edge Computing) application. Examples of non-RAN control AI processing include, but are not limited to, monitoring AI execution processing that determines a situation within an imaging range of an input captured image, answer AI execution processing that outputs an answer to an input inquiry from a user, and the like.
[0025] The RAN may be a virtualized vRAN (Virtual RAN), and system 10 may perform control of the vRAN. The RAN may also be a physical RAN, and system 10 may perform control of the physical RAN.
[0026] The AI processing performed by system 10 may include RAN-controlled AI processing (sometimes referred to as RAN_AI). The AI processing performed by system 10 may also include non-RAN-controlled AI processing (sometimes referred to as non-RAN_AI).
[0027] The distributed infrastructure 200 may be data centers located in various locations. The distributed infrastructure 200 may be composed of multiple devices. The distributed infrastructure 200 may be implemented on a virtualization infrastructure consisting of multiple devices. The distributed infrastructure 200 may be implemented by a single device. In other words, the distributed infrastructure 200 may be a distributed device.
[0028] The distributed infrastructure 200 may have one or more CPUs (Central Processing Units). The distributed infrastructure 200 may have one or more GPUs. The distributed infrastructure 200 may have multiple superchips, each connected to a CPU and a GPU by an interconnect. This interconnect may be memory consistent and capable of achieving high bandwidth and low latency. Thus, the distributed infrastructure 200 may have both CPU resources and GPU resources as computing resources.
[0029] The distributed infrastructure 200 includes, for example, an execution unit that includes a RAN control function for controlling the functions of the RAN and an application execution function for executing applications. The distributed infrastructure 200 may further include the functions of a wireless base station 300.
[0030] The RAN control function controls the RAN functionality, for example, by executing RAN_AI. The RAN control function may also control the RAN functionality by executing other arbitrary processes.
[0031] The RAN control function controls, for example, the wireless base station 300. The RAN control function controls the wireless base station 300 to provide mobile communication services to communication terminals 30 within the RAN configured by the wireless base station 300.
[0032] The communication terminal 30 is, for example, a mobile phone such as a smartphone. The communication terminal 30 may also be a tablet device or a PC (Personal Computer). The communication terminal 30 may also be a so-called IoT (Internet of Things) device. The communication terminal 30 may include anything that falls under the so-called IoE (Internet of Everything).
[0033] The application execution function may, for example, have the ability to execute AI applications. The application execution function may also have the ability to execute non-RAN_AI applications. The application execution function may execute any other application.
[0034] The distributed infrastructure 200 is deployed, for example, on a core network provided by a telecommunications carrier. The term "on the core network" includes both the area inside and outside the core network.
[0035] The core network may conform to any mobile communication system. For example, the core network may conform to a 5G (5th Generation) communication system. The core network may conform to a 6G (6th Generation) communication system or later mobile communication systems. The core network may conform to a 3G (3rd Generation) communication system or an LTE (Long Term Evolution) communication system.
[0036] The management infrastructure 100 may be a data center that manages multiple distributed infrastructures 200. The management infrastructure 100 may be composed of multiple devices. The management infrastructure 100 may be implemented on a virtualization infrastructure consisting of multiple devices. The management infrastructure 100 may be implemented by a single device. In other words, the management infrastructure 100 may be a management device.
[0037] The management infrastructure 100 may be called the Core Brain, and the distributed infrastructure 200 may be called the Regional Brain. Note that Figure 1 illustrates a case where a single-layer management infrastructure 100 is located below the management infrastructure 100, but this is not the only example. The distributed infrastructure 200 may have multiple layers. For example, if two layers of distributed infrastructure 200 are located below the management infrastructure 100, the management infrastructure 100 may be called the Core Brain, the lower-layer distributed infrastructure 200 may be called the Regional Brain, and the lower-layer distributed infrastructure 200 may be called the Sub-Regional Brain.
[0038] Figure 2 schematically shows another example of system 10. System 10 may further include a monitoring device 400.
[0039] The wireless base station 300 is equipped with, for example, a control device 350 that controls various functions of the wireless base station 300. The wireless base station 300 may perform various functions in accordance with the control of the control device 350. Details of the control device 350 will be described later.
[0040] The monitoring device 400 monitors the target of monitoring. The target of monitoring device 400 may be one or more wireless base stations 300.
[0041] The monitoring device 400 monitors the radio base station 300, for example, based on the Key Performance Indicator (KPI) of the radio base station 300 received from the radio base station 300. The monitoring device 400 receives the KPI of the radio base station 300 from the radio base station 300, for example, via a network 20 that includes at least one of the core network and the internet.
[0042] The monitoring device 400 is mounted on, for example, the management infrastructure 100. The monitoring device 400 is mounted on, for example, the distributed infrastructure 200. The monitoring device 400 does not have to be mounted on either the management infrastructure 100 or the distributed infrastructure 200. Figure 2 illustrates an example in which the monitoring device 400 is not mounted on either the management infrastructure 100 or the distributed infrastructure 200.
[0043] Figure 3 schematically shows an example of a wireless base station 300. The wireless base station 300 may be equipped with a CPU 320 and a GPU 340.
[0044] The CPU 320 may be an example of the control device 350. The GPU 340 may be an example of the control device 350. The CPU 320 and GPU 340 may be examples of the control device 350.
[0045] Figure 3 illustrates an example in which the CPU 320 is located in the data link layer of the wireless base station 300, and the GPU 340 is located in the physical layer of the wireless base station 300. The CPU 320 and GPU 340 may be located in any layer of the wireless base station 300. Note that the physical layer may be referred to as L1, and the data link layer as L2.
[0046] The CPU 320 implements, for example, a MAC scheduler 325. The MAC scheduler 325 may have a function to determine a schedule for allocating the wireless resources of the wireless base station 300 to the communication terminal 30.
[0047] Radio resources may include time resources and frequency resources. A radio resource is, for example, a resource block (RB) composed of multiple resource elements (RE). For example, if one resource block contains 12 subcarriers and 1 slot, and 1 slot contains 7 symbols, then one resource block consists of 12 subcarriers × 7 symbols = 84 resource elements.
[0048] The GPU 340 may have the functionality to process tasks of the wireless base station 300. This section will mainly describe the case in which the GPU 340 processes tasks of the wireless base station 300 that arise between functions 341 and 342 implemented on the GPU 340.
[0049] The task of the wireless base station 300 may be any task that performs various functions of the wireless base station 300. For example, the task of the wireless base station 300 may be to perform a channel estimation function that estimates the wireless channel between the wireless base station 300 and the communication terminal 30. Channel estimation may involve estimating at least one of the attenuation amount and phase rotation amount of the radio waves that carry a signal as they propagate through the wireless channel.
[0050] The GPU 340 processes tasks for the wireless base station 300, for example, by executing a program. The GPU 340 executes a program that uses algorithm 344, for example. The GPU 340 executes a program that uses AI model, for example.
[0051] Figure 3 illustrates an example where the GPU 340 implements four AI models: AI model 345, AI model 346, AI model 347, and AI model 348. The number of AI models implemented by the GPU 340 may be five or more, or three or fewer. Note that multiple AI models implemented in the wireless base station 300 may be collectively referred to as an AI model.
[0052] The AI model is specialized for processing specific tasks of the wireless base station 300. For example, the processing speed when processing a specific task of the wireless base station 300 using the AI model is faster than the processing speed when processing the same specific task using algorithm 344. On the other hand, the processing speed when processing tasks of the wireless base station 300 other than the specific task using the AI model is slower than the processing speed when processing tasks of the wireless base station 300 other than the specific task using algorithm 344.
[0053] For example, the tasks of the radio base station 300 that AI model 345 specializes in processing, the tasks of the radio base station 300 that AI model 346 specializes in processing, the tasks of the radio base station 300 that AI model 347 specializes in processing, and the tasks of the radio base station 300 that AI model 348 specializes in processing are all different from each other. For example, the tasks of the radio base station 300 that AI model 345 can process faster than algorithm 344, the tasks of the radio base station 300 that AI model 346 can process faster than algorithm 344, the tasks of the radio base station 300 that AI model 347 can process faster than algorithm 344, and the tasks of the radio base station 300 that AI model 348 can process faster than algorithm 344 are all different from each other. Note that "all different from each other" may mean that any two of the multiple comparison targets are different from one another.
[0054] Programs specialized in processing specific tasks are sometimes referred to as dedicated programs. Programs using AI models may be an example of a dedicated program. Programs not specialized in processing specific tasks are sometimes referred to as general-purpose programs. Programs using algorithm 344 may be an example of a general-purpose program.
[0055] The wireless base station 300 implements, for example, an AI model generated by the management infrastructure 100. The wireless base station 300 implements, for example, an AI model generated by the distributed infrastructure 200.
[0056] The GPU 340 implements, for example, a selector 343. The selector 343 may have the function of switching the program that the GPU 340 executes.
[0057] Selector 343 switches the program executed by GPU 340, for example, according to instructions from MAC scheduler 325. MAC scheduler 325 may give instructions to selector 343 via interface 330. Here, FAPI (Functional Application Platform Interface) is given as an example of interface 330.
[0058] The MAC scheduler 325 selects, for example, a program to be executed by the GPU 340. The MAC scheduler 325 selects, for example, a program to be executed by the GPU 340 at predetermined intervals. The MAC scheduler 325 selects, for example, a program to be executed by the GPU 340 at one-slot intervals.
[0059] The MAC scheduler 325 selects a program to be executed by the GPU 340 based on terminal-related information associated with the communication terminal 30, for example. The radio base station 300 receives terminal-related information of the communication terminal 30 from the communication terminal 30, for example, via the radio channel between the radio base station 300 and the communication terminal 30.
[0060] Terminal-related information includes, for example, speed information indicating the speed at which the communication terminal 30 is moving. Terminal-related information also includes, for example, location information indicating the location of the communication terminal 30.
[0061] Terminal-related information includes, for example, a measurement report of a reference signal transmitted by the wireless base station 300 and received by the communication terminal 30. Here, RSSI (Received Signal Strength Indicator), RSRP (Reference Signal Received Power), RSRQ (Reference Signal Received Quality), SNR (Signal-to-Noise Ratio), and SINR (Signal-to-Interference-plus-Noise Power Ratio) are given as examples of information included in the measurement report.
[0062] Terminal-related information includes, for example, modulation scheme information indicating the modulation scheme of the communication terminal 30. Here, two-phase shift modulation (Binary Phase-Shift Keying: BPSK), four-phase shift modulation (Quadrature PSK: QPSK), eight-phase shift modulation (8PSK), sixteen-level quadrature amplitude modulation (16QAM), sixteen-level quadrature amplitude modulation (64QAM), and two-fifty-six-level quadrature amplitude modulation (256QAM) are given as examples of modulation schemes. Furthermore, the number of bits per symbol in the BPSK method is 1 bit, the number of bits per symbol in the QPSK method is 2 bits, the number of bits per symbol in the 8PSK method is 3 bits, the number of bits per symbol in the 16QAM method is 4 bits, the number of bits per symbol in the 64QAM method is 6 bits, and the number of bits per symbol in the 256QAM method is 8 bits.
[0063] Terminal-related information includes, for example, duplexing scheme information indicating the duplexing scheme of the communication terminal 30. Here, time division duplexing (TDD) and frequency division duplexing are given as examples of duplexing schemes.
[0064] Furthermore, the selector 343 may have the function of selecting a program to be executed by the GPU 340. In this case, the selector 343 may notify the MAC scheduler 325 of the selected program.
[0065] Here, we will describe an example in which the GPU 340 processes tasks for the radio base station 300 by executing a program selected by the MAC scheduler 325. Here, we assume that the task of the radio base station 300 to be processed by the GPU 340 is a task to estimate the radio channel between the radio base station 300 and the communication terminal 30.
[0066] The MAC scheduler 325 selects a program to be executed by the GPU 340 in order to have the GPU 340 process the task to be processed. Here, we will continue the explanation assuming that the MAC scheduler 325 has selected a program that uses the AI model 348.
[0067] The MAC scheduler 325 instructs the GPU 340 to process the task by executing a program that uses the AI model 348. The GPU 340 then executes the program that uses the AI model 348 and processes the task according to the instructions from the MAC scheduler 325.
[0068] The GPU 340 executes a program using the AI model 348 to process the task to be processed, and transmits the channel estimation result obtained by channel estimation of the radio channel to the MAC scheduler 325. Based on the channel estimation result received from the GPU 340, the MAC scheduler 325 may determine a schedule for allocating the radio resources of the radio base station 300 to the communication terminal 30.
[0069] Subsequently, the MAC scheduler 325 obtains the communication quality of the radio base station 300 while the GPU 340 is executing a program using the AI model 348 to process the task to be processed. Here, the error rate, which is the probability that an error has occurred in the data transmitted by the transmitter and received by the receiver, the packet loss rate, which is the ratio of packets lost between the transmitter and receiver to the total number of packets of data transmitted by the transmitter, the traffic volume per unit time of data communication between the transmitter and receiver, the delay time of data communication between the transmitter and receiver, and the jitter, which indicates the variation in the delay time of data communication between the transmitter and receiver, are given as examples of indicators of communication quality.
[0070] The MAC scheduler 325 determines whether the acquired communication quality of the wireless base station 300 meets predetermined communication quality conditions. For example, if the MAC scheduler 325 determines that the communication quality of the wireless base station 300 meets the communication quality conditions, it maintains that the GPU 340 executes a program using the AI model 348 to process the task to be processed.
[0071] On the other hand, if the MAC scheduler 325 determines that the communication quality of the wireless base station 300 does not meet the communication quality conditions, it will not maintain the GPU 340 executing a program using AI model 348 to process the task to be processed. In this case, the MAC scheduler 325 selects a program to be executed by the GPU 340 from among the programs using algorithm 344, programs using AI model 345, programs using AI model 346, and programs using AI model 347. Here, we will continue the explanation assuming that the MAC scheduler 325 has selected a program using algorithm 344.
[0072] The MAC scheduler 325 instructs the GPU 340 to switch from processing the task using a program that employs the AI model 348 to processing the task using a program that employs the algorithm 344. The selector 343, in accordance with the instruction from the MAC scheduler 325, switches the program executed by the GPU 340 from the program that employs the AI model 348 to the program that employs the algorithm 344. As a result, the GPU 340 executes the program that employs the algorithm 344 to process the task. Note that the function of switching from processing a task using a dedicated program to processing a task using a general-purpose program may be referred to as a fallback function.
[0073] Figure 3 illustrates an example of how the wireless base station 300 processes physical layer tasks using an AI model. The wireless base station 300 may also process tasks at any layer other than the physical layer using the AI model.
[0074] In recent years, there has been a great deal of research focused on improving the quality of mobile communication services by increasing the processing speed of wireless base station tasks. In particular, there is a great deal of research focused on improving the quality of mobile communication services by increasing the processing speed of wireless base station tasks using AI models. Currently, as exemplified by the efforts of the O-RAN Alliance (Open Radio Access Network Alliance), AI models are being used to process tasks for Non-RT RIC and Near-RT RIC.
[0075] The allowable delay for low-layer tasks such as the physical layer of a wireless base station is 10 msec or less. On the other hand, the allowable delay for a Near-RT RIC task is approximately 1 s at most. Therefore, the allowable delay for a wireless base station task is extremely short compared to the allowable delay for a Near-RT RIC task. This means that in order to process a wireless base station task while satisfying the allowable delay, the processing speed for the wireless base station task must be faster than the processing speed for the Near-RT RIC task. However, generally, there is a trade-off between the processing speed of a task when a program is executed and the generality of the program, so programs capable of high-speed task processing tend to have low generality. Therefore, if mobile communication services are provided by processing wireless base station tasks using a program with a processing speed that satisfies the allowable delay of the wireless base station task, the service quality of the mobile communication service may actually decrease due to the low generality of the program. For the reasons above, it is desirable to contribute to improving the service quality of mobile communication by increasing the processing speed for processing wireless base station tasks.
[0076] In contrast, according to the system 10 of this embodiment, the wireless base station 300 executes the task to be processed by executing either a general-purpose program or a plurality of mutually different dedicated programs. The wireless base station 300 then acquires the communication quality of the wireless base station 300 while it is processing the task to be processed by executing one of the plurality of dedicated programs, and determines whether the communication quality satisfies the communication quality conditions. If the wireless base station 300 determines that the communication quality satisfies the communication quality conditions, it maintains the processing of the task to be processed by the execution of the one dedicated program. If it determines that the communication quality does not satisfy the communication quality conditions, it switches the processing of the task to be processed by the execution of the one dedicated program. For example, the wireless base station 300 uses a fallback function to switch the processing of the task to be processed by the execution of the one dedicated program. By implementing a general-purpose program and a plurality of mutually different dedicated programs in the wireless base station 300, and configuring the system to appropriately switch the program that executes the task to be processed according to the communication quality of the wireless base station 300, the system 10 of this embodiment can achieve a high processing speed for processing tasks at the wireless base station as a whole system. In particular, if each of the multiple dedicated programs is a program that uses an AI model, the system 10 according to this embodiment can process the task to be processed using an AI model specialized for processing a specific task, thereby further increasing the processing speed of the radio base station's tasks as a whole system. Furthermore, if the task to be processed is a low-level task of the radio base station, such as the physical layer, by appropriately adjusting the number of dedicated programs implemented in the radio base station 300 and the range of specific tasks that the dedicated programs specialize in processing, the system 10 according to this embodiment can process the radio base station's tasks at a processing speed that satisfies the allowable delay as a whole system. As a result, the system 10 according to this embodiment can contribute to improving the service quality of mobile communications.
[0077] FIG. 4 is an explanatory diagram for describing an example of an AI model implemented in a radio base station 300. Here, it is assumed that four AI models, namely AI model 345, AI model 346, AI model 347, and AI model 348, are implemented in the radio base station 300.
[0078] The radio base station 300 selects an AI model to be used for processing a task of the radio base station 300 corresponding to a communication terminal 30, based on, for example, a moving speed of the communication terminal 30 indicated by moving speed information of the communication terminal 30 received from the communication terminal 30. Note that the moving speed of the communication terminal 30 is V CT and may be described as such in some cases.
[0079] The upper diagram of FIG. 4 is an explanatory diagram for describing an example of a correspondence relationship between V CT and an AI model. The correspondence relationship between V CT and an AI model shown in the upper diagram of FIG. 4 is as described below.
[0080] The AI model 345 specializes in processing a task of the radio base station 300 corresponding to a communication terminal 30 that satisfies V CT <V 1 . The AI model 346 specializes in processing a task of the radio base station 300 corresponding to a communication terminal 30 that satisfies V 1 ≦V CT <V 2 . The AI model 347 specializes in processing a task of the radio base station 300 corresponding to a communication terminal 30 that satisfies V 2 ≦V CT <V 3 . The AI model 348 specializes in processing a task of the radio base station 300 corresponding to a communication terminal 30 that satisfies V 3 ≦V CT . Note that V 1 , V 2 , and V 3 satisfy the relationship of V 1 <V 2 <V 3 .
[0081] The lower diagram of FIG. 4 is an explanatory diagram for describing another example of a correspondence relationship between V CT and an AI model. V shown in the lower diagram of FIG. 4 CTThe correspondence between this and the AI model is as follows:
[0082] AI Model 345 is V CT <V 1 It is specialized for processing tasks of a wireless base station 300 that corresponds to a communication terminal 30 that satisfies the following conditions. AI model 346 is V 4 ≤ V CT <V 2 It is specialized for processing tasks of a wireless base station 300 that corresponds to a communication terminal 30 that satisfies the following conditions. AI model 347 is V 5 ≤ V CT <V 3 It is specialized for processing tasks of a wireless base station 300 that corresponds to a communication terminal 30 that satisfies the following conditions. AI model 348 is V 6 ≤ V CT It is specialized for processing tasks of a wireless base station 300 that corresponds to a communication terminal 30 that satisfies the following conditions. 1 , V 2 , V 3 , V 4 , V 5 , and V 6 is, V 4 <V 1 <V 5 <V 2 <V 6 <V 3 The relationship must be satisfied.
[0083] V shown in the upper diagram of Figure 4 CT According to the correspondence between the AI models, the scope of tasks that each of the multiple AI models specializes in does not overlap. On the other hand, as shown in the lower part of Figure 4, V CT According to the correspondence between the AI models, there is some overlap in the range of tasks that each of the multiple AI models specializes in processing.
[0084] Figure 5 schematically shows an example of the functional configuration of the control device 350. The control device 350 comprises a task execution unit 360, an input data acquisition unit 365, a processing unit 374, a transmission unit 375, a reception unit 376, a selection unit 378, a control unit 382, a communication quality acquisition unit 384, a determination unit 386, and an update unit 388. However, it is not necessarily required that the control device 350 have all of these components.
[0085] The task execution unit 360 executes tasks for the wireless base station 300. The control device 350 may include one task execution unit 360 or may include multiple task execution units 360.
[0086] For example, if the control device 350 includes multiple task execution units 360, each of the multiple task execution units 360 is classified into a category. A specific example of how each of the multiple task execution units 360 is classified into a category is as follows.
[0087] Task execution units 360 that target tasks related to uplink data communication are classified into the same category. Task execution units 360 that target tasks related to downlink data communication are classified into the same category.
[0088] Task execution units 360 that perform tasks related to data communication of data modulated using the BPSK method are classified into the same category. Task execution units 360 that perform tasks related to data communication of data modulated using the QPSK method are classified into the same category. Task execution units 360 that perform tasks related to data communication of data modulated using the 8PSK method are classified into the same category. Task execution units 360 that perform tasks related to data communication of data modulated using the 16QAM method are classified into the same category. Task execution units 360 that perform tasks related to data communication of data modulated using the 64QAM method are classified into the same category. Task execution units 360 that perform tasks related to data communication of data modulated using the 256QAM method are classified into the same category.
[0089] Task execution units 360 that execute tasks related to data communication of data duplexed using the TDD method are classified into the same category. Task execution units 360 that execute tasks related to data communication of data duplexed using the FDD method are classified into the same category.
[0090] The task execution unit 360 includes, for example, a first task execution unit 361 and a plurality of second task execution units. Figure 5 illustrates an example in which the task execution unit 360 has a plurality of second task execution units, including a second task execution unit 362, a second task execution unit 364, and a second task execution unit 368. Note that the plurality of second task execution units may be collectively referred to as a second task execution unit.
[0091] The first task execution unit 361 and the plurality of second task execution units are located, for example, in the physical layer of the wireless base station 300. The first task execution unit 361 and the plurality of second task execution units are located, for example, in the data link layer of the wireless base station 300. The first task execution unit 361 and the plurality of second task execution units may be located in any other layer of the wireless base station 300.
[0092] Each of the multiple second task execution units can execute a specific task at a higher speed than, for example, the first task execution unit 361. The specific task is identified, for example, according to the state of the communication terminal 30. A specific example of how a specific task is identified according to the state of the communication terminal 30 is as follows.
[0093] A specific task in one of the multiple second task execution units corresponds to a communication terminal 30 moving at a speed within a first range. A specific task in another second task execution unit, different from the one in question, corresponds to a communication terminal 30 moving at a speed within a second range that is faster than the first range.
[0094] A specific task of one of the multiple second task execution units corresponds to a communication terminal 30 located in a first area within the wireless communication area of the wireless base station 300. A specific task of another second task execution unit, different from the said first second task execution unit, corresponds to a communication terminal 30 located in a second area within the wireless communication area of the wireless base station 300, different from the first area.
[0095] A specific task in one of the multiple second task execution units corresponds to a communication terminal 30 of an RSSI within a first range. A specific task in another second task execution unit, different from the one in question, corresponds to a communication terminal 30 of an RSSI within a second range higher than the first range.
[0096] A specific task in one of the multiple second task execution units corresponds to an RSRP communication terminal 30 within a first range. A specific task in another second task execution unit, different from the one in question, corresponds to an RSRP communication terminal 30 within a second range higher than the first range.
[0097] A specific task in one of the multiple second task execution units is a task that corresponds to an RSRQ communication terminal 30 within a first range. A specific task in another second task execution unit, different from the said first second task execution unit, is a task that corresponds to an RSRQ communication terminal 30 within a second range higher than the first range.
[0098] A specific task in one of the multiple second task execution units corresponds to a communication terminal 30 with an SNR within a first range. A specific task in another second task execution unit, different from the one in question, corresponds to a communication terminal 30 with an SNR within a second range higher than the first range.
[0099] A specific task in one of the multiple second task execution units corresponds to a communication terminal 30 of a SINR within a first range. A specific task in another second task execution unit, different from the one in question, corresponds to a communication terminal 30 of a SINR within a second range higher than the first range.
[0100] The first task execution unit 361 executes a task using, for example, an algorithm. The first task execution unit 361 executes a task using an algorithm without using, for example, an AI model. The algorithm is, for example, a rule-based algorithm. The first task execution unit 361 may also execute a task using an AI model.
[0101] Each of the multiple second task execution units executes a task, for example, using an AI model. At least one of the multiple second task execution units may execute a task using an algorithm. The algorithm is, for example, a rule-based algorithm.
[0102] Each specific task of the multiple second task execution units is distinct from the others. Here, two specific tasks being distinct includes not only cases where the scopes of the two specific tasks do not overlap, but also cases where the scopes of the two specific tasks partially overlap.
[0103] The general-purpose program may be an example of a program used in the first task execution unit 361. The dedicated program may be an example of a program used in the second task execution unit.
[0104] The input data acquisition unit 365 acquires input data to be input to the task execution unit 360. The task execution unit 360 may execute the task by inputting the input data into an algorithm or AI model and acquiring output data that is output from the algorithm or AI model into which the input data has been input.
[0105] The input data can be any data, as long as the task execution unit 360 can use the input data to execute the task. For example, the input data may be terminal-related information of the communication terminal 30.
[0106] The input data acquisition unit 365 acquires input data, for example, by receiving input data via a wireless channel between the wireless base station 300 and the communication terminal 30. The input data acquisition unit 365 also acquires input data, for example, by receiving input data via the network 20. The input data acquisition unit 365 may also acquire input data when an input unit provided by the control device 350 receives input data.
[0107] The processing unit 374 processes tasks for the wireless base station 300 using the task execution unit 360. For example, the processing unit 374 processes tasks for the wireless base station 300 using the first task execution unit 361 and one of the multiple second task execution units.
[0108] The processing unit 374 estimates the wireless channel between the wireless base station 300 and the communication terminal 30 by processing the task to be processed using, for example, the task execution unit 360. The processing unit 374 may also perform any other functions of the wireless base station 300 by processing the task to be processed using the task execution unit 360.
[0109] The transmitting unit 375 transmits various types of information. The transmitting unit 375 transmits various types of information, for example, via a wireless channel between the wireless base station 300 and the communication terminal 30. The transmitting unit 375 transmits various types of information via the network 20.
[0110] The transmitting unit 375 transmits, for example, various types of information to the communication terminal 30. The transmitting unit 375 also transmits, for example, a reference signal to the communication terminal 30.
[0111] The receiving unit 376 receives various types of information. The transmitting unit 375 receives various types of information, for example, via a wireless channel between the wireless base station 300 and the communication terminal 30. The transmitting unit 375 also receives various types of information via the network 20.
[0112] The receiving unit 376 receives various information from, for example, the communication terminal 30. The receiving unit 376 receives, for example, terminal-related information from the communication terminal 30. The receiving unit 376 receives, for example, user data to be transmitted from the communication terminal 30.
[0113] The selection unit 378 performs various selection processes. The selection unit 378 performs various selection processes at predetermined intervals, for example. The selection unit 378 performs various selection processes at intervals of one slot, for example.
[0114] The selection unit 378 selects, for example, a task execution unit 360 from among a plurality of task execution units 360 to be used by the processing unit 374 to process the task to be processed. The selection unit 378 selects the task execution unit 360, for example, based on terminal-related information of the communication terminal 30 received by the receiving unit 376. A specific example of how the selection unit 378 selects the task execution unit 360 based on terminal-related information of the communication terminal 30 is as follows.
[0115] If the task to be processed by the processing unit 374 is a task related to uplink data communication, the selection unit 378 selects the task execution unit 360 from among one or more task execution units 360 classified into a category that performs tasks related to uplink data communication. If the task to be processed by the processing unit 374 is a task related to downlink data communication, the selection unit 378 selects the task execution unit 360 from among one or more task execution units 360 classified into a category that performs tasks related to downlink data communication.
[0116] The selection unit 378 selects the task execution unit 360 based on the modulation scheme information of the communication terminal 30 included in the terminal-related information of the communication terminal 30. For example, if the task to be processed by the processing unit 374 is a task related to data communication of data modulated using the BPSK method, the selection unit 378 selects the task execution unit 360 from among one or more task execution units 360 classified into a category that targets tasks related to data communication of data modulated using the BPSK method. For example, if the task to be processed by the processing unit 374 is a task related to data communication of data modulated using the QPSK method, the selection unit 378 selects the task execution unit 360 from among one or more task execution units 360 classified into a category that targets tasks related to data communication of data modulated using the QPSK method. For example, if the task to be processed by the processing unit 374 is a task related to data communication of data modulated using the 8PSK method, the selection unit 378 selects the task execution unit 360 from among one or more task execution units 360 classified into a category that targets tasks related to data communication of data modulated using the 8PSK method. For example, if the task to be processed by the processing unit 374 is a task related to data communication of data modulated using the 16QAM method, the selection unit 378 selects the task execution unit 360 from among one or more task execution units 360 classified into a category that targets tasks related to data communication of data modulated using the 16QAM method. For example, if the task to be processed by the processing unit 374 is a task related to data communication of data modulated using the 64QAM method, the selection unit 378 selects the task execution unit 360 from among one or more task execution units 360 classified into a category that targets tasks related to data communication of data modulated using the 64QAM method. For example, if the task to be processed by the processing unit 374 is a task related to data communication of data modulated using the 256QAM method, the selection unit 378 selects the task execution unit 360 from among one or more task execution units 360 classified into a category that targets tasks related to data communication of data modulated using the 256QAM method.
[0117] The selection unit 378 selects the task execution unit 360 based on the duplexing method information of the communication terminal 30 included in the terminal-related information of the communication terminal 30. For example, if the task to be processed by the processing unit 374 is a task related to data communication of data duplexed using the TDD method, the selection unit 378 selects the task execution unit 360 from among one or more task execution units 360 classified into a category that targets tasks related to data communication of data duplexed using the TDD method. For example, if the task to be processed by the processing unit 374 is a task related to data communication of data duplexed using the FDD method, the selection unit 378 selects the task execution unit 360 from among one or more task execution units 360 classified into a category that targets tasks related to data communication of data duplexed using the FDD method.
[0118] The selection unit 378 selects, for example, the execution entity for the task to be processed from among the first task execution unit 361 and a plurality of second task execution units included in the task execution unit 360. The selection unit 378 selects, for example, the execution entity for the task to be processed from among the first task execution unit 361 and a plurality of second task execution units included in the task execution unit 360 selected from the plurality of task execution units 360. Here, the execution entity for the task to be processed is assumed to be either the first task execution unit 361 or a plurality of second task execution units.
[0119] For example, if there is a second task execution unit that can execute the task to be processed faster than the first task execution unit 361, the selection unit 378 selects the second task execution unit as the main execution entity for the task to be processed. On the other hand, if there is no second task execution unit that can execute the task to be processed faster than the first task execution unit 361, the selection unit 378 selects the first task execution unit 361 as the main execution entity for the task to be processed.
[0120] The selection unit 378 selects the execution entity for the task to be processed from among the first task execution unit 361 and a plurality of second task execution units included in the task execution unit 360, based on terminal-related information of the communication terminal 30 received by the receiving unit 376. A specific example of how the selection unit 378 selects the execution entity for the task to be processed based on terminal-related information of the communication terminal 30 is as follows.
[0121] The selection unit 378 selects the execution entity for the task to be processed based on the movement speed information of the communication terminal 30 included in the terminal-related information of the communication terminal 30. For example, the selection unit 378 determines the range in which the movement speed of the communication terminal 30 indicated by the movement speed information of the communication terminal 30 is included, and selects a second task execution unit as the execution entity for the task to be processed, which designates the task corresponding to the communication terminal 30 moving at a movement speed within the determined range as a specific task.
[0122] The selection unit 378 selects the entity that will execute the task to be processed based on the location information of the communication terminal 30 included in the terminal-related information of the communication terminal 30. For example, the selection unit 378 determines an area within the wireless communication area of the wireless base station 300 that includes the location of the communication terminal 30 indicated by the location information of the communication terminal 30, and selects a second task execution unit as the entity that will execute the task to be processed, which will specify the task corresponding to the communication terminal 30 located in the determined area as the task to be processed.
[0123] The selection unit 378 selects the execution entity for the task to be processed based on the measurement report of the communication terminal 30 included in the terminal-related information of the communication terminal 30. For example, the selection unit 378 determines the range in which the RSSI of the communication terminal 30 indicated by the measurement report of the communication terminal 30 is included, and selects a second task execution unit as the execution entity for the task to be processed, which designates the task corresponding to the communication terminal 30 with RSSI within the determined range as the specific task. For example, the selection unit 378 determines the range in which the RSRP of the communication terminal 30 indicated by the measurement report of the communication terminal 30 is included, and selects a second task execution unit as the execution entity for the task to be processed, which designates the task corresponding to the communication terminal 30 with RSRP within the determined range as the specific task. For example, the selection unit 378 determines the range in which the RSRQ of the communication terminal 30 indicated by the measurement report of the communication terminal 30 is included, and selects a second task execution unit as the execution entity for the task to be processed, which designates the task corresponding to the communication terminal 30 with RSRQ within the determined range as the specific task. For example, the selection unit 378 determines the range that includes the SNR of the communication terminal 30 as indicated by the measurement report of the communication terminal 30, and selects a second task execution unit as the entity that executes the tasks to be processed, which will specify the tasks corresponding to the communication terminal 30 with SNRs within the determined range as specific tasks.
[0124] The control unit 382 controls the controlled object. For example, the control unit 382 controls the processing unit 374.
[0125] The control unit 382 controls the processing unit 374 to process the task to be processed, for example, by using the task execution unit 360 selected by the selection unit 378. The control unit 382 controls the processing unit 374 to process the task to be processed, for example, by using the task execution entity selected by the selection unit 378. The processing unit 374 may process the task to be processed in accordance with the control of the control unit 382.
[0126] The control unit 382 is located, for example, in the data link layer of the wireless base station 300. The control unit 382 is located, for example, in the physical layer of the wireless base station 300. The control unit 382 may be located in any other layer of the wireless base station 300.
[0127] The communication quality acquisition unit 384 acquires the communication quality of the wireless base station 300. For example, the communication quality acquisition unit 384 acquires the communication quality of the wireless base station 300 while the processing unit 374 is processing a task using one of the multiple second task execution units. Here, we will continue the explanation assuming that the one second task execution unit is the second task execution unit 368.
[0128] The determination unit 386 performs various determination processes. The determination unit 386 performs various determination processes at predetermined intervals, for example. The determination unit 386 performs various determination processes at intervals of one slot, for example.
[0129] The determination unit 386 determines, for example, whether the communication quality of the wireless base station 300 meets predetermined communication quality conditions while the processing unit 374 is processing the task to be processed using the second task execution unit 368. For example, if the determination unit 386 determines that the communication quality of the wireless base station 300 meets the communication quality conditions, the control unit 382 controls the processing unit 374 to maintain processing of the task to be processed using the second task execution unit 368. On the other hand, if the determination unit 386 determines that the communication quality of the wireless base station 300 does not meet the communication quality conditions, the control unit 382 controls the processing unit 374 to switch processing of the task to be processed using the second task execution unit 368.
[0130] Communication quality conditions include, for example, that the error rate, which is the probability that an error occurs in the data transmitted from the transmitter to the receiver in data communication between the wireless base station 300 and the communication terminal 30, is lower than a predetermined error rate threshold. Communication quality conditions also include, for example, that the error rate, which is the probability that an error occurs in the user data of the communication terminal 30 received by the receiving unit 376, is lower than an error rate threshold.
[0131] The determination unit 386 derives the aforementioned error rate by, for example, performing a Cyclic Redundancy Check (CRC). The determination unit 386 derives the aforementioned error rate by, for example, performing a Parity Check. The determination unit 386 may derive the aforementioned error rate by any other method.
[0132] Communication quality conditions include, for example, that the packet loss rate, which is the ratio of packets lost between the transmitting and receiving sides of the total number of packets of data transmitted from the transmitting side to the receiving side in data communication between the wireless base station 300 and the communication terminal 30, is lower than a predetermined packet loss rate threshold. Communication quality conditions also include, for example, that the packet loss rate, which is the ratio of packets lost between the communication terminal 30 and the wireless base station 300 of the total number of packets of user data from the communication terminal 30 received by the receiving unit 376, is lower than a packet loss rate threshold.
[0133] Communication quality conditions include, for example, that the amount of traffic per unit time of data transmitted from the transmitting side to the receiving side in data communication between the wireless base station 300 and the communication terminal 30 is greater than a predetermined traffic threshold. Communication quality conditions also include, for example, that the amount of traffic per unit time of user data from the communication terminal 30 received by the receiving unit 376 is greater than a traffic threshold.
[0134] Communication quality conditions include, for example, that in data communication between the wireless base station 300 and the communication terminal 30, the delay time of the data transmitted from the transmitting side to the receiving side is shorter than a predetermined allowable delay time. Communication quality conditions also include, for example, that the delay time of the user data from the communication terminal 30 received by the receiving unit 376 is shorter than the allowable delay time.
[0135] Communication quality conditions include, for example, that the jitter, which indicates the variation in the delay time of data transmitted from the transmitting side to the receiving side in data communication between the wireless base station 300 and the communication terminal 30, is smaller than a predetermined jitter threshold. Communication quality conditions also include, for example, that the jitter, which indicates the variation in the delay time of user data from the communication terminal 30 received by the receiving unit 376, is smaller than a jitter threshold.
[0136] For example, if the determination unit 386 determines that the communication quality of the wireless base station 300 does not meet the communication quality conditions while the processing unit 374 is processing the task to be processed using the second task execution unit 368, the selection unit 378 selects the execution entity for the task to be processed from among the first task execution unit 361 and a plurality of second task execution units. The second task execution unit 368 may be referred to as the switching source task execution unit, and the execution entity for the task to be processed selected by the selection unit 378 when the determination unit 386 determines that the communication quality of the wireless base station 300 does not meet the communication quality conditions while the processing unit 374 is processing the task to be processed using the second task execution unit 368 may be referred to as the switching destination task execution unit.
[0137] The selection unit 378 may, for example, select a target task execution unit based on terminal-related information of the communication terminal 30. The selection unit 378 may, for example, select a target task execution unit based on the movement speed information of the communication terminal 30. The selection unit 378 may, for example, select a target task execution unit based on the location information of the communication terminal 30. The selection unit 378 may, for example, select a target task execution unit based on the measurement report of the communication terminal 30. The selection unit 378 may select a target task execution unit in the same manner as when selecting a source task execution unit.
[0138] The selection unit 378 selects, for example, the first task execution unit 361 as the target task execution unit for switching. The selection unit 378 selects, for example, another second task execution unit from among the multiple second task execution units, different from the second task execution unit 368, as the target task execution unit for switching.
[0139] The control unit 382 controls the processing unit 374 to switch the processing of the task being processed using the source task execution unit to the processing of the task being processed using the destination task execution unit. The processing unit 374 may switch from processing the task being processed using the source task execution unit to processing the task being processed using the destination task execution unit in accordance with the control by the control unit 382.
[0140] The control unit 382 may control the processing unit 374 to switch the processing of the task using the source task execution unit if the determination unit 386 determines that the communication quality of the wireless base station 300 does not meet the communication quality conditions while the processing unit 374 is processing the task using the source task execution unit. In this case, the control unit 382 may control the processing unit 374 to switch the processing of the task using the source task execution unit to the processing of the task using the first task execution unit 361.
[0141] The determination unit 386 determines, for example, when the processing unit 374 uses the second task execution unit 368 to process multiple tasks within a predetermined period, whether the number of times the processing unit 374 determines that the communication quality of the wireless base station 300 does not meet the communication quality conditions while the processing unit 374 is processing the tasks using the second task execution unit 368 is greater than a predetermined threshold for the number of determinations. The multiple tasks to be processed are, for example, tasks corresponding to multiple communication terminals 30.
[0142] For example, the control unit 382 controls the processing unit 374 to stop using the second task execution unit 368 if the determination unit 386 determines that the number of determinations is greater than the determination count threshold. On the other hand, the control unit 382 does not control the processing unit 374 to stop using the second task execution unit 368 if the determination unit 386 determines that the number of determinations is less than the determination count threshold.
[0143] If the use of the second task execution unit 368 is stopped, the control unit 382 controls the processing unit 374 to process the task without using the second task execution unit 368, even if the task to be processed is a specific task of the second task execution unit 368. Note that the state in which the use of the second task execution unit is not stopped may be described as the active state, and the state in which the use of the second task execution unit is stopped may be described as the inactive state.
[0144] The selection unit 378 manages the state of the second task execution unit, for example. The selection unit 378 manages the state of the second task execution unit, for example, by managing the flags assigned to the second task execution unit. For example, the selection unit 378 assigns an active state flag to a second task execution unit that is in an active state, and assigns an inactive state flag to a second task execution unit that is in an inactive state. The control unit 382 may stop using the second task execution unit 368 by changing the flag of the second task execution unit 368, which is managed by the selection unit 378, from an active state flag to an inactive state flag.
[0145] The update unit 388 updates the program used by the task execution unit 360 to process the task to be processed. The update unit 388 updates, for example, the AI model used by the task execution unit 360 to process the task to be processed. The update unit 388 updates, for example, the algorithm used by the task execution unit 360 to process the task to be processed.
[0146] The update unit 388 updates the program by, for example, sending a request to the management infrastructure 100 to update the program, and receiving the updated program from the management infrastructure 100 in response to the request. The update unit 388 also updates the program by, for example, sending the request to the distributed infrastructure 200, and receiving the updated program from the distributed infrastructure 200 in response to the request.
[0147] The update unit 388 updates, for example, the program used by the second task execution unit to process the task to be processed. The update unit 388 updates, for example, the program used by the second task execution unit, which is in an inactive state, to process the task to be processed. When the update unit 388 updates the program, the control unit 382 may change the flag of the second task execution unit 368, which is managed by the selection unit 378, from an inactive state flag to an active state flag. This allows the use of the second task execution unit 368 to resume.
[0148] The update unit 388 may update the program used by the active second task execution unit to process the task to be processed. The update unit 388 may also update the program used by the first task execution unit 361 to process the task to be processed.
[0149] The transmitting unit 375 transmits various information to the monitoring device 400. For example, the transmitting unit 375 transmits communication quality information indicating the communication quality of the wireless base station 300, acquired by the communication quality acquisition unit 384, to the monitoring device 400. For example, the transmitting unit 375 transmits the communication quality information of the wireless base station 300 by transmitting the KPI of the wireless base station 300 to the monitoring device 400.
[0150] The transmitting unit 375 transmits to the monitoring device 400 various determination results obtained by the determination unit 386 performing various determination processes. The transmitting unit 375 transmits to the monitoring device 400 the determination result obtained by the determination unit 386 of whether the communication quality of the wireless base station 300 meets the communication quality conditions while the processing unit 374 is processing the task to be processed using the second task execution unit 368. The transmitting unit 375 transmits to the monitoring device 400 the determination result obtained by the determination unit 386 of whether the number of determinations mentioned above is greater than the determination count threshold.
[0151] The monitoring device 400 monitors the radio base station 300, for example, based on at least one of the communication quality information of the radio base station 300 and various judgment results received from the radio base station 300. The monitoring device 400 also monitors the radio base station 300 by performing data analysis on at least one of the communication quality information of the radio base station 300 and various judgment results received from the radio base station 300.
[0152] The monitoring device 400 monitors the second task execution unit, for example. The monitoring device 400 monitors the second task execution unit by, for example, monitoring the state of the second task execution unit. The monitoring device 400 monitors the state of the second task execution unit by, for example, monitoring whether the state of the second task execution unit is active or inactive.
[0153] The monitoring device 400 transmits, for example, an instruction to the wireless base station 300 to change the state of the second task execution unit from an active state to an inactive state. The control unit 382 may, in response to the receiving unit 376 receiving the instruction from the monitoring device 400, change the flag of the second task execution unit managed by the selection unit 378 from an active state flag to an inactive state flag.
[0154] For example, if the monitoring device 400 receives a notification indicating that the program used by the second task execution unit, which is in an inactive state, to process the task to be processed has been updated, it sends an instruction to the wireless base station 300 to change the state of the second task execution unit from inactive to active. The control unit 382 may, in response to the receiving unit 376 receiving the instruction from the monitoring device 400, change the flag of the second task execution unit, which is managed by the selection unit 378, from an inactive flag to an active flag. The monitoring device 400 may receive the notification from the management infrastructure 100 or from the distributed infrastructure 200.
[0155] Figure 6 is an explanatory diagram illustrating an example of the processing flow of the control device 350. Here, the state in which the second task execution unit is executing the task to be processed is defined as the start state.
[0156] In step 102 (steps may be abbreviated as S), the processing unit 374 processes the task using the task's execution entity. In S104, the communication quality acquisition unit 384 acquires the communication quality of the wireless base station 300 while the processing unit 374 is processing the task using the task's execution entity.
[0157] In S106, the determination unit 386 determines whether the communication quality of the wireless base station 300, acquired by the communication quality acquisition unit 384 in S104, satisfies the communication quality conditions. If the determination unit 386 determines that the communication quality of the wireless base station 300 satisfies the communication quality conditions, the process proceeds to S108. If the determination unit 386 determines that the communication quality of the wireless base station 300 does not satisfy the communication quality conditions, the process proceeds to S110.
[0158] In S108, the control unit 382 controls the processing unit 374 to maintain the execution entity of the task to be processed. The processing unit 374 maintains the execution entity of the task to be processed in accordance with the control by the control unit 382.
[0159] In S110, the selection unit 378 selects a switching destination task execution unit from among the first task execution unit 361 and a plurality of second task execution units included in the task execution unit 360, excluding the task execution entity for the task to be processed when it was determined in S106 that the communication quality of the wireless base station 300 does not meet the communication quality conditions. In S112, the control unit 382 controls the processing unit 374 to switch the execution entity of the task to be processed to the switching destination task execution unit selected in S110. The processing unit 374 switches the execution entity of the task to be processed to the switching destination task execution unit according to the control by the control unit 382.
[0160] In S114, the processing unit 374 determines whether the processing of the task to be processed has been completed. If the processing unit 374 determines that the processing of the task to be processed has not been completed, the process returns to S102. If the processing unit 374 determines that the processing of the task to be processed has been completed, the processing of the control device 350 then ends.
[0161] Figure 7 is an explanatory diagram illustrating another example of the processing flow of the control device 350. In this case, the starting state is defined as a state in which there are multiple tasks to be processed, which are specific tasks of the second task execution unit 368, and the number of times the determination unit 386 has determined that the communication quality of the wireless base station 300 does not meet the communication quality conditions while the processing unit 374 is processing the tasks to be processed using the second task execution unit 368 is 0.
[0162] In S202, the processing unit 374 processes the task to be processed using the second task execution unit 368. In S204, the communication quality acquisition unit 384 acquires the communication quality of the wireless base station 300 while the processing unit 374 is processing the task to be processed using the second task execution unit 368.
[0163] In S206, the determination unit 386 determines whether the communication quality of the wireless base station 300, acquired by the communication quality acquisition unit 384 in S204, satisfies the communication quality conditions. If the determination unit 386 determines that the communication quality of the wireless base station 300 satisfies the communication quality conditions, the process proceeds to S210. If the determination unit 386 determines that the communication quality of the wireless base station 300 does not satisfy the communication quality conditions, the process proceeds to S208.
[0164] In S208, the determination unit 386 adds N once. In S210, the determination unit 386 determines that N is the determination count threshold (N Th It may be written as follows: Determine whether or not it is greater than N. Th If the determination unit 386 determines that there is more, proceed to S212. Th If the determination unit 386 determines that the value is less, the process proceeds to S216.
[0165] In S212, the control unit 382 controls the processing unit 374 to stop using the second task execution unit 368. The processing unit 374 stops using the second task execution unit 368 in accordance with the control by the control unit 382.
[0166] In S214, the update unit 388 sends a request to the second task execution unit 368 to update the AI model used for processing the task to be processed. After that, the processing unit 374 uses one of the multiple second task execution units other than the first task execution unit 361 and the second task execution unit 368 to process the unprocessed tasks among the multiple tasks to be processed, which are specific tasks of the second task execution unit 368, and then the processing of the control device 350 ends.
[0167] In S216, the processing unit 374 determines whether or not there is an unprocessed task that is a specific task of the second task execution unit 368. If the processing unit 374 determines that there is an unprocessed task that is a specific task of the second task execution unit 368, the process returns to S202. If the processing unit 374 determines that there is no unprocessed task that is a specific task of the second task execution unit 368, the processing of the control device 350 then ends.
[0168] Figure 8 schematically shows an example of the hardware configuration of a computer 1200 that functions as a control device 350. A program installed on the computer 1200 can cause the computer 1200 to function as one or more "parts" of the apparatus according to this embodiment, or to cause the computer 1200 to execute operations associated with the apparatus according to this embodiment or such one or more "parts", and / or to cause the computer 1200 to execute a process or a stage of such process according to this embodiment. Such a program may be executed by the CPU 1212 to cause the computer 1200 to execute specific operations associated with some or all of the blocks in the flowcharts and block diagrams described herein.
[0169] The computer 1200 according to this embodiment includes a CPU 1212, RAM 1214, and a graphics controller 1216, which are interconnected by a host controller 1210. The computer 1200 also includes input / output units such as a communication interface 1222, a storage device 1224, a DVD drive 1226, and an IC card drive, which are connected to the host controller 1210 via an input / output controller 1220. The DVD drive 1226 may be a DVD-ROM drive and a DVD-RAM drive, etc. The storage device 1224 may be a hard disk drive and a solid-state drive, etc. The computer 1200 also includes legacy input / output units such as a ROM 1230 and a keyboard, which are connected to the input / output controller 1220 via an input / output chip 1240.
[0170] The CPU 1212 operates according to the programs stored in the ROM 1230 and RAM 1214, thereby controlling each unit. The graphics controller 1216 acquires the image data generated by the CPU 1212 and stores it in the frame buffer provided in the RAM 1214 or within itself, so that the image data is displayed on the display device 1218.
[0171] The communication interface 1222 communicates with other electronic devices via a network. The storage device 1224 stores programs and data used by the CPU 1212 in the computer 1200. The DVD drive 1226 reads programs or data from the DVD-ROM 1227, etc., and provides them to the storage device 1224. The IC card drive reads programs and data from the IC card and / or writes programs and data to the IC card.
[0172] The ROM 1230 stores boot programs and / or hardware-dependent programs of the computer 1200, which are executed by the computer 1200 when activated. The input / output chip 1240 may also connect various input / output units to the input / output controller 1220 via USB ports, parallel ports, serial ports, keyboard ports, mouse ports, etc.
[0173] The program is provided on a computer-readable storage medium such as a DVD-ROM 1227 or an IC card. The program is read from the computer-readable storage medium and installed on a storage device 1224, RAM 1214, or ROM 1230, which are examples of computer-readable storage media, and executed by the CPU 1212. The information processing described within these programs is read by the computer 1200, resulting in coordination between the program and the various types of hardware resources described above. The apparatus or method may be configured to realize the operation or processing of information in accordance with the use of the computer 1200.
[0174] For example, when communication is performed between a computer 1200 and an external device, the CPU 1212 may execute a communication program loaded into the RAM 1214 and, based on the processing described in the communication program, instruct the communication interface 1222 to perform communication processing. Under the control of the CPU 1212, the communication interface 1222 reads transmission data stored in a transmission buffer area provided in a recording medium such as the RAM 1214, storage device 1224, DVD-ROM 1227, or IC card, transmits the read transmission data to the network, or writes received data received from the network to a reception buffer area or the like provided on the recording medium.
[0175] Furthermore, the CPU 1212 may read all or necessary parts of a file or database stored on an external recording medium such as a storage device 1224, a DVD drive 1226 (DVD-ROM 1227), or an IC card into the RAM 1214, and perform various types of processing on the data in the RAM 1214. The CPU 1212 may then write the processed data back to the external recording medium.
[0176] Various types of information, such as various types of programs, data, tables, and databases, may be stored on the recording medium and subjected to information processing. The CPU 1212 may perform various types of processing on the data read from the RAM 1214, including various types of operations, information processing, conditional judgments, conditional branching, unconditional branching, information retrieval / replacement, etc., as described throughout this disclosure and specified by the program instruction sequence, and write the results back to the RAM 1214. The CPU 1212 may also retrieve information in files, databases, etc., within the recording medium. For example, if a plurality of entries are stored in the recording medium, each having an attribute value of a first attribute associated with an attribute value of a second attribute, the CPU 1212 may search among the plurality of entries for an entry that matches the specified condition for the attribute value of the first attribute, read the attribute value of the second attribute stored in that entry, and thereby obtain the attribute value of the second attribute associated with the first attribute that satisfies a predetermined condition.
[0177] The program or software module described above may be stored on or near the computer 1200 in a computer-readable storage medium. Alternatively, a recording medium such as a hard disk or RAM provided within a server system connected to a dedicated communication network or the Internet can be used as a computer-readable storage medium, thereby providing the program to the computer 1200 via the network.
[0178] In this embodiment, blocks in the flowchart and block diagram may represent a stage in a process in which an operation is performed or a "part" of a device that has the role of performing an operation. A particular stage and "part" may be implemented by a dedicated circuit, a programmable circuit supplied with computer-readable instructions stored on a computer-readable storage medium, and / or a processor supplied with computer-readable instructions stored on a computer-readable storage medium. The dedicated circuit may include digital and / or analog hardware circuits, and may include integrated circuits (ICs) and / or discrete circuits. The programmable circuit may include reconfigurable hardware circuits, such as field-programmable gate arrays (FPGAs) and programmable logic arrays (PLAs), which include logical AND, logical OR, exclusive OR, negated AND, negated OR, and other logical operations, flip-flops, registers, and memory elements.
[0179] Computer-readable media may include any tangible device capable of storing instructions to be executed by a suitable device, and as a result, computer-readable media having instructions stored therein will comprise a product that includes instructions that can be executed to create means for performing operations specified in a flowchart or block diagram. Examples of computer-readable media may include electronic storage media, magnetic storage media, optical storage media, electromagnetic storage media, semiconductor storage media, etc. More specific examples of computer-readable media may include floppy disks (registered trademark), diskettes, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), electrically erasable programmable read-only memory (EEPROM), static random access memory (SRAM), compact disk read-only memory (CD-ROM), digital multipurpose disc (DVD), Blu-ray (registered trademark) disc, memory stick, integrated circuit card, etc.
[0180] Computer-readable instructions may include assembler instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state setting data, or source code or object code written in any combination of one or more programming languages, including object-oriented programming languages such as Smalltalk®, Java®, C++, and conventional procedural programming languages such as the C programming language or similar programming languages.
[0181] Computer-readable instructions are provided locally or via a wide area network (WAN) such as a local area network (LAN) or the internet to the processor or programmable circuit of a programmable data processing device such as a computer, and may be executed to create means for performing operations specified in a flowchart or block diagram. Here, the computer may be a PC (personal computer), tablet computer, smartphone, workstation, server computer, general-purpose computer, or special-purpose computer, and may also be a computer system in which multiple computers are connected. Such a computer system in which multiple computers are connected is also called a distributed computing system and is a computer in a broad sense. In a distributed computing system, multiple computers execute a program by having each computer execute a part of the program and by passing data during program execution between computers as needed.
[0182] Examples of processors include computer processors, central processing units (CPUs), processing units, microprocessors, digital signal processors, controllers, and microcontrollers. A computer may have one or more processors. In a multiprocessor system with multiple processors, each processor executes a portion of the program, and the processors collectively execute the program by passing program execution data between them as needed. For example, in the execution of multitasks, each of the multiple processors may execute a portion of each task in small chunks by switching tasks at each time slice. In this case, which part of a program each processor executes changes dynamically. Which part of a program each of the multiple processors executes may also be statically determined by multiprocessor-aware programming.
[0183] This invention can contribute to improving the service quality of mobile communications, and therefore can contribute to achieving Sustainable Development Goal (SDG) 9, "Build resilient infrastructure, promote inclusive and sustainable industrialization and foster innovation."
[0184] Although the present invention has been described above using embodiments, the technical scope of the present invention is not limited to the scope described in the above embodiments. It will be apparent to those skilled in the art that various modifications or improvements can be made to the above embodiments. It will be clear from the claims that such modified or improved forms may also be included in the technical scope of the present invention.
[0185] It should be noted that the execution order of operations, procedures, steps, and stages in the devices, systems, programs, and methods shown in the claims, specifications, and drawings is not explicitly stated as "before" or "prior to," and that these can be performed in any order unless the output of a previous operation is used in a later operation. Even if the operation flow in the claims, specifications, and drawings is described using phrases such as "first," and "next," for convenience, this does not mean that it is mandatory to perform the operations in that order.
[0186] 10 System, 20 Network, 30 Communication terminal, 100 Management infrastructure, 200 Distributed infrastructure, 300 Wireless base station, 320 CPU, 325 MAC scheduler, 330 Interface, 340 GPU, 341 Function, 342 Function, 343 Selector, 344 Algorithm, 345 AI model, 346 AI model, 347 AI model, 348 AI model, 350 Control device, 360 Task execution unit, 361 First task execution unit, 362 Second task execution unit, 364 Second task execution unit, 365 Input data acquisition unit, 368 Second task execution unit, 374 Processing unit, 375 Transmission unit, 376 Reception unit, 378 Selection unit, 382 Control unit, 384 Communication quality acquisition unit, 386 Judgment unit, 388 Update unit, 400 Monitoring device, 1200 Computer, 1210 Host controller, 1212 CPU, 1214 RAM, 1216 Graphics controller, 1218 Display device, 1220 Input / Output controller, 1222 Communication interface, 1224 Storage device, 1226 DVD drive, 1227 DVD-ROM, 1230 ROM, 1240 Input / Output chip
Claims
1. A control device mounted on a wireless base station, comprising: a first task execution unit; a plurality of second task execution units; a processing unit that processes tasks of the wireless base station using one of the first task execution unit and the plurality of second task execution units; a determination unit that determines whether the communication quality of the wireless base station satisfies predetermined communication quality conditions while the processing unit is processing a task to be processed using one of the plurality of second task execution units; and a control unit that controls the processing unit to switch the processing of the task to be processed using the one second task execution unit when the determination unit determines that the communication quality of the wireless base station does not satisfy the communication quality conditions, wherein each of the plurality of second task execution units is capable of executing a specific task at a higher speed than the first task execution unit, and the specific tasks of each of the plurality of second task execution units are different from each other.
2. The control device according to claim 1, further comprising: a receiving unit that receives movement speed information indicating the movement speed of a communication terminal from a communication terminal within a RAN (Radio Access Network) configured by the wireless base station; and a selection unit that, when the determination unit determines that the communication quality of the wireless base station does not meet the communication quality conditions, selects a switching destination task execution unit from among the first task execution unit and a plurality of second task execution units based on the movement speed information of the communication terminal, wherein the control unit controls the processing unit to switch the processing of the target task using the first second task execution unit to the processing of the target task using the switching destination task execution unit.
3. The control device according to claim 1, further comprising: a transmitting unit that transmits a reference signal to a communication terminal in a RAN configured by the wireless base station; a receiving unit that receives a measurement report of the reference signal from the communication terminal; and a selection unit that, when the determination unit determines that the communication quality of the wireless base station does not meet the communication quality conditions, selects a switching destination task execution unit from the first task execution unit and a plurality of second task execution units based on the measurement report of the reference signal, wherein the control unit controls the processing unit to switch the processing of the task to be processed using the first second task execution unit to the processing of the task to be processed using the switching destination task execution unit.
4. The control device according to claim 2 or 3, wherein the selection unit selects the first task execution unit as the switching destination task execution unit.
5. The control device according to claim 2 or 3, wherein the selection unit selects a second task execution unit other than the one second task execution unit from among the plurality of second task execution units as the switching destination task execution unit.
6. The control device according to any one of claims 1 to 5, further comprising a receiving unit that receives user data to be transmitted by a communication terminal from a communication terminal in a RAN configured by the wireless base station, wherein the determination unit determines that the communication quality of the wireless base station satisfies the communication quality conditions when the error rate, which is the probability that an error has occurred in the user data received by the receiving unit, is lower than a predetermined error rate threshold.
7. The control device according to any one of claims 1 to 6, wherein when the processing unit uses the first second task execution unit to process a plurality of tasks to be processed within a predetermined period, the control unit controls the processing unit to stop using the first second task execution unit if the number of times the determination unit has determined that the communication quality of the wireless base station does not meet the communication quality conditions is greater than a predetermined threshold number of determinations.
8. The control device according to any one of claims 1 to 7, wherein the processing unit estimates the radio channel between the radio base station and the communication terminal in the RAN configured by the radio base station by processing the task to be processed using any one of the first task execution unit and the plurality of second task execution units.
9. The control device according to any one of claims 1 to 8, wherein the first task execution unit executes a task using an algorithm, and each of the plurality of second task execution units executes a task using an AI model.
10. The control device according to any one of claims 1 to 9, wherein the first task execution unit and the plurality of second task execution units are located in the physical layer of the wireless base station, and the control unit is located in the data link layer of the wireless base station.
11. A wireless base station equipped with the control device described in any one of claims 1 to 10.
12. A program, when executed by a computer, that causes the computer to function as a control device according to any one of claims 1 to 10.