close Warning: Can't synchronize with repository "(default)" (/common/SVN/crkit does not appear to be a Subversion repository.). Look in the Trac log for more information.

Changes between Initial Version and Version 1 of Software/Firmware/Framework/R3_arch/outline/blk_spec/pkt/tx/cmd_gen


Ignore:
Timestamp:
Jun 18, 2010, 6:27:15 PM (14 years ago)
Author:
khanhle
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Software/Firmware/Framework/R3_arch/outline/blk_spec/pkt/tx/cmd_gen

    v1 v1  
     1== Command Generator ==
     2
     3__Figure 1 - Command Generator IO__
     4[[BR]][[BR]]
     5[[Image(xmtr_cmd_gen.jpg)]]
     6[[BR]][[BR]]
     7
     8__Table 1 - Rx Ethernet Interface__
     9||'''Signal Name'''   ||'''In/Out'''||'''Width''' ||'''Description'''||
     10||''sof''             ||In          ||1           ||Start-of-frame signal, indicating first word of payload||
     11||''eof''             ||In          ||1           ||End-of-frame signal, indicating last word of payload||
     12||''data''            ||In          ||32          ||Ethernet payload data ||
     13||''rd_en''           ||Out         ||1           ||Active High. Fifo data fetch enable signal||
     14||''fifo_empty_flag'' ||In          ||1           ||Fifo empty flag||
     15[[BR]]
     16
     17__Table 2 - RMAP Interface__
     18||'''Signal Name'''     ||'''In/Out'''||'''Width''' ||'''Description'''||
     19||''buf_full_err''      ||Out         ||1           ||Active High. Indicates that the buffer is full and no more data can be accepted.||
     20||''frame_seq_no''      ||Out         ||1           ||Sequence no of the data frame which was not stored in the buffer due to a buf_full_err,||
     21||                      ||            ||            ||or cmd_full_err, or a frame_length_err.||
     22||''cmd_full_err''      ||Out         ||1           ||Active High. Indicates that the command fifo is full and no more commands can be accepted.||
     23||''hdr_err''           ||Out         ||1           ||Active High. Indicates that there is an error in the IP header not enough no. of words||
     24||''ip_addr_err''       ||Out         ||1           ||Active High. Indicates that the destination IP address in the data frame does not match||
     25||                      ||            ||            ||with the IP address of the board.||
     26||''frame_length_err''  ||Out         ||1           ||Active High. Indicates that the frame length calculated from IP payload length does not ||
     27||                      ||            ||            ||match with the actual frame length.||                                                                                                                                             
     28||                      ||            ||            ||In case of a control command, it might indicate that the frame length is not equal to 2 words (8 bytes).||                                                                                                                                                               
     29||                      ||            ||            ||In case of a data command, if the actual frame length is more than the calculated length, only the ||
     30||                      ||            ||            ||calculated length no.of words are stored and the rest are discarded. If the actual frame length is ||
     31||                      ||            ||            ||less, the write operation is considered incomplete and is canceled.||
     32[[BR]]                   
     33
     34
     35__Table 3 - Command FIFO Interface__
     36||'''Signal Name'''     ||'''In/Out'''||'''Width''' ||'''Description'''||
     37||''cmd_sof''           ||Out         ||1           ||Start-of-frame signal, indicating the first word of command descriptor||
     38||''cmd_eof''           ||Out         ||1           ||End-of-frame signal, indicating the last(second) word of command descriptor||
     39||''cmd_data''          ||Out         ||32          ||Command descriptor word||
     40||''cmd_write''         ||Out         ||1           ||Active High. Indicates that the current word on cmd_data is valid and acts a write request for the command FIFO.||
     41||''cmd_full_flag''     ||In          ||1           ||Active High. Indicates that the command FIFO is full and can not accept any commands||
     42[[BR]]                                                         
     43
     44
     45__Table 4 - Memory Control Interface__
     46||'''Signal Name'''     ||'''In/Out'''||'''Width''' ||'''Description'''||
     47||''buf_wr_req''        ||Out         ||1           ||Active high. Signal requesting the memory control for buf_wr_size bytes of  space on the buffer to store data||
     48||''buf_wr_size''       ||Out         ||16          ||Size of  data to be stored in the buffer(bytes) . It is calculated from the payload length given in the IP header||
     49||''buf_wr_ack''        ||In          ||1           ||Active High. Response to buf_wr_req indicating that the requested space is available at the address buf_wr_ptr. ||
     50||                      ||            ||            ||buf_wr_ack is sent  as soon as buf_wr_req is detected by the memory control, i.e., the command descriptor generator ||
     51||                      ||            ||            ||can send a buffer request and check for buf_wr_ack in the next clock cycle. If buf_wr_ack is not high, it means that||
     52||                      ||            ||            ||the requested buffer space is not available.||
     53||''buf_wr_ptr''        ||In          ||16          ||Address at which the data would be written. This address will be inserted in the data command descriptor.||
     54||''buf_sof''           ||Out         ||1           ||Start-of-frame for the app data to be stored. The memory control expects an sof (or a buf_wr_cancel) as soon as the ||
     55||                      ||            ||            ||buf_wr_req is pulled low. If the buf_wr_req remains low for a clock cycle or more before sending the sof, then the ||
     56||                      ||            ||            ||data write operation is ignored.
     57||''buf_eof''           ||Out         ||1           ||End-of-frame for the app data to be stored||
     58||''buf_wr_data''       ||Out         ||32          ||App data word to be stored||
     59||''buf_data_valid''    ||Out         ||1           ||Active High. Indicates that the data word on buf_wr_data is valid||
     60||''buf_wr_cancel''     ||Out         ||1           ||Active High. Command descriptor generator can cancel a data write operation at any time, by setting this signal high.||
     61||                      ||            ||            ||A write operation starts when the buffer request is sent to the memory control and ends when eof is sent.||
     62[[BR]] 
     63                 
     64__Table 5 - RMAP Processor Interface__
     65||'''Signal Name'''         ||'''In/Out'''||'''Width''' ||'''Description'''||
     66||''rmap_sof''              ||Out         ||1           ||Start-of-frame signal, indicating first word of RMAP descriptor/message||
     67||''rmap_eof''              ||Out         ||1           ||End-of-frame signal, indicating last word of RMAP descriptor/message||
     68||''rmap_data''             ||Out         ||32          ||RMAP descriptor data||
     69||''rmap_wr_en''            ||Out         ||1           ||Active High. Fifo write enable signal||
     70||''rmap_fifo_full_flag''   ||In          ||1           ||Fifo full flag||
     71[[BR]]                 
     72
     73
     74
     75
     76[..]
     77