经过4天的研究,blackfin的MDMA终于调试成功!
其实这个调试并没有将它用在编码中,我只是用它来将UYVY的数据搬移成YUV420格式的数据!
成功后cycles并没有多大改善,只是如果用MDMA搬移的话,数据将不会占用太多的bus,也不需要cpu干预
算是一个比较大的进步吧
代码部分是这样:
/* Setup destination and source start address */
bfin_write_MDMA_S1_START_ADDR(src + width*2 + 2);
bfin_write_MDMA_D1_START_ADDR(dest + width * height * 5/4);
bfin_write_MDMA_S1_X_COUNT(width*2);
bfin_write_MDMA_S1_Y_COUNT(height/2);
bfin_write_MDMA_S1_X_MODIFY(4);
bfin_write_MDMA_S1_Y_MODIFY(4);
bfin_write_MDMA_D1_X_COUNT(width);
bfin_write_MDMA_D1_Y_COUNT(height/2);
bfin_write_MDMA_D1_X_MODIFY(1);
bfin_write_MDMA_D1_Y_MODIFY(-width/2+1);
编码部分基本已经成熟,不用花太多时间研究了!