WO2013157582A1 - Design assistance device, design assistance method and program - Google Patents

Design assistance device, design assistance method and program Download PDF

Info

Publication number
WO2013157582A1
WO2013157582A1 PCT/JP2013/061412 JP2013061412W WO2013157582A1 WO 2013157582 A1 WO2013157582 A1 WO 2013157582A1 JP 2013061412 W JP2013061412 W JP 2013061412W WO 2013157582 A1 WO2013157582 A1 WO 2013157582A1
Authority
WO
WIPO (PCT)
Prior art keywords
message
filter condition
application program
unit
design support
Prior art date
Application number
PCT/JP2013/061412
Other languages
French (fr)
Japanese (ja)
Inventor
竹中 崇
浩明 井上
Original Assignee
日本電気株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日本電気株式会社 filed Critical 日本電気株式会社
Priority to JP2014511235A priority Critical patent/JP6107817B2/en
Publication of WO2013157582A1 publication Critical patent/WO2013157582A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/212Monitoring or handling of messages using filtering or selective blocking

Definitions

  • the present invention is based on a Japanese patent application: Japanese Patent Application No. 2012-095064 (filed on April 18, 2012), and the entire contents of this application are incorporated herein by reference.
  • the present invention relates to a design support device, a design support method, and a program for a message processing device, and more particularly to a design support device, a design support method, and a program for a message processing device that efficiently process a large amount of received messages.
  • FIG. 11 is a block diagram illustrating the configuration of a message processing device that processes messages.
  • the message processing apparatus 105 includes a receiving unit 111 and a calculation processing unit 112.
  • the message arrives at the message processing device 105 in FIG. 11 via the network.
  • the network is, for example, a wired network such as Ethernet (registered trademark) or a wireless network such as Zigbee (registered trademark) or Bluetooth (registered trademark).
  • the receiving unit 111 has, for example, a form of Network Interface NIC (NIC).
  • NIC Network Interface
  • the calculation processing unit 112 is realized by a processor, for example.
  • a communication path in a server such as PCI Express is used for communication between the reception unit 111 and the calculation processing unit 112, for example, a communication path in a server such as PCI Express is used.
  • the calculation processing unit 112 executes calculation processing according to a predetermined application program.
  • Non-Patent Document 1 describes an XML parsing technique for parsing an XML (Extensible Markup Language) document in a hardware environment.
  • FIG. 12 is a block diagram schematically showing a design procedure of the message processing apparatus 105 shown in FIG.
  • the application program that defines the processing contents of the electronic message processing apparatus 105 is usually given as source code written in a program language.
  • the source code of the application program is converted into an object code that can be executed by the calculation processing unit 112 such as a processor by using the compiler 113.
  • the calculation processing unit 112 such as a processor by using the compiler 113.
  • the processing speed of the calculation processing unit 112 may not be able to cope with messages that arrive in large quantities.
  • the communication path connecting the receiving unit 111 and the calculation processing unit 112 may not be able to handle a large amount of incoming messages.
  • FIG. 13 is a block diagram schematically showing the techniques described in Patent Literature 1 and Patent Literature 2.
  • the message processing apparatus 106 further includes a selection unit 114 in addition to the reception unit 111 and the calculation processing unit 112.
  • the selection unit 114 After receiving the message by the receiving unit 111, the selection unit 114 checks the message according to a predetermined specification, and discards the message when a message that matches a predetermined condition is found. Thereby, even if a large amount of electronic messages are transmitted, it is possible to prevent the calculation processing unit 112 from processing electronic messages that do not include important information.
  • FIG. 14 is a block diagram showing a configuration of the message processing apparatus 107 studied by the inventors as a technique for solving the above-described problem.
  • the message processing device 107 further includes a conversion unit 115 in addition to the reception unit 111, the selection unit 114, and the calculation processing unit 112.
  • the conversion unit 115 finds a message that matches a predetermined condition among the messages output from the selection unit 114, the conversion unit 115 converts the message according to a predetermined rule. As a result, even if a large amount of messages are transmitted, the calculation processing unit 112 can process a message from which unnecessary data in the message is deleted. According to the message processing device 107 illustrated in FIG. 14, unlike the message processing device 106 illustrated in FIG. 13, only the necessary information of the information included in the message can be processed by the calculation processing unit 112.
  • the application program executed by the calculation processing unit 112 does not clearly specify a condition for discarding a message or a rule for converting a message. Therefore, in order to implement the message processing devices 106 and 107, the selection unit 114 in FIGS. 13 and 14 and the conversion unit 115 in FIG. 14 must be separately designed. In addition, the conditions for discarding the electronic message and the rules for converting the electronic message are different for each application program. Therefore, the design needs to be changed every time the application program is changed. However, a technique for automating the design of the selection unit 114 and the conversion unit 115 is not known.
  • An object of the present invention is to provide a design support apparatus, a design support method, and a program that contribute to such a demand.
  • the design support apparatus is: A design support device for designing a message processing device including a selection circuit for selecting a message and a calculation processing unit for executing an application program for processing the selected message, A first filter condition extraction unit that extracts a condition for outputting the result of the processing from the application program as a first filter condition from the application program; A selection unit generating unit configured to generate configuration information of the selection circuit so that the selection circuit performs the selection based on the first filter condition;
  • the design support method is: A design support method for designing a message processing device comprising a selection circuit for selecting a message and a calculation processing unit for executing an application program for processing the selected message, A step of extracting a condition for outputting the result of the processing from the application program as a first filter condition from the application program; Generating configuration information of the selection circuit so that the selection circuit performs the selection based on the first filter condition.
  • the program according to the third aspect of the present invention is: A program for causing a computer to execute a process of designing a message processing device including a selection circuit that selects a message and a calculation processing unit that executes an application program that processes the selected message. A process of extracting a condition for outputting the result of the process from the application program as a first filter condition from the application program; Causing the computer to execute a process of generating configuration information of the selection circuit so that the selection circuit performs the selection based on the first filter condition.
  • program can be provided as a program product recorded on a non-transient computer-readable storage medium.
  • the design support apparatus the design support method, and the program according to the present invention, it is possible to design a message processing apparatus that filters in advance a message or a part of information included in the message according to the processing content of the application program that processes the message. It becomes possible to support.
  • FIG. 1 is a block diagram illustrating an example of the configuration of a design support apparatus according to an embodiment.
  • the design support apparatus includes a first filter condition extraction unit (62) and a selection unit generation unit (63).
  • the design support apparatus includes a selection circuit that selects a message (for example, the selection unit 114 in FIGS. 13 and 14), and a calculation processing unit (112 in FIGS. 13 and 14) that executes an application program that processes the selected message.
  • a design support apparatus for designing a message processing apparatus 106 in FIG. 13 and 107 in FIG. 14
  • the filter condition extraction unit (62) extracts, from the application program, a condition for outputting a result of the message processing as a first filter condition from the application program.
  • the selection unit generation unit (63) generates configuration information of the selection circuit (114) so that the selection circuit (114 in FIGS. 13 and 14) selects a message based on the first filter condition. To do.
  • the selection unit generation unit (63) automatically sets configuration information of a selection circuit (selection unit 114 in FIGS. 13 and 14) that filters a message according to whether or not a message processing result is output from the application program. It is because it produces
  • FIG. 2 is a block diagram showing another configuration example of the design support apparatus according to the embodiment.
  • the design support apparatus includes a second filter condition extraction unit (64) and a conversion unit generation unit (65).
  • the design support apparatus shown in FIG. 2 executes a conversion circuit (for example, the conversion unit 115 in FIG. 14) that converts a message selected by a selection circuit (for example, the selection unit 114 in FIG. 14), and an application program.
  • This is a design support apparatus for designing a message processing device (for example, 107 in FIG. 14) including a calculation processing unit (for example, 112 in FIG. 14) for processing the message converted by the conversion circuit (115).
  • the second filter condition extraction unit (64) extracts an input of an application program that affects the processing result of the message by the calculation processing unit (112) as a second filter condition.
  • generation part (65) produces
  • a design support apparatus it is possible to support the design of a message processing apparatus that filters a part of information included in a message in advance according to the processing content of an application program that processes the message. This is because the conversion unit generation unit (65) is configured to convert the message based on the second filter condition extracted from the application program depending on whether the processing result of the message is affected. Is generated automatically.
  • the design support apparatus can cope with a case where important information differs for each application program executed by the calculation processing unit.
  • the first filter condition extraction unit may express the first filter condition as a logical expression including a field included in the message.
  • the message processing device includes a conversion circuit that converts the selected message.
  • the calculation processing unit executes the application program, processes the message converted by the conversion circuit,
  • the design support apparatus includes: a second filter condition extraction unit that extracts, as a second filter condition, an input of the application program that affects the result of the processing by the calculation processing unit; A conversion unit generation unit that generates configuration information of the conversion circuit so that the conversion circuit performs the conversion based on the second filter condition.
  • the second filter condition extraction unit may express the second filter condition using a set whose elements are fields obtained by decomposing the electronic message.
  • the selection unit generation unit may generate configuration information of the selection circuit such that the selection circuit discards a message that does not satisfy the first filter condition.
  • the conversion unit generation unit may generate configuration information of the conversion circuit such that the conversion circuit deletes a field that is not included in the set from among the fields of the message.
  • the electronic message may have at least one field composed of attribute and value pairs.
  • the computer may express the first filter condition as a logical expression including a field included in the message.
  • the message processing device includes a conversion circuit that converts the selected message.
  • the calculation processing unit executes the application program, processes the message converted by the conversion circuit,
  • the computer extracting the input of the application program that affects the result of the processing by the calculation processing unit as a second filter condition; Generating the configuration information of the conversion circuit so that the conversion circuit performs the conversion based on the second filter condition.
  • the computer may express the second filter condition by using a set whose elements are fields obtained by decomposing the electronic message.
  • the computer may generate configuration information of the selection circuit such that the selection circuit discards a message that does not satisfy the first filter condition.
  • the computer may generate configuration information of the conversion circuit such that the conversion circuit deletes a field that is not included in the set from among the fields of the message.
  • the program is related to the third viewpoint.
  • the program may cause the computer to execute a process of expressing the first filter condition as a logical expression including a field included in the message.
  • the message processing device includes a conversion circuit that converts the selected message.
  • the calculation processing unit executes the application program, processes the message converted by the conversion circuit,
  • the program extracts, as a second filter condition, an input of the application program that affects the result of the processing by the calculation processing unit;
  • Processing for generating configuration information of the conversion circuit may be executed by the computer so that the conversion circuit performs the conversion based on the second filter condition.
  • the program may cause the computer to execute a process of expressing the second filter condition using a set having fields obtained by decomposing the electronic message as elements.
  • the program may cause the computer to execute a process of generating configuration information of the selection circuit so that the selection circuit discards a message that does not satisfy the first filter condition.
  • the program may cause the computer to execute a process of generating configuration information of the conversion circuit so that the conversion circuit deletes a field that is not included in the set from among the fields of the message.
  • FIG. 2 is a block diagram illustrating an example of the configuration of the design support apparatus according to the present embodiment.
  • the design support apparatus includes a storage device (for example, a main storage device and an auxiliary storage device) 50 and a processing device (for example, a computer; a central processing unit; a processor; a data processing device) 60 that operates by program control. And has.
  • the storage device 50 includes a program storage unit 51, a selection unit storage unit 52, and a conversion unit storage unit 53.
  • the program storage unit 51 stores in advance an application program to be executed by the calculation processing unit of the message processing apparatus.
  • the selection unit storage unit 52 stores circuit information of the selection unit generated by the selection unit generation unit 63 of the processing device 60.
  • the conversion unit storage unit 53 stores circuit information of the conversion unit generated by the conversion unit generation unit 65.
  • the processing device 60 includes a program input unit 61, a first filter condition extraction unit 62, a selection unit generation unit 63, a second filter condition extraction unit 64, and a conversion unit generation unit 65.
  • the program input unit 61 reads an application program stored in advance in the program storage unit 51 of the storage device 50.
  • the first filter condition extraction unit 62 extracts the first filter condition from the application program read from the storage device 50. Details of the first filter condition will be described later.
  • the selection unit generation unit 63 generates circuit information of the selection unit based on the first filter condition.
  • the selection unit generation unit 63 records the generated circuit information in the selection unit storage unit 52 of the storage device 50.
  • the second filter condition extraction unit 64 extracts the second filter condition from the application program read from the storage device 50. Details of the second filter condition will be described later.
  • the conversion unit generation unit 65 generates circuit information of the conversion unit based on the second filter condition.
  • the conversion unit generation unit 65 stores the generated circuit information in the conversion unit storage unit 53 of the storage device 50.
  • FIG. 3 is a flowchart showing an example of the operation of the design support apparatus of the present embodiment. With reference to the block diagram of FIG. 2 and the flowchart of FIG. 3, the operation of the design support apparatus of the present embodiment will be described in detail.
  • the program storage unit 51 of the storage device 50 stores in advance an application program to be executed by the calculation processing unit of the message processing device to be designed.
  • the application program may be stored as source code or may be stored after being converted into a format that can be executed by a processor or the like. In the present embodiment, as an example, it is assumed that it is stored in the form of source code.
  • the program input unit 61 reads an application program from the program storage unit 51 of the storage device 50 (step A1).
  • the first filter condition extraction unit 62 extracts a condition for generating an output for each output in the application program, and sets this as a “first filter condition” (step A2).
  • the selection unit generation unit 63 generates circuit information of the selection unit based on the first filter condition.
  • the selection unit is a circuit that discards a message when the received message does not satisfy the first filter condition.
  • generation part 63 writes the circuit information of the said selection part in the selection part memory
  • the second filter condition extraction unit 64 extracts an input that affects the output in the application program and sets it as a “second filter condition” (step A4).
  • the conversion unit generation unit 65 generates circuit information of the conversion unit based on the second filter condition.
  • the conversion unit is a circuit that discards data that does not satisfy the second filter condition in the received electronic message.
  • the conversion unit generation unit 65 writes the circuit information of the conversion unit in the conversion unit storage unit 53 of the storage device 50 (step A5).
  • the message processing apparatus 107 shown in FIG. 14 is designed.
  • the message processing apparatus 107 includes a reception unit 111, a selection unit 114, a conversion unit 115, and a calculation processing unit 112.
  • the receiving unit 111 receives a message from the network.
  • the receiving unit 111 disassembles the message into each field of the header of the message and each field of the data (payload) portion of the message according to the message specification given in advance, and passes the decomposed message to the selection unit 114.
  • the specification of the data part is uncertain, so it is difficult to disassemble the data part into fields.
  • the data portion can also be decomposed in units of fields.
  • the selection unit 114 inspects the message received from the receiving unit 111 according to a predetermined specification, and discards the message when a message matching a predetermined condition is found. In addition, the selection unit 114 transmits other messages to the conversion unit 115.
  • the conversion unit 115 inspects a message field according to a predetermined specification for the message received from the selection unit 114, and converts the message by discarding a message field that matches a predetermined condition. . Furthermore, the conversion unit 115 transmits the converted message to the CPU or memory in the server via a communication path in the server such as PCI Express.
  • the calculation processing unit 112 processes the message received from the conversion unit 115 by an application program designated in advance.
  • the processing by the application program executed by the calculation processing unit 112 is the same as the processing by the application program executed by the calculation processing unit 112 of the message processing apparatus 105 in FIG.
  • messages unnecessary for processing and data unnecessary for processing are discarded by the selection unit 114 and the conversion unit 115, and only data necessary for processing arrives at the calculation processing unit 112. To do. Therefore, according to the message processing device 107, it is possible to process more messages compared to the message processing device 105 without changing the processing contents in the calculation processing unit 112.
  • an application program to be executed by the calculation processing unit 112 of the message processing device 107 to be designed is stored in advance.
  • the application program may be stored as source code or may be stored after being converted into a format that can be executed by a processor or the like. In this embodiment, it is assumed that the application program is stored in the program storage unit 51 as source code.
  • FIG. 4 illustrates an application program in this embodiment.
  • the source code of the application program is described in ANSI-C language.
  • FIG. 4 portions of the source code that are not necessary for explanation are omitted.
  • the source code may be described in a programming language other than ANSI-C.
  • the message processed by the application program shown in FIG. 4 is expressed by a structure having three fields of “city”, “temp”, and “rain” as shown in the first line of the source code of FIG.
  • the message processed by the application program of this embodiment is configured in accordance with a predetermined specification that there are a plurality of attribute / value pairs.
  • a message is referred to as a “structured message”.
  • structured messages messages such as HTML (Hypertext Markup Language), XML (Extensible Markup Language), etc., based on the data structure such as structure, class, etc.
  • HTML Hypertext Markup Language
  • XML Extensible Markup Language
  • This includes electronic messages expressed by value and other various electronic messages. In this way, by focusing only on the structured electronic message, it is possible to extract important information (for example, information related to processing of the application program) from the electronic message.
  • the fields city, temp, and rain included in the structure represent the city, temperature, and precipitation, respectively.
  • the application program of FIG. 4 integrates and outputs the precipitation rain described in the telegram in which the city city is Tokyo.
  • the function get_event () is a function that receives one message from the receiving device.
  • Line 6 checks whether the value of field city in the message is Tokyo. If the value of city is not Tokyo, nothing is done for the message.
  • the value of the field rain in the message is added to the total precipitation total.
  • the 8th line outputs the total precipitation after calculation.
  • the function send_result () is a function for outputting data. In each line of the source code, a comment after the double slash “//” is a comment sentence.
  • FIG. 5 illustrates a message to be processed by the application program shown in FIG.
  • the value of the field city of the message on the first line and the message on the third line is Tokyo. Therefore, the electronic message on the first line and the electronic message on the third line are processed by the application program shown in FIG.
  • the value of the field city of the message on the second line is Osaka, it is not processed by the application program of FIG. Therefore, the message on the second line is an unnecessary message for the application program of FIG.
  • FIG. 6 illustrates input / output of the reception unit 111 corresponding to the application program shown in FIG.
  • the reception unit 111 receives a message, disassembles it into fields, and passes it to the selection unit 114.
  • the message targeted by the application program shown in FIG. 4 has three fields, city, temp, and rain.
  • the receiving unit 111 in FIG. 6 has three outputs of city, temp, and rain.
  • the receiving unit 111 in FIG. 6 is given in advance.
  • the design method of the receiving unit 111 the method described in Non-Patent Document 1 can be used.
  • the design method of the receiving unit 111 is not limited to this.
  • the program input unit 61 reads an application program from the program storage unit 51 of the storage device 50 (step A1 in FIG. 3).
  • the first filter condition extraction unit 62 extracts a condition for generating an output for each output in the application program, and sets this as a “first filter condition” (step A2 in FIG. 3). ).
  • the filter condition extraction unit 62 can use a technique such as a control data flow graph (Control Data Flow Graph: CDFG) analysis as an example to extract the conditions.
  • a technique such as a control data flow graph (Control Data Flow Graph: CDFG) analysis as an example to extract the conditions.
  • CDFG Control Data Flow Graph
  • the condition extraction method by the filter condition extraction unit 62 is not limited to this.
  • the first filter condition is expressed by a logical expression of each field constituting the message.
  • the selection unit generation unit 63 generates circuit information of the selection unit 114 based on the first filter condition (step A3 in FIG. 3).
  • the selection unit 114 is a circuit that discards a message when the received message does not satisfy the first filter condition.
  • the selection unit generation unit 63 writes the circuit information of the selection unit 114 in the selection unit storage unit 52 of the storage device 50.
  • the first filter condition is expressed by a logical expression of each field constituting the message. Therefore, the selection unit generation unit 63 generates circuit information of a logic circuit that realizes this logical expression as circuit information of the selection unit 114.
  • FIG. 7 is a block diagram illustrating the configuration of the generated selection unit 114 as an example.
  • the selection unit 114 includes external input terminals city, temp, rain, external output terminals city, temp, rain, a condition determination circuit 116, and a gate 117.
  • the condition judgment circuit 116 reads a value from the external input terminal city and checks whether the value is Tokyo. The condition determination circuit 116 sends true to the gate 117 if the value of city is Tokyo as a result of the inspection, and false otherwise.
  • the gate 117 sends the values of the external input terminals city, temp, and rain to the external output terminal when the value of the condition determination circuit 116 is true, and to the external output terminal when the value of the condition determination circuit 116 is false. Output nothing.
  • FIG. 8 illustrates a message transmitted from the selection unit 114. Comparing the message in FIG. 8 with the message in FIG. 5, in the message in FIG. 8, the message in the second line of the message in FIG. 5 whose field city value is Osaka is the selection unit shown in FIG. 7. 114 has been discarded.
  • the selection unit generation unit 63 records the circuit configuration information of the selection unit 114 illustrated in FIG. 7 in the selection unit storage unit 52 of the storage device 50.
  • the second filter condition extraction unit 64 extracts the input that affects the output in the application program and sets it as the “second filter condition” (step A4 in FIG. 3).
  • the filter condition extraction unit 64 can use a technique such as an influence cone extraction method (Cone ⁇ Influence Reduction) to extract the input.
  • a technique such as an influence cone extraction method (Cone ⁇ Influence Reduction) to extract the input.
  • the method by which the filter condition extraction unit 64 extracts the input is not limited to this.
  • the filter condition extraction unit 64 extracts city and rain as the second filter condition.
  • the second filter condition is expressed by specifying a subset of each field constituting the message.
  • the conversion unit generation unit 65 generates circuit information of the conversion unit 115 based on the second filter condition (step A5 in FIG. 3).
  • the conversion unit 115 is a circuit that discards data that does not satisfy the second filter condition in the received electronic message.
  • the conversion unit generation unit 65 writes the circuit information of the conversion unit 115 to the conversion unit storage unit 53 of the storage device 50.
  • the second filter condition is expressed by specifying a subset of each field constituting the message. Therefore, the conversion unit generation unit 65 generates circuit information of a logic circuit that selects a specified field from the fields in the message as circuit information of the conversion unit 115.
  • FIG. 9 is a block diagram illustrating the configuration of the generated conversion unit 115 as an example.
  • the conversion unit 115 includes external input terminals city, temp, rain, external output terminals city, rain, and a field selection circuit 118.
  • the field selection circuit 118 reads values from the external input terminals city, temp, and rain, and sends only the values of city and rain to the external output terminals city and rain, respectively. On the other hand, the field selection circuit 118 discards the value read from the external input terminal temp without sending it to the external output terminal.
  • FIG. 10 illustrates a message transmitted from the conversion unit 115 to the calculation processing unit 112. Comparing the message of FIG. 10 with the message of FIG. 8, the field temp in the message of FIG. 8 is discarded in the message of FIG.
  • the conversion unit generation unit 65 records the circuit information of the conversion unit 115 of FIG. 9 in the conversion unit storage unit 53 of the storage device 50.
  • the circuit information of the selection unit 114 stored in the selection unit storage unit 52 of the storage device 50 and the circuit information of the selection unit 115 stored in the conversion unit storage unit 53 are received using an existing circuit design technique.
  • 111 and the calculation processing unit 112 are arranged in the message processing apparatus 107.
  • the design support apparatus can be applied to design a message processing apparatus that processes real-time information (event sequence) from a sensor or a terminal, for example.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Stored Programmes (AREA)
  • Computer And Data Communications (AREA)

