
E T H E R N E T C O M M U N I C A T I O N M O D U L E
Sample hash table code
334
Hardware Reference NS9215
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
S a m p l e h a s h t a b l e c o d e
This sample C code describes how to calculate hash table entries based on 6-byte
Ethernet destination addresses and a hash table consisting of two 32-bit registers
(HT1 and HT2). HT1 contains locations 31:0 of the hash table; HT2 contains
locations 63:32 of the hash table.
The pointer to the hash table is bits [28:23] of the Ethernet destination address
CRC. The polynomial is the same as that used for the Ethernet FCS:
G(x) =
x
^32+
x
^26+
x
^23+
x
^22+
x
^16+
x
^12+
x
^11+
x
^10+
x
^8+
x
^7+
x
^5+
x
^4+
x
^2+
x
+1
static ETH_ADDRESS mca_address[MAX_MCA];
/*list of MCA addresses*/
static INT16 mca_count;
/*# of MCA addresses*/
/
*
*
* Function: void eth_load_mca_table (void)
*
* Description:
*
* This routine loads the MCA table. It generates a hash table for
* the MCA addresses currently registered and then loads this table
* into the registers HT1 and HT2.
*
* Parameters:
*
*
none
*
* Return Values:
*
*
none
*
*/
static void eth_load_mca_table (void)
{
WORD32 has_table[2];
// create hash table for MAC address
eth_make_hash_table (hash_table);
Summary of Contents for NS9215
Page 1: ...NS9215 Hardware Reference 90000847_C Release date 10 April 2008...
Page 3: ......
Page 4: ......
Page 26: ...26 Hardware Reference NS9215...
Page 44: ...P I N O U T 26 5 System clock 44 Hardware Reference NS9215 System clock drawing...
Page 52: ...P I N O U T 26 5 Power and ground 52 Hardware Reference NS9215...
Page 80: ...I O C O N T ROL M O D U L E Memory Bus Configuration register 80 Hardware Reference NS9215...
Page 136: ...WOR KI N G W I TH T H E C P U Noncachable instruction fetches 136 Hardware Reference NS9215...
Page 202: ...S Y S T E M C O N T RO L M OD U L E RTC Module Control register 202 Hardware Reference NS9215...
Page 354: ...E X T E R N A L D M A DMA Peripheral Chip Select register 354 Hardware Reference NS9215...
Page 472: ...R E A L TI M E C L O C K M O D U L E General Status register 472 Hardware Reference NS9215...
Page 512: ...TI M I NG Clock timing 512 Hardware Reference NS9215...
Page 515: ...PA CKA GING Processor Dimensions www digiembedded com 515...
Page 516: ...PA CKA GING Processor Dimensions 516 Hardware Reference NS9215...