MC68000 DMA USING THE MC6844 DMA CONTROLLER

Similar documents
6 Direct Memory Access (DMA)

CPE/EE 421/521 Fall 2004 Chapter 4 The CPU Hardware Model. Dr. Rhonda Kay Gaede UAH. The CPU Hardware Model - Overview

Chapter Operation Pinout Operation 35

INTERFACING THE ISCC TO THE AND 8086

CPE/EE 421 Microcomputers

Unit DMA CONTROLLER 8257

Direct Memory Access Controller (DMAC)

DUAL 16-BIT PORTS FOR THE MC68000 USING TWO MC6821S

Application Note AN2247/D Rev. 0, 1/2002 Interfacing the MCF5307 SDRAMC to an External Master nc... Freescale Semiconductor, I Melissa Hunter TECD App

Alex Milenkovich 1. CPE/EE 421 Microcomputers: Motorola The CPU Hardware Model. Outline

DP8420V 21V 22V-33 DP84T22-25 microcmos Programmable 256k 1M 4M Dynamic RAM Controller Drivers

Central Processing Unit. Steven R. Bagley

SECTION 2 SIGNAL DESCRIPTION

Summer 2003 Lecture 21 07/15/03

3. The MC6802 MICROPROCESSOR

DP8420A,DP8421A,DP8422A

Z Z-280 MT8930, MT8992/3/4/5 MT8880 MT8888 MT8889 MT8980/1 MT8985, MT8986 (DIP-40) MT8986 (PLCC-44) MT8920B MT8952B

VME64M VME64 MASTER CONTROLLER. Version 1.1

INPUT/OUTPUT ORGANIZATION

Interfacing to the Motorola MCF5307 Microprocessor

INPUT/OUTPUT ORGANIZATION

Digital System Design

The MC9S12 in Expanded Mode Using MSI logic to build ports Using MSI logic to build an output port Using MSI logic to build an input port

DSP56002 PIN DESCRIPTIONS

General Purpose Programmable Peripheral Devices. Assistant Professor, EC Dept., Sankalchand Patel College of Engg.,Visnagar

The Memory Component

3. Controtlto specify the mode of transfer such as read or write 4. A control to start the DMA transfer

Design Considerations The ColdFire architectures' foundation in Freescale's architecture allows designers to take advantage of the established t

Unit 3 and Unit 4: Chapter 4 INPUT/OUTPUT ORGANIZATION

