//
// TCODETABLE.V
// 
// tcode table is used to decode the tcode. 
// The tcode determines the header length, data payload.
// This module is instantiated by 'decoder.v'
//
// THE TCODE TABLE
//
// tcode				Header_length	Data payload
// 0, 6, 5, 8			4				0
// 1, 7, 9, Ah, Bh		4				1
// 2, 4, 				3				0
//

[Up: decoder t1]
module tcodetableIndex(
               decode_complete,
               decode_error,
               header_length,
               data_payload,
               reset_n,
               decode,
               data_decode,data_dec_out
               );

output decode_complete,decode_error,data_payload;
output[2:0] header_length;

input decode,reset_n;
input[3:0] data_decode;
output [3:0]data_dec_out;
reg decode_complete,decode_error,data_payload;
reg[2:0] header_length;

wire decode,reset_n;

assign data_dec_out = data_decode;

always @(posedge decode or negedge reset_n)
begin
   if(!reset_n)
   begin
       header_length   <= 3'b000;
       data_payload    <= 1'b0;
       decode_complete <= 1'b0;
       decode_error    <= 1'b0;
   end
   else
   begin
       case(data_decode)
         4'h0,4'h6,4'h5,4'h8:
           begin
             header_length   <= 3'b100;
             data_payload    <= 1'b0;
             decode_error    <= 1'b0;
             decode_complete <= 1'b1;
           end
         4'h1,4'h7,4'h9,4'hA,4'hB:
           begin
             header_length   <= 3'b100;
             data_payload    <= 1'b1;
             decode_error    <= 1'b0;
             decode_complete <= 1'b1;
           end
         4'h2,4'h4:
           begin
             header_length   <= 3'b011;
             data_payload    <= 1'b0;
             decode_error    <= 1'b0;
             decode_complete <= 1'b1;
           end
         default:
           begin
             header_length   <= 3'b000;
             data_payload    <= 1'b0;
             decode_error    <= 1'b1;
             decode_complete <= 1'b1;
           end
       endcase
   end

   
end

endmodule

 


This page: Maintained by: firewire@linklayercontroller.com
Created:Sun Mar 11 19:19:05 2001
From: /mnt/c/windows/desktop/floppy/commen~1/tcodetable.v

Verilog converted to html by v2html 6.0 (written by Costas Calamvokis).Help