Abstract

The objective of the present invention is to assist the design of an electronic message processing device that pre-filters an electronic message or a portion of information included in the electronic message in accordance with the content of processing of an application program that processes electronic messages. A design assistance device, which designs an electronic message processing device that is provided with a selection circuit that selects an electronic message and a calculation processing unit that executes an application program that processes the selected electronic message, is provided with: a first filter condition extraction unit which extracts a condition by which results of the processing are output from the application program as a first filter condition from the application program; and a selection unit configuration unit which generates configuration information for a selection circuit so that the selection circuit performs selection on the basis of the first filter condition.

Description

設計支援装置、設計支援方法およびプログラムDesign support apparatus, design support method, and program
 [関連出願についての記載]
 本発明は、日本国特許出願:特願2012-095064号(2012年 4月18日出願)に基づくものであり、同出願の全記載内容は引用をもって本書に組み込み記載されているものとする。
 本発明は、電文処理装置の設計支援装置、設計支援方法およびプログラムに関し、特に、受信した大量の電文を効率良く処理する電文処理装置の設計支援装置、設計支援方法およびプログラムに関する。
[Description of related applications]
The present invention is based on a Japanese patent application: Japanese Patent Application No. 2012-095064 (filed on April 18, 2012), and the entire contents of this application are incorporated herein by reference.
The present invention relates to a design support device, a design support method, and a program for a message processing device, and more particularly to a design support device, a design support method, and a program for a message processing device that efficiently process a large amount of received messages.
 近年、センサや端末から得られる情報を実時間で処理することで、新たな付加価値を創造することが求められている。一般に、このような情報は、電文としてサーバに到着する。 In recent years, it has been required to create new added value by processing information obtained from sensors and terminals in real time. Generally, such information arrives at a server as a message.
 図11は、電文を処理する電文処理装置の構成を例示するブロック図である。図11を参照すると、電文処理装置105は、受信部111および計算処理部112を備えている。 FIG. 11 is a block diagram illustrating the configuration of a message processing device that processes messages. Referring to FIG. 11, the message processing apparatus 105 includes a receiving unit 111 and a calculation processing unit 112.
 図11の電文処理装置105には、ネットワークを介して電文が到着する。ここで、ネットワークとは、例えば、Ethernet(登録商標)などの有線ネットワーク、または、Zigbee(登録商標)、Bluetooth(登録商標)などの無線ネットワークである。受信部111は、例えば、Network Interface Controller(NIC)などの形態を有する。受信部111は、ネットワークから電文を受け取ると、計算処理部112に送出する。計算処理部112は、例えば、プロセッサで実現される。受信部111と計算処理部112との通信には、例えば、PCI Expressなどのサーバ内の通信路が使用される。計算処理部112は、受信部111から電文を受け取ると、予め定められたアプリケーションプログラムに従って計算処理を実行する。 The message arrives at the message processing device 105 in FIG. 11 via the network. Here, the network is, for example, a wired network such as Ethernet (registered trademark) or a wireless network such as Zigbee (registered trademark) or Bluetooth (registered trademark). The receiving unit 111 has, for example, a form of Network Interface NIC (NIC). When receiving a message from the network, the receiving unit 111 sends it to the calculation processing unit 112. The calculation processing unit 112 is realized by a processor, for example. For communication between the reception unit 111 and the calculation processing unit 112, for example, a communication path in a server such as PCI Express is used. When the calculation processing unit 112 receives a message from the reception unit 111, the calculation processing unit 112 executes calculation processing according to a predetermined application program.
 なお、サーバが受信した大量の電文を処理する技術が、例えば、特許文献1および特許文献2に記載されている。また、ハードウェア環境でXML(Extensible Markup Language)文書をパーシング(parsing、分解)するXMLパーシング技術が、一例として、非特許文献1に記載されている。 Note that techniques for processing a large amount of electronic messages received by the server are described in, for example, Patent Document 1 and Patent Document 2. Further, as an example, Non-Patent Document 1 describes an XML parsing technique for parsing an XML (Extensible Markup Language) document in a hardware environment.
