本發(fā)明涉及集成電路檢測的技術(shù)領(lǐng)域,特別是涉及一種SD卡的數(shù)據(jù)檢測方法及系統(tǒng)及外接SD卡的卡槽。
背景技術(shù):
隨著各種多媒體娛樂內(nèi)容的豐富,消費者對所用的電子產(chǎn)品的儲存容量要求越來越高,SD卡作為儲存裝置已被廣泛應(yīng)用于各種電子設(shè)備中,其要么作為產(chǎn)品內(nèi)置的儲存裝置;要么作為其擴(kuò)展儲存裝置,即在電子產(chǎn)品的本體上設(shè)有SD接口,如需電子產(chǎn)品與外部設(shè)備互換數(shù)據(jù)或增加電子產(chǎn)品本身儲存容量時,就可以直接將SD卡插入電子產(chǎn)品上的SD卡接口即可。
為了保證SD卡工作穩(wěn)定可靠,生產(chǎn)時,生產(chǎn)廠商一般都要對SD卡采樣時序進(jìn)行測試,目前市場上對SD卡接口測試都是直接利用SD卡插入接品進(jìn)行測試。這種方式對于研發(fā)以及成品階段都存在不足:
首先,不同電子產(chǎn)品其系統(tǒng)的讀寫頻率不同,當(dāng)接入外接SD卡存在讀寫數(shù)據(jù)發(fā)生錯誤的現(xiàn)象;其次,研發(fā)以及成品驗收階段,圖形在測試卡槽不同插拔,造成SD卡容易磨損或燒毀,增加測試成本;再次,由于SD卡體積很小,測試人員操作很不方便,不易管理。
技術(shù)實現(xiàn)要素:
本發(fā)明目的是提供一種SD卡的數(shù)據(jù)檢測方法及系統(tǒng),其目的是能夠?qū)崿F(xiàn)在研發(fā)或者成品階段對SD卡采樣時序延遲的數(shù)據(jù)信息讀寫自動化測試,能夠節(jié)約測試成本、便于管理、安全可靠。
本發(fā)明提供的技術(shù)方案如下:
一種SD卡的數(shù)據(jù)檢測方法,包括:
步驟S10利用IO控制器開啟外接SD卡處于工作狀態(tài);
步驟S20獲取用戶向所述外接SD卡輸入預(yù)設(shè)的工作時鐘頻率;
步驟S40根據(jù)用戶輸入的所述預(yù)設(shè)的工作時鐘頻率,向所述外接SD讀寫預(yù)設(shè)的容量的數(shù)據(jù)信息;
步驟S50檢測所述外接SD卡讀寫的數(shù)據(jù)信息一致性;當(dāng)一致時,執(zhí)行步驟S60。
步驟S60利用所述IO控制器關(guān)閉外接SD卡的工作狀態(tài)。
進(jìn)一步優(yōu)選的,所述步驟S40之前還包括:
步驟S30根據(jù)用戶輸入的所述預(yù)設(shè)的工作時鐘頻率,設(shè)置所述外接SD卡讀寫數(shù)據(jù)信息的時序延時參數(shù)。
進(jìn)一步優(yōu)選的,所述步驟S50包括:
步驟S51從所述外接SD卡中提取寫入的預(yù)設(shè)的字節(jié)段內(nèi)的所述數(shù)據(jù)信息中樣本數(shù)據(jù);
步驟S52從所述外接SD卡中提取讀出的所述預(yù)設(shè)的字節(jié)段內(nèi)的所述樣本數(shù)據(jù);
步驟S53將所述步驟S51提取寫入所述樣本數(shù)據(jù)與所述步驟S52提取讀出所述樣本數(shù)據(jù)進(jìn)行比對;
當(dāng)至少有一個寫入和讀出對應(yīng)的字節(jié)段所述樣本數(shù)據(jù)比對不一致時,返回執(zhí)行步驟S30。
進(jìn)一步優(yōu)選的,當(dāng)向所述外接SD卡讀寫數(shù)據(jù)信息時包括:
當(dāng)向所述外接SD卡讀數(shù)據(jù)信息時,停止向所述外接SD寫數(shù)據(jù)信息;
當(dāng)向所述外接SD卡寫數(shù)據(jù)信息時,停止向所述外接SD讀數(shù)據(jù)信息。
進(jìn)一步優(yōu)選的,還包括:
利用所述IO控制器的GPIO輸出的電平控制所述外接SD卡工作狀態(tài)。
一種SD卡的數(shù)據(jù)檢測方法的檢測系統(tǒng),包括:
SD卡開啟模塊,用于利用IO控制器開啟外接SD卡處于工作狀態(tài);
頻率獲取模塊,當(dāng)所述外接SD卡處于工作狀態(tài)時,用于獲取用戶向所述外接SD卡輸入預(yù)設(shè)的工作時鐘頻率;
數(shù)據(jù)讀寫模塊,根據(jù)所述頻率獲取模塊獲取的預(yù)設(shè)的工作時鐘頻率,用于向所述外接SD讀寫預(yù)設(shè)的容量的數(shù)據(jù)信息;
數(shù)據(jù)檢測模塊,用于判斷所述數(shù)據(jù)讀寫模塊讀寫的數(shù)據(jù)信息是否一致;
SD卡關(guān)閉模塊,當(dāng)所述數(shù)據(jù)檢測模塊檢測數(shù)據(jù)信息一致時,利用所述IO控制器關(guān)閉外接SD卡的工作狀態(tài)。
進(jìn)一步優(yōu)選的,包括:
信息設(shè)置模塊,分別與所述頻率獲取模塊、所述數(shù)據(jù)讀寫模塊電連接,用于設(shè)置所述外接SD卡讀寫數(shù)據(jù)信息的時序延時參數(shù)。
進(jìn)一步優(yōu)選的,所述數(shù)據(jù)檢測模塊包括:
第一樣本數(shù)據(jù)提取子模塊,用于從所述外接SD卡中提取寫入的預(yù)設(shè)的字節(jié)段內(nèi)的所述數(shù)據(jù)信息中樣本數(shù)據(jù);
第二樣本數(shù)據(jù)提取子模塊,用于從所述外接SD卡中提取讀出的所述預(yù)設(shè)的字節(jié)段內(nèi)的所述樣本數(shù)據(jù);
樣本數(shù)據(jù)比對子模塊,用于將所述第一樣本數(shù)據(jù)提取子模塊提取的樣本數(shù)據(jù)與所述第二樣本數(shù)據(jù)提取子模塊提取的所述樣本數(shù)據(jù)進(jìn)行比對;
當(dāng)所述樣本數(shù)據(jù)比對的結(jié)果不一致時,所述信息設(shè)置模塊再次設(shè)置所述時序延時參數(shù)。
一種外接SD卡的卡槽,包括:外接SD卡設(shè)置在專用的外接SD卡卡槽內(nèi),在所述卡槽內(nèi)設(shè)置連通觸點,與所述外接SD卡電連接的分別為工作始終頻率觸點,數(shù)據(jù)讀寫觸點;
所述外接SD卡的DET觸點與IO控制電連接,用于控制所述外接SD的工作狀態(tài)。
通過本發(fā)明提供的一種SD卡的數(shù)據(jù)檢測方法及系統(tǒng)及外接SD卡的卡槽,能夠帶來以下至少一種有益效果:
1、本發(fā)明通過對外接SD工作時鐘頻率的設(shè)置,在此條件下判斷SD卡讀寫數(shù)據(jù)能力,根據(jù)寫入的數(shù)據(jù)與讀出的數(shù)據(jù)判斷一致性,以此判斷當(dāng)前待檢測的SD卡的工作參數(shù)是否匹配正確,實現(xiàn)了SD卡的自動化測試。
2、本發(fā)明中針對SD卡讀寫的數(shù)據(jù)信息的檢測,是按照設(shè)定的在延遲參數(shù)范圍內(nèi)對應(yīng)字節(jié)的檢測,當(dāng)至少一個字節(jié)對比不一致時,停止在該延遲參數(shù)下檢測工作,重新設(shè)置延遲參數(shù),而延遲參數(shù)的設(shè)置是按照從小到大的順序進(jìn)行的,保障SD卡工作時有最大的延遲性,同時保障數(shù)據(jù)讀寫的安全可靠。
3、本發(fā)明將原有檢測模式進(jìn)行改變,通過對SD卡卡槽控制接口的創(chuàng)新,模擬對SD卡開啟與斷開,實現(xiàn)了SD卡采樣時序延遲的自動化測試,節(jié)省了人力以及時間成本,縮短了產(chǎn)品研發(fā)周期,并且在采用抽象層的封裝后,具有很高的安全性,在自動化測試中不會由于無意識錯誤導(dǎo)致系統(tǒng)崩潰造成軟硬件的破壞。
附圖說明
下面將以明確易懂的方式,結(jié)合附圖說明優(yōu)選實施方式,對一種SD卡的數(shù)據(jù)檢測方法及系統(tǒng)及外接SD卡的卡槽的上述特性、技術(shù)特征、優(yōu)點及其實現(xiàn)方式予以進(jìn)一步說明。
圖1是本發(fā)明一種SD卡的數(shù)據(jù)檢測方法的實施例的流程圖;
圖2是本發(fā)明一種SD卡的數(shù)據(jù)檢測方法的另一實施例的流程圖;
圖3是本發(fā)明一種SD卡的數(shù)據(jù)檢測方法的另一實施例的流程圖;
圖4是本發(fā)明一種SD卡的數(shù)據(jù)檢測系統(tǒng)的實施例的結(jié)構(gòu)圖;
圖5是本發(fā)明一種SD卡的數(shù)據(jù)檢測系統(tǒng)的另一實施例的結(jié)構(gòu)圖;
圖6是本發(fā)明一種SD卡的數(shù)據(jù)檢測系統(tǒng)的另一實施例的結(jié)構(gòu)圖;
圖7是本發(fā)明一種SD卡的卡槽的實施例的電路圖;
圖8是本發(fā)明一種SD卡的卡槽的另一實施例的電路圖。
具體實施方式
為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對照附圖說明本發(fā)明的具體實施方式。顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖,并獲得其他的實施方式。
為使圖面簡潔,各圖中只示意性地表示出了與本發(fā)明相關(guān)的部分,它們并不代表其作為產(chǎn)品的實際結(jié)構(gòu)。另外,以使圖面簡潔便于理解,在有些圖中具有相同結(jié)構(gòu)或功能的部件,僅示意性地繪示了其中的一個,或僅標(biāo)出了其中的一個。在本文中,“一個”不僅表示“僅此一個”,也可以表示“多于一個”的情形。
本發(fā)明提供一種SD卡的數(shù)據(jù)檢測方法的實施例,參考圖1所示;包括:
步驟S10利用IO控制器開啟外接SD卡處于工作狀態(tài);
步驟S20獲取用戶向所述外接SD卡輸入預(yù)設(shè)的工作時鐘頻率;
步驟S40根據(jù)用戶輸入的所述預(yù)設(shè)的工作時鐘頻率,向所述外接SD讀寫預(yù)設(shè)的容量的數(shù)據(jù)信息;
步驟S50檢測所述外接SD卡讀寫的數(shù)據(jù)信息一致性;當(dāng)一致時,執(zhí)行步驟S60。
步驟S60利用所述IO控制器關(guān)閉外接SD卡的工作狀態(tài)。
具體的,本實施例中,利用CPU的IO端口的高低電平控制外接SD卡的工作狀態(tài),當(dāng)進(jìn)入測試模式時,CPU的IO控制發(fā)送高電平,設(shè)置SD卡的源頭工作頻率,根據(jù)設(shè)定的工作頻率向SD卡進(jìn)行數(shù)據(jù)的讀寫操作,并設(shè)定讀寫數(shù)據(jù)的數(shù)量向SD卡的存儲文件夾內(nèi)存入,當(dāng)根據(jù)預(yù)設(shè)容量的信息完成讀寫操作后,進(jìn)一步驗證其在此工作頻率條件下,讀入的數(shù)據(jù)和寫入的數(shù)據(jù)是否一致,以此驗證對SD卡設(shè)置的工作參數(shù)的準(zhǔn)確性,當(dāng)驗證后讀入與寫入的數(shù)據(jù)是統(tǒng)一數(shù)據(jù)信息時,利用CPU控制器IO發(fā)送低電平,關(guān)閉SD卡的工作狀態(tài),也即相當(dāng)于沒有SD卡進(jìn)行驗證工作。
優(yōu)選的,所述步驟S40之前還包括:
步驟S30根據(jù)用戶輸入的所述預(yù)設(shè)的工作時鐘頻率,設(shè)置所述外接SD卡讀寫數(shù)據(jù)信息的時序延時參數(shù)。
具體的,參考圖2所示;本實施例中在上一實施例的基礎(chǔ)上增加步驟S30;根據(jù)對SD卡的設(shè)置的工作頻率,進(jìn)一步根據(jù)設(shè)置在此工作頻率下在數(shù)據(jù)讀寫過程中產(chǎn)生的采樣時序延遲量參數(shù)。
優(yōu)選的,所述步驟S50包括:
步驟S51從所述外接SD卡中提取寫入的預(yù)設(shè)的字節(jié)段內(nèi)的所述數(shù)據(jù)信息中樣本數(shù)據(jù);
步驟S52從所述外接SD卡中提取讀出的所述預(yù)設(shè)的字節(jié)段內(nèi)的所述樣本數(shù)據(jù);
步驟S53將所述步驟S51提取寫入所述樣本數(shù)據(jù)與所述步驟S52提取讀出所述樣本數(shù)據(jù)進(jìn)行比對;
當(dāng)至少有一個寫入和讀出對應(yīng)的字節(jié)段所述樣本數(shù)據(jù)比對不一致時,返回執(zhí)行步驟S30。
具體的,參考圖3所示;在以上實施例的基礎(chǔ)上繼續(xù)本實施例;在設(shè)定的工作時鐘頻率時進(jìn)一步設(shè)定數(shù)據(jù)讀寫的時序延遲量的條件下,檢測SD卡對數(shù)據(jù)讀寫的正確性;具體的檢測方法為,當(dāng)設(shè)定的時候頻率為12M,同時設(shè)定的延遲量為20ns;向外接的SD卡寫入512個字節(jié)的數(shù)據(jù),寫入后保存在SD卡的暫存文件夾內(nèi),進(jìn)一步從SD卡的暫存文件夾內(nèi)讀出寫入的512個字節(jié)數(shù)據(jù),當(dāng)存入的數(shù)據(jù)量過大時,在系統(tǒng)的內(nèi)部采取樣本式的提取方式,取其中某一字節(jié)端的數(shù)據(jù)信息,進(jìn)行比對,讀取第25-366字節(jié)段數(shù)據(jù)信息,同樣在讀樣本數(shù)據(jù)時在延遲的采樣參數(shù)范圍內(nèi),讀取第25-366字節(jié)段數(shù)據(jù)信息;將對應(yīng)的各個字節(jié)進(jìn)行比對,如果比對一致那么證明SD卡在設(shè)定的頻率下,設(shè)定延遲參數(shù)下數(shù)據(jù)的讀寫是正確的,此次對于SD卡檢測成功;比對的自己只要其中之一出現(xiàn)異常,則證明在此設(shè)定延遲參數(shù)下數(shù)據(jù)讀寫不一致,進(jìn)一步重新設(shè)定延遲參數(shù),再次驗證。延遲參數(shù)從最小參數(shù)開始驗證,取最大的延遲參數(shù)。
優(yōu)選的,當(dāng)向所述外接SD卡讀寫數(shù)據(jù)信息時包括:
當(dāng)向所述外接SD卡讀數(shù)據(jù)信息時,停止向所述外接SD寫數(shù)據(jù)信息;
當(dāng)向所述外接SD卡寫數(shù)據(jù)信息時,停止向所述外接SD讀數(shù)據(jù)信息。
具體的,在驗證向外接SD卡讀寫數(shù)據(jù)信息時,讀或?qū)懼荒軉我贿M(jìn)行,這樣避免了在檢測過程造成信息的錯亂。
優(yōu)選的,還包括:
利用所述IO控制器的GPIO輸出的電平控制所述外接SD卡工作狀態(tài)。
本發(fā)明還提一種SD卡的數(shù)據(jù)檢測方法的實施例,參考圖3所示;包括:
利用所述IO控制器的GPIO輸出的電平控制所述外接SD卡工作狀態(tài);
步驟S10利用IO控制器開啟外接SD卡處于工作狀態(tài);步驟S20獲取用戶向所述外接SD卡輸入預(yù)設(shè)的工作時鐘頻率;步驟S30根據(jù)用戶輸入的所述預(yù)設(shè)的工作時鐘頻率,設(shè)置所述外接SD卡讀寫數(shù)據(jù)信息的時序延時參數(shù);步驟S40根據(jù)用戶輸入的所述預(yù)設(shè)的工作時鐘頻率,向所述外接SD讀寫預(yù)設(shè)的容量的數(shù)據(jù)信息;步驟S50檢測所述外接SD卡讀寫的數(shù)據(jù)信息一致性;當(dāng)一致時,執(zhí)行步驟S60;步驟S51從所述外接SD卡中提取寫入的預(yù)設(shè)的字節(jié)段內(nèi)的所述數(shù)據(jù)信息中樣本數(shù)據(jù);當(dāng)向所述外接SD卡讀數(shù)據(jù)信息時,停止向所述外接SD寫數(shù)據(jù)信息;步驟S52從所述外接SD卡中提取讀出的所述預(yù)設(shè)的字節(jié)段內(nèi)的所述樣本數(shù)據(jù);當(dāng)向所述外接SD卡寫數(shù)據(jù)信息時,停止向所述外接SD讀數(shù)據(jù)信息;步驟S53將所述步驟S51提取寫入所述樣本數(shù)據(jù)與所述步驟S52提取讀出所述樣本數(shù)據(jù)進(jìn)行比對;當(dāng)至少有一個寫入和讀出對應(yīng)的字節(jié)段所述樣本數(shù)據(jù)比對不一致時,返回執(zhí)行步驟S30。
本發(fā)明還提供一種SD卡的數(shù)據(jù)檢測系統(tǒng)的實施例,參考圖4所示,包括:
SD卡開啟模塊10,用于利用IO控制器開啟外接SD卡處于工作狀態(tài);
頻率獲取模塊20,當(dāng)所述外接SD卡處于工作狀態(tài)時,用于獲取用戶向所述外接SD卡輸入預(yù)設(shè)的工作時鐘頻率;
數(shù)據(jù)讀寫模塊40,根據(jù)所述頻率獲取模塊獲取的預(yù)設(shè)的工作時鐘頻率,用于向所述外接SD讀寫預(yù)設(shè)的容量的數(shù)據(jù)信息;
數(shù)據(jù)檢測模塊50,用于判斷所述數(shù)據(jù)讀寫模塊讀寫的數(shù)據(jù)信息是否一致;
SD卡關(guān)閉模塊60,當(dāng)所述數(shù)據(jù)檢測模塊50檢測數(shù)據(jù)信息一致時,利用所述IO控制器關(guān)閉外接SD卡的工作狀態(tài)。
具體的,本實施例中,利用SD卡開啟模塊10CPU的IO端口的高低電平控制外接SD卡的工作狀態(tài),當(dāng)進(jìn)入測試模式時,CPU的IO控制發(fā)送高電平,頻率獲取模塊20設(shè)置SD卡的源頭工作頻率,根據(jù)設(shè)定的工作頻率向數(shù)據(jù)讀寫模塊40的SD卡進(jìn)行數(shù)據(jù)的讀寫操作,并設(shè)定讀寫數(shù)據(jù)的數(shù)量向SD卡的存儲文件夾內(nèi)存入,當(dāng)根據(jù)預(yù)設(shè)容量的信息完成讀寫操作后,進(jìn)一步利用數(shù)據(jù)檢測模塊50驗證其在此工作頻率條件下,讀入的數(shù)據(jù)和寫入的數(shù)據(jù)是否一致,以此驗證對SD卡設(shè)置的工作參數(shù)的準(zhǔn)確性,當(dāng)驗證后讀入與寫入的數(shù)據(jù)是統(tǒng)一數(shù)據(jù)信息時,利用CPU控制器IO發(fā)送低電平,關(guān)閉SD卡的工作狀態(tài),也即相當(dāng)于沒有SD卡進(jìn)行驗證工作。
優(yōu)選的,包括:
信息設(shè)置模塊30,分別與所述頻率獲取模塊20、所述數(shù)據(jù)讀寫模塊40電連接,用于設(shè)置所述外接SD卡讀寫數(shù)據(jù)信息的時序延時參數(shù)。
具體的,參考圖5所示;本實施例中在上一實施例的基礎(chǔ)上增加信息設(shè)置模塊30;根據(jù)對SD卡的設(shè)置的工作頻率,進(jìn)一步根據(jù)設(shè)置在此工作頻率下在數(shù)據(jù)讀寫過程中產(chǎn)生的采樣時序延遲量參數(shù)。
優(yōu)選的,所述數(shù)據(jù)檢測模塊50包括:
第一樣本數(shù)據(jù)提取子模塊51,用于從所述外接SD卡中提取寫入的預(yù)設(shè)的字節(jié)段內(nèi)的所述數(shù)據(jù)信息中樣本數(shù)據(jù);
第二樣本數(shù)據(jù)提取子模塊52,用于從所述外接SD卡中提取讀出的所述預(yù)設(shè)的字節(jié)段內(nèi)的所述樣本數(shù)據(jù);
樣本數(shù)據(jù)比對子模塊53,用于將所述第一樣本數(shù)據(jù)提取子模塊提取的樣本數(shù)據(jù)與所述第二樣本數(shù)據(jù)提取子模塊提取的所述樣本數(shù)據(jù)進(jìn)行比對;
當(dāng)所述樣本數(shù)據(jù)比對的結(jié)果不一致時,所述信息設(shè)置模塊再次所述時序延時參數(shù)。
具體的,參考圖6所示;在以上實施例的基礎(chǔ)上繼續(xù)本實施例;在設(shè)定的工作時鐘頻率時進(jìn)一步設(shè)定數(shù)據(jù)讀寫的時序延遲量的條件下,利用數(shù)據(jù)檢測模塊50檢測SD卡對數(shù)據(jù)讀寫的正確性;具體的檢測方法為,當(dāng)設(shè)定的時候頻率為12M,同時設(shè)定的延遲量為20ns;向外接的SD卡寫入512個字節(jié)的數(shù)據(jù),寫入后保存在SD卡的暫存文件夾內(nèi),進(jìn)一步從SD卡的暫存文件夾內(nèi)讀出寫入的512個字節(jié)數(shù)據(jù),當(dāng)存入的數(shù)據(jù)量過大時,在系統(tǒng)的內(nèi)部采取樣本式的提取方式,取其中某一段字節(jié)的數(shù)據(jù)信息,進(jìn)行比對,利用第一樣本數(shù)據(jù)提取子模塊51從暫存文件夾內(nèi)提取寫入第25-366字節(jié)段數(shù)據(jù)信息,同樣在讀樣本數(shù)據(jù)時在延遲的采樣參數(shù)范圍內(nèi),利用第二樣本數(shù)據(jù)提取子模塊52從暫存文件夾內(nèi)提取讀出的第25-366字節(jié)段數(shù)據(jù)信息;利用樣本數(shù)據(jù)比對子模塊53將對應(yīng)的各個字節(jié)進(jìn)行比對,如果比對一致那么證明SD卡在設(shè)定的頻率下,設(shè)定延遲參數(shù)下數(shù)據(jù)的讀寫是正確的,此次對于SD卡檢測成功;比對的字節(jié)只要其中之一出現(xiàn)異常,則證明在此設(shè)定延遲參數(shù)下數(shù)據(jù)讀寫不一致,進(jìn)一步重新設(shè)定延遲參數(shù),再次驗證。延遲參數(shù)從最小參數(shù)開始驗證,取最大的延遲參數(shù)。
本發(fā)明還提供一種外接SD卡的卡槽,包括:外接SD卡設(shè)置在專用的外接SD卡卡槽內(nèi),在所述卡槽內(nèi)設(shè)置連通觸點,與所述外接SD卡電連接的分別為工作始終頻率觸點(CLK),數(shù)據(jù)讀寫觸點(DATAn);
所述外接SD卡的DET觸點與IO控制電連接,用于控制所述外接SD的工作狀態(tài)。
具體的,本實施例中,通過CPU的IO端口的選擇一個空閑的CPU IO飛線到去除內(nèi)置卡檢測金屬片的SD卡卡槽的DET管腳,控制外接SD卡工作狀態(tài),是一種對原有測試硬件的改變;參考圖7和圖8所示,硬件板1、cpu2、cpu內(nèi)核3、SD控制器4、IO控制器5、IO PAD 6;cpu2包括cpu內(nèi)核3、SD控制器4、IO控制器5;IO PAD 6在硬件板上1。
本發(fā)明還提供一種SD卡的數(shù)據(jù)檢測系統(tǒng),參考圖7和圖8所示,包括相位調(diào)節(jié)通道、驅(qū)動層接口、硬件接口模型;硬件接口模型,提供一個硬件改進(jìn)方式,目的是將原有TF卡接口檢測管腳與硬件板上IO PAD 6接通,改成IO電平控制,由此能夠通過軟件改變IO電平達(dá)到模擬插拔SD卡的過程;驅(qū)動層接口向上為用戶層提供能夠直接控制相位調(diào)節(jié)通道以及運行態(tài)內(nèi)核的模塊時鐘頻率的接口(向用戶層提供硬件接口模型的封裝),向下直接與相位調(diào)節(jié)通道進(jìn)行信息交互;相位調(diào)節(jié)通道其主要作用在于接受驅(qū)動層接口信息,并控制CPU輸出的對SD卡模塊的采樣時序相位;
相位調(diào)節(jié)通道包括:SD控制器,適于接受來自驅(qū)動層接口的改動,并基于此向外接存儲設(shè)備提供特定延遲量的采樣時序;IO控制器,適于將處理器發(fā)起的存儲設(shè)備讀寫請求和數(shù)字邏輯進(jìn)行雙向轉(zhuǎn)換;SD控制器和IO控制器在驅(qū)動層接口中進(jìn)行封裝,為上層的用戶提供控制接口;通過IO控制器發(fā)出的IO控制電平,控制每次自動化測試時SD卡的插拔,通過模擬插拔來復(fù)位每次測試循環(huán)之后SD控制器內(nèi)部狀態(tài),使每次測試循環(huán)開始時SD控制器內(nèi)部狀態(tài)都一致,SD控制器提供特定的采樣時序給外接SD卡,并通過存儲控制器向外接SD卡讀寫數(shù)據(jù),并判斷在特定采樣時序延遲下讀寫的正確性。
驅(qū)動層接口包括:外接SD卡模型的時鐘總線,適于在內(nèi)核狀態(tài)下提供外接模塊的采樣時序頻率,外接SD卡在初始化階段唯一一次接受此采樣時序頻率設(shè)定;工作頻率屬性,適于在初始化階段之外動態(tài)改變采樣時序頻率提供通道;和SD控制器抽象,適于向用戶層展現(xiàn)SD控制器部分細(xì)節(jié),如時序延時量的控制寄存器,頻率控制接口,數(shù)據(jù)控制接口等;以及向SD控制器報告用戶層改動的作用;IO控制器抽象,適于對數(shù)字信號進(jìn)行控制,形成對外接SD卡檢測管腳的插拔信號。
硬件接口模型包括:改進(jìn)的外接SD卡接口,為去除了內(nèi)置卡檢測金屬片,并將其檢測管腳(結(jié)合圖7和圖8所示,中DET管腳)與IO PAD相連,始終引腳(CLK)和與CPU通訊的數(shù)據(jù)信息的讀出和寫入引腳(DATAn)不變,確保重要信號的正確連通。
本發(fā)明的一種SD卡的數(shù)據(jù)檢測系統(tǒng),在一個自動化測試循環(huán)周期開始之前,首先做好硬件改動準(zhǔn)備,選擇一個空閑的CPU IO飛線到去除內(nèi)置卡檢測金屬片的SD卡卡槽的DET管腳(此即改進(jìn)的外接SD卡接口),在隨后的軟件自測的一個循環(huán)周期內(nèi)的內(nèi)核啟動階段,在外接SD卡插入改進(jìn)的外接SD卡卡槽后,驅(qū)動層接口中的外接SD卡模型的時鐘總線工作頻率會被SD控制器讀取;在內(nèi)核啟動之后,用戶層軟件通過驅(qū)動層接口IO控制器抽象使IO PAD的電平為高,此時,CPU將會認(rèn)為改進(jìn)的外接SD卡卡槽已經(jīng)插入卡,SD控制器將會被CPU重置(RESET),以清除上一個軟件自測周期的狀態(tài),接著用戶層軟件通過驅(qū)動層接口內(nèi)的工作頻率屬性動態(tài)改變外接SD卡工作所需頻率,并通過SD控制器抽象改變其采樣時序延遲量的數(shù)值;在一個軟件自測周期的最后,系統(tǒng)將對外接SD卡進(jìn)行讀寫操作,若讀寫對比失敗,則改變采樣時序延遲量的數(shù)值后進(jìn)入下一個測試循環(huán);若讀寫成功,則記錄此采樣時序延遲量數(shù)值,并改變采樣時序延遲量的數(shù)值后進(jìn)入下一個測試循環(huán),循環(huán)一直持續(xù)到數(shù)值增加到采樣時序延遲量數(shù)值的最大值,此時循環(huán)結(jié)束,由此達(dá)到自動測試的目的。
應(yīng)當(dāng)說明的是,上述實施例均可根據(jù)需要自由組合。以上所述僅是本發(fā)明的優(yōu)選實施方式,應(yīng)當(dāng)指出,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以做出若干改進(jìn)和潤飾,這些改進(jìn)和潤飾也應(yīng)視為本發(fā)明的保護(hù)范圍。