datasheetbank_Logo
Integrated circuits, Transistor, Semiconductors Search and Datasheet PDF Download Site

CS18100X View Datasheet(PDF) - Cirrus Logic

Part Name
Description
MFG CO.
CS18100X Datasheet PDF : 54 Pages
First Prev 21 22 23 24 25 26 27 28 29 30 Next Last
DS651UM23
Version 2.3
CobraNet Hardware User’s Manual
Host Management Interface (HMI)
7.4.1.1. Translate Address
Translate Address does not actually update the address pointers but initiates the
processing required to eventually move them. The host can accomplish other tasks,
including HMI Reads and Writes while the address translation is being processed. A
logical description of Translate Address is given below. A contextual use of the Translate
Address operation is shown in the reference implementations. Refer also to "HMI
Definitions" on page 33 and "HMI Access Code" on page 34.
void TranslateAddress(
long address )
{
int msgack = MSG_D;
MSG_A = ( address & 0xff0000 ) >> 16;
MSG_B = ( address & 0xff00 ) >> 8;
MSG_C = address & 0xff;
MSG_D = CVR_TRANSLATE_ADDRESS;
while( !( ( msgack ^ MSG_D ) & ( 1 << MSG_TOGGLE_BO ) ) );
}
7.4.1.2. Interrupt Acknowledge
Causes HACK to be de-asserted.
void InterruptAck( void )
{
int msgack = MSG_D;
MSG_D = CVR_INTERRUPT_ACK;
while( !( ( msgack ^ MSG_D ) & ( 1 << MSG_TOGGLE_BO ) ) );
}
7.4.1.3. Goto Packet
Moves HMI pointers to bridgeRxPktBuffer (write = 0) or bridgeTxPktBuffer (write = 1).
void GotoPacket(
bool write )
{
int msgack = MSG_D;
MSG_C = write ? MOP_GOTO_PACKET_TRANSMIT : MOP_GOTO_PACKET_RECEIVE;
MSG_D = CVR_MULTIPLEX_OP;
while( !( ( msgack ^ MSG_D ) & ( 1 << MSG_TOGGLE_BO ) ) );
}
7.4.1.4. Goto Translation
Moves HMI data pointers to the results of the most recently completed translate address
operation. The write parameter dictates the operation of the HREQ signal and only needs
to be supplied for applications using hardware data handshaking via this signal.
void GotoTranslation(
bool write = 0 )
{
int msgack = MSG_D;
MSG_C = write ? MOP_GOTO_TRANSLATION_WRITE : MOP_GOTO_TRANSLATION_READ;
MSG_D = CVR_MULTIPLEX_OP;
while( !( ( msgack ^ MSG_D ) & ( 1 << MSG_TOGGLE_BO ) ) );
}
©Copyright 2005 Cirrus Logic, Inc.
29

Share Link: 

datasheetbank.com [ Privacy Policy ] [ Request Datasheet ] [ Contact Us ]