特開2007-310662号公報Japanese Patent Laid-Open No. 2007-310662 特表2004-531941号公報Special table 2004-51941 gazette
 上記の特許文献および非特許文献の各開示を、本書に引用をもって繰り込むものとする。以下の分析は、本発明者によってなされたものである。 The disclosures of the above patent documents and non-patent documents are incorporated herein by reference. The following analysis was made by the present inventors.
 図12は、図11に示した電文処理装置105の設計手順を模式的に示すブロック図である。電文処理装置105の処理内容を規定するアプリケーションプログラムは、通常、プログラム言語で記述されたソースコードとして与えられる。アプリケーションプログラムのソースコードは、コンパイラ113を用いて、プロセッサなどの計算処理部112で実行可能なオブジェクトコードに変換される。オブジェクトコードが計算処理部112に設けられたプロセッサに配置されて実行されることによって、所望の電文処理が実現される。 FIG. 12 is a block diagram schematically showing a design procedure of the message processing apparatus 105 shown in FIG. The application program that defines the processing contents of the electronic message processing apparatus 105 is usually given as source code written in a program language. The source code of the application program is converted into an object code that can be executed by the calculation processing unit 112 such as a processor by using the compiler 113. By placing the object code on a processor provided in the calculation processing unit 112 and executing the object code, a desired message processing is realized.
 しかしながら、通常のサーバは、大量の電文を受信した場合には、実時間での処理を実現することが困難となる。例えば、計算処理部112の処理速度が、大量に到着する電文に対応できない場合がある。また、受信部111と計算処理部112とを接続する通信路が、大量に到着する電文に対応できない場合もある。 However, if a normal server receives a large amount of messages, it becomes difficult to realize real-time processing. For example, the processing speed of the calculation processing unit 112 may not be able to cope with messages that arrive in large quantities. In addition, the communication path connecting the receiving unit 111 and the calculation processing unit 112 may not be able to handle a large amount of incoming messages.
 上記の問題を解消するための技術が、特許文献1および特許文献2に記載されている。図13は、特許文献1および特許文献2に記載された技術を概略的に示すブロック図である。図13を参照すると、電文処理装置106は、受信部111および計算処理部112以外に、さらに選択部114を有する。 A technique for solving the above problem is described in Patent Document 1 and Patent Document 2. FIG. 13 is a block diagram schematically showing the techniques described in Patent Literature 1 and Patent Literature 2. As shown in FIG. Referring to FIG. 13, the message processing apparatus 106 further includes a selection unit 114 in addition to the reception unit 111 and the calculation processing unit 112.
 受信部111で電文を受信した後、選択部114は、予め与えられた仕様に従って電文を検査し、予め決められた条件に合致する電文を発見した場合、電文を破棄する。これにより、仮に大量の電文が送信されたとしても、重要な情報を含まない電文を計算処理部112が処理することを防ぐことができる。 After receiving the message by the receiving unit 111, the selection unit 114 checks the message according to a predetermined specification, and discards the message when a message that matches a predetermined condition is found. Thereby, even if a large amount of electronic messages are transmitted, it is possible to prevent the calculation processing unit 112 from processing electronic messages that do not include important information.
 一方、図14は、上記の問題を解決するための技術として、発明者らが検討した電文処理装置107の構成を示すブロック図である。図14を参照すると、電文処理装置107は、受信部111、選択部114および計算処理部112以外に、さらに変換部115を有する。 On the other hand, FIG. 14 is a block diagram showing a configuration of the message processing apparatus 107 studied by the inventors as a technique for solving the above-described problem. Referring to FIG. 14, the message processing device 107 further includes a conversion unit 115 in addition to the reception unit 111, the selection unit 114, and the calculation processing unit 112.
 変換部115は、選択部114から出力された電文のうち、予め決められた条件に合致する電文を発見した場合、予め決められた規則に従って電文を変換する。これにより、仮に大量の電文が送信されたとしても、電文内の不必要なデータを削除した電文を、計算処理部112に処理させることができる。図14に示した電文処理装置107によると、図13に示した電文処理装置106とは異なり、電文に含まる情報のうちの必要な情報のみを計算処理部112に処理させることができる。 When the conversion unit 115 finds a message that matches a predetermined condition among the messages output from the selection unit 114, the conversion unit 115 converts the message according to a predetermined rule. As a result, even if a large amount of messages are transmitted, the calculation processing unit 112 can process a message from which unnecessary data in the message is deleted. According to the message processing device 107 illustrated in FIG. 14, unlike the message processing device 106 illustrated in FIG. 13, only the necessary information of the information included in the message can be processed by the calculation processing unit 112.
 しかし、図13に示した電文処理装置106、または、図14に示した電文処理装置107によると、以下の問題が生じ得る。 However, according to the message processing device 106 shown in FIG. 13 or the message processing device 107 shown in FIG. 14, the following problems may occur.
 計算処理部112で実行されるアプリケーションプログラムには、電文を破棄する条件や電文を変換する規則が明示されていない。したがって、電文処理装置106、107を実現するためには、図13および図14における選択部114や、図14における変換部115を、別途、設計しなければならない。しかも、電文を破棄する条件や電文を変換する規則は、アプリケーションプログラムごとに異なるため、アプリケーションプログラムを変更するたびに、設計変更の必要が生じる。しかしながら、選択部114や変換部115の設計を自動化する技術は知られていない。 The application program executed by the calculation processing unit 112 does not clearly specify a condition for discarding a message or a rule for converting a message. Therefore, in order to implement the message processing devices 106 and 107, the selection unit 114 in FIGS. 13 and 14 and the conversion unit 115 in FIG. 14 must be separately designed. In addition, the conditions for discarding the electronic message and the rules for converting the electronic message are different for each application program. Therefore, the design needs to be changed every time the application program is changed. However, a technique for automating the design of the selection unit 114 and the conversion unit 115 is not known.
 したがって、上述の関連技術によると、受信電文に関して必要とされる重要情報のみを柔軟に抽出する装置を自動的に設計することは困難である。このことは、図13または図14に例示した、柔軟かつ高速に電文を処理する電文処理装置を実現する上での障害となる。 Therefore, according to the related technology described above, it is difficult to automatically design a device that flexibly extracts only important information required for a received message. This is an obstacle to realizing the message processing apparatus that processes the message at high speed and flexibly as illustrated in FIG. 13 or FIG.
 そこで、電文を処理するアプリケーションプログラムの処理内容に応じて、電文または電文に含まれる情報の一部を事前にフィルタリングする電文処理装置の設計を支援することが要望される。本発明の目的は、かかる要望に寄与する設計支援装置、設計支援方法およびプログラムを提供することにある。 Therefore, it is desired to support the design of a message processing apparatus that filters in advance a message or a part of information included in the message according to the processing contents of the application program that processes the message. An object of the present invention is to provide a design support apparatus, a design support method, and a program that contribute to such a demand.
 本発明の第1の視点に係る設計支援装置は、
 電文を選択する選択回路と、選択された電文を処理するアプリケーションプログラムを実行する計算処理部とを備えた電文処理装置を設計する設計支援装置であって、
 前記アプリケーションプログラムから前記処理の結果が出力される条件を、前記アプリケーションプログラムから第1のフィルタ条件として抽出する第1のフィルタ条件抽出部と、
 前記選択回路が前記第1のフィルタ条件に基づいて前記選択を行うように、前記選択回路の構成情報を生成する選択部生成部と、を備える。
The design support apparatus according to the first aspect of the present invention is:
A design support device for designing a message processing device including a selection circuit for selecting a message and a calculation processing unit for executing an application program for processing the selected message,
A first filter condition extraction unit that extracts a condition for outputting the result of the processing from the application program as a first filter condition from the application program;
A selection unit generating unit configured to generate configuration information of the selection circuit so that the selection circuit performs the selection based on the first filter condition;
 本発明の第2の視点に係る設計支援方法は、
 電文を選択する選択回路と、選択された電文を処理するアプリケーションプログラムを実行する計算処理部とを備えた電文処理装置を設計する設計支援方法であって、
 コンピュータが、前記アプリケーションプログラムから前記処理の結果が出力される条件を、前記アプリケーションプログラムから第1のフィルタ条件として抽出する工程と、
 前記選択回路が前記第1のフィルタ条件に基づいて前記選択を行うように、前記選択回路の構成情報を生成する工程と、を含む。
The design support method according to the second aspect of the present invention is:
A design support method for designing a message processing device comprising a selection circuit for selecting a message and a calculation processing unit for executing an application program for processing the selected message,
A step of extracting a condition for outputting the result of the processing from the application program as a first filter condition from the application program;
Generating configuration information of the selection circuit so that the selection circuit performs the selection based on the first filter condition.
 本発明の第3の視点に係るプログラムは、
 電文を選択する選択回路と、選択された電文を処理するアプリケーションプログラムを実行する計算処理部とを備えた電文処理装置を設計する処理を、コンピュータに実行させるプログラムであって、
 前記アプリケーションプログラムから前記処理の結果が出力される条件を、前記アプリケーションプログラムから第1のフィルタ条件として抽出する処理と、
 前記選択回路が前記第1のフィルタ条件に基づいて前記選択を行うように、前記選択回路の構成情報を生成する処理と、を前記コンピュータに実行させる。
