CA2020456A1 - Dual domain memory controller - Google Patents

Dual domain memory controller

Info

Publication number
CA2020456A1
CA2020456A1 CA002020456A CA2020456A CA2020456A1 CA 2020456 A1 CA2020456 A1 CA 2020456A1 CA 002020456 A CA002020456 A CA 002020456A CA 2020456 A CA2020456 A CA 2020456A CA 2020456 A1 CA2020456 A1 CA 2020456A1
Authority
CA
Canada
Prior art keywords
signals
control
bus
memory
asynchronous
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
CA002020456A
Other languages
French (fr)
Inventor
Joseph M. Jeddeloh
Jeffry V. Herring
Ronald J. Larson
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
BULL MICRAL OF AMERICA Inc
Original Assignee
Joseph M. Jeddeloh
Jeffry V. Herring
Ronald J. Larson
Bull Micral Of America, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Joseph M. Jeddeloh, Jeffry V. Herring, Ronald J. Larson, Bull Micral Of America, Inc. filed Critical Joseph M. Jeddeloh
Publication of CA2020456A1 publication Critical patent/CA2020456A1/en
Abandoned legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4234Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus

Abstract

ABSTRACT
An asynchronous memory control unit (14) for asynchronously controlling access to and from system memory (16) of a microcomputer system in response to control signals from conventional and state-of-the-art microcomputer I/O buses is described. The asynchronous memory control unit (14) of the present invention operates cooperatively with a synchronous memory control unit (12) which provides access to and from system memory (16) in response to command signals from a microprocessor. Whenever the microprocessor controls the bus, the synchronous memory control unit (12) is enabled; whenever the microprocessor is not controlled of the bus at main I/O bus, the asynchronous control unit (14) is enabled.

Description

2~204~6 .

DUAL DOMAIN MEMORY CONTROLLER
Background and Summary of the Invention The present invention relates to memory controllers for use in microcomputer systems incorporating commercially available microprocessor chip sets. In particular, this invention relates to microcomputers in which an asynchronous memory controller is used to access the system memory asynchronously with respect to the operational speed of the microprocessor chip set. Memory controllers generally provide control signals for writing data to and reading data from system memory.
Microprocessor and memory chip sets are advancing rapidly and are expected to continue to advance indefinitely. Moreover, microprocessor and memory chip sets are advancing at different rates so that the difference in performance parameters, particularly operational speed, of the microproces-sor, the memory and the bus over which they typically communicate tends to expand or contract, i.e., become greater or lesser, as advances are ~; perfected. In addition, performance characteristics of microcomputers chip sets employing emerging technologies also advance at different rates.
While present-day microcomputer manufacturers have control over the design and configuration of the systems they produce, they typically must anticipate the parameters necessary for compatibility of their system with ,.. ~ . .
new microprocessors and memory devices, as well as add-on peripherals, accessories and memory options produced by other manufacturers. The performance and interface characteristics of microprocessors and memory devices often vary substantially from one release of the same device to the next; sim~larly suchlcharacterisitics of peripherals, accessories and memory options~will vary among the manufacturers of these devices.
While the performance characteristics of peripheral devices are often designed for less than optimum performance, i.e., "detuned" to accommodate variation, in microcomputer system designs, microprocessor chip and memory devices are not usually so detuned. Therefore, the manufacturer of ,,., .~

2020~56 .

high performance microcomputers much allow for different, even inferior, performance characteristics of peripheral and accessory devices and some memory options in order to produce a system which is compatible with the maximum number of devices attachable to the system. In addition, the 5 microcomputer manufacturer must anticipate upgrades and changes of microprocessor chip sets and memory devices. If the microcomputer manufacturer does not so anticipate such upgrades, it will limit the marketability of the system to less than the total market available for his product.
A complete microcomputer, which is often intended for desktop applications, includes subsystems such as a central processing unit (hereafter referred to as the "CPU", "processor" or "microprocessor"), a math "coproce-ssor", DMA capabilities, memory, miscellaneous system ports, and interfaces to video, keyboard, floppy disks, serial and parallel ports, scsi devices, and 15 a mouse pointing device.
The microcomputer functions by manipulating address, data, and control signals among the subsystems within the system. The control data flow into and out of system memory is provided by a memory controller which usually controls the data flow and timing between the processor, main 20 system memory, and the bus.
As faster microprocessor and memory devices became availableto microcomputer system designers, increased performance was limited by other components of the systems. For example, the speed of memory controller technology could not be expected to increase at a rate commensurate with the inçreasing speed of the microprocessor and memory devices, especially as the relative operation of microprocessors and memory devices is changed and changed at different rates.
7 ''~ If the memory controller were simply driven faster to take advantage o f the faster microprocessors and memory devices now becoming available, 30 certain~ memory devices would begin to fail in different ways in different 7": :
systems. The faster the memory controller is driven to keep pace with ~ ~ .
,;.
". ~

