//////////////////////////////////////////////////////////////////////////
//  File Name           : BmpWrite.v                                    //
//  Module Name         : BmpWrite                                      //
//  Type                : Test Bench                                    //
//  Function            : Create Bmp File                               //
//  Parrent Module      : -                                             //
//  Child Module        : -                                             //
//  Author              : M.Itoh                                        //
//  Revision            : 1.00 2013/10/18                               //
//  History                                                             //
//   1.00 2013/10/18    : New Create                                    //
//////////////////////////////////////////////////////////////////////////

module BmpWrite
    (
        xrst            ,
        clk             ,
        i_write         ,
        i_r             ,
        i_g             ,
        i_b             ,
        i_vd            ,
        i_de            
    );

parameter       p_FileName  = "out.bmp" ;
parameter       p_BW        = 10        ;
parameter       p_Lane      = 8         ;
parameter       p_HSize     = 1920      ;
parameter       p_VSize     = 1080      ;

parameter       p_MemSize   = p_Hsize * p_VSize;

input                           xrst        ;   // asynchronous reset active low
input                           clk         ;   // clock posedge
input                           i_write     ;   // Create BmpFile Trigger active high
input   [p_Lane * p_BW - 1 : 0] i_r         ;   // R Data
input   [p_Lane * p_BW - 1 : 0] i_g         ;   // G Data
input   [p_Lane * p_BW - 1 : 0] i_b         ;   // B Data
input                           i_vd        ;   // VD
input                           i_de        ;   // Data enable

reg     [ 1; 0]                 f_vd        ;   // VD delay
reg     [ 1: 0]                 f_de        ;   // i_de delay
reg     [31: 0]                 f_pcnt      ;   // Active Pixel Count
reg     [31: 0]                 f_lcnt      ;   // Active Line Count