The program according to the third aspect of the present invention is:
A program for causing a computer to execute a process of designing a message processing device including a selection circuit that selects a message and a calculation processing unit that executes an application program that processes the selected message.
A process of extracting a condition for outputting the result of the process from the application program as a first filter condition from the application program;
Causing the computer to execute a process of generating configuration information of the selection circuit so that the selection circuit performs the selection based on the first filter condition.
 なお、プログラムは、非トランジエントなコンピュータ読み取り可能な記録媒体(non-transient computer-readable storage medium)に記録されたプログラム製品として提供することができる。 Note that the program can be provided as a program product recorded on a non-transient computer-readable storage medium.
 本発明に係る設計支援装置、設計支援方法およびプログラムによると、電文を処理するアプリケーションプログラムの処理内容に応じて、電文または電文に含まれる情報の一部を事前にフィルタリングする電文処理装置の設計を支援することが可能となる。 According to the design support apparatus, the design support method, and the program according to the present invention, it is possible to design a message processing apparatus that filters in advance a message or a part of information included in the message according to the processing content of the application program that processes the message. It becomes possible to support.
第1の実施形態に係る設計支援装置の概略構成を一例として示すブロック図である。It is a block diagram which shows schematic structure of the design support apparatus which concerns on 1st Embodiment as an example. 第1の実施形態に係る設計支援装置の構成を一例として示すブロック図である。It is a block diagram which shows the structure of the design assistance apparatus which concerns on 1st Embodiment as an example. 第1の実施形態に係る設計支援装置の動作を一例として示すフロー図である。It is a flowchart which shows operation | movement of the design support apparatus which concerns on 1st Embodiment as an example. 実施例におけるアプリケーションプログラムの例を示す図である。It is a figure which shows the example of the application program in an Example. 実施例における電文の例を示す図である。It is a figure which shows the example of the message | telegram in an Example. 実施例における受信部の構成を一例として示す図である。It is a figure which shows the structure of the receiving part in an Example as an example. 実施例における選択部の構成を一例として示すブロック図である。It is a block diagram which shows the structure of the selection part in an Example as an example. 実施例における電文の例を示す図である。It is a figure which shows the example of the message | telegram in an Example. 実施例における変換部の構成を一例として示すブロック図である。It is a block diagram which shows the structure of the conversion part in an Example as an example. 実施例における電文の例を示す図である。It is a figure which shows the example of the message | telegram in an Example. 関連技術の電文処理装置の具体例を示す図である。It is a figure which shows the specific example of the message processing apparatus of related technology. 関連技術の電文処理装置の設計方法の具体例を示す図である。It is a figure which shows the specific example of the design method of the message processing apparatus of related technology. 関連技術の電文処理装置の具体例を示す図である。It is a figure which shows the specific example of the message processing apparatus of related technology. 実施例において設計対象とする電文処理装置の構成を示すブロック図である。It is a block diagram which shows the structure of the message | telegram processing apparatus made into design object in an Example.
 はじめに、一実施形態の概要について説明する。なお、この概要に付記する図面参照符号は、専ら理解を助けるための例示であり、本発明を図示の態様に限定することを意図するものではない。 First, an outline of one embodiment will be described. Note that the reference numerals of the drawings attached to this summary are merely examples for facilitating understanding, and are not intended to limit the present invention to the illustrated embodiment.
 図1は、一実施形態に係る設計支援装置の構成を一例として示すブロック図である。図1を参照すると、設計支援装置は、第1のフィルタ条件抽出部(62)および選択部生成部(63)を備える。 FIG. 1 is a block diagram illustrating an example of the configuration of a design support apparatus according to an embodiment. Referring to FIG. 1, the design support apparatus includes a first filter condition extraction unit (62) and a selection unit generation unit (63).
 設計支援装置は、電文を選択する選択回路(例えば、図13、図14の選択部114)と、選択された電文を処理するアプリケーションプログラムを実行する計算処理部(図13、図14の112)とを備えた電文処理装置(図13の106、図14の107)を設計する設計支援装置である。フィルタ条件抽出部(62)は、アプリケーションプログラムから、電文の処理の結果が出力される条件を、アプリケーションプログラムから第1のフィルタ条件として抽出する。また、選択部生成部(63)は、選択回路(図13、図14の114)が第1のフィルタ条件に基づいて、電文の選択を行うように、選択回路(114)の構成情報を生成する。 The design support apparatus includes a selection circuit that selects a message (for example, the selection unit 114 in FIGS. 13 and 14), and a calculation processing unit (112 in FIGS. 13 and 14) that executes an application program that processes the selected message. Is a design support apparatus for designing a message processing apparatus (106 in FIG. 13 and 107 in FIG. 14). The filter condition extraction unit (62) extracts, from the application program, a condition for outputting a result of the message processing as a first filter condition from the application program. The selection unit generation unit (63) generates configuration information of the selection circuit (114) so that the selection circuit (114 in FIGS. 13 and 14) selects a message based on the first filter condition. To do.
 かかる設計支援装置によると、電文を処理するアプリケーションプログラムの処理内容に応じて、電文を事前にフィルタリングする電文処理装置(106、107)の設計を自動化することが可能となる。なぜなら、選択部生成部(63)は、アプリケーションプログラムから電文の処理の結果が出力されるかどうかに応じて電文をフィルタリングする選択回路(図13、図14の選択部114)の構成情報を自動で生成するからである。 According to such a design support device, it is possible to automate the design of the message processing devices (106, 107) for filtering messages in advance according to the processing contents of the application program for processing messages. This is because the selection unit generation unit (63) automatically sets configuration information of a selection circuit (selection unit 114 in FIGS. 13 and 14) that filters a message according to whether or not a message processing result is output from the application program. It is because it produces | generates by.
 図2は、前記一実施形態に係る設計支援装置の他の構成を一例として示すブロック図である。図2を参照すると、設計支援装置は、第2のフィルタ条件抽出部(64)および変換部生成部(65)を備える。 FIG. 2 is a block diagram showing another configuration example of the design support apparatus according to the embodiment. Referring to FIG. 2, the design support apparatus includes a second filter condition extraction unit (64) and a conversion unit generation unit (65).
 図2に示した設計支援装置は、選択回路(例えば、図14の選択部114)によって選択された電文を変換する変換回路(例えば、図14の変換部115)と、アプリケーションプログラムを実行して、変換回路(115)により変換された電文を処理する計算処理部(例えば、図14の112)とを備えた電文処理装置(例えば、図14の107)を設計する設計支援装置である。第2のフィルタ条件抽出部(64)は、計算処理部(112)による電文の処理結果に影響を及ぼす、アプリケーションプログラムの入力を、アプリケーションから第2のフィルタ条件として抽出する。また、変換部生成部(65)は、変換部(115)が第2のフィルタ条件に基づいて電文の変換を行うように、変換部(115)の構成情報を生成する。 The design support apparatus shown in FIG. 2 executes a conversion circuit (for example, the conversion unit 115 in FIG. 14) that converts a message selected by a selection circuit (for example, the selection unit 114 in FIG. 14), and an application program. This is a design support apparatus for designing a message processing device (for example, 107 in FIG. 14) including a calculation processing unit (for example, 112 in FIG. 14) for processing the message converted by the conversion circuit (115). The second filter condition extraction unit (64) extracts an input of an application program that affects the processing result of the message by the calculation processing unit (112) as a second filter condition. Moreover, a conversion part production | generation part (65) produces | generates the structure information of a conversion part (115) so that the conversion part (115) may convert a message | telegram based on a 2nd filter condition.
 かかる設計支援装置によると、電文を処理するアプリケーションプログラムの処理内容に応じて、電文に含まれる情報の一部を事前にフィルタリングする電文処理装置の設計を支援することが可能となる。なぜなら、変換部生成部(65)は、電文の処理結果に影響を及ぼすかどうかに応じて、アプリケーションプログラムから抽出した第2のフィルタ条件に基づいて電文の変換を行う変換部(115)の構成を自動で生成するからである。 According to such a design support apparatus, it is possible to support the design of a message processing apparatus that filters a part of information included in a message in advance according to the processing content of an application program that processes the message. This is because the conversion unit generation unit (65) is configured to convert the message based on the second filter condition extracted from the application program depending on whether the processing result of the message is affected. Is generated automatically.
 上記一実施形態に係る設計支援装置によると、大量の電文情報を受信しても、重要な情報だけを計算処理部に渡すことで高速な電文処理を実現する電文処理装置を、自動的に設計することが可能となる。また、上記一実施形態に係る設計支援装置によると、計算処理部で実行するアプリケーションプログラム毎に重要な情報が異なる場合にも、対応することができる。 According to the design support apparatus according to the above-described embodiment, even when a large amount of message information is received, a message processing device that realizes high-speed message processing by passing only important information to the calculation processing unit is automatically designed. It becomes possible to do. In addition, the design support apparatus according to the embodiment can cope with a case where important information differs for each application program executed by the calculation processing unit.
 なお、本発明において、下記の形態が可能である。
[形態1]
 上記第1の視点に係る設計支援装置のとおりである。
[形態2]
 前記第1のフィルタ条件抽出部は、前記電文に含まれるフィールドを含む論理式として、前記第1のフィルタ条件を表現してもよい。
[形態3]
 前記電文処理装置は、前記選択された電文を変換する変換回路を備え、
 前記計算処理部は、前記アプリケーションプログラムを実行して、前記変換回路により変換された電文を処理し、
 前記設計支援装置は、前記計算処理部による前記処理の結果に影響を及ぼす前記アプリケーションプログラムの入力を、前記アプリケーションから第2のフィルタ条件として抽出する第2のフィルタ条件抽出部と、
 前記変換回路が前記第2のフィルタ条件に基づいて前記変換を行うように、前記変換回路の構成情報を生成する変換部生成部と、を備えてもよい。
[形態4]
 前記第2のフィルタ条件抽出部は、前記電文を分解して得られたフィールドを要素とする集合を用いて、前記2のフィルタ条件を表現してもよい。
[形態5]
 前記選択部生成部は、前記選択回路が前記第1のフィルタ条件を満たさない電文を破棄するように、前記選択回路の構成情報を生成してもよい。
[形態6]
 前記変換部生成部は、前記変換回路が前記電文のフィールドのうちの、前記集合に含まれないフィールドを削除するように、前記変換回路の構成情報を生成してもよい。
[形態7]
 前記電文は、属性と値の組から成る少なくとも1つのフィールドを有してもよい。
[形態8]
 上記第2の視点に係る設計支援方法のとおりである。
[形態9]
 前記設計支援方法において、前記コンピュータが、前記電文に含まれるフィールドを含む論理式として、前記第1のフィルタ条件を表現してもよい。
[形態10]
 前記設計支援方法において、前記電文処理装置は、前記選択された電文を変換する変換回路を備え、
 前記計算処理部は、前記アプリケーションプログラムを実行して、前記変換回路により変換された電文を処理し、
 前記コンピュータが、前記計算処理部による前記処理の結果に影響を及ぼす前記アプリケーションプログラムの入力を、前記アプリケーションから第2のフィルタ条件として抽出する工程と、
 前記変換回路が前記第2のフィルタ条件に基づいて前記変換を行うように、前記変換回路の構成情報を生成する工程と、を含んでもよい。
[形態11]
 前記設計支援方法において、前記コンピュータが、前記電文を分解して得られたフィールドを要素とする集合を用いて、前記2のフィルタ条件を表現してもよい。
[形態12]
 前記設計支援方法において、前記コンピュータが、前記選択回路が前記第1のフィルタ条件を満たさない電文を破棄するように、前記選択回路の構成情報を生成してもよい。
[形態13]
 前記設計支援方法において、前記コンピュータが、前記変換回路が前記電文のフィールドのうちの、前記集合に含まれないフィールドを削除するように、前記変換回路の構成情報を生成してもよい。
[形態14]
 上記第3の視点に係るプログラムのとおりである。
[形態15]
 前記プログラムは、前記電文に含まれるフィールドを含む論理式として、前記第1のフィルタ条件を表現する処理を、前記コンピュータに実行させてもよい。
[形態16]
 前記電文処理装置は、前記選択された電文を変換する変換回路を備え、
 前記計算処理部は、前記アプリケーションプログラムを実行して、前記変換回路により変換された電文を処理し、
 前記プログラムは、前記計算処理部による前記処理の結果に影響を及ぼす前記アプリケーションプログラムの入力を、前記アプリケーションから第2のフィルタ条件として抽出する処理と、
 前記変換回路が前記第2のフィルタ条件に基づいて前記変換を行うように、前記変換回路の構成情報を生成する処理と、を前記コンピュータに実行させてもよい。
[形態17]
 前記プログラムは、前記電文を分解して得られたフィールドを要素とする集合を用いて、前記2のフィルタ条件を表現する処理を、前記コンピュータに実行させてもよい。
