图像分割的地址计算方式

1. 9344 x 7000图像地址排列

在这里插入图片描述
图像大小为9344*7000,图像写入ddr3时候为顺序存入,读出时进行1/4分割读写。

2. ddr3每次初始地址逻辑推理过程

因为ddr3 ip是8突发,所以每次读出后地址加8,故
第一次写入是0
第二次写入是8
第三次写入是16
……
根据以上推理,结合上述表格
左上图像,第一行结束的突发读起始地址为1167-7=1160,
右上图像,第一行结束的突发读起始地址为2335-7=2328.

3. 右上图像地址递增逻辑推理过程

///====================== addr_lu
always @ (posedge I_ui_clk or posedge I_ui_rst)
	begin
		if(I_ui_rst)
			addr_lu <= 28'd0;
		else if(cur_state==LEFT_UP)
			if(toggle_flag==1'b1)
				if(cnt_toggle==6'd60)
					addr_lu <= 28'd0;
				else
					addr_lu <= addr_lu + 28'd8177176;
			else if(half_line_flag==1'b1)
				addr_lu <= addr_lu + 11'd1176;
			else if(ddr_div_rd_en_d1==1'b1)
				addr_lu <= addr_lu + 4'd8;
			else
				addr_lu <= addr_lu;
		else
			addr_lu <= addr_lu;
	end
```注意本代码描述的是右上图像在分割读过程中的初始地址地址
地址递增的时序点:1.每次ddr3读时候地址+82.每半行结束地址+1176,每1/4图像结束地址增加8177176。

下面对上述地址递增时序点分别进行逻辑推理:
1. 每次ddr3读,地址加8,因为ddr3读是8突发的;
2. 右上最后一行的起始地址2335-7=2328;右上第二行的起始地址为3504,所以当右上半行结束后,下一个图像的递增地址为3504-2328=1176.
**有点不明白的是,每次读已经+8了,所以最后一次的地址是2335,
半行结束地址应该为3504-2335=1169**

右上1/4图像结束地址计算方式:
第二帧1/4图像的初始地址-第一帧1/4图像的结束地址
(9344*7000/4+1168-9344*7000/4/2-8=8,177,176
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值