AIRbus Interface. Features Fixed width (8-, 16-, or 32-bit) data transfers (dependent on the width. Functional Description. General Arrangement

1 MALP ( ) Unit-1. (1) Draw and explain the internal architecture of 8085.

SIPS - Group. Technical Description May ISA96 Bus Specification V 1.0

INPUT-OUTPUT ORGANIZATION

MPC860 Interface with Generic MC68000 Bus

128 Kb Dual-Port SRAM with PCI Bus Controller (PCI-DP)

SIPS - Group. Technical Description May AT96 Bus Specification V 1.1

Control Unit: The control unit provides the necessary timing and control Microprocessor resembles a CPU exactly.

I/O Organization John D. Carpinelli, All Rights Reserved 1

1. Internal Architecture of 8085 Microprocessor

Unit 5. Memory and I/O System

The MC9S12 address, data and control buses The MC9S12 single-chip mode memory map Simplified write/read cycle. Address, Data and Control Buses

PCMCIA RELEASE 2.0 INTERFACE BOARD FOR DRAGONBALL UPDATE

Interfacing an Intel386 TM EX Microprocessor to an CAN Controller

NS9360. Errata _F. Release date: March 2008

3 Volt Intel StrataFlash Memory to Motorola MC68060 CPU Design Guide

Chapter 13 Direct Memory Access and DMA-Controlled I/O

The D igital Digital Logic Level Chapter 3 1

PIO 8255 (cont..) M Krishna kumar MAM/M3/LU9e/V1/2004 1

ST78C34 GENERAL PURPOSE PARALLEL PRINTER PORT WITH 83 BYTE FIFO DESCRIPTION. PLCC Package FEATURES ORDERING INFORMATION

Chapter 5 Input/Output Organization. Jin-Fu Li Department of Electrical Engineering National Central University Jungli, Taiwan

MCS6522 V E R S A T IL E IN T ERFACE A D A PTER

Microprocessor s. Address Bus. External Buses. Interfacing CPU with external word. We classify the CPU interfacing signals in three functional buses:

Freescale Semiconductor, I. Product Brief Integrated Multiprotocol Processor with Ethernet

MCF5307 DRAM CONTROLLER. MCF5307 DRAM CTRL 1-1 Motorola ColdFire

UNIT - II PERIPHERAL INTERFACING WITH 8085

1. Define Peripherals. Explain I/O Bus and Interface Modules. Peripherals: Input-output device attached to the computer are also called peripherals.

Digital Input and Output

COMP3221: Microprocessors and. and Embedded Systems. Overview. Computer Buses. Bus Oriented Architecture

Design with Microprocessors

Modes of Transfer. Interface. Data Register. Status Register. F= Flag Bit. Fig. (1) Data transfer from I/O to CPU

128K Bit Dual-Port SRAM with PCI Bus Controller

VMEbus Vertical Interconnect Alan Jones

1. INTRODUCTION TO MICROPROCESSOR AND MICROCOMPUTER ARCHITECTURE:

Chapter 9 External Memory Interface (Port A)

EC 6504 Microprocessor and Microcontroller. Unit II System Bus Structure

MC MC ISDN S/T Interface Transceiver

US x 32 OLED/PLED Segment/Common Driver with Controller For 20x4 Characters.

ECE 485/585 Microprocessor System Design

BUILDING BLOCKS OF A BASIC MICROPROCESSOR. Part 1 PowerPoint Format of Lecture 3 of Book

Topics. Interfacing chips

Utilizing the Burst Mode Flash in a Motorola MPC555 System

Computer Memory. Textbook: Chapter 1

2. List the five interrupt pins available in INTR, TRAP, RST 7.5, RST 6.5, RST 5.5.

EXPERIMENT #7 PARALLEL INTERFACING USING THE PERIPHERAL INTERFACE ADAPTER (PIA)

CPCI-HPDI32ALT High-speed 64 Bit Parallel Digital I/O PCI Board 100 to 400 Mbytes/s Cable I/O with PCI-DMA engine

Chapter 16. PC-Compatible Bus Connectors Discussion. PC-Compatible Bus Connectors 97

INTERFACING THE MC61000 TO THE MC6146 RIOT

White Paper AHB to Avalon & Avalon to AHB Bridges

CPE/EE 421 Microcomputers

The PCI 9054 has Direct Master, DMA and Direct Slave Hitachi SH bit RISC Processor

Part 1 Using Serial EEPROMs

Computer Systems Organization

The 9S12 in Expanded Mode - Using MSI logic to build ports Huang Chapter 14

TECHNICAL PAPER Interfacing the Byte- Wide SmartVoltage FlashFile Memory Family to the Intel486 Microprocessor Family

Frequently Asked Questions

8086 Hardware Specification

Memory System Overview. DMA & Endian-ness. Technology. Architectural. Problem: The Memory Wall

Blackfin ADSP-BF533 External Bus Interface Unit (EBIU)

MC68331 DEVICE INFORMATION (Issue 6-17 August, 1995) Rev. A and B Silicon E95B, E93N and F43E Mask Set

MICROPROCESSOR AND MICROCONTROLLER BASED SYSTEMS

Lecture 5: Computing Platforms. Asbjørn Djupdal ARM Norway, IDI NTNU 2013 TDT

Chapter 1: Basics of Microprocessor [08 M]

HIGH PERFORMANCE ECP/EPP PRINTER INTERFACE USING THE PPC34C60 PPIC

Using the MC9S12 in Expanded Mode External Ports S12CPUV2 Reference Manual Multiplexed External Bus Interface (MEBI) Module V3 Block User Guide

Emulating Dual SPI Using FlexIO

Microprocessor & Interfacing Lecture DMA Controller--1

From Datasheets to Digital Logic. synthesizing an FPGA SPI slave from the gates

description STRB A0 A1 A2 R/W D1 D2 D3 GND D4 D5 RDY TDO TCK TMS TRST TDI RST TOE D7 CLKIN STRB R/W D0 D1 D2 D3 NC GND D4 D5

University of Technology

The 80C186XL 80C188XL Integrated Refresh Control Unit

Transcription:

MOTOROLA Semiconductor Products Inc. AN 824A Application Note MC68000 DMA USING TH MC6844 DMA CONTROLLR The MC6844 DMA Controller (DMAC) can be interfaced to the MC68000 microprocessor to provide flexible, lowcost, relatively high performance DMA control in an MC68000-based system. In designing such a system, three interface requirements must be considered: I. The DMAC should operate at maximum frequency for efficient data transfer. High performance systems may require the use of the two megahertz device (MC68B44), so the system must allow the MC68000 to access the DMAC asynchronously. 2. Handshake logic must be implemented to arbitrate control of the system bus between the MC68000, the DMA control system, and other possible bus masters. 3. The MC6844 is an 8-bit device intended for use in M6800 systems, capable of direct memory access through only a 64K memory space, and also lacks certain bus strobes necessary for simple implementation in an MC68000-based system. A bus interface must be designed to allow direct memory access throughout the entire 16 megabyte MC68000 memory map and to provide the required bus strobes needed for successful use in an MC68000-based system. This application note describes designs to meet each of these requirements. These designs are then combined to form a direct memory access control system for the MC68000. An implementation of the complete system is presented in block diagram form using an MC6854 Advanced Data Link Controller (ADLC) and a static memory buffer. MC6844 AS\: NCHRONOUS INTRFAC OPRATION The MC6844 can be interfaced asynchronously to the MC68000 using the circuitry presented in Figure I. This circuit ahow~ the MC68000 to access a DMAC driven by an clock that is either synchronous or asynchronous to the MC68000 clock. It generates DMAC chip select at the proper time to satisfy DMAC timing requirements, latches data to satisfy data hold time requirements, and asserts data transfer acknowledge at the proper time to ensure valid data transfer between devices. This circuit can be used to interface other MC6800 peripherals, and is used to interface to the ADLC as well as the DMAC in the system implementation presented at the end of this application note. CIRCUIT OPRATION - When the MC68000 performs a read or write bus cycle (access), the processor asserts one or both of the two data strobes (DS), an address strobe (AS), the read/write (R/W) signal, and an address. The processor also outputs data during write cycles. The MC68000 remains in this state until the bus cycle is terminated. Data transfer acknowledge (DTACK) is asserted by the peripheral or memory device being accessed to initiate termination of the bus cycle by the MC68000. The circuit in Figure I synchronizes MC68000 accesses to the DMAC with the clock. Initially, flip-flops VIA and V I B are cleared causing a high DTACK output setting V2 and V3 into a transparent mode. Latch V2 is in the highimpedance state due to a high on the output enable (O) input. Latch V3 is enabled due to a low on the O input. At the start of a DMAC access, latch V3 remains enabled if the access is a write. If the access is a read, the high R/W and DMAC Select inputs to V4A cause U3 to go to the highimpedance state and U2 to become enabled. The DMAC Select signal is asserted when the DMAC is addressed. However, the DMAC is actually selected by the assertion of CS (DMAC). Flip-flop VIA is clocked high on the first falling edge of after DMAC Select and data strobe (DS) are asserted. The Q output of VIA is applied to V4D, asserting CS (DMAC). Selecting the DMAC at this time ensures that the DMAC has adequate address setup time. On the next falling edge of, the Q output of V I B is clocked low asserting DTACK and latching data into the enabled latch. The asserted DTACK signal, inverted by V4D, deselects the DMAC by causing CS (DMAC) to go high. When the access terminates, flip-flop U I is cleared by the negation of DS, and the interface circuitry is initialized for the next access. The DTACK signal is buffered by an open-collector buffer (US) to allow assertion of DTACK by other devices when the DMAC is not being accessed.

U3 MC68000 Data Bus C 07 07 06 06 05 05 04 04 03 03 02 02 01 01 DO 00 '" O L MC6844 Data Bus SN74LS373 U2 07 07 06 06 4LSOO 05 05 04 04 03 03 02 02 01 01 00 DO S~OO N L VCC_1 }- R/W==:J U4A '- U4B elect SN7407 OTACK. U5 VCC VCC ~ SN74LS112 f SN74LS112 r S OMAC Select J So Q J So Q NC OS:=J...--Tos U4C '- VCC ~K CP U1A - 1,...---(l CP U1B o Q NC K CD ~ CD OTACK Y T 'Open Call BUS ARBITRATION INTRFAC The MC6844 is an 8-bit, 4-channel DMA Controller capable of performing direct memory transfers of a user defined number of data bytes (data block) within a 64K byte memory space. Associated with each channel of the controller are: A transfer request (TxRQ) input which is asserted by a peripheral controller or a processor to request DMA service. A 16-bit address register which is initialized with the beginning address of the data block to be transferred. A 16-bit byte count register which is initialized with the desired number of data bytes (size of the data block) to be transferred. ach channel can perform DMA transfers in one of three modes: TSC Steal, Halt Steal, and Halt Burst. Two of these modes, TSC Steal and Halt Steal, are single-byte transfer modes in which the DMAC returns control of the system bus to the processor after each transfer, while the Halt Burst mode is a block transfer mode in which the DMAC retains control of the system bus until the last byte of the data block has been transferred. The bus arbitration circuit presented in Figure 2 is designed for the Halt Steal and Halt Burst modes of operation. The TSC Steal mode is intended for use with the MC6800 and offers no advantage over the Halt Steal mode in MC68000 applications. In the Halt Steal mode the DMAC responds to a transfer request by asserting DMA request halt steal (DRQH). The DMAC then waits until DMA grant (DGRNT), a DMAC input, is asserted. At this time, one transfer of data is initiated and transfer strobe (TxSTB) is asserted, followed by the negation of DRQH. This sequence is repeated until all data has been transferred. The same sequence is followed in the Halt Burst mode with the exception that DRQH is negated only after the last byte of the data block has been transferred. In this mode, bus mastership is arbitrated once, then data transfers occur in succession until all data has been transferred.

MC68000 5V U5 SN74LS32 U7 SN74LS04 MC6844 BR 6B DRQH TxRQ 5 V 5V BG SN74LSl38 SN74LS04 U4 'IT AS 3 U6 DTACK AO BGACK A1 A2 03 DGRNT 5V TxSTB *Open Collector Output Note: 10 kn Pullup Resistors CIRCUIT OPRATION - For either a Halt Steal or Halt Burst DMA transfer by the control systems presented in this application note, three conditions must be met: 1. Transfer request (TxRQ) must be asserted. 2. DRQH must be asserted. 3. All bus masters must have relinquished the bus to ensure that DMA grant (DGRNT) is asserted. Initially DGRNT is low, bus grant acknowledge (BGACK) is not asserted by the interface, and TxSTB is high. The DMAC responds to a transfer request by asserting DRQH. Once DRQH is asserted, it remains asserted until the DMAC performs a byte transfer in the Halt Steal mode or until the last byte of a designated memory block is transferred in the Halt Burst mode. Transfer request (TxRQ) is coupled through UI and U2 so that MC68000 bus request (BR) is asserted when TxRQ is asserted. By requesting a DMA transfer and bus arbitration simultaneously (disregarding gate propagation delay), DMA latency time is minimized. The MC68000 responds to a bus request by asserting bus grant (BG) and relinquishing the bus. When DRQH is asserted and all bus masters are off the system bus, indicated by the negation of AS, DTACK, and BGACK, flip-flop U3A-U3B is set by the assertion of the 03 output of U4. The setting of flip-flop U3A-U3B asserts DGRNT to initiate DMA transfer(s), and also asserts BGACK to keep other bus masters off the bus. Bus grant (BG) is negated by the MC68000 soon after BGACK is asserted. _ Flip-flop U3A-U3B is cleared on the rising edge of TxSTB after it is asserted during each DMA cycle in the Halt Steal mode, and during the last cycle of a block transfer in the Halt Burst mode. Clearing flip-flop U3A-U3B negates BGACK to release the system bus, and negates DGRNT to stop DMAC transfer activ_it~y. The MC68000 BR and BGACK signals are driven by open collector gates to allow other devices to also request the system bus. A pullup resistor is used to hold AS in the negated state during transitions in bus ownership. BUS INTRFAC RQUIRMNTS A general direct memory access controller for an MC68000-based system must allow direct memory access throughout the entire 16 megabyte memory map of the MC68000. In addition, it must assert the appropriate data strobe(s) and an address strobe. The MC6844 does not satisfy these requirements; therefore, TTL devices must be used to meet these needs. The MC68000 can perform three types of data transfers: word transfers (DO-DI5), byte transfers to/from lower data bytes (DO-D7), and byte transfers to/from upper data bytes (D8-DI5). When transferring a byte, the MC68000 asserts either the upper data strobe (UDS) or the lower data strobe (LDS), depending on whether an upper or a lower data byte is being transferred; and when transferring a word, it asserts

/ / V SN74LS75 SN74LS367 S03 7 U4 lli U5 5 D5S / S02 6 lq..-l 3 UDS / SOl 3.l.. - 11 LOS / / SOO 2 ~ 13 UOS V - - - 013,4 15 1 ystem Bus MC6844 Ul - 2 CS -0 4 SA1/ AO 5 SA2/ Al 6 SA3/ A2 7 SM / A3 IRQ/.~ 8 SA5/ M DND 36 9 SA6/ A5 ORQf-i~ 10 SA7/ A6 ORaT -j - 11 SA8/ A7 RST~ 12 SA9/ A8 ----:::. 13 SA10 A9 14 SAll/...:. U9 34 Al0 TxSTB 15 SA12/ All ~ AS 16 SA13/ SOO 28 A12 00 17 SA14/ " SOl 27 A13 Dl 18 SA15/ r\. S02 26 A14 02 19 SA16/ A15 SN74LS86 S03 25 03 3 SR/W/ SR/W 1 S04 24 R/W 3 04 35 1f"... :1 1 _ 2..lJ U6 S05 23 TxAKA 05 U7 "-' 2JU8A}>-L.- S06 22 06 SN74LS04 1 - S07 21 07 T 4_ OGRNT 51u8B)o- 38 OGRNT R/W To Peripheral Controller SN74LS373 SOO 3 U2 2 SA17 SOl 4 5 SA18 / S02 7 6 SA19 / S03 8 9 SA20 / S04 13 12 SA21 / S05 14 15 SA22 / S06 17 16 SA23 / 18 L - O ~ 011 1 1 CHAN 0 SLCT A SN74LS373 SOO 3 U3 2 SA17 / SOl 4 5 SA18 S02 7 6 SA19 S03 8 9 SA20 / S04 13 12 SA21 / S05 14 15 SA22 S06 17 16 SA23 / 19 - L O. ~ &) 1 1 CHAN 1 SLCT

both UDS and LDS. The MC68000 asserts AS during each type of transfer. The following are general designs which can be modified to meet individual system requirements. The two designs presented differ in the types of transfer they perform. Only two of the four DMAC channels are used in each design. However, these interfaces can be easily modified for four-channel operation. WORD AND NON-SQUNTIAL BYT TRANSFR INTRFAC SYSTM An MC68000 DMA control system capable of word transfers and byte transfers to/from upper byte or lower byte memory locations is presented in Figure 3. In this system, address lines AO-AI5 from the DMAC are connected to MC68000 system address lines SAI-SA23 and as the DMAC address lines increment or decrement (according to user option), the system address is mcremented/ decremented by words, rather than bytes; that is, the system address changes in increments of two bytes. The system upper address lines SAl7-SA23, are latched into transparent latches U2 and U3 during initialization, which' are enabled during a DMA transfer. Latch U2 is the channel 0 upper address latch, with its chip select labeled A; latch U3 is the channel I upper address latch, with lls chip select labeled B. During a direct memory access, transfer acknowledge A (TxAKA) from the DMAC is asserted during channel I transfers, and negated during channel 0 transfers. This DMAC output is used to enable the proper address latch during a direct memory access. The type of direct memory access transfer (word or byte) is determined by the state of latch U4 during the access. Latch U4 with its chip select labeled C, is connected to system data bus lines SDO-SD3 and, through three-state buffer U5, to system data strobes LDS and UDS. When writing to latch U4 during initialization, the states of SD2 and SD3 determine the states of the data strobes during a channel I direct memory access, and the states of SDO and SD I determine the states of the data strobes during a channel o direct memory access. For word transfer both of the data strobes must be asserted, while for byte transfers either the LDS or UDS is asserted, depending on whether a lower data byte (DO-D7) or an upper data byte (D8-Dl5) is being transferred. Note that in memory organized in 16-bit words, byte transfers are to/from either the upper byte or the lower byte of memory during each DMA block transfer. During a direct memory access the appropriate U4 latch states are gated onto the system bus by U5. The appropriate U5 buffers are enabled by latch U2 during channel 0 access, and by latch U3 during channel I access. When DGRNT is a"sserted, the R/W signal to the peripheral controller is inverted by exclusive OR gate U6. Transfer strobe (TxSTB) is fed through an open collector buffer to the system AS line. During a direct memory access transfer the AS output of the MC68000 is in the highimpedance state and TxSTB is used as the system address strobe. Transfer strobe is asserted by a DMAC operating at 2 megahertz for at least 370 nanoseconds to indicate a valid address during a direct memory access, and may require conditioning for use as an address strobe during direct memory access in some systems. SQUNTIAL MMORY BYT TRANSFR INTRFAC SYSTM An MC68000 DMA control system capable of byte transfers to/from sequential memory locations in a memory organized in 16-bit words is presented in Figure 4. In this system, address lines A5-A15 from the DMAC are connected to MC68000 system address lines SA5-SAI5. During a direct memory access, address lines AI-A4 from the DMAC are connected to MC68000 system address lines SAI- SA4 through buffer U9. Address line AOfrom the DMAC is connected through inverters U4 to generate the data strobes. Only one data strobe is asserted at a time. ach time the DMAC increments/decrements, the state of UDS and LDS alternate. System address line SAI changes state only after each data strobe is asserted for one DMA cycle and negated for one DMA cycle. By doing this, data is transferred to/from consecutive byte locations in the word-dimensioned memory map. When the MPU has to access the DMAC, buffer U8 is enabled by CS and address lines AO-A4 are connected to MC68000 system address lines SAI-SA5. Latches U2 and U3 latch upper system address lines SAI6-SA23 during initialization and their operation is identical to the circuit presented in Figure 3. COMPLT SYSTM IMPLMNTATION A block diagram of a complete MC68000 DMA system using the MC6844 DMAC for controlling DMA between an MC6854 ADLC and a block of memory is presented in Figure 5. Data transfer in this system is between the ADLC and lower memory byte locations (DO-D7). The ADLC assem receiver data service request (RDSR) each time the receiver FIFO register requires servicing, and transmitter data service request (TDSR) each time the transmitter is ready for data. These outputs are tied to transfer request channel 0 (TxRQO) and transfer request channel I (TxRQI) of the DMAC so that DMAC channel 0 services the ADLC receiver, and DMAC channel I services the ADLC transmitter. The block labeled "MC6854 Register Select, R/W Control" is used to address the ADLC transmit or receive register and to imert the read/v. rite signal during a direct memory access. This circuit puts the address bus from the ADLC in the high-impedance state during the direct memory access and forces ADLC register select zero (RSO)to a low state and register select one (RSI) to a high state, so that during a direct memory access either the transmit FIFO register or the receiver FIFO register is selected according to the state of the R/W signal. The circuit uses DMAC DtND to select the frame terminate register of the ADLC during the last byte of a DMA block transfer when ~ervicing the transmitter FIFO. During a direct memory access, the ADLC is selected by assertion of TxSTB to ensure that the ADLC is selected only during valid direct memory access cycles. System memory is connected directly to the system bus. The" Memory DTACK Gen." consists of a counter driven by the MC68000 clock. and enabled by an asserted address strobe when memory is accessed by the processor. Data transfer acknowledge (DTACK) is "picked off" one of the counter pins so that it is asserted at some preset time interval after memory is accessed. Memory address decoding is the same for both direct

/ SN74LS368 U4 -UOS 11 12 - System Bus IRO/ONO OROH DRaf RST 14 ~ 13 1LOS ~ MC6844-15 '\ 2ep Ul CS 1.15 SA1/ AO 40S/SAl 3 2 5 SA1/SA2 5 4 SA2/ Al 6 SA2/SA3 7 6 SA3/ A2 33 7 SA3/SA4 9 U8 10 SA4/ A3 8 SA4/SA5 11 12");A5/ A4 36 9 SA5 / A5-37 10 SA6 / SN74LS367 A6... 39 11 SA7 / A7 40 12 SA8 A8 1 15 A 13 SA9 A9 2 3~SA1/ 1 34 5~ SA2/ TxSTB Al0 14 SA10 ~ 15 SAll / All 6 7 SA3/ I'\.SOO 28 U9 SN7407 16 SA12 DO A12 ~ 10 9 SA4 4 SOl 27 17 SA13 / l 01 A13 SN74LS04 I\..S0226 18 SA14 ~ 02 A14 I\..S0325 03 A15 19 SA15 / 5 SN74LS367 I\..S0424 04 R/W 3 SR/W I\. 3 SR/W 1 _ 3 R/W To I'\.S0523 35 1 2 ~ Peripheral 05 TxAKA I'\.S0622 1 "'- 2 Controller 06 U5A -2lU6A 3 SN74LS86 'S0721 SN74LS04 1-07 - OGRNT OGRNT T4_ 38 "51U6B»;;- _ 6 ~ 1 SN74LS373 'SOD 3 U2 2 SA16 / 'SOl 4 5 SA17 /,S02 7 6 SA18 /,S03 8 9 SA19 / S04 13 12 SA20 ~ t\.s05 14 15 SA2l ~ f\..s06 17 16 SA22 / f\..s07 18 19 SA23 / L - O 110 1 1 CHAN 0 SLCT A SN74LS373 f\..soo 3 U3 2 SA16 / f\..sol 4 5 SA17 / f\..s02 7 6 SA18 / f\..s03 8 9 SA19 S0413 12 SA20 / S0514 15 SA2l / 50617 16 5A22 ~ 50718 19 SA23 ~ L Ō 11 CHAN 1 SLCT 0 Open Collector Output

"- "- SA1-SA2 R/W MC6854 MC6854 Tx Data Register To Serial Rx Data } Select, Link r RSO-RSl R/Vii "- Control R/W - "- TDSR - f0- r DO-D7 RDSR - I z a:: C") MC68000 ~ N Cl CS «(f) MC6854,..:. CS " I I - L ~-< ~ System Address '" i'ci5s DMA Al-A23 Address I\.. R/W Asynch. Upper MC6844 Decoder Interface DO-D7 Address, / Address I\.. SDO-SD7 DND AS, AS, lds '" DTACK Data V SA1-SA16 Periph Select r AO-A15 TxAKA Strobe DO-D7 ~ System - "- TxAKA Generator Data...--- / Periph CS DGRNT DGRNT / - R/W TXSi'B ~. r5'faci( / r DO-D7 DRQH lds AS TxRQO TxRQl "- - / Clock TxSTB - Generator CS RIW I I MC6844CS BR '" I ~GKACK BG '" DMA System Latch Selects Memory '" "- -- TxSTB DTACK BR DRQH ClK DTACK BG Bus TxRQl Gen. DGRNT 'B'GACi< Arbitration TxRQ2 DTm" DGRNT I) AS OGRNT 1_ ~ "- I\.. R/W L1L)o- Memory I\.. SOO-SD7 r 00-07,SA1-SA10 W r "- AOOR """""I' CS