[形態18]
 前記プログラムは、前記選択回路が前記第1のフィルタ条件を満たさない電文を破棄するように、前記選択回路の構成情報を生成する処理を、前記コンピュータに実行させてもよい。
[形態19]
 前記プログラムは、前記変換回路が前記電文のフィールドのうちの、前記集合に含まれないフィールドを削除するように、前記変換回路の構成情報を生成する処理を、前記コンピュータに実行させてもよい。
In the present invention, the following modes are possible.
[Form 1]
This is the same as the design support apparatus according to the first aspect.
[Form 2]
The first filter condition extraction unit may express the first filter condition as a logical expression including a field included in the message.
[Form 3]
The message processing device includes a conversion circuit that converts the selected message.
The calculation processing unit executes the application program, processes the message converted by the conversion circuit,
The design support apparatus includes: a second filter condition extraction unit that extracts, as a second filter condition, an input of the application program that affects the result of the processing by the calculation processing unit;
A conversion unit generation unit that generates configuration information of the conversion circuit so that the conversion circuit performs the conversion based on the second filter condition.
[Form 4]
The second filter condition extraction unit may express the second filter condition using a set whose elements are fields obtained by decomposing the electronic message.
[Form 5]
The selection unit generation unit may generate configuration information of the selection circuit such that the selection circuit discards a message that does not satisfy the first filter condition.
[Form 6]
The conversion unit generation unit may generate configuration information of the conversion circuit such that the conversion circuit deletes a field that is not included in the set from among the fields of the message.
[Form 7]
The electronic message may have at least one field composed of attribute and value pairs.
[Form 8]
This is as in the design support method according to the second viewpoint.
[Form 9]
In the design support method, the computer may express the first filter condition as a logical expression including a field included in the message.
[Mode 10]
In the design support method, the message processing device includes a conversion circuit that converts the selected message.
The calculation processing unit executes the application program, processes the message converted by the conversion circuit,
The computer extracting the input of the application program that affects the result of the processing by the calculation processing unit as a second filter condition;
Generating the configuration information of the conversion circuit so that the conversion circuit performs the conversion based on the second filter condition.
[Form 11]
In the design support method, the computer may express the second filter condition by using a set whose elements are fields obtained by decomposing the electronic message.
[Form 12]
In the design support method, the computer may generate configuration information of the selection circuit such that the selection circuit discards a message that does not satisfy the first filter condition.
[Form 13]
In the design support method, the computer may generate configuration information of the conversion circuit such that the conversion circuit deletes a field that is not included in the set from among the fields of the message.
[Form 14]
The program is related to the third viewpoint.
[Form 15]
The program may cause the computer to execute a process of expressing the first filter condition as a logical expression including a field included in the message.
[Form 16]
The message processing device includes a conversion circuit that converts the selected message.
The calculation processing unit executes the application program, processes the message converted by the conversion circuit,
The program extracts, as a second filter condition, an input of the application program that affects the result of the processing by the calculation processing unit;
Processing for generating configuration information of the conversion circuit may be executed by the computer so that the conversion circuit performs the conversion based on the second filter condition.
[Form 17]
The program may cause the computer to execute a process of expressing the second filter condition using a set having fields obtained by decomposing the electronic message as elements.
[Form 18]
The program may cause the computer to execute a process of generating configuration information of the selection circuit so that the selection circuit discards a message that does not satisfy the first filter condition.
[Form 19]
The program may cause the computer to execute a process of generating configuration information of the conversion circuit so that the conversion circuit deletes a field that is not included in the set from among the fields of the message.
 (実施形態1)
 第1の実施形態に係る設計支援装置について、図面を参照して詳細に説明する。図2は、本実施形態の設計支援装置の構成を一例として示すブロック図である。図2を参照すると、設計支援装置は、記憶装置(例えば、主記憶装置、補助記憶装置)50と、プログラム制御により動作する処理装置(例えば、コンピュータ;中央処理装置;プロセッサ;データ処理装置)60とを備えている。
