Claims
- 1. An apparatus for use in a computer system which includes a central processing unit (CPU), an address bus and a data bus, said apparatus used for preventing a peripheral device connected to said address bus and said data bus from executing a predetermined command sequence, said apparatus comprising:
- means for receiving address and data signals to said peripheral device;
- means for detecting said predetermined command sequence, said command sequence comprising a predetermined plurality of sequences of address and data signals received by said address and data signal receiving means; and
- means for trapping said predetermined command sequence to prevent said predetermined command sequence from being read by said predetermined peripheral device and for substituting a predetermined data signal with a user programmable signal, once said predetermined sequence is detected to form a new command sequence determined by said user programmable signal.
- 2. An apparatus in accordance with claim 1 wherein said tracking means tracks a predetermined subsequence sufficient to indicate the identify of the predetermined sequence of address and data signals.
- 3. An apparatus in accordance with claim 2 wherein said tracking means comprises a state machine.
- 4. An apparatus in accordance with claim 3 wherein said substituting means further comprises a multiplexer selectable from said state machine and a hardware register connected at the input of said multiplexer providing said replacement data signal.
- 5. An apparatus in accordance with claim 4 wherein said register has hardwired inputs.
- 6. A method for preventing a peripheral device in a computer system which includes a central processing unit (CPU), an address bus and a data bus from executing a predetermined command sequence embodied in predetermined sequences of address and data signals therefrom, comprising the steps of:
- receiving address signals to said peripheral device;
- receiving data signals to said peripheral device;
- detecting a predetermined command sequence, said command sequence comprising a predetermined plurality of sequences of address and data signals received at said address receiving step and said data receiving step;
- trapping said predetermined command sequence to prevent said predetermined command request from being read by said predetermined peripheral device and substituting at least one of the data signals received at said data receiving step with a user programmable signal once said predetermined sequence is detected to form a new command sequence determined by said user programmable signal; and
- sending the replacement data signal of said substituting step to the protected peripheral device.
- 7. A method in accordance with claim 6 wherein said tracking step tracks for the beginning portion of the predetermined sequence.
- 8. A method in accordance with claim 7 wherein said data signals received in said data signal receiving step correspond to commands to the peripheral device.
- 9. A method in accordance with claim 8 wherein said substituting step substitutes a read command for a write command.
- 10. A method in accordance with claim 8 wherein the peripheral device is a programmable memory device and said substituting step substitutes a read/reset command for a global write command to inhibit a global erase command.
- 11. An apparatus in a computer system which includes a central processing unit (CPU), an address bus and a data bus for erasure protecting of a memory device which is electrically erasable responsive to a predetermined command sequence, the apparatus comprising:
- a state machine responsive to address and data signals conveyed to the memory device;
- said state machine detecting a predetermined command sequence, said predetermined command sequence comprising a predetermined plurality of sequences of said address and data signals;
- means for trapping said predetermined command sequence to prevent said predetermined command request from being read by said predetermined peripheral device and for substituting at least one of the data signals conveyed to the memory device with a user programmable signal once said predetermined sequence is detected to form a new command sequence determined by said user programmable signal; and
- means for sending the replacement data signal from said substituting means to the memory device.
- 12. An apparatus in accordance with claim 11 wherein said substituting means comprises a multiplexer selectable by said state machine and a register connected at the input of said multiplexer providing a replacement data signal substituted for data signals conveyed to the memory device.
- 13. An apparatus in accordance with claim 12 wherein the input of said register is hardwired.
- 14. An apparatus in accordance with claim 13 wherein the predetermined command sequence is a global chip erase and said substituted data signal converts the global chip erase command sequence to a read/reset command sequence.
- 15. An apparatus in accordance with claim 12 wherein said memory device has a preselected number of addressable storage locations larger than one megabyte, said storage locations being selectable by at least twenty-one address lines A0-A20, said memory and a CPU connected to a common bus, said apparatus further comprising:
- a central processing unit (CPU) for processing data adapted to be coupled to one or more peripheral devices by way of a predetermined keyboard interface, said CPU having at least two modes of operation including a real mode of operation for accessing memory up to one megabyte, said mode of accessing memory above one megabyte, said mode of operation adapted to be selected by one or more predetermined control signals, said CPU adapted to be reset by way of a predetermined reset signal;
- means for enabling said A20 address line for memory accesses over one megabyte in response to a hardware based Gate A20 control signal;
- a system control processor (SCP) for communicating with said CPU and adapted to generate the reset signal for resetting said CPU under predetermined conditions; and
- interfacing means interconnected between said CPU and said SCP for interfacing said CPU and said SCP for controlling communication between said CPU and said SCP and for emulating said predetermined keyboard interface, said interfacing means including predetermined hardware for enabling switching the mode of operation of said CPU from said real mode of operation to said protected mode of operation and for generating the hardware based Gate A20 signal for enabling said CPU to access memory above one megabyte by automatically enabling said A20 address line in response to said hardware based Gate A20 control signal, said interfacing means further including means for enabling either said SCP or said CPU to generate said reset signal.
CROSS REFERENCE TO RELATED APPLICATIONS
This application is a continuation of application Ser. No. 08/218,412 filed Mar. 25, 1994, now abandoned which is a continuation-in-part of U.S. patent application Ser. No. 08/139,946, filed on Dec. 8, 1993, entitled FAST SWITCHING MEMORY MODE SYSTEM. This application is also related to the following co-pending applications; all filed on even date: NON-VOLATILE SECTOR PROTECTION FOR AN ELECTRICALLY ERASABLE READ ONLY MEMORY, Ser. No. 08/217,800; SHARED CODE STORAGE FOR MULTIPLE CPUs, Ser. No. 08/217,958; METHOD TO STORE PRIVILEGED DATA WITHIN THE PRIMARY CPU MEMORY SPACE, Ser. No. 08/218,273; PROGRAMMABLY RELOCATABLE CODE BLOCK, Ser. No. 08/217,846; WRITE ONCE READ ONLY REGISTERS, Ser. No. 08/220,961; METHOD FOR WARM BOOT FROM RESET, Ser. No. 08/218,968;PROGRAMMABLE HARDWARE COUNTER, Ser. No. 08/218,413; ALTERNATE I/O PORT ACCESS TO STANDARD REGISTER SET, Ser. No. 08/217,795.
US Referenced Citations (17)
Non-Patent Literature Citations (4)
Entry |
Press Release--"Zenith Data Systems introduces new class of high-performance modular notebook PCs". |
Mann "Unix and one AM 29000 Microprocessor" IEEE 1992 pp. 23-31. |
Jex "Flash Memory BIOS for PC and Notebook Computers" IEEE 1991 pp. 692-695. |
Specifications for Keyboard Controller, Intel Corporation, Sep. 1990. |
Continuations (1)
|
Number |
Date |
Country |
Parent |
218412 |
Mar 1994 |
|
Continuation in Parts (1)
|
Number |
Date |
Country |
Parent |
139946 |
Dec 1993 |
|