memory access and processor data transfers. However, during a direct memory access, memory is deselected by the NOR or DGRNT and. This ensures that, during a direct memory access, the memory will latch written data at the fall of, when ADLC data is valid. ADDITIONAL SYSTM NHANCMNTS Two enhancements to the direct memory access control systems presented in this application note should be considered. One improvement increases ADLC throughout, and the other allows memory to memory DMA data transfers. THROUGHPUT NHANCMNT - Worst-case DMA latency of the systems described in this application note are 1.18 microseconds for MC68000 systems that do not implement the Read-Modify-Write instruction, and 1.68 microseconds for systems that do implement the instruction. This is the worst-case delay between assertion of TxRQ and the beginning of the direct memory access cycle to service the channel, and allows for propagation delay through the gates in the bus arbitration handshake logic. These times assume 8 megahertz processor operation, and 2 megahertz controller operation. The ADLC service latency can be reduced by designing a FIFO buffer to handle data transfers between the ADLC and the rest of the system. In this technique, the FIFO buffer services the ADLC, and direct memory access transfer is between the FIFO buffer and system memory. MMORY TO MMORY DMA - The direct memory access designs presented in this application note can be easily modified to perform memory to memory data transfer. The DMAC will perform a direct memory access transfer for each cycle in the Halt Burst mode while TxRQ is asserted, until the block transfer is complete. In this way, an MC68B44 clocked at 2 megahertz can perform a direct access at a 2 megahertz rate. For memory to memory transfer, all that is needed is to allow one memory block to be addressed directly by the DMAC during direct memory access, and transpose the address to access the other memory block. During a direct memory access, the DMA R/W signal to one of the memory blocks must be inverted so that during each direct memory access cycle data is read from one memory location in one memory block, and is written into another location in the other memory block. This information has been carefully checked and is believed to be entirely reliable However no responsibility is assumed for inaccuracies. Motorola reserves the right to make changes to any products herein to improve reliability. function or design. Motorola does not assume any liability arising out of the application or use of any product or circuit described herein. No ficense is conveyed under patent rights in any form. When this document contains information on a new product. specifications herein are subject to change without notice. MOTOROLA Semiconductor Products Inc. Colvilles Road, Kelvin state - ast Kilbride/Glasgow - SCOTLAND