(Embodiment 1)
The design support apparatus according to the first embodiment will be described in detail with reference to the drawings. FIG. 2 is a block diagram illustrating an example of the configuration of the design support apparatus according to the present embodiment. Referring to FIG. 2, the design support apparatus includes a storage device (for example, a main storage device and an auxiliary storage device) 50 and a processing device (for example, a computer; a central processing unit; a processor; a data processing device) 60 that operates by program control. And has.
 記憶装置50は、プログラム記憶部51、選択部記憶部52、および、変換部記憶部53を備えている。 The storage device 50 includes a program storage unit 51, a selection unit storage unit 52, and a conversion unit storage unit 53.
 プログラム記憶部51は、電文処理装置の計算処理部で実行されるアプリケーションプログラムを予め記憶している。選択部記憶部52は、処理装置60の選択部生成部63が生成する選択部の回路情報を記憶する。変換部記憶部53は、変換部生成部65が生成する変換部の回路情報を記憶する。 The program storage unit 51 stores in advance an application program to be executed by the calculation processing unit of the message processing apparatus. The selection unit storage unit 52 stores circuit information of the selection unit generated by the selection unit generation unit 63 of the processing device 60. The conversion unit storage unit 53 stores circuit information of the conversion unit generated by the conversion unit generation unit 65.
 処理装置60は、プログラム入力部61、第1のフィルタ条件抽出部62、選択部生成部63、第2のフィルタ条件抽出部64、および、変換部生成部65を備える。 The processing device 60 includes a program input unit 61, a first filter condition extraction unit 62, a selection unit generation unit 63, a second filter condition extraction unit 64, and a conversion unit generation unit 65.
 プログラム入力部61は、記憶装置50のプログラム記憶部51に予め記憶されているアプリケーションプログラムを読み出す。 The program input unit 61 reads an application program stored in advance in the program storage unit 51 of the storage device 50.
 第1のフィルタ条件抽出部62は、記憶装置50から読み出されたアプリケーションプログラムから第1のフィルタ条件を抽出する。第1のフィルタ条件の詳細については、後述する。 The first filter condition extraction unit 62 extracts the first filter condition from the application program read from the storage device 50. Details of the first filter condition will be described later.
 選択部生成部63は、第1のフィルタ条件をもとに選択部の回路情報を生成する。選択部生成部63は、生成した回路情報を記憶装置50の選択部記憶部52に記録する。 The selection unit generation unit 63 generates circuit information of the selection unit based on the first filter condition. The selection unit generation unit 63 records the generated circuit information in the selection unit storage unit 52 of the storage device 50.
 第2のフィルタ条件抽出部64は、記憶装置50から読み出されたアプリケーションプログラムから第2のフィルタ条件を抽出する。第2のフィルタ条件の詳細については、後述する。 The second filter condition extraction unit 64 extracts the second filter condition from the application program read from the storage device 50. Details of the second filter condition will be described later.
 変換部生成部65は、第2のフィルタ条件をもとに変換部の回路情報を生成する。変換部生成部65は、生成した回路情報を記憶装置50の変換部記憶部53に記憶する。 The conversion unit generation unit 65 generates circuit information of the conversion unit based on the second filter condition. The conversion unit generation unit 65 stores the generated circuit information in the conversion unit storage unit 53 of the storage device 50.
 図3は、本実施形態の設計支援装置の動作を一例として示すフロー図である。図2のブロック図および図3のフロー図を参照して、本実施形態の設計支援装置の動作について詳細に説明する。 FIG. 3 is a flowchart showing an example of the operation of the design support apparatus of the present embodiment. With reference to the block diagram of FIG. 2 and the flowchart of FIG. 3, the operation of the design support apparatus of the present embodiment will be described in detail.
 記憶装置50のプログラム記憶部51には、設計対象の、電文処理装置の計算処理部で実行されるアプリケーションプログラムが、予め記憶されている。アプリケーションプログラムは、ソースコードとして記憶されていても、プロセッサなどで実行可能な形式に変換されて記憶されていてもよい。本実施形態では、一例として、ソースコードの形で記憶されているものとする。 The program storage unit 51 of the storage device 50 stores in advance an application program to be executed by the calculation processing unit of the message processing device to be designed. The application program may be stored as source code or may be stored after being converted into a format that can be executed by a processor or the like. In the present embodiment, as an example, it is assumed that it is stored in the form of source code.
 まず、プログラム入力部61は、記憶装置50のプログラム記憶部51から、アプリケーションプログラムを読み出す(ステップA1)。 First, the program input unit 61 reads an application program from the program storage unit 51 of the storage device 50 (step A1).
 次に、第1のフィルタ条件抽出部62は、アプリケーションプログラム中の、各出力に対して出力が生成される条件を抽出し、これを「第1のフィルタ条件」とする(ステップA2)。 Next, the first filter condition extraction unit 62 extracts a condition for generating an output for each output in the application program, and sets this as a “first filter condition” (step A2).
 次に、選択部生成部63は、第1のフィルタ条件をもとに選択部の回路情報を生成する。選択部とは、一例として、受信した電文が第1のフィルタ条件を満たさないときに、電文を破棄する回路である。選択部生成部63は、前記選択部の回路情報を記憶装置50の選択部記憶部52に書き出す(ステップA3)。 Next, the selection unit generation unit 63 generates circuit information of the selection unit based on the first filter condition. As an example, the selection unit is a circuit that discards a message when the received message does not satisfy the first filter condition. The selection part production | generation part 63 writes the circuit information of the said selection part in the selection part memory | storage part 52 of the memory | storage device 50 (step A3).
 次に、第2のフィルタ条件抽出部64は、アプリケーションプログラム中の、出力に対して影響を与える入力を抽出し、これを「第2のフィルタ条件」とする(ステップA4)。 Next, the second filter condition extraction unit 64 extracts an input that affects the output in the application program and sets it as a “second filter condition” (step A4).
 次に、変換部生成部65は、第2のフィルタ条件をもとに変換部の回路情報を生成する。変換部とは、一例として、受信した電文のうちの、第2のフィルタ条件を満たさないデータを破棄する回路である。変換部生成部65は、前記変換部の回路情報を記憶装置50の変換部記憶部53に書き出す(ステップA5)。 Next, the conversion unit generation unit 65 generates circuit information of the conversion unit based on the second filter condition. As an example, the conversion unit is a circuit that discards data that does not satisfy the second filter condition in the received electronic message. The conversion unit generation unit 65 writes the circuit information of the conversion unit in the conversion unit storage unit 53 of the storage device 50 (step A5).
 次に、具体的な実施例に基づいて、本実施形態に係る設計支援装置(図2)の動作を説明する。 Next, the operation of the design support apparatus (FIG. 2) according to this embodiment will be described based on a specific example.
 本実施例では、図14に示した電文処理装置107を設計の対象とする。図14を参照すると、電文処理装置107は、受信部111、選択部114、変換部115、および、計算処理部112を備えている。 In this embodiment, the message processing apparatus 107 shown in FIG. 14 is designed. Referring to FIG. 14, the message processing apparatus 107 includes a reception unit 111, a selection unit 114, a conversion unit 115, and a calculation processing unit 112.
 受信部111は、ネットワークからの電文を受信する。受信部111は、予め与えられた電文仕様に従って、電文のヘッダ部の各フィールド、および、電文のデータ(ペイロード)部の各フィールドに電文を分解し、分解後の電文を選択部114に渡す。 The receiving unit 111 receives a message from the network. The receiving unit 111 disassembles the message into each field of the header of the message and each field of the data (payload) portion of the message according to the message specification given in advance, and passes the decomposed message to the selection unit 114.
 一般の電文では、データ部の仕様が不確定のため、データ部のフィールドへの分解は困難である。本実施例では、予め定められた仕様に従って構成された電文を対象としているため、データ部に関してもフィールド単位で分解することができる。 In general telegrams, the specification of the data part is uncertain, so it is difficult to disassemble the data part into fields. In the present embodiment, since a message configured in accordance with a predetermined specification is targeted, the data portion can also be decomposed in units of fields.
 選択部114は、受信部111から受け取った電文に対して、予め与えられた仕様に従って電文を検査し、予め決められた条件に合致する電文を発見した場合、電文を破棄する。また、選択部114は、それ以外の電文を変換部115に送信する。 The selection unit 114 inspects the message received from the receiving unit 111 according to a predetermined specification, and discards the message when a message matching a predetermined condition is found. In addition, the selection unit 114 transmits other messages to the conversion unit 115.
 変換部115は、選択部114から受け取った電文に対して、予め与えられた仕様に従って電文のフィールドを検査し、予め決められた条件に合致する電文のフィールドを破棄するなどして電文を変換する。さらに、変換部115は、変換後の電文を、PCI Expressなどのサーバ内の通信路を介して、サーバ内のCPUまたはメモリへと送信する。 The conversion unit 115 inspects a message field according to a predetermined specification for the message received from the selection unit 114, and converts the message by discarding a message field that matches a predetermined condition. . Furthermore, the conversion unit 115 transmits the converted message to the CPU or memory in the server via a communication path in the server such as PCI Express.
 計算処理部112は、変換部115から受け取った電文を、予め指定されたアプリケーションプログラムによって処理する。 The calculation processing unit 112 processes the message received from the conversion unit 115 by an application program designated in advance.
 なお、計算処理部112で実行するアプリケーションプログラムによる処理は、図11の電文処理装置105の計算処理部112で実行されるアプリケーションプログラムによる処理と同様である。 The processing by the application program executed by the calculation processing unit 112 is the same as the processing by the application program executed by the calculation processing unit 112 of the message processing apparatus 105 in FIG.
 図14に示した電文処理装置107によると、選択部114および変換部115で処理に不必要な電文や処理に不必要なデータが破棄され、処理に必要なデータのみが計算処理部112に到着する。したがって、電文処理装置107によると、計算処理部112における処理内容を変更しなくても、電文処理装置105と比較して、より多くの電文を処理することが可能となる。 According to the message processing device 107 shown in FIG. 14, messages unnecessary for processing and data unnecessary for processing are discarded by the selection unit 114 and the conversion unit 115, and only data necessary for processing arrives at the calculation processing unit 112. To do. Therefore, according to the message processing device 107, it is possible to process more messages compared to the message processing device 105 without changing the processing contents in the calculation processing unit 112.
 本実施例では、電文処理装置107に含まれる選択部114および変換部115を電子回路で実現する場合の設計支援を、設計支援装置(図2)によって行う方法について説明する。 In the present embodiment, a method will be described in which design support when the selection unit 114 and the conversion unit 115 included in the message processing device 107 are realized by an electronic circuit is performed by the design support device (FIG. 2).
 記憶装置50のプログラム記憶部51には、設計対象の電文処理装置107の計算処理部112で実行されるアプリケーションプログラムが予め記憶されている。アプリケーションプログラムは、ソースコードとして記憶されていても、プロセッサなどで実行可能な形式に変換されて記憶されていてもよい。本実施例では、アプリケーションプログラムは、ソースコードとしてプログラム記憶部51に記憶されているものとする。 In the program storage unit 51 of the storage device 50, an application program to be executed by the calculation processing unit 112 of the message processing device 107 to be designed is stored in advance. The application program may be stored as source code or may be stored after being converted into a format that can be executed by a processor or the like. In this embodiment, it is assumed that the application program is stored in the program storage unit 51 as source code.
 図4は、本実施例におけるアプリケーションプログラムを例示する。図4を参照すると、アプリケーションプログラムのソースコードは、ANSI-C言語で記述されている。なお、図4において、ソースコードのうちの説明上不要な箇所は省略されている。また、ソースコードは、ANSI-C以外のプログラミング言語で記述されていてもよい。 FIG. 4 illustrates an application program in this embodiment. Referring to FIG. 4, the source code of the application program is described in ANSI-C language. In FIG. 4, portions of the source code that are not necessary for explanation are omitted. The source code may be described in a programming language other than ANSI-C.
 図4に示したアプリケーションプログラムが処理する電文は、図4のソースコードの1行目に示されるように、 city, temp, rain の3つのフィールドを持つ構造体で表現される。 4. The message processed by the application program shown in FIG. 4 is expressed by a structure having three fields of “city”, “temp”, and “rain” as shown in the first line of the source code of FIG.
 本実施例のアプリケーションプログラムが処理する電文は、属性と値の組が複数存在するという、予め定められた仕様に従って構成されている。本実施例では、このような電文を「構造化された電文」という。構造化された電文として、HTML(Hypertext Markup Language)、XML(Extensible Markup Language)などの言語仕様に基づいた電文、構造体、クラスなどのデータ構造に基づいた本実施例のような電文、キーとバリューで表現される電文、その他の様々な電文が対象となる。このように、構造化された電文のみに着目することで、電文の中から重要な情報(例えば、アプリケーションプログラムの処理に関係する情報)を抽出することが可能となる。 The message processed by the application program of this embodiment is configured in accordance with a predetermined specification that there are a plurality of attribute / value pairs. In this embodiment, such a message is referred to as a “structured message”. As structured messages, messages such as HTML (Hypertext Markup Language), XML (Extensible Markup Language), etc., based on the data structure such as structure, class, etc. This includes electronic messages expressed by value and other various electronic messages. In this way, by focusing only on the structured electronic message, it is possible to extract important information (for example, information related to processing of the application program) from the electronic message.
 構造体に含まれるフィールドcity, temp, rain は、それぞれ、都市、温度、降水量を表す。図4のアプリケーションプログラムは、都市cityがTokyoである電文に記載された降水量rainを積算して出力する。 The fields city, temp, and rain included in the structure represent the city, temperature, and precipitation, respectively. The application program of FIG. 4 integrates and outputs the precipitation rain described in the telegram in which the city city is Tokyo.
 図4のソースコードの5行目では、電文を受信し、構造体変数evに格納する。ここで、関数get_event()は、受信装置から1つの電文を受け取る関数である。6行目では、電文中のフィールドcityの値がTokyoであるかどうかを検査する。cityの値がTokyoでなければ、該電文に対して何も行わない。7行目では、積算降水量totalに対して、電文中のフィールドrainの値を加算する。8行目では、計算後の積算降水量totalを出力する。関数send_result()は、データの出力を行う関数である。なお、ソースコードの各行において、ダブルスラッシュ“//”以下はコメント文である。 In the fifth line of the source code in FIG. 4, a message is received and stored in the structure variable ev. Here, the function get_event () is a function that receives one message from the receiving device. Line 6 checks whether the value of field city in the message is Tokyo. If the value of city is not Tokyo, nothing is done for the message. In the seventh line, the value of the field rain in the message is added to the total precipitation total. The 8th line outputs the total precipitation after calculation. The function send_result () is a function for outputting data. In each line of the source code, a comment after the double slash “//” is a comment sentence.
 図5は、図4に示したアプリケーションプログラムの処理対象となる電文を例示する。図5を参照すると、1行目の電文および3行目の電文のフィールドcityの値はTokyoである。したがって、1行目の電文および3行目の電文は、図4のアプリケーションプログラムで処理される。一方、2行目の電文のフィールドcityの値はOsakaであるため、図4のアプリケーションプログラムでは処理されない。したがって、2行目の電文は、図4のアプリケーションプログラムにとって不要な電文である。 FIG. 5 illustrates a message to be processed by the application program shown in FIG. Referring to FIG. 5, the value of the field city of the message on the first line and the message on the third line is Tokyo. Therefore, the electronic message on the first line and the electronic message on the third line are processed by the application program shown in FIG. On the other hand, since the value of the field city of the message on the second line is Osaka, it is not processed by the application program of FIG. Therefore, the message on the second line is an unnecessary message for the application program of FIG.
 また、図5に示した各電文のフィールドtempの値は、図4のアプリケーションプログラムでは処理されない。したがって、フィールドtempに含まれるデータは、図4のアプリケーションプログラムにとって不要なデータである。 Also, the value of the field temp of each message shown in FIG. 5 is not processed by the application program of FIG. Therefore, the data included in the field temp is unnecessary for the application program of FIG.
 図6は、図4に示したアプリケーションプログラムに対応する受信部111の入出力を例示する。図6を参照すると、受信部111は電文を受け取り、各フィールドに分解して選択部114に渡す。図4に示したアプリケーションプログラムが対象とする電文は、3つのフィールドcity, temp, rainを有する。これらのフィールドに対応して、図6の受信部111は、city, temp, rainの3つの出力を有する。 FIG. 6 illustrates input / output of the reception unit 111 corresponding to the application program shown in FIG. Referring to FIG. 6, the reception unit 111 receives a message, disassembles it into fields, and passes it to the selection unit 114. The message targeted by the application program shown in FIG. 4 has three fields, city, temp, and rain. Corresponding to these fields, the receiving unit 111 in FIG. 6 has three outputs of city, temp, and rain.
 本実施例では、図6の受信部111が予め与えられているものとする。受信部111の設計方法として、一例として、非特許文献1に記載された方法を用いることができる。ただし、受信部111の設計方法は、これに限定されない。 In this embodiment, it is assumed that the receiving unit 111 in FIG. 6 is given in advance. As an example of the design method of the receiving unit 111, the method described in Non-Patent Document 1 can be used. However, the design method of the receiving unit 111 is not limited to this.
 次に、本実施形態に係る設計支援装置による、選択部114および変換部115の自動設計の手順について説明する。 Next, an automatic design procedure of the selection unit 114 and the conversion unit 115 by the design support apparatus according to the present embodiment will be described.
 まず、プログラム入力部61は、記憶装置50のプログラム記憶部51から、アプリケーションプログラムを読み出す(図3のステップA1)。 First, the program input unit 61 reads an application program from the program storage unit 51 of the storage device 50 (step A1 in FIG. 3).
 次に、第1のフィルタ条件抽出部62は、アプリケーションプログラム中の、各出力に対して出力が生成される条件を抽出し、これを「第1のフィルタ条件」とする(図3のステップA2)。 Next, the first filter condition extraction unit 62 extracts a condition for generating an output for each output in the application program, and sets this as a “first filter condition” (step A2 in FIG. 3). ).
 フィルタ条件抽出部62は、条件を抽出するために、一例として、制御データフローグラフ(Control Data Flow Graph:CDFG)解析などの技術を用いることができる。ただし、フィルタ条件抽出部62による条件抽出の方法は、これに限定されない。 The filter condition extraction unit 62 can use a technique such as a control data flow graph (Control Data Flow Graph: CDFG) analysis as an example to extract the conditions. However, the condition extraction method by the filter condition extraction unit 62 is not limited to this.
 図4に示したアプリケーションプログラムでは、出力動作send_result()を実行する条件は、6行目のif文の条件「ev.city == “Tokyo”」である。したがって、フィルタ条件抽出部62は、条件「ev.city == “Tokyo”」を第1のフィルタ条件として抽出する。 In the application program shown in FIG. 4, the condition for executing the output operation send_result () is the condition “ev.cityev ==“ Tokyo ”” of the if statement on the sixth line. Therefore, the filter condition extraction unit 62 extracts the condition “ev.city ==“ Tokyo ”” as the first filter condition.
 このように、第1のフィルタ条件は、電文を構成する各フィールドの論理式で表現される。 Thus, the first filter condition is expressed by a logical expression of each field constituting the message.
 次に、選択部生成部63は、第1のフィルタ条件をもとに選択部114の回路情報を生成する(図3のステップA3)。選択部114は、受信した電文が第1のフィルタ条件を満たさないとき、電文を破棄する回路である。選択部生成部63は、選択部114の回路情報を記憶装置50の選択部記憶部52に書き出す。 Next, the selection unit generation unit 63 generates circuit information of the selection unit 114 based on the first filter condition (step A3 in FIG. 3). The selection unit 114 is a circuit that discards a message when the received message does not satisfy the first filter condition. The selection unit generation unit 63 writes the circuit information of the selection unit 114 in the selection unit storage unit 52 of the storage device 50.
 第1のフィルタ条件は、電文を構成する各フィールドの論理式で表現されている。したがって、選択部生成部63は、この論理式を実現する論理回路の回路情報を、選択部114の回路情報として生成する。 The first filter condition is expressed by a logical expression of each field constituting the message. Therefore, the selection unit generation unit 63 generates circuit information of a logic circuit that realizes this logical expression as circuit information of the selection unit 114.
 図7は、生成された選択部114の構成を一例として示すブロック図である。図7を参照すると、選択部114は、外部入力端子city, temp, rainと、外部出力端子city, temp, rainと、条件判定回路116と、ゲート117を備える。 FIG. 7 is a block diagram illustrating the configuration of the generated selection unit 114 as an example. Referring to FIG. 7, the selection unit 114 includes external input terminals city, temp, rain, external output terminals city, temp, rain, a condition determination circuit 116, and a gate 117.
 条件判定回路116は、外部入力端子cityから値を読み込み、その値がTokyoであるかどうかを検査する。条件判定回路116は、検査の結果、cityの値がTokyoである場合には真(True)を、それ以外の場合には偽(False)をゲート117に送る。 The condition judgment circuit 116 reads a value from the external input terminal city and checks whether the value is Tokyo. The condition determination circuit 116 sends true to the gate 117 if the value of city is Tokyo as a result of the inspection, and false otherwise.
 ゲート117は、条件判定回路116の値が真である場合、外部入力端子city, temp, rainの値を外部出力端子に送り、条件判定回路116の値が偽である場合、外部出力端子に対して何も出力しない。 The gate 117 sends the values of the external input terminals city, temp, and rain to the external output terminal when the value of the condition determination circuit 116 is true, and to the external output terminal when the value of the condition determination circuit 116 is false. Output nothing.
 図7に示した選択部114によると、cityの値がTokyoである電文のみが変換部115に送られ、それ以外の電文は破棄される。すなわち、選択部114によると、計算処理に不要な電文は破棄され、必要な電文のみが計算処理部112に送られる。 7, only a message whose city value is Tokyo is sent to the conversion unit 115, and other messages are discarded. That is, according to the selection unit 114, a message unnecessary for the calculation process is discarded, and only a necessary message is sent to the calculation processing unit 112.
 図8は、選択部114から送信される電文を例示する。図8の電文と図5の電文とを比較すると、図8の電文においては、図5の電文のうちのフィールドcityの値がOsakaである2行目の電文は、図7に示した選択部114によって破棄されている。 FIG. 8 illustrates a message transmitted from the selection unit 114. Comparing the message in FIG. 8 with the message in FIG. 5, in the message in FIG. 8, the message in the second line of the message in FIG. 5 whose field city value is Osaka is the selection unit shown in FIG. 7. 114 has been discarded.
 選択部生成部63は、図7に示した選択部114の回路構成情報を、記憶装置50の選択部記憶部52に記録する。 The selection unit generation unit 63 records the circuit configuration information of the selection unit 114 illustrated in FIG. 7 in the selection unit storage unit 52 of the storage device 50.
 次に、第2のフィルタ条件抽出部64は、アプリケーションプログラム中の、出力に対して影響を与える入力を抽出し、これを「第2のフィルタ条件」とする(図3のステップA4)。 Next, the second filter condition extraction unit 64 extracts the input that affects the output in the application program and sets it as the “second filter condition” (step A4 in FIG. 3).
 フィルタ条件抽出部64は、入力を抽出するために、例えば、影響円錐抽出法(Cone of Influence Reduction)などの技術を用いることができる。ただし、フィルタ条件抽出部64が入力を抽出する方法は、これに限定されない。 The filter condition extraction unit 64 can use a technique such as an influence cone extraction method (Cone 法 Influence Reduction) to extract the input. However, the method by which the filter condition extraction unit 64 extracts the input is not limited to this.
 図4に示したアプリケーションプログラムでは、電文に含まれるフィールドcity, temp, rainのうち、cityおよびrainのみが出力に影響を与え、tempは出力に影響を与えない。したがって、フィルタ条件抽出部64は、cityおよびrainを第2のフィルタ条件として抽出する。 In the application program shown in FIG. 4, only the city and rain of the fields city, temp, and rain included in the message affect the output, and temp does not affect the output. Therefore, the filter condition extraction unit 64 extracts city and rain as the second filter condition.
 第2のフィルタ条件は、電文を構成する各フィールドの部分集合を指定することで表現される。 The second filter condition is expressed by specifying a subset of each field constituting the message.
 次に、変換部生成部65は、第2のフィルタ条件をもとに、変換部115の回路情報を生成する(図3のステップA5)。変換部115は、受信した電文のうちの第2のフィルタ条件を満たさないデータを破棄する回路である。変換部生成部65は、変換部115の回路情報を記憶装置50の変換部記憶部53に書き出す。 Next, the conversion unit generation unit 65 generates circuit information of the conversion unit 115 based on the second filter condition (step A5 in FIG. 3). The conversion unit 115 is a circuit that discards data that does not satisfy the second filter condition in the received electronic message. The conversion unit generation unit 65 writes the circuit information of the conversion unit 115 to the conversion unit storage unit 53 of the storage device 50.
 第2のフィルタ条件は、電文を構成する各フィールドの部分集合を指定することで表現されている。したがって、変換部生成部65は、電文中のフィールドから指定されたフィールドを選択する論理回路の回路情報を、変換部115の回路情報として生成する。 The second filter condition is expressed by specifying a subset of each field constituting the message. Therefore, the conversion unit generation unit 65 generates circuit information of a logic circuit that selects a specified field from the fields in the message as circuit information of the conversion unit 115.
 図9は、生成された変換部115の構成を一例として示すブロック図である。図9を参照すると、変換部115は、外部入力端子city, temp, rainと、外部出力端子city, rainと、フィールド選択回路118を備える。 FIG. 9 is a block diagram illustrating the configuration of the generated conversion unit 115 as an example. Referring to FIG. 9, the conversion unit 115 includes external input terminals city, temp, rain, external output terminals city, rain, and a field selection circuit 118.
 フィールド選択回路118は、外部入力端子city, temp, rainからそれぞれ値を読み出し、cityおよびrainの値のみを、それぞれ外部出力端子city, rainに送出する。一方、フィールド選択回路118は、外部入力端子tempから読み出した値を外部出力端子に送出することなく破棄する。 The field selection circuit 118 reads values from the external input terminals city, temp, and rain, and sends only the values of city and rain to the external output terminals city and rain, respectively. On the other hand, the field selection circuit 118 discards the value read from the external input terminal temp without sending it to the external output terminal.
 図9に示した変換部115によると、電文中のフィールドcityおよびrainの値のみが計算処理部112に送られ、それ以外のフィールドの値は破棄される。すなわち、計算処理に不必要なフィールドのデータが破棄され、電文に含まれるデータのうちの必要なデータのみが計算処理部112に送られる。 According to the conversion unit 115 shown in FIG. 9, only the values of the fields city and rain in the message are sent to the calculation processing unit 112, and the values of the other fields are discarded. That is, field data unnecessary for calculation processing is discarded, and only necessary data among data included in the electronic message is sent to the calculation processing unit 112.
 図10は、変換部115から計算処理部112へ送信される電文を例示する。図10の電文と図8の電文とを比較すると、図10の電文においては、図8の電文におけるフィールドtempが破棄されている。 FIG. 10 illustrates a message transmitted from the conversion unit 115 to the calculation processing unit 112. Comparing the message of FIG. 10 with the message of FIG. 8, the field temp in the message of FIG. 8 is discarded in the message of FIG.
 変換部生成部65は、図9の変換部115の回路情報を、記憶装置50の変換部記憶部53に記録する。 The conversion unit generation unit 65 records the circuit information of the conversion unit 115 of FIG. 9 in the conversion unit storage unit 53 of the storage device 50.
 記憶装置50の選択部記憶部52に記憶された選択部114の回路情報、および、変換部記憶部53に記憶された選択部115の回路情報は、既存の回路設計技術を用いて、受信部111および計算処理部112とともに電文処理装置107に配置される。 The circuit information of the selection unit 114 stored in the selection unit storage unit 52 of the storage device 50 and the circuit information of the selection unit 115 stored in the conversion unit storage unit 53 are received using an existing circuit design technique. 111 and the calculation processing unit 112 are arranged in the message processing apparatus 107.
 本実施形態に係る設計支援装置は、例えば、センサや端末からのリアルタイム情報(イベント列)の処理を行う電文処理装置を設計するために適用することができる。 The design support apparatus according to the present embodiment can be applied to design a message processing apparatus that processes real-time information (event sequence) from a sensor or a terminal, for example.
 なお、上記の特許文献および非特許文献の各開示を、本書に引用をもって繰り込むものとする。本発明の全開示(請求の範囲を含む)の枠内において、さらにその基本的技術思想に基づいて、実施形態および実施例の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素(各請求項の各要素、各実施形態の各要素、各実施例の各要素、各図面の各要素等を含む)の多様な組み合わせ、ないし、選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。特に、本書に記載した数値範囲については、当該範囲内に含まれる任意の数値ないし小範囲が、別段の記載のない場合でも具体的に記載されているものと解釈されるべきである。 It should be noted that the disclosures of the above patent documents and non-patent documents are incorporated herein by reference. Within the scope of the entire disclosure (including claims) of the present invention, the embodiments and examples can be changed and adjusted based on the basic technical concept. Various disclosure elements (including each element of each claim, each element of each embodiment, each element of each example, each element of each drawing, etc.) are included within the scope of the claims of the present invention. Combination or selection is possible. That is, the present invention of course includes various variations and modifications that could be made by those skilled in the art according to the entire disclosure including the claims and the technical idea. In particular, with respect to the numerical ranges described in this document, any numerical value or small range included in the range should be construed as being specifically described even if there is no specific description.
