English
Language : 

CD1865 Datasheet, PDF (83/150 Pages) Intel Corporation – Intelligent Eight-Channel Communications Controller
8.0
8.1
Intelligent Eight-Channel Communications Controller — CD1865
Programming
Types of Registers
The CD1865 contains three types of registers:
• Global registers — registers not specific to a particular channel
• Indexed Indirect registers — special registers that are mapped to unique functions
• Channel registers — registers specific to each channel
Global Registers
Global registers contain information common to all channels. They are used primarily for passing
vectors and setting-up service request handling.
Indexed Indirect Registers
Indexed Indirect registers are special registers that either point to the FIFOs or signal the end-of-
service request processing. The Indexed Indirect registers are used primarily to transfer data to and
from the serial channel FIFOs. Such transfers can be done only during a service request. When
service requests are being serviced by the host, a context-switching technique is used by the
CD1865 that reduces the number of cycles needed by the host to transfer data to and from the
CD1865. The CD1865 makes available to the host all the registers pertaining to the channel
requesting service by mapping them through to the Indexed Indirect register addresses. This
removes the burden, of keeping different addresses according to which channel is being accessed,
from the host.
FIFO information is channeled through either the Receive Data register, the Receive Character
Status register, or the Transmit Data register of the Indexed Indirect register set. Use of the Indexed
Indirect registers is valid only during appropriate service requests; the Transmit Data register can
be accessed during Transmit Service Requests, but not during Receive or Modem Service
Requests. The Channel Access register’s (CAR) content is left unchanged from the value last set by
the user, but it is not used in a service request context. The CAR should not be modified during a
service request. During a service request, only access the channel that has caused the service
request to be issued (as defined by the Global Interrupting Channel register).
Channel Registers
Channel registers are used to store parameters specific to each channel, such as bit rates, special
character processing, and modem options. When not actively involved in a service request, each
channel can be accessed at any time, independently of the other channels. Channel registers can be
accessed by first writing the number of the channel to be accessed into the Channel Access register.
The channel number in the CAR is used by the CD1865 as part of the Channel register Address.
Individual CD1865 registers are addressed by a seven-bit address contained in Address Bus bits
A6-A0. Address bit A6 set to a ‘1’ selects the Global registers, and when set to a ‘0’ selects the
Channel registers. When the CD1865 is not in a service request context, the active channel is
defined in the CAR. The contents of the CAR then become part of the Address Field (along with
A0–A5) needed to access the Channel register file.
Datasheet
83