EtherNAT Address Filter Design
6byte Add. + 58bytes capture
worst case 58*8 / 10Mbps = 46,4 mueSek. to respond
Block codes work on fixed-size blocks (packets) of bits or symbols of predetermined size. Practical block codes can generally be hard-decoded in polynomial time to their block length.
Convolutional codes work on bit or symbol streams of arbitrary length. They are most often soft decoded with the Viterbi algorithm, though other algorithms are sometimes used.
- Hemming distance
- Levenshtein distance
Hamming ECC is commonly used to correct NAND flash memory errors. This provides single-bit error correction and 2-bit error detection. they only suitable for more reliable single-level cell (SLC) NAND. Denser multi-level cell (MLC) NAND may use multi-bit correcting ECC such as BCH or Reed–Solomon. NOR Flash does not use any error correction.
The key innovation of turbo codes is how they use the likelihood data to reconcile differences between the two decoders
This iterative process continues until the two decoders come up with the same hypothesis, typically in 15 to 18 cycles.
the parallel interface use busffer descriptor look up, into 32bit FIFO width memory bus
is bound by the 4-longword SCC2 receive FIFO leaving 42 Bytes or 33,6 mueSek of respons time
the MU9C1480 LAN CAM holds 1K 64bit can cascaded to achieve deeper CAM size
device uses a 16bit Data BUS in a 44PIN pllc
letch the destination address 32bit data bus comparing the sequenz to writing it
in register by 16bit words.
the interface logic allow also host access to the LANCAM for Add Tabel maintenance.
also a DSP can use as an address filter, with a fast instruction cycle Time (30 to 50 ns)
Communication with the CPU is done (3DC++) via an independent parallel Host Port on the DSP
the hostport is used to boodstrap the DSP
the Motorola DSP56002 by 24Bit using 66Mhz for 30ns execution time!
with 56bit accomulation which allows a full 48bit Ethernet address to be DONE
in a single intruction (3x by MT6261)
internal dataRAM of 512 WORDs each for address filter code an up to 256 Addresses inkl. destination ADD
Optional the MCM56824 expand the static RAM to 8K words
- Offset corresponds to the bits used to determine the byte to be accessed from the cache line. Because the cache lines are 4 bytes long, there are 2 offset bits.
- Index corresponds to bits used to determine the set of the Cache. There are 32 sets in the cache, and because 2^5 = 32, there are 5 index bits.
- Tag corresponds to the remaining bits. This means there are 14 – (5+2) = 7 bits, which are stored in tag field to match the address on cache request.
1 bit frame sync signal to start receiving
the first 3Bit used to delay the DATA! and than starts the INVERSION auf 24Bit WORDS in time slots
after 2 WORDS received its RESET the SSI and starting all again ...next FRAME
Trilling back and forth , 2WORD Destination Reset then 2 WORD Source
The letching VALUE $FF to compare the 48Bits at a TIME can be later FILTERED by the MCU
The Address Table consisting X and Y memory Location to take advantage of the parallel architecture
By comparing the destination ADD (56bit), the end of search is detected.
the Table Pointer goes back to the next parallel LOAD or EXIT
the searching LOOp needs 3 instruction Cycles to execute it to onCHIP RAM table, therefore it needed an extra CYCLE
to TRANFER the 48Bit ADD on the SINGLE BUS!
# ADDRESS ENTRIES
- MU91480
≶1023 - NxMU9C1408
≶ N x 1022
Mutiple CAMs - DSP 40MHz
<255 - DSP 66MHz
>500
External Memomry
AT 3 cycles (90ns) per address, can go through roughly 500 address entries withinthe shartest Ethernet frame.
A small bridge with up to 255 address table entries would only the lower cost by 40Mhz using only On.Chip.Memory
by 60Mhz external Memory, device can HANDLE 500entries! Thats usable for Multiple DSPs in Parallel!
FAZIT
T-Systems 1993 A(n)20 | 31Within the MCM56824 & Server Message Block (MU9C1408)
Trilling Back & Forth