IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ バイドゥ オンライン ネットワーク テクノロジー(ペキン) カンパニー リミテッドの特許一覧

<>
  • 特許-情報処理用方法及び装置 図1
  • 特許-情報処理用方法及び装置 図2
  • 特許-情報処理用方法及び装置 図3
  • 特許-情報処理用方法及び装置 図4
  • 特許-情報処理用方法及び装置 図5
  • 特許-情報処理用方法及び装置 図6
  • 特許-情報処理用方法及び装置 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2021-12-23
(45)【発行日】2022-01-18
(54)【発明の名称】情報処理用方法及び装置
(51)【国際特許分類】
   G06F 9/30 20180101AFI20220111BHJP
   G06F 9/38 20060101ALI20220111BHJP
   G06F 15/80 20060101ALI20220111BHJP
【FI】
G06F9/30 310E
G06F9/38 370C
G06F15/80
【請求項の数】 13
【外国語出願】
(21)【出願番号】P 2020096666
(22)【出願日】2020-06-03
(65)【公開番号】P2021111313
(43)【公開日】2021-08-02
【審査請求日】2020-06-09
(31)【優先権主張番号】201911402401.9
(32)【優先日】2019-12-31
(33)【優先権主張国・地域又は機関】CN
(73)【特許権者】
【識別番号】512015127
【氏名又は名称】バイドゥ オンライン ネットワーク テクノロジー(ペキン) カンパニー リミテッド
(74)【代理人】
【識別番号】110000796
【氏名又は名称】特許業務法人三枝国際特許事務所
(72)【発明者】
【氏名】ヤン ビーボー
(72)【発明者】
【氏名】ヤン シャオピン
(72)【発明者】
【氏名】ティエン チャオ
(72)【発明者】
【氏名】ウェン ジュンフイ
【審査官】坂庭 剛史
(56)【参考文献】
【文献】中国特許出願公開第109857460(CN,A)
【文献】中国特許出願公開第110502278(CN,A)
【文献】米国特許出願公開第2018/0046903(US,A1)
【文献】特表2008-530689(JP,A)
【文献】特開2000-250895(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 9/30
G06F 9/38
G06F 15/80
(57)【特許請求の範囲】
【請求項1】
情報処理用方法であって、
取得された命令の命令オペコードに基づき、レジスタ選択情報、ベースアドレス情報及び読み取り対象データ長を含む専用命令を含む前記命令の命令タイプを確定することと、前記命令が専用命令であると判定されたことに応答し、前記専用命令を事前設置された演算装置に送信し、前記演算装置は、
前記レジスタ選択情報に基づいて事前設置されたコンフィギュレーションレジスタセットからコンフィギュレーションレジスタセットを選択して目標コンフィギュレーションレジスタセットとすることと、
前記ベースアドレス情報及び前記読み取り対象データ長に基づき、前記目標コンフィギュレーションレジスタセットからコンフィギュレーション情報を読み出すことと、
前記コンフィギュレーション情報に対して事前設定された演算を実行することと、
を含む演算ステップを実行することと、を備える情報処理用方法。
【請求項2】
命令タイプにはさらに、事前設置されたレジスタセットからレジスタを確定するための第1のレジスタ確定情報、第2のレジスタ確定情報及び第3のレジスタ確定情報を含む汎用命令が含まれ、
前記方法はさらに、前記命令が汎用命令であると判定されたことに応答し、
前記第1のレジスタ確定情報により確定されたレジスタにおけるデータを取得して第1のオペランドとすることと、
前記第2のレジスタ確定情報により確定されたレジスタにおけるデータを取得して第2のオペランドとすることと、
前記第1のオペランドおよび前記第2のオペランドに対して事前設定された操作を行って操作結果を取得することと、
前記操作結果を前記第3のレジスタ確定情報により確定されたレジスタに格納することと、
を備える操作ステップを実行することを備える請求項1に記載の方法。
【請求項3】
命令を取得する前に、前記方法はさらに、事前設定されたコンフィギュレーション情報を事前設置されたメモリに記憶する、請求項1に記載の方法。
【請求項4】
前記方法はさらに、
DMAコントローラの、転送対象データを示すためのデータ転送コンフィギュレーション情報を設定することと、
起動命令を前記DMAコントローラに送信することであって、それによって、前記DMAコントローラが起動命令を受信した後、前記データ転送コンフィギュレーション情報に基づいて前記メモリに記憶されたコンフィギュレーション情報を前記コンフィギュレーションレジスタセットに転送するデータ転送ステップを実行することと、
を備える請求項3に記載の方法。
【請求項5】
前記データ転送コンフィギュレーション情報に基づいて前記メモリに記憶されたコンフィギュレーション情報を前記コンフィギュレーションレジスタセットに転送することは、
前記コンフィギュレーションレジスタセットの状態を確定することと、
確定された状態に基づいて前記メモリからコンフィギュレーション情報を前記コンフィギュレーションレジスタセットに転送することと、
を備える請求項4に記載の方法。
【請求項6】
情報処理用装置と演算装置とを備える情報処理システムであって、
取得された命令の命令オペコードに基づき、レジスタ選択情報、ベースアドレス情報及び読み取り対象データ長を含む専用命令を含む前記命令の命令タイプを確定するように構成される確定手段と、
前記命令が専用命令であると判定されたことに応答し、前記専用命令を事前設置された演算装置に送信するように構成される演算手段と
前記専用命令を受信したことに応答して
前記レジスタ選択情報に基づいて事前設置されたコンフィギュレーションレジスタセットからコンフィギュレーションレジスタセットを選択して目標コンフィギュレーションレジスタセットとすることと、
前記ベースアドレス情報及び前記読み取り対象データ長に基づき、前記目標コンフィギュレーションレジスタセットからコンフィギュレーション情報を読み出すことと、
前記コンフィギュレーション情報に対して事前設定された演算を実行することと、を含む演算ステップを実行するように構成される前記演算装置と、を備える情報処理システム
【請求項7】
命令タイプにはさらに汎用命令が含まれ、汎用命令は事前設置されたレジスタセットからレジスタを確定するための第1のレジスタ確定情報、第2のレジスタ確定情報及び第3のレジスタ確定情報を含み、
前記情報処理用装置はさらに、前記命令が汎用命令であると判定されたことに応答し、
前記第1のレジスタ確定情報により確定されたレジスタにおけるデータを取得して第1のオペランドとすることと、
前記第2のレジスタ確定情報により確定されたレジスタにおけるデータを取得して第2のオペランドとすることと、
前記第1のオペランドおよび前記第2のオペランドに対して事前設定された操作を行って操作結果を取得することと、
前記操作結果を前記第3のレジスタ確定情報により確定されたレジスタに格納することと
を備える操作ステップを実行するように構成される操作手段を備える、
請求項6に記載の情報処理システム
【請求項8】
前記情報処理用装置は、事前設定されたコンフィギュレーション情報を事前設置されたメモリに記憶するように構成される記憶手段をさらに備える請求項6に記載の情報処理システム
【請求項9】
前記情報処理用装置はさらに、
DMAコントローラの、転送対象データを示すためのデータ転送コンフィギュレーション情報を設定するように構成される設定手段と、
起動命令を前記DMAコントローラに送信するように構成される起動手段であって、それによって、前記DMAコントローラが起動命令を受信した後、事前設定されたデータ転送ステップを実行する、起動手段と、を備え、
前記DMAコントローラは、前記データ転送コンフィギュレーション情報に基づいて前記メモリに記憶されたコンフィギュレーション情報を前記コンフィギュレーションレジスタセットに転送するように構成される転送手段を備える、請求項8に記載の情報処理システム
【請求項10】
前記転送手段はさらに、
前記コンフィギュレーションレジスタセットの状態を確定することと、
確定された状態に基づいて前記メモリから前記コンフィギュレーション情報を前記コンフィギュレーションレジスタセットに転送することと、を実行するように構成される請求項9に記載の情報処理システム
【請求項11】
1つまたは複数のプロセッサと、
1つまたは複数のプログラムが記憶される記憶装置と、を備える端末であって、
前記1つまたは複数のプログラムが前記1つまたは複数のプロセッサによって実行される場合、前記1つまたは複数のプロセッサに請求項1~5のいずれか1項に記載の方法を実現させる端末。
【請求項12】
コンピュータプログラムが記憶されるコンピュータ可読媒体であって、
前記プログラムがプロセッサによって実行される時、請求項1~5のいずれか1項に記載の方法を実現するコンピュータ可読媒体。
【請求項13】
コンピュータプログラムであって、
前記コンピュータプログラムがプロセッサにより実行されると、請求項1~5のいずれか1項に記載の方法を実現する、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示の実施形態はコンピュータ技術分野に関し、具体的には情報処理用方法及び装置に関する。
【背景技術】
【0002】
縮小命令セットコンピュータ(Reduced Instruction Set Computer,RISC)は複雑命令セットコンピュータに対するものである。CISCは機械のハードウェア構造を増加させることによりコンピュータに対する益々高くなる性能要求を満たす。コンピュータ構造の発展は複雑性が益々高くなるプロセッサによって独占され、コンピュータ操作と高級言語の差を減少させることと機械の運転特性を改善することのため、機械語命令はますます多くなり、命令システムもますます複雑になる。特に比較的高速なCPU(central processing unit)と比較的低速なメモリの間で矛盾があり、データのアクセス回数をできるだけ減少し、機械の速度を向上させるため、複雑命令セットを大幅に発展させた。しかし、半導体プロセス技術の発展に伴い、メモリの速度が向上し続け、特に高速バッファの使用に伴い、コンピュータシステムの構造が根本的に変化する。ハードウェアプロセス技術の向上の一方、ソフトウェアも同様に重要な進展が発生し、最適化コンパイラが現れ、それによって、プログラムの実行時間ができるだけ低減され、機械語が占有するメモリ容量が最小になる。先端メモリ技術及び先端コンパイラプログラムを有する条件では、CISCアーキテクチャも適切なものではなく、RISCアーキテクチャが誕生した。RISC技術の基本的な出発点は機械語命令システムを簡略化することによりハードウェア設計の複雑度を低減し、命令の実行速度を向上させる。
【0003】
端末側AI(Artificial Intelligence、人工知能)推論チップの設計において、RISC命令セットを採用する場合、チップ面積、コスト、消費電力を大幅に削減することができる。より強い製品競争力をもたらす。しかし、特定の応用分野に対して設計された端末側のAI推論チップについて、その応用シナリオ及び典型的な計算負荷は専用チップの特徴を有し、単純に汎用のRISC命令セットを採用すればその演算効率を向上させることは困難である。
【発明の概要】
【0004】
本開示の実施形態は情報処理用方法及び装置を提供する。
【0005】
第1態様において、本開示の実施形態は、情報処理用方法であって、取得された命令の命令オペコードに基づき、レジスタ選択情報、ベースアドレス情報及び読み取り対象データ長を含む専用命令を含む前記命令の命令タイプを確定することと、上記命令が専用命令であると判定されたことに応答し、上記専用命令を事前設置された演算装置に送信し、上記演算装置は、上記レジスタ選択情報に基づいて事前設置されたコンフィギュレーションレジスタセットからコンフィギュレーションレジスタセットを選択して目標コンフィギュレーションレジスタセットとすることと、上記ベースアドレス情報及び上記読み取り対象データ長に基づき、上記目標コンフィギュレーションレジスタセットからコンフィギュレーション情報を読み出すことと、上記コンフィギュレーション情報に対して事前設定された演算を実行することと、を含む演算ステップを実行することと、を備える情報処理用方法を提供する。
【0006】
いくつかの実施形態において、命令タイプにはさらに、事前設置されたレジスタセットからレジスタを確定するための第1のレジスタ確定情報、第2のレジスタ確定情報及び第3のレジスタ確定情報を含む汎用命令が含まれ、上記方法はさらに、上記命令が汎用命令であると判定されたことに応答し、上記第1のレジスタ確定情報により確定されたレジスタにおけるデータを取得して第1のオペランドとすることと、上記第2のレジスタ確定情報により確定されたレジスタにおけるデータを取得して第2のオペランドとすることと、上記第1のオペランドおよび上記第2のオペランドに対して事前設定された操作を行って操作結果を取得することと、上記操作結果を上記第3のレジスタ確定情報により確定されたレジスタに格納することとを備える操作ステップを実行することを備える。
【0007】
いくつかの実施形態において、命令を取得する前に、上記方法はさらに、事前設定されたコンフィギュレーション情報を事前設置されたメモリに記憶する。
【0008】
いくつかの実施形態において、上記方法はさらに、DMAコントローラの、転送対象データを示すためのデータ転送コンフィギュレーション情報を設定することと、起動命令を上記DMAコントローラに送信することであって、それによって、上記DMAコントローラが起動命令を受信した後、上記データ転送コンフィギュレーション情報に基づいて上記メモリに記憶されたコンフィギュレーション情報を上記コンフィギュレーションレジスタセットに転送するデータ転送ステップを実行する、こととを、備える。
【0009】
いくつかの実施形態において、上記データ転送コンフィギュレーション情報に基づいて上記メモリに記憶されたコンフィギュレーション情報を上記コンフィギュレーションレジスタセットに転送することは、上記コンフィギュレーションレジスタセットの状態を確定することと、確定された状態に基づいて上記メモリからコンフィギュレーション情報を上記コンフィギュレーションレジスタセットに転送することと、を備える。
【0010】
第1態様において、本開示の実施形態は、情報処理用装置であって、取得された命令の命令オペコードに基づき、レジスタ選択情報、ベースアドレス情報及び読み取り対象データ長を含む専用命令を含む上記命令の命令タイプを確定するように構成される確定手段と、上記命令が専用命令であると判定されたことに応答し、上記専用命令を事前設置された演算装置に送信し、それによって、上記演算装置は、上記レジスタ選択情報に基づいて事前設置されたコンフィギュレーションレジスタセットからコンフィギュレーションレジスタセットを選択して目標コンフィギュレーションレジスタセットとすることと、上記ベースアドレス情報及び上記読み取り対象データ長に基づき、上記目標コンフィギュレーションレジスタセットからコンフィギュレーション情報を読み出すことと、上記コンフィギュレーション情報に対して事前設定された演算を実行することと、を含む演算ステップを実行するように構成される演算手段と、を備える情報処理用装置を提供する。
【0011】
いくつかの実施形態において、命令タイプにはさらに汎用命令が含まれ、汎用命令は事前設置されたレジスタセットからレジスタを確定するための第1のレジスタ確定情報、第2のレジスタ確定情報及び第3のレジスタ確定情報を含み、上記装置はさらに、上記命令が汎用命令であると判定されたことに応答し、上記第1のレジスタ確定情報により確定されたレジスタにおけるデータを取得して第1のオペランドとすることと、上記第2のレジスタ確定情報により確定されたレジスタにおけるデータを取得して第2のオペランドとすることと、上記第1のオペランドおよび上記第2のオペランドに対して事前設定された操作を行って操作結果を取得することと、上記操作結果を上記第3のレジスタ確定情報により確定されたレジスタに格納することとを備える操作ステップを実行するように構成される操作手段を備える。
【0012】
いくつかの実施形態において、上記装置は、事前設定されたコンフィギュレーション情報を事前設置されたメモリに記憶するように構成される記憶手段をさらに備える。
【0013】
いくつかの実施形態において、上記装置はさらに、DMAコントローラの、転送対象データを示すためのデータ転送コンフィギュレーション情報を設定するように構成される設定手段と、起動命令を上記DMAコントローラに送信するように構成される起動手段であって、それによって、上記DMAコントローラが起動命令を受信した後、事前設定されたデータ転送ステップを実行する、起動手段と、を備え、上記DMAコントローラは、上記データ転送コンフィギュレーション情報に基づいて上記メモリに記憶されたコンフィギュレーション情報を上記コンフィギュレーションレジスタセットに転送するように構成される転送手段を備える。
【0014】
いくつかの実施形態において、上記転送手段はさらに、上記コンフィギュレーションレジスタセットの状態を確定することと、確定された状態に基づいて上記メモリから上記コンフィギュレーション情報を上記コンフィギュレーションレジスタセットに転送することと、を実行するように構成される。
【0015】
第3態様において、本開示の実施形態は、1つまたは複数のプロセッサと、1つまたは複数のプログラムが記憶される記憶装置と、を備える端末であって、上記1つまたは複数のプログラムが上記1つまたは複数のプロセッサによって実行される場合、上記1つまたは複数のプロセッサに第1態様のいずれかの実現形態に記載の方法を実現させる端末を提供する。
【0016】
第4態様において、本開示の実施形態は、コンピュータプログラムが記憶されるコンピュータ可読媒体であって、上記プログラムがプロセッサによって実行される時、第1態様のいずれかの実現形態に記載の方法を実現するコンピュータ可読媒体を提供する。
【0017】
第5態様において、本開示の実施形態は、コンピュータプログラムであって、前記コンピュータプログラムがプロセッサにより実行されると、第1態様のいずれかの実現形態に記載の方法を実現する、コンピュータプログラムを提供する。
【0018】
本開示の実施形態により提供される情報処理用方法および装置は、取得された命令の命令オペコードに基づき、命令の命令タイプを確定する。命令が専用命令であると判定されたことに応答し、演算装置により演算ステップを実行するために供する専用命令を演算装置に送信する。演算ステップは、まず、レジスタ選択情報に基づいて事前設置されたコンフィギュレーションレジスタセットからコンフィギュレーションレジスタセットを選択して目標コンフィギュレーションレジスタセットとする。次に、ベースアドレス情報及び読み取り対象データ長に基づき、目標コンフィギュレーションレジスタセットからコンフィギュレーション情報を読み出す。最後に、コンフィギュレーション情報に対して事前設定された演算を実行する。それによって、縮小命令セットプロセッサアーキテクチャにおいて専用命令を拡張する問題を解決した。
【図面の簡単な説明】
【0019】
以下の図面を参照してなされる非限定的な実施形態に対する詳細な説明により、本出願の他の特徴、目的及び利点がより明らかになる。
図1】本開示の実施形態を適用可能な例示的なシステムアーキテクチャである。
図2】本開示に係る、情報処理用方法の一実施形態のフローチャートである。
図3】本開示の実施形態の実現に適する、情報処理用方法のハードウェア部分の概略図である。
図4】本開示に係る情報処理用方法の応用シナリオの概略図である。
図5】本開示に係る情報処理用方法の更なる実施形態のフローチャートである。
図6】本開示に係る情報処理用装置の一実施形態の構造概略図である。
図7】本開示の実施形態を実現するための端末装置に適するコンピュータシステムの構成概略図である。
【発明を実施するための形態】
【0020】
以下は図面及び実施形態を参照して本開示をさらに詳細に説明する。本明細書で説明される具体的な実施形態は、関連発明を説明するためにのみ使用され、その発明を限定するものではないことを理解されたい。なお、説明の便宜上、図面は関連発明に係る部分のみを示している。
【0021】
なお、矛盾が生じない状況で本開示の実施形態及び実施形態における特徴は、互いに組み合わせることができる。以下は図面を参照しながら実施形態を踏まえて本開示をさらに詳細に説明する。
【0022】
図1は本開示の実施形態を適用可能な、情報処理用方法又は情報処理用装置のシステムアーキテクチャ100の例示である。
【0023】
図1に示すように、システムアーキテクチャ100は端末装置101、102、103、ネットワーク104及びサーバ105を含むことができる。ネットワーク104は、端末装置101、102、103とサーバ装置105との間で通信リンクの媒体を提供するためのものである。ネットワーク104は、有線、無線通信リンク又は光ファイバケーブル等の様々な接続タイプを含むことができる。
【0024】
ユーザは、端末装置101、102、103を用いて、ネットワーク104を介してサーバ105と情報のやり取りを行うことができる。端末装置101、102、103には様々な通信クライアントアプリケーション、例えばプレイアプリケーション、検索アプリケーション、画像処理アプリケーション、インスタントメッセージングツール、ソーシャルプラットフォームソフトウェアなどがインストールされ得る。
【0025】
端末装置101、102、103は、ハードウェアであってもよいし、ソフトウェアであってもよい。端末装置101、102、103がハードウェアである場合、RISCプロセッサ及び演算装置を有する様々な電子機器であってもよく、それはスマートフォン、タブレットコンピュータ、スマートスピーカ、車載音声装置などを含むが、これらに限定されるものではない。端末装置101、102、103がソフトウェアである場合、上述した電子機器にインストルされることができる。それは複数のソフトウェア又はソフトウェアモジュール(例えば分散サービスを提供するために用いられる)として実現されることができ、単一のソフトウェア又はソフトウェアモジュールとして実現されることもできる。ここでは特に限定しない。
【0026】
サーバ105は各種のサービスを提供するサーバであってもよく、例えば端末装置101、102、103に表示された情報に対してサポートを提供するサーバである。バックグラウンドサーバは、受信したリクエスト等のデータに対して解析等の処理を行い、処理結果を端末装置101、102、103にフィードバックすることができる。
【0027】
なお、サーバ105は、ハードウェアであってもよいし、ソフトウェアであってもよい。サーバ105がハードウェアである場合、複数のサーバで構成される分散サーバクラスタとして実現されてもよいし、単一のサーバとして実現されてもよい。サーバ105がソフトウェアである場合、複数のソフトウェア又はソフトウェアモジュール(例えば分散サービスを提供するために用いられる)として実現されることができ、単一のソフトウェア又はソフトウェアモジュールとして実現されることもできる。ここでは特に限定しない。
【0028】
なお、本開示の実施形態により提供される情報処理用方法は一般的に、端末装置101、102、103によって実行され、それによって、情報処理用装置は一般的に、端末装置101、102、103に設置される。図1における端末装置、ネットワーク及びサーバの数は例示のみであることを理解されたい。また、実現の需要に基づいて任意の数の端末装置、ネットワーク、サーバ等を備えることができる。
【0029】
次に、本開示に係る、情報処理用方法の一実施形態の流れ200を示す図2を参照する。該情報処理用方法は、以下のステップを含む。
【0030】
ステップ201では、取得された命令の命令オペコードに基づいて命令の命令タイプを確定する。
【0031】
本実施形態において、情報処理用方法の実行主体(例えば、図1に示す端末装置101、102、103)は、CPUと、演算装置とを備えることができる。ここで、CPUはRISCプロセッサであってもよい。RISCは、タイプが少ないコンピュータ命令を実行するマイクロプロセッサである。RISCにおいて、コンピュータは各マシンサイクルにおいて命令を実行することができ、簡単又は複雑な操作を問わず、簡単な命令のプログラムブロックで完成することができる。一般的には、各命令それぞれは該命令がどのような性質の操作を実行するかを示す1つのオペコードを備え、異なる命令はオペコードのフィールドの異なるコードで示される。したがって、実行主体は、取得された命令の命令オペコードに基づき、取得された命令の命令タイプを確定することができる。ここで、命令タイプには、汎用命令と専用命令が含まれることができる。
【0032】
コンピュータにおいて、コンピュータのハードウェアが何らかの演算、処理機能を実行することを指示するコマンドは、命令と呼ばれる。命令はコンピュータにより実行される最小の機能単位であり、ハードウェアの作用は各命令により規定された機能を完成することである。1台のコンピュータにおける全ての命令の集合は、このコンピュータの命令システムである。命令システムは命令セットとも呼ばれ、このコンピュータの全ての機能の具現化である。RISCおよびCISCは、CPUが命令セットの特性に基づいて区別される2つのタイプである。実際の状況で、各型番のCPUは設計された時にそのハードウェア回路に対応する一連の命令を規定した。ここで、汎用命令とは、実行主体のCPUのハードウェア回路に対応する命令であってもよい。専用命令とは、実行主体の演算装置のハードウェア回路に対応する命令であってもよい。ここで、演算装置は、実際の応用シナリオに基づいて増設されるAIアクセラレータであってもよい。
【0033】
次に、図3を参照されたい。その上半分のブロックに示すのは標準的な5段階のパイプラインRISCプロセッサの論理ブロック図である。ここで、パイプラインの5段階はそれぞれ、フェッチ段階、デコード段階、実行段階、メモリアクセス段階、ライトバック段階である。フェッチ段階は取得された命令をデコード段階に送信し、デコード段階は命令フォーマットにおける情報に基づいてレジスタセットにおけるデータを読み出して実行段階に送信し、実行段階はデータに対して演算処理を実行した後に演算結果をライトバック段階に送信し、ライトバック段階は複数の実行段階の演算結果から優先度に基づいて1つを選択してレジスタセットに書き戻す。5段階のパイプラインRISCプロセッサは現在幅広く研究されて応用された公知技術であるので、図3の上半分のブロックにおけるデコード手段、データ関連のスコアボード、算術論理手段等の部分の機能について説明を省略することを理解されたい。
【0034】
図3の下半分のブロックに示すのは演算装置がデコード段階と実行段階の2段階で増加されたハードウェア手段とレジスタセットを示している。ここで、ハードウェア手段は演算装置、コンフィギュレーションローダ等を備えることができ、レジスタセットは演算レジスタセット及びコンフィギュレーションレジスタセットを備えることができる。ここで、コンフィギュレーションレジスタセットは、特殊な構成、すなわち、複数のコンフィギュレーションレジスタセットが共存している構成(複数のレジスタセットが共存している実施形態は、アドレスによるアクセス可能な形態であってもよいし、先入れ先出しのアクセス形態であってもよい)を有することができる。コンフィギュレーションレジスタセットの内容は、セレクタを介して実行段階の演算装置に送信されることができる。具体的には、どのレジスタセットの内容を選択することは、コンフィギュレーションローダによりデコード段階から送信された命令情報に基づいて選択される。
【0035】
図3の下方のブロック外の部分は、RISCプロセッサ以外の付加回路である。ここで、DMA(Direct Memory Access)コントローラはアクセラレータのコンフィギュレーション情報をコンフィギュレーションレジスタセットにバッチロードすることを担当する。また、コンフィギュレーションレジスタセットの数が制限されているが、オンチップメモリはコンフィギュレーションレジスタセットの数を大幅に超えるコンフィギュレーション情報を格納できる。従って、コンフィギュレーション情報組の数が非常に多い場合には、一部のコンフィギュレーション情報組のみがコンフィギュレーションレジスタセットにロードされることができ、後続のコンフィギュレーション情報組について、DMAコントローラが演算手段のコンフィギュレーション情報組の消費速度に基づいて徐々にロードされる必要がある。なお、DMAコントローラの操作情報、すなわち、コンフィギュレーション情報組がオンチップメモリに記憶されるアドレスとセットの数は、RISCプロセッサによって事前設置されることができる。RISCプロセッサはDMAコントローラを起動した後、DMAコントローラはRISCプロセッサから独立して稼働することができ、RISCプロセッサの介入を必要としない。
【0036】
実際の状況で、RISC命令はハードウェアによるデコードの便利のため、固定長の命令フォーマットを採用し、例えば、32ビット、64ビットなどを採用する。ここで、汎用命令と専用命令の長さは等しくなってもよく、いずれも固定長であり得る。例示として、本実施形態における命令は、32ビットの命令であってもよい。ここで、命令における第0~6ビットは命令オペコードを表すことができ、命令オペコードは汎用命令と専用命令を区別するために使用されることができる。専用命令はレジスタ選択情報、ベースアドレス情報及び読み取り対象データ長を含むことができる。例示として、命令が専用命令である場合、32ビットにおける第7~11ビットは複数のレジスタセットにおける1つのレジスタセットを選択するためのレジスタ選択情報であってもよいし、アドレスによるアクセス可能な実施形態におけるアドレス部分のためのものであってもよく、32ビットにおける15~19ビットは、ベースアドレス情報であってもよく、特定のコンフィギュレーションレジスタセットのベースアドレスを識別するために使用でき、32ビットにおける第20~24ビットは読み取り対象データ長であってもよく、特定のコンフィギュレーションレジスタセットにおける、読み取り必要があるバイト長さを識別するために使用されてもよい。
【0037】
本実施形態のいくつかの選択可能な実施形態では、命令を取得する前に、上記の、情報処理用方法はさらに、事前設定されたコンフィギュレーション情報を事前設置されたメモリに記憶することを備えることができる。
【0038】
本実施形態において、実行主体は事前設定されたコンフィギュレーション情報を事前設置されたメモリに記憶することができる。例示として、上記事前設置されたメモリはRISCプロセッサ以外のオンチップメモリであってもよい。例示として、RISCプロセッサは初期化の段階で、複数組のコンフィギュレーション情報をオンチップメモリに設定することができ、ここで、1組のコンフィギュレーション情報は演算装置の1回の実行に要する情報であってもよい。
【0039】
いくつかの選択可能な実施形態において、上記情報処理用方法はさらに、次のことを含むことができる。まず、DMAコントローラのデータ転送コンフィギュレーション情報を設定する。
【0040】
本実施形態において、実行主体はDMAコントローラのデータ転送コンフィギュレーション情報を設定することができる。ここで、上記データ転送コンフィギュレーション情報は、転送対象データを示すためのものであってもよい。例えば、データ転送コンフィギュレーション情報は、ベースアドレスと転送バイト長さを含むことができる。例示として、起動段階に、RISCプロセッサは、DMAコントローラのベースアドレスと転送バイト長さを設定することができる。
【0041】
続いて、DMAコントローラに起動命令を送信し、それによって、DMAコントローラが起動命令を受信した後に、データ転送コンフィギュレーション情報に基づいてメモリに記憶されたコンフィギュレーション情報をコンフィギュレーションレジスタセットに転送するデータ転送ステップを実行する。
【0042】
本実施形態において、RISCプロセッサはDMAコントローラに起動命令を送信でき、それによって、DMAコントローラは起動命令を受信した後に、データ転送コンフィギュレーション情報に基づき、メモリに記憶されたコンフィギュレーション情報をコンフィギュレーションレジスタセットに転送するデータ転送ステップを実行できる。
【0043】
実際の状況では、端末側AI推論の実行過程において、ニューラルネットワーク推論演算に必要なパラメータ情報等は事前取得されることができ、演算開始前に既に固定され、ウエイト値及びニューラルネットワークの各層のコンフィギュレーション情報によって示される。この原理に基づき、演算装置の起動前に、ニューラルネットワークの各層の計算に必要なコンフィギュレーション情報をバッチロードし、演算装置の稼働中にコンフィギュレーション情報をロードする時間を節約できる。また、DMAコントローラはRISCプロセッサから独立して動作することができるため、RISCプロセッサによる演算と、DMAコントローラによるコンフィギュレーション情報組の転送が並列に実行することができ、さらに、演算時間がいっそう節約され、演算効率が向上された。
【0044】
または、データ転送コンフィギュレーション情報に基づき、メモリに記憶されたコンフィギュレーション情報をコンフィギュレーションレジスタセットに転送することは、具体的には以下のとおりに実行できる。まず、コンフィギュレーションレジスタセットの状態を確定する。
【0045】
本実施形態では、DMAコントローラが起動した後、まず、複数のコンフィギュレーションレジスタセットの状態を確定し、コンフィギュレーションレジスタセットの状態が全負荷ではないか否かを判定することができる。例示として、DMAコントローラは、コンフィギュレーションローダの読み出しポインタと自己の書き込みポインタとの関係に基づき、コンフィギュレーションレジスタセットの状態が全負荷ではないか否かを判断することができる。ここで、状態は全負荷ではないとは、コンフィギュレーションレジスタセットに余剰スペースがあり、コンフィギュレーションレジスタセットへのデータ転送が可能であることを示す。そうでなければ、コンフィギュレーションレジスタセットに余剰スペースがなく、コンフィギュレーションレジスタセットにデータを転送することができないことを示す。
【0046】
そして、確定された状態に基づいてコンフィギュレーション情報をメモリからコンフィギュレーションレジスタセットに転送する。
【0047】
本実施形態では、DMAコントローラは、確定されたコンフィギュレーションレジスタセットの状態に基づいて、コンフィギュレーション情報をメモリからコンフィギュレーションレジスタセットに転送する。例えば、DMAコントローラは、コンフィギュレーションレジスタセットの状態が全負荷ではない場合に、コンフィギュレーション情報をメモリからコンフィギュレーションレジスタセットに転送することができる。そうでなければ、DMAコントローラは待機し、コンフィギュレーションレジスタセットの状態が全負荷ではないと判定されるまでに、コンフィギュレーションローダの読み出しポインタの変化をリアルタイムにクエリする。
【0048】
ステップ202では、命令が専用命令であると判定されたことに応答し、演算装置により以下の演算ステップ2021~2023を実行するために供する専用命令を事前設置された演算装置に送信する。
【0049】
本実施形態において、取得された命令が専用命令であると判定された場合、実行主体は演算装置により以下の演算ステップ2021~2023を実行するために供する該専用命令を演算装置に送信することができる。
【0050】
ステップ2021では、レジスタ選択情報に基づいて事前設置されたコンフィギュレーションレジスタセットからコンフィギュレーションレジスタセットを選択して目標コンフィギュレーションレジスタセットとする。
【0051】
本実施形態において、演算装置は専用命令を受信した後、専用命令におけるレジスタ選択情報に基づいて事前設置された複数のコンフィギュレーションレジスタセットから1つのレジスタセットを選択して目標コンフィギュレーションレジスタセットとする。例えば、デコード段階では、デコード手段が命令オペコードを解析し、命令が専用命令であると判定された場合、専用命令におけるレジスタ選択情報を実行段階のコンフィギュレーションローダに送信し、コンフィギュレーションローダがレジスタ選択情報に基づいて複数のコンフィギュレーションレジスタセットから1つのコンフィギュレーションレジスタセットを選択して目標コンフィギュレーションレジスタセットとする。
【0052】
ステップ2022では、ベースアドレス情報及び読み取り対象データ長に基づき、目標コンフィギュレーションレジスタセットからコンフィギュレーション情報を読み取る。
【0053】
本実施形態において、演算装置は目標コンフィギュレーションレジスタセットを確定した後に、専用命令におけるベースアドレス情報及び読み取り対象データ長に基づき、目標コンフィギュレーションレジスタセットからコンフィギュレーション情報を読み出すことができる。例えば、演算装置におけるコンフィギュレーションローダは、目標コンフィギュレーションレジスタセットを確定した後、目標コンフィギュレーションレジスタセットのベースアドレス情報により指定されたベースアドレスから、読み取り対象データ長により指定された長さのコンフィギュレーション情報を演算装置に読み出すことができる。例示として、コンフィギュレーション情報は、演算レジスタセットにおけるレジスタアドレス、RISCプロセッサのレジスタセットにおけるレジスタアドレス、演算装置によるニューラルネットワーク推論演算に必要なパラメータ情報等の一連の情報を含むが、これらに限定されるものではない。これらのコンフィギュレーション情報の長さは、RISC命令の32ビットに格納可能な内容をはるかに超えている。
【0054】
ステップ2023では、コンフィギュレーション情報に対して、事前設定された演算を実行する。
【0055】
本実施形態において、演算装置はステップ2022で取得されたコンフィギュレーション情報を用いて、事前設定された演算を実行することができる。ここで、事前設定された演算とは、取得された専用命令により指示されて実行する演算であってもよい。演算装置の演算手段は、例えば、ステップ2022で取得されたコンフィギュレーション情報を用いて、専用命令により指示された演算を完成し、演算結果を取得することができる。その後、演算手段は、演算結果を演算レジスタセットまたはRISCプロセッサのレジスタセットに書き戻すことができる。
【0056】
続いて、本実施形態に係る情報処理用方法の応用シナリオの概略図である図4を参照する。図4の応用シナリオにおいて、端末装置のRISCプロセッサ401は、取得された命令の命令オペコードに基づき、命令の命令タイプを確定する。命令が専用命令であると判定された場合、RISCプロセッサは、演算装置402は以下の演算ステップを実行するために供する専用命令を事前設置された演算装置402に送信する。演算ステップでは、レジスタ選択情報に基づいて事前設置されたコンフィギュレーションレジスタセットからコンフィギュレーションレジスタセットを選択して目標コンフィギュレーションレジスタセットとし、次に、ベースアドレス情報及び読み取り対象データ長に基づき、目標コンフィギュレーションレジスタセットからコンフィギュレーション情報を読み出し、最後に、コンフィギュレーション情報に対して事前設定された演算を実行する。
【0057】
本開示の上記実施形態により提供される方法は演算装置を用いて専用命令を処理し、それによって、縮小命令セットプロセッサアーキテクチャにおける専用命令の拡張の問題を解決する。
【0058】
さらに、情報処理用方法の更なる実施形態の流れ500を示す図5を参照する。該情報処理用方法の流れ500は以下のステップを含む。
【0059】
ステップ501では、取得された命令の命令オペコードに基づき、命令の命令タイプを確定する。
【0060】
本実施形態において、ステップ501は図2に示す実施形態のステップ201と同様であり、ここでは説明を省略する。
【0061】
ステップ502では、命令が専用命令であると判定されたことに応答し、演算装置により以下の演算ステップ5021~5023を実行するために供する専用命令を事前設置された演算装置に送信する。
【0062】
本実施形態において、取得された命令が専用命令であると判定された場合、実行主体は、演算装置により以下の演算ステップ5021~5023を実行するために供する専用命令を演算装置に送信する。
【0063】
ステップ5021では、レジスタ選択情報に基づいて事前設置されたコンフィギュレーションレジスタセットからコンフィギュレーションレジスタセットを選択して目標コンフィギュレーションレジスタセットとする。
【0064】
本実施形態において、ステップ5021は、図2に示す実施形態のステップ2021と同様であり、ここでは説明を省略する。
【0065】
ステップ5022では、ベースアドレス情報及び読み取り対象データ長に基づき、目標コンフィギュレーションレジスタセットからコンフィギュレーション情報を読み取る。
【0066】
本実施形態において、ステップ5022は図2に示す実施形態のステップ2022と同様であり、ここでは説明を省略する。
【0067】
ステップ5023では、コンフィギュレーション情報に対して、事前設定された演算を実行する。
【0068】
本実施形態において、ステップ5023は図2に示す実施形態のステップ2023と同様であり、ここでは説明を省略する。
【0069】
ステップ503では、命令が汎用命令であると判定されたことに応答し、操作ステップ5031~5034を実行する。
【0070】
本実施形態において、命令タイプはさらに汎用命令を含むことができる。汎用命令は事前設置されたレジスタセットからレジスタを確定するための第1のレジスタ確定情報、第2のレジスタ確定情報及び第3のレジスタ確定情報を含むことができる。例示として、命令が汎用命令である場合、32ビットのうちの第7~11ビットは、レジスタセットにおける1つのレジスタを選択するために用いられることができ、該レジスタは命令演算結果を格納するために使用されることができる。32ビットのうちの第15~19ビットは、レジスタセットにおける1つのレジスタを選択するために用いられることができ、該レジスタは命令演算オペランド1を格納するために用いられることができる。32ビットのうちの第20~24ビットは、レジスタセットにおける1つのレジスタを選択するために使用されることができ、該レジスタは命令演算オペランド2を格納するために使用されることができる。
【0071】
ここで、実行主体は、取得された命令が汎用命令であると判定された場合に、以下の操作ステップ5031~5034を実行することができる。
【0072】
ステップ5031では、第1のレジスタ確定情報により確定されたレジスタにおけるデータを取得して第1オペランドとする。
【0073】
本実施形態では、実行主体は、第1のレジスタ確定情報により確定されたレジスタにおけるデータを取得して第1オペランドとすることができる。
【0074】
ステップ5032では、第2レジスタ確定情報によって確定されたレジスタにおけるデータを取得して第2オペランドとする。
【0075】
本実施形態において、実行主体は、第2のレジスタ確定情報により確定されたレジスタにおけるデータを取得し、第2オペランドとすることができる。
【0076】
ステップ5033では、第1オペランド及び第2オペランドに対して事前設定された操作を実行して、操作結果を取得する。
【0077】
本実施形態において、実行主体は、第1オペランドおよび第2オペランドに対して事前設定された操作を実行することができる。ここで、事前設定された操作とは、取得された汎用命令により指示されて実行する操作であってもよい。
【0078】
ステップ5034では、操作結果を第3のレジスタ確定情報により確定されたレジスタに記憶する。
【0079】
本実施形態において、実行主体は、ステップ5033で取得された操作結果を、第3のレジスタ確定情報により確定されたレジスタに格納することができる。
【0080】
図5から分かるように、図2に対応する実施形態と比べて、本実施形態における情報処理用方法の流れ500は、命令が汎用命令である場合、汎用命令に対する処理を強調した。従って、本実施形態で説明した技術手段は、異なる命令タイプに対して異なるステップを実行することができ、それによって、汎用命令と専用命令に対する処理を実現した。
【0081】
さらに、図6を参照し、上記各図に示される方法に対する実現として本開示は情報処理用装置の一実施形態を提供し、該装置の実施形態は図2に示される方法の実施形態に対応し、該装置は具体的に様々な電子機器に適用することができる。
【0082】
図6に示すように、本実施形態の情報処理用装置600は、確定手段601と演算手段602を備える。ここで、確定手段601は、取得された命令の命令オペコードに基づき、上記命令の、レジスタ選択情報、ベースアドレス情報及び読み取り対象データ長を含む専用命令を含む命令タイプを確定するように構成され、演算手段602は、上記命令が専用命令であると判定されたことに応答し、上記専用命令を事前設置された演算装置に送信し、それによって、上記演算装置は、上記レジスタ選択情報に基づいて事前設置されたコンフィギュレーションレジスタセットからコンフィギュレーションレジスタセットを選択して目標コンフィギュレーションレジスタセットとすることと、上記ベースアドレス情報及び上記読み取り対象データ長に基づき、上記目標コンフィギュレーションレジスタセットからコンフィギュレーション情報を読み出すことと、上記コンフィギュレーション情報に対して事前設定された演算を実行することと、を備える演算ステップを実行するように構成される。
【0083】
本実施形態において、情報処理用装置600の確定手段601及び演算手段602の具体的な処理及びそれによる技術的効果はそれぞれ図2に対応する実施形態におけるステップ201及びステップ202の関連説明を参照することができるので、ここで説明を省略する。
【0084】
本実施形態のいくつかの選択可能な実施形態では、命令タイプはさらに汎用命令を含み、汎用命令は事前設置されたレジスタセットからレジスタを確定するための第1のレジスタ確定情報、第2のレジスタ確定情報及び第3のレジスタ確定情報を含み、上記装置600はさらに、上記命令が汎用命令であると判定されたことに応答し、上記第1のレジスタ確定情報により確定されたレジスタにおけるデータを取得して第1オペランドとするステップと、上記第2のレジスタ確定情報により確定されたレジスタにおけるデータを取得して第2オペランドとするステップと、上記第1オペランドおよび上記第2オペランドに対して事前設定された操作を行って操作結果を取得するステップと、上記操作結果を上記第3のレジスタ確定情報により確定されたレジスタに格納するステップとを含む操作ステップを実行するように構成される操作手段(図示せず)を備える。
【0085】
本実施形態のいくつかの選択可能な実施形態では、上記装置600はさらに、事前設定されたコンフィギュレーション情報を事前設置されたメモリに記憶するように構成される記憶手段(図示せず)を備える。
【0086】
本実施形態のいくつかの選択可能な実施形態では、上記装置600はさらに、上記DMAコントローラの、転送対象データを指示するためのデータ転送コンフィギュレーション情報を配置するように構成される配置手段(図示せず)と、起動命令を上記DMAコントローラに送信するように構成され、それによって、上記DMAコントローラが起動命令を受信した後、事前設置されたデータ転送ステップを実行する起動手段(図示せず)と、を備え、上記DMAコントローラは、上記データ転送コンフィギュレーション情報に基づいて上記メモリに記憶されたコンフィギュレーション情報を上記コンフィギュレーションレジスタセットに転送する転送手段を含む。
【0087】
本実施形態のいくつかの実施形態では、上記転送手段はさらに、上記コンフィギュレーションレジスタセットの状態を確定することと、確定された状態に基づいて、上記メモリからコンフィギュレーション情報を上記コンフィギュレーションレジスタセットに転送することとを実行するように構成される。
【0088】
次に、本開示の実施形態に係る電子機器(例えば図1の端末装置)700の構造概略図を示す図7を参照する。なお、図7に示した端末装置は例示であり、本開示の実施形態の機能や利用範囲を制限するものではない。
【0089】
図7に示すように、電子機器700は、ROM(Read Only Memory)702に格納されたプログラムや、記憶装置708からRAM(Random Access Memory)703にロードされたプログラムに基づき、各種の適当な動作や処理を実行することができる処理装置(例えば、中央処理装置、グラフィックプロセッサ、演算装置等)701を備える。RAM703には、電子機器700の操作に必要な各種プログラムやデータが記憶される。処理装置701、ROM702、RAM703は、バス704を介して相互に接続されている。バス704には、入出力(I/O)インタフェース705も接続されている。
【0090】
I/Oインタフェース705には、一般的には、入力装置706、出力装置707、記憶装置708、通信装置709が接続されることができ、入力装置706は例えばタッチパネル、タッチパッド、キーボード、マウス、カメラ、マイク、加速度計、ジャイロスコープなどを含み、出力装置707は、例えば、LCD(Liquid Crystal Display)、スピーカ、バイブレータなどを含み、記憶装置708は例えば、磁気テープ、ハードディスクなどを含む。通信装置709は、データを交換するために、電子機器700が他の装置と無線又は有線通信を行うことを可能にすることができる。なお、図7は、各種の装置を備えた電子機器700を示したが、図示した全ての装置を実施又は備えることが要求されていないことを理解されたい。代替的に、より多く又はより少ない装置を実施又は備えることができる。図7に示す各ブロックは、1つの装置を表してもよく、必要に応じて複数の装置を代表してもよい。
【0091】
特に、本開示の実施形態に基づき、上述のフローチャートを参照して説明したプロセスは、コンピュータソフトウェアプログラムとして実現されることが可能である。例えば、本開示の実施形態は、フローチャートに示された方法を実行するためのプログラムコードを含む、コンピュータ可読媒体上に担持されたコンピュータプログラム製品を含む。このような実施形態では、コンピュータプログラムは、通信装置709を介してネットワークからダウンロードされインストールされたり、記憶装置708からインストールされたり、RОM702からインストールされたりすることができる。このコンピュータプログラムが処理装置701によって実行されると、本開示の実施形態の方法に限定された上記機能が実行される。
【0092】
なお、本開示の実施形態で説明したコンピュータ可読媒体は、コンピュータ可読信号媒体若しくはコンピュータ可読記憶媒体、又は上記両者の任意の組み合わせであり得る。コンピュータ可読記憶媒体は、例えば、電気、磁気、光、電磁気、赤外線、又は半導体のシステム、装置若しくはデバイス、又は以上の任意の組み合わせであり得るが、これらに限られない。コンピュータ可読記憶媒体のより具体的な例は、1本又は複数本のリード線を有する電気的に接続された携帯型コンピュータディスク、ハードディスク、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(RОM)、消去可能プログラマブル読取り専用メモリ(EPRОM又はフラッシュメモリ)、光ファイバ、携帯型コンパクトディスク読取り専用メモリ(CD-RОM)、光記憶装置、磁気記憶装置、又は上記の任意の適切な組み合わせを含むが、これらに限られない。本開示の実施形態では、コンピュータ可読記憶媒体は、命令実行システム、装置又はデバイスによって使用されることもそれらに結合して使用されることも可能なプログラムを含む又は記憶する任意の有形の媒体であり得る。本開示の実施形態では、コンピュータ可読信号媒体は、ベースバンド内において又はキャリアの一部として伝播された、コンピュータ可読プログラムコードを搬送しているデータ信号を含んでもよい。このような伝播されたデータ信号は、電磁信号、光信号、又は上述の任意の適切な組み合わせを含むが、これらに限られない様々な形態を採用することができる。コンピュータ可読信号媒体はまた、コンピュータ可読記憶媒体以外の任意のコンピュータ可読媒体であってもよい。このコンピュータ可読信号媒体は、命令実行システム、装置又はデバイスによって使用されることもそれらに結合して使用されることも可能なプログラムを送信、伝播又は伝送することができる。コンピュータ可読媒体に含まれているプログラムコードは、電線、光ケーブル、RF(無線周波数)など、又は上記の任意の適切な組み合わせを含むが、これらに限られない任意の適切な媒体で伝送することができる。
【0093】
上記コンピュータ可読媒体は前記電子機器に含まれるものであってもよく、個別に存在しており、該電子機器に組み込まれていないものであってもよい。前記コンピュータ可読媒体は、1つ又は複数のプログラムを搬送しており、前記1つ又は複数のプログラムが該電子機器によって実行されると、該電子機器は、取得された命令の命令オペコードに基づき、上記命令の、レジスタ選択情報、ベースアドレス情報及び読み取り対象データ長を含む専用命令を含む命令タイプを確定することと、上記命令が専用命令であると判定されたことに応答し、上記専用命令を事前設置された演算装置に送信し、それによって、上記演算装置は、上記レジスタ選択情報に基づいて事前設置されたコンフィギュレーションレジスタセットからコンフィギュレーションレジスタセットを選択して目標コンフィギュレーションレジスタセットとすることと、上記ベースアドレス情報及び上記読み取り対象データ長に基づき、上記目標コンフィギュレーションレジスタセットからコンフィギュレーション情報を読み出すことと、上記コンフィギュレーション情報に対して事前設定された演算を実行することと、を備える演算ステップを実行する。
【0094】
本開示の実施形態の動作を実行するためのコンピュータプログラムコードは、1つ又は複数のプログラミング言語、又はそれらの組み合わせで書くことができる。プログラミング言語は、Java、Smalltalk、C++などのオブジェクト指向プログラミング言語や、「C」言語又は類似するプログラミング言語などの従来の手続き型プログラミング言語を含む。プログラムコードは、完全にユーザのコンピュータ上で実行されることも、部分的にユーザのコンピュータ上で実行されることも、スタンドアロンソフトウェアパッケージとして実行されることも、部分的にユーザのコンピュータ上で実行されながら部分的にリモートコンピュータ上で実行されることも、又は完全にリモートコンピュータ又はサーバ上で実行されることも可能である。リモートコンピュータの場合、リモートコンピュータは、ローカルエリアネットワーク(LAN)又はワイドエリアネットワーク(WAN)を含む任意の種類のネットワークを介してユーザのコンピュータに接続されることができる。又は、外部のコンピュータに接続されることができる(例えば、インターネットサービスプロバイダーによるインターネット経由で接続される)。
【0095】
添付図面におけるフローチャート及びブロック図は、本開示の様々な実施形態に係るシステム、方法、及びコンピュータプログラム製品の実施可能なアーキテクチャ、機能、及び動作を示している。ここで、フローチャート又はブロック図における各ブロックは、モジュール、プログラムセグメント、又はコードの一部を表すことができる。該モジュール、プログラムセグメント、又はコードの一部は、指定されたロジック関数を実施するための1つ又は複数の実行可能な命令を含む。また、いくつかの代替的な実施形態では、ブロックに記載されている機能は、図面に示されているものとは異なる順序で発生する場合があることにも留意されたい。例えば、連続して表されている2つのブロックは、実際にほぼ並行して実行されてもよく、時には逆の順序で実行されてもよい。これは関連する機能によって決まる。また、ブロック図及び/又はフローチャートにおける各ブロック、及びブロック図及び/又はフローチャートにおけるブロックの組み合わせは、指定された機能又は動作を実行する専用のハードウェアベースのシステムで実施することも、又は専用のハードウェアとコンピュータの命令の組み合わせで実施することも可能であることに留意されたい。
【0096】
本開示の実施形態において説明された手段は、ソフトウェア又はハードウェアによって実施され得る。説明された手段はプロセッサに内蔵されてもよい。例えば、「確定手段と演算手段を備えるプロセッサ」と記載されてもよい。これらの手段の名称は、該手段その自体に対する限定ではなく、例えば、取得手段は、「取得された命令の命令オペコードに基づいて上記命令の命令タイプを確定する手段」と記載されてもよい。
【0097】
上記の説明は、あくまでも本開示の好ましい実施形態及び応用技術原理の説明にすぎない。本開示に係る発明の範囲は、上記の技術的特徴の特定の組み合わせによって形成された技術的解決手段に限定されず、上記の発明の構想から逸脱しない範囲で上記の技術的特徴又はその同等の技術的特徴の任意の組み合わせによって形成されたその他の技術的解決手段、例えば、上記の特徴と本開示に開示された同様の機能を有する技術的特徴(それだけに限定されない)とが相互に代替することによって形成された技術的解決手段もカバーしていることを当業者は理解すべきである。
図1
図2
図3
図4
図5
図6
図7