驟401。
[0056]如圖5所示,為圖4中本發(fā)明寫控制裝置第二實(shí)施例的一個(gè)實(shí)例對應(yīng)的時(shí)序圖,在此時(shí)序圖中,主要表示了系統(tǒng)總線進(jìn)行寫入操作時(shí)第一寫入模塊12將系統(tǒng)總線連續(xù)寫入的數(shù)據(jù)寫入內(nèi)部緩存和系統(tǒng)總線有讀取操作時(shí)第二寫入模塊14暫停系統(tǒng)總線的讀取操作,將內(nèi)部緩存中緩存的數(shù)據(jù)寫入存儲(chǔ)器的過程,其中,地址總線,用于傳輸系統(tǒng)總線連續(xù)寫入的4個(gè)數(shù)據(jù)對應(yīng)的地址;數(shù)據(jù)I總線,用于傳輸系統(tǒng)總線連續(xù)寫入的4個(gè)數(shù)據(jù);數(shù)據(jù)O總線,用于傳輸系統(tǒng)總線在讀取操作時(shí)的數(shù)據(jù);寫操作,上升沿為系統(tǒng)總線連續(xù)寫入4個(gè)數(shù)據(jù)的過程,即系統(tǒng)總線進(jìn)行連續(xù)原子級寫入操作的過程;讀操作,上升沿為系統(tǒng)總線在連續(xù)寫入操作結(jié)束以后進(jìn)行的讀取操作,表示系統(tǒng)總線讀取操作的過程;內(nèi)部緩存,用于緩存系統(tǒng)總線連續(xù)寫入的4個(gè)數(shù)據(jù);內(nèi)部寫入信號,上升沿表示執(zhí)行暫停系統(tǒng)總線讀取操作并將內(nèi)部緩存中的數(shù)據(jù)寫入NVM的命令的過程;內(nèi)部寫入數(shù)據(jù),表示內(nèi)部程序執(zhí)行上述命令時(shí)對應(yīng)的寫入NVM的數(shù)據(jù)。具體過程為:系統(tǒng)總線進(jìn)行連續(xù)原子級寫入操作,連續(xù)寫入4個(gè)數(shù)據(jù)WR_D0、WR_D1、WR_D2和WR_D3,對應(yīng)的地址總線中的地址為WR_A0、WR_A1、WR_A2和WR_A3,第一寫入模塊12將系統(tǒng)總線連續(xù)寫入的4個(gè)數(shù)據(jù)寫入內(nèi)部緩存為D3D2D1D0,這里,數(shù)據(jù)D3D2D1D0按順序在內(nèi)部緩存中組合等待被寫入存儲(chǔ)器,系統(tǒng)總線在連續(xù)寫入操作后進(jìn)行讀取操作,此時(shí),在內(nèi)部寫入信號的控制下,第二寫入模塊14暫停系統(tǒng)總線的讀取操作,將內(nèi)部緩存中的數(shù)據(jù)寫入NVM,此時(shí)對應(yīng)地內(nèi)部寫入數(shù)據(jù)為D3D2D1D0,之后第二寫入模塊14會(huì)恢復(fù)系統(tǒng)總線的讀取操作,然后繼續(xù)系統(tǒng)總線的讀取操作過程。
[0057]如圖6所示,為本發(fā)明一種處理系統(tǒng)實(shí)施例的結(jié)構(gòu)示意圖,該系統(tǒng)包括:處理器61、寫控制裝置62和存儲(chǔ)器63,寫控制裝置62與處理器61之間通過系統(tǒng)總線64進(jìn)行通信,存儲(chǔ)器63與寫控制裝置62之間通過內(nèi)部總線65進(jìn)行通信。其中,寫控制裝置62可以包括前述寫控制裝置實(shí)施例中的任一模塊,在此不再贅述;處理器61用于完成系統(tǒng)中指令的讀取、譯碼、發(fā)射以及一些執(zhí)行操作,并完成是對系統(tǒng)中數(shù)據(jù)的讀取與處理等操作。
[0058]在本實(shí)施例中,通過寫控制裝置62先將系統(tǒng)總線64連續(xù)寫入的內(nèi)容進(jìn)行緩存,在系統(tǒng)總線64進(jìn)行讀取操作時(shí),寫控制裝置62再將緩存的內(nèi)容寫入存儲(chǔ)器,以此來減少存儲(chǔ)器63的寫入次數(shù),提高存儲(chǔ)器63的寫入效率,從而提高系統(tǒng)總體的性能。
[0059]可選地,在本實(shí)施例中,處理器61可以為微控制器(Micro Control Unit,簡稱:MCU),還可以為直接內(nèi)存存取器(Direct Memory Access,簡稱:DMA)。
[0060]可選地,在本實(shí)施例中,處理系統(tǒng)的處理器61與存儲(chǔ)器63之間還可以包括其他處理模塊,例如:加密解密模塊等,寫控制裝置62可以位于處理器61與存儲(chǔ)器63之間的任何位置。
[0061]最后應(yīng)說明的是:以上實(shí)施例僅用以說明本發(fā)明的技術(shù)方案而非限制,盡管參照較佳實(shí)施例對本發(fā)明進(jìn)行了詳細(xì)說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解,可以對本發(fā)明的技術(shù)方案進(jìn)行修改或者等同替換,而不脫離本發(fā)明技術(shù)方案的精神和范圍。
【主權(quán)項(xiàng)】
1.一種寫控制裝置,其特征在于,所述裝置布置在系統(tǒng)總線和存儲(chǔ)器之間,所述裝置包括緩存模塊、檢測模塊、第一寫入模塊和第二寫入模塊,其中: 所述檢測模塊用于檢測所述系統(tǒng)總線的狀態(tài); 所述第一寫入模塊用于當(dāng)所述系統(tǒng)總線的狀態(tài)為連續(xù)寫入狀態(tài)時(shí),將所述系統(tǒng)總線連續(xù)寫入的內(nèi)容寫入所述緩存模塊; 所述第二寫入模塊用于當(dāng)所述系統(tǒng)總線的狀態(tài)為讀取狀態(tài)時(shí),暫停所述系統(tǒng)總線的讀取操作,將所述緩存模塊中緩存的內(nèi)容寫入所述存儲(chǔ)器。
2.根據(jù)權(quán)利要求1所述的裝置,其特征在于,所述第二寫入模塊還用于將所述緩存模塊中緩存的內(nèi)容寫入所述存儲(chǔ)器后,恢復(fù)所述系統(tǒng)總線的讀取操作。
3.根據(jù)權(quán)利要求1所述的裝置,其特征在于,還包括: 判斷模塊,用于判斷所述緩存模塊中緩存的內(nèi)容的位寬是否超過所述存儲(chǔ)器要求的位寬; 所述第二寫入模塊還用于當(dāng)所述判斷模塊判定所述緩存模塊中緩存的內(nèi)容的位寬超過所述存儲(chǔ)器要求的位寬,將所述緩存模塊中緩存的內(nèi)容中與所述存儲(chǔ)器要求的位寬一致的部分寫入所述存儲(chǔ)器。
4.根據(jù)權(quán)利要求1所述的裝置,其特征在于,所述檢測模塊還用于當(dāng)所述系統(tǒng)總線的狀態(tài)為讀取狀態(tài)時(shí),檢測是否對所述存儲(chǔ)器進(jìn)行過寫入操作; 所述第二寫入模塊用于當(dāng)所述系統(tǒng)總線的狀態(tài)為讀取狀態(tài)并且所述檢測模塊檢測未對所述存儲(chǔ)器進(jìn)行過寫入操作時(shí),暫停所述系統(tǒng)總線的讀取操作,將所述緩存模塊中緩存的內(nèi)容寫入所述存儲(chǔ)器。
5.一種處理系統(tǒng),其特征在于,包括權(quán)利要求1-4任一所述的寫控制裝置、處理器和存儲(chǔ)器,所述寫控制裝置與所述處理器之間通過系統(tǒng)總線進(jìn)行通信,所述寫控制裝置與所述存儲(chǔ)器之間通過內(nèi)部總線進(jìn)行通信。
6.根據(jù)權(quán)利要求5所述的系統(tǒng),其特征在于,所述處理器為微控制器MCU或直接內(nèi)存存取器DMA。
7.一種寫控制方法,其特征在于,在系統(tǒng)總線和存儲(chǔ)器之間增加寫控制裝置,所述寫控制裝置包括緩存模塊、檢測模塊、第一寫入模塊和第二寫入模塊,所述方法包括: 所述檢測模塊檢測所述系統(tǒng)總線的狀態(tài); 當(dāng)所述系統(tǒng)總線的狀態(tài)為連續(xù)寫入狀態(tài)時(shí),所述第一寫入模塊將所述系統(tǒng)總線連續(xù)寫入的內(nèi)容寫入所述緩存模塊; 當(dāng)所述系統(tǒng)總線的狀態(tài)為讀取狀態(tài)時(shí),所述第二寫入模塊暫停所述系統(tǒng)總線的讀取操作,將所述緩存模塊中緩存的內(nèi)容寫入所述存儲(chǔ)器。
8.根據(jù)權(quán)利要求7所述的方法,其特征在于,所述第二寫入模塊將所述緩存模塊的內(nèi)容寫入所述存儲(chǔ)器后,還恢復(fù)所述系統(tǒng)總線的讀取操作。
9.根據(jù)權(quán)利要求7所述的方法,其特征在于,所述寫控制裝置還包括判斷模塊,所述方法還包括: 所述判斷模塊判斷所述緩存模塊中緩存的內(nèi)容的位寬是否超過所述存儲(chǔ)器要求的位寬; 當(dāng)所述判斷模塊判定所述緩存模塊中緩存的內(nèi)容的位寬超過所述存儲(chǔ)器要求的位寬,所述第二寫入模塊還將所述緩存模塊中緩存的內(nèi)容中與所述存儲(chǔ)器要求的位寬一致的部分寫入所述存儲(chǔ)器。
10.根據(jù)權(quán)利要求9所述的方法,其特征在于,所述檢測模塊還在所述系統(tǒng)總線的狀態(tài)為讀取狀態(tài)時(shí),檢測是否對所述存儲(chǔ)器進(jìn)行過寫入操作; 當(dāng)所述系統(tǒng)總線的狀態(tài)為讀取狀態(tài)并且所述檢測模塊檢測未對所述存儲(chǔ)器進(jìn)行過寫入操作時(shí),所述第二寫入模塊暫停所述系統(tǒng)總線的讀取操作,將所述緩存模塊中緩存的內(nèi)容寫入所述存儲(chǔ)器。
【專利摘要】本發(fā)明涉及一種寫控制裝置,所述裝置布置在系統(tǒng)總線和存儲(chǔ)器之間,所述裝置包括緩存模塊、檢測模塊、第一寫入模塊和第二寫入模塊,其中:所述檢測模塊用于檢測所述系統(tǒng)總線的狀態(tài);所述第一寫入模塊用于當(dāng)所述系統(tǒng)總線的狀態(tài)為連續(xù)寫入狀態(tài)時(shí),將所述系統(tǒng)總線連續(xù)寫入的內(nèi)容寫入所述緩存模塊;所述第二寫入模塊用于當(dāng)所述系統(tǒng)總線的狀態(tài)為讀取狀態(tài)時(shí),暫停所述系統(tǒng)總線的讀取操作,將所述緩存模塊中緩存的內(nèi)容寫入所述存儲(chǔ)器。本發(fā)明用以減少存儲(chǔ)器的寫入次數(shù),提高存儲(chǔ)器的寫入效率。
【IPC分類】G06F13-16
【公開號】CN104731726
【申請?zhí)枴緾N201510069969
【發(fā)明人】陳世柱
【申請人】昆騰微電子股份有限公司
【公開日】2015年6月24日
【申請日】2015年2月10日