Radio equipment
Abstract
Problem to be solved.To appropriately select an environment in which a software component can be executed in a wireless device. A wireless device according to the present invention is one that indicates a plurality of software execution means that execute software components as a whole to perform wireless communication processing as a whole, and an environment required for executing the software components. Whether or not the software component can be executed by any of the plurality of software execution means based on the storage means for storing the above execution environment information and all the execution environment information read from the storage means. It has a determination means for determining and a selection means for selecting the software execution means for executing the software component based on the result of the determination step. [Selection diagram] Fig. 3

Term
2.2 yearsto projected expiry
Projected expiry 11 December 2028, counted from filing; an application has no term until it is granted.
- Priority and filed
- Published
- Today
- Projected expiry
1 claim: 1 independent, 0 dependent
- 1それぞれソフトウェアコンポーネントを実行して、全体として無線通信処理を行う複数のソフトウェア実行手段と、 前記ソフトウェアコンポーネントの実行のために要求される環境を示す1つ以上の実行環境情報を記憶する記憶手段と、 前記記憶手段から読み出したすべての実行環境情報に基づいて、前記ソフトウェアコンポーネントが、前記複数のソフトウェア実行手段のいずれかにおいて実行可能であるか否かを判定する判定手段と、 前記判定ステップの結果に基づいて、前記ソフトウェアコンポーネントを実行する前記ソフトウェア実行手段を選択する選択手段と 有する無線通信装置。
33 paragraphs, as filed
The present invention relates to a software defined radio device.
For example, Patent Document 1 discloses a software defined radio having a domain management interface for managing the operating status of a software program operating in a domain composed of a plurality of modules.<patcit num="1"><text>Japanese Unexamined Patent Publication No. 2007-148844</text></patcit>
<p> The present invention has been made from the background as described above, and an object of the present invention is to provide an improved wireless device so that software components can operate more appropriately.</p>
<p> In order to achieve the above object, the wireless device (1) according to the present invention has a plurality of software execution means (224) that execute software components (222), respectively, to perform wireless communication processing as a whole, and the software components. Based on a storage means (260) that stores one or more execution environment information (264) indicating the environment required for execution of, and all execution environment information read from the storage means, the software component , The determination means (262) for determining whether or not the software can be executed by any of the plurality of software execution means, and the software execution means for executing the software component based on the result of the determination step. It has a selection means (262). The reference numerals given here are intended to assist the understanding of the present invention, and are not intended to limit the technical scope of the present invention.</p><p> Further, the method of selecting and arranging the software execution means according to the present invention reads out one or more execution environment information indicating the environment required for executing the software component from a predetermined file in the software wireless device. Based on the execution environment information, it is determined whether or not there is a software execution means suitable for executing the software component, and if the software execution means suitable for executing the software component exists, the appropriate software is used. The execution means is selected, the software component is placed in the selected software execution means, and otherwise, the selection placement process is terminated.</p>
<p> According to the wireless device according to the present invention, software components can be operated more appropriately.</p>
[Background of the present invention] In order to help the understanding of the present invention, first, the background to which the present invention has been made will be described. A wireless device that has multiple software components and is configured to perform wireless communication processing by selecting the required software components from the multiple software components according to the content of the wireless communication processing, executing them in combination, and performing the wireless communication processing. is there. In order to execute a software component, it is necessary to select hardware that has the execution environment required by the software component (hereinafter referred to as "hardware corresponding to the software component"). The above-mentioned wireless device generally corresponds to each software component based on information indicating the environment required to execute each software component (hereinafter referred to as "execution environment information") such as the OS and the type of processor. Select the hardware.
Also, in general, multiple execution environment information can be defined for one software component. However, in a wireless device, it is not possible to select appropriate hardware based on multiple execution environment information, and the software component cannot be executed even though there is actually hardware corresponding to the software component. May be judged. The wireless device according to the present invention has been made based on the background described above, and has been improved so that software components can be operated more appropriately based on a plurality of execution environment information.
[Wireless device 1] Hereinafter, the wireless device 1 will be described as an embodiment of the present invention. FIG. 1A is a diagram illustrating a hardware configuration of the wireless device 1 according to the present invention. As shown in FIG. 1 (A), the wireless device 1 includes an RF unit 102, an antenna 100 connected to the RF unit 102, and a modem unit 22 connected via a bus 104 such as CompactPCI (Peripheral Component Interconnect). , Codec unit 24 and control unit 26. In each of the following figures, substantially the same components are designated by the same reference numerals.
The modem unit 22, the codec unit 24, and the control unit 26 each include a memory 106, a CPU 108, and the like. In these components, a DSP (Digital Signal Processor) may be used together with the CPU 108 or instead of the CPU. The RF unit 102 receives a predetermined wireless signal via the antenna 100 and outputs the signal to the modem unit 22.
Further, the RF unit 102 transmits the signal input from the modem unit 22 via the antenna 100 by a predetermined wireless method. The modem unit 22 demodulates the signal input from the RF unit 102 and outputs it to the codec unit 24. Further, the modem unit 22 modulates the signal input from the codec unit 24 and outputs the signal to the RF unit 102.
The codec unit 24 decodes the signal input from the modem unit 22 and outputs it to the control unit 26. Further, the codec unit 24 encodes the signal input from the control unit 26 and outputs it to the modem unit 22. Further, the codec unit 24 includes the LAN interface (IF) 110 and is connected to the network 100.
The control unit 26 controls each unit of the wireless device 1 such as the modem unit 22 and the codec unit 24. Further, the control unit 26 includes the LAN-IF110 and is connected to the network 100. Further, the control unit 26 includes an input / output interface (I / O-IF) 112 to the outside.
[Wireless communication processing program 20] Hereinafter, a wireless communication processing program that operates in the wireless device (FIG. 1 (A)) will be described. FIG. 1B is a diagram showing a configuration of a wireless communication processing program 20 executed by the modem unit 22, the codec unit 24, and the control unit 26 of FIG. 1A. As shown in FIG. 1 (B), the wireless communication processing program 20 is stored in a plurality of software components 222 and GPP Device 224 stored in the memory 220 of the modem unit and the memory 240 of the codec unit, and in the memory 260 of the control unit. It consists of application factory 262 and domain profile 264. The software components 222, GPPDevice224, and application factory 262 are connected via an ORB (Object Request Broker), which is a software bus in the bus 104, and constitutes a CORBA (Common Object Request Broker Architecture).
The software components that make up the CORBA perform wireless communication processing by communicating with the ORB via skeletons and stubs. Hereinafter, when a plurality of components such as "software component 222" that may exist are specifically indicated, they are described as "software component 222-1, 222-2, ..., 222-n". Sometimes. However, n is an integer greater than or equal to 1, and n does not always indicate the same number.
One or more software components 222 are selected by the application factory 262, which will be described later, according to the content of wireless communication processing, and are loaded into the memory 220 of the modem unit 22 and the memory 240 of the codec unit 24 to supply hardware resources (devices). It is executed by using it concretely. The GPPDevice224 is a device interface, which is a logical device that enables access to non-CORBA-compatible hardware devices such as DSPs, serial devices, and audio devices. Further, the GPPDevice224 receives an inquiry from the application factory 262, which will be described later, and outputs the inquiry result to the application factory 262.
Further, the GPPDevice224 receives the arrangement and execution instruction of the software component 222 from the application factory 262 described later, loads the software component 222 into the memory of the hardware device connected to the GPPDevice224, and executes the software component 222. The application factory 262 is control software and receives an execution request for wireless communication processing from the outside via I / O-IF112 (Fig. 1 (A)). Upon receiving the execution request, Application Factory 262 selects one or more software components 222 required for the requested wireless communication processing. Hereinafter, the "software component 222 required for the requested wireless communication processing" will be described as the "execution target software component 222".
Application Factory 262, for GPPDevice224, The information read from the domain profile 264 (described later with reference to FIG. 2) corresponding to each execution target software component 222 is passed, and an inquiry is made as to whether or not each execution target software component 222 can be executed. Further, the application factory 262 selects the GPPDevice224 that arranges the execution target software component 222 and gives an execution instruction based on the inquiry result from the GPPDevice224. In addition, the application factory 262 arranges the execution target software component 222 and gives an execution instruction to the selected GPPDevice224.
FIG. 2 is a diagram illustrating an SPD (Software Package Descriptor), which is one of the domain profiles 264. In domain profile 264, information necessary for performing wireless communication processing is described in XML (eXtensible Markup Language) format. For example, the domain profile 264 shown in FIG. 2 describes the execution environment information corresponding to one software component 222.
For example, one execution environment information is defined in the "</ implementation>" tag from the "<implementation>" tag shown in FIG. Specifically, for example, the name of the OS that can execute the software component 222 corresponding to the value of the attribute "name" of the "<os>" tag shown in FIG. 2, and the attribute of the "<processor>" tag. The name of the CPU that can execute the software component 222, which corresponds to the value of "name", is defined. Further, as shown in FIG. 2, a plurality of "<implementation>" tags can be defined for one software component 222, that is, a plurality of execution environment information can be defined. The tags, attributes or child elements shown in FIG. 2 and their meanings are as shown in the table below.
<tables num="1"><img file="JP2010141555A_D0001.tif" /></tables>
[Processing of Application Factory 30] The processing of Application Factory 30 will be further described below. FIG. 3 is a flowchart showing the processing of the application factory 30 shown in FIG. 1 (B). The processing of the application factory 30 starts by receiving the execution request of the wireless communication processing from the outside.
When the process starts, as shown in FIG. 3, in step 300 (S300), the application factory 30 starts all execution environment information from the domain profile 264 (Fig. 1 (B)) corresponding to the execution target software component 222. (List of execution environment information) is acquired. Specifically, for example, the application factory 30 uses an XML parser (not shown) to analyze the tags contained in the SPD (Fig. 2), and from multiple "<implementation>" tags to "</ implementation>". "Get the value of each tag attribute described in the tag. In step 302 (S302), the application factory 30 selects one of the execution environment information list acquired in S300.
In step 304 (S304), the application factory 30 acquires all the GPPDevice224s (list of GPPDevices) stored in the modem section memory 220 (FIG. 1 (B)) and the codec section memory 240. In step 306 (S306), the application factory 30 selects one of the GPPDevice lists acquired in S304. In step 308 (S308), the application factory 30 queries the GPPDevice224 selected in S306 whether it is connected to the hardware device corresponding to the software component 222 to be executed. Hereinafter, "GPPDevice224 connected to the hardware device corresponding to the execution target software component 222" will be described as "GPPDevice224 corresponding to the execution target software component 222".
Specifically, for example, the application factory 30 calls an operation called "allocateCapacity" implemented by GPPDevice224 with the execution environment information selected in S302 as an argument. The allocateCpacity operation determines whether the execution environment provided by the hardware device connected to GPPDevice224 satisfies the execution environment received as an argument. If so, "TRUE" is selected, otherwise "FALSE" is selected. Each is returned as a return value. In step 310 (S310), the application factory 30 receives the return value of the allocateCapacity operation called in S308 and determines whether the return value is TRUE.
When it is determined that the return value is TRUE, the process proceeds to S312, and in other cases, the process proceeds to S314. In step 312 (S312), the application factory 30 determines the GPPDevice224 selected in S306 as the GPPDevice corresponding to the execution target software component 222, and ends the process. In step 314 (S314), the application factory 30 determines whether or not a GPPDevice other than the GPPDevice selected in S306 exists in the GPPDevice list acquired in S304.
If it is determined that it exists, the process proceeds to S306, and in other cases, the process proceeds to S316. In step 316 (S316), the application factory 30 determines whether or not the execution environment information other than the execution environment information selected in S302 exists in the execution environment information list acquired in S300. If it is determined that it exists, the process proceeds to S302, and in other cases, the process proceeds to S318. In step 318 (S318), the application factory 30 outputs an error or the like, assuming that the environment in which the execution target software component 222 can be executed does not exist in the wireless device 1 (FIG. 1 (A)).
[Overall operation example of wireless device 1] Hereinafter, an overall operation example of the wireless device 1 (FIG. 1 (A)) will be described. FIG. 4 is a communication sequence diagram showing an example of selection operation of a hardware device corresponding to the software component 222 to be executed (FIG. 1 (B)) in the wireless device 1. In FIG. 4, a case where the application factory 30 communicates with three GPPDevice224-1 to 224.3 is taken as a specific example, but this is for the purpose of clarifying and embodying the explanation, and the technical scope of the present invention. Is not intended to be a limitation.
The application factory 30 acquires m execution environment information 1 to m (where m is an integer of 1 or more) corresponding to the execution target software component 222, and in step 308 (S308) as shown in FIG. , Inquire to GPPDevice224-1 based on execution environment information 1. GPPDevice224-1 receives the execution environment information 1 from the application factory 30, and determines whether or not it corresponds to the execution target software component 222 based on the execution environment information 1. GPPDevice224-1 transmits the determination result to the application factory 30 as an inquiry result from the application factory 30.
When the application factory 30 receives the inquiry result from GPPDevice224-1 that it does not correspond to the execution target software component 222, the application factory 30 makes an inquiry to GPPDevice224-2 based on the execution environment information 1. GPPDevice224-2 sends the inquiry result to the application factory 30 in the same manner as GPPDevice224-1. When the application factory 30 receives the inquiry result from GPPDevice224-2 that it does not correspond to the execution target software component 222, the application factory 30 makes an inquiry to GPPDevice224-3 based on the execution environment information 1. GPPDevice224-3 sends the inquiry result to the application factory 30 in the same manner as GPPDevice224-1,224-2.
Similarly, the application factory 30 receives a query result from any of GPPDevice224-1 to 224.3 that corresponds to the execution target software component 222, based on the execution environment information 2 to m, and the application factory 30 is based on the execution environment information 2 to m. Repeat the inquiry to 224-3. The application factory 30 loads the execution target software component 222 into the memory of the hardware device and executes it via the GPPDevice224 selected based on the query result. As a result, the wireless device 1 performs wireless communication processing in response to an external request.
<figref num="1">FIG. 1 (A) is a diagram illustrating a hardware configuration of a wireless device, and FIG. 1 (B) is a diagram illustrating a configuration of a wireless communication processing program operating in the wireless device shown in FIG. 1 (A). Is.</figref><figref num="2">FIG. 2 is a diagram illustrating an SPD, which is one of the domain profiles shown in FIG. 1 (B).</figref><figref num="3">FIG. 3 is a flowchart showing the processing of the application factory shown in FIG. 1 (B).</figref><figref num="4">FIG. 4 is a communication sequence diagram showing an operation example between the application factory and GPP Device shown in FIG. 1 (B).</figref>
Code description
1 ... Wireless device, 100 ... Antenna, 102 ... RF section, 104 ... Bus, 106 ... Memory, 108 ... CPU, 110 ... LAN-IF, 112 ... I / O-IF, 22 ... Modem section, 24 ... Codec section, 26 ... Control section, 20 ... Wireless communication processing program, 220 ... Codec section Memory, 222 ... Software component , 224 GPPDevice, 240 Modem part memory, 260 Control part memory, 262 Application factory, 264 Domain profile
6 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6
Every citation, both ways
| Document | Relation | Office | Cited during |
|---|---|---|---|
| US11516113B2 | Cited by | United States of America | Applicant |
| US11212343B2 | Cited by | United States of America | Applicant |
| US11121921B2 | Cited by | United States of America | Applicant |
| CN103348335A | Cited by | China | Search report |
| JP2013543185A | Cited by | Japan | Examiner |
| US11051201B2 | Cited by | United States of America | Applicant |
| KR20140102121A | Cited by | Republic of Korea | Search report |
| US11032378B2 | Cited by | United States of America | Applicant |
| US10856134B2 | Cited by | United States of America | Applicant |
| US10855645B2 | Cited by | United States of America | Applicant |
| US11038841B2 | Cited by | United States of America | Applicant |
1 member in 1 office
Priority claims2
| Document | Office | Kind | Date |
|---|---|---|---|
| 2008315435 | Japan | A | |
| JP20080315435 | – | – | – |
Members1
| Document | Office | Kind | |
|---|---|---|---|
| JP2010141555AThis record | Japan | A |
Numbers
- Publication
- 2010141555
- Publication, DOCDB
- 2010141555
- Publication, EPODOC
- JP2010141555
- Application
- 315435
- Application, DOCDB
- 2008315435
- Application, EPODOC
- JP20080315435
Titles2
- Japanese
- 無線装置
- English
- Wireless device
Classification
- IPC, 3
- G06F9 50
- H04B1 40
- H04W88 02