⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 multigenhd_horz_logo.v

📁 SDI接口的源程序,包括扰码编码,并串转换,用VHDL硬件描述语言编写
💻 V
📖 第 1 页 / 共 2 页
字号:
HROM.INIT_2D = 256'h004F77F0000E0010000D0010000C0010000B0010000A00100009001000080010,
HROM.INIT_2E = 256'h00170010011678720115785611B4A4FD0193A4D40112A4B30991783501907811,
HROM.INIT_2F = 256'h015F0012001E0010041D003C001C77CF001B0010001A00100019001000180010,
HROM.INIT_30 = 256'h000746880006424700053BE600043585000328A40002222302011BC200000EE1,
HROM.INIT_31 = 256'h004F77F0000E77CF000D68EE000C5C0D000B57CC000A536B00094F2A00084AC9,
HROM.INIT_32 = 256'h00170010011678720115785611B4ABC00193ABB40112AB930991783501907811,
HROM.INIT_33 = 256'h015F0012001E0010001D0010001C0010001B0010001A00100019001000180010,
HROM.INIT_34 = 256'h0007001000060010000500100004001000030010000200100001001000000010,
HROM.INIT_35 = 256'h004F77F0000E0010000D0010000C0010000B0010000A00100009001000080010,
HROM.INIT_36 = 256'h00170010011678720115785611B4ABDD0193ABB40112AB930991783501907811,
HROM.INIT_37 = 256'h015F0012001E0010041D003C001C77CF001B0010001A00100019001000180010,
HROM.INIT_38 = 256'h00072F0800062C27000527E6000423A500031B24000216C3020112A2000009E1,
HROM.INIT_39 = 256'h004F4FF0000E4FCF000D45EE000C3D2D000B3A4C000A378B000934AA000831E9,
HROM.INIT_3A = 256'h00170010011650720115505611B46700019366F4011266D30991503501905011,
HROM.INIT_3B = 256'h015F0012001E0010001D0010001C0010001B0010001A00100019001000180010,
HROM.INIT_3C = 256'h0007001000060010000500100004001000030010000200100001001000000010,
HROM.INIT_3D = 256'h004F4FF0000E0010000D0010000C0010000B0010000A00100009001000080010,
HROM.INIT_3E = 256'h00170010011650720115505611B4671D019366F4011266D30991503501905011,
HROM.INIT_3F = 256'h015F0012001E0010041D003C001C4FCF001B0010001A00100019001000180010;
//synthesis translate_on

