As ASH1 is an IOP, it should be able to perform Ethernet operations. In the past days, I have been going through Ethernet references and literature, I must say it’s much more fun than USB.
“The diagram … was drawn by Dr. Robert M. Metcalfe in 1976 to present Ethernet … to the National Computer Conference in June of that year. On the drawing are the original terms for describing Ethernet. Since then other terms have come into usage among Ethernet enthusiasts.” The Ethernet Sourcebook, ed. Robyn E. Shotwell (New York: North-Holland, 1985), title page.
In later posts, I shall present a summary of Ethernet Operations. Nevertheless, I’ll mention here the main operations that ASH1 should be able to do:
- Communicating with the master CPU and memory unit to get the data and its associated attachments ( which is already done through the wishbone bus).
- ASH1 must be able to build up the Ethernet (802.3) packets, this is done by gathering up all the fields composing an Ethernet Frame ( Source, destination addresses, data payload and other fields). Some of these fields can be obtained from data exchange between ASH1 and master CPU (point 1), Others have to be build up by ASH1 such as Frame Check Sequence (FCS) and other synchronizing patterns.
- ASH1 must be able to send and receive Ethernet frames by communicating with Ethernet PHY .. This communication, as I have seen so far, can be implemented with ASH1 current instructions especially Set/Reset Bit on Stack elements, Output , Input and compare instructions. The communication with Ethernet PHY is done into two modes: Configuration mode , Ethernet Operation mode
- Apart from PHY communication, ASH1 must be able to operate on MAC level. For instance: Destination address check, collision check, back off algorithm, error checking, identifying and de/multiplexing Ethernet Frame Fields. These operations would need a random number generator, 16-bit compare and check, 16-bit increment/decrement and CRC unit generator/checker.
That’s it for the post… as I said next posts, I ll summarize Ethernet Operations. Moreover, I’ll discuss about back-off algorithm and CRC calculation in details !