Electrical computers and digital processing systems: processing – Processing control – Branching
Patent
1995-12-15
1999-11-30
An, Meng-Ai T.
Electrical computers and digital processing systems: processing
Processing control
Branching
712207, G06F 942
Patent
active
059960710
ABSTRACT:
A pipelined x86 processor implements a method of detecting self-modifying code in which a prefetched block of instruction bytes may contain an instruction that is modified by a store instruction preceding it in the execution pipeline. The processor includes a Prefetch unit having a multi-block prefetch buffer, a Branch unit with a branch target cache (BTC), and a Load/Store (LDST) unit having store reservation stations. Self-modifying code is detected in three ways: (a) the Prefetch unit snoops store addresses from the LDST unit which are compared with (i) an address tag for each of the prefetch blocks of instruction bytes already loaded into the prefetch buffer, and (ii) the addresses of any pending prefetch requests, (b) the LDST unit snoops prefetch addresses issued by the Prefetch unit and compares them to store addresses queued in the store reservation stations, and (c) to ensure compatibility with the 486 specification for self-modifying code (which requires that a store that modifies an instruction be followed immediately by a jump to that instruction), the LDST unit detects when a store is followed by a COF that hits in the BTC which output a target address that is the same as the preceding store address. In particular, Prefetch unit snooping and LDST unit snooping detect instances of self-modifying code conditions that do not follow the 486 specification.
REFERENCES:
patent: 5226130 (1993-07-01), Favor et al.
patent: 5386519 (1995-01-01), Nakamura et al.
patent: 5434985 (1995-07-01), Emma et al.
patent: 5434987 (1995-07-01), Abramson et al.
patent: 5485587 (1996-01-01), Matsuo et al.
patent: 5701448 (1997-12-01), White
Fourcroy Antone L.
White Christopher E.
An Meng-Ai T.
Patel Gautam R.
VIA-Cyrix Inc.
LandOfFree
Detecting self-modifying code in a pipelined processor with bran does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Detecting self-modifying code in a pipelined processor with bran, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Detecting self-modifying code in a pipelined processor with bran will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-1687898