[go: up one dir, main page]

JP2013134680A - Information processing device, information processing system, and information processing method - Google Patents

Information processing device, information processing system, and information processing method Download PDF

Info

Publication number
JP2013134680A
JP2013134680A JP2011285700A JP2011285700A JP2013134680A JP 2013134680 A JP2013134680 A JP 2013134680A JP 2011285700 A JP2011285700 A JP 2011285700A JP 2011285700 A JP2011285700 A JP 2011285700A JP 2013134680 A JP2013134680 A JP 2013134680A
Authority
JP
Japan
Prior art keywords
address
page
information processing
priority
program
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
JP2011285700A
Other languages
Japanese (ja)
Inventor
Takeshi Abe
剛 阿部
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toyota Motor Corp
Original Assignee
Toyota Motor Corp
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 Toyota Motor Corp filed Critical Toyota Motor Corp
Priority to JP2011285700A priority Critical patent/JP2013134680A/en
Publication of JP2013134680A publication Critical patent/JP2013134680A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Memory System (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide: an information processing device and an information processing method, which are capable of highly efficiently performing distributive arrangement of a program in accordance with required functionality; and an information processing system using the information processing device.SOLUTION: An on-vehicle information processing device 22 includes an MMU 40 for converting a memory address between a virtual address Va and a physical address Pa, the memory address at an access destination of programs 32 through 34 executed by a CPU 30, where the MMU 40 sets a degree of priority, as a criteria for distributive arrangement, on an executed page depending on whether a predetermined physical address is included in an address of a page that is one unit of the program segmented in executing the program, the address accessed by the execution of the CPU 30.

Description

本発明は、車両などにおいてプログラムの実行に用いられる情報処理装置及び情報処理方法、及び上記情報処理装置を使用する情報処理システムに関する。   The present invention relates to an information processing apparatus and an information processing method used for executing a program in a vehicle or the like, and an information processing system using the information processing apparatus.

周知のように、車両にはナビゲーションシステムや各種制御装置等の情報処理装置が搭載されていることが多い。こうした情報処理装置は、提供する機能の増加や高性能化に伴って、プログラムの処理負荷の増加が避けられなくなるとともに、処理負荷の増加が招く処理速度や応答速度の低下によって、その利便性までもが低下することにもなりかねない。そこで、プログラムを複数に分割し、それら分割したプログラムを複数の情報処理装置に分散処理させることでプログラムの実行にかかる時間を短縮するとともに、情報処理システム全体としての処理速度や応答速度の低下を抑えて利便性の確保を図る技術なども提案されている。そして従来、こうした技術の一例として、分散処理させるプログラムを複数の情報処理装置に配置する上での最適化支援を行う技術が特許文献1に記載されている。   As is well known, an information processing device such as a navigation system and various control devices is often mounted on a vehicle. Such an information processing device cannot avoid increasing the processing load of the program along with the increase in the functions to be provided and the improvement in performance, and the convenience of the processing speed and response speed are reduced due to the increase in processing load. It can also lead to a decline. Therefore, the program is divided into a plurality of parts, and the divided programs are distributed to a plurality of information processing apparatuses, thereby reducing the time required for program execution and reducing the processing speed and response speed of the entire information processing system. Techniques to reduce convenience and ensure convenience have also been proposed. Conventionally, as an example of such a technique, Patent Document 1 discloses a technique for performing optimization support in arranging a program for distributed processing in a plurality of information processing apparatuses.

特許文献1に記載の装置では、分散処理させる複数のプログラム(アプリケーション)の各々を、ネットワークに接続された複数の情報処理装置(ノード)のいずれに配置させるべきかが算出される。このプログラム配置の算出では、プログラムの連携処理に要求される優先度とネットワークの通信処理上の優劣度とに基づき、連携処理の優先度が高いプログラム同士が通信処理上優良なネットワークにより通信される情報処理装置に配置されるように各プログラムの配置先が算出される。こうして算出された配置によれば、プログラムの適正な連携動作を通じて、分散アプリケーションシステムとしての全体的な動作の安定性の向上が図られるようになる。   In the apparatus described in Patent Literature 1, it is calculated which of a plurality of information processing apparatuses (nodes) connected to the network each of a plurality of programs (applications) to be distributed processed is to be arranged. In the calculation of the program arrangement, programs having high cooperation processing priority are communicated with each other through a network excellent in communication processing based on the priority required for the cooperation processing of the program and the superiority or inferiority in communication processing of the network. The placement destination of each program is calculated so as to be placed in the information processing apparatus. According to the arrangement calculated in this way, the stability of the overall operation of the distributed application system can be improved through an appropriate cooperative operation of the programs.

特開2009−282652号公報JP 2009-282651 A

ところで近年、情報処理装置では、プログラムの確実かつ容易な書き換えも可能になってきているため、プログラムの機能向上や修正などに伴うプログラムの書き換えが多く行われる傾向にもある。このとき、書き換えの都度、特許文献1に記載の装置によってプログラムの配置を算出するにしても、プログラム全体を考慮した上で、書き換え対象プログラムにそのプログラムの連携処理に要求される優先度等を再設定しなければならないなど、その手間も無視できないものとなっている。   By the way, in recent years, information processing apparatuses have become capable of reliable and easy rewriting of programs, and therefore, there is a tendency that rewriting of programs accompanying the improvement or correction of functions of the program is often performed. At this time, even when the arrangement of the program is calculated by the apparatus described in Patent Document 1 every time it is rewritten, the priority required for the reprogramming target program to be linked to the program is set after considering the entire program. This has to be reconfigured, and the effort is not negligible.

なお、こうした課題は、車両に搭載された情報処理装置のみならず、書き換え可能なプログラムを分散配置させようとする各種の情報処理装置においても概ね共通した課題となっている。   Such a problem is not only an information processing apparatus mounted on a vehicle but also a common problem in various information processing apparatuses that attempt to distribute rewritable programs.

本発明は、このような実情に鑑みなされたものであり、その目的は、プログラムの分散配置を、要求される機能に応じて容易かつ高効率に行うことのできる情報処理装置、及び情報処理方法、及び前記情報処理装置を使用する情報処理システムを提供することにある。   The present invention has been made in view of such circumstances, and an object of the present invention is to provide an information processing apparatus and an information processing method capable of easily and highly efficiently distributing programs according to required functions. And an information processing system using the information processing apparatus.

以下、上記課題を解決するための手段及びその作用効果について記載する。
上記課題を解決するため、請求項1に記載の発明は、演算装置で実行されるプログラムのアクセス先のメモリアドレスを仮想アドレスと物理アドレスとの間で変換するアドレス変換装置を備える情報処理装置であって、前記アドレス変換装置は、プログラムの実行に際して細分化されたプログラムの1単位であるページの前記演算装置による実行によってアクセスされるアドレスに所定の物理アドレスが含まれるか否かに基づいて当該実行されたページに分散配置の目安とする優先度を設定することを要旨とする。
Hereinafter, means for solving the above-described problems and the effects thereof will be described.
In order to solve the above problem, an invention according to claim 1 is an information processing apparatus including an address conversion device that converts a memory address of an access destination of a program executed by an arithmetic device between a virtual address and a physical address. The address conversion device may determine whether the address accessed by the execution of the arithmetic unit of the page, which is a unit of the program fragmented when the program is executed, includes a predetermined physical address. The gist is to set a priority as a guide for distributed arrangement to executed pages.

上記課題を解決するため、請求項10に記載の発明は、演算装置で実行されるプログラムのアクセス先のメモリアドレスを仮想アドレスと物理アドレスとの間で変換しつつ情報処理する情報処理方法であって、プログラムの実行に際して細分化されたプログラムの1単位であるページの前記演算装置による実行によってアクセスされるアドレスに所定の物理アドレスが含まれるか否かに基づいて当該実行されたページに分散配置の目安とする優先度を設定することを要旨とする。   In order to solve the above problem, an invention according to claim 10 is an information processing method for performing information processing while converting a memory address of an access destination of a program executed by an arithmetic device between a virtual address and a physical address. Thus, the distributed page is distributed based on whether or not a predetermined physical address is included in the address accessed by the execution of the arithmetic unit of the page, which is a unit of the program subdivided when the program is executed The gist is to set the priority as a guideline.

演算装置にてプログラムが実行される際、そのプログラムがどのようにページとして分割されるか把握することは困難であるため、プログラム作成時にページに優先度を予め付すことは困難である。また、プログラム中に設定された条件により実行される命令が変化するプログラムの動作をプログラムの作成時の静的な状態で的確に評価することも容易ではない。   When a program is executed by an arithmetic device, it is difficult to grasp how the program is divided into pages, and therefore it is difficult to assign priorities to pages in advance when creating a program. In addition, it is not easy to accurately evaluate the operation of a program in which an instruction to be executed changes according to a condition set in the program in a static state when the program is created.

このような構成もしくは方法によれば、プログラムがページに分割され、演算装置で実行されている状態において各ページに優先度を付すことができるようになるため、プログラムを動的な作動に基づいて評価することができるようになる。つまり、所定の物理アドレスにアクセスするか否かに基づく優先度を動的かつ的確に各ページに付与することができるようになる。こうした優先度に基づいて、プログラムの分散配置を、現に要求される機能に応じて容易かつ高効率に行うことができるようになる。   According to such a configuration or method, since the program can be divided into pages and priorities can be given to each page in a state where the program is being executed by the arithmetic device, the program is based on dynamic operation. It becomes possible to evaluate. That is, priority based on whether or not to access a predetermined physical address can be dynamically and accurately assigned to each page. Based on these priorities, it is possible to easily and efficiently distribute programs according to the functions that are actually required.

また、所定の物理アドレスにアクセスするページには高い優先度を設定し、それ以外のページには低い優先度を設定するようにすることで、所定の物理アドレスにアクセスするページの処理を迅速にするようなこともできるようになる。   In addition, a high priority is set for a page accessing a predetermined physical address, and a low priority is set for other pages, so that a page accessing a predetermined physical address can be processed quickly. You can do things like that.

請求項2に記載の発明は、請求項1に記載の情報処理装置において、前記所定の物理アドレスは入出力インターフェースに対応するアドレスであることを要旨とする。
請求項11に記載の発明は、請求項10に記載の情報処理方法において、前記所定の物理アドレスを入出力インターフェースに対応するアドレスとすることを要旨とする。
The invention according to claim 2 is the information processing apparatus according to claim 1, wherein the predetermined physical address is an address corresponding to an input / output interface.
The invention according to claim 11 is the information processing method according to claim 10, characterized in that the predetermined physical address is an address corresponding to an input / output interface.

このような構成もしくは方法によれば、ユーザの利便性に影響する機器等が接続される入出力インターフェースにアクセスするページに適切な優先度を付すことができる。ユーザの利便性を考慮すれば、特に入出力インターフェースの応答は迅速であることが好ましい。また優先度に基づけば、こうした入出力インターフェースにアクセスするページの処理状態、例えば処理に要する時間などを調整することができるようになる。   According to such a configuration or method, an appropriate priority can be given to a page that accesses an input / output interface to which a device or the like that affects user convenience is connected. Considering the convenience of the user, it is preferable that the response of the input / output interface is particularly quick. Further, based on the priority, it is possible to adjust the processing state of a page accessing such an input / output interface, for example, the time required for the processing.

請求項3に記載の発明は、請求項1又は2に記載の情報処理装置において、前記所定の物理アドレスにアクセスしたページからアクセスされる他のページに前記所定の物理アドレスにアクセスしたページに設定される優先度とは異なる優先度が設定されることを要旨とする。   According to a third aspect of the present invention, in the information processing apparatus according to the first or second aspect, a page accessed from the page accessing the predetermined physical address is set to another page accessed from a page accessed from the predetermined physical address. The gist is that a priority different from the priority to be set is set.

このような構成によれば、所定の物理アドレスにアクセスするページからアクセスされる他のページにも優先度を付すことができるとともに、当該他のページに付す優先度を先の所定の物理アドレスにアクセスするページに付す優先度と相違させることができるようになる。つまり、所定の物理アドレスへアクセスするページとの間に介在する他のページ数、いわゆる所定の物理アドレスまでの距離に応じてページに優先度を付すことができるようになる。これにより、所定の物理アドレスへアクセスするページ、及び、他のページを優先度に応じてメモリの配置を変えたりするようなことができるようにもなる。   According to such a configuration, priority can be given to other pages accessed from a page accessing a predetermined physical address, and the priority given to the other page is assigned to the previous predetermined physical address. The priority assigned to the page to be accessed can be made different. That is, priority can be given to a page according to the number of other pages interposed between pages accessing a predetermined physical address, that is, a distance to a so-called predetermined physical address. As a result, it is possible to change the memory arrangement of a page accessing a predetermined physical address and other pages according to the priority.

請求項4に記載の発明は、請求項3に記載の情報処理装置において、前記所定の物理アドレスにアクセスしたページには当該ページからアクセスされる他のページに設定される優先度よりも高い優先度が設定されることを要旨とする。   According to a fourth aspect of the present invention, in the information processing apparatus according to the third aspect, the page accessed to the predetermined physical address has a higher priority than the priority set to other pages accessed from the page. The gist is that the degree is set.

このような構成によれば、高い優先度が設定されたページを、例えば、応答性が高くなるように調整することができるようになる。これにより、例えば入出力インターフェースを用いる処理に関しての調整の幅が拡がり利便性が向上される。   According to such a configuration, a page set with a high priority can be adjusted, for example, so as to increase responsiveness. Thereby, for example, the range of adjustments related to processing using the input / output interface is expanded, and convenience is improved.

請求項5に記載の発明は、請求項1〜4のいずれか一項に記載の情報処理装置において、前記アドレス変換装置には、各ページに設定された優先度に応じてそれらページが配置される物理アドレスを変更する配置変更部が設けられており、前記各ページは、設定された優先度に応じて配置される物理アドレスが前記配置変更部により変更されることを要旨とする。   According to a fifth aspect of the present invention, in the information processing device according to any one of the first to fourth aspects, the page is arranged in the address translation device according to the priority set for each page. An arrangement changing unit for changing the physical address is provided, and the physical address of each page is changed according to the set priority by the arrangement changing unit.

このような構成によれば、各ページに対応する物理アドレスがそれらページに設定された優先度に応じて変更されるようになる。すなわち、優先度に応じて各ページの配置を変更することができるためページの好適な分散配置が可能にもなる。   According to such a configuration, the physical address corresponding to each page is changed according to the priority set for those pages. In other words, since the arrangement of each page can be changed according to the priority, a suitable distributed arrangement of pages can be achieved.

請求項6に記載の発明は、請求項5に記載の情報処理装置において、前記配置変更部は、前記優先度の高さに応じて前記演算装置からのアクセス時間が短くなるように各ページを配置させる物理アドレスを変更することを要旨とする。   According to a sixth aspect of the present invention, in the information processing apparatus according to the fifth aspect, the placement changing unit sets each page so that an access time from the arithmetic device is shortened according to the high priority. The gist is to change the physical address to be arranged.

このような構成によれば、各ページの配置が、優先度が高いページの応答性が高くなるように調整される。これにより、例えば入出力インターフェースを用いる処理に関する応答性が高くなりユーザの利便性が向上する。   According to such a configuration, the arrangement of each page is adjusted so that the responsiveness of a page having a high priority is increased. Thereby, for example, the responsiveness regarding the process using the input / output interface is increased, and the convenience for the user is improved.

請求項7に記載の発明は、請求項1〜6のいずれか一項に記載の情報処理装置において、前記情報処理装置は車両に搭載されていることを要旨とする。
このような構成によれば、車両に搭載される情報処理装置におけるプログラムのページの配置が、車載された各種装置に対応する入出力インターフェースへのアクセス態様に応じて定められるようになる。これにより、例えば車載されたマイクやスピーカなどにアクセスするページの優先度を高くしたりすることもできるとともに、当該優先度に応じてページを好適に配置するように調整することもできるようになる。
The gist of the invention according to claim 7 is the information processing apparatus according to any one of claims 1 to 6, wherein the information processing apparatus is mounted on a vehicle.
According to such a configuration, the arrangement of the program pages in the information processing apparatus mounted on the vehicle is determined according to the access mode to the input / output interface corresponding to the various apparatuses mounted on the vehicle. As a result, for example, the priority of a page accessing a vehicle-mounted microphone or speaker can be increased, and the page can be adjusted so as to be suitably arranged according to the priority. .

請求項8に記載の発明は、請求項7に記載の情報処理装置において、前記車両は外部に設けられたサーバに無線通信を介して通信可能に構成されており、前記配置変更部は、前記優先度の低い又は設定されないページを前記サーバのメモリアドレスに配置させることを要旨とする。   The invention according to claim 8 is the information processing apparatus according to claim 7, wherein the vehicle is configured to be able to communicate with a server provided outside via wireless communication, The gist is to place a page with a low priority or not set at the memory address of the server.

このような構成によれば、優先度の低い又は設定されないページがサーバに配置されるようになるため、情報処理装置としてのプログラムの処理負荷が軽減されるようになるとともに、所定の物理アドレスに近いページは車両に配置して処理速度の維持を図るようにすることができるようになる。これにより、プログラムの処理負荷の増加が生じた場合であれ、ページを好適に分散配置させて、処理負荷の増加に対応することができるようになる。   According to such a configuration, low priority or non-set pages are arranged on the server, so that the processing load of the program as the information processing apparatus is reduced and a predetermined physical address is set. Close pages can be placed on the vehicle to maintain the processing speed. As a result, even when an increase in the processing load of the program occurs, it is possible to deal with an increase in the processing load by suitably distributing and arranging pages.

上記課題を解決するため、請求項9に記載の発明は、演算装置で実行されるプログラムのアクセス先のメモリアドレスを仮想アドレスと物理アドレスとの間で変換するアドレス変換装置を備える情報処理装置が車両に設けられるとともに、前記車両と無線通信を介して通信可能なサーバが車両の外部に設けられてなる情報処理システムであって、前記アドレス変換装置は、プログラムの実行に際して細分化されたプログラムの1単位であるページの前記演算装置による実行によってアクセスされるアドレスに所定の物理アドレスが含まれるか否かに基づいて当該実行されたページに分散配置の目安とする優先度を設定するものであって、この設定した優先度に応じて各ページの配置態様を変更する配置変更部を備え、前記配置変更部は、前記優先度の低い又は設定されないページを前記サーバのメモリアドレスに配置させることを要旨とする。   In order to solve the above-described problem, an information processing apparatus including an address conversion device that converts a memory address of an access destination of a program executed by an arithmetic device between a virtual address and a physical address. An information processing system provided in a vehicle and having a server capable of communicating with the vehicle via wireless communication provided outside the vehicle, wherein the address conversion device is a program that is subdivided when the program is executed. Based on whether or not a predetermined physical address is included in an address accessed by execution by the arithmetic unit of a page that is a unit, priority is set as an index of distributed arrangement on the executed page. And an arrangement change unit that changes the arrangement mode of each page according to the set priority, the arrangement change unit, Low or not set page of Sakido and gist be placed in the memory address of the server.

このような構成によれば、プログラムがページに分割され、演算装置で実行されている状態において各ページに優先度を付すことができるようになるため、プログラムを動的な作動に基づいて評価することができるようになる。つまり、所定の物理アドレスにアクセスするか否かに基づく優先度を動的かつ的確に各ページに付与することができるようになる。こうした優先度に基づいて、プログラムの分散配置を、現に要求される機能に応じて容易かつ高効率に行うことができるようになる。   According to such a configuration, since the program can be divided into pages and priority can be given to each page in a state where the program is executed by the arithmetic device, the program is evaluated based on dynamic operation. Will be able to. That is, priority based on whether or not to access a predetermined physical address can be dynamically and accurately assigned to each page. Based on these priorities, it is possible to easily and efficiently distribute programs according to the functions that are actually required.

また、所定の物理アドレスにアクセスするページには高い優先度を設定し、それ以外のページには低い優先度を設定するようにすることで、所定の物理アドレスにアクセスするページの処理を迅速にするようなこともできるようになる。   In addition, a high priority is set for a page accessing a predetermined physical address, and a low priority is set for other pages, so that a page accessing a predetermined physical address can be processed quickly. You can do things like that.

さらに、車両に搭載される情報処理装置におけるプログラムのページの配置が、車載された各種装置に対応する入出力インターフェースへのアクセス態様に応じて定められるようになる。これにより、例えば車載されたマイクやスピーカなどにアクセスするページの優先度を高くしたりすることもできるとともに、当該優先度に応じてページを好適に配置するように調整することもできるようになる。   Furthermore, the arrangement of the program pages in the information processing apparatus mounted on the vehicle is determined according to the access mode to the input / output interface corresponding to the various apparatuses mounted on the vehicle. As a result, for example, the priority of a page accessing a vehicle-mounted microphone or speaker can be increased, and the page can be adjusted so as to be suitably arranged according to the priority. .

また、優先度の低い又は設定されないページがサーバに配置されるようになるため、情報処理装置としてのプログラムの処理負荷が軽減されるようになるとともに、所定の物理アドレスに近いページは車両に配置して処理速度の維持を図るようにすることができるようになる。これにより、プログラムの処理負荷の増加が生じた場合であれ、ページを好適に分散配置させて、処理負荷の増加に対応することができるようになる。   In addition, since low priority or unset pages are arranged on the server, the processing load of the program as the information processing apparatus is reduced, and pages close to a predetermined physical address are arranged on the vehicle. Thus, the processing speed can be maintained. As a result, even when an increase in the processing load of the program occurs, it is possible to deal with an increase in the processing load by suitably distributing and arranging pages.

本発明にかかる情報処理システムを具体化した一実施形態について、そのシステム構成を示すブロック図。The block diagram which shows the system configuration | structure about one Embodiment which actualized the information processing system concerning this invention. 同実施形態の情報処理装置に設けられているページテーブルを模式的に示す模式図。The schematic diagram which shows typically the page table provided in the information processing apparatus of the embodiment. 同実施形態の情報処理装置に設けられている優先度テーブルを模式的に示す模式図。The schematic diagram which shows typically the priority table provided in the information processing apparatus of the embodiment. 同実施形態の情報処理装置において行われるアドレス変換を模式的に示す模式図。3 is a schematic diagram schematically showing address conversion performed in the information processing apparatus of the embodiment. FIG. 同実施形態の情報処理装置においてページに優先度を付す処理を示すフローチャート。6 is an exemplary flowchart illustrating processing for assigning priorities to pages in the information processing apparatus of the embodiment. 同実施形態の情報処理装置において優先度に応じてページの配置を変更する処理の概要を示すフローチャート。6 is an exemplary flowchart illustrating an outline of processing for changing the arrangement of pages according to priority in the information processing apparatus of the embodiment. 同実施形態の情報処理装置において優先度に応じてページの配置が定められる態様を模式的に示す模式図。The schematic diagram which shows typically the aspect by which the arrangement | positioning of a page is defined according to a priority in the information processing apparatus of the embodiment.

以下、本発明にかかる情報処理システムを具体化した一実施形態について、図に従って説明する。
図1に示すように、情報処理システムには、固定設備であるサーバ10と移動体としての車両20とが設けられている。
Hereinafter, an embodiment of an information processing system according to the present invention will be described with reference to the drawings.
As shown in FIG. 1, the information processing system is provided with a server 10 as a fixed facility and a vehicle 20 as a moving body.

サーバ10は、車両20の外部に設けられ、車両20に対して各種の情報やサービスを提供するためのものであって、車両20からの要求に応じて各種の情報やサービスを提供する。サーバ10は、例えば、道路交通情報を配信するサーバや、特定の顧客にのみサービスを提供するサーバなどであってもよい。サーバ10には、車両20との通信を可能にするサーバ通信装置11と、前述した各種の情報やサービスの提供に必要とされる各種処理を行うサーバ情報処理装置12と、サーバ情報処理装置12における各種処理に用いられるデータなどを保持するサーバ記憶装置13とが設けられている。   The server 10 is provided outside the vehicle 20 and provides various information and services to the vehicle 20, and provides various information and services in response to requests from the vehicle 20. The server 10 may be, for example, a server that distributes road traffic information or a server that provides services only to specific customers. The server 10 includes a server communication device 11 that enables communication with the vehicle 20, a server information processing device 12 that performs various processes necessary for providing the various information and services described above, and a server information processing device 12. And a server storage device 13 for holding data used for various processes in the server.

サーバ通信装置11は、サーバ情報処理装置12との間でデータ通信を行うことができるように該サーバ情報処理装置12に接続、例えばバス接続されているとともに、車両20との間で無線通信を介して相互にデータ通信を行うことができるようになっている。つまり、サーバ通信装置11は、サーバ情報処理装置12から入力されたデータを車両20に送信することができるとともに、車両20から受信したデータをサーバ情報処理装置12へ出力することができる。   The server communication device 11 is connected to the server information processing device 12 so as to be able to perform data communication with the server information processing device 12, for example, is connected to the bus 20 and wirelessly communicates with the vehicle 20. Data communication can be carried out via each other. That is, the server communication device 11 can transmit the data input from the server information processing device 12 to the vehicle 20 and can output the data received from the vehicle 20 to the server information processing device 12.

サーバ情報処理装置12は、各種演算処理を実行するCPU、各種制御プログラムを格納するROM、データ格納やプログラム実行のためのワークエリアとして利用されるRAM、入出力(I/O)インターフェース、読み書き可能な不揮発性の内部記憶装置等を備えたマイクロコンピュータを中心に構成されている。ROMや内部記憶装置には、車両20の運転を支援するための各種プログラムや各種パラメータが予め記憶されている。そして、CPUによる各種パラメータを含む各種プログラムの実行処理に基づいて、各種の運転支援が車両20に提供される。   The server information processing apparatus 12 includes a CPU that executes various arithmetic processes, a ROM that stores various control programs, a RAM that is used as a work area for data storage and program execution, an input / output (I / O) interface, and read / write capability. The microcomputer mainly includes a nonvolatile internal storage device or the like. Various programs and various parameters for supporting driving of the vehicle 20 are stored in advance in the ROM and the internal storage device. Various driving assistances are provided to the vehicle 20 based on the execution processing of various programs including various parameters by the CPU.

サーバ記憶装置13は、読み書き可能な不揮発性の記憶装置としてのHDD(Hard Disk Drive)などから構成されており、サーバ情報処理装置12との間でデータ転送可能に該サーバ情報処理装置12に接続、例えばバス接続されている。サーバ記憶装置13には、サーバ情報処理装置12にて実行されるプログラムから利用される各種情報などが格納されている。また、サーバ記憶装置13に、車両20の運転を支援するための各種プログラムや各種パラメータが記憶されていてもよいし、車両20との間で分散処理されるプログラムの一部が記憶されていてもよい。   The server storage device 13 includes an HDD (Hard Disk Drive) or the like as a readable / writable nonvolatile storage device, and is connected to the server information processing device 12 so that data can be transferred to the server information processing device 12. For example, a bus connection is made. The server storage device 13 stores various information used from a program executed by the server information processing device 12. Further, the server storage device 13 may store various programs and various parameters for supporting the driving of the vehicle 20, and a part of a program to be distributed with the vehicle 20 is stored. Also good.

さらにサーバ記憶装置13は、車載情報処理装置22の仮想メモリ領域として使用することができる。つまり、車載情報処理装置22におけるプログラムの実行の際に要するメモリとしての仮想メモリ領域をサーバ記憶装置13に確保することができるとともに、当該仮想メモリ領域のメモリアドレスにデータ等を配置することができるようになる。   Further, the server storage device 13 can be used as a virtual memory area of the in-vehicle information processing device 22. That is, a virtual memory area as a memory required for executing the program in the in-vehicle information processing apparatus 22 can be secured in the server storage device 13 and data or the like can be arranged at the memory address of the virtual memory area. It becomes like this.

車両20は、ドライバーの運転操作により運転される自動車などであって運転支援などに用いられる車載情報処理装置22を備えている。車両20には、サーバ10との通信を可能にする車載通信装置21と、前述した運転支援を提供するために必要とする各種処理を行う車載情報処理装置22と、車載情報処理装置22における各種処理に用いられるデータなどを保持する車載記憶装置23とが設けられている。また車両20には、ドライバー等の音声が入力されるマイク24と、ドライバー等に音声を提供するスピーカ25と、車両速度を検出するセンサ26とが設けられている。   The vehicle 20 includes an in-vehicle information processing device 22 used for driving assistance and the like that is driven by a driver's driving operation. In the vehicle 20, an in-vehicle communication device 21 that enables communication with the server 10, an in-vehicle information processing device 22 that performs various processes necessary for providing the above-described driving support, and various types in the in-vehicle information processing device 22. An in-vehicle storage device 23 that holds data used for processing is provided. In addition, the vehicle 20 is provided with a microphone 24 to which the sound of a driver or the like is input, a speaker 25 that provides sound to the driver or the like, and a sensor 26 that detects the vehicle speed.

車載通信装置21は、車載情報処理装置22との間でデータ通信を行うことができるように該車載情報処理装置22に接続、例えばバス接続されているとともに、サーバ10との間で無線通信を介して相互にデータ通信を行うことができるようになっている。つまり、車載通信装置21は、車載情報処理装置22から入力されたデータをサーバ10へ送信するとともに、サーバ10から受信したデータを車載情報処理装置22へ出力する。   The in-vehicle communication device 21 is connected to the in-vehicle information processing device 22 such as a bus so that data communication can be performed with the in-vehicle information processing device 22, and wireless communication with the server 10 is performed. Data communication can be carried out via each other. That is, the in-vehicle communication device 21 transmits the data input from the in-vehicle information processing device 22 to the server 10 and outputs the data received from the server 10 to the in-vehicle information processing device 22.

車載情報処理装置22は、例えば、車両20を運転するドライバーに対して提供する各種の運転支援に要する各種制御等を行うための装置であって、CPUや記憶装置等を備えるマイクロコンピュータを中心に構成されている。すなわち、車載情報処理装置22には、上記各種の運転支援に必要とされる各種演算処理を実行する演算装置としてのCPU30と、CPU30からアクセスされるメモリアドレスを管理するアドレス変換装置としてのメモリ管理ユニット(MMU)40とが設けられている。また、車載情報処理装置22には、メモリアドレスに対するデータの読み込みや書き込み、いわゆるアクセスを管理するメモリコントローラ50と、各種制御プログラムを格納する不揮発性メモリ(ROM)60と、データ格納やプログラム実行のためのワークエリアとして利用される揮発性メモリ(RAM)61とが設けられている。さらに、車載情報処理装置22には、車載情報処理装置22へ各種機器を接続させる入出力(I/O)インターフェース70が設けられている。   The in-vehicle information processing apparatus 22 is an apparatus for performing various controls required for various driving assistance provided to a driver who drives the vehicle 20, for example, and is centered on a microcomputer including a CPU, a storage device, and the like. It is configured. In other words, the in-vehicle information processing device 22 includes a CPU 30 as an arithmetic device that executes various arithmetic processes required for the various driving support and a memory management as an address conversion device that manages memory addresses accessed from the CPU 30. A unit (MMU) 40 is provided. The in-vehicle information processing apparatus 22 includes a memory controller 50 that manages reading and writing of data with respect to memory addresses, so-called access, a non-volatile memory (ROM) 60 that stores various control programs, and data storage and program execution. A volatile memory (RAM) 61 used as a work area is provided. Further, the in-vehicle information processing apparatus 22 is provided with an input / output (I / O) interface 70 for connecting various devices to the in-vehicle information processing apparatus 22.

ROM60や車載記憶装置23などには、車両20の運転を支援するための各種プログラムや各種パラメータが記憶されている。そして、CPU30による各種パラメータを含む各種プログラムの実行処理に基づいて、各種の運転支援が車両20に提供される。本実施形態の車載情報処理装置22では、例えば、マイク24から入力される音声により操作可能なユーザインターフェースを有するプログラムや、スピーカ25を通じて音声を出力するプログラムなどが実行される。   Various programs and various parameters for supporting driving of the vehicle 20 are stored in the ROM 60, the in-vehicle storage device 23, and the like. Various driving assistances are provided to the vehicle 20 based on execution processing of various programs including various parameters by the CPU 30. In the in-vehicle information processing apparatus 22 of the present embodiment, for example, a program having a user interface that can be operated by sound input from the microphone 24, a program that outputs sound through the speaker 25, and the like are executed.

車載記憶装置23は、読み書き可能な不揮発性の記憶装置としてのHDD(Hard Disk Drive)などから構成されており、車載情報処理装置22との間でデータ転送可能に該車載情報処理装置22に接続、例えばバス接続されている。車載記憶装置23には、車載情報処理装置22にて実行されるプログラムから利用される各種情報などが格納されている。また、車載記憶装置23に、車両20の運転を支援するための各種プログラムや各種パラメータが記憶されていてもよいし、サーバ10との間で分散処理されるプログラムの一部が記憶されていてもよい。さらに、車載記憶装置23は、車載情報処理装置22において仮想メモリ領域として使用することもできる。つまり、車載情報処理装置22によるプログラムの実行の際に要するメモリとしての仮想メモリ領域を車載記憶装置23に確保することができるとともに、当該仮想メモリ領域のメモリアドレスにデータ等を配置することができるようになる。   The in-vehicle storage device 23 includes an HDD (Hard Disk Drive) as a readable / writable non-volatile storage device, and is connected to the in-vehicle information processing device 22 so as to be able to transfer data to the in-vehicle information processing device 22. For example, a bus connection is made. The in-vehicle storage device 23 stores various information used from a program executed by the in-vehicle information processing device 22. The in-vehicle storage device 23 may store various programs and various parameters for supporting the driving of the vehicle 20, and a part of a program to be distributed with the server 10 is stored. Also good. Furthermore, the in-vehicle storage device 23 can also be used as a virtual memory area in the in-vehicle information processing device 22. That is, a virtual memory area as a memory required for executing a program by the in-vehicle information processing apparatus 22 can be secured in the in-vehicle storage apparatus 23, and data or the like can be arranged at a memory address of the virtual memory area. It becomes like this.

マイク24は、ドライバー等の音声を収集するために車両20の車内に設けられているものであり、収集された音声からなる音声データをCPU30へ出力することができる。こうして出力された音声データが音声認識されることで、その認識結果がプログラムに対する操作として反映させることができるようにもできる。   The microphone 24 is provided in the vehicle 20 in order to collect the voice of the driver or the like, and can output voice data composed of the collected voice to the CPU 30. By recognizing the sound data output in this way, the recognition result can be reflected as an operation for the program.

スピーカ25は、音や音声を発生する装置であり、CPU30からI/Oインターフェース70を介して入力された音声信号等に対応する音や音声が出力される。これにより車載情報処理装置22は運転支援にかかる情報などを、ドライバーへの注意を喚起するための音からなる注意音声や警報音などとして、このスピーカ25を介して出力することができる。   The speaker 25 is a device that generates sound and sound, and outputs sound and sound corresponding to a sound signal input from the CPU 30 via the I / O interface 70. As a result, the in-vehicle information processing apparatus 22 can output information related to driving support and the like through the speaker 25 as a warning sound or a warning sound including a sound for alerting the driver.

センサ26は、車両20の速度を検出するためのセンサであって、車両20の速度に基づく信号をI/Oインターフェース70に出力する。
CPU30は、OS31や各種プログラム32〜34の演算処理を行うとともに、MMU40やメモリコントローラ50にメモリアクセス可能に接続されている。CPU30は、OS31や各種プログラム32〜34の演算処理に基づいてアクセスする必要が生じたメモリアドレスにMMU40及びメモリコントローラ50を介してアクセスするとともに、そのアクセスを通じて該メモリアドレスに記憶されているデータを取得するようになっている。なお、CPU30では、メモリアドレスとしての仮想アドレス(論理アドレス)Vaの下でOS31や各種プログラム32〜34が実行されるようになっているため、CPU30により処理されるメモリアドレスにアクセスする各種の命令、いわゆるアクセス命令に含まれる仮想アドレスVaがアクセス先のアドレスとしてCPU30から出力される。
The sensor 26 is a sensor for detecting the speed of the vehicle 20, and outputs a signal based on the speed of the vehicle 20 to the I / O interface 70.
The CPU 30 performs arithmetic processing of the OS 31 and various programs 32 to 34 and is connected to the MMU 40 and the memory controller 50 so as to allow memory access. The CPU 30 accesses, via the MMU 40 and the memory controller 50, a memory address that needs to be accessed based on the arithmetic processing of the OS 31 and various programs 32 to 34, and the data stored in the memory address through the access. To get. In the CPU 30, the OS 31 and various programs 32 to 34 are executed under a virtual address (logical address) Va as a memory address. Therefore, various instructions for accessing the memory address processed by the CPU 30. The virtual address Va included in the so-called access command is output from the CPU 30 as an access destination address.

MMU40は、CPU30から入力された仮想アドレスVaをメモリアドレスとしての物理アドレスPaに変換するとともに、当該変換された物理アドレスPaに基づいてメモリコントローラ50にアクセスする。   The MMU 40 converts the virtual address Va input from the CPU 30 into a physical address Pa as a memory address, and accesses the memory controller 50 based on the converted physical address Pa.

MMU40には、仮想アドレスVaと物理アドレスPaとを対応付けたデーブルとしてのページテーブル41と、ページテーブル41を参照して仮想アドレスVaを物理アドレスPaに変換するアドレス変換部42とが設けられている。また、MMU40には、仮想アドレスVaへのアクセスを要求したページに対して、仮想アドレスVaを物理アドレスPaに変換したとき、当該変換された物理アドレスPaに基づいて当該ページに対して優先度を付す優先度設定部43が設けられている。さらに、MMU40には、ページと優先度とを対応付けたテーブルとしての優先度テーブル44と、優先度テーブル44に基づいてページのメモリ配置を変更するメモリ配置変更部45とが設けられている。   The MMU 40 includes a page table 41 as a table in which the virtual address Va and the physical address Pa are associated with each other, and an address conversion unit 42 that converts the virtual address Va into the physical address Pa with reference to the page table 41. Yes. Further, when the MMU 40 converts the virtual address Va to the physical address Pa for the page for which access to the virtual address Va is requested, the MMU 40 gives priority to the page based on the converted physical address Pa. A priority setting unit 43 is provided. Furthermore, the MMU 40 is provided with a priority table 44 as a table in which pages are associated with priorities, and a memory arrangement changing unit 45 that changes the memory arrangement of pages based on the priority table 44.

ページテーブル41には、図2に示すように、仮想アドレスVaと当該仮想アドレスVaに対応する物理アドレスPaとが対応付けられて記憶されている。ページテーブル41では、例えば、仮想アドレス「V1」は物理アドレス「P1」に、仮想アドレス「V2」は物理アドレス「P2」に、仮想アドレス「V3」は物理アドレス「P3」にそれぞれ対応付けられている。また、ページテーブル41では、例えば、仮想アドレス「V4」は物理アドレス「P4」に、仮想アドレス「V5」は物理アドレス「P5」に、仮想アドレス「V6」は物理アドレス「P6」にそれぞれ対応付けられている。さらに、ページテーブル41では、例えば、仮想アドレス「V11」は物理アドレス「P11」に、仮想アドレス「V41」は物理アドレス「P12」にそれぞれ対応付けられている。   As shown in FIG. 2, the page table 41 stores a virtual address Va and a physical address Pa corresponding to the virtual address Va in association with each other. In the page table 41, for example, the virtual address “V1” is associated with the physical address “P1”, the virtual address “V2” is associated with the physical address “P2”, and the virtual address “V3” is associated with the physical address “P3”. Yes. In the page table 41, for example, the virtual address “V4” is associated with the physical address “P4”, the virtual address “V5” is associated with the physical address “P5”, and the virtual address “V6” is associated with the physical address “P6”. It has been. Furthermore, in the page table 41, for example, the virtual address “V11” is associated with the physical address “P11”, and the virtual address “V41” is associated with the physical address “P12”.

なお、仮想アドレス「V1」は、「ページ番号」(例えば「001234」)と「オフセット」(例えば「0567」)とが組み合わされたアドレス(例えば「0012340567」)として構成されている。また、物理アドレス「P1」は、仮想アドレス「V1」に含まれる「ページ番号」から特定されるページテーブル41の位置に格納されている「変換アドレス」(例えば「004321」)と「オフセット」(例えば「0567」)とが組み合わされたアドレス(例えば「0043210567」)として構成されている。なお、仮想アドレスVaを物理アドレスPaに変換する方式などについては、上記の例に限られず、その他の公知の方式を採用することができる。   The virtual address “V1” is configured as an address (for example, “0012340567”) in which “page number” (for example, “001234”) and “offset” (for example, “0567”) are combined. Further, the physical address “P1” includes “translation address” (for example, “004321”) and “offset” (for example, stored in the position of the page table 41 identified from “page number” included in the virtual address “V1”. For example, “0567”) is combined as an address (for example, “0043210567”). The method for converting the virtual address Va into the physical address Pa is not limited to the above example, and other known methods can be employed.

アドレス変換部42は、ページテーブル41を参照して、CPU30から受けた仮想アドレスVaを対応する物理アドレスPaに変換するとともに、当該物理アドレスPaに基づいてメモリコントローラ50にアクセスする。   The address conversion unit 42 refers to the page table 41 to convert the virtual address Va received from the CPU 30 into the corresponding physical address Pa and accesses the memory controller 50 based on the physical address Pa.

優先度設定部43は、アドレス変換部42が変換した後の物理アドレスPaが所定の物理アドレスとしてのI/Oアドレス51に含まれているか否かに基づいて、当該物理アドレスPaに変換された仮想アドレスVaをアクセス先としたページに優先度を設定する。また優先度設定部43は、ページに設定した優先度を当該ページに対応付けて優先度テーブル44に登録させる。例えば、優先度設定部43は、ページがアクセスする物理アドレスPaにI/Oアドレス51が含まれている場合、ページには優先度として、最高の優先度である「0」を設定する。また、例えば、優先度設定部43は、I/Oアドレス51を物理アドレスPaに含むページから呼び出されたページである場合、つまり優先度「0」が設定されているページから呼び出されたページである場合、当該呼び出されたページの優先度として、中程度の優先度である「1」を設定する。さらに、例えば、優先度設定部43は、物理アドレスPaにI/Oアドレス51を含まないとともに、物理アドレスPaにI/Oアドレス51を含むページから呼び出されていないページである場合、当該ページの優先度として、最低の優先度である「2」を設定する。なお、本実施形態では、プログラムを読み込んだ際、全てのページの優先度を最低の優先度である「2」に設定するため、優先度設定部43は、ページに設定しようとする新たな優先度が、既に設定されている優先度より高い場合、既に設定されている優先度を新たな優先度に置き換える。一方、優先度設定部43は、ページに設定しようとする新たな優先度が、既に設定されている優先度より低い場合、既に設定されている優先度を新たな優先度に置き換えない。   The priority setting unit 43 is converted into the physical address Pa based on whether or not the physical address Pa converted by the address conversion unit 42 is included in the I / O address 51 as a predetermined physical address. A priority is set for a page having the virtual address Va as an access destination. The priority setting unit 43 also registers the priority set for the page in the priority table 44 in association with the page. For example, when the I / O address 51 is included in the physical address Pa accessed by the page, the priority setting unit 43 sets “0”, which is the highest priority, to the page. Further, for example, the priority setting unit 43 is a page called from a page including the I / O address 51 in the physical address Pa, that is, a page called from a page set with the priority “0”. In some cases, “1”, which is a medium priority, is set as the priority of the called page. Furthermore, for example, when the priority setting unit 43 is a page that does not include the I / O address 51 in the physical address Pa and is not called from a page that includes the I / O address 51 in the physical address Pa, the priority setting unit 43 As the priority, “2” which is the lowest priority is set. In this embodiment, when the program is read, the priority setting unit 43 sets the priority of all pages to “2”, which is the lowest priority, so that the priority setting unit 43 sets a new priority to be set for the page. If the degree is higher than the already set priority, the already set priority is replaced with a new priority. On the other hand, when the new priority to be set for the page is lower than the already set priority, the priority setting unit 43 does not replace the already set priority with the new priority.

優先度テーブル44は、ページと当該ページに対応する優先度とが設定されている。優先度テーブル44では、例えば、ページ「#1」には優先度「0」が、ページ「#2」には優先度「2」が、ページ「#3」には優先度「1」が、ページ「#4」には優先度「0」が、ページ「#5」には優先度「2」が、ページ「#6」には優先度「2」がそれぞれ対応付けられて保持されている。   In the priority table 44, a page and a priority corresponding to the page are set. In the priority table 44, for example, the priority “0” is assigned to the page “# 1”, the priority “2” is assigned to the page “# 2”, and the priority “1” is assigned to the page “# 3”. The page “# 4” is associated with the priority “0”, the page “# 5” is associated with the priority “2”, and the page “# 6” is associated with the priority “2”. .

メモリ配置変更部45は、優先度テーブル44を参照して、各ページのメモリ配置を当該ページに設定された優先度に応じて変更させる機能を有し、CPU30からの「メモリの再配置命令」に基づいて、各ページを優先度に応じたメモリ配置に再配置させる。メモリ配置変更部45には、優先度に対応付けられた配置先のメモリが設定されており、例えば、優先度「0」のページはRAM61のメモリが配置先とされている。また、メモリ配置変更部45には、優先度「1」のページは車載記憶装置23の仮想メモリが配置先とされ、優先度「2」のページはサーバ記憶装置13の仮想メモリが配置先とされている。   The memory arrangement changing unit 45 has a function of changing the memory arrangement of each page according to the priority set for the page with reference to the priority table 44, and a “memory rearrangement instruction” from the CPU 30. Based on the above, each page is rearranged in a memory arrangement corresponding to the priority. The memory placement changing unit 45 is set with a placement destination memory associated with the priority. For example, the memory of the RAM 61 is the placement destination of the page with the priority “0”. Further, in the memory arrangement changing unit 45, the virtual memory of the in-vehicle storage device 23 is assigned to the page with the priority “1”, and the virtual memory of the server storage device 13 is assigned to the page with the priority “2”. Has been.

メモリコントローラ50は、接続されているROM60、RAM61、I/Oインターフェース70に設けられているメモリのアドレスに対応付けられた物理アドレスPaを管理している。また、メモリコントローラ50は、アクセス要求された物理アドレスPaに格納されているデータDaを対象とする当該物理アドレスPaから取得してCPU30へ出力する。これによりCPU30は仮想アドレスVaにアクセスすることで、当該仮想アドレスVaに対応する物理アドレスPaからアクセス要求したデータDaを取得することができる。   The memory controller 50 manages a physical address Pa associated with an address of a memory provided in the connected ROM 60, RAM 61, and I / O interface 70. Further, the memory controller 50 acquires the data Da stored in the physical address Pa requested for access from the physical address Pa, and outputs it to the CPU 30. As a result, the CPU 30 can obtain the data Da requested for access from the physical address Pa corresponding to the virtual address Va by accessing the virtual address Va.

メモリコントローラ50には、I/Oアドレス51と内部アドレス52とが物理アドレスとして管理されている。I/Oアドレス51は、I/Oインターフェース70の内部メモリに対応付けられた物理アドレスであることから、当該I/Oアドレス51へのアクセスがI/Oインターフェース70に接続された各機器との間のデータの授受を可能にさせる。内部アドレス52は、ROM60やRAM61のメモリに対応付けられた物理アドレスであるため、当該内部アドレス52へのアクセスが内部アドレス52に対応付けられたROM60やRAM61のメモリとの間のデータの授受を可能にさせる。   In the memory controller 50, an I / O address 51 and an internal address 52 are managed as physical addresses. Since the I / O address 51 is a physical address associated with the internal memory of the I / O interface 70, access to the I / O address 51 is communicated with each device connected to the I / O interface 70. It is possible to exchange data between. Since the internal address 52 is a physical address associated with the memory of the ROM 60 or the RAM 61, access to the internal address 52 is exchanged with the memory of the ROM 60 or the RAM 61 associated with the internal address 52. Make it possible.

I/Oインターフェース70には、通信バスを介して車載通信装置21や車載記憶装置23が接続されるとともに、入力端子を介してマイク24やセンサ26が接続され、出力端子を介してスピーカ25が接続されている。I/Oインターフェース70は、マイク24及びセンサ26から入力される電気信号をメモリコントローラ50からアクセス可能なデータに変換するとともに、メモリコントローラ50から受けたデータをスピーカ25へ入力可能な電気信号に変換してスピーカ25に提供する。   The I / O interface 70 is connected to the in-vehicle communication device 21 and the in-vehicle storage device 23 via a communication bus, to the microphone 24 and the sensor 26 via an input terminal, and to the speaker 25 via an output terminal. It is connected. The I / O interface 70 converts electrical signals input from the microphone 24 and the sensor 26 into data accessible from the memory controller 50, and converts data received from the memory controller 50 into electrical signals input to the speaker 25. And provided to the speaker 25.

次に、図4を参照して、アドレス変換について説明する。
CPU30では、例えばプログラム32が実行されているとともに、実行されているプログラム32は第1〜第6のページ「#1」〜「#6」に分割されて管理されている。つまり、CPU30ではプログラム32の実行がページ単位で管理される。そしてCPU30では、プログラムに定められた実行順に従って分割された複数のページが順次実行されることでプログラムが実行される。なお、ページとは、CPU30において実行可能なプログラムの一部分であり、同実行可能なプログラムを所定のデータサイズにて細分化して得られたプログラムを1単位とする。プログラムが分割される所定のデータサイズ、つまりページのサイズは、例えば、4キロバイトである。
Next, address conversion will be described with reference to FIG.
In the CPU 30, for example, the program 32 is executed, and the executed program 32 is divided into first to sixth pages “# 1” to “# 6” and managed. That is, the CPU 30 manages the execution of the program 32 in units of pages. The CPU 30 executes the program by sequentially executing a plurality of pages divided in accordance with the execution order defined in the program. Note that a page is a part of a program that can be executed by the CPU 30, and a program obtained by subdividing the executable program with a predetermined data size is defined as one unit. The predetermined data size into which the program is divided, that is, the page size is, for example, 4 kilobytes.

CPU30では、第1のページ「#1」が仮想アドレス「V1」に設定され、第2のページ「#2」が仮想アドレス「V2」に設定され、第3のページ「#3」が仮想アドレス「V3」に設定されている。また、CPU30では、第4のページ「#4」が仮想アドレス「V4」に設定され、第5のページ「#5」が仮想アドレス「V5」に設定され、第6のページ「#6」が仮想アドレス「V6」に設定されている。さらに、第1のページ「#1」には、マイク24からの入力に対応する仮想アドレス「V11」へのアクセス命令が含まれているとともに、第4のページ「#4」には、スピーカ25への出力に対応する仮想アドレス「V41」へのアクセス命令が含まれている。   In the CPU 30, the first page “# 1” is set to the virtual address “V1”, the second page “# 2” is set to the virtual address “V2”, and the third page “# 3” is the virtual address. “V3” is set. In the CPU 30, the fourth page “# 4” is set to the virtual address “V4”, the fifth page “# 5” is set to the virtual address “V5”, and the sixth page “# 6” is set. The virtual address “V6” is set. Further, the first page “# 1” includes an access command to the virtual address “V11” corresponding to the input from the microphone 24, and the fourth page “# 4” includes the speaker 25. The access instruction to the virtual address “V41” corresponding to the output to is included.

メモリコントローラ50には、例えば、CPU30で実行されるプログラム32の第1〜第6のページ「#1」〜「#6」に対応する物理アドレスが管理されている。具体的には、メモリコントローラ50では、第1のページ「#1」に対応する領域が物理アドレス「P1」に設定され、第2のページ「#2」に対応する領域が物理アドレス「P2」に設定され、第3のページ「#3」に対応する領域が物理アドレス「P3」に設定されている。また、メモリコントローラ50では、第4のページ「#4」に対応する領域が物理アドレス「P4」に設定され、第5のページ「#5」に対応する領域が物理アドレス「P5」に設定され、第6のページ「#6」に対応する領域が物理アドレス「P6」に設定されている。さらに、メモリコントローラ50では、マイク24からの入力に対応するアドレスとして物理アドレス「P11」が設定されているとともに、スピーカ25への出力に対応するアドレスとして物理アドレス「P12」が設定されている。なお、メモリコントローラ50では、物理アドレス「P1」〜「P6」は、内部アドレス52のうちのRAM61のメモリに確保されているメモリアドレスに割当てられている。   For example, physical addresses corresponding to the first to sixth pages “# 1” to “# 6” of the program 32 executed by the CPU 30 are managed in the memory controller 50. Specifically, in the memory controller 50, the area corresponding to the first page “# 1” is set to the physical address “P1”, and the area corresponding to the second page “# 2” is set to the physical address “P2”. The area corresponding to the third page “# 3” is set to the physical address “P3”. In the memory controller 50, the area corresponding to the fourth page “# 4” is set to the physical address “P4”, and the area corresponding to the fifth page “# 5” is set to the physical address “P5”. The area corresponding to the sixth page “# 6” is set to the physical address “P6”. Further, in the memory controller 50, a physical address “P11” is set as an address corresponding to an input from the microphone 24, and a physical address “P12” is set as an address corresponding to an output to the speaker 25. In the memory controller 50, the physical addresses “P 1” to “P 6” are assigned to memory addresses secured in the memory of the RAM 61 in the internal address 52.

MMU40では、CPU30から受けた仮想アドレスVaが、メモリコントローラ50が管理する物理アドレスPaにアドレス変換される。例えば、MMU40では、図2に示されるページテーブル41を参照することによりアドレス変換部42が行うアドレス変換T1によって仮想アドレス「V1」が物理アドレス「P1」に変換され、同アドレス変換T2によって仮想アドレス「V2」が物理アドレス「P2」に変換される。また、アドレス変換部42が行うアドレス変換T3によって仮想アドレス「V3」が物理アドレス「P3」に変換され、同アドレス変換T4によって仮想アドレス「V4」が物理アドレス「P4」に変換される。さらに、アドレス変換部42が行うアドレス変換T5によって仮想アドレス「V5」が物理アドレス「P5」に変換され、同アドレス変換T6によって仮想アドレス「V6」が物理アドレス「P6」に変換される。また、アドレス変換部42が行うアドレス変換T11によって仮想アドレス「V11」が物理アドレス「P11」に変換され、同アドレス変換T12によって仮想アドレス「V41」が物理アドレス「P12」に変換される。   In the MMU 40, the virtual address Va received from the CPU 30 is converted into a physical address Pa managed by the memory controller 50. For example, in the MMU 40, the virtual address “V1” is converted into the physical address “P1” by the address conversion T1 performed by the address conversion unit 42 by referring to the page table 41 shown in FIG. “V2” is converted into a physical address “P2”. The virtual address “V3” is converted into the physical address “P3” by the address conversion T3 performed by the address conversion unit 42, and the virtual address “V4” is converted into the physical address “P4” by the address conversion T4. Further, the virtual address “V5” is converted into the physical address “P5” by the address conversion T5 performed by the address conversion unit 42, and the virtual address “V6” is converted into the physical address “P6” by the address conversion T6. Also, the virtual address “V11” is converted into the physical address “P11” by the address conversion T11 performed by the address conversion unit 42, and the virtual address “V41” is converted into the physical address “P12” by the address conversion T12.

つまり、CPU30は仮想アドレス「V1」に基づいて物理アドレス「P1」へアクセスすることができ、仮想アドレス「V2」に基づいて物理アドレス「P2」へアクセスすることができ、仮想アドレス「V3」に基づいて物理アドレス「P3」へアクセスすることができる。また、CPU30は仮想アドレス「V4」に基づいて物理アドレス「P4」へアクセスすることができ、仮想アドレス「V5」に基づいて物理アドレス「P5」へアクセスすることができ、仮想アドレス「V6」に基づいて物理アドレス「P6」へアクセスすることができる。さらに、CPU30は仮想アドレス「V11」に基づいて物理アドレス「P11」へアクセスすることができ、仮想アドレス「V41」に基づいて物理アドレス「P12」へアクセスすることができる。   That is, the CPU 30 can access the physical address “P1” based on the virtual address “V1”, can access the physical address “P2” based on the virtual address “V2”, and can access the physical address “V3”. Based on this, the physical address “P3” can be accessed. Further, the CPU 30 can access the physical address “P4” based on the virtual address “V4”, can access the physical address “P5” based on the virtual address “V5”, and can access the physical address “V6”. Based on this, the physical address “P6” can be accessed. Further, the CPU 30 can access the physical address “P11” based on the virtual address “V11”, and can access the physical address “P12” based on the virtual address “V41”.

続いて、ページへの優先度付与について図5を参照して説明する。
なおこの車載情報処理装置22では、プログラムの実行が開始されるとCPU30からメモリへのアクセスが生じる都度、MMU40によるアドレス変換が実行されるようになっている。
Next, giving priority to pages will be described with reference to FIG.
In the in-vehicle information processing apparatus 22, when the execution of the program is started, the address conversion by the MMU 40 is executed every time the CPU 30 accesses the memory.

CPU30は、プログラムの実行が開始されると、プログラムの処理に伴ってメモリアドレス等へアクセス命令を処理する(ステップS10)。例えば、アクセス命令は仮想アドレス「V1」へのアクセスを行うものとする。   When the execution of the program is started, the CPU 30 processes an access command to a memory address or the like along with the processing of the program (step S10). For example, it is assumed that the access command accesses the virtual address “V1”.

仮想アドレス「V1」へのアクセスが開始されると、当該仮想アドレス「V1」がMMU40によりアドレス変換される。すなわち、仮想アドレス「V1」を受けたMMU40は、該仮想アドレス「V1」に基づいてページテーブル41を検索する、いわゆるエントリを検索する(ステップS20)。MMU40は、この検索の結果得られたページに対応するエントリの履歴を保存する(ステップS21)とともに、こうして得られたページに対応するエントリから仮想アドレス「V1」に対応する物理アドレス「P1」を取得する、つまり仮想アドレス「V1」を物理アドレス「P1」に変換する(ステップS22)。また、MMU40は、この仮想アドレス「V1」にアクセスしたページが、直前にI/Oアドレスにアクセスしたページまでに介在される他のページの数に応じて優先度を付すようにしている。例えば、優先度「0」が設定されているページから0〜2つの他のページ介するページには優先度「1」を設定し、同3つ以上の他のページを介するページには優先度「2」を設定するようにしている(ステップS23)。これにより、I/Oアドレスにアクセスするページまでの間に介在するページの数に応じて優先度を設定することができるようになる。そして、MMU40は、次のアドレスをアドレス変換すべくステップS30に戻る。   When access to the virtual address “V1” is started, the virtual address “V1” is converted by the MMU 40. That is, the MMU 40 that has received the virtual address “V1” searches the page table 41 based on the virtual address “V1” to search for a so-called entry (step S20). The MMU 40 saves the history of entries corresponding to the page obtained as a result of this search (step S21), and obtains the physical address “P1” corresponding to the virtual address “V1” from the entry corresponding to the page thus obtained. Obtain, that is, convert the virtual address “V1” to the physical address “P1” (step S22). Further, the MMU 40 assigns a priority to the page accessed to the virtual address “V1” according to the number of other pages interposed until the page accessed to the I / O address immediately before. For example, a priority “1” is set for pages through 0 to 2 other pages from a page for which the priority “0” is set, and a priority “0” is set for pages through three or more other pages. 2 "is set (step S23). As a result, the priority can be set according to the number of pages intervening until the page accessing the I / O address. Then, the MMU 40 returns to Step S30 to convert the next address.

CPU30は、仮想アドレス「V1」がMMU40で物理アドレス「P1」に変換されることに伴い、そのアクセス命令のアクセス先が物理アドレス「P1」になるため、当該変換された物理アドレス「P1」から命令を読み込む、つまり命令をロードする(ステップS11)。これによりCPU30は、仮想アドレスVaに対応する物理アドレスPaにアクセスして当該物理アドレスPaから必要なデータを取得することができる。続いて、CPU30は、ロードされた命令が、データアクセス命令であるか否かを判断する(ステップS12)。ロードされた命令がデータアクセス命令ではなかった場合(ステップS12でNO)、CPU30は、次のアクセス命令を処理すべくステップS10に戻る。   As the virtual address “V1” is converted to the physical address “P1” by the MMU 40, the CPU 30 changes the access destination of the access instruction to the physical address “P1”. The instruction is read, that is, the instruction is loaded (step S11). Thus, the CPU 30 can access the physical address Pa corresponding to the virtual address Va and acquire necessary data from the physical address Pa. Subsequently, the CPU 30 determines whether or not the loaded instruction is a data access instruction (step S12). If the loaded instruction is not a data access instruction (NO in step S12), CPU 30 returns to step S10 to process the next access instruction.

一方、ロードされた命令がデータアクセス命令であった場合(ステップS12でYES)、CPU30は当該データアクセス命令を処理する(ステップS13)。このとき、例えば、データアクセス命令は仮想アドレス「V11」へのアクセスを行うものとする。   On the other hand, if the loaded instruction is a data access instruction (YES in step S12), the CPU 30 processes the data access instruction (step S13). At this time, for example, it is assumed that the data access instruction accesses the virtual address “V11”.

仮想アドレス「V11」へのアクセスが開始されると、当該仮想アドレス「V11」がMMU40によりアドレス変換される。すなわち、仮想アドレス「V11」を受けたMMU40は、該仮想アドレス「V11」に基づいてページテーブル41を検索する、いわゆるアドレスに対応するエントリの検索を実行する(ステップS30)。MMU40は、この検索の結果得られたエントリから仮想アドレス「V11」に対応する物理アドレス「P11」を取得する、つまり仮想アドレス「V11」を物理アドレス「P11」に変換する(ステップS31)。   When access to the virtual address “V11” is started, the virtual address “V11” is address-converted by the MMU 40. That is, the MMU 40 that has received the virtual address “V11” searches the page table 41 based on the virtual address “V11”, and searches for an entry corresponding to a so-called address (step S30). The MMU 40 acquires the physical address “P11” corresponding to the virtual address “V11” from the entry obtained as a result of this search, that is, converts the virtual address “V11” into the physical address “P11” (step S31).

CPU30は、仮想アドレス「V11」がMMU40で物理アドレス「P11」に変換されることに伴い、そのアクセス命令のアクセス先が物理アドレス「P11」になるため、当該変換された物理アドレス「P11」からデータを読み込む、つまりデータがロードされる(ステップS14)。これによりCPU30は、仮想アドレスVaに基づいて対応する物理アドレスPaにアクセスして当該物理アドレスPaから必要な情報を取得することができる。そしてCPU30は、次のアクセス命令を処理すべくステップS10に戻る。   As the virtual address “V11” is converted to the physical address “P11” by the MMU 40, the CPU 30 changes the access destination of the access instruction to the physical address “P11”. Data is read, that is, data is loaded (step S14). Thus, the CPU 30 can access the corresponding physical address Pa based on the virtual address Va and acquire necessary information from the physical address Pa. Then, the CPU 30 returns to step S10 to process the next access command.

なお、MMU40は、ステップS31にて仮想アドレス「V11」を物理アドレス「P11」に変換すると、当該物理アドレス「P11」がI/Oアドレスであるか否かを判断する(ステップS32)。物理アドレス「P11」がI/Oアドレスであると判断された場合(ステップS32でYES)、MMU40は、優先度テーブル44に対して、このデータアクセス命令を含むページの優先度を最高値の「0」に設定する(ステップS33)。なお、このデータアクセス命令を含むページはステップS21で保存されたページの履歴に基づいて、ステップS21にて処理された最新のページであることとが分かるため、優先度テーブル44に対して、このデータアクセス命令のあったページに対して優先度を設定することは容易に行うことができる。そしてMMU40は、次のデータアドレスをアドレス変換すべくステップS30に戻る。一方、物理アドレス「P11」がI/Oアドレスではないと判断された場合(ステップS32でNO)、MMU40は、次のデータアドレスをアドレス変換すべくステップS30に戻る。   When the MMU 40 converts the virtual address “V11” to the physical address “P11” in step S31, the MMU 40 determines whether the physical address “P11” is an I / O address (step S32). When it is determined that the physical address “P11” is an I / O address (YES in step S32), the MMU 40 sets the priority of the page including this data access instruction to the priority table 44 with the highest value “ 0 "is set (step S33). Since the page containing this data access command is found to be the latest page processed in step S21 based on the page history stored in step S21, the priority table 44 is Setting a priority for a page having a data access instruction can be easily performed. Then, the MMU 40 returns to step S30 to convert the next data address. On the other hand, when it is determined that the physical address “P11” is not an I / O address (NO in step S32), the MMU 40 returns to step S30 to convert the next data address.

この処理によって、図3に示すように、優先度テーブル44には、ページに対応する優先度が設定される。具体的には、アドレス変換T1に応じて第1のページ「#1」には優先度「0」が設定され、アドレス変換T2に応じて第2のページ「#2」には優先度「2」が設定され、アドレス変換T3に応じて第3のページ「#3」には優先度「1」が設定されるようになる。また、アドレス変換T4に応じて第4のページ「#4」には優先度「0」が設定され、アドレス変換T5に応じて第5のページ「#5」には優先度「2」が設定され、アドレス変換T6に応じて第6のページ「#6」には優先度「2」が設定されるようになる。   By this process, as shown in FIG. 3, the priority corresponding to the page is set in the priority table 44. Specifically, the priority “0” is set for the first page “# 1” according to the address translation T1, and the priority “2” is set for the second page “# 2” according to the address translation T2. ”Is set, and the priority“ 1 ”is set for the third page“ # 3 ”in accordance with the address translation T3. Further, the priority “0” is set for the fourth page “# 4” according to the address translation T4, and the priority “2” is set for the fifth page “# 5” according to the address translation T5. Accordingly, the priority “2” is set to the sixth page “# 6” in accordance with the address translation T6.

本実施形態の通信システムの作用について、図6及び図7を参照して説明する。
図6に示すように、車載情報処理装置22は、アプリケーションソフトウェアなどのプログラム32〜34の実行を開始すると、アクセス命令とデータアクセス命令との監視を開始する(ステップS40)とともに、当該監視の下で当該プログラムを一定時間動作させて各ページに優先度を付与させる(ステップS41)。つまり、各ページには、プログラムを一定時間動作させて得られるプログラムの動的な動作に基づいて優先度が付与される。例えば、各ページの優先度が、図3に示される優先度テーブル44のように設定されたものとする。
The operation of the communication system of this embodiment will be described with reference to FIGS.
As shown in FIG. 6, when the in-vehicle information processing apparatus 22 starts executing the programs 32 to 34 such as application software, the in-vehicle information processing apparatus 22 starts monitoring the access command and the data access command (step S40) and Then, the program is operated for a certain period of time to give priority to each page (step S41). That is, each page is given priority based on the dynamic operation of the program obtained by operating the program for a certain period of time. For example, it is assumed that the priority of each page is set as in the priority table 44 shown in FIG.

ページへの優先度の付与が終了すると、車載情報処理装置22は、所定の条件に基づいて「メモリの再配置命令」を実行することにより、ページに付された優先度に応じて各ページの配置を変更する(ステップS42)。本実施形態では、各ページの配置先は、優先度が「0」の場合はRAM61のメモリ、優先度が「1」の場合は車載記憶装置23に設けられた仮想メモリ、優先度が「2」の場合はサーバ記憶装置13に設けられた仮想メモリにそれぞれ定められているものとする。これによれば、CPU30からのアクセス速度としては、優先度が「0」のときは最も速く、優先度が「1」のときは優先度「0」に比べて遅く、優先度が「2」のときは優先度「0」及び「1」に比べて遅くなるようになる。なお、「メモリの再配置命令」が実行される所定の条件とは、一定時間の経過により優先度の付与が終了したこと、かつ、CPU30の処理能力にメモリを再配置させる処理を行う余裕がある場合などである。また、車両20の走行状態などを条件としても良い。   When the assignment of the priority to the page is finished, the in-vehicle information processing device 22 executes the “memory rearrangement instruction” based on a predetermined condition, so that each page is assigned according to the priority given to the page. The arrangement is changed (step S42). In the present embodiment, the placement destination of each page is the memory of the RAM 61 when the priority is “0”, the virtual memory provided in the in-vehicle storage device 23 when the priority is “1”, and the priority is “2”. ”In the virtual memory provided in the server storage device 13. According to this, the access speed from the CPU 30 is the fastest when the priority is “0”, slower than the priority “0” when the priority is “1”, and the priority is “2”. In this case, it becomes slower than priorities “0” and “1”. The predetermined condition for executing the “memory rearrangement instruction” is that the assignment of priority is completed after a lapse of a predetermined time, and that the processing capacity of the CPU 30 has a margin for performing the process of rearranging the memory. For example. Further, the traveling state of the vehicle 20 may be used as a condition.

そうすると車載情報処理装置22は、優先度テーブル44に従って、図7に示すように、第1及び第4のページ「#1」,「#4」は、それぞれRAM61に配置させ、第2,第5及び第6のページ「#2」,「#5」,「#6」はそれぞれサーバ記憶装置13に配置させ、第3のページ「#3」は車載記憶装置23に配置させる。つまり各ページは、優先度に基づいて、I/Oインターフェース70へアクセスするページを含めて、処理状態、例えば処理に要する時間などが調整されるようになる。なおページの仮想メモリへの配置や当該仮想メモリへ配置されたページへのアクセスなどは、OS31が有するメモリ管理機能などに基づいて実現される。   Then, the in-vehicle information processing apparatus 22 places the first and fourth pages “# 1” and “# 4” in the RAM 61 according to the priority table 44 as shown in FIG. The sixth page “# 2”, “# 5”, and “# 6” are arranged in the server storage device 13, and the third page “# 3” is arranged in the in-vehicle storage device 23. That is, for each page, the processing state, for example, the time required for processing, is adjusted based on the priority, including the page that accesses the I / O interface 70. Note that the placement of pages in virtual memory, access to pages placed in the virtual memory, and the like are realized based on the memory management function of the OS 31 and the like.

このメモリの再配置により、I/Oアドレス51へアクセスするページはCPU30からのアクセス速度の速い位置に配置され、I/Oアドレス51へアクセスが少ないページはCPU30からのアクセス速度の速くない位置に配置されるようになる。従って、I/Oアドレス51に対応するアドレスを介してアクセスされるマイク24やスピーカ25などは、それらを通じてのユーザの操作や、ユーザへの情報提供に要する時間の遅延を少ないものとすることができるようになる。特に、マイクなどを通じてのユーザが入力した情報に対する車載情報処理装置22の応答に時間がかかると、ユーザを戸惑わせるようなことも生じるため、ユーザを戸惑わせるような処理についてはその配置位置をRAM61にして応答速度を高く維持し、ユーザを戸惑わせないような処理については応答速度を低下させることができるようにもなる。このように本発明の車載情報処理装置22によるプログラムのメモリの再配置によれば、プログラムを分散配置させつつ、装置のユーザなどに対する反応速度の低下を抑制させることができるようになる。   Due to the rearrangement of the memory, the page accessing the I / O address 51 is arranged at a position where the access speed from the CPU 30 is fast, and the page where the access to the I / O address 51 is low is located at a position where the access speed from the CPU 30 is not fast. Will be placed. Accordingly, the microphone 24, the speaker 25, and the like accessed via the address corresponding to the I / O address 51 may reduce the time delay required for the user's operation and the provision of information to the user. become able to. In particular, if the response of the in-vehicle information processing device 22 to the information input by the user through a microphone or the like takes time, the user may be confused. It is possible to reduce the response speed for a process that keeps the response speed high and keeps the user from being confused. As described above, according to the rearrangement of the memory of the program by the in-vehicle information processing apparatus 22 of the present invention, it is possible to suppress a decrease in the reaction speed with respect to the user or the like of the apparatus while distributing the program.

また、プログラムの実際の動作に基づいて、動的に優先度を設定するようにしていることから、プログラムに予め優先度を設定するような手間を割愛することができるようになるとともに、静的評価では判断することのできない実行頻度などの状況も考慮されて優先度が設定されるようになる。このため、プログラムの分散配置がより好適かつ適正に行えるようになる。   In addition, since the priority is dynamically set based on the actual operation of the program, it is possible to eliminate the trouble of setting the priority in advance in the program, Priorities are set in consideration of situations such as execution frequency that cannot be determined by evaluation. For this reason, the program can be distributed and arranged more suitably and appropriately.

以上説明したように、本実施形態の情報処理システムによれば、以下に列記するような効果が得られるようになる。
(1)CPU30にてプログラム32〜34が実行される際、そのプログラム32〜34がどのようにページとして分割されるか把握することは困難であるため、プログラム作成時にページに優先度を予め付すことは困難である。また、プログラム中に設定された条件により実行される命令が変化するプログラムの動作をプログラムの作成時の静的な状態で的確に評価することも容易ではない。
As described above, according to the information processing system of this embodiment, the effects listed below can be obtained.
(1) When the programs 32 to 34 are executed by the CPU 30, it is difficult to grasp how the programs 32 to 34 are divided into pages. It is difficult. In addition, it is not easy to accurately evaluate the operation of a program in which an instruction to be executed changes according to a condition set in the program in a static state when the program is created.

このような構成によれば、プログラム32がページに分割され、CPU30で実行されている状態において各ページに優先度を付すことができるようになるため、プログラム32を動的な作動に基づいて評価することができるようになる。つまり、所定の物理アドレスPa(I/Oアドレス51)にアクセスするか否かに基づく優先度を動的かつ的確に各ページに付与することができるようになる。こうした優先度に基づいて、プログラム32の分散配置を、現に要求される機能に応じて容易かつ高効率に行うことができるようになる。   According to such a configuration, since the program 32 is divided into pages and priority can be given to each page while being executed by the CPU 30, the program 32 is evaluated based on dynamic operation. Will be able to. That is, the priority based on whether or not to access a predetermined physical address Pa (I / O address 51) can be dynamically and accurately assigned to each page. Based on such priorities, the distributed arrangement of the program 32 can be easily and highly efficiently performed according to the function currently required.

また、I/Oアドレス51にアクセスするページには高い優先度を設定し、それ以外のページには低い優先度を設定するようにすることで、I/Oアドレス51にアクセスするページの処理を迅速にするようなこともできるようになる。   In addition, by setting a high priority to a page that accesses the I / O address 51 and setting a low priority to other pages, processing of the page that accesses the I / O address 51 is performed. You can also do things quickly.

(2)ユーザの利便性に影響するマイク24やスピーカ25などの機器等が接続されるI/Oインターフェース70にアクセスするページに適切な優先度を付すことができる。ユーザの利便性を考慮すれば、特にI/Oインターフェース70の応答は迅速であることが好ましい。また優先度に基づけば、こうしたI/Oインターフェース70にアクセスするページの処理状態、例えば処理に要する時間などを調整することができるようになる。   (2) Appropriate priorities can be assigned to pages that access the I / O interface 70 to which devices such as the microphone 24 and the speaker 25 that affect user convenience are connected. Considering the convenience of the user, it is preferable that the response of the I / O interface 70 is particularly quick. Further, based on the priority, it becomes possible to adjust the processing state of the page accessing the I / O interface 70, for example, the time required for the processing.

(3)所定の物理アドレスPaにアクセスするページからアクセスされる他のページにも優先度を付すことができるとともに、当該他のページに付す優先度を先の所定の物理アドレスPa、いわゆるI/Oアドレス51にアクセスするページに付す優先度と相違させるようにした。つまり、I/Oアドレス51へアクセスするページとの間に介在する他のページ数、いわゆるI/Oアドレス51までの距離に応じてページに優先度を付すことができるようになる。これにより、I/Oアドレス51へアクセスするページ、及び、他のページを優先度に応じてメモリの配置を変えたりするようなことができるようにもなる。   (3) Priorities can be given to other pages accessed from a page accessing a predetermined physical address Pa, and the priority given to the other pages is assigned to a predetermined physical address Pa, so-called I / The priority assigned to the page accessing the O address 51 is different from the priority assigned to the page. That is, priority can be given to pages according to the number of other pages interposed between pages accessing the I / O address 51, that is, the distance to the so-called I / O address 51. As a result, it is possible to change the memory arrangement of the page accessing the I / O address 51 and other pages according to the priority.

(4)高い優先度が設定されたページを、例えば、応答性が高くなるように調整することができるようになる。これにより、例えばI/Oインターフェース70を用いる処理に関しての調整の幅が拡がり利便性が向上される。   (4) A page with a high priority can be adjusted so that, for example, the responsiveness becomes high. Thereby, for example, the range of adjustment regarding processing using the I / O interface 70 is expanded, and convenience is improved.

(5)各ページに対応する物理アドレスがそれらページに設定された優先度に応じて変更されるようになる。すなわち、優先度に応じて各ページの配置を変更することができるためページの好適な分散配置が可能にもなる。   (5) The physical address corresponding to each page is changed according to the priority set for those pages. In other words, since the arrangement of each page can be changed according to the priority, a suitable distributed arrangement of pages can be achieved.

(6)各ページの配置が、優先度が高いページの応答性が高くなるように調整することができる。これにより、例えばI/Oインターフェース70を用いる処理に関する応答性が高くなりユーザの利便性が向上する。   (6) The arrangement of each page can be adjusted so that the responsiveness of a page with a high priority becomes high. Thereby, for example, responsiveness regarding processing using the I / O interface 70 is increased, and convenience for the user is improved.

(7)車両20に搭載される車載情報処理装置22におけるプログラムのページの配置が、車載された各種装置であるマイク24やスピーカ25に対応するI/Oインターフェース70へのアクセス態様に応じて定められるようになる。これにより、車載されたマイク24やスピーカ25などにアクセスするページの優先度を高くしたりすることもできるとともに、当該優先度に応じてページを好適に配置するように調整することもできるようになる。   (7) The arrangement of program pages in the in-vehicle information processing device 22 mounted on the vehicle 20 is determined according to the access mode to the I / O interface 70 corresponding to the microphone 24 and the speaker 25 which are various on-vehicle devices. Be able to. As a result, it is possible to increase the priority of a page that accesses the vehicle-mounted microphone 24, the speaker 25, or the like, and to adjust the page appropriately according to the priority. Become.

(8)優先度の低い又は設定されないページがサーバ10に配置されるようになるため、車載情報処理装置22としてのプログラムの処理負荷が低下するようになるとともに、I/Oアドレス51に近いページは車両20に配置して処理速度の維持を図るようにすることができるようになる。これにより、プログラムの処理負荷の増加が生じた場合であれ、ページを好適に分散配置させて、処理負荷の増加に対応することができるようになる。   (8) Since pages with low priority or are not set are arranged on the server 10, the processing load of the program as the in-vehicle information processing apparatus 22 is reduced, and a page close to the I / O address 51 Can be arranged on the vehicle 20 to maintain the processing speed. As a result, even when an increase in the processing load of the program occurs, it is possible to deal with an increase in the processing load by suitably distributing and arranging pages.

(その他の実施形態)
なお、上記実施形態は、例えば以下のような態様にて実施することもできる。
・上記実施形態では、車載記憶装置23がHDDから構成されている場合について例示した。しかしこれに限らず、車載記憶装置は、必要な情報を記憶することができる不揮発性の記憶装置であれば、フラッシュメモリや、ソリッドステートドライブ(SSD)などであってもよい。これにより、情報処理システムの構成の自由度の向上などが図られるようになる。
(Other embodiments)
In addition, the said embodiment can also be implemented in the following aspects, for example.
In the above embodiment, the case where the in-vehicle storage device 23 is configured by an HDD is illustrated. However, the present invention is not limited to this, and the in-vehicle storage device may be a flash memory or a solid state drive (SSD) as long as it is a nonvolatile storage device that can store necessary information. As a result, the degree of freedom in the configuration of the information processing system can be improved.

・上記実施形態では、I/Oインターフェース70には車両速度を検出するセンサ26が1つ接続される場合について例示した。しかしこれに限らず、センサは、車両に備えられているセンサであれば、車両の加減速度を検出するものや、エンジンの回転数を検出するものや、ステアリング角度を検出するものや、エンジンなどの温度計や、GPSなどの位置を検出するものや、湿度計などの情報が入力されてもよい。   In the above embodiment, the case where one sensor 26 for detecting the vehicle speed is connected to the I / O interface 70 is illustrated. However, the present invention is not limited to this. If the sensor is a sensor provided in the vehicle, the sensor detects the acceleration / deceleration of the vehicle, detects the engine speed, detects the steering angle, engine, etc. Information such as a thermometer, a position detection device such as a GPS, and a hygrometer may be input.

また、I/Oインターフェースに接続されるセンサの数も1つに限らず、2つ以上接続されていてもよい。これにより、情報処理システムの構成の自由度の向上などが図られるようになる。   Further, the number of sensors connected to the I / O interface is not limited to one, and two or more sensors may be connected. As a result, the degree of freedom in the configuration of the information processing system can be improved.

・上記実施形態では、優先度「0」が設定されているページから0〜2つの他のページ介するページには優先度「1」を設定し、同3つ以上の他のページを介するページには優先度「2」を設定する場合について例示した。しかしこれに限らず、優先度を設定する際、介する他のページの数は任意に設定可能である。例えば、当該ページからI/Oアドレスにアクセスするページまでの数を算出して、当該算出された数をページの優先度として付すようにしてもよい。これにより、優先度の設定、すなわちページの再配置をより一層適切に行うことができるようになる。   In the above embodiment, the priority “1” is set for pages through 0 to 2 other pages from the page for which the priority “0” is set, and the pages through the other three or more other pages are set. Exemplifies the case where the priority “2” is set. However, the present invention is not limited to this, and when setting the priority, the number of other pages to be interposed can be arbitrarily set. For example, the number from the page to the page accessing the I / O address may be calculated, and the calculated number may be assigned as the page priority. Thereby, priority setting, that is, page rearrangement can be performed more appropriately.

・上記実施形態では、I/Oアドレス51にアクセスしない、つまりデータアクセス命令を含まないページにも優先度を付す場合に付いて例示した。しかしこれに限らず、I/Oアドレスにアクセスしない、つまりデータアクセス命令を含まないページには優先度を付さないようにしてもよい。例えば、全てのページに予め最低の優先度を付しておくようにすることで優先度を参照することができるようになる。もしくは、優先度が設定されていないページについては、その優先度は最低レベルとしてページの再配置を行うようにすればよい。これにより、こうした情報処理装置における優先度の設定が簡単になるとともに、ページの再配置が容易になるようになる。   In the above embodiment, the case where the priority is given to the page that does not access the I / O address 51, that is, does not include the data access instruction is exemplified. However, the present invention is not limited to this, and priority may not be given to a page that does not access the I / O address, that is, does not include a data access instruction. For example, the priority can be referred to by assigning the lowest priority to all pages in advance. Alternatively, for a page for which priority is not set, the page may be rearranged with the lowest priority. As a result, priority setting in such an information processing apparatus is simplified, and page rearrangement is facilitated.

・上記実施形態では、優先度が「0」,「1」,「2」の三種類である場合について例示した。しかしこれに限らず、付された優先度に対して対応する配置先を設定することができるのであれば、優先度は四種類以上であってもよい。また、優先度が設定されないような場合、その優先度は最も低いと判断するようにしてもよい。これにより、情報処理システムの設計の自由度の向上などが図られるようになる。   In the above embodiment, the case where there are three types of priority, “0”, “1”, and “2” is illustrated. However, the present invention is not limited to this, and there may be four or more priorities as long as corresponding placement destinations can be set for the assigned priorities. Further, when the priority is not set, it may be determined that the priority is the lowest. As a result, the degree of freedom in designing the information processing system can be improved.

・上記実施形態では、車両20は、ドライバーの運転操作により運転される自動車などである場合について例示した。しかしこれに限らず、車両は、情報処理装置のI/Oインターフェースに接続された機器からデータを入出力される車両であれば、運転操作にドライバーが関与するかしないかにかかわらず、例えば、自動運転される搬送車などに適用されてもよい。   In the above embodiment, the case where the vehicle 20 is an automobile or the like driven by the driving operation of the driver is illustrated. However, the present invention is not limited to this, so long as the vehicle is a vehicle that inputs and outputs data from a device connected to the I / O interface of the information processing device, regardless of whether the driver is involved in the driving operation, for example, You may apply to the carrier vehicle etc. which drive automatically.

・上記実施形態では、車載情報処理装置22は、車両20を運転するドライバーに対して各種の運転操作を支援するための各種制御等を行うための装置である場合について例示した。しかしこれに限らず、車載情報処理装置は、車両に設けられている各種制御装置に対し、I/Oアドレスから得られるデータに基づく情報を迅速性に提供するようにしてもよい。例えば、図1に示す、センサ26から得られた速度を対応するI/Oアドレス51にアクセスして利用するプログラム32〜34が、その速度の利用がプログラムの内部的な利用であったとして迅速に利用することができるようにすることもできる。これにより、こうした情報処理装置の設計自由度や利便性が向上されるようになる。   -In above-mentioned embodiment, the case where the vehicle-mounted information processing apparatus 22 was an apparatus for performing various control etc. for assisting various driving operation with respect to the driver who drives the vehicle 20 was illustrated. However, the present invention is not limited to this, and the in-vehicle information processing apparatus may promptly provide information based on data obtained from the I / O address to various control apparatuses provided in the vehicle. For example, the programs 32 to 34 shown in FIG. 1 that access and use the speed obtained from the sensor 26 by accessing the corresponding I / O address 51 are promptly assumed that the use of the speed is an internal use of the program. It can also be made available for use. Thereby, the design freedom and convenience of such an information processing apparatus are improved.

・上記実施形態では、優先度に基づいて各ページを分散配置させる場合について例示した。しかしこれに限らず、各ページに付された優先度に基づいて、車載情報処理装置とサーバ情報処理装置とでの分散実行可能に各ページを再配置させ、再配置された各ページを車両とサーバとで分散処理するようにしてもよい。これによれば、車両とサーバでの処理により、プログラムの処理に要する時間を短縮させたり、特に車両の処理負荷を減少させたりすることができるようになる。   In the above embodiment, the case where each page is distributed and arranged based on the priority is illustrated. However, the present invention is not limited to this, and based on the priority assigned to each page, each page is rearranged so that the in-vehicle information processing apparatus and the server information processing apparatus can be executed in a distributed manner. You may make it carry out distributed processing with a server. According to this, the time required for the processing of the program can be shortened, and particularly the processing load of the vehicle can be reduced by the processing of the vehicle and the server.

・上記実施形態では、優先度に基づいて、メモリ配置変更部が各ページを分散配置させる場合について例示した。しかしこれに限らず、ページとプログラムコードとの対応関係に基づいてプログラムコードの各部に優先度を対応付け、当該対応付けられた優先度に基づいて当該プログラムを車両とサーバとで分散処理可能なプログラムに再構築するようにしてもよい。これによれば、分散配置可能なプログラムの作成が支援されるとともに、プログラムの動的な評価に基づいて、分散処理可能なプログラムを作成することができ、これによってプログラムの車両における処理時間の短縮や処理負荷の軽減を図ることができるようになる。   In the above embodiment, the case where the memory arrangement changing unit distributes each page based on the priority is illustrated. However, the present invention is not limited to this, and priority is associated with each part of the program code based on the correspondence between the page and the program code, and the program can be distributed between the vehicle and the server based on the associated priority. You may make it rebuild in a program. According to this, creation of a program that can be distributed and distributed is supported, and a program that can be distributed and processed can be created based on dynamic evaluation of the program, thereby reducing the processing time of the program in the vehicle. And the processing load can be reduced.

10…サーバ、11…サーバ通信装置、12…サーバ情報処理装置、13…サーバ記憶装置、20…車両、21…車載通信装置、22…車載情報処理装置、23…車載記憶装置、24…マイク、25…スピーカ、26…センサ、30…CPU、31…OS、32〜34…プログラム、40…メモリ管理ユニット(MMU)、41…ページテーブル、42…アドレス変換部、43…優先度設定部、44…優先度テーブル、45…メモリ配置変更部、50…メモリコントローラ、51…I/Oアドレス、52…内部アドレス、60…ROM(不揮発性メモリ)、61…RAM(揮発性メモリ)、70…I/O(入出力)インターフェース。   DESCRIPTION OF SYMBOLS 10 ... Server, 11 ... Server communication apparatus, 12 ... Server information processing apparatus, 13 ... Server storage apparatus, 20 ... Vehicle, 21 ... In-vehicle communication apparatus, 22 ... In-vehicle information processing apparatus, 23 ... In-vehicle storage apparatus, 24 ... Microphone, 25 ... Speaker, 26 ... Sensor, 30 ... CPU, 31 ... OS, 32-34 ... Program, 40 ... Memory management unit (MMU), 41 ... Page table, 42 ... Address conversion unit, 43 ... Priority setting unit, 44 ... priority table, 45 ... memory arrangement changing unit, 50 ... memory controller, 51 ... I / O address, 52 ... internal address, 60 ... ROM (nonvolatile memory), 61 ... RAM (volatile memory), 70 ... I / O (input / output) interface.

Claims (11)

演算装置で実行されるプログラムのアクセス先のメモリアドレスを仮想アドレスと物理アドレスとの間で変換するアドレス変換装置を備える情報処理装置であって、
前記アドレス変換装置は、プログラムの実行に際して細分化されたプログラムの1単位であるページの前記演算装置による実行によってアクセスされるアドレスに所定の物理アドレスが含まれるか否かに基づいて当該実行されたページに分散配置の目安とする優先度を設定する
ことを特徴とする情報処理装置。
An information processing apparatus including an address conversion device that converts a memory address of an access destination of a program executed by an arithmetic device between a virtual address and a physical address,
The address conversion device is executed based on whether or not a predetermined physical address is included in an address accessed by execution by the arithmetic device of a page that is a unit of a program fragmented when the program is executed. An information processing apparatus characterized in that a priority is set for a page as a guide for distributed arrangement.
前記所定の物理アドレスは入出力インターフェースに対応するアドレスである
請求項1に記載の情報処理装置。
The information processing apparatus according to claim 1, wherein the predetermined physical address is an address corresponding to an input / output interface.
前記所定の物理アドレスにアクセスしたページからアクセスされる他のページに前記所定の物理アドレスにアクセスしたページに設定される優先度とは異なる優先度が設定される
請求項1又は2に記載の情報処理装置。
The information according to claim 1, wherein a priority different from a priority set for a page accessing the predetermined physical address is set to another page accessed from the page accessing the predetermined physical address. Processing equipment.
前記所定の物理アドレスにアクセスしたページには当該ページからアクセスされる他のページに設定される優先度よりも高い優先度が設定される
請求項3に記載の情報処理装置。
The information processing apparatus according to claim 3, wherein a priority higher than a priority set for another page accessed from the page is set for the page accessing the predetermined physical address.
前記アドレス変換装置には、各ページに設定された優先度に応じてそれらページが配置される物理アドレスを変更する配置変更部が設けられており、
前記各ページは、設定された優先度に応じて配置される物理アドレスが前記配置変更部により変更される
請求項1〜4のいずれか一項に記載の情報処理装置。
The address translation device is provided with an arrangement changing unit that changes physical addresses at which the pages are arranged according to the priority set for each page,
The information processing apparatus according to any one of claims 1 to 4, wherein a physical address arranged in each page is changed according to a set priority by the arrangement changing unit.
前記配置変更部は、前記優先度の高さに応じて前記演算装置からのアクセス時間が短くなるように各ページを配置させる物理アドレスを変更する
請求項5に記載の情報処理装置。
The information processing apparatus according to claim 5, wherein the arrangement changing unit changes a physical address at which each page is arranged so that an access time from the arithmetic device is shortened according to the high priority.
前記情報処理装置は車両に搭載されている
請求項1〜6のいずれか一項に記載の情報処理装置。
The information processing apparatus according to any one of claims 1 to 6, wherein the information processing apparatus is mounted on a vehicle.
前記車両は外部に設けられたサーバに無線通信を介して通信可能に構成されており、
前記配置変更部は、前記優先度の低い又は設定されないページを前記サーバのメモリアドレスに配置させる
請求項7に記載の情報処理装置。
The vehicle is configured to be able to communicate with a server provided outside via wireless communication,
The information processing apparatus according to claim 7, wherein the arrangement changing unit arranges a page having a low priority or is not set at a memory address of the server.
演算装置で実行されるプログラムのアクセス先のメモリアドレスを仮想アドレスと物理アドレスとの間で変換するアドレス変換装置を備える情報処理装置が車両に設けられるとともに、前記車両と無線通信を介して通信可能なサーバが車両の外部に設けられてなる情報処理システムであって、
前記アドレス変換装置は、プログラムの実行に際して細分化されたプログラムの1単位であるページの前記演算装置による実行によってアクセスされるアドレスに所定の物理アドレスが含まれるか否かに基づいて当該実行されたページに分散配置の目安とする優先度を設定するものであって、この設定した優先度に応じて各ページの配置態様を変更する配置変更部を備え、
前記配置変更部は、前記優先度の低い又は設定されないページを前記サーバのメモリアドレスに配置させる
ことを特徴とする情報処理システム。
An information processing device including an address conversion device that converts a memory address of an access destination of a program executed by the arithmetic device between a virtual address and a physical address is provided in the vehicle, and can communicate with the vehicle via wireless communication An information processing system in which a simple server is provided outside the vehicle,
The address conversion device is executed based on whether or not a predetermined physical address is included in an address accessed by execution by the arithmetic device of a page that is a unit of a program fragmented when the program is executed. A priority is set as a guideline for distributed placement on a page, and a layout changing unit that changes the layout mode of each page according to the set priority is provided.
The information processing system, wherein the arrangement changing unit arranges a page having a low priority or is not set at a memory address of the server.
演算装置で実行されるプログラムのアクセス先のメモリアドレスを仮想アドレスと物理アドレスとの間で変換しつつ情報処理する情報処理方法であって、
プログラムの実行に際して細分化されたプログラムの1単位であるページの前記演算装置による実行によってアクセスされるアドレスに所定の物理アドレスが含まれるか否かに基づいて当該実行されたページに分散配置の目安とする優先度を設定する
ことを特徴とする情報処理方法。
An information processing method for performing information processing while converting a memory address of an access destination of a program executed on an arithmetic device between a virtual address and a physical address,
A standard for distributed arrangement on the executed page based on whether or not a predetermined physical address is included in an address accessed by execution by the arithmetic unit of a page that is a unit of a program fragmented when executing the program An information processing method characterized by setting priority.
前記所定の物理アドレスを入出力インターフェースに対応するアドレスとする
請求項10に記載の情報処理方法。
The information processing method according to claim 10, wherein the predetermined physical address is an address corresponding to an input / output interface.
JP2011285700A 2011-12-27 2011-12-27 Information processing device, information processing system, and information processing method Pending JP2013134680A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011285700A JP2013134680A (en) 2011-12-27 2011-12-27 Information processing device, information processing system, and information processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011285700A JP2013134680A (en) 2011-12-27 2011-12-27 Information processing device, information processing system, and information processing method

Publications (1)

Publication Number Publication Date
JP2013134680A true JP2013134680A (en) 2013-07-08

Family

ID=48911316

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011285700A Pending JP2013134680A (en) 2011-12-27 2011-12-27 Information processing device, information processing system, and information processing method

Country Status (1)

Country Link
JP (1) JP2013134680A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021099785A (en) * 2019-12-20 2021-07-01 インテル コーポレイション Automated learning technology to partition computer applications for heterogeneous systems
JP2021196971A (en) * 2020-06-16 2021-12-27 株式会社デンソー Control system, control method, control program, in-vehicle control apparatus, and server device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021099785A (en) * 2019-12-20 2021-07-01 インテル コーポレイション Automated learning technology to partition computer applications for heterogeneous systems
JP2021196971A (en) * 2020-06-16 2021-12-27 株式会社デンソー Control system, control method, control program, in-vehicle control apparatus, and server device

Similar Documents

Publication Publication Date Title
EP2543963B1 (en) Method of updating a database of a navigation device and navigation device associated thereto
US20170075614A1 (en) Memory system and host apparatus
KR101812727B1 (en) Systems and methods of executing multiple hypervisors
EP2751698B1 (en) Computer system with processor local coherency for virtualized input/output
KR102849632B1 (en) Storage device performing hashing-based translation between logical address and physical address
JPWO2011055447A1 (en) Vehicle gateway device
US12014163B2 (en) OTA master, update control method, non-transitory storage medium, and OTA center
KR102211298B1 (en) Data transmission logic for data transmission between sensors and planning and control of autonomous vehicles
US20160342342A1 (en) Information processing device, information processing system, and data access method
JPWO2020183954A1 (en) Vehicle control system, vehicle control method and vehicle control program
CN104104705B (en) The cut-in method and equipment of distributed memory system
WO2015180493A1 (en) Method, apparatus, and system for processing data storage
JP2009176200A (en) Data processing apparatus and mount method of logical drive
EP2130120A1 (en) Data update system and computer program
JP7378633B2 (en) Map data update device and map data update method
JP2013134680A (en) Information processing device, information processing system, and information processing method
US10901767B2 (en) Data locality for hyperconverged virtual computing platform
JP4454648B2 (en) Navigation device
JP2021092875A (en) Information processing device and information processing method
US10872174B2 (en) Information processing device, information processing method, and computer program product
CN113918311B (en) Soft interrupt routing method of multi-core system and method and chip for responding soft interrupt
JP7344109B2 (en) Resource allocation system, server, computing device
WO2020110273A1 (en) Route search assistance device, route search assistance method, and computer-readable recording medium
CN109983442A (en) System and method for Emergency Maintenance vehicle computer
US20190236076A1 (en) Computer and cache control method