DMA控制器是連接在內(nèi)部總線上的主設(shè)備,根據(jù)SSD主控的應(yīng)用需求需要支持下列三種主要功能:
數(shù)據(jù)搬移和數(shù)據(jù)運算;
數(shù)據(jù)保護和數(shù)據(jù)校驗;
數(shù)據(jù)生成和模式統(tǒng)計;

數(shù)據(jù)搬移和數(shù)據(jù)運算功能是按照數(shù)據(jù)塊為單位對內(nèi)存不同地址范圍內(nèi)的數(shù)據(jù)進行邏輯運算(XOR/OR)或數(shù)據(jù)比較和數(shù)據(jù)復(fù)制操作:
把地址1開始和地址2開始的相同數(shù)量的數(shù)據(jù)塊之間進行邏輯計算并把計算結(jié)果寫會地址3開始的數(shù)據(jù)緩存中;
把地址1開始和地址2開始的相同數(shù)量的數(shù)據(jù)塊之間進行比較并返回成功/失敗信息給CPU;
把地址1開始的若干數(shù)據(jù)塊復(fù)制到地址3指定的數(shù)據(jù)區(qū)域;
數(shù)據(jù)保護和數(shù)據(jù)校驗功能是對內(nèi)存中的數(shù)據(jù)塊進行數(shù)據(jù)完整性校驗、插入數(shù)據(jù)保護校驗碼、生成或校驗管理用元數(shù)據(jù)(Meta-data):
檢查或者生成內(nèi)存中某個數(shù)據(jù)塊對應(yīng)的CRC/Block ECC/DIF數(shù)據(jù);
檢查或者生成軟件對NAND管理所使用的元數(shù)據(jù);
對內(nèi)存中某個數(shù)據(jù)塊進行加擾/解擾或者加密/解密;
數(shù)據(jù)生成和模式統(tǒng)計功能是在內(nèi)存中生成數(shù)據(jù)Pattern、對內(nèi)存中的內(nèi)容進行模式匹配并統(tǒng)計特定模式字的數(shù)量:
對指定數(shù)據(jù)塊與指定的數(shù)據(jù)pattern進行邏輯運算并寫回,以加速軟件管理數(shù)據(jù)的快速維護;
指定模式字對內(nèi)存中的數(shù)據(jù)塊進行匹配,統(tǒng)計出模式字出現(xiàn)的次數(shù);
統(tǒng)計內(nèi)存中數(shù)據(jù)塊中0或者1的比特數(shù)量;
注:文章內(nèi)容和圖片均來源于網(wǎng)絡(luò),只起到信息的傳遞,不是用于商業(yè),如有侵權(quán)請聯(lián)系刪除!


