[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [ethmac] TX MAC



5-Oct-00

   Hi,

	Few comment in respect to
http://www.opencores.org/cores/ethmac/blocks_1/txethmac/txmodules.shtml

1.
the data the come in seem to be 4 bit and so is the data that go out , if so
why do you have a select for the data on the output mux ?

2.
the JAM and pad can be any value so why not simple leaving the mux on what
ever value he was and thus saving ?

3.
the CRC you can also save as you read only 4 bit so simple shift the other
bit "up" every clock and thus the mux can have only one state for the crc

4.
IFP you said that in FDX "this module will ignore any carrier signals" is
this mean that the trasmite available will be always 1 ?
I would think that you shoudl in FDX look on the tx_en.

5.
why do you have the transmite preamable and trasmite sfd as input to the
collision counter ?
I would thing that trasmite preamble is enouth (or simple tx_en) for knowing
you are trasmiting and the trasmite 64 is enouth for determine wether it is
late collision or not.

6.
Why do you have a coll_event_p in the random module ?
it is more advisable that the random number keep runing with the collision
counter of course used for masking as locking the random might cause in two
simlar machine getting into same backoff number and thus never been able to
get out of it.
if you don't lock the ppm of the clock's will cause even in two identical
machine to  have eventually different numbers.

7.
The JAM timer you have is 64BT but if mean that you "waste" some clock as if
the packet was collide after it send 64 byte a 32BT of JAM is sufficient, on
the other hand if the packet was collide on the preamble you might need more
than 64BT, as you need minimum of 96BT.

8.
in the CRC as I mention above I belive it will give you better permormance
if you only send out 4 bit.

have a nice day

   Illan