|
7#

楼主 |
发表于 2011-8-27 10:32:29
|
只看该作者
本帖最后由 3539591 于 2011-8-27 10:35 编辑
回复 4# tingtang
看不太懂,这个是TV的解码器的一个硬件实现应用吧!
我想把本来送到VGA的数据直接赋给cmos的IP核,可采集的数据时错误的。
Sdram_Control u7 ( // HOST Side
.RESET_N(KEY[0]),
.CLK(sdram_ctrl_clk),
// FIFO Write Side 1
.WR1_DATA({1'b0,sCCD_G[11:7],sCCD_B[11:2]}),
.WR1(sCCD_DVAL),
.WR1_ADDR(0),
`ifdef VGA_640x480p60
.WR1_MAX_ADDR(640*480/2),
.WR1_LENGTH(8'h50),
`else
.WR1_MAX_ADDR(800*600/2),
.WR1_LENGTH(8'h80),
`endif
.WR1_LOAD(!DLY_RST_0),
.WR1_CLK(D5M_PIXLCLK),
// FIFO Write Side 2
.WR2_DATA({1'b0,sCCD_G[6:2],sCCD_R[11:2]}),
.WR2(sCCD_DVAL),
.WR2_ADDR(23'h100000),
`ifdef VGA_640x480p60
.WR2_MAX_ADDR(23'h100000+640*480/2),
.WR2_LENGTH(8'h50),
`else
.WR2_MAX_ADDR(23'h100000+800*600/2),
.WR2_LENGTH(8'h80),
`endif
.WR2_LOAD(!DLY_RST_0),
.WR2_CLK(D5M_PIXLCLK),
// FIFO Read Side 1
.RD1_DATA(Read_DATA1),
.RD1(Read),
.RD1_ADDR(0),
`ifdef VGA_640x480p60
.RD1_MAX_ADDR(640*480/2),
.RD1_LENGTH(8'h50),
`else
.RD1_MAX_ADDR(800*600/2),
.RD1_LENGTH(8'h80),
`endif
.RD1_LOAD(!DLY_RST_0),
.RD1_CLK(~VGA_CTRL_CLK),
// FIFO Read Side 2
.RD2_DATA(Read_DATA2),
.RD2(Read),
.RD2_ADDR(23'h100000),
`ifdef VGA_640x480p60
.RD2_MAX_ADDR(23'h100000),
.RD2_LENGTH(8'h50),
`else
.RD2_MAX_ADDR(23'h100000+800*600/2),
.RD2_LENGTH(8'h80),
`endif
.RD2_LOAD(!DLY_RST_0),
.RD2_CLK(~VGA_CTRL_CLK),
// SDRAM Side
.SA(DRAM_ADDR),
.BA(DRAM_BA),
.CS_N(DRAM_CS_N),
.CKE(DRAM_CKE),
.RAS_N(DRAM_RAS_N),
.CAS_N(DRAM_CAS_N),
.WE_N(DRAM_WE_N),
.DQ(DRAM_DQ),
.DQM(DRAM_DQM)
);
这里的 read_data1和read_data2是送给VGA显示的,应该也是保存在sdram里的吧! |
|