RAMB16_S36 HROM (
    .DO     (hrom_out),
    .DOP    (),
    .ADDR   ({std, pattern[0], h_next_region}),
    .CLK    (clk),
    .DI     (GND32),
    .DIP    (GND4),
    .EN     (hrom_en),
    .SSR    (rst),
    .WE     (1'b0)); 

// XST synthesis initialization code HROM
// Created by multigenHD_romgen.v
// Video format mapping:
//   000 =  SMPTE 295M - 1080i  25Hz (1250 lines/frame)
//   001 =  SMPTE 274M - 1080sF 24Hz & 23.98Hz         
//   002 =  SMPTE 274M - 1080i  30Hz & 29.97 Hz        
//   003 =  SMPTE 274M - 1080i  25Hz                   
//   004 =  SMPTE 274M - 1080p  30Hz & 29.97Hz         
//   005 =  SMPTE 274M - 1080p  25Hz                   
//   006 =  SMPTE 274M - 1080p  24Hz & 23.98Hz         
//   007 =  SMPTE 296M - 720p   60Hz & 59.94Hz         
//synthesis attribute INIT of HROM is "00060FFFF"
//synthesis attribute SRVAL of HROM is "00060FFFF"
//synthesis attribute WRITE_MODE of HROM is "READ_FIRST"
//synthesis attribute INITP_00 of HROM is "0000000000000000000000000000000000000000000000000000000000000000"
//synthesis attribute INITP_01 of HROM is "0000000000000000000000000000000000000000000000000000000000000000"
//synthesis attribute INITP_02 of HROM is "0000000000000000000000000000000000000000000000000000000000000000"
//synthesis attribute INITP_03 of HROM is "0000000000000000000000000000000000000000000000000000000000000000"
//synthesis attribute INITP_04 of HROM is "0000000000000000000000000000000000000000000000000000000000000000"
//synthesis attribute INITP_05 of HROM is "0000000000000000000000000000000000000000000000000000000000000000"
//synthesis attribute INITP_06 of HROM is "0000000000000000000000000000000000000000000000000000000000000000"
//synthesis attribute INITP_07 of HROM is "0000000000000000000000000000000000000000000000000000000000000000"
//synthesis attribute INIT_00 of HROM is "000746880006424700053BE600043585000328A40002222302011BC200000EE1"
//synthesis attribute INIT_01 of HROM is "004F77F0000E77CF000D68EE000C5C0D000B57CC000A536B00094F2A00084AC9"
//synthesis attribute INIT_02 of HROM is "00170010011678720115785611B4946001939454011294330991783501907811"
//synthesis attribute INIT_03 of HROM is "015F0012001E0010001D0010001C0010001B0010001A00100019001000180010"
//synthesis attribute INIT_04 of HROM is "0007001000060010000500100004001000030010000200100001001000000010"
//synthesis attribute INIT_05 of HROM is "004F77F0000E0010000D0010000C0010000B0010000A00100009001000080010"
//synthesis attribute INIT_06 of HROM is "00170010011678720115785611B4947D01939454011294330991783501907811"
//synthesis attribute INIT_07 of HROM is "015F0012001E0010041D003C001C77CF001B0010001A00100019001000180010"
//synthesis attribute INIT_08 of HROM is "000746880006424700053BE600043585000328A40002222302011BC200000EE1"
//synthesis attribute INIT_09 of HROM is "004F77F0000E77CF000D68EE000C5C0D000B57CC000A536B00094F2A00084AC9"
//synthesis attribute INIT_0A of HROM is "00170010011678720115785611B4ABC00193ABB40112AB930991783501907811"
//synthesis attribute INIT_0B of HROM is "015F0012001E0010001D0010001C0010001B0010001A00100019001000180010"
//synthesis attribute INIT_0C of HROM is "0007001000060010000500100004001000030010000200100001001000000010"
//synthesis attribute INIT_0D of HROM is "004F77F0000E0010000D0010000C0010000B0010000A00100009001000080010"
//synthesis attribute INIT_0E of HROM is "00170010011678720115785611B4ABDD0193ABB40112AB930991783501907811"
//synthesis attribute INIT_0F of HROM is "015F0012001E0010041D003C001C77CF001B0010001A00100019001000180010"
//synthesis attribute INIT_10 of HROM is "000746880006424700053BE600043585000328A40002222302011BC200000EE1"
//synthesis attribute INIT_11 of HROM is "004F77F0000E77CF000D68EE000C5C0D000B57CC000A536B00094F2A00084AC9"
//synthesis attribute INIT_12 of HROM is "00170010011678720115785611B4896001938954011289330991783501907811"
//synthesis attribute INIT_13 of HROM is "015F0012001E0010001D0010001C0010001B0010001A00100019001000180010"
//synthesis attribute INIT_14 of HROM is "0007001000060010000500100004001000030010000200100001001000000010"
//synthesis attribute INIT_15 of HROM is "004F77F0000E0010000D0010000C0010000B0010000A00100009001000080010"
//synthesis attribute INIT_16 of HROM is "00170010011678720115785611B4897D01938954011289330991783501907811"
//synthesis attribute INIT_17 of HROM is "015F0012001E0010041D003C001C77CF001B0010001A00100019001000180010"
//synthesis attribute INIT_18 of HROM is "000746880006424700053BE600043585000328A40002222302011BC200000EE1"
//synthesis attribute INIT_19 of HROM is "004F77F0000E77CF000D68EE000C5C0D000B57CC000A536B00094F2A00084AC9"
//synthesis attribute INIT_1A of HROM is "00170010011678720115785611B4A4E00193A4D40112A4B30991783501907811"
//synthesis attribute INIT_1B of HROM is "015F0012001E0010001D0010001C0010001B0010001A00100019001000180010"
//synthesis attribute INIT_1C of HROM is "0007001000060010000500100004001000030010000200100001001000000010"
//synthesis attribute INIT_1D of HROM is "004F77F0000E0010000D0010000C0010000B0010000A00100009001000080010"
//synthesis attribute INIT_1E of HROM is "00170010011678720115785611B4A4FD0193A4D40112A4B30991783501907811"
//synthesis attribute INIT_1F of HROM is "015F0012001E0010041D003C001C77CF001B0010001A00100019001000180010"
//synthesis attribute INIT_20 of HROM is "000746880006424700053BE600043585000328A40002222302011BC200000EE1"
//synthesis attribute INIT_21 of HROM is "004F77F0000E77CF000D68EE000C5C0D000B57CC000A536B00094F2A00084AC9"
//synthesis attribute INIT_22 of HROM is "00170010011678720115785611B4896001938954011289330991783501907811"
//synthesis attribute INIT_23 of HROM is "015F0012001E0010001D0010001C0010001B0010001A00100019001000180010"
//synthesis attribute INIT_24 of HROM is "0007001000060010000500100004001000030010000200100001001000000010"
//synthesis attribute INIT_25 of HROM is "004F77F0000E0010000D0010000C0010000B0010000A00100009001000080010"
//synthesis attribute INIT_26 of HROM is "00170010011678720115785611B4897D01938954011289330991783501907811"
//synthesis attribute INIT_27 of HROM is "015F0012001E0010041D003C001C77CF001B0010001A00100019001000180010"
//synthesis attribute INIT_28 of HROM is "000746880006424700053BE600043585000328A40002222302011BC200000EE1"
//synthesis attribute INIT_29 of HROM is "004F77F0000E77CF000D68EE000C5C0D000B57CC000A536B00094F2A00084AC9"
//synthesis attribute INIT_2A of HROM is "00170010011678720115785611B4A4E00193A4D40112A4B30991783501907811"
//synthesis attribute INIT_2B of HROM is "015F0012001E0010001D0010001C0010001B0010001A00100019001000180010"
//synthesis attribute INIT_2C of HROM is "0007001000060010000500100004001000030010000200100001001000000010"
//synthesis attribute INIT_2D of HROM is "004F77F0000E0010000D0010000C0010000B0010000A00100009001000080010"
//synthesis attribute INIT_2E of HROM is "00170010011678720115785611B4A4FD0193A4D40112A4B30991783501907811"
//synthesis attribute INIT_2F of HROM is "015F0012001E0010041D003C001C77CF001B0010001A00100019001000180010"
//synthesis attribute INIT_30 of HROM is "000746880006424700053BE600043585000328A40002222302011BC200000EE1"
//synthesis attribute INIT_31 of HROM is "004F77F0000E77CF000D68EE000C5C0D000B57CC000A536B00094F2A00084AC9"
//synthesis attribute INIT_32 of HROM is "00170010011678720115785611B4ABC00193ABB40112AB930991783501907811"
//synthesis attribute INIT_33 of HROM is "015F0012001E0010001D0010001C0010001B0010001A00100019001000180010"
//synthesis attribute INIT_34 of HROM is "0007001000060010000500100004001000030010000200100001001000000010"
//synthesis attribute INIT_35 of HROM is "004F77F0000E0010000D0010000C0010000B0010000A00100009001000080010"
//synthesis attribute INIT_36 of HROM is "00170010011678720115785611B4ABDD0193ABB40112AB930991783501907811"
//synthesis attribute INIT_37 of HROM is "015F0012001E0010041D003C001C77CF001B0010001A00100019001000180010"
//synthesis attribute INIT_38 of HROM is "00072F0800062C27000527E6000423A500031B24000216C3020112A2000009E1"
//synthesis attribute INIT_39 of HROM is "004F4FF0000E4FCF000D45EE000C3D2D000B3A4C000A378B000934AA000831E9"
//synthesis attribute INIT_3A of HROM is "00170010011650720115505611B46700019366F4011266D30991503501905011"
//synthesis attribute INIT_3B of HROM is "015F0012001E0010001D0010001C0010001B0010001A00100019001000180010"
//synthesis attribute INIT_3C of HROM is "0007001000060010000500100004001000030010000200100001001000000010"
//synthesis attribute INIT_3D of HROM is "004F4FF0000E0010000D0010000C0010000B0010000A00100009001000080010"
//synthesis attribute INIT_3E of HROM is "00170010011650720115505611B4671D019366F4011266D30991503501905011"
//synthesis attribute INIT_3F of HROM is "015F0012001E0010041D003C001C4FCF001B0010001A00100019001000180010"


assign h_next_region =  hrom_out[4:0];
assign h_next_evnt =    hrom_out[15:5];
assign h_region_rom =   hrom_out[20:16];
assign h_clr =          hrom_out[21];
assign v_inc =          hrom_out[22];
assign trs =            hrom_out[23];
assign h =              hrom_out[24];
assign usropt_rgn =     hrom_out[25];
assign ceqpol_rgn =     hrom_out[26];
assign eav2_rgn =       hrom_out[27];
assign sav2_rgn =       hrom_out[28];

//
// Horizontal enable
//
// This signal is the clock enable signal to the HROM. It is asserted when the
// horizontal counter value equals the value of the h_next_evnt field from the
// HROM AND when the h_counter LSB is high.
//
assign hrom_en = ce & h_counter[0] & h_evnt_match | rst;

//
// Horizontal counter
//
// The horizontal counter increments every clock cycle unless the h_clr signal
// from the HROM is asserted, in which case, it resets to a value of 0.
//
always @ (posedge clk or posedge rst)
    if (rst)
        h_counter <= 12'd4095;
    else if (ce)
        begin
            if (h_clr & h_counter[0])
                h_counter <= 0;
            else
                h_counter <= h_counter + 1;
        end

assign h_counter_lsb = h_counter[0];

//
// Horizontal event comparator
//
// This signal is asserted when the h_next_evnt value from the HROM matches the
// 11 MSBs of the h_counter.
//
assign h_evnt_match = (h_next_evnt == h_counter[HCNT_MSB:1]);

//
// Horizontal region encoder
// 
// This encoder can change the horizontal region value coming out of the horz
// ROM before it is used to address the color ROM. The horizontal region is
// modified under 3 conditions. 
//
// First, if the horizontal region is the first (leftmost) colorbar, then the 
// two user_opt inputs are applied to modify the horizontal region to affect 
// the color generated by the color ROM. 
//
// Second, if the region is the first sample of first line of the first field 
// of an even frame and the cable equalization pattern is being drawn, then 
// the sample must be drawn differently in order to provide both DC levels of 
// the cable equalization pattern. The horizontal ROM will indicate this 
// region by generating a region code of HRGN_CEQ_POL_0. The encoder will 
// normally change this to HRGN_CEQ_POL_0, unless this is the first active 
// line of the first field of an even frame, in which case it will output 
// HRGN_CEQ_POL_1 to the color ROM.
//
// Third, the color ROM needs to know the sense of the field bit in order to
// properly generate the XYZ word of EAVs and SAVs. The v_band does not carry
// the field information into the color ROM, so the field bit from the vertical
// ROM is used to modify the horizontal region during the second half of the
// EAV and SAV regions to indicate the status of the field bit.
//
always @*
    if (usropt_rgn)
        case(user_opt)
            2'b01: h_region = HRGN_USROPT1;
            2'b10: h_region = HRGN_USROPT2;
            2'b11: h_region = HRGN_USROPT3;
            default: h_region = HRGN_BAR1;
        endcase
    
    else if (ceqpol_rgn)
        begin
            if (first_line & h_counter[1:0] == 2'b00)
                h_region = HRGN_CEQ_POL_1;
            else
                h_region = HRGN_CEQ_POL_0;
        end
    
    else if (eav2_rgn)
        h_region = f ? HRGN_EAV2_F1 : HRGN_EAV2_F0;
    
    else if (sav2_rgn)
        h_region = f ? HRGN_SAV2_F1 : HRGN_SAV2_F0;

    else
        h_region = h_region_rom;

//
// XYZ signal decoding
//
assign xyz = (eav2_rgn | sav2_rgn) & h_counter[0];

endmodule

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -