摘要 |
PURPOSE: A method for preventing a dead lock of a bus direction multiprocessing system is provided to prevent a fatal error caused by a bus access retrial between processors by repeatedly reading a flag through processors, performing a locking operation if the flag is cleared, clearing the flag after completing a related operation in a corresponding processor in a locking process. CONSTITUTION: A processor judges whether a cache miss is generated at a reading period(ST100). If a cache miss is generated, a system bus using right is requested for accessing to a main memory. If an arbitration is successful(ST103), an address is operated on a bus(ST104) and it is judged whether a memory response with respect to the operated address exists(ST105). If the memory response exists, data are waited(ST106). If data are reached(ST107), a related cache status is updated or a shared related data is progressed(ST108). The cycle is completed(ST109), an address of other block is observed, an address bus is checked, and a reading flag/SHD flag is cleared(ST110). A bus period snoops continuously and it is judges whether a reading flag is set or not(ST111). If the reading flag is set and a bus access to other processor is reading period(ST112, ST113), a shared operation SHD flag is set and operated on a bus instead of a snack operation(ST114).
|