// addressの生成
always @(posedge aclk) begin
if (areset) begin
if (UPSIDE_DOWN==0) // 正常、それ以外は上下反転
paddr_reg <= DISPLAY_START_ADDRESS;
else // 上下反転
paddr_reg <= DISPLAY_END_ADDRESS;
end else begin
if (pfifo_rd_en) begin
if (UPSIDE_DOWN==0) // 正常
paddr_reg <= paddr_reg + 32'd8;
else // 上下反転
paddr_reg <= paddr_reg - 32'd8;
end else if (addr_rst_cs==ADDR_RST) begin // frame_valid が0になって、pfifoにデータが無くなった時にアドレスをクリア
if (UPSIDE_DOWN==0) // 正常、それ以外は上下反転
paddr_reg <= DISPLAY_START_ADDRESS;
else // 上下反転
paddr_reg <= DISPLAY_END_ADDRESS;
end
end
end
assign paddr = paddr_reg;
mt9d111_cam_cont_i : mt9d111_cam_cont generic map(
DISPLAY_START_ADDRESS => C_DISPLAY_START_ADDRESS,
UPSIDE_DOWN => C_UPSIDE_DOWN
)port map(
aclk => ACLK,
areset => reset,
pclk => pclk,
preset => preset,
pclk_from_pll => pclk_from_pll,
xclk => xck,
line_valid => href,
frame_valid => vsync,
cam_data => cam_data,
standby => standby,
paddr => M_AXI_AWADDR,
pfifo_rd_en => M_AXI_WREADY,
pfifo_dout => M_AXI_WDATA,
pfifo_empty => pfifo_empty,
pfifo_almost_empty => pfifo_almost_empty,
pfifo_rd_data_count => pfifo_rd_data_count,
pfifo_overflow => pfifo_overflow,
pfifo_underflow => pfifo_underflow
);
pfifo_rd_en <= M_AXI_WREADY and wvalid;
mt9d111_cam_cont_i : mt9d111_cam_cont generic map(
DISPLAY_START_ADDRESS => C_DISPLAY_START_ADDRESS,
UPSIDE_DOWN => C_UPSIDE_DOWN
)port map(
aclk => ACLK,
areset => reset,
pclk => pclk,
preset => preset,
pclk_from_pll => pclk_from_pll,
xclk => xck,
line_valid => href,
frame_valid => vsync,
cam_data => cam_data,
standby => standby,
paddr => M_AXI_AWADDR,
pfifo_rd_en => pfifo_rd_en,
pfifo_dout => M_AXI_WDATA,
pfifo_empty => pfifo_empty,
pfifo_almost_empty => pfifo_almost_empty,
pfifo_rd_data_count => pfifo_rd_data_count,
pfifo_overflow => pfifo_overflow,
pfifo_underflow => pfifo_underflow
);
日 | 月 | 火 | 水 | 木 | 金 | 土 |
---|---|---|---|---|---|---|
- | - | - | - | - | 1 | 2 |
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 | - | - | - | - | - | - |