|
Claims  |
|
|
I claim:
1. A modem adapter for bidirectionally interfacing an internal bus of a
personal computer (PC) to a telephone network via a standard PC parallel
port, comprising:
a modem module having an analog interface and a digital interface and
including means for responding to digital signals externally supplied to
said digital interface for outputting representative analog signals at
said analog interface and responding to analog signals externally supplied
to said analog interface for outputting representative digital signals at
said digital interface;
a modem controller having a PC interface and a modem interface;
a parallel port controller configured for connection to a standard PC
parallel port for bidirectionally transferring data bits in parallel
between the PC internal bus and said modem controller PC interface; and
means responsive to modem control software executed by said personal
computer for bidirectionally communicating data to said parallel port
controller from the PC internal bus;
said modem controller including means responsive to data bits supplied to
said PC interface from said parallel port controller for causing said
modem module to generate a representative analog signal at said analog
interface and responsive to digital signals at said modem module digital
interface for transferring data bits in parallel to said parallel port
interface means.
2. A modem adapter for bidirectionally interfacing an internal bus of a
personal computer (PC) to a telephone network via a standard PC parallel
port as in claim 1, additionally comprising:
a modem housing enclosing said modem module, said modem controller and said
parallel port controller; and
a 25-pin, D-shell connector, integral to said modem housing, that
physically connects said modem housing and electrically connects said
modem adapter to the standard PC parallel port.
3. A modem adapter for bidirectionally interfacing an internal bus of a
personal computer (PC) to a telephone network via a standard PC parallel
port as in claim 2, additionally comprising a data access arrangement for
coupling the telephone network to said modem module.
4. A modem adapter for bidirectionally interfacing an internal bus of a
personal computer (PC) to a telephone network via a standard PC parallel
port as in claim 3, additionally comprising an RJ-11 connector, integral
to the said modem housing, that electrically connects said data access
arrangement to the telephone network.
5. A modem adapter for bidirectionally interfacing an internal bus of a
personal computer (PC) to a telephone network via a standard PC parallel
port as in claim 4, wherein said modem controller additionally outputs a
serial digital signal to said modem module for modulation and receives a
demodulated serial input signal from said modem module.
6. A modem adapter for bidirectionally interfacing an internal bus of a
personal computer (PC) to a telephone network via a standard PC parallel
port as in claim 5, additionally comprising means to selectively couple
commands from the standard PC parallel port to a first or second device
wherein the first device is said modem controller.
7. A modem adapter for bidirectionally interfacing an internal bus personal
computer (PC) to a telephone network via a standard PC parallel port as in
claim 6, additionally comprising a LAN control and interface wherein said
LAN control and interface is the second device.
8. A modem adapter for bidirectionally interfacing an internal bus of a
personal computer (PC) to a telephone network via a standard PC parallel
port as in claim 7, wherein said personal computer is capable of
interfacing to a serial I/O port using serial I/O instructions and said
personal computer is under control of a microprocessor, further including:
means to intercept serial I/O instructions to the serial I/O port before
execution by the microprocessor;
means to reformat said serial I/O instructions into parallel I/O
instructions; and
means to redirect said parallel I/O instructions to the standard PC
parallel port.
9. A modem adapter for bidirectionally interfacing an internal bus of a
personal computer (PC) to a telephone network via a standard PC parallel
port as in claim 8, wherein:
said microprocessor is an 80.times.86 operating in a protected mode; and
said intercept means utilizes said protected mode to identify I/O
instructions to be intercepted.
10. A modem adapter for bidirectionally interfacing an internal bus of a
personal computer (PC) to a telephone network via a standard PC parallel
port as in claim 9, wherein said intercept and redirect means are
comprised of software instructions resident on the personal computer.
11. A modem adapter for bidirectionally interfacing an internal bus of a
personal computer (PC) to a telephone network via a standard PC parallel
port as in claim 10, wherein said modem controller is comprised of a
processor executing software instructions wherein all of said software
instructions are transferred from the personal computer via said modem
controller PC interface.
12. A LAN/modem adapter for bidirectionally interfacing an internal bus of
a personal computer (PC) to a telephone network via a standard PC parallel
port and additionally bidirectionally interfacing the internal bus of the
personal computer to a local area network (LAN) via the standard PC
parallel port, comprising:
a modem module having an analog interface and a digital interface and
including means for responding to digital signals externally supplied to
said digital interface for outputting representative analog signals at
said analog interface and responding to analog signals externally supplied
to said analog interface for outputting representative digital signals at
said digital interface;
a modem controller having a PC interface and a modem interface;
a LAN controller having a PC interface and coupled to the local area
network; and
a parallel port controller configured for connection to a standard PC
parallel port for bidirectionally transferring data bits in parallel
selectively between the PC internal bus and said modem controller PC
interface and said LAN controller PC interface;
said modem controller including means responsive to data bits supplied to
said modem controller PC interface from said parallel port controller for
causing said modem module to generate a representative analog signal at
said analog interface and responsive to digital signals at said modem
module digital interface for transferring data bits in parallel to said
parallel port interface means.
13. A LAN/modem adapter for bidirectionally interfacing an internal bus of
a personal computer (PC) to a telephone network via a standard PC parallel
port and additionally bidirectionally interfacing the internal bus of the
personal computer to a local area network (LAN) via the standard PC
parallel port as in claim 12, wherein said parallel port controller
additionally comprises means to selectively couple said modem controller
PC interface or said LAN controller PC interface to the PC internal bus.
14. A LAN/modem adapter for bidirectionally interfacing an internal bus of
a personal computer (PC) to a telephone network via a standard PC parallel
port as in claim 13, additionally comprising:
a LAN/modem housing enclosing said modem module, said modem controller,
said LAN controller and said parallel port controller; and
a 25-pin, D-shell connector, integral to said LAN/modem housing, that
physically connects said modem housing and electrically connects said
LAN/modem adapter to the standard PC parallel port.
15. A LAN/modem adapter for bidirectionally interfacing an internal bus of
a personal computer (PC) to a telephone network via a standard PC parallel
port as in claim 14, additionally comprising a data access arrangement for
coupling the telephone network to said modem module.
16. A LAN/modem adapter for bidirectionally interfacing an internal bus of
a personal computer (PC) to a telephone network via a standard PC parallel
port as in claim 15, additionally comprising an RJ-11 connector, integral
to the said modem housing, that electrically connects said data access
arrangement to the telephone network.
17. A LAN/modem adapter for bidirectionally interfacing an internal bus of
a personal computer (PC) to a telephone network via a standard PC parallel
port as in claim 16, wherein said modem controller additionally outputs a
serial digital signal to said modem module for modulation and receives a
demodulated serial input signal from said modem module.
18. A LAN/modem adapter for bidirectionally interfacing an internal bus of
a personal computer (PC) to a telephone network via a standard PC parallel
port as in claim 17, wherein said personal computer is capable of
interfacing to a serial I/O port using serial I/O instructions and said
personal computer is under control of a microprocessor, further including:
means to intercept serial I/O instructions to the serial I/O port before
execution by the microprocessor;
means to reformat said serial I/O instructions into parallel I/O
instructions; and
means to redirect said parallel I/O instructions to the standard PC
parallel port.
19. A LAN/modem adapter for bidirectionally interfacing an internal bus of
a personal computer (PC) to a telephone network via a standard PC parallel
port as in claim 18, wherein:
said microprocessor is an 80.times.86 operating in a protected mode; and
said intercept means utilizes said protected mode to identify I/O
instructions to be intercepted.
20. A LAN/modem adapter for bidirectionally interfacing an internal bus of
a personal computer (PC) to a telephone network via a standard PC parallel
port as in claim 19, wherein said intercept and redirect means are
comprised of software instructions resident on the personal computer.
21. A LAN/modem adapter for bidirectionally interfacing an internal bus of
a personal computer (PC) to a telephone network via a standard PC parallel
port as in claim 20, wherein said modem controller is comprised of a
processor executing software instructions wherein all of said software
instructions are transferred from the personal computer via said modem
controller PC interface.
22. A system for redirecting serial I/O instructions in modem control
software in combination with a personal computer (PC) wherein said PC is
under control of a microprocessor and has a standard PC parallel port and
said PC is capable of interfacing to a serial port, comprising:
a modem adapter coupled to the standard PC parallel port to bidirectionally
transfer data with a telephone network;
means to intercept serial I/O instructions to the serial port before
execution by the microprocessor;
means to reformat with said serial I/O instructions into parallel I/O
instructions; and
means to redirect said parallel I/O instructions to the standard PC
parallel port.
23. A system for redirecting serial I/O instructions in modem control
software in combination with a personal computer (PC) wherein said PC is
under control of a microprocessor and has a standard PC parallel port and
said PC is capable of interfacing to a serial port, as in claim 22,
wherein:
said microprocessor is an 80.times.86 operating in a protected mode; and
said intercept means utilizes said protected mode to identify I/O
instructions to be intercepted.
24. A system for redirecting serial I/O instructions in modem control
software in combination with a personal computer (PC) wherein said PC is
under control of a microprocessor and has a standard PC parallel port and
said PC is capable of interfacing to a serial port, as in claim 23,
wherein said intercept and redirect means are comprised of software
instructions resident on the personal computer.
25. A method of bidirectionally communicating data between a personal
computer (PC) and a telephone network wherein the PC is under control of a
microprocessor and has an internal bus and a standard PC parallel port
comprised of an external 25-pin D-shell connector, said method comprising:
connecting a modem adapter to the telephone network;
connecting said modem adapter to the standard PC parallel port;
initializing redirector software on the personal computer to intercept
before execution a specified range of serial I/O instructions on the
personal computer;
executing standard modem control software on the personal computer which
references a serial I/O port defined within said modem control software;
intercepting I/O instructions within the specified range and reformatting
said instructions into a parallel format compatible with said modem
adapter and communicating said reformatted instructions to said modem
adapter via said standard PC parallel port; and
controlling said modem adapter to transmit and receive data according to
signals transferred in parallel from the standard PC parallel port and
transferring in parallel responsive digital signals to the standard PC
parallel port.
26. The method of claim 25 wherein said step of initializing said
redirector software comprises:
identifying the microprocessor as a member of the 80.times.86 family and of
a generation greater than or equal to an 80386;
generating a table to identify the range of serial I/O instructions to be
intercepted;
switching the microprocessor to a protected mode and then to a virtual 86
mode; and
leaving resident within memory of the personal computer, software for
reformatting and redirecting intercepted I/O instructions.
27. A method of bootstrapping executable code to a microprocessor
controller from a personal computer (PC) via a standard PC parallel port
comprised of an external 25-pin D-shell connector, said method comprising:
connecting a modem adapter controlled by said microprocessor controller to
the standard PC parallel port;
directing memory fetches from said microprocessor controller to
sequentially fetch and execute bytes fetched from the standard PC parallel
port;
loading local volatile memory with executable instructions fetched from the
standard PC parallel port; and
executing said executable instructions from said local memory to control
said modem adapter. |
|
|
|
|
Claims  |
|
|
Description  |
|
|
COPYRIGHT NOTICE
A portion of the disclosure of this patent document contains material which
is subject to copyright protection. The copyright owner has no objection
to the facsimile reproduction by anyone of the patent document or the
patent disclosure, as it appears in the Patent and Trademark Office patent
file or records, but otherwise reserves all copyright rights whatsoever.
BACKGROUND OF THE INVENTION
The present invention relates generally to hardware/software communication
systems of the type used to connect a personal computer (PC) to public
switched telephone networks (PSTNs) for access to timeshare networks,
e.g., Prodigy, Compuserve, bulletin board systems (BBS), etc., or to
another PC. Such communication systems include modem or fax-modem adapters
that generally are constructed around chip sets that are commercially
available from different manufacturers, e.g., AT&T, Rockwell, and Phylon.
Commercially available modem adapters are characterized as either internal
or external types, colloquially known as internal or external modems. In
an internal modem, a modem chip set is mounted on a circuit card that is
physically plugged into a PC card slot. This card slot is integral to a
mother board that contains the microprocessor that controls the PC. The
circuit card additionally contains circuitry for interfacing to an
internal address/data/control bus within the PC that functions as the
communication path with the microprocessor. This communication with the
modem chip set is normally done a byte or eight bits at a time according
to a defined interface protocol of the address/data/control bus. However,
card slots on a PC are a limited resource. Typically, there is a maximum
of eight card slots on the mother board of a PC of which some are
dedicated to other functions, e.g., a video display controller, a disk
controller, a serial and a parallel port interface, a sound and CD-ROM
controller, etc. Thus, a card slot may not be available for all
applications. Additionally, the use of a card slot requires opening the
cabinet of the PC. While this task is minimal to one of ordinary skill in
the art, it may be intimidating to an ordinary user who is normally not
skilled in the art of personal computers. Also, some PCs, e.g., laptop
computers, may have no user-accessible card slots.
In an external modem, a modem chip set and associated circuitry are placed
in a housing external to the PC and interfaced either directly at a serial
port connector or using a cable to serial interface circuitry that is
internal to the PC. However, while most PCs have a serial port, not all
PCs have a serial port available for use in interfacing to an external
modem. For example, existing serial ports may be dedicated to interface to
a mouse, a printer, a laptop computer, etc. Once the existing serial ports
have been used, additional ones may only be added by using an additional
card slot to add an interface/control card. However, as previously
discussed, card slots are a limited resource and, with a laptop, none may
be available at all. Also, the number of serial ports is limited based
upon the original architecture of the PC. While the architecture of the PC
permits up to four serial ports, standards exist for only the first two
serial ports. Thus, it is commonplace to encounter hardware conflicts when
attempting to expand a PC beyond these first two serial ports.
Additionally, the use of a serial interface may degrade the throughput
performance of a system since serial interfaces can only communicate one
bit at a time.
A vast library of modem control software currently exists to interface to
commercially available internal or external types of modems. Thus, it is
desirable that any new system appear indistinguishable at its software
interface to existing software systems.
SUMMARY OF THE INVENTION
The present invention is directed toward a modem adapter capable of being
interfaced to a PC through a standard PC parallel port and by using
redirector software is capable of directly using the existing library of
modem control software without special modifications, i.e., the interface
to the modem adapter is transparent to the modem control software.
The modem adapter of the present invention accepts digital data and control
information, eight bits at a time from a standard PC parallel port, and
modulates the digital data into an analog format compatible with a public
switched telephone network (PSTN). Conversely, the modem adapter of the
present invention demodulates analog data from the PSTN into digital data
and transfers this data, at least four bits at a time, to the PC internal
bus via the parallel port.
A modem adapter in accordance with the invention preferably includes a
parallel port controller capable of interfacing to different types of
standard PC parallel ports that can be present on a PC. A similar parallel
port controller has already been disclosed in a commonly assigned
application to Dirk I. Gates, Ser. No. 08/117,990, now U.S. Pat. No.
5,299,314, which is incorporated herein by reference. While all standard
PC parallel ports can output an eight-bit data byte in parallel, the input
capability of different standard PC parallel ports is limited. In a first
type of parallel port (e.g., PC-XT), since the data lines are
unidirectional out, the available status lines are used to transfer data
into the PC in a nibble (or quasi-nibble) mode, i.e., four bits at a time.
A second type of parallel port (e.g., PC-AT), can be made to accept input
data via its data lines by setting them to a "1" state. In a third type of
parallel port (e.g., IBM-PS/2), a control line is used to set the
direction of transfer over its bidirectional data lines. A fourth type of
parallel port (e.g., EPP, enhanced parallel port) allows faster transfers
by automatically generating control strobes in hardware. In operation, the
preferred modem adapter first identifies the type of PC parallel port to
which it is connected and then adapts to the most efficient transfer mode,
i.e., either bidirectional or nibble mode.
Embodiments of the present invention preferably utilize software resident
on the PC which intercepts software I/O instructions directed toward a
serial I/O port. Once the software I/O instruction is detected, it is
redirected to software that reformats the intercepted I/O instruction and
transfers an equivalent command to the modem adapter using the standard PC
parallel port. By intercepting these serial I/O instructions, the type of
modem adapter becomes indistinguishable to existing modem control
software. Thus, this existing software can use the modem adapter of the
present invention without modifications.
The present invention also discloses the packaging of a LAN control and
interface, a modem control and interface and parallel port sharing
circuitry in a single package that externally plugs directly into a
standard PC parallel port, thus providing expansion capability for a PC
within the capabilities of an ordinary PC user.
Additionally, the present invention discloses downloading of all executable
modem control software to the modem control and interface from a PC. This
permits software modifications or upgrades to the modem control and
interface without requiring any physical modifications or resident
nonvolatile memory.
In accordance with a preferred embodiment, the modem adapter is primarily
comprised of (1) a parallel port controller capable of interfacing with
standard PC parallel ports, (2) a modem controller, coupled to the
parallel port controller, and (3) a modem module which responds to the
modem controller to supply analog signals to the PSTN and responds to
analog signals from the PSTN to provide digital signals to the modem
controller.
In accordance with a further aspect of the preferred embodiment, redirector
software is installed on a host PC to intercept I/O commands to its serial
port, reformat and subsequently redirect the reformatted commands to the
modem adapter of the present invention through a standard PC parallel
port, thus permitting use of existing modem control software with the
present invention.
In a preferred embodiment of the invention, both a modem control and
interface and a LAN control and interface share a common parallel port
controller and are contained in a common housing. The common housing is
preferably provided with an external connector or configured to plug into
a standard PC parallel port external connector.
Other features and advantages of the present invention should become
apparent from the following description of the presently-preferred
embodiments, taken in conjunction with the accompanying drawings, which
illustrate, by way of example, the principles of the present invention.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 comprises a functional block diagram of a preferred modem adapter in
accordance with the present invention;
FIG. 2 is a block diagram of a preferred modem and control interface;
FIG. 3 is a block diagram depicting the interface of the redirector
software with an IBM-compatible PC;
FIG. 4 is a flow chart depicting the initialization routine executed by the
redirector software for interfacing existing modem control software with
the modem adapter;
FIGS. 5A-5D are flow charts depicting examples of the operation of the
redirector software;
FIG. 6 comprises a functional block diagram of a preferred LAN/modem
adapter in accordance with the present invention;
FIG. 7 is a block diagram of the parallel port selection logic of a
preferred embodiment;
FIGS. 8A-8I are schematic diagrams of the parallel port controller logic
which can be implemented on a field programmable gate array (FPGA) for
interfacing the standard PC parallel port to the modem control and
interface;
FIG. 9 is an isometric view showing a housing of a preferred embodiment in
accordance with the present invention;
FIG. 10 is a top level schematic diagram of the modem controller and modem
module in a preferred embodiment;
FIG. 11 is a detailed schematic diagram of a preferred modem module
implemented by an AT&T V.32 data pump chip set;
FIG. 12 is a schematic diagram of a preferred data access arrangement
(DAA); and
FIG. 13 is a top level schematic diagram of a preferred LAN/modem adapter.
DESCRIPTION OF THE PREFERRED EMBODIMENTS
Throughout the following detailed description, similar reference characters
refer to similar elements in all figures of the drawings.
With reference now to the drawings, and particularly to FIG. 1, there is
shown a block diagram of a preferred embodiment of a modem adapter 10 of
the present invention. The purpose of the modem adapter 10 is to enable
personal computers, principally IBM and compatible personal computers
(PCs), to be readily connected to public switched telephone networks
(PSTNs) and thus permitting connection to timeshare networks, other
personal computers, or any other modem or FAX interfaceable service
accessible over a PSTN, sometimes referred to as a wide area network or
WAN. Such a personal computer is controlled by a microprocessor (e.g., an
Intel 80.times.86) that interfaces to the personal computer over an
internal bus. A standard PC parallel port having an external connector is
interfaced to the PC internal bus and controlled by the microprocessor.
The electronics for the modem adapter 10 is carried by multiple circuit
boards (not shown) fully contained within a modem housing (described
below). The modem adapter 10 may appropriately be considered as being
primarily comprised of three functional portions; i.e., a parallel port
interface 12, a parallel port controller 14, and a modem control and
interface 16. The parallel port interface 12, coupled to a parallel port
connector 18 (typically, male), is physically and electrically configured
to interface to a female connector of a standard PC parallel port 20 on a
PC 22. The parallel port controller 14 is coupled to the parallel port
interface 12 and functions to bidirectionally transfer data to the
standard PC parallel port 20. The parallel port controller 14 is also
coupled to the modem control and interface 16 to transfer this data for
modulation and demodulation according to CCITT defined specifications. The
modem control and interface 16 is coupled to an RJ-11 connector which is
coupled to a telephone network (PSTN) 26.
TABLE 1
______________________________________
DB-25 Pin Definition Type
______________________________________
1 strobe control, RDS
2 data bit 0 data
3 data bit 1 data
4 data bit 2 data
5 data bit 3 data
6 data bit 4 data
7 data bit 5 data
8 data bit 6 data
9 data bit 7 data
10 acknowledge status
11 busy status
12 paper end status
13 select status
14 auto feed control, RAS
15 fault status
16 initialize printer
control
17 select input control
18 ground
19 ground
20 ground
21 ground
22 ground
23 ground
24 ground
25 ground
______________________________________
The function and operation of the parallel port control 14 in coordination
with the parallel port interface 12 is described in said application
08/117,990. The parallel port connector 18 is coupled to the parallel port
interface 12 with an interface comprised of an eight-bit data path 28, a
four-bit control path 30 and a five-bit status path 32. The parallel port
interface 12 is comprised of bidirectional buffers on the data 28 and
unidirectional buffers on the control 30 and status 32 lines associated
with the standard PC parallel port 20. The definition of the standard
signals found on the 25-pin standard PC parallel port 20 is found in Table
1. Additionally, the location of expanded signals RDS and RAS, described
below, are found in Table 1.
As disclosed in this commonly assigned application, the parallel port
controller 14 is capable of interfacing to different types of standard PC
parallel ports. With a first type of parallel port, as originally found in
the PC-XT, the data path 28 is unidirectional and thus the status lines 32
are used in a nibble (or quasi-nibble) mode, i.e., four bits at a time, to
transfer data into the standard PC parallel port 20. With a second type of
parallel port, as originally found in the PC-AT, the data path 28 is
bidirectional provided that the data lines are set to a "1" or high state
prior to inputting data. In this condition, due to the ability of a low
TTL signal to override a high TTL signal, bidirectional operation can be
achieved. With the third type of parallel port, as originally found in the
IBM-PS/2, a status line can be directly controlled to permit true
bidirectional use of the data path 28. As previously disclosed, an
initialization sequence determines the optimum choice among these
possibilities and downloads programmable logic within the parallel port
controller 14 to configure the interface. In a preferred embodiment, the
programmable logic is implemented with a field programmable gate array
(FPGA).
Additionally, the parallel port controller 14 of the present invention
supports an enhanced parallel port or EPP as described in the Mar. 17,
1992 Release 1.7 to the IEEE P1284 Working Group that redefines the use of
the pins on a parallel port. According to this standard, a data strobe on
pin 14 (formerly auto feed) and a write signal on pin 1 (formerly strobe)
are automatically generated by EPP hardware during an output instruction.
This state remains until the device connected to the parallel port returns
a wait signal on pin 11 (formerly busy). In a similar manner, an input
instruction to an EPP automatically generates only a data strobe on pin 14
to signal the device connected to the parallel port to place data on the
bidirectional data bus. The device then signals that the data is available
with the wait signal on pin 11. By adapting to this standard, the present
invention can transfer data across the parallel port at rates approaching
that possible with a standard internal adapter card that is interfaced
directly to a PC via its internal address/data/control bus.
TABLE 2
______________________________________
Data Modulation
CCITT V.32bis with trellis coding at 14400
bps, 12000 bps, 9600 bps and 7200 bps
CCITT V.32bis at 4800 bps
CCITT V.32 with trellis coding at 9600 bps
CCITT V.32 at 4800 bps
CCITT V.22bis at 2400 bps
CCITT V.22 at 1200 bps
Bell 212A at 1200 bps
Error Control
CCITT V.42 LAP-M
MNP Class 2, 3, and 4
Data Compression
CCITT V.42bis
MNP Class 5
Fax modulation
Group 2 send/receive fax communication
under the control of Class 1 or Class 2
software, using:
CCITT v.17 at 14400 bps, 12000 bps, 9600
bps, 7200 bps, and 4800 bps
CCITT v.29 at 9600 bps, 7200 bps, and 4800 bps
CCITT V.27ter at 4800 bps and 2400 bps
______________________________________
With reference now to FIG. 2, a block diagram of the modem control and
interface 16 is shown. The specifications for the modem and control
interface 16 are shown in Table 2. The modem control and interface 16 is
primarily comprised of a modem controller 34, a modem module 36, and a
data access arrangement (DAA) 38. Devices which form the modem module 36
are readily available as integrated circuit chips and are sold as modem
chip sets by various semiconductor manufacturers. Although functionally
similar overall, chip sets by different manufacturers may require
different divisions within the modem and control interface 16. These
alternative divisions still embody the modem control and interface 16 of
the present invention. A particular preferred embodiment will now be
discussed for the modem control and interface 16.
The modem controller 34, an MC68302 in a preferred embodiment, functions to
control the transfer of all data between the standard PC parallel port 20
and the PSTN 26 according to standard protocols including the Hayes and
Microcom command sets. The modem controller 34 is coupled to the parallel
port controller 14, using address/data/control bus 40, which functions as
a PC interface for bidirectionally communicating data and commands to the
PC 22 via the parallel port controller 14.
TABLE 3
______________________________________
Register
Address Host Modem Description
______________________________________
Host Data
F0 Write Read Data output to modem
Host Data
F0 Read Write Data output to host
Host F1 Write Read Software Command/
Command Status
Modem F1 Read Write Software Command/
Command Status
Host F2 Write -- Host IRQ output
Control control
Modem F2 -- Write Modem IRQ output
Control control
Host Status
F3 -- Read Hardware status
Modem F3 Read Write Hardware status
Status
______________________________________
The parallel port controller 14 contains registers as shown in Table 3 for
facilitating the transfer of data between the standard PC parallel port 20
and the modem controller 34. When the PC 22 transfers data to the modem
adapter, the PC 22 first loads one of these registers within the parallel
port controller 12. The modem controller 34 then accesses this data from
this intermediate register. Similarly when the modem controller 34
transfer data to the PC 22, these intermediate registers are used. To
output to one of these registers, the PC must first address the particular
desired register. This task is done by placing the address of the
register, e.g., F0, on data bits 0-7 and strobing the RAS (register
address strobe), the auto feed control in the standard parallel port
configuration. Once the register has been selected, a subsequent strobe on
the RDS (register data strobe), the strobe in the standard parallel port
configuration, will output data bits 0-7 to the selected register. To
input from a register, data bit 2 is ORed with the register address when
the register is selected. Thus, selecting register F0 for a subsequent
read is done using address F4 (F0 OR 4). In a preferred embodiment, the
parallel port controller 14 is a FPGA, field programmable gate array. The
configuration of the FPGA is initially downloaded from the PC using the
standard parallel port 20 to form the previously described logic.
The modem controller 34 is bidirectionally coupled using path 42 to a
serial EEPROM 44, which is used to store modem configuration data, and a
SRAM 46, using address/data bus 48, which is used to store modem data and
program code. As part of an initialization operation, the SRAM 46 is
downloaded with software that the modem controller 34 subsequently
executes. This downloading operation proceeds as follows. Initially, the
modem controller, an MC68302 in a preferred embodiment, fetches two 32-bit
addresses, one byte at a time, from address 0 corresponding to a start
address and a stack pointer. In a preferred embodiment, there initially is
no memory associated with any memory addresses. Instead, the parallel port
controller 14, responds to memory access strobes and supplies the initial
addresses. The parallel port controller 14 then requests instructions,
from the PC 22 one byte at a time which are executed by the modem
controller 34. Initially, these instructions download a bootstrap loader
into SRAM 46. When the bootstrap loader is completely downloaded, the
modem controller begins executing this bootstrap loader from the SRAM 46.
The bootstrap loader then downloads the modem control software from the PC
22 into the SRAM 46 and transfers control to the modem control software.
Thus, all of the modem control software is stored on the PC 22, normally
on a hard or floppy disk, and transferred to the modem controller 34
without requiring any resident non-volatile memory, e.g., ROM.
Consequently, enhancements or modifications to the modem control software
do not require any alterations to hardware that embodies a modem adapter
of the present invention.
The modem module 36, an AT&T V.32 Data Pump chip set in a preferred
embodiment, is bidirectionally coupled to the modem controller 34 using
digital signal path 50 as well as to the DAA 38, using preconditioned
analog signal path 52. The DAA 38 is coupled using ring path 54 and tip
path 56 to an RJ-11 connector 24 which is coupled to the PSTN 26. The DAA
38 preconditions signals to and from the PSTN 26 as well as providing
signal protection, required when connecting to various PSTNs, to form
preconditioned analog signals on path 52. The preconditioned analog
signals are bidirectionally input to the modem module 36 which converts
these analog signals into digital form on digital signal path 50 for
protocol processing by the modem controller 34.
Digital signal path 50 consists of two interfaces that the modem controller
34 uses to communicate with the modem module 36. The first interface
communicates in parallel to the modem controller 34 eight bits at time. In
a preferred embodiment, the modem controller 34 uses the parallel
interface to control and interrogate the status of the modem module 36.
The second interface is a serial interface. The serial interface is
comprised of a first full duplex USART (universal synchronous/asynchronous
receive/transmitter) integrally located with the modem controller 34 and a
second full duplex USART within the modem module 36. The serial interface
is used to exchange data that is received from or transmitted to the
public switched telephone network (PSTN) 26.
With reference now to FIGS. 10-12, there are shown schematic diagrams of a
preferred embodiment of the present invention. In FIG. 10, a top level
schematic diagram showing the interface between a 68302 microprocessor,
the modem controller 34, and a data pump section which is the modem module
36 for a preferred embodiment. In FIG. 11, a detailed schematic diagram of
the data pump section/modem module is shown. In this embodiment, the modem
module 36 is formed with an AT&T V.32 chip set. This chip set is comprised
of a data pump interface, a digital signal processor (DSP) and a codec.
This chip set is coupled to a DAA 54, as found in FIG. 12. While specific
manufacturers have been disclosed for the components of a preferred
embodiment, the present invention encompasses components manufactured
elsewhere with equivalent functionality.
The three components of the data pump chip section to | | |