KS152JB Universal Communications Controller
Technical Specifications
Kawasaki LSI USA, Inc. Page 91 of 120 Ver. 0.9 KS152JB2
4.5 Summary of DMA Control Bits
DAS specifies the Destination Address Space. If DAS = 0, the destination is in External Data
Memory. If DAS = 1 and IDA = 0, the destination is a Special Function Register (SFR). If DAS =
1 and IDA = 1, the destination is in Internal Data RAM.
IDA (Increment Destination Address) If IDA= 1, the destination address is automatically incre-
mented after each byte transfer. If IDA = 0, It is not.
SAS specifies the Source Address Space. If SAS = 0, the source is in External Data Memory. If
SAS = 1 and ISA = 0, the source is an SFR. If SAS = 1 and ISA = 0, the source is an SFR. If SAS
= 1 and ISA = 1, the source is Internal Data RAM.
ISA (Increment Source Address) If ISA = 1, the source address is automatically incremented after
each byte transfer. If ISA = 0, it is not.
DM (Demand Mode) If DM = 1, the DMA Channel operates in Demand Mode. In Demand Mode
the DMA is initiated either by an external signal or by a Serial Port Flag, depending on the value
of the TM bit. If DM = 0, the DMA is requested by setting the GO bit in software.
TM (Transfer Mode) If DM = 1 then TM selects whether a DMA is initiated by an external signal
(TM = 1) or by a Serial Port flag (TM =0). If DM = 0 then TM selects whether the data transfers
are to be in bursts (TM = 1) or in alternate cycles (TM = 0).
DONE indicates the completion of a DMA operation and flags an interrupt. It is set to 1 by on-
chip hardware when BCRn = 0, and is cleared to 0 by on-chip hardware when the interrupt is vec-
tored to. It can also be set or cleared by software.
GO is the enable bit for the DMA Channel itself. The DMA Channel is inactive if GO= 0.
hold_holda ( ):
if (ARB = 0 .AND. REQ = 0) return 1;
if SARn = XRAM .OR. DARn =XRAM)
{
if (ARB =1 .AND. HLDA = 1) return 1;
if (REQ = 1 .AND. HLDA = 0) return 1;
else return 0 ;
}
return 1;
end hold_holda( ) ;
DAS IDA SAS ISA DM TM DONE GO
DCONs