发明名称 Method for emulating multiple debug breakpoints by page partitioning using a single breakpoint register
摘要 A single breakpoint address register on a CPU is shared to emulate a plurality of breakpoint registers. A plurality of breakpoints are stored in an emulation area of main memory. One of these breakpoints is loaded into the single breakpoint register on the CPU. When a translation-lookaside buffer (TLB) on the CPU detects a page miss, a page miss handler activates a debug processing routine to determine if the faulting page contains one of the breakpoints. If the faulting page does contain a breakpoint, then this breakpoint is written to the single breakpoint register on the CPU. Any page in TLB is invalidated if it contained the old breakpoint that was overwritten by the new breakpoint in the single breakpoint register. Thus only one breakpoint can have a page translation in the TLB at any time, and the breakpoints are swapped in and out of single breakpoint register when the TLB entries are swapped. A TLB invalidate entry instruction finds the old breakpoint's TLB entry and invalidates it. When multiple breakpoints exist on a single page, then that page is divided into partial pages, with each partial page having just one breakpoint. The TLB entries contain upper and lower bounds fields to identify the extent of the partial page. A bit in the condition register is set when multiple breakpoints exist on the same page.
申请公布号 US5664159(A) 申请公布日期 1997.09.02
申请号 US19950436136 申请日期 1995.05.08
申请人 EXPONENTIAL TECHNOLOGY, INC. 发明人 RICHTER, DAVID E.;BLOMGREN, JAMES S.
分类号 G06F11/36;G06F12/10;(IPC1-7):G06F12/10 主分类号 G06F11/36
代理机构 代理人
主权项
地址