2020~6 , . . .. .

microprocessors, the more memory devices would fail and start to fail.
Failure modes include loss of data, and loss of address and control signals.
Therefore, a microcomputer system which incorporates faster microprocessor technologies, e.g. 20 or 25 MHz, slower memory device technologies, and still slower inputloutput (VO) bus technology, e.g., operating at 8 MHz, is extremely desirable.
While development of memory components such as Dynamic Ran- dom Access Memory ("DRAM") devices have usually kept pace with processor technology, often the control logic for these devices does not. Such logic functions and technology were also a limitation on overall microcomputer system speed. For example, in order for the processor to access memory, access signals must be produced in response to bus controller strobe signals which, in turn, are produced in response to access request signals from the micro- processor. Additive overhead associated with both the bus and memory controllers arising from buffering and gate delays is required to produce these signals. Thus, the need is clear for system memory control to be dissociated from the speed of advancing microprocessor technology on the one hand and from conventional or state-of-the-art bus/bus controller technology on the other, not withstanding the high degree of interaction between the processor and system memory.
The speed of operation of microcomputer subsystems is governed by one or more clock or timing signals which may or may not be synchronized In the pas~, such clock signals were usually derived from more than one source which was not synchronized. Thus, when synchronized operation of the mlcroprocessor and~systfm memory was required, tolerances in jthe timing of control, gating and handshake signals had to be relaxed enough to allow for imprecise cooperation of clock signal source. For microcom-puters operating at 8 MHz, performance was acceptable and reasonably reliable.
As operating speed is increased, however, critical system timing arameters must be substantially more precise than can be reliably achieved ~

~ 2020~56 with multi-source clock signals. Thus, for operation at 20 MHz and above, clock signals produced from one source are required to preclude clock and control signal skewing and provide reliable, high-speed operation.
System memory control according to the present invention comprises a synchronous controller for interface with the microprocessor of the designer's choice and an asynchronous memory controller for direct interface with present state-of-the-art input/output (VO) bus technology such as the Micro Channel Architesture (MCA) manufactured by IBM Corporation.
Thus, accessing of 80 nanosecond DRAM available from any number of manufacturers, by either the controller of the present invention, high-speed microprocessors or bus-coupled devices in a microcomputer, bus timing system having enhanced performance characteristics is facilitated. By dividing system memory control according to the present invention, the evolving technologies of microprocessors and DRAM are anticipated and neither are hampered by the speed of the MCA or pace of development or nature of other conventional bus technology. It is also desirable to have asynchronous memory controller technology for access to memory by bus coupled devices without impacting, i.e., detuning, the performance of either the microprocessor or system memory.
The asynchronous control unit of the present invention provides bus-coupled devices with asynchronous access to a microcomputer system memory in response to control signals from the main YO bus. Synchronous memory controllers are well known for providing the microprocessor access to system memory in response to command signals from the microprocessor ~ The present invention may be used to enhance the performance characteris-tics of the overall microcomputer system by providing separate access to memory for devices and subsystems coupled to the main VO bus at speeds different from those required by high performance microprocessors. Thus, with the control unit with the present invention, buffering, control signal conditioning or other additive overhead previously required for access to and from system memory by VO bus coupled devices via a synchronous memory 20204~6 controller is eliminated. Meta stability problems on the boundary of the synchronous and asynchronous domains are also eliminated.

