Подскажите пожалуйста назначение индексов с такими названиями: TxProduceIndex, TxConsumeIndex (RxProduceIndex, RxConsumeIndex).
Согласно документации никак не могу понять, что есть что...
"Two registers, TxConsumeIndex and TxProduceIndex, define the descriptor locations that will be used next by hardware and software. Both register act as counters starting at 0 and wrapping when they reach the value of TxDescriptorNumber. The TxProduceIndex contains the index of the next descriptor that is going to be filled by the software driver. The TxConsumeIndex contains the index of the next descriptor going to be transmitted by the hardware. When TxProduceIndex == TxConsumeIndex, the transmit buffer is empty. When TxProduceIndex == TxConsumeIndex -1 (taking wraparound into account), the transmit buffer is full and the software driver cannot add new descriptors until the hardware has transmitted one or more frames to free up descriptors."
Вроде как оба индекса указывают на следующий дескриптор в процессе работы. И далее по тексту не понятно как тогда может получиться вот такое TxProduceIndex == TxConsumeIndex -1...
|