50  記憶装置
51  プログラム記憶部
52  選択部記憶部
53  変換部記憶部
60  処理装置
61  プログラム入力部
62、64  フィルタ条件抽出部
63  選択部生成部
65  変換部生成部
105、106、107  電文処理装置
111  受信部
112  計算処理部
113  コンパイラ
114  選択部
115  変換部
116  条件判定回路
117  ゲート
118  フィールド選択回路
50 storage device 51 program storage unit 52 selection unit storage unit 53 conversion unit storage unit 60 processing device 61 program input unit 62, 64 filter condition extraction unit 63 selection unit generation unit 65 conversion unit generation unit 105, 106, 107 message processing device 111 Reception unit 112 Calculation processing unit 113 Compiler 114 Selection unit 115 Conversion unit 116 Condition determination circuit 117 Gate 118 Field selection circuit

Claims (19)

  1.  電文を選択する選択回路と、選択された電文を処理するアプリケーションプログラムを実行する計算処理部とを備えた電文処理装置を設計する設計支援装置であって、
     前記アプリケーションプログラムから前記処理の結果が出力される条件を、前記アプリケーションプログラムから第1のフィルタ条件として抽出する第1のフィルタ条件抽出部と、
     前記選択回路が前記第1のフィルタ条件に基づいて前記選択を行うように、前記選択回路の構成情報を生成する選択部生成部と、を備える設計支援装置。
    A design support device for designing a message processing device including a selection circuit for selecting a message and a calculation processing unit for executing an application program for processing the selected message,
    A first filter condition extraction unit that extracts a condition for outputting the result of the processing from the application program as a first filter condition from the application program;
    A design support apparatus comprising: a selection unit generation unit configured to generate configuration information of the selection circuit so that the selection circuit performs the selection based on the first filter condition.
  2.  前記第1のフィルタ条件抽出部は、前記電文に含まれるフィールドを含む論理式として、前記第1のフィルタ条件を表現する、請求項1に記載の設計支援装置。 The design support apparatus according to claim 1, wherein the first filter condition extraction unit expresses the first filter condition as a logical expression including a field included in the message.
  3.  前記電文処理装置は、前記選択された電文を変換する変換回路を備え、
     前記計算処理部は、前記アプリケーションプログラムを実行して、前記変換回路により変換された電文を処理し、
     前記設計支援装置は、前記計算処理部による前記処理の結果に影響を及ぼす前記アプリケーションプログラムの入力を、前記アプリケーションから第2のフィルタ条件として抽出する第2のフィルタ条件抽出部と、
     前記変換回路が前記第2のフィルタ条件に基づいて前記変換を行うように、前記変換回路の構成情報を生成する変換部生成部と、を備える、請求項1または2に記載の設計支援装置。
    The message processing device includes a conversion circuit that converts the selected message.
    The calculation processing unit executes the application program, processes the message converted by the conversion circuit,
    The design support apparatus includes: a second filter condition extraction unit that extracts, as a second filter condition, an input of the application program that affects the result of the processing by the calculation processing unit;
    The design support apparatus according to claim 1, further comprising: a conversion unit generation unit configured to generate configuration information of the conversion circuit so that the conversion circuit performs the conversion based on the second filter condition.
  4.  前記第2のフィルタ条件抽出部は、前記電文を分解して得られたフィールドを要素とする集合を用いて、前記2のフィルタ条件を表現する、請求項3に記載の設計支援装置。 The design support apparatus according to claim 3, wherein the second filter condition extraction unit expresses the second filter condition by using a set having fields obtained by decomposing the message as elements.
  5.  前記選択部生成部は、前記選択回路が前記第1のフィルタ条件を満たさない電文を破棄するように、前記選択回路の構成情報を生成する、請求項1ないし4のいずれか1項に記載の設計支援装置。 The said selection part production | generation part produces | generates the structure information of the said selection circuit so that the said selection circuit discards the message | telegram which does not satisfy | fill the said 1st filter conditions, The Claim 1 any one of Claim 1 thru | or 4 Design support device.
  6.  前記変換部生成部は、前記変換回路が前記電文のフィールドのうちの、前記集合に含まれないフィールドを削除するように、前記変換回路の構成情報を生成する、請求項4または5に記載の設計支援装置。 The said conversion part production | generation part produces | generates the structure information of the said conversion circuit so that the said conversion circuit may delete the field which is not contained in the said group among the fields of the said message | telegram. Design support device.
  7.  前記電文は、属性と値の組から成る少なくとも1つのフィールドを有する、請求項1ないし6のいずれか1項に記載の設計支援装置。 The design support apparatus according to any one of claims 1 to 6, wherein the electronic message has at least one field including a pair of an attribute and a value.
  8.  電文を選択する選択回路と、選択された電文を処理するアプリケーションプログラムを実行する計算処理部とを備えた電文処理装置を設計する設計支援方法であって、
     コンピュータが、前記アプリケーションプログラムから前記処理の結果が出力される条件を、前記アプリケーションプログラムから第1のフィルタ条件として抽出する工程と、
     前記選択回路が前記第1のフィルタ条件に基づいて前記選択を行うように、前記選択回路の構成情報を生成する工程と、を含む設計支援方法。
    A design support method for designing a message processing device comprising a selection circuit for selecting a message and a calculation processing unit for executing an application program for processing the selected message,
    A step of extracting a condition for outputting the result of the processing from the application program as a first filter condition from the application program;
    Generating a configuration information of the selection circuit so that the selection circuit performs the selection based on the first filter condition.
  9.  前記コンピュータが、前記電文に含まれるフィールドを含む論理式として、前記第1のフィルタ条件を表現する、請求項8に記載の設計支援方法。 The design support method according to claim 8, wherein the computer expresses the first filter condition as a logical expression including a field included in the message.
  10.  前記電文処理装置は、前記選択された電文を変換する変換回路を備え、
     前記計算処理部は、前記アプリケーションプログラムを実行して、前記変換回路により変換された電文を処理し、
     前記コンピュータが、前記計算処理部による前記処理の結果に影響を及ぼす前記アプリケーションプログラムの入力を、前記アプリケーションから第2のフィルタ条件として抽出する工程と、
     前記変換回路が前記第2のフィルタ条件に基づいて前記変換を行うように、前記変換回路の構成情報を生成する工程と、を含む、請求項8または9に記載の設計支援方法。
    The message processing device includes a conversion circuit that converts the selected message.
    The calculation processing unit executes the application program, processes the message converted by the conversion circuit,
    The computer extracting the input of the application program that affects the result of the processing by the calculation processing unit as a second filter condition;
    The design support method according to claim 8, further comprising: generating configuration information of the conversion circuit so that the conversion circuit performs the conversion based on the second filter condition.
  11.  前記コンピュータが、前記電文を分解して得られたフィールドを要素とする集合を用いて、前記2のフィルタ条件を表現する、請求項10に記載の設計支援方法。 The design support method according to claim 10, wherein the computer expresses the second filter condition by using a set having fields obtained by decomposing the electronic message as elements.
  12.  前記コンピュータが、前記選択回路が前記第1のフィルタ条件を満たさない電文を破棄するように、前記選択回路の構成情報を生成する、請求項8ないし11のいずれか1項に記載の設計支援方法。 The design support method according to claim 8, wherein the computer generates configuration information of the selection circuit such that the selection circuit discards a message that does not satisfy the first filter condition. .
  13.  前記コンピュータが、前記変換回路が前記電文のフィールドのうちの、前記集合に含まれないフィールドを削除するように、前記変換回路の構成情報を生成する、請求項11または12に記載の設計支援方法。 The design support method according to claim 11 or 12, wherein the computer generates configuration information of the conversion circuit so that the conversion circuit deletes a field that is not included in the set from among the fields of the message. .
  14.  電文を選択する選択回路と、選択された電文を処理するアプリケーションプログラムを実行する計算処理部とを備えた電文処理装置を設計する処理を、コンピュータに実行させるプログラムであって、
     前記アプリケーションプログラムから前記処理の結果が出力される条件を、前記アプリケーションプログラムから第1のフィルタ条件として抽出する処理と、
     前記選択回路が前記第1のフィルタ条件に基づいて前記選択を行うように、前記選択回路の構成情報を生成する処理と、を前記コンピュータに実行させる、プログラム。
    A program for causing a computer to execute a process of designing a message processing device including a selection circuit that selects a message and a calculation processing unit that executes an application program that processes the selected message.
    A process of extracting a condition for outputting the result of the process from the application program as a first filter condition from the application program;
    A program that causes the computer to execute a process of generating configuration information of the selection circuit so that the selection circuit performs the selection based on the first filter condition.
  15.  前記電文に含まれるフィールドを含む論理式として、前記第1のフィルタ条件を表現する処理を、前記コンピュータに実行させる、請求項14に記載のプログラム。 The program according to claim 14, wherein the computer is caused to execute a process of expressing the first filter condition as a logical expression including a field included in the message.
  16.  前記電文処理装置は、前記選択された電文を変換する変換回路を備え、
     前記計算処理部は、前記アプリケーションプログラムを実行して、前記変換回路により変換された電文を処理し、
     前記計算処理部による前記処理の結果に影響を及ぼす前記アプリケーションプログラムの入力を、前記アプリケーションから第2のフィルタ条件として抽出する処理と、
     前記変換回路が前記第2のフィルタ条件に基づいて前記変換を行うように、前記変換回路の構成情報を生成する処理と、を前記コンピュータに実行させる、請求項14または15に記載のプログラム。
    The message processing device includes a conversion circuit that converts the selected message.
    The calculation processing unit executes the application program, processes the message converted by the conversion circuit,
    A process of extracting the input of the application program that affects the result of the process by the calculation processing unit as a second filter condition from the application;
    The program according to claim 14 or 15, which causes the computer to execute a process of generating configuration information of the conversion circuit so that the conversion circuit performs the conversion based on the second filter condition.
  17.  前記電文を分解して得られたフィールドを要素とする集合を用いて、前記2のフィルタ条件を表現する処理を、前記コンピュータに実行させる、請求項16に記載のプログラム。 The program according to claim 16, which causes the computer to execute a process of expressing the second filter condition using a set including fields obtained by decomposing the electronic message as elements.
  18.  前記選択回路が前記第1のフィルタ条件を満たさない電文を破棄するように、前記選択回路の構成情報を生成する処理を、前記コンピュータに実行させる、請求項14ないし17のいずれか1項に記載のプログラム。 18. The computer according to claim 14, wherein the computer is caused to execute a process of generating configuration information of the selection circuit so that the selection circuit discards a message that does not satisfy the first filter condition. Program.
  19.  前記変換回路が前記電文のフィールドのうちの、前記集合に含まれないフィールドを削除するように、前記変換回路の構成情報を生成する処理を、前記コンピュータに実行させる、請求項17または18に記載のプログラム。 19. The computer according to claim 17, wherein the computer executes a process of generating configuration information of the conversion circuit so that the conversion circuit deletes a field that is not included in the set from among the fields of the message. Program.
