Browse Prior Art Database

Memory Map Input/Output to Program Input/Output Translation

IP.com Disclosure Number: IPCOM000116055D
Original Publication Date: 1995-Jul-01
Included in the Prior Art Database: 2005-Mar-30
Document File: 2 page(s) / 72K

Publishing Venue

IBM

Related People

Kam, PK: AUTHOR

Abstract

In the PCMCIA standard, the Card & Socket Services software allows only two Input/Output (I/O) address Windows, but provides five memory address windows. Besides, the I/O Windows impose more restrictions on use to the application software. This is because there is much less I/O address space than memory address space in the host. If an IC card requires many separate blocks of I/O addresses, then the two I/O windows will not be able to do the job. In this article a method of using the Memory Map instructions to replace the Program I/O instructions is described.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 52% of the total text.

Memory Map Input/Output to Program Input/Output Translation

      In the PCMCIA standard, the Card & Socket Services software
allows only two Input/Output (I/O) address Windows, but provides five
memory address windows.  Besides, the I/O Windows impose more
restrictions on use to the application software.  This is because
there is much less I/O address space than memory address space in the
host.  If an IC card requires many separate blocks of I/O addresses,
then the two I/O windows will not be able to do the job.  In this
article a method of using the Memory Map instructions to replace the
Program I/O instructions is described.

      In designing PCMCIA cards, it is convenient to pick up existing
controller modules that have been proven to work in ISA bus personal
computers.  An interface ASIC chip must be designed to bridge the
PCMCIA bus to the ISA bus that the controller module is designed to
interface with.  These existing controllers sometimes have fixed I/O
addresses registers.  Program I/O instructions are the only way to
communicate with them.

      An example of this type of controller is a Multi-media audio
control module.  It has a game port which has a fixed I/O address of
'201'H, a MIDI port which has I/O addresses '330'H to '335'H and a
Digital Signal Processor (DSP) which requires I/O addresses '030'H to
'03F'H.  Usually the DSP supports several sets of I/O addresses to
avoid I/O address conflicts.  In this article we will consider only
one set for easy explanation.

      If this audio controller DSP is used in a PCMCIA card, it
requires three I/O windows because the Card & Socket Service software
allows each I/O window to be a maximum of 256 I/O address spaces.
The three I/O windows are:
  '030'H to '03F'H
  '201'H
  '330'H to '335'H

      Since there are only two I/O windows in th...