JP7369701B2 - 処理回路上で実行されるべきプログラムをデバッグするときにメタデータにアクセスする方法 - Google Patents
処理回路上で実行されるべきプログラムをデバッグするときにメタデータにアクセスする方法 Download PDFInfo
- Publication number
- JP7369701B2 JP7369701B2 JP2020543981A JP2020543981A JP7369701B2 JP 7369701 B2 JP7369701 B2 JP 7369701B2 JP 2020543981 A JP2020543981 A JP 2020543981A JP 2020543981 A JP2020543981 A JP 2020543981A JP 7369701 B2 JP7369701 B2 JP 7369701B2
- Authority
- JP
- Japan
- Prior art keywords
- metadata
- access operation
- address
- instance
- debugger
- 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.)
- Active
Links
- 238000012545 processing Methods 0.000 title claims description 161
- 238000000034 method Methods 0.000 claims description 74
- 239000008187 granular material Substances 0.000 claims description 36
- 230000008569 process Effects 0.000 claims description 29
- 238000004590 computer program Methods 0.000 claims description 5
- 230000001960 triggered effect Effects 0.000 claims description 4
- 230000001419 dependent effect Effects 0.000 claims description 2
- 230000007246 mechanism Effects 0.000 description 7
- 238000013459 approach Methods 0.000 description 6
- 238000012360 testing method Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 238000010276 construction Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000006399 behavior Effects 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000006872 improvement Effects 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 230000003542 behavioural effect Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3648—Software debugging using additional hardware
- G06F11/3656—Software debugging using additional hardware using a specific debug interface
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3636—Software debugging by tracing the execution of the program
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Description
Claims (23)
- 処理回路上で実行されるべきプログラムをデバッグするようにデバッガを動作させる方法であって、前記処理回路が、関連するメタデータ項目を有するデータ・グラニュールから形成されたデータに対して動作し、前記方法は、
前記処理回路によって複数回にわたってメタデータ・アクセス動作を引き起こすために指定された数のメタデータ項目にアクセスすることを決めるステップと、
前記処理回路が、前記指定された数のメタデータ項目の少なくともサブセットにアクセスするために前記メタデータ・アクセス動作の複数のインスタンスを実施することを引き起こすために、前記処理回路に少なくとも1つのコマンドを発行するステップであって、前記メタデータ・アクセス動作の各インスタンスによってアクセスされるメタデータ項目の数は、前記デバッガにとって非決定論的であり、前記少なくとも1つのコマンドに従って、前記デバッガが、アクセスされる前記数のメタデータ項目の進捗を決定するために前記メタデータ・アクセス動作の各インスタンスの間に前記処理回路に問い合わせることなしに、前記メタデータ・アクセス動作の前記複数のインスタンスが前記処理回路によって実施される、ステップと
を含む、方法。 - 少なくとも1つのアクセス・インジケータが、前記メタデータ・アクセス動作の各インスタンスによってアクセスされるメタデータ項目の数に関する制約情報を示すために提供され、前記少なくとも1つのコマンドに応答して実施される前記メタデータ・アクセス動作の前記複数のインスタンスが、前記少なくとも1つのアクセス・インジケータを参照して決定される、請求項1に記載の方法。
- 前記メタデータ・アクセス動作の前記複数のインスタンスとして、前記処理回路が、前記メタデータ・アクセス動作のインスタンスを、前記指定された数のメタデータ項目のすべてにアクセスするのに十分な数で実施することを、前記デバッガから前記処理回路に発行された前記少なくとも1つのコマンドが引き起こすことを可能にするのに十分な情報を、前記少なくとも1つのアクセス・インジケータが含んでいる、請求項2に記載の方法。
- 前記少なくとも1つのアクセス・インジケータが、前記処理回路の実装詳細に固有でない一般的な最小指示を提供し、前記メタデータ・アクセス動作の各インスタンスによってアクセスされるメタデータ項目の最小数を示す、請求項3に記載の方法。
- 前記少なくとも1つのアクセス・インジケータが、前記処理回路についての実装最小指示を提供し、前記メタデータ・アクセス動作の各インスタンスによってアクセスされるメタデータ項目の最小数を示す、請求項3に記載の方法。
- 前記少なくとも1つのアクセス・インジケータが、前記メタデータ・アクセス動作の各インスタンスによってアクセスされるメタデータ項目の前記数の正確な指示を提供する、請求項3に記載の方法。
- 前記少なくとも1つのアクセス・インジケータが、前記処理回路についての実装最大指示を提供し、前記メタデータ・アクセス動作の各インスタンスによってアクセスされるメタデータ項目の最大数を示す、請求項2に記載の方法。
- 前記デバッガによって前記処理回路に発行された前記少なくとも1つのコマンドは、前記処理回路が、前記メタデータ・アクセス動作の前記複数のインスタンスとして、M個のインスタンスを実施することを引き起こし、Mが、メタデータ項目の前記指定された数を、前記メタデータ・アクセス動作の各インスタンスによってアクセスされるメタデータ項目の前記最大数で除算したものに等しく、
前記処理回路が前記メタデータ・アクセス動作の前記複数のインスタンスを実施したとき、前記デバッガは、前記メタデータ・アクセス動作のさらなるインスタンスが必要とされるかどうかを決定するために、アクセスされる前記数のメタデータ項目の進捗を決定するために、前記処理回路に問い合わせるように構成される、
請求項7に記載の方法。 - 前記デバッガによって発行された前記少なくとも1つのコマンドは、前記メタデータ・アクセス動作の各インスタンスについてアドレスが前記処理回路によって決定されることを引き起こし、前記アドレスが、前記メタデータ・アクセス動作の関連するインスタンスの実施中にアクセスされる1つ又は複数のメタデータ項目を識別するために使用される、請求項1から8までのいずれか一項に記載の方法。
- 前記メタデータ・アクセス動作の各インスタンスについての前記アドレスが、前記少なくとも1つのアクセス・インジケータに従って決定される、請求項2に従属するときの請求項9に記載の方法。
- 前記少なくとも1つのコマンドが、前記メタデータ・アクセス動作の各インスタンスについてのコマンド・シーケンスを備え、前記コマンド・シーケンスが、少なくとも、前記メタデータ・アクセス動作の対応するインスタンスと、前記メタデータ・アクセス動作の前記対応するインスタンスによって使用されるべき前記アドレスを決定するためのアドレス生成動作とを備える、動作のシーケンスを識別する、請求項9又は10に記載の方法。
- アドレス空間領域が、アクセスされることになるメタデータ項目の前記指定された数に基づいて識別され、
前記デバッガによって誘発される前記メタデータ・アクセス動作の現在のインスタンスの実施中に、前記処理回路が、前記メタデータ・アクセス動作の次のインスタンスについての前記アドレスとして使用されるべき更新されたアドレスを生成するように構成され、前記更新されたアドレスは、前記現在のインスタンスによってアクセスされるメタデータ項目の前記数を考慮に入れるために前記現在のインスタンスによって使用される前記アドレスを修正すること、ただし、前記更新されたアドレスが前記アドレス空間領域内に残ることを確実にするために必要に応じて前記アドレス空間領域のある端部から前記アドレス空間領域の別の端部までラッピングするためのラッピング機能を採用することによって生成される、
請求項9に記載の方法。 - 前記処理回路の非デバッグ動作モードにおいて、前記メタデータ・アクセス動作の実施は、前記更新されたアドレスを生成したときに前記ラッピング機能が無効にされるように、前記処理回路が前記メタデータ・アクセス動作を実施することを引き起こす、請求項12に記載の方法。
- 前記デバッガが、前記ラッピング機能を選択的に無効にするように前記処理回路内の制御記憶要素をセットするように構成される、請求項12又は13に記載の方法。
- 前記少なくとも1つのコマンドが、前記メタデータ・アクセス動作の各インスタンスについての1つ又は複数のコマンドを備える、請求項1から14までのいずれか一項に記載の方法。
- 前記デバッガによって発行された前記少なくとも1つのコマンドは、前記処理回路が前記メタデータ・アクセス動作の前記複数のインスタンスを実施するために必要とされる前記動作を作成するために、前記処理回路内の動作生成回路によって処理される、請求項1から10まで又は12から14までのいずれか一項に記載の方法。
- 前記処理回路によって前記メタデータ・アクセス動作を前記複数回実施することは、前記指定された数のメタデータ項目が取り出され、選定されたレジスタに記憶されることを引き起こす、請求項1から16までのいずれか一項に記載の方法。
- 前記処理回路によって前記メタデータ・アクセス動作を前記複数回実施することは、前記指定された数のメタデータ項目の値が、選定されたレジスタに記憶されたメタデータ値を使用して更新されることを引き起こす、請求項1から16までのいずれか一項に記載の方法。
- メタデータ項目の前記指定された数が、前記選定されたレジスタに記憶され得るメタデータ項目の前記数によって決定される、請求項17又は18に記載の方法。
- 各メタデータ項目が1つ又は複数のビットを備える、請求項1から19までのいずれか一項に記載の方法。
- 各メタデータ項目は、関連するデータ・グラニュールが能力を指定するかどうかを識別する能力タグである、請求項1から20までのいずれか一項に記載の方法。
- 各メタデータ項目が、前記関連するデータ・グラニュールの割振りポリシーを識別する割振りタグである、請求項1から21までのいずれか一項に記載の方法。
- プログラム命令を含むコンピュータ・プログラムであって、前記プログラム命令は、コンピュータ・プロセッサによって実行されたとき、前記コンピュータ・プロセッサが、処理回路上で実行されるべきプログラムをデバッグする方法を実施するためにデバッガとして動作することを引き起こし、前記処理回路が、関連するメタデータ項目を有するデータ・グラニュールから形成されたデータに対して動作し、前記方法は、
前記処理回路によって複数回にわたってメタデータ・アクセス動作を引き起こすために指定された数のメタデータ項目にアクセスすることを決めるステップと、
前記処理回路が、前記指定された数のメタデータ項目の少なくともサブセットにアクセスするために前記メタデータ・アクセス動作の複数のインスタンスを実施することを引き起こすために、前記処理回路に少なくとも1つのコマンドを発行するステップであって、前記メタデータ・アクセス動作の各インスタンスによってアクセスされるメタデータ項目の数は、前記デバッガにとって非決定論的であり、前記少なくとも1つのコマンドに従って、前記デバッガが、アクセスされる前記数のメタデータ項目の進捗を決定するために前記メタデータ・アクセス動作の各インスタンスの間に前記処理回路に問い合わせることなしに、前記メタデータ・アクセス動作の前記複数のインスタンスが前記処理回路によって実施される、ステップと
を含む、コンピュータ・プログラム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB1803168.2A GB2571350B (en) | 2018-02-27 | 2018-02-27 | A method of accessing metadata when debugging a program to be executed on processing circuitry |
GB1803168.2 | 2018-02-27 | ||
PCT/GB2019/050123 WO2019166759A1 (en) | 2018-02-27 | 2019-01-17 | A method of accessing metadata when debugging a program to be executed on processing circuitry |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021515307A JP2021515307A (ja) | 2021-06-17 |
JP7369701B2 true JP7369701B2 (ja) | 2023-10-26 |
Family
ID=61903430
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020543981A Active JP7369701B2 (ja) | 2018-02-27 | 2019-01-17 | 処理回路上で実行されるべきプログラムをデバッグするときにメタデータにアクセスする方法 |
Country Status (8)
Country | Link |
---|---|
US (1) | US11048617B2 (ja) |
EP (1) | EP3759605A1 (ja) |
JP (1) | JP7369701B2 (ja) |
KR (1) | KR102658588B1 (ja) |
CN (1) | CN111742304B (ja) |
GB (1) | GB2571350B (ja) |
IL (1) | IL276317B2 (ja) |
WO (1) | WO2019166759A1 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2574231B (en) * | 2018-05-31 | 2020-12-30 | Advanced Risc Mach Ltd | An apparatus and method for triggering action performance |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090254883A1 (en) | 2008-04-03 | 2009-10-08 | International Business Machines Corporation | Metadata-integrated debugger |
US9053233B2 (en) | 2011-08-15 | 2015-06-09 | Freescale Semiconductor, Inc. | Method and device for controlling debug event resources |
US20180365130A1 (en) | 2017-06-15 | 2018-12-20 | Silicon Laboratories Inc. | Wireless Debugging |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5621886A (en) * | 1995-06-19 | 1997-04-15 | Intel Corporation | Method and apparatus for providing efficient software debugging |
US6145123A (en) * | 1998-07-01 | 2000-11-07 | Advanced Micro Devices, Inc. | Trace on/off with breakpoint register |
JP4933693B2 (ja) * | 1998-08-24 | 2012-05-16 | マイクロユニティ システムズ エンジニアリング インコーポレイテッド | ワイド・オペランド・アーキテクチャを含むシステムおよび方法 |
US6343358B1 (en) * | 1999-05-19 | 2002-01-29 | Arm Limited | Executing multiple debug instructions |
JP2003050716A (ja) * | 2001-08-06 | 2003-02-21 | Matsushita Electric Ind Co Ltd | ソフトウエアデバッガとソフトウエア開発支援システム |
US7421681B2 (en) * | 2003-10-09 | 2008-09-02 | International Business Machines Corporation | Method and system for autonomic monitoring of semaphore operation in an application |
US7853834B2 (en) * | 2007-01-30 | 2010-12-14 | Freescale Semiconductor, Inc. | Instruction-based timer control during debug |
JP5943283B2 (ja) * | 2009-08-07 | 2016-07-05 | リアルディー インコーポレイテッドRealD Inc. | 立体視画像を表示するフラットパネルディスプレイ、立体視画像を表示する方法、及び、立体視画像を表示するフラットパネルディスプレイのコントローラ |
US8468172B2 (en) * | 2010-05-14 | 2013-06-18 | Sap Ag | Integrated application server and data server processes with matching data formats |
JP2012216134A (ja) * | 2011-04-01 | 2012-11-08 | Renesas Electronics Corp | プログラムデバッグ装置およびプログラムデバッグ方法 |
JP6023765B2 (ja) * | 2014-09-01 | 2016-11-09 | インテル・コーポレーション | 無制限トランザクショナルメモリ(utm)システムの最適化 |
US10452399B2 (en) * | 2015-09-19 | 2019-10-22 | Microsoft Technology Licensing, Llc | Broadcast channel architectures for block-based processors |
GB2571352B (en) * | 2018-02-27 | 2020-10-21 | Advanced Risc Mach Ltd | An apparatus and method for accessing metadata when debugging a device |
-
2018
- 2018-02-27 GB GB1803168.2A patent/GB2571350B/en active Active
-
2019
- 2019-01-17 KR KR1020207025200A patent/KR102658588B1/ko active IP Right Grant
- 2019-01-17 CN CN201980014313.3A patent/CN111742304B/zh active Active
- 2019-01-17 WO PCT/GB2019/050123 patent/WO2019166759A1/en unknown
- 2019-01-17 EP EP19701713.0A patent/EP3759605A1/en active Pending
- 2019-01-17 JP JP2020543981A patent/JP7369701B2/ja active Active
- 2019-01-17 US US16/971,415 patent/US11048617B2/en active Active
-
2020
- 2020-07-27 IL IL276317A patent/IL276317B2/en unknown
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090254883A1 (en) | 2008-04-03 | 2009-10-08 | International Business Machines Corporation | Metadata-integrated debugger |
US9053233B2 (en) | 2011-08-15 | 2015-06-09 | Freescale Semiconductor, Inc. | Method and device for controlling debug event resources |
US20180365130A1 (en) | 2017-06-15 | 2018-12-20 | Silicon Laboratories Inc. | Wireless Debugging |
Also Published As
Publication number | Publication date |
---|---|
CN111742304B (zh) | 2024-06-21 |
KR102658588B1 (ko) | 2024-04-19 |
CN111742304A (zh) | 2020-10-02 |
IL276317A (en) | 2020-09-30 |
US20210034503A1 (en) | 2021-02-04 |
GB2571350B (en) | 2020-10-21 |
GB201803168D0 (en) | 2018-04-11 |
WO2019166759A1 (en) | 2019-09-06 |
IL276317B1 (en) | 2023-04-01 |
KR20200124243A (ko) | 2020-11-02 |
JP2021515307A (ja) | 2021-06-17 |
GB2571350A (en) | 2019-08-28 |
US11048617B2 (en) | 2021-06-29 |
EP3759605A1 (en) | 2021-01-06 |
IL276317B2 (en) | 2023-08-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI342492B (en) | Method of providing extended memory protection | |
JP5602638B2 (ja) | フォーマット制御を有する動的アドレス変換 | |
US10671548B2 (en) | Memory initialization detection system | |
JP7096840B2 (ja) | 能力メタデータを管理するための装置及び方法 | |
TWI818939B (zh) | 具有多個保護標籤設定指令的設備、方法、電腦程式及儲存媒體 | |
KR102658600B1 (ko) | 디바이스를 디버깅할 때 메타데이터에 액세스하기 위한 장치 및 방법 | |
JP7369701B2 (ja) | 処理回路上で実行されるべきプログラムをデバッグするときにメタデータにアクセスする方法 | |
JP2021512405A (ja) | メモリ・アクセスにおける保護タグ・チェックの制御 | |
JP7317099B2 (ja) | ガード・タグ紛失の取り扱い | |
CN112470134B (zh) | 数据处理装置和数据处理方法 | |
TW202403562A (zh) | 用於記憶體位址空間之頁面的「讀值只有x」性質 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220107 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230124 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20230424 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230622 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20230922 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20231016 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7369701 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |