Panich, 1999 - Google Patents
Reducing instruction cache energy using gated wordlinesPanich, 1999
View PDF- Document ID
- 15332925220532734014
- Author
- Panich M
- Publication year
External Links
Snippet
The power dissipated by the level-I Instruction cache is often a considerable part of the total power dissipated by the entire microprocessor. In this thesis, we focuses on reducing the power consumption of the I-cache by using an in-cache instruction compression technique …
- 238000000034 method 0 abstract description 99
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06F—ELECTRICAL 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/0893—Caches characterised by their organisation or structure
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06F—ELECTRICAL DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for programme control, e.g. control unit
- G06F9/06—Arrangements for programme control, e.g. control unit using stored programme, i.e. using internal store of processing equipment to receive and retain programme
- G06F9/30—Arrangements for executing machine-instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline, look ahead
- G06F9/3824—Operand accessing
- G06F9/383—Operand prefetching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06F—ELECTRICAL 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/0844—Multiple simultaneous or quasi-simultaneous cache accessing
- G06F12/0846—Cache with multiple tag or data arrays being simultaneously accessible
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06F—ELECTRICAL DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for programme control, e.g. control unit
- G06F9/06—Arrangements for programme control, e.g. control unit using stored programme, i.e. using internal store of processing equipment to receive and retain programme
- G06F9/30—Arrangements for executing machine-instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline, look ahead
- G06F9/3818—Decoding for concurrent execution
- G06F9/382—Pipelined decoding, e.g. using predecoding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06F—ELECTRICAL DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for programme control, e.g. control unit
- G06F9/06—Arrangements for programme control, e.g. control unit using stored programme, i.e. using internal store of processing equipment to receive and retain programme
- 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; COUNTING
- G06F—ELECTRICAL DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for programme control, e.g. control unit
- G06F9/06—Arrangements for programme control, e.g. control unit using stored programme, i.e. using internal store of processing equipment to receive and retain programme
- G06F9/30—Arrangements for executing machine-instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06F—ELECTRICAL DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for programme control, e.g. control unit
- G06F9/06—Arrangements for programme control, e.g. control unit using stored programme, i.e. using internal store of processing equipment to receive and retain programme
- G06F9/30—Arrangements for executing machine-instructions, e.g. instruction decode
- G06F9/3017—Runtime instruction translation, e.g. macros
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06F—ELECTRICAL DIGITAL DATA PROCESSING
- G06F1/00—Details of data-processing equipment not covered by groups G06F3/00 - G06F13/00, e.g. cooling, packaging or power supply specially adapted for computer application
- G06F1/16—Constructional details or arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06F—ELECTRICAL DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06F—ELECTRICAL 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06F—ELECTRICAL DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| Villa et al. | Dynamic zero compression for cache energy reduction | |
| Ranganathan et al. | Reconfigurable caches and their application to media processing | |
| KR102611813B1 (en) | Coprocessors with bypass optimization, variable grid architecture, and fused vector operations | |
| US7711927B2 (en) | System, method and software to preload instructions from an instruction set other than one currently executing | |
| Zhang et al. | A way-halting cache for low-energy high-performance systems | |
| JP3072705B2 (en) | Circuit and method for reducing power consumption of a superscalar processor | |
| Tseng et al. | Energy-efficient register access | |
| JP5341163B2 (en) | Instruction cache with a fixed number of variable-length instructions | |
| Macii et al. | Memory design techniques for low energy embedded systems | |
| MX2007006580A (en) | Translation lookaside buffer (tlb) access supression for intra-page program counter relative or absolute address branch instructions. | |
| Kucuk et al. | Energy: efficient instruction dispatch buffer design for superscalar processors | |
| Min et al. | Partial tag comparison: A new technology for power-efficient set-associative cache designs | |
| US6032241A (en) | Fast RAM for use in an address translation circuit and method of operation | |
| US7380105B2 (en) | Prediction based instruction steering to wide or narrow integer cluster and narrow address generation | |
| Bardizbanyan et al. | Speculative tag access for reduced energy dissipation in set-associative L1 data caches | |
| Panich | Reducing instruction cache energy using gated wordlines | |
| Pujara et al. | Restrictive compression techniques to increase level 1 cache capacity | |
| Inoue et al. | A history-based I-cache for low-energy multimedia applications | |
| Petrov et al. | Data cache energy minimizations through programmable tag size matching to the applications | |
| Unsal et al. | Cool-cache: A compiler-enabled energy efficient data caching framework for embedded/multimedia processors | |
| Balasubramonian et al. | Hot-and-cold: Using criticality in the design of energy-efficient caches | |
| Jin et al. | Reducing cache traffic and energy with macro data load | |
| Hsiao et al. | An efficient wakeup design for energy reduction in high-performance superscalar processors | |
| Moshnyaga | Energy reduction in queues and stacks by adaptive bitwidth compression | |
| US20070011432A1 (en) | Address generation unit with operand recycling |