KR100492041B1 - 캐시를구비한데이터처리시스템및그방법 - Google Patents
캐시를구비한데이터처리시스템및그방법 Download PDFInfo
- Publication number
- KR100492041B1 KR100492041B1 KR1019970059182A KR19970059182A KR100492041B1 KR 100492041 B1 KR100492041 B1 KR 100492041B1 KR 1019970059182 A KR1019970059182 A KR 1019970059182A KR 19970059182 A KR19970059182 A KR 19970059182A KR 100492041 B1 KR100492041 B1 KR 100492041B1
- Authority
- KR
- South Korea
- Prior art keywords
- cache
- memory
- instruction
- command
- instructions
- 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.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3802—Instruction prefetching
- G06F9/3808—Instruction prefetching for instruction reuse, e.g. trace cache, branch target cache
- G06F9/381—Loop buffering
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0875—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with dedicated cache, e.g. instruction or stack
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1028—Power efficiency
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Executing Machine-Instructions (AREA)
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US8/748,855 | 1996-11-14 | ||
| US08/748,855 | 1996-11-14 | ||
| US08/748,855 US5893142A (en) | 1996-11-14 | 1996-11-14 | Data processing system having a cache and method therefor |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| KR19980042268A KR19980042268A (ko) | 1998-08-17 |
| KR100492041B1 true KR100492041B1 (ko) | 2005-08-25 |
Family
ID=25011219
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1019970059182A Expired - Fee Related KR100492041B1 (ko) | 1996-11-14 | 1997-11-11 | 캐시를구비한데이터처리시스템및그방법 |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US5893142A (enExample) |
| JP (1) | JP4057114B2 (enExample) |
| KR (1) | KR100492041B1 (enExample) |
Families Citing this family (35)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5983310A (en) * | 1997-02-13 | 1999-11-09 | Novell, Inc. | Pin management of accelerator for interpretive environments |
| US5956746A (en) * | 1997-08-13 | 1999-09-21 | Intel Corporation | Computer system having tag information in a processor and cache memory |
| US6055610A (en) * | 1997-08-25 | 2000-04-25 | Hewlett-Packard Company | Distributed memory multiprocessor computer system with directory based cache coherency with ambiguous mapping of cached data to main-memory locations |
| US6401196B1 (en) * | 1998-06-19 | 2002-06-04 | Motorola, Inc. | Data processor system having branch control and method thereof |
| US6598155B1 (en) * | 2000-01-31 | 2003-07-22 | Intel Corporation | Method and apparatus for loop buffering digital signal processing instructions |
| US6519684B1 (en) * | 1999-11-23 | 2003-02-11 | Motorola, Inc. | Low overhead method for selecting and updating an entry in a cache memory |
| US6963965B1 (en) | 1999-11-30 | 2005-11-08 | Texas Instruments Incorporated | Instruction-programmable processor with instruction loop cache |
| JP2001195302A (ja) * | 1999-11-30 | 2001-07-19 | Texas Instr Inc <Ti> | 命令ループ・バッファ |
| US6567895B2 (en) * | 2000-05-31 | 2003-05-20 | Texas Instruments Incorporated | Loop cache memory and cache controller for pipelined microprocessors |
| US20040088682A1 (en) * | 2002-11-05 | 2004-05-06 | Thompson Ryan C. | Method, program product, and apparatus for cache entry tracking, collision detection, and address reasignment in processor testcases |
| US7249248B2 (en) * | 2002-11-25 | 2007-07-24 | Intel Corporation | Method, apparatus, and system for variable increment multi-index looping operations |
| JP2007506171A (ja) * | 2003-09-16 | 2007-03-15 | コニンクリユケ フィリップス エレクトロニクス エヌ.ブイ. | キャッシュメモリを含む装置の電力節約動作 |
| AT500858B8 (de) * | 2004-08-17 | 2007-02-15 | Martin Schoeberl | Instruction cache für echtzeitsysteme |
| US20060190710A1 (en) * | 2005-02-24 | 2006-08-24 | Bohuslav Rychlik | Suppressing update of a branch history register by loop-ending branches |
| US20090055589A1 (en) * | 2007-08-24 | 2009-02-26 | Arm Limited | Cache memory system for a data processing apparatus |
| JP5159258B2 (ja) * | 2007-11-06 | 2013-03-06 | 株式会社東芝 | 演算処理装置 |
| US9398033B2 (en) | 2011-02-25 | 2016-07-19 | Cavium, Inc. | Regular expression processing automaton |
| US8711861B2 (en) | 2011-08-02 | 2014-04-29 | Cavium, Inc. | Lookup front end packet input processor |
| US9203805B2 (en) * | 2011-11-23 | 2015-12-01 | Cavium, Inc. | Reverse NFA generation and processing |
| US9557999B2 (en) | 2012-06-15 | 2017-01-31 | Apple Inc. | Loop buffer learning |
| US9753733B2 (en) | 2012-06-15 | 2017-09-05 | Apple Inc. | Methods, apparatus, and processors for packing multiple iterations of loop in a loop buffer |
| US9426165B2 (en) | 2013-08-30 | 2016-08-23 | Cavium, Inc. | Method and apparatus for compilation of finite automata |
| US9426166B2 (en) | 2013-08-30 | 2016-08-23 | Cavium, Inc. | Method and apparatus for processing finite automata |
| US9507563B2 (en) | 2013-08-30 | 2016-11-29 | Cavium, Inc. | System and method to traverse a non-deterministic finite automata (NFA) graph generated for regular expression patterns with advanced features |
| US9183155B2 (en) | 2013-09-26 | 2015-11-10 | Andes Technology Corporation | Microprocessor and method for using an instruction loop cache thereof |
| US9419943B2 (en) | 2013-12-30 | 2016-08-16 | Cavium, Inc. | Method and apparatus for processing of finite automata |
| US9275336B2 (en) | 2013-12-31 | 2016-03-01 | Cavium, Inc. | Method and system for skipping over group(s) of rules based on skip group rule |
| US9544402B2 (en) | 2013-12-31 | 2017-01-10 | Cavium, Inc. | Multi-rule approach to encoding a group of rules |
| US9667446B2 (en) | 2014-01-08 | 2017-05-30 | Cavium, Inc. | Condition code approach for comparing rule and packet data that are provided in portions |
| US9904630B2 (en) | 2014-01-31 | 2018-02-27 | Cavium, Inc. | Finite automata processing based on a top of stack (TOS) memory |
| US9602532B2 (en) | 2014-01-31 | 2017-03-21 | Cavium, Inc. | Method and apparatus for optimizing finite automata processing |
| US9471322B2 (en) | 2014-02-12 | 2016-10-18 | Apple Inc. | Early loop buffer mode entry upon number of mispredictions of exit condition exceeding threshold |
| US10002326B2 (en) | 2014-04-14 | 2018-06-19 | Cavium, Inc. | Compilation of finite automata based on memory hierarchy |
| US10110558B2 (en) | 2014-04-14 | 2018-10-23 | Cavium, Inc. | Processing of finite automata based on memory hierarchy |
| US9438561B2 (en) * | 2014-04-14 | 2016-09-06 | Cavium, Inc. | Processing of finite automata based on a node cache |
Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH06208508A (ja) * | 1992-11-02 | 1994-07-26 | Sgs Thomson Microelectron Inc | キャッシュタグメモリ |
| JPH06318174A (ja) * | 1992-04-29 | 1994-11-15 | Sun Microsyst Inc | キャッシュ・メモリ・システム及び主メモリに記憶されているデータのサブセットをキャッシュする方法 |
| JPH0773106A (ja) * | 1993-09-03 | 1995-03-17 | Nec Corp | キャッシュメモリ |
| US5479641A (en) * | 1993-03-24 | 1995-12-26 | Intel Corporation | Method and apparatus for overlapped timing of cache operations including reading and writing with parity checking |
| KR960008547A (ko) * | 1994-08-22 | 1996-03-22 | 빈센트 비. 인그라시아 | 캐시 태그(tag) 랜덤 액세스 메모리 및, 그 메모리에서의 다수의 유효 비트 무효화 방법 |
| KR970059938A (ko) * | 1996-01-25 | 1997-08-12 | 제프리 엘. 포맨 | 이중 사용 캐시 태그 어레이를 갖는 마이크로프로세서 아키텍처 |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4763253A (en) * | 1986-09-26 | 1988-08-09 | Motorola, Inc. | Microcomputer with change of flow |
| JPH0452741A (ja) * | 1990-06-14 | 1992-02-20 | Toshiba Corp | キャッシュメモリ装置 |
| JPH06243036A (ja) * | 1993-02-12 | 1994-09-02 | Hitachi Ltd | キャッシュ制御システム |
| US5666505A (en) * | 1994-03-11 | 1997-09-09 | Advanced Micro Devices, Inc. | Heuristic prefetch mechanism and method for computer system |
| US5535360A (en) * | 1994-08-31 | 1996-07-09 | Vlsi Technology, Inc. | Digital computer system having an improved direct-mapped cache controller (with flag modification) for a CPU with address pipelining and method therefor |
-
1996
- 1996-11-14 US US08/748,855 patent/US5893142A/en not_active Expired - Fee Related
-
1997
- 1997-10-24 JP JP30959897A patent/JP4057114B2/ja not_active Expired - Fee Related
- 1997-11-11 KR KR1019970059182A patent/KR100492041B1/ko not_active Expired - Fee Related
Patent Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH06318174A (ja) * | 1992-04-29 | 1994-11-15 | Sun Microsyst Inc | キャッシュ・メモリ・システム及び主メモリに記憶されているデータのサブセットをキャッシュする方法 |
| JPH06208508A (ja) * | 1992-11-02 | 1994-07-26 | Sgs Thomson Microelectron Inc | キャッシュタグメモリ |
| US5479641A (en) * | 1993-03-24 | 1995-12-26 | Intel Corporation | Method and apparatus for overlapped timing of cache operations including reading and writing with parity checking |
| JPH0773106A (ja) * | 1993-09-03 | 1995-03-17 | Nec Corp | キャッシュメモリ |
| KR960008547A (ko) * | 1994-08-22 | 1996-03-22 | 빈센트 비. 인그라시아 | 캐시 태그(tag) 랜덤 액세스 메모리 및, 그 메모리에서의 다수의 유효 비트 무효화 방법 |
| KR970059938A (ko) * | 1996-01-25 | 1997-08-12 | 제프리 엘. 포맨 | 이중 사용 캐시 태그 어레이를 갖는 마이크로프로세서 아키텍처 |
Also Published As
| Publication number | Publication date |
|---|---|
| JP4057114B2 (ja) | 2008-03-05 |
| JPH10154098A (ja) | 1998-06-09 |
| US5893142A (en) | 1999-04-06 |
| KR19980042268A (ko) | 1998-08-17 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5893142A (en) | Data processing system having a cache and method therefor | |
| US7958311B2 (en) | Cache line replacement techniques allowing choice of LFU or MFU cache line replacement | |
| JP3504282B2 (ja) | 実時間キャッシュ機能を提供する集積回路用チップ | |
| US5586295A (en) | Combination prefetch buffer and instruction cache | |
| US5870576A (en) | Method and apparatus for storing and expanding variable-length program instructions upon detection of a miss condition within an instruction cache containing pointers to compressed instructions for wide instruction word processor architectures | |
| US6138208A (en) | Multiple level cache memory with overlapped L1 and L2 memory access | |
| US6356990B1 (en) | Set-associative cache memory having a built-in set prediction array | |
| US5210842A (en) | Data processor having instruction varied set associative cache boundary accessing | |
| KR101441019B1 (ko) | 마이크로프로세서용 구성가능한 캐시 | |
| KR100395756B1 (ko) | 캐쉬 메모리 및 이를 이용하는 마이크로 프로세서 | |
| JPH1055307A (ja) | コンピュータ・システム | |
| KR100470516B1 (ko) | 분포된태그캐시메모리시스템및그것에데이터를저장하기위한시스템 | |
| US7130963B2 (en) | System and method for instruction memory storage and processing based on backwards branch control information | |
| KR101462220B1 (ko) | 마이크로프로세서용 구성가능한 캐시 | |
| JP2002007210A (ja) | デジタルデータ処理システム、それに使用される集積回路キャッシュメモリ装置およびキャッシュメモリの動作方法 | |
| US20040221117A1 (en) | Logic and method for reading data from cache | |
| US6606687B1 (en) | Optimized hardware cleaning function for VIVT data cache | |
| KR101039018B1 (ko) | 다중-상태 프로세서를 위한 캐싱 명령들 | |
| US5926841A (en) | Segment descriptor cache for a processor | |
| WO1997034229A9 (en) | Segment descriptor cache for a processor | |
| EP1107110B1 (en) | Instruction loop buffer | |
| US6963965B1 (en) | Instruction-programmable processor with instruction loop cache | |
| US7577791B2 (en) | Virtualized load buffers | |
| US7447884B2 (en) | Multi-table branch prediction circuit for predicting a branch's target address based on the branch's delay slot instruction address | |
| JP3688736B2 (ja) | データメモリ |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PA0109 | Patent application |
St.27 status event code: A-0-1-A10-A12-nap-PA0109 |
|
| R17-X000 | Change to representative recorded |
St.27 status event code: A-3-3-R10-R17-oth-X000 |
|
| PG1501 | Laying open of application |
St.27 status event code: A-1-1-Q10-Q12-nap-PG1501 |
|
| R17-X000 | Change to representative recorded |
St.27 status event code: A-3-3-R10-R17-oth-X000 |
|
| PN2301 | Change of applicant |
St.27 status event code: A-3-3-R10-R13-asn-PN2301 St.27 status event code: A-3-3-R10-R11-asn-PN2301 |
|
| A201 | Request for examination | ||
| P11-X000 | Amendment of application requested |
St.27 status event code: A-2-2-P10-P11-nap-X000 |
|
| P13-X000 | Application amended |
St.27 status event code: A-2-2-P10-P13-nap-X000 |
|
| PA0201 | Request for examination |
St.27 status event code: A-1-2-D10-D11-exm-PA0201 |
|
| D13-X000 | Search requested |
St.27 status event code: A-1-2-D10-D13-srh-X000 |
|
| D14-X000 | Search report completed |
St.27 status event code: A-1-2-D10-D14-srh-X000 |
|
| R17-X000 | Change to representative recorded |
St.27 status event code: A-3-3-R10-R17-oth-X000 |
|
| E902 | Notification of reason for refusal | ||
| PE0902 | Notice of grounds for rejection |
St.27 status event code: A-1-2-D10-D21-exm-PE0902 |
|
| N231 | Notification of change of applicant | ||
| PN2301 | Change of applicant |
St.27 status event code: A-3-3-R10-R13-asn-PN2301 St.27 status event code: A-3-3-R10-R11-asn-PN2301 |
|
| T11-X000 | Administrative time limit extension requested |
St.27 status event code: U-3-3-T10-T11-oth-X000 |
|
| P11-X000 | Amendment of application requested |
St.27 status event code: A-2-2-P10-P11-nap-X000 |
|
| P13-X000 | Application amended |
St.27 status event code: A-2-2-P10-P13-nap-X000 |
|
| E701 | Decision to grant or registration of patent right | ||
| PE0701 | Decision of registration |
St.27 status event code: A-1-2-D10-D22-exm-PE0701 |
|
| GRNT | Written decision to grant | ||
| PR0701 | Registration of establishment |
St.27 status event code: A-2-4-F10-F11-exm-PR0701 |
|
| PR1002 | Payment of registration fee |
St.27 status event code: A-2-2-U10-U11-oth-PR1002 Fee payment year number: 1 |
|
| PG1601 | Publication of registration |
St.27 status event code: A-4-4-Q10-Q13-nap-PG1601 |
|
| PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 4 |
|
| PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 5 |
|
| PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 6 |
|
| R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-5-5-R10-R18-oth-X000 |
|
| R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-5-5-R10-R18-oth-X000 |
|
| R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-5-5-R10-R18-oth-X000 |
|
| PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 7 |
|
| PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 8 |
|
| R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-5-5-R10-R18-oth-X000 |
|
| FPAY | Annual fee payment |
Payment date: 20130507 Year of fee payment: 9 |
|
| PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 9 |
|
| FPAY | Annual fee payment |
Payment date: 20140512 Year of fee payment: 10 |
|
| PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 10 |
|
| LAPS | Lapse due to unpaid annual fee | ||
| PC1903 | Unpaid annual fee |
St.27 status event code: A-4-4-U10-U13-oth-PC1903 Not in force date: 20150521 Payment event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE |
|
| PC1903 | Unpaid annual fee |
St.27 status event code: N-4-6-H10-H13-oth-PC1903 Ip right cessation event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE Not in force date: 20150521 |
|
| PN2301 | Change of applicant |
St.27 status event code: A-5-5-R10-R13-asn-PN2301 St.27 status event code: A-5-5-R10-R11-asn-PN2301 |
|
| P22-X000 | Classification modified |
St.27 status event code: A-4-4-P10-P22-nap-X000 |