High speed access to PC card memory using interrupts
First Claim
1. In a method of accessing memory located on a Personal Computer Memory Card International Association (PCMCIA) card within a host computer, said PCMCIA card comprising a PCMCIA bus, attribute memory, common memory and I/O space and operating under the control of a microcontroller on said PCMCIA card to perform at least one I/O function, wherein said microcontroller contains registers, and wherein said PCMCIA card has a configured and unconfigured state, and wherein said host includes a bus having address, data and control lines connected through an interface to said PCMCIA card bus, and wherein logic circuitry is provided on said PCMCIA card for monitoring said PCMCIA card bus, decoding said PCMCIA card bus signals and generating non-maskable interrupts as a result thereof, which interrupts are supplied to said microcontroller, said method comprising the following steps:
- decoding said PCMCIA card bus signals to determine when said host has made a request for access to attribute memory;
generating a non-maskable interrupt when said attribute memory access is detected;
running an interrupt routine located in said memory wherein said interrupt routine comprises the following steps;
disconnecting said I/O function of said PCMCIA card from said host;
saving said registers of said microcontroller;
performing said access to attribute memory requested by said host;
providing the results of said attribute memory access to said host;
testing to determine if said PCMCIA card has been configured;
if said test indicates that said PCMCIA card is configured, reconnect said I/O function of said PCMCIA card to said host; and
return control of said microcontroller to the location in code from which it was taken upon the occurrence of said interrupt.
1 Assignment
0 Petitions
Accused Products
Abstract
A system for accessing attribute memory on a card using the interrupt capability of a microcontroller on the PCMCIA card intended to perform I/O functions for the host. The attribute memory interfaces directly with the microcontroller. A PLD is connected between the host bus and the microcontroller decodes the host'"'"'s bus signals and generates an interrupt signal when it detects a request for access to the attribute memory which signal is supplied to the microcontroller. Upon receipt of the interrupt signal, the microcontroller runs a special routine that accesses attribute memory and supplies the results to the host. The PCMCIA card has a configured state in which the host has read the configuration information from attribute memory and has allocated necessary system resources. The PCMCIA card is in an unconfigured state if the foregoing has not been accomplished. The programmable logic device contains an AND gate having one of its inputs connected to the lines of the bus relating to the I/O function and a second input connected to the microprocessor for receiving a card enable signal, having at least two logic states. The control signals are passed to the microcontroller when the card enable signal is in one of the two logic states. The method consists of the steps of decoding the bus signals; when the host requests access to attribute memory, generate an interrupt signal and supply it to the microcontroller; the microcontroller runs an interrupt routine that includes saving the microcontroller registers, disabling the I/O functions, accessing the attribute memory, and providing the results to the host.
29 Citations
8 Claims
-
1. In a method of accessing memory located on a Personal Computer Memory Card International Association (PCMCIA) card within a host computer, said PCMCIA card comprising a PCMCIA bus, attribute memory, common memory and I/O space and operating under the control of a microcontroller on said PCMCIA card to perform at least one I/O function, wherein said microcontroller contains registers, and wherein said PCMCIA card has a configured and unconfigured state, and wherein said host includes a bus having address, data and control lines connected through an interface to said PCMCIA card bus, and wherein logic circuitry is provided on said PCMCIA card for monitoring said PCMCIA card bus, decoding said PCMCIA card bus signals and generating non-maskable interrupts as a result thereof, which interrupts are supplied to said microcontroller, said method comprising the following steps:
-
decoding said PCMCIA card bus signals to determine when said host has made a request for access to attribute memory; generating a non-maskable interrupt when said attribute memory access is detected; running an interrupt routine located in said memory wherein said interrupt routine comprises the following steps; disconnecting said I/O function of said PCMCIA card from said host;
saving said registers of said microcontroller;
performing said access to attribute memory requested by said host;
providing the results of said attribute memory access to said host;
testing to determine if said PCMCIA card has been configured;if said test indicates that said PCMCIA card is configured, reconnect said I/O function of said PCMCIA card to said host; and return control of said microcontroller to the location in code from which it was taken upon the occurrence of said interrupt. - View Dependent Claims (2, 3)
-
-
4. A computer system comprising:
-
a host computer having a host bus with address, data and control lines; a personal computer (PC) card having a PC card bus and microcontroller with associated memory, said memory being divided into at least a first section storing a startup routine and configuration information for said PC card and a second section storing I/O information used to perform at least one I/O function for said host, and wherein said startup routine and configuration are not available to said host through software commands alone after said startup routine has been completed; an interface for connecting said host bus to said PC card bus; logic on said PC card connected to and monitoring signals on said PC card bus and supplying an interrupt signal to said microcontroller upon decoding memory access commands from said host that request information stored in said first section of memory; and means in said microcontroller responsive to said interrupt signal for supplying said startup routine and configuration information stored in said first section of memory to said host computer. - View Dependent Claims (5, 6, 7, 8)
-
Specification