Freelance Electronics Components Distributor
Closed Dec 25th-26th
800-300-1968
We Stock Hard to Find Parts

CS496122-CQZ

Part # CS496122-CQZ
Description 16X16 IC W/DSP C-NET INTERFACE PROC
Category IC
Availability Out of Stock
Qty 0
Qty Price
1 + $26.54252



Technical Document


DISCLAIMER: The information provided herein is solely for informational purposes. Customers must be aware of the suitability of this product for their application, and consider that variable factors such as Manufacturer, Product Category, Date Codes, Pictures and Descriptions may differ from available inventory.

28 ©Copyright 2005 Cirrus Logic, Inc. DS651UM23
Version 2.3
CobraNet Hardware User’s Manual
Host Management Interface (HMI)
7.4 Protocol and Messages
The message conduit is used to issue commands to the CS1810xx/CS4961xx and
retrieve HMI status. The data conduit is used to transfer data dependent on the HMI state
as determined by commands issued by the host via the message conduit.
7.4.1 Messages
Messages are used to efficiently invoke action in the CS1810xx/CS4961xx. To send a
message, the host optionally writes to the A, B, and C registers. Writing to the D register
transmits the message to the CS1810xx/CS4961xx. A listing of all HMI messages is
shown in Tab l e 4. Refer also to "HMI Definitions" on page 33 and "HMI Access Code" on
page 34.
Table 4. HMI messages
Message
DRQ Handshake
Mode
A B C D
Translate Address n/c Address (MS) Address Address (LS) 0xB3
Acknowledge Interrupt n/c n/c n/c n/c 0xB4
Identify read n/c n/c 7 0xB5
Goto Packet Transmit
Buffer
write n/c n/c 6 0xB5
Goto Translation write n/c n/c 5 0xB5
Acknowledge Packet
Receipt
n/c n/c n/c 4 0xB5
Transmit Packet n/c n/c n/c 3 0xB5
Goto Counters read n/c n/c 2 0xB5
Goto Packet Receive
Buffer
read n/c n/c 1 0xB5
Goto Translation read n/c n/c 0 0xB5
CobraNet Hardware User’s Manual
Host Management Interface (HMI)
DS651UM23 ©Copyright 2005 Cirrus Logic, Inc. 29
Version 2.3
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 ) ) );
}
30 ©Copyright 2005 Cirrus Logic, Inc. DS651UM23
Version 2.3
CobraNet Hardware User’s Manual
Host Management Interface (HMI)
7.4.1.5. Packet Received
Sets bridgeRxPkt = bridgeRxReady thus acknowledging receipt of the packet in
bridgeRxPktBuffer.
void PacketReceive( void )
{
int msgack = MSG_D;
MSG_C = MOP_PACKET_RECEIVE;
MSG_D = CVR_MULTIPLEX_OP;
while( !( ( msgack ^ MSG_D ) & ( 1 << MSG_TOGGLE_BO ) ) );
}
7.4.1.6. Packet Transmit
Sets bridgeTxPkt = bridgeTxPktDone+1 thus initiating transmission of the contents of
bridgeTxPktBuffer. Presumably bridgeTxPktBuffer has been previously written with valid
packet data.
void PacketTransmit( void )
{
int msgack = MSG_D;
MSG_C = MOP_PACKET_TRANSMIT;
MSG_D = CVR_MULTIPLEX_OP;
while( !( ( msgack ^ MSG_D ) & ( 1 << MSG_TOGGLE_BO ) ) );
}
7.4.1.7. Goto Counters
Moves HMI data pointers to interrupt status variables (beginning at hackStatus).
void GotoCounters( void )
{
int msgack = MSG_D;
MSG_C = MOP_GOTO_COUNTERS;
MSG_D = CVR_MULTIPLEX_OP;
while( !( ( msgack ^ MSG_D ) & ( 1 << MSG_TOGGLE_BO ) ) );
}
PREVIOUS345678910111213141516NEXT