Difference: TrbNetIBUF (1 vs. 6)

Revision 6
27 Nov 2007 - Main.JanMichel
Line: 1 to 1
 
META TOPICPARENT name="TrbNetIOBUF"

Overview

Line: 13 to 13
 

Line Decription
MED_DATAREADY_IN Data word is offered by the Media (the IBUF MUST read)
Changed:
<
<
MED_DATA_IN[0...50] Data word
>
>
MED_DATA_IN[0...15] Data word
MED_PACKET_NUM_IN[0..1] Packet number
 
MED_READ_OUT buffer reads a word from media
MED_ERROR_IN[0..2] Status bits
Line: 21 to 22
 
Line Decription
INT_HEADER_IN Concentrator kindly asks to resend the last header
INT_DATAREADY_OUT Data word ready to be read out by the internal logic
Changed:
<
<
INT_DATA_OUT[0...50] Data word
>
>
INT_DATA_OUT[0...15] Data word
INT_PACKET_NUM_OUT[0..1] Packet number
 
INT_READ_IN reading
INT_ERROR_OUT[0..2] Status bits
Revision 5
25 Aug 2006 - Main.IngoFroehlich
Line: 1 to 1
 
META TOPICPARENT name="TrbNetIOBUF"

Overview

Line: 67 to 67
 

Header retransmit

If data is been read by the internal port, and this data word is a header, the header will be registered at the same time
Changed:
<
<
for later use. At any point, the internal port may ask for a header (INT_HEADER_IN). Even if the fifo is empty, nevertheless INT_DATAREADY_OUT will be raised and the INT_DATA_OUT will contain the registered header.
>
>
for later use. At any point, the internal port may ask for a header (INT_HEADER_IN). Even if the fifo is empty, the INT_DATA_OUT will contain the registered header. INT_DATAREADY_OUT should be ignored in this cas.
 

Locking

If the data word under read is a TRM, the IBUF goes into the locked state (IS_LOCKED). This state will be released with the RELEASE_LOCKED.
Revision 4
24 Aug 2006 - Main.IngoFroehlich
Line: 1 to 1
 
META TOPICPARENT name="TrbNetIOBUF"

Overview

Line: 21 to 21
 
Line Decription
INT_HEADER_IN Concentrator kindly asks to resend the last header
INT_DATAREADY_OUT Data word ready to be read out by the internal logic
Changed:
<
<
INT_DATA_OUT[0...51] Data word
>
>
INT_DATA_OUT[0...50] Data word
 
INT_READ_IN reading
INT_ERROR_OUT[0..2] Status bits
Line: 64 to 64
 

The internal port is not critical: If data is offered, but not read, the fifo will simply not been emptied.
Changed:
<
<

Header retramsmit

>
>

Header retransmit

 

If data is been read by the internal port, and this data word is a header, the header will be registered at the same time for later use. At any point, the internal port may ask for a header (INT_HEADER_IN). Even if the fifo is empty, nevertheless
Revision 3
23 Aug 2006 - Main.IngoFroehlich
Line: 1 to 1
 
META TOPICPARENT name="TrbNetIOBUF"

Overview

Line: 45 to 45
 
4-7 REC_BUFFER_SIZE_OUT Buffer size of the other IBUF (on the other side of the optical link)
8 GOT_EOB_OUT EOB/TRM is killed (and thus the complete buffer) in this clock cycle
9 GOT_ACK_OUT Got an ACK from the other side
Added:
>
>
10 GOT_OVERFLOW_ERROR fifo has been filled although full
11 GOT_LOCKED_ERROR fifo has been filled while in locked mode
 

Buffer size is 2^(n+1), max 64k words
Added:
>
>

Internal components

Entity Name Description
TrbNetFifo TRBNET_FIFO buffer which contains the incoming data

Functional description

Ports

The media direction port is connected to the data output of the media. This means if data is offered it must be read from the media. If the fifo is full and the media offers data, this is an error condition and should be noticed (GOT_OVERFLOW_ERROR).

The internal port is not critical: If data is offered, but not read, the fifo will simply not been emptied.

Header retramsmit

If data is been read by the internal port, and this data word is a header, the header will be registered at the same time for later use. At any point, the internal port may ask for a header (INT_HEADER_IN). Even if the fifo is empty, nevertheless INT_DATAREADY_OUT will be raised and the INT_DATA_OUT will contain the registered header.

Locking

If the data word under read is a TRM, the IBUF goes into the locked state (IS_LOCKED). This state will be released with the RELEASE_LOCKED. RELEASE_LOCKED may be always enabled for a free running trigger system. If the IBUF is getting more data while in lock condition, this is an error condition and should be noticed (GOT_LOCKED_ERROR).

Misc

REC_BUFFER_SIZE_OUT will be updated with the media port. Default is 0 (=buffer size 2). GOT_ACK_OUT will also be updated with the media port to have a fast reaction.

  -- IngoFroehlich - 21 Aug 2006
Revision 2
21 Aug 2006 - Main.IngoFroehlich
Line: 1 to 1
 
META TOPICPARENT name="TrbNetIOBUF"

Overview

Line: 29 to 29
 
Line Decription
STAT_LOCKED[0...15] Status of the locking mechanism
CTRL_LOCKED[0...15] Control of the locking mechanism
Added:
>
>
STAT_BUFFER[0...31] Status of the handshake and buffer control
 

STAT_LOCKED

PIN Name Description
Line: 38 to 39
 
PIN Name Description
0 RELEASE_LOCKED Remove locking
Added:
>
>

STAT_BUFFER

PIN Name Description
0-3 SEND_BUFFER_SIZE_OUT Buffer size of this IBUF
4-7 REC_BUFFER_SIZE_OUT Buffer size of the other IBUF (on the other side of the optical link)
8 GOT_EOB_OUT EOB/TRM is killed (and thus the complete buffer) in this clock cycle
9 GOT_ACK_OUT Got an ACK from the other side

Buffer size is 2^(n+1), max 64k words
  -- IngoFroehlich - 21 Aug 2006
 
This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding Hades Wiki? Send feedback
Imprint (in German)
Privacy Policy (in German)