q1
基于vivado2020.1和zcu102开发板(rev1.1)开发项目,工程涉及ddr4(mig)和pl端多个读写接口交互的问题,通过axi interconnect进行互联和仲裁(采用默认配置)。一个完整控制周期内(约100ms),各端口读写情况如下(awsize均为4):
axi1:只写入,awlen=119,每次写请求共计4320次突发写,完整控制周期内1次读请求
axi2:读写,arlen=35,awlen=3,每次读请求共计56-232次突发读,写请求共计192-384次突发写,完整控制周期内读写请求各176次
axi3:读写,arlen=5-6,awlen=3,每次读请求共计56-232次突发读,写请求共计192-384次突发写,完整控制周期内读写请求各60次
axi4:读写,arlen=7,awlen=127,每次读请求共计320-1152次突发读,写请求共计62-128次突发写,完整控制周期内1次写请求,48次读请求
axi5:只读,arlen=127,每次读请求共计3240次突发读,该模块是hdmi显示模块(1920*1080*3)的输入,频率为60hz,它的读操作是独立于控制周期的
axi3与axi4的读会同时请求相同内存区域的数据,axi4的写与axi5的读会访问相同内存区域的数据。
axi2-axi4是计算模块的输入输出接口,设计之初默认ddr读写速度远高于计算速度,ddr读写会先于计算完成。因此在设计计算模块控制逻辑的时候,没有考虑ddr读写相关的握手信号。但在实际验证过程中,各通道会随机出现阻塞,因此会导致ddr读写地址乃至控制逻辑的错乱。
经过估算ddr带宽是远高于读写数据带宽的,为了解决这一问题,包括但不限于改变突发长度、调整axi interconnect仲裁优先级等操作中的哪些会起到作用?
以及,一般涉及ddr读写仲裁的控制逻辑需要注意哪些方面?
注:控制逻辑产生的问题是,以axi2为例,它的176次读写是分为176个子阶段完成的,阶段1首先读取第1批读数据后,开始对第1批数据进行计算,同时开始读取第2批数据。之前默认读一定快于计算,所以以计算完成作为状态转移的标志,在计算完成后发出第1批数据的写请求后,进入第2阶段的逻辑。在该阶段计算第2批数据的同时,读入第3批数据,并完成第1批数据的写入。同样默认读写一定快于计算,在计算完成后,发出第2批数据的写请求,并进入第3阶段。阻塞会导致读数据晚于计算完成,在此情况下,所有的控制逻辑都会发生错乱,ddr的读写地址将不受预期的控制。
a:
通常如果你多个端口同时访问ddr,就会发生阻塞,你可以通过设置priority的方式(如下图),设置优先的通道。
并且建议你的optimization strategic设置成 maximum performance,提高interconnect本身的时钟频率。
关于 ddr(mig),如果你都是地址随机读写的话,并且长度一致的话,ddr效率可以变得很低,这是你的系统设计需要注意的。
有关ddr的效率问题,可以到ip应用的板块进一步咨询。
2017 版 MacBook 拆解:有啥不同
只有少数公司入局的百亿高壁垒赛道!你对COF了解多少?
CCD与CMOS图像传感器的比较(CMOS Sensor原理)
认识比亚迪的铁电池
基于MPC8280的多通道HDLC控制器的应用
AXI通道读写DDR的阻塞问题?
米家智能Type-C接口直流变频风扇是其内部构造是怎样的?
广凌内控管理系统:助力高校强化内控管理,提升公共服务效果
卫星导航的定位原理及未来趋势
5G中RRC连接建立的两种机制
苹果平板电脑图片集锦
第三届“芯动北京”中关村IC产业论坛即将在北京召开
开源六轴协作机械臂MechArm案例演示!
物联网存在着哪些隐性消费
MM32F5330内存保护单元(MPU)设计
新科技智能镜子将如何融入到我们的生活当中
谷歌和腾讯完成了强强联手后第一次共同亮相,共同投资AI医药研发公司
家用机器人获业内重视,市场规模破百亿美元
iphone8什么时候上市?iphone8最新消息:iphone8即将发布,iPhone7清库存给苹果带来难题
iPhone8什么时候上市?iPhone8最新消息:iPhone8功能,iPhone8续航,疑iPhone8配后置指纹设计,续航增加1小时