PCT/JP2013/061412 2012-04-18 2013-04-17 Design assistance device, design assistance method and program WO2013157582A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014511235A JP6107817B2 (en) 2012-04-18 2013-04-17 Design support apparatus, design support method, and program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2012095064 2012-04-18
JP2012-095064 2012-04-18

Publications (1)

Publication Number Publication Date
WO2013157582A1 true WO2013157582A1 (en) 2013-10-24

Family

ID=49383537

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2013/061412 WO2013157582A1 (en) 2012-04-18 2013-04-17 Design assistance device, design assistance method and program

Country Status (2)

Country Link
JP (1) JP6107817B2 (en)
WO (1) WO2013157582A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114398437A (en) * 2022-01-04 2022-04-26 多点生活(成都)科技有限公司 User information processing method and device, electronic equipment and computer readable medium
WO2023053158A1 (en) 2021-09-28 2023-04-06 三菱電機株式会社 Communication system, communication control device, communication control method, and program

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002247095A (en) * 2001-02-16 2002-08-30 Fujitsu Ltd Packet data processor
JP2007310662A (en) * 2006-05-18 2007-11-29 Mitsubishi Electric Corp Firewall device
JP2010074761A (en) * 2008-09-22 2010-04-02 Fuji Xerox Co Ltd Communication control apparatus, image processing apparatus, and program
JP2010268322A (en) * 2009-05-15 2010-11-25 Nippon Telegr & Teleph Corp <Ntt> Information distribution system and information distribution method

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AUPR435501A0 (en) * 2001-04-11 2001-05-17 Firebridge Systems Pty Ltd Network security system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002247095A (en) * 2001-02-16 2002-08-30 Fujitsu Ltd Packet data processor
JP2007310662A (en) * 2006-05-18 2007-11-29 Mitsubishi Electric Corp Firewall device
JP2010074761A (en) * 2008-09-22 2010-04-02 Fuji Xerox Co Ltd Communication control apparatus, image processing apparatus, and program
JP2010268322A (en) * 2009-05-15 2010-11-25 Nippon Telegr & Teleph Corp <Ntt> Information distribution system and information distribution method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023053158A1 (en) 2021-09-28 2023-04-06 三菱電機株式会社 Communication system, communication control device, communication control method, and program
CN114398437A (en) * 2022-01-04 2022-04-26 多点生活(成都)科技有限公司 User information processing method and device, electronic equipment and computer readable medium

Also Published As

Publication number Publication date
JP6107817B2 (en) 2017-04-05
JPWO2013157582A1 (en) 2015-12-21

Similar Documents

Publication Publication Date Title
US9596212B2 (en) Apparatus, method, and system for hardware-based filtering in a cross-domain infrastructure
US20170116350A1 (en) Validation of schema and schema conformance verification
CN109902274B (en) Method and system for converting json character string into thraft binary stream
US20240184651A1 (en) System and method for linearizing messages from data sources for optimized high-performance processing in a stream processing system
TW201246071A (en) Unrolling quantifications to control in-degree and/or out degree of automation
CN110515944B (en) Data storage method based on distributed database, storage medium and electronic equipment
JP6107817B2 (en) Design support apparatus, design support method, and program
Ladegourdie et al. Performance analysis of opc ua for industrial interoperability towards industry 4.0
CN107132808A (en) Programmable controller and its control method and control program
CN113572726A (en) Multi-mode network control-data plane consistency verification method and device
Nimma et al. Modeling intelligent control switch iec 61850 based substation automation communication
US20150365290A1 (en) Network verification apparatus, network verification method and program
Tightiz et al. Towards latency bypass and scalability maintain in digital substation communication domain with IEC 62439-3 based network architecture
CN115587593B (en) Information extraction method, information extraction device, electronic equipment and computer readable medium
CN108845794B (en) Streaming operation system, method, readable medium and storage controller
CN105793842B (en) Conversion method and device between serialized message
CN107968722B (en) Method for converting interface control file into AFDX (avionics full Duplex switched Ethernet) network equipment configuration file
US9858323B2 (en) Intermediate data format for database population
Huang et al. AccelSDP: A reconfigurable accelerator for software data plane based on FPGA SmartNIC
US8910118B2 (en) Extracting business rules of a service-oriented architecture (SOA) system
EP3917114A1 (en) Method, device and system for establishing connectivity between industrial environment and computing platform
WO2013157588A1 (en) Information processing device, information processing method, and program
JP2009093526A (en) Interprocess communication system, data structure, interprocess communication controller, interprocess communication control method and computer program
Liu et al. A programmable srv6 processor for sfc
KR101819075B1 (en) Data collection device for monitoring streams in a data network

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13778434

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2014511235

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13778434

Country of ref document: EP

Kind code of ref document: A1