Burst-loading of instructions into processor cache by execution

Electrical computers and digital processing systems: memory – Storage accessing and control – Hierarchical memories

Patent

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

712225, G06F 1208

Patent

active

061417327

ABSTRACT:
An apparatus and method for accelerating interpretive environments may burst-load selected blocks of instructions into a processor cache. In an illustrated example, an interpretive instruction set implementing a virtual machine is modified to include a jump instruction embedded in each interpretive instruction. Each of the jump instructions points to a successive interpreter instruction, and the last jump instruction is a return to the main program. The interpretive instructions are crafted to occupy a single cache line as a compiled, linked, and loaded image. Consequently, burst-loading is accomplished by pointing to the jump instruction within an initial interpretive instruction. The cache registers a miss when the processor attempts to load the jump instruction, and a MMU loads a main memory block containing the initial interpretive instruction into a cache line. The jump instruction is executed, which results in the MMU loading a successive interpreter instruction into a cache line. This process continues until the final interpretive instruction is loaded. The final jump returns control to the main program. In this manner, the entire interpretive instruction set is rapidly burst-loaded into the processor cache. The interpretive instruction set is preferably pinned or fenced within the cache, and the processor can thereafter execute instructions with low latency in an interpretive environment.

REFERENCES:
patent: 4277826 (1981-07-01), Collins et al.
patent: 4583166 (1986-04-01), Hartung et al.
patent: 4811215 (1989-03-01), Smith
patent: 4926322 (1990-05-01), Stimac et al.
patent: 5023776 (1991-06-01), Gregor
patent: 5202993 (1993-04-01), Tarsy et al.
patent: 5237669 (1993-08-01), Spear et al.
patent: 5274834 (1993-12-01), Kardach et al.
patent: 5303377 (1994-04-01), Gupta et al.
patent: 5325499 (1994-06-01), Kummer et al.
patent: 5371872 (1994-12-01), Larsen et al.
patent: 5394547 (1995-02-01), Correnti et al.
patent: 5414848 (1995-05-01), Sandage et al.
patent: 5471591 (1995-11-01), Edmondson et al.
patent: 5517651 (1996-05-01), Huck et al.
patent: 5553305 (1996-09-01), Gregor et al.
patent: 5555398 (1996-09-01), Raman
patent: 5642493 (1997-06-01), Burgess
patent: 5651136 (1997-07-01), Denton et al.
patent: 5652889 (1997-07-01), Sites
patent: 5781792 (1998-07-01), Asghar et al.
patent: 5838945 (1998-11-01), Emberson
patent: 5944815 (1999-08-01), Witt
patent: 5961631 (1999-10-01), Devereux et al.
Gosmann, Klaus et al., Code Reorganization for Instruction Caches, IEEE, 1993, pp. 214-223.
Furht, B. et al.,A Compiler-Directed Cache Strategy for GaAs Microprocessor Architectures, IEEE, 1988, pp. 186-192.
Hsu, Wei-Chung et al., A Performance Study of Instruction Cache Prefetching Methods, IEEE Transactions on Computers, vol. 47, No. 5, May 1998.
Young, Honesty C. et al., On Instruction and Data Prefetch Mechanisms, International Symposium on VLSI Technology, Systems, and Applications, May 31 to Jun. 2, 1995.
Zucker, Daniel F. et al., An Automated Method for Software Controlled Cache Prefetching, Proceedings of the 31.sup.st Annual Hawaii International Conference on System Sciences, IEEE, 1998, pp. 106-114.
Luk, Chi-Keung et al., Cooperative Prefetching: Compiler and Hardware Support for Effective Instruction Prefetching in Modern Processors, IEEE, 1998, pp. 182-193.
Margulis, "80386 Protected Mode Initialization," Dr. Dobb's Journal, pp. 36-39 (Oct. 1988).
Margulis, "Advanced 80386 Memory Management," Dr. Dobb's Journal, pp. 24, 28-30 (Apr. 1989).
Dudley, Jr., "Porting C Programs to 80386 Protected Mode," Dr. Dobb's Journal, pp. 16-18, 20 (Aug. 1990).
"Preemptible Cache Line Prefetch Algorithm and Implementation, " IBM Technical Disclosure Bulletin, vol. 33, No. 3B, pp. 371-373 (Aug. 1990).
Schulman, "Subatomic Programming," Dr. Dobb's Journal, pp. 137-139 (Mar. 1991).
"Generic BIOS Interrupt 13 Driver for Direct Access Storage Device," IBM Technical Disclosure Bulletin, vol. 37, No. 09, pp. 551-553 (Sep. 1994).
"Dual On-Chip Instruction Cache Organization in High Speed Processors," IBM Technical Disclosure Bulletin, vol. 37, No. 12 pp. 213-214 (Dec. 1994).
"Instruction Cache Block Touch Retro-Fitted onto Microprocessor," IbM Technical Disclosure Bulletin, vol. 38, No. 07 pp. 53-56 (Jul. 1995).
"Architecture of the Series 700 Bus," Hewlett Packared Manual excerpt, SPI Database of Software Technologies, .COPYRGT.1995 Software Patent Institute, 3 pages.
"An Experience Teaching a Graduate Course in Cryptography and Abstract and Introduction," 1996 Aviel D. Rubin excerpt, SPI Database of Software Technologies, .COPYRGT.1996 Software Patent Institute, 2 pages.
"An Experience Teaching a Graduate Course in Cryptography," 1996 Aviel D. Rubin excerpt, SPI Database of Software Technologies, .COPYRGT.1996 Software Patent Institute, pp. 7-10.

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Burst-loading of instructions into processor cache by execution does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Burst-loading of instructions into processor cache by execution , we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Burst-loading of instructions into processor cache by execution will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2065253

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.