CN101216778B - 一种risc处理器装置及其指令地址转换查找方法 - Google Patents
一种risc处理器装置及其指令地址转换查找方法 Download PDFInfo
- Publication number
- CN101216778B CN101216778B CN2008100565406A CN200810056540A CN101216778B CN 101216778 B CN101216778 B CN 101216778B CN 2008100565406 A CN2008100565406 A CN 2008100565406A CN 200810056540 A CN200810056540 A CN 200810056540A CN 101216778 B CN101216778 B CN 101216778B
- Authority
- CN
- China
- Prior art keywords
- look
- instruction
- address
- index
- content
- 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
- 238000000034 method Methods 0.000 title claims abstract description 42
- 238000006243 chemical reaction Methods 0.000 title claims description 9
- 238000013519 translation Methods 0.000 claims abstract description 20
- 230000008569 process Effects 0.000 claims description 24
- 230000004913 activation Effects 0.000 claims description 2
- 230000006870 function Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 238000012797 qualification Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45537—Provision of facilities of other operating environments, e.g. WINE
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
- G06F12/1027—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/3004—Arrangements for executing specific machine instructions to perform operations on memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/3017—Runtime instruction translation, e.g. macros
- G06F9/30174—Runtime instruction translation, e.g. macros for non-native instruction set, e.g. Javabyte, legacy code
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/32—Address formation of the next instruction, e.g. by incrementing the instruction counter
- G06F9/322—Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Executing Machine-Instructions (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
Description
ASID | SPC | TPC |
Claims (10)
Priority Applications (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008100565406A CN101216778B (zh) | 2008-01-21 | 2008-01-21 | 一种risc处理器装置及其指令地址转换查找方法 |
CA2712683A CA2712683A1 (en) | 2008-01-21 | 2008-11-24 | A risc processor device and its instruction address conversion looking-up method |
EP08871463A EP2249252A4 (en) | 2008-01-21 | 2008-11-24 | RISC MICROPROCESSOR DEVICE AND METHOD FOR CONSULTING CONVERTING INSTRUCTION ADDRESSES |
KR1020107013932A KR101200083B1 (ko) | 2008-01-21 | 2008-11-24 | Risc 프로세서 장치 및 그의 명령어 어드레스의 전환 룩업 방법 |
JP2010542496A JP5261503B2 (ja) | 2008-01-21 | 2008-11-24 | Riscプロセッサ装置及びその命令アドレスの変換検索方法 |
PCT/CN2008/001907 WO2009092180A1 (zh) | 2008-01-21 | 2008-11-24 | 一种risc处理器装置及其指令地址转换查找方法 |
US12/863,840 US20100293545A1 (en) | 2008-01-21 | 2008-11-24 | risc processor device and its instruction address conversion looking-up method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008100565406A CN101216778B (zh) | 2008-01-21 | 2008-01-21 | 一种risc处理器装置及其指令地址转换查找方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101216778A CN101216778A (zh) | 2008-07-09 |
CN101216778B true CN101216778B (zh) | 2011-04-13 |
Family
ID=39623217
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008100565406A Active CN101216778B (zh) | 2008-01-21 | 2008-01-21 | 一种risc处理器装置及其指令地址转换查找方法 |
Country Status (7)
Country | Link |
---|---|
US (1) | US20100293545A1 (zh) |
EP (1) | EP2249252A4 (zh) |
JP (1) | JP5261503B2 (zh) |
KR (1) | KR101200083B1 (zh) |
CN (1) | CN101216778B (zh) |
CA (1) | CA2712683A1 (zh) |
WO (1) | WO2009092180A1 (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101216778B (zh) * | 2008-01-21 | 2011-04-13 | 中国科学院计算技术研究所 | 一种risc处理器装置及其指令地址转换查找方法 |
CN101751345B (zh) * | 2008-12-10 | 2012-04-11 | 国际商业机器公司 | 在主机中运行客户机的程序的模拟器和模拟方法 |
CN102647484B (zh) * | 2012-04-13 | 2014-11-26 | 成都安可信电子股份有限公司 | 一种同步通信网络终端地址搜索方法 |
CN103455363B (zh) * | 2013-08-30 | 2017-04-19 | 华为技术有限公司 | 一种虚拟机的指令处理方法、装置及物理主机 |
CN105989758B (zh) * | 2015-02-05 | 2019-03-19 | 龙芯中科技术有限公司 | 地址翻译方法和装置 |
PT3427148T (pt) | 2016-03-11 | 2022-03-23 | Lzlabs Gmbh | Compilador de módulo de carregamento |
CN105975252B (zh) * | 2016-04-29 | 2018-10-09 | 龙芯中科技术有限公司 | 一种处理指令的流水线的实现方法、装置及处理器 |
CN107621970B (zh) * | 2017-10-16 | 2021-02-05 | 郑州云海信息技术有限公司 | 一种异构cpu的虚拟机迁移方法和装置 |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2203572B (en) * | 1987-03-24 | 1991-11-27 | Insignia Solutions Limited | Improvements in data processing means |
JP2507756B2 (ja) * | 1987-10-05 | 1996-06-19 | 株式会社日立製作所 | 情報処理装置 |
JPH05250260A (ja) * | 1992-03-04 | 1993-09-28 | Toshiba Corp | 物理アドレス読出し機能を持つ仮想記憶制御方式の情報処理装置 |
US5442766A (en) * | 1992-10-09 | 1995-08-15 | International Business Machines Corporation | Method and system for distributed instruction address translation in a multiscalar data processing system |
JPH0793221A (ja) * | 1993-09-28 | 1995-04-07 | Hitachi Ltd | 仮想計算機システム及びその制御方法 |
EP0651320B1 (en) * | 1993-10-29 | 2001-05-23 | Advanced Micro Devices, Inc. | Superscalar instruction decoder |
JP3713312B2 (ja) * | 1994-09-09 | 2005-11-09 | 株式会社ルネサステクノロジ | データ処理装置 |
US5835964A (en) * | 1996-04-29 | 1998-11-10 | Microsoft Corporation | Virtual memory system with hardware TLB and unmapped software TLB updated from mapped task address maps using unmapped kernel address map |
US5721927A (en) * | 1996-08-07 | 1998-02-24 | Intel Corporation | Method for verifying contiquity of a binary translated block of instructions by attaching a compare and/or branch instruction to predecessor block of instructions |
US5815686A (en) * | 1996-09-12 | 1998-09-29 | Silicon Graphics, Inc. | Method and apparatus for address space translation using a TLB |
US5940872A (en) * | 1996-11-01 | 1999-08-17 | Intel Corporation | Software and hardware-managed translation lookaside buffer |
JP3274859B2 (ja) * | 1998-05-01 | 2002-04-15 | 松下電器産業株式会社 | データ処理装置 |
CN1136504C (zh) * | 2000-04-05 | 2004-01-28 | 黎明网络有限公司 | 一种动态分散信息交换方法及其实现模块 |
US6615300B1 (en) * | 2000-06-19 | 2003-09-02 | Transmeta Corporation | Fast look-up of indirect branch destination in a dynamic translation system |
US20030093775A1 (en) * | 2001-11-14 | 2003-05-15 | Ronald Hilton | Processing of self-modifying code under emulation |
EP1470476A4 (en) * | 2002-01-31 | 2007-05-30 | Arc Int | CONFIGURABLE DATA PROCESSOR WITH MULTI-LENGTH INSTRUCTION KIT ARCHITECTURE |
US7290253B1 (en) * | 2003-09-30 | 2007-10-30 | Vmware, Inc. | Prediction mechanism for subroutine returns in binary translation sub-systems of computers |
US7552426B2 (en) * | 2003-10-14 | 2009-06-23 | Microsoft Corporation | Systems and methods for using synthetic instructions in a virtual machine |
US8266116B2 (en) * | 2007-03-12 | 2012-09-11 | Broadcom Corporation | Method and apparatus for dual-hashing tables |
CN101216778B (zh) * | 2008-01-21 | 2011-04-13 | 中国科学院计算技术研究所 | 一种risc处理器装置及其指令地址转换查找方法 |
-
2008
- 2008-01-21 CN CN2008100565406A patent/CN101216778B/zh active Active
- 2008-11-24 WO PCT/CN2008/001907 patent/WO2009092180A1/zh active Application Filing
- 2008-11-24 KR KR1020107013932A patent/KR101200083B1/ko active IP Right Grant
- 2008-11-24 CA CA2712683A patent/CA2712683A1/en not_active Abandoned
- 2008-11-24 US US12/863,840 patent/US20100293545A1/en not_active Abandoned
- 2008-11-24 EP EP08871463A patent/EP2249252A4/en not_active Withdrawn
- 2008-11-24 JP JP2010542496A patent/JP5261503B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
EP2249252A1 (en) | 2010-11-10 |
JP2011510385A (ja) | 2011-03-31 |
US20100293545A1 (en) | 2010-11-18 |
JP5261503B2 (ja) | 2013-08-14 |
KR101200083B1 (ko) | 2012-11-12 |
EP2249252A4 (en) | 2012-04-18 |
WO2009092180A1 (zh) | 2009-07-30 |
CN101216778A (zh) | 2008-07-09 |
CA2712683A1 (en) | 2009-07-30 |
KR20100090709A (ko) | 2010-08-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101216778B (zh) | 一种risc处理器装置及其指令地址转换查找方法 | |
KR101817397B1 (ko) | 하나의 아키텍처의 코드 모듈이 다른 아키텍처의 라이브러리 모듈을 사용할 수 있게 하는 아키텍처 간 호환성 모듈 | |
US20070101099A1 (en) | Virtual machine control method and virtual machine system | |
CN102473139B (zh) | 包括用于i/o和计算卸载的多层次地址转换的i/o存储器管理单元 | |
CN103309644A (zh) | 用于微处理器的转译地址高速缓存 | |
CN101477495B (zh) | 分布式内存虚拟化技术的实现方法 | |
CN102073533B (zh) | 支持动态二进制翻译的多核体系结构 | |
CN102792286A (zh) | 虚拟化处理系统中的地址映射 | |
CN103777926A (zh) | 多线程处理单元中的高效存储器虚拟化 | |
CN102662869B (zh) | 虚拟机中的内存访问方法和装置及查找器 | |
JPH10320185A (ja) | プロセッサ特定アプリケーションの実行方法 | |
CN104487953A (zh) | 用于层次型存储器系统的存储器管理 | |
CN102792285A (zh) | 层级转换表控制 | |
US9075634B2 (en) | Minimizing overhead in resolving operating system symbols | |
CN105446900A (zh) | 处理器和区分系统管理模式条目的方法 | |
RU2006107184A (ru) | Способ и система для создания, хранения, управления и потребления специфичных культуре данных | |
CN102239478B (zh) | 数据访问处理方法和设备 | |
MX2008013345A (es) | Memoria asociada de instrucciones etiquetada virtualmente con un comportamiento etiquetado fisicamente. | |
CN102662860A (zh) | 用于进程切换的旁路转换缓冲器(tlb)及在其中地址匹配的方法 | |
CN104798061A (zh) | 在虚拟化环境中控制对存储器页面组的访问 | |
US20160103768A1 (en) | TLB Management Method and Computer | |
CN100468349C (zh) | 存储器测试方法 | |
CN112965921B (zh) | 一种多任务gpu中tlb管理方法及系统 | |
JPH0512126A (ja) | 仮想計算機のアドレス変換装置及びアドレス変換方法 | |
CN101620573A (zh) | X86体系结构内存管理单元虚拟化方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
EE01 | Entry into force of recordation of patent licensing contract |
Assignee: Beijing Loongson Zhongke Technology Service Center Co., Ltd. Assignor: Institute of Computing Technology, Chinese Academy of Sciences Contract fulfillment period: 2009.12.16 to 2028.12.31 Contract record no.: 2010990000062 Denomination of invention: RISC processor device and its instruction address conversion lookup method License type: exclusive license Record date: 20100128 |
|
LIC | Patent licence contract for exploitation submitted for record |
Free format text: EXCLUSIVE LICENSE; TIME LIMIT OF IMPLEMENTING CONTACT: 2009.12.16 TO 2028.12.31; CHANGE OF CONTRACT Name of requester: BEIJING LOONGSON TECHNOLOGY SERVICE CENTER CO., LT Effective date: 20100128 |
|
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
EC01 | Cancellation of recordation of patent licensing contract |
Assignee: Longxin Zhongke Technology Co., Ltd. Assignor: Institute of Computing Technology, Chinese Academy of Sciences Contract record no.: 2010990000062 Date of cancellation: 20141231 |
|
EM01 | Change of recordation of patent licensing contract |
Change date: 20141231 Contract record no.: 2010990000062 Assignee after: Longxin Zhongke Technology Co., Ltd. Assignee before: Beijing Loongson Zhongke Technology Service Center Co., Ltd. |
|
LICC | Enforcement, change and cancellation of record of contracts on the licence for exploitation of a patent or utility model | ||
EE01 | Entry into force of recordation of patent licensing contract |
Application publication date: 20080709 Assignee: Longxin Zhongke Technology Co., Ltd. Assignor: Institute of Computing Technology, Chinese Academy of Sciences Contract record no.: 2015990000066 Denomination of invention: RISC processor device and its instruction address conversion lookup method Granted publication date: 20110413 License type: Common License Record date: 20150211 |
|
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20200824 Address after: 100095, Beijing, Zhongguancun Haidian District environmental science and technology demonstration park, Liuzhou Industrial Park, No. 2 building Patentee after: LOONGSON TECHNOLOGY Corp.,Ltd. Address before: 100080 Haidian District, Zhongguancun Academy of Sciences, South Road, No. 6, No. Patentee before: Institute of Computing Technology, Chinese Academy of Sciences |
|
EC01 | Cancellation of recordation of patent licensing contract | ||
EC01 | Cancellation of recordation of patent licensing contract |
Assignee: LOONGSON TECHNOLOGY Corp.,Ltd. Assignor: Institute of Computing Technology, Chinese Academy of Sciences Contract record no.: 2015990000066 Date of cancellation: 20200928 |
|
CP01 | Change in the name or title of a patent holder | ||
CP01 | Change in the name or title of a patent holder |
Address after: 100095 Building 2, Longxin Industrial Park, Zhongguancun environmental protection technology demonstration park, Haidian District, Beijing Patentee after: Loongson Zhongke Technology Co.,Ltd. Address before: 100095 Building 2, Longxin Industrial Park, Zhongguancun environmental protection technology demonstration park, Haidian District, Beijing Patentee before: LOONGSON TECHNOLOGY Corp.,Ltd. |