Description of the Drawing Figure 1 is a block diagram of a memory control system employing an asynchronous memory control unit constructed according to the principles `
of the present invention. ~
Figure 2 is a block diagram of the asynchronous memory con- trol unit ;
employed by the memory control system of Figure 1.
Figure 3 is a timing diagram for control signals produced by the asyn- ~;
chronous memory control unit of Figures 1 and 2.

Description of the Preferred Embodiment Referring now to Figure 1, memory control system 10, according to the present invention, comprises synchronous control unit 12 and asynchronous ~ ~ -control unit 14. Control units 12 and 14 each produce row and column address (RAS and CAS, respectively) signals and a write enable (WEN) signal for accessing Dynamic Random Access Memory (DRAM) 16. The designa-tion for RAS and CAS signals, as well as other signals described herein, may also indude a suffix N, such RASN and CASN. Such designation is used merely to indicate that such signals are active at low voltage or negative polarity.
Synchronous Control Unit 12 be any commercially available memory controller suitable for producing RAS, CAS and WEN signals response to commands from a m~icroprocessor, such as the synchronous GC182 M,emory Controller produced and marketed by G2 Incorporated. DRAM 16 may be ~ -any commercially available DRAM devices, preferably having high speed performance characteristics suitable for receiving RAS, CAS and WEN signals produced by synchronous unit 12. Such DRAM devices include the HM
5110003 and the MB 81C1000 80 NS devices manufactured by Hictachi and FuJitsu, respectfully. ~ - -',` ~ .~ ~' .'-2~20~56 Asynchronous control unit 14 produces RAS, CAS and WEN signals 31, 32 and 33 (as shown in Figure 3), respectively, in response to control signals from the main VO bus. In the preferred embodiment of the present invention, asynchronous control unit 14 is designed to receive control signals produced by and for interfacing with the MCA bus as described in the Technical Reference manual for the IBM Personal System/2 microcomputer which is incorporated by reference as if fully set forth herein.
5ynchronous control unit 12 and asynchronous control 14 are both enabled by the PENA~N signal. PENAN is low (i.e. negative) when synchron-ous control unit 12 is enabled; PENAN is high (i.e. positive) when asynchro-nous control unit 14 is enabled. Thus, both controllers are never enabled at the same time.
The state of the PENAN signal is determined by the microprocessor. If an 80386 microprocessor chip, produced by Intel, Inc., is used, PENAN is derived from the HOLDACK signal produced by the microprocessor in response to a microprocessor hold request signal. Thus, when the microproc-essor controls the MCA bus, synchronous unit 12 is used to access DRAM
16. Conversely, when the microprocessor does not have control of the MCA
bus, asynchronous controller unit 14 is used to access DRAM 16.
S~nchronous control unit 12 is typically a high speed controller operating in the 25 to 33 MHz range, having zero wait shtes and 40 nanosecond cycle times. In contrast, asynchronous control unit 14 is slower~
speed system, operated typically on 200 nanosecond memory cycle time.
Inverter 17 assures that asynchronous control unit 14 is never enabled at the same time synchronous control unit 12 is enabled.
Referring now to Figure [3], asynchronous control unit 14 comprises gates M100-M102, M105-M112 and flip-flops M103-M104.
Asynchronous control unit 14 produces RAS, CAS and WEN signals response to the logical combination of MCA signals CMD, Refresh, CRAMCS, SO and S1, DELCMD, and CADL, as described elsewhere in this specification.
DELC2~ID is a delayed version of MCA signal CMD, and CRAMCS is an - `
20204~6 address and status decode signal from the MCA which indicates a memory access.
Referring now to Figure 2, asynchronous control unit 14 produces WEN
signal 33 in response to SON and SIN according to the relation WEN = SON' NAND SIN, where SON' is the complement of SON. SON and SIN signals are clocked by CMDN signal becoming active, i.e. low, via clocked latches M103 and M104.
With continuing reference to Figures 2 and 3, asynchronous control unit 14 produces RASN signals 31 in response to CADLN or REFRESHN
signals becoming active. RASN remains active until, and becomes inactive (i.e., high) when, OR gate M111 opens in response to DELCMDN becoming active (i.e., low).
CASN signal is produced by 4-input NAND gate M101 when CMDN
becomes active in the presence of several other MCA signals according to the relation CASN=[[SON XOR SIN] ~ CRAMCS ~ REFRESHN ~ CMDN']', :
where CMDN' is the complement of CMDN. The function [SON XOR SIN]
is produced by XOR gate M102, and CMDN' is produced by inverter M100.
As indicated in Figure 1, in the preferred embodiment, the output ports of asynchronous control unit 14 are wire-ored with the output ports of ~ -synchronous control unit 12 at the input ports of DRAM 16. Similarly the WEN signal port of asynchronous control unit 14 is wire-ored with the analogous port of synchronous control unit 12 at the write enable port 25 DRAM 16. This configuration is facilitated by the tri-state signals produced ;
by the bi-cmos components of asynchronous control unit 14.

- :, :
: :

Claims (9)

1. In an microcomputer system having a microprocessor and a bus having bus control signals, a memory control system comprising:
synchronous control means (12) coupled to said microprocessor for producing synchronous memory address signals and control strobes in response to command signals from said microprocessor;
asynchronous control means (14) for producing asynchonous memory address signals and control strobes in response to bus control signals; and logic means (17) coupled to said microprocessor, synchronous control means (12) and asynchronous control means (14) for enabling said synchronous control means (12) and said asynchronous control means (14) in response to a command signal (PENAN) from said microprocessor.
2. A memory control system as in claim 1 wherein said logic means (17) is effective for not enabling said synchronous control means (12) and said asynchronous control means (14) simultaneously.
3. Apparatus for producing asynchronous address signals for accessing devices coupled to a bus having bus control signals in a microcom-puter system, said apparatus comprising:
first logic means (12) for producing first address signals;
second logic means (14), coupled to said first logic means, for producing second address second means; and third logic means, coupled to said first and second logic means, for producing a control signal;
said first and second address signals and said first control signal being produced solely in response to said bus control signals.
4. Apparatus as in claim 3 wherein said first address signals are produced when one of a first plurality of bus control signals becomes active, and deactived when a first one of a second plurality of bus control signals becomes active.
5. Apparatus as in claim 4 wherein said second address signals are produced when a second one of said second plurality of bus control signals becomes active in the presence of other signals of said second plurality of bus control signals according to the relation CASN=[SON XOR SIN]*CRAMCS*REFRESHN*CMDN']', where CASN represents said second address signals.
6. Apparatus as in claim 5 wherein said first one of said second plurality of bus control signals is the same as said second one of said second plurality of bus control signals delayed by a preselected time.
7. Apparatus as in claim 3 wherein said control signal is produced according to the relation WEN = SON' NAND SIN, where WEN represents said control signal.
8. A method for controlling access to and from a memory system in a microcomputer system having a microprocessor and a bus having bus control signals, said method comprising the steps of:
producing synchronous memory address signals and control strobes in response to command signals from said microcomputer;
producing asynchronous memory address signals and control strobes in response to bus control signals; and enabling synchronous control means (12) and asynchronous control means (14) in response to a command signal from said microprocessor.
9. The method as in claim 8 wherein said step of enabling said synchronous control means (12) and said asynchronous control means (14) also precludes such enabling simultaneously.
CA002020456A 1989-08-11 1990-07-04 Dual domain memory controller Abandoned CA2020456A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US392,705 1982-06-28
US07/392,705 US5187779A (en) 1989-08-11 1989-08-11 Memory controller with synchronous processor bus and asynchronous i/o bus interfaces

Publications (1)

Publication Number Publication Date
CA2020456A1 true CA2020456A1 (en) 1991-02-12

Family

ID=23551681

Family Applications (1)

Application Number Title Priority Date Filing Date
CA002020456A Abandoned CA2020456A1 (en) 1989-08-11 1990-07-04 Dual domain memory controller

Country Status (7)

Country Link
US (1) US5187779A (en)
EP (1) EP0422967B1 (en)
JP (1) JP3142861B2 (en)
KR (1) KR0156920B1 (en)
CN (1) CN1049420A (en)
CA (1) CA2020456A1 (en)
DE (1) DE69030636T2 (en)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2550444B2 (en) * 1991-03-07 1996-11-06 富士通株式会社 Device controller
US5831467A (en) * 1991-11-05 1998-11-03 Monolithic System Technology, Inc. Termination circuit with power-down mode for use in circuit module architecture
DE69226150T2 (en) * 1991-11-05 1999-02-18 Hsu Fu Chieh Redundancy architecture for circuit module
US5576554A (en) * 1991-11-05 1996-11-19 Monolithic System Technology, Inc. Wafer-scale integrated circuit interconnect structure architecture
US5498990A (en) * 1991-11-05 1996-03-12 Monolithic System Technology, Inc. Reduced CMOS-swing clamping circuit for bus lines
JPH05324546A (en) * 1992-05-18 1993-12-07 Canon Inc Information processing system
JPH08500687A (en) * 1992-08-10 1996-01-23 モノリシック・システム・テクノロジー・インコーポレイテッド Fault-tolerant high speed bus devices and interfaces for wafer scale integration
FR2699705B1 (en) * 1992-12-22 1995-01-13 Cit Alcatel Arrangement for access of a microprocessor to circuit elements of a component.
US5544315A (en) * 1993-05-10 1996-08-06 Communication Broadband Multimedia, Inc. Network multimedia interface
US5655113A (en) 1994-07-05 1997-08-05 Monolithic System Technology, Inc. Resynchronization circuit for a memory system and method of operating same
JPH08147479A (en) * 1994-11-17 1996-06-07 Hitachi Ltd Image output device and image decoding device
US5613162A (en) * 1995-01-04 1997-03-18 Ast Research, Inc. Method and apparatus for performing efficient direct memory access data transfers
US5732226A (en) * 1996-04-08 1998-03-24 Vlsi Technology, Inc. Apparatus for granting either a CPU data bus or a memory data bus or a memory data bus access to a PCI bus
US6047361A (en) * 1996-08-21 2000-04-04 International Business Machines Corporation Memory control device, with a common synchronous interface coupled thereto, for accessing asynchronous memory devices and different synchronous devices
US6658544B2 (en) * 2000-12-27 2003-12-02 Koninklijke Philips Electronics N.V. Techniques to asynchronously operate a synchronous memory
JP4114749B2 (en) * 2003-11-07 2008-07-09 ローム株式会社 MEMORY CONTROL DEVICE AND ELECTRONIC DEVICE
KR101129868B1 (en) * 2006-10-04 2012-04-12 화이자 프로덕츠 인코포레이티드 Pyrido[4,3-d]pyrimidin-43h-one derivatives as calcium receptor antagonists
US7944773B2 (en) * 2008-04-30 2011-05-17 Micron Technology, Inc. Synchronous command-based write recovery time auto-precharge control
US8488697B2 (en) * 2011-05-06 2013-07-16 Northrop Grumman Systems Corporation Universal timing recovery circuit

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4438492A (en) * 1980-08-01 1984-03-20 Advanced Micro Devices, Inc. Interruptable microprogram controller for microcomputer systems
US4573118A (en) * 1983-03-31 1986-02-25 Fairchild Camera & Instrument Corporation Microprocessor with branch control
US4604689A (en) * 1983-04-15 1986-08-05 Convergent Technologies, Inc. Bus repeater
US4615017A (en) * 1983-09-19 1986-09-30 International Business Machines Corporation Memory controller with synchronous or asynchronous interface
JPS6364144A (en) * 1986-09-04 1988-03-22 Hitachi Ltd Inter-memory data transfer system

Also Published As

Publication number Publication date
KR0156920B1 (en) 1998-11-16
DE69030636T2 (en) 1997-12-18
EP0422967A2 (en) 1991-04-17
EP0422967B1 (en) 1997-05-07
JPH03149640A (en) 1991-06-26
EP0422967A3 (en) 1992-01-29
JP3142861B2 (en) 2001-03-07
DE69030636D1 (en) 1997-06-12
CN1049420A (en) 1991-02-20
KR910005174A (en) 1991-03-30
US5187779A (en) 1993-02-16

Similar Documents

Publication Publication Date Title
EP0422967B1 (en) Dual domain memory controller
US5097437A (en) Controller with clocking device controlling first and second state machine controller which generate different control signals for different set of devices
US5163146A (en) System responsive to interrupt levels for changing and restoring clock speed by changing and restoring a register value
US5455915A (en) Computer system with bridge circuitry having input/output multiplexers and third direct unidirectional path for data transfer between buses operating at different rates
US6151651A (en) Communication link with isochronous and asynchronous priority modes coupling bridge circuits in a computer system
US6671211B2 (en) Data strobe gating for source synchronous communications interface
US6148357A (en) Integrated CPU and memory controller utilizing a communication link having isochronous and asynchronous priority modes
US5041962A (en) Computer system with means for regulating effective processing rates
US6772263B1 (en) PCI arbiter with hot plug controller support
US5305452A (en) Bus controller with different microprocessor and bus clocks and emulation of different microprocessor command sequences
EP0492817A2 (en) Data processing system and memory controller for lock semaphore operations
US20050256994A1 (en) System and method for providing an arbitrated memory bus in a hybrid computing system
US5448742A (en) Method and apparatus for local memory and system bus refreshing with single-port memory controller and rotating arbitration priority
JPH11143821A (en) Computer bus
US5577214A (en) Programmable hold delay
US6189076B1 (en) Shared synchronous memory with a switching circuit controlled by an arbiter and method for glitch free switching of a clock signal
EP0363567B1 (en) A computer with interrupt controlled clock speed and its method of operation
KR100249080B1 (en) Microcomputer peripheral device controller
US6504854B1 (en) Multiple frequency communications
US5325535A (en) Lock signal extension and interruption apparatus
US5960180A (en) Host adapter integrated circuit having autoaccess pause
EP1141832B1 (en) Regulating a data transfer time
JP2807269B2 (en) Interface unit used for multi-drop access method
KR960001271B1 (en) Data path control apparatus in input/output processor for ticom
WO1994023370A1 (en) Two speed bus clock allowing operation of high speed peripherals

Legal Events

Date Code Title Description
FZDE Discontinued