專利名稱:一種突發(fā)機(jī)制下實(shí)現(xiàn)數(shù)據(jù)讀寫控制的方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及數(shù)據(jù)讀寫控制技術(shù),特別涉及一種突發(fā)機(jī)制下實(shí)現(xiàn)數(shù)據(jù)讀寫控制的方法和裝置。
背景技術(shù):
在直接內(nèi)存存取(DMA)控制器中,功能模塊,例如,安全數(shù)字卡(SD)控制器等,和DMA控制模塊,根據(jù)讀或?qū)懴热胂瘸?FIFO)模塊產(chǎn)生的讀空或?qū)憹M信號(hào),對(duì)該模塊進(jìn)行數(shù)據(jù)讀寫操作。
圖1為基于AMBA總線的DMA控制器的結(jié)構(gòu)示意圖,如圖1所示,該控制器包括DMA控制模塊100、寫FIFO或BUFFER模塊111、讀FIFO或BUFFER模塊112和功能模塊120。其中,DMA控制模塊100與功能模塊之間的數(shù)據(jù)傳輸有兩種傳輸模式,即FIFO模式和BUFFER模式,用戶根據(jù)實(shí)際需要從中選擇一種傳輸模式。
如圖1所示,在FIFO模式下,當(dāng)寫FIFO模塊111非滿時(shí),功能模塊120向該模塊寫入數(shù)據(jù),當(dāng)寫FIFO模塊111非空時(shí),DMA控制模塊100從該模塊中讀取數(shù)據(jù)。當(dāng)讀FIFO模塊112非滿時(shí),DMA控制模塊100向該模塊中寫入輸入數(shù)據(jù),當(dāng)讀FIFO模塊112非空時(shí),功能模塊120從該模塊中讀取數(shù)據(jù)。
在FIFO工作模式下,寫FIFO模塊111和讀FIFO模塊112分別產(chǎn)生讀空信號(hào)和寫滿信號(hào),來控制DMA控制模塊100和功能模塊120的數(shù)據(jù)讀寫操作,具體操作如下DMA控制模塊100以長度為1進(jìn)行數(shù)據(jù)讀寫,即此時(shí)的DMA控制模塊100處于正常讀寫機(jī)制,當(dāng)寫FIFO模塊111中的最后一個(gè)數(shù)據(jù)被讀走時(shí),寫FIFO模塊111產(chǎn)生讀空信號(hào),通知DMA控制模塊100不能再從寫FIFO模塊111中讀取數(shù)據(jù),換言之,只要寫FIFO模塊111中的數(shù)據(jù)非空,DMA控制模塊100就可以從寫FIFO模塊111中讀出數(shù)據(jù)。當(dāng)寫入一個(gè)數(shù)據(jù),使得讀FIFO模塊112被寫滿時(shí),讀FIFO模塊112產(chǎn)生寫滿信號(hào),通知DMA控制模塊100不能再往讀FIFO模塊112中寫入數(shù)據(jù),換言之,只要寫FIFO模塊111中的數(shù)據(jù)非滿,DMA控制模塊100就可以往寫FIFO模塊111寫入數(shù)據(jù)。寫FIFO模塊111和讀FIFO模塊112對(duì)功能模塊120的數(shù)據(jù)讀寫操作控制方法,與對(duì)DMA控制模塊100的數(shù)據(jù)讀寫操作控制方法基本相同,不同的是當(dāng)功能模塊120向?qū)慒IFO模塊111寫入一個(gè)數(shù)據(jù),使得寫FIFO模塊111變滿時(shí),寫FIFO模塊111產(chǎn)生數(shù)據(jù)寫滿信號(hào),通知功能模塊120不能再往自身寫入數(shù)據(jù);當(dāng)功能模塊120從讀FIFO模塊112讀出一個(gè)數(shù)據(jù)使得讀FIFO模塊112為空時(shí),讀FIFO模塊112產(chǎn)生讀空信號(hào),通知功能模塊120不能再從自身讀出數(shù)據(jù)。
在BUFFER工作模式下,DMA控制模塊100的突發(fā)(BURST)長度可配置,當(dāng)DMA控制模塊100一次性寫滿讀BUFFER模塊112時(shí),讀BUFFER模112產(chǎn)生中斷信息通知DMA控制模塊100不能再往讀BUFFER模塊112中寫入數(shù)據(jù)。同樣,只有當(dāng)DMA控制模塊100一次性讀空寫B(tài)UFFER模塊111時(shí),寫B(tài)UFFER模塊111才能產(chǎn)生中斷信息,通知DMA控制模塊100不能再從寫B(tài)UFFER模塊111中讀出數(shù)據(jù)。同樣,寫B(tài)UFFER模塊111和讀BUFFER模塊112對(duì)功能模塊120的數(shù)據(jù)讀寫操作控制方法,與對(duì)DMA控制模塊100的數(shù)據(jù)讀寫操作控制方法基本相同,差別在于,當(dāng)功能模塊120一次性寫滿寫B(tài)UFFER模塊111時(shí),寫B(tài)UFFER模塊111才能產(chǎn)生中斷信息,通知功能模塊120不能再往寫B(tài)UFFER模塊111中寫入數(shù)據(jù);當(dāng)功能模塊120一次性讀空讀BUFFER模塊112時(shí),讀BUFFER模塊112能產(chǎn)生中斷信息,通知功能模塊120不能再從讀BUFFER模塊112中讀出數(shù)據(jù)。
以上給出的是FIFO模式和BUFFER模式下正常讀寫機(jī)制的方案,實(shí)際應(yīng)用中還存在突發(fā)機(jī)制下數(shù)據(jù)的讀寫控制問題,但FIFO模塊不能根據(jù)BURST長度,在BURST機(jī)制下進(jìn)行數(shù)據(jù)的讀寫控制。下面以BURST長度為2n(n≥1,且n為整數(shù),例如,n=3)為例,介紹現(xiàn)有技術(shù)中讀或?qū)慒IFO模塊不能根據(jù)該BURST長度,進(jìn)行突發(fā)機(jī)制下數(shù)據(jù)讀寫控制的原因。
以現(xiàn)有的FIFO模式為例,當(dāng)寫FIFO模塊111中的數(shù)據(jù)不足8個(gè)時(shí),DMA控制模塊100不能完成一次BURST數(shù)據(jù)讀操作,此時(shí)寫FIFO模塊111應(yīng)當(dāng)產(chǎn)生讀空信號(hào),但在現(xiàn)有FIFO模式下,只有當(dāng)寫FIFO模塊111中的最后一個(gè)數(shù)據(jù)被DMA控制模塊100讀走時(shí),寫FIFO模塊111才能產(chǎn)生讀空信號(hào)。同樣,對(duì)于讀FIFO模塊112也會(huì)存在這樣的問題,當(dāng)讀FIFO模塊112的剩余數(shù)據(jù)空間不足8個(gè)時(shí),DMA控制模塊100不能完成一次BURST數(shù)據(jù)寫操作,此時(shí)讀FIFO模塊112應(yīng)當(dāng)產(chǎn)生數(shù)據(jù)寫滿信號(hào),但在現(xiàn)有FIFO模式下,只有當(dāng)寫入一個(gè)數(shù)據(jù)使得讀FIFO模塊112變滿時(shí),讀FIFO模塊112才能產(chǎn)生寫滿信號(hào)。所以,F(xiàn)IFO模塊在突發(fā)機(jī)制下,不能對(duì)DMA控制模塊100進(jìn)行數(shù)據(jù)讀寫控制。
同樣,在FIFO工作模式下,當(dāng)功能模塊120處于BURST讀寫機(jī)制,對(duì)FIFO模塊進(jìn)行讀寫操作時(shí),也會(huì)存在所述DMA控制模塊100所存在的問題,區(qū)別在于,當(dāng)寫FIFO模塊111的剩余數(shù)據(jù)空間不足8個(gè)時(shí),功能模塊120不能完成一次BURST數(shù)據(jù)寫操作,此時(shí)寫FIFO模塊111應(yīng)當(dāng)產(chǎn)生寫滿信號(hào),但在現(xiàn)有FIFO模式下,只有當(dāng)功能模塊120寫入一個(gè)數(shù)據(jù)使得寫FIFO模塊111變滿時(shí),寫FIFO模塊111才能產(chǎn)生寫滿信號(hào)。當(dāng)讀FIFO模塊112中的數(shù)據(jù)不足8個(gè)時(shí),功能模塊120不能完成一次BURST數(shù)據(jù)讀操作,此時(shí)讀FIFO模塊112應(yīng)當(dāng)產(chǎn)生數(shù)據(jù)讀空信號(hào),但在現(xiàn)有FIFO模式下,只有當(dāng)讀FIFO模塊112中的最后一個(gè)數(shù)據(jù)被功能模塊120讀走時(shí),讀FIFO模塊112才能產(chǎn)生數(shù)據(jù)讀空信號(hào)??梢钥闯觯現(xiàn)IFO模塊在突發(fā)機(jī)制下,不能對(duì)功能模塊120進(jìn)行數(shù)據(jù)讀寫控制。
可見,正常機(jī)制時(shí),DMA控制模塊工作在FIFO模式下,可以與讀或?qū)慒IFO模塊進(jìn)行實(shí)時(shí)數(shù)據(jù)讀寫操作。由于讀或?qū)慒IFO模塊不能根據(jù)BURST長度對(duì)數(shù)據(jù)進(jìn)行讀寫操作,并根據(jù)讀或?qū)慒IFO模塊產(chǎn)生數(shù)據(jù)讀空和寫滿信號(hào),因此讀或?qū)慒IFO模塊不能在突發(fā)機(jī)制下,產(chǎn)生數(shù)據(jù)讀寫控制信號(hào)來控制DMA控制模塊的讀寫操作。而當(dāng)DMA控制模塊工作在BUFFER模式下時(shí),讀或?qū)態(tài)UFFER模塊可以配置DMA控制模塊的BURST長度,但是,DMA控制模塊不能進(jìn)行實(shí)時(shí)數(shù)據(jù)讀寫操作。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明的目的在于提供一種突發(fā)機(jī)制下實(shí)現(xiàn)數(shù)據(jù)讀寫控制的方法,使用該方法確保讀或?qū)慒IFO模塊在突發(fā)傳輸機(jī)制下能夠進(jìn)行數(shù)據(jù)讀寫控制,提高DMA控制模塊的傳輸效率。
本發(fā)明的另一目的在于提供一種突發(fā)機(jī)制下實(shí)現(xiàn)數(shù)據(jù)讀寫控制的裝置,使用該裝置確保讀或?qū)慒IFO模塊在突發(fā)傳輸機(jī)制下,能夠進(jìn)行數(shù)據(jù)讀寫控制,提高DMA控制模塊的傳輸效率。
為了達(dá)到上述目的,本發(fā)明提供了一種突發(fā)機(jī)制下實(shí)現(xiàn)數(shù)據(jù)讀寫控制的方法,其特征在于,該方法包括以下步驟A、讀或?qū)慒IFO模塊根據(jù)獲取的BURST長度配置讀寫地址指針;B、讀或?qū)慒IFO模塊根據(jù)讀地址指針、寫地址指針產(chǎn)生數(shù)據(jù)讀空信號(hào),讀或?qū)慒IFO模塊根據(jù)讀地址指針、寫地址指針、BURST長度和讀寫FIFO深度產(chǎn)生數(shù)據(jù)寫滿信號(hào)。
所述步驟A中讀或?qū)慒IFO模塊根據(jù)接收到的控制信息,獲取BURST長度。
在所述步驟A中,所述BURST的長度為2n,n為大于等于1的整數(shù)。
在所述步驟A中,所述讀或?qū)慒IFO模塊根據(jù)獲取的BURST長度配置讀寫地址指針的步驟包括所述讀或?qū)慒IFO模塊取正常讀寫模式下的N位讀地址指針的高N-n位;所述讀或?qū)慒IFO模塊取正常讀寫模式下的N位寫地址指針的高N-n位。
所述讀或?qū)慒IFO模塊根據(jù)獲取的BURST長度配置所述讀地址指針的步驟為所述讀或?qū)慒IFO模塊將正常讀寫模式下的N位讀地址指針右移n位,對(duì)右移后的讀地址指針的高n位補(bǔ)零;所述讀或?qū)慒IFO模塊根據(jù)獲取的所述BURST長度,配置所述寫地址指針的步驟為所述讀或?qū)慒IFO模塊將正常讀寫模式下的N位寫地址指針右移n位,對(duì)右移后的寫地址指針的高n位補(bǔ)零。
所述步驟B具體包括當(dāng)讀地址指針等于寫地址指針時(shí),讀或?qū)慒IFO模塊產(chǎn)生數(shù)據(jù)讀空信號(hào);當(dāng)寫地址指針和讀地址指針之差與BURST長度的乘積,等于所述FIFO深度時(shí),讀或?qū)慒IFO模塊產(chǎn)生數(shù)據(jù)寫滿信號(hào)。
所述步驟B后進(jìn)一步包括當(dāng)所述寫FIFO模塊產(chǎn)生數(shù)據(jù)讀空信號(hào)時(shí),將所述信號(hào)發(fā)送給直接內(nèi)存存取DMA控制模塊,通知所述DMA控制模塊不能再從自身讀取數(shù)據(jù);當(dāng)所述讀FIFO模塊產(chǎn)生數(shù)據(jù)讀空信號(hào)時(shí),將所述信號(hào)發(fā)送給功能模塊,通知所述功能模塊不能再從自身讀取數(shù)據(jù);當(dāng)所述寫FIFO模塊產(chǎn)生數(shù)據(jù)寫滿信號(hào)時(shí),將所述信號(hào)發(fā)送給功能模塊,通知所述功能模塊不能再向自身寫入數(shù)據(jù);當(dāng)所述讀FIFO模塊產(chǎn)生數(shù)據(jù)寫滿信號(hào)時(shí),將所述信號(hào)發(fā)送給DMA控制模塊,通知所述DMA控制模塊不能再向自身寫入數(shù)據(jù)。
為了達(dá)到本發(fā)明的另一目的,本發(fā)明提供一種突發(fā)機(jī)制下實(shí)現(xiàn)數(shù)據(jù)讀寫控制的裝置,該裝置為讀或?qū)慒IFO模塊,包括雙端口存儲(chǔ)器,根據(jù)寫地址指針和讀地址指針,進(jìn)行數(shù)據(jù)存儲(chǔ)操作,該裝置進(jìn)一步包括讀或?qū)懙刂樊a(chǎn)生邏輯和讀空或?qū)憹M信號(hào)產(chǎn)生邏輯;所述讀或?qū)懙刂樊a(chǎn)生邏輯,用于獲取BURST長度,根據(jù)獲取的所述BURST長度配置讀地址指針和寫地址指針,將配置的讀地址指針和寫地址指針發(fā)送給讀空或?qū)憹M信號(hào)產(chǎn)生邏輯和所述雙端口存儲(chǔ)器;所述讀空或?qū)憹M信號(hào)產(chǎn)生邏輯,用于接收所述讀地址指針和寫地址指針,根據(jù)讀地址指針、寫地址指針產(chǎn)生數(shù)據(jù)讀空信號(hào),將所述數(shù)據(jù)讀空信號(hào)發(fā)送出去,根據(jù)讀地址指針、寫地址指針、BURST長度和讀寫FIFO深度產(chǎn)生數(shù)據(jù)寫滿信號(hào),將所述數(shù)據(jù)寫滿信號(hào)發(fā)送出去。
該裝置進(jìn)一步包括BURST長度配置寄存器,用于將BURST的長度配置為2n,n為大于等于1的整數(shù),將配置的所述BURST的長度發(fā)送給所述讀或?qū)懙刂樊a(chǎn)生邏輯。
該裝置進(jìn)一步包括DMA控制模塊和功能模塊,所述DMA控制模塊,當(dāng)接收到所述寫FIFO模塊中的讀空或?qū)憹M信號(hào)產(chǎn)生邏輯發(fā)出的數(shù)據(jù)讀空信號(hào)時(shí),不再從該寫FIFO模塊讀取數(shù)據(jù);當(dāng)接收到所述讀FIFO模塊中的讀空或?qū)憹M信號(hào)產(chǎn)生邏輯發(fā)出的數(shù)據(jù)寫滿信號(hào)時(shí),不再向該讀FIFO模塊中寫入數(shù)據(jù);所述功能模塊,當(dāng)接收到所述寫FIFO模塊中的讀空或?qū)憹M信號(hào)產(chǎn)生邏輯發(fā)出的數(shù)據(jù)寫滿信號(hào)時(shí),不再向該寫FIFO模塊寫入數(shù)據(jù);當(dāng)接收到所述讀FIFO模塊中的讀空或?qū)憹M信號(hào)產(chǎn)生邏輯發(fā)出的數(shù)據(jù)讀空信號(hào)時(shí),不再從該讀FIFO模塊讀取數(shù)據(jù)。
由上述方案可以看出,本發(fā)明提供的一種突發(fā)機(jī)制下實(shí)現(xiàn)數(shù)據(jù)讀寫控制的方法和裝置,讀或?qū)慒IFO模塊根據(jù)獲取的BURST長度配置讀寫地址指針;讀或?qū)慒IFO模塊根據(jù)讀地址指針、寫地址指針產(chǎn)生數(shù)據(jù)讀空信號(hào),讀或?qū)慒IFO模塊根據(jù)讀地址指針、寫地址指針和讀寫FIFO深度產(chǎn)生數(shù)據(jù)寫滿信號(hào)。使用本發(fā)明所提供的技術(shù)方案,能夠?qū)崿F(xiàn)讀或?qū)慒IFO模塊在BURST傳輸機(jī)制下,根據(jù)比較讀寫地址指針產(chǎn)生數(shù)據(jù)讀空信號(hào),或根據(jù)比較讀寫地址指針之差和BURST長度的乘積與讀寫FIFO深度的關(guān)系產(chǎn)生數(shù)據(jù)寫滿信號(hào),從而實(shí)現(xiàn)讀或?qū)慒IFO模塊在BURST傳輸機(jī)制下的數(shù)據(jù)讀寫控制。
在本發(fā)明中,讀或?qū)慒IFO模塊可以靈活地配置BURST長度,可以將BURST長度配置為2n,其中n為大于等于1的整數(shù)。讀或?qū)慒IFO模塊根據(jù)BURST長度,產(chǎn)生數(shù)據(jù)讀空或?qū)憹M信號(hào),DMA控制模塊和功能模塊根據(jù)讀空或?qū)憹M信號(hào),以2n為單位進(jìn)行數(shù)據(jù)讀寫操作。本方案還可以解決現(xiàn)有技術(shù)中,DMA控制模塊和功能模塊以1為單位讀寫數(shù)據(jù)時(shí),長時(shí)間占用高級(jí)微控制器總線結(jié)構(gòu)(AMBA)總線影響其他模塊工作的問題。除此之外,也會(huì)解決DMA控制模塊因不斷發(fā)出讀寫申請(qǐng),造成的系統(tǒng)功耗增大的問題。
圖1為基于AMBA總線的DMA控制器的結(jié)構(gòu)示意圖;圖2是本發(fā)明的讀或?qū)慒IFO模塊在突發(fā)傳輸機(jī)制下實(shí)現(xiàn)數(shù)據(jù)讀寫控制的方法的流程圖;圖3為寫FIFO模塊在BURST機(jī)制下產(chǎn)生數(shù)據(jù)讀空信號(hào)方法的流程示意圖;圖4為讀FIFO模塊在BURST機(jī)制下產(chǎn)生數(shù)據(jù)寫滿信號(hào)方法的流程示意圖;圖5為在突發(fā)機(jī)制下實(shí)現(xiàn)數(shù)據(jù)讀寫控制的裝置的結(jié)構(gòu)示意圖;圖6為在突發(fā)機(jī)制下實(shí)現(xiàn)數(shù)據(jù)讀寫控制的裝置的第一較佳實(shí)施例的結(jié)構(gòu)示意圖。
具體實(shí)施例方式
為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面結(jié)合附圖對(duì)本發(fā)明作進(jìn)一步的詳細(xì)描述。
本發(fā)明的核心思想是在FIFO工作模式下,在保證實(shí)時(shí)性傳輸?shù)耐瑫r(shí),讀或?qū)慒IFO模塊根據(jù)獲取的BURST長度配置讀寫地址指針,讀或?qū)慒IFO模塊根據(jù)讀地址指針、寫地址指針產(chǎn)生數(shù)據(jù)讀空信號(hào),讀或?qū)慒IFO模塊根據(jù)讀地址指針、寫地址指針、BURST長度和配置的讀寫FIFO深度產(chǎn)生數(shù)據(jù)寫滿信號(hào)。因此,可以實(shí)現(xiàn)讀或?qū)慒IFO模塊在BURST機(jī)制下對(duì)DMA控制模塊和功能模塊的讀寫控制,同時(shí)可以提高DMA控制模塊的傳輸效率。
圖2是本發(fā)明的實(shí)現(xiàn)FIFO模塊在突發(fā)傳輸機(jī)制下數(shù)據(jù)讀寫控制方法的流程圖。該方法具體步驟如下
步驟201讀或?qū)慒IFO模塊根據(jù)獲取的BURST長度配置讀寫地址指針。
步驟202讀或?qū)慒IFO模塊根據(jù)讀地址指針、寫地址指針產(chǎn)生數(shù)據(jù)讀空信號(hào),讀或?qū)慒IFO模塊根據(jù)讀地址指針、寫地址指針、BURST長度和讀寫FIFO深度產(chǎn)生數(shù)據(jù)寫滿信號(hào)。
本步驟的具體操作為讀或?qū)慒IFO模塊首先比較寫地址指針和讀地址指針,當(dāng)兩者相等時(shí),認(rèn)為讀或?qū)慒IFO模塊被讀空,則產(chǎn)生讀空信號(hào)。當(dāng)寫地址指針減去讀地址指針,當(dāng)兩者差值與BURST長度的乘積等于讀寫FIFO深度時(shí),認(rèn)為讀或?qū)慒IFO模塊已被寫滿,則讀或?qū)慒IFO模塊產(chǎn)生數(shù)據(jù)寫滿信號(hào)。
在圖2所示實(shí)施例中,F(xiàn)IFO模塊可以將BURST的長度配置為2n,其中,n≥1的整數(shù),所述讀或?qū)慒IFO的深度為2m,其中,m為大于等于n的整數(shù)。下面以BURST的長度為8為例,介紹當(dāng)DMA控制模塊對(duì)讀或?qū)慒IFO模塊進(jìn)行讀或?qū)懖僮鲿r(shí),寫FIFO模塊如何通過比較讀寫地址指針產(chǎn)生讀空信號(hào),讀FIFO如何根據(jù)讀寫地址指針,以及讀寫FIFO深度之間的關(guān)系產(chǎn)生寫滿信號(hào)的操作。
現(xiàn)有技術(shù)中,讀或?qū)慒IFO模塊將讀寫地址指針分別配置為rd_addr[N-1:0]和wr_addr[N-1:0],其中,N是地址的總位數(shù)。rd_addr[N-1:0]表示N位二進(jìn)制讀地址指針,使用第0位到第N-1位進(jìn)行讀操作,每進(jìn)行一次讀操作,該讀地址指針加1。wr_addr[N-1:0]表示N位二進(jìn)制寫地址指針,N是寫地址指針的總位數(shù),使用第0位到第N-1位進(jìn)行讀操作,每進(jìn)行一次寫操作該寫地址指針加1。讀或?qū)慒IFO模塊比較讀寫地址指針,當(dāng)rd_addr[N-1:0]=wr_addr[N-1:0]時(shí),產(chǎn)生讀空信號(hào)。當(dāng)wr_addr[N-1:0]-rd_addr[N-1:0]的值與BURST長度的乘積等于讀寫FIFO深度時(shí),產(chǎn)生數(shù)據(jù)寫滿信號(hào)。在圖2所示的實(shí)施例中,讀或?qū)慒IFO根據(jù)獲取的BURST長度配置讀寫地址指針的具體步驟包括當(dāng)BURST長度為2n時(shí),取正常讀寫模式下的讀地址指針rd_addr[N-1:0]的高n位,配置后的讀地址指針為rd_addr[N-1:n],讀或?qū)慒IFO模塊使用配置后的高N-n位讀地址指針進(jìn)行讀操作,在這里N-n是N和n之差。取正常讀寫模式下的寫地址指針wr_addr[N-1:0]的高n位,配置后的寫地址指針為wr_addr[N-1:n],讀或?qū)慒IFO模塊使用配置后的高N-n位寫地址指針進(jìn)行寫操作,N是地址的總位數(shù),n為大于等于1的整數(shù)。FIFO深度為2m,其中,2m大于2n。
本發(fā)明的技術(shù)方案可以用在DMA控制器中,讀或?qū)慒IFO產(chǎn)生數(shù)據(jù)讀空或?qū)憹M信號(hào),對(duì)DMA控制模塊和功能模塊進(jìn)行數(shù)據(jù)讀寫控制。在圖3和圖4所示的實(shí)施例中,分別介紹寫FIFO模塊產(chǎn)生數(shù)據(jù)讀空信號(hào)和讀FIFO模塊產(chǎn)生數(shù)據(jù)寫滿信號(hào),對(duì)DMA控制模塊進(jìn)行數(shù)據(jù)讀寫控制的具體操作過程。在圖3所示的實(shí)施例中,給出寫FIFO通過比較讀寫地址指針產(chǎn)生數(shù)據(jù)讀空信號(hào)的具體操作過程。在圖4所示的實(shí)施例中,給出讀FIFO通過比較讀寫地址指針、BURST長度與讀或?qū)慒IFO深度之間的關(guān)系,產(chǎn)生數(shù)據(jù)寫滿控制信號(hào)的具體實(shí)施步驟。
圖3為寫FIFO模塊在BURST機(jī)制下產(chǎn)生讀空信號(hào)的方法流程示意圖;如圖3所示,具體步驟如下步驟301寫FIFO模塊獲取BURST長度。
在本步驟中,寫FIFO模塊從負(fù)責(zé)配置BURST長度的寄存器發(fā)送的控制信息中,獲取到BURST長度為8。
步驟302寫FIFO模塊根據(jù)獲取的BURST長度,配置讀寫地址指針。
在本步驟中,寫FIFO模塊獲取BURST長度配置讀寫地址指針的具體步驟包括例如,寫FIFO模塊根據(jù)BURST長度為8,將讀地址指針配置為rd_addr[5:3],將寫地址指針配置為wr_addr[5:3],N為地址總位數(shù),這里將N取為6。
步驟303寫FIFO模塊通過比較讀地址指針和寫地址指針,判斷兩者是否相等,如果兩者相等,則執(zhí)行步驟304;否則,執(zhí)行步驟305。
在本步驟中,根據(jù)控制信息獲取到BURST長度被配置為8,所以DMA控制模塊以8為單位進(jìn)行數(shù)據(jù)讀操作;當(dāng)DMA對(duì)寫FIFO每進(jìn)行一次讀操作時(shí),讀地址指針加1,同樣,當(dāng)功能模塊對(duì)寫FIFO每進(jìn)行一次寫操作時(shí),寫地址指針加1。當(dāng)所述寫FIFO模塊的寫地址指針大于讀地址指針時(shí),表示該模塊中還有可供DMA控制模塊讀取的數(shù)據(jù);當(dāng)所述讀地址指針等于寫地址指針時(shí),表示寫FIFO模塊被讀空,則產(chǎn)生數(shù)據(jù)讀空信號(hào)。
步驟304寫FIFO模塊產(chǎn)生數(shù)據(jù)讀空信號(hào)。
步驟305寫FIFO模塊不產(chǎn)生數(shù)據(jù)讀空信號(hào),結(jié)束本流程。
下面結(jié)合一個(gè)具體的例子,分別介紹現(xiàn)有技術(shù)和步驟303中的寫FIFO模塊,如何根據(jù)比較讀寫地址指針產(chǎn)生數(shù)據(jù)讀空信號(hào)。例如,讀寫地址的總長度為6,在現(xiàn)有技術(shù)正常讀寫模式下,讀地址指針和寫地址指針的初始地址分別被配置為rd_addr
和wr_addr
。對(duì)寫FIFO模塊每進(jìn)行一次寫操作,所述寫地址指針加1,當(dāng)對(duì)所述寫FIFO模塊進(jìn)行32次寫操作后,寫地址指針變?yōu)閣r_addr[100000]。同樣,對(duì)寫FIFO模塊每進(jìn)行一次讀操作,所述讀地址指針加1,當(dāng)對(duì)寫FIFO模塊進(jìn)行32次讀操作后,讀地址指針變?yōu)閞d_addr[100000],且等于寫地址指針wr_addr[100000],表示寫FIFO模塊中的數(shù)據(jù)被讀空,所述寫FIFO模塊產(chǎn)生數(shù)據(jù)讀空信號(hào)。根據(jù)本發(fā)明提供的技術(shù)方案,假如BURST長度被配置為8,讀地址指針和寫地址指針的初始地址分別為rd_addr
和wr_addr
。若所述寫FIFO模塊被寫入32個(gè)數(shù)據(jù),對(duì)所述寫地址指針的進(jìn)行配置方法為將正常模式下的寫地址指針wr_addr[100000]右移3位,并將右移后的寫地址指針的高3位補(bǔ)零,BURST機(jī)制下的寫地址指針變?yōu)閣r_addr
。以BURST=8對(duì)寫FIFO模塊進(jìn)行讀操作,每讀出8個(gè)數(shù)據(jù),所述讀地址指針加1,當(dāng)對(duì)所述寫FIFO模塊進(jìn)行4次讀操作后,此時(shí)的讀地址指針變?yōu)閞d_addr
,且等于寫地址指針wr_addr
,表示寫FIFO模塊中的數(shù)據(jù)被讀空,則寫FIFO模塊產(chǎn)生數(shù)據(jù)讀空信號(hào)。
圖4為讀FIFO模塊在BURST機(jī)制下產(chǎn)生數(shù)據(jù)寫滿信號(hào)的方法流程示意圖。如圖4所示,具體步驟如下步驟401讀FIFO模塊根據(jù)獲取的BURST長度配置讀寫地址指針。
在本步驟中,讀FIFO模塊根據(jù)獲取的BURST長度配置讀寫地址指針的方法為例如,讀FIFO模塊根據(jù)BURST長度為8,將讀地址指針配置為rd_addr[5:3],將寫地址指針配置為wr_addr[5:3],N為地址指針的總長度,這里將N取為6,取讀寫FIFO深度為32。
步驟402FIFO模塊計(jì)算寫地址指針和讀地址指針之差,將兩者差值與BURST長度的乘積與讀寫FIFO自身深度進(jìn)行比較,如果相等則執(zhí)行步驟403,否則執(zhí)行步驟404。
在本步驟中,F(xiàn)IFO模塊用寫地址指針減去讀地址指針,如果兩者差值與BURST長度的乘積等于32則執(zhí)行步驟403,否則執(zhí)行步驟404。
本步驟中,所述讀寫地址指針的操作方法同步驟303,即當(dāng)DMA對(duì)讀FIFO每進(jìn)行一次寫操作時(shí),寫地址指針加1。同樣,當(dāng)功能模塊對(duì)讀FIFO模塊每進(jìn)行一次讀操作時(shí),讀地址指針加1。
步驟403讀FIFO模塊產(chǎn)生數(shù)據(jù)寫滿信號(hào)。
步驟404讀FIFO模塊不產(chǎn)生數(shù)據(jù)寫滿信號(hào),并結(jié)束本流程。
下面結(jié)合一個(gè)具體的例子,分別介紹現(xiàn)有技術(shù)和步驟402中的讀FIFO模塊,如何根據(jù)比較讀寫地指針、BURST長度和讀寫FIFO深度產(chǎn)生數(shù)據(jù)寫滿信號(hào)。例如,讀寫地址的總長度為6,讀寫FIFO深度為32。在現(xiàn)有技術(shù)正常讀寫模式下,讀地址指針和寫地址指針的初始值分別為rd_addr
和wr_addr
。對(duì)讀FIFO模塊每進(jìn)行一次寫操作,所述寫地址指針加1,當(dāng)DMA控制模塊對(duì)讀FIFO模塊進(jìn)行32次寫操作后,寫地址指針變?yōu)閣r_addr[100000]。wr_addr[100000]-rd_addr
等于讀寫FIFO深度32,表示讀FIFO模塊被寫滿,所述讀FIFO模塊產(chǎn)生數(shù)據(jù)寫滿信號(hào)。根據(jù)本發(fā)明提供的技術(shù)方案,例如,BURST長度被配置為8,讀地址指針和寫地址指針的初始值分別為rd_addr
和wr_addr
。對(duì)BURST機(jī)制下的寫地址指針的配置方法為將正常模式下的寫地址指針wr_addr
右移3位,并將右移后的寫地址指針的高3位補(bǔ)零。DMA控制模塊以BURST=8的長度對(duì)讀FIFO模塊進(jìn)行寫操作,每寫入8個(gè)數(shù)據(jù),所述寫地址指針加1,當(dāng)對(duì)所述讀FIFO模塊進(jìn)行4次寫操作后,寫地址指針變?yōu)閣r_addr
,此時(shí),(wr_addr
-rd_addr
)*8的值等于讀寫FIFO深度32,表示讀FIFO模塊被寫滿,則讀FIFO模塊產(chǎn)生數(shù)據(jù)寫滿信號(hào)。在對(duì)讀FIFO模塊同時(shí)進(jìn)行讀寫操作的情況下,所述讀FIFO模塊仍根據(jù)上述方法對(duì)讀寫地址指針進(jìn)行配置,并根據(jù)所述讀寫地址指針、BURST長度和讀寫FIFO深度的關(guān)系產(chǎn)生數(shù)據(jù)寫滿信號(hào)。
在圖3和圖4所示的實(shí)施例中,介紹了在BURST機(jī)制下對(duì)讀寫地址指針進(jìn)行配置的方法首先將正常讀寫模式下的讀地址指針rd_addr[N-1:0]和寫地址指針wr_addr[N-1:0]都右移n位,將右移后的讀地址指針和寫地址指針的高n位補(bǔ)零,讀地址指針被配置為rd_addr[N-1:n],寫地址指針被配置為wr_addr[N-1:n]。圖3和圖4所示的實(shí)施例只是本發(fā)明的最佳實(shí)施例,并非對(duì)本發(fā)明的限定,其他任何將正常讀寫模式下的讀地址指針rd_addr[N-1:0]和寫地址指針wr_addr[N-1:0],分別配置為rd_addr[N-1:n]和wr_addr[N-1:n]的方法,仍然在本發(fā)明的保護(hù)范圍之內(nèi)。
圖3和圖4所示的實(shí)施例中,分別以BURST長度等于8為例,介紹了當(dāng)DMA控制模塊對(duì)讀或?qū)慒IFO模塊進(jìn)行讀或?qū)懖僮鲿r(shí),讀或?qū)慒IFO模塊如何根據(jù)讀地址指針和寫地址指針產(chǎn)生數(shù)據(jù)讀空信號(hào),根據(jù)讀地址指針、寫地址指針、BURST長度和讀寫FIFO深度產(chǎn)生數(shù)據(jù)寫滿信號(hào),對(duì)于其他滿足BURST長度為2n,n≥1,且n為整數(shù)的情況,上述方法也是適用的。同樣,當(dāng)功能模塊對(duì)讀或?qū)慒IFO模塊進(jìn)行讀或?qū)懖僮鲿r(shí),其操作方法基本相同,差別在于在圖4所述的讀FIFO模塊中,按照?qǐng)D3所述的方法,當(dāng)所述讀寫地址指針相等時(shí),所述讀FIFO模塊產(chǎn)生數(shù)據(jù)讀空信號(hào),通知功能模塊不能再從自身讀取數(shù)據(jù);否則所述讀FIFO模塊不產(chǎn)生讀空信號(hào),并結(jié)束本流程。在圖4所述的寫FIFO模塊中,按照?qǐng)D3所述的方法,當(dāng)寫地址指針和讀地址指針差值與BURST長度的乘積等于讀寫FIFO深度時(shí),寫FIFO模塊產(chǎn)生寫滿信號(hào),通知功能模塊不能再往自身寫入數(shù)據(jù);否則所述寫FIFO模塊不產(chǎn)生寫滿信號(hào),并結(jié)束本流程。
下面介紹在突發(fā)機(jī)制下實(shí)現(xiàn)數(shù)據(jù)讀寫控制的裝置,在本發(fā)明中,該裝置為讀或?qū)慒IFO模塊。
圖5為在突發(fā)機(jī)制下實(shí)現(xiàn)數(shù)據(jù)讀寫控制的裝置的結(jié)構(gòu)示意圖;如圖5所示,該裝置為讀或?qū)慒IFO模塊500包括讀或?qū)懙刂樊a(chǎn)生邏輯501、讀空或?qū)憹M信號(hào)產(chǎn)生邏輯502和雙端口存儲(chǔ)器503;讀或?qū)懙刂樊a(chǎn)生邏輯501,用于獲取BURST長度,并根據(jù)獲取的BURST長度配置讀地址指針和寫地址指針,將配置的讀地址指針和寫地址指針發(fā)送給讀空或?qū)憹M信號(hào)產(chǎn)生邏輯502和雙端口存儲(chǔ)器503。
讀空或?qū)憹M信號(hào)產(chǎn)生邏輯502,接收讀或?qū)懙刂樊a(chǎn)生邏輯發(fā)送的讀地址指針和寫地址指針,根據(jù)讀地址指針、寫地址指針產(chǎn)生數(shù)據(jù)讀空信號(hào),根據(jù)讀地址指針、寫地址指針、BURST長度和讀寫FIFO深度產(chǎn)生數(shù)據(jù)寫滿信號(hào)。
雙端口存儲(chǔ)器503,用于接收讀或?qū)懙刂樊a(chǎn)生邏輯501發(fā)出讀地址指針和寫地址指針,根據(jù)所述指針進(jìn)行數(shù)據(jù)的存儲(chǔ)操作。
圖6為在突發(fā)機(jī)制下實(shí)現(xiàn)數(shù)據(jù)讀寫控制的裝置的第一較佳實(shí)施例的結(jié)構(gòu)示意圖;如圖6所示,該裝置包括功能模塊610、DMA控制模塊620和BURST長度配置寄存器630、寫FIFO模塊640和讀FIFO模塊650。
BURST長度配置寄存器630,用于配置BURST長度,將所述BURST長度發(fā)送給讀或?qū)懙刂樊a(chǎn)生邏輯641,例如,可以將BURST長度配置為8。
讀或?qū)懙刂樊a(chǎn)生邏輯641,用于接收BURST長度配置寄存器630發(fā)送的BURST長度,根據(jù)該長度配置讀寫地址指針。在本實(shí)施例中,將所述讀地址指針和寫地址指針分別配置為rd_addr[5:3]和wr_addr[5:3]。其中,6是地址的總長度,寫FIFO模塊640的深度為32。
讀空或?qū)憹M信號(hào)產(chǎn)生邏輯642,用于接收讀或?qū)懙刂樊a(chǎn)生邏輯641發(fā)送的讀寫地址指針。比較所述讀寫地址指針,當(dāng)rd_addr[5:3]=wr_addr[5:3]時(shí),讀空或?qū)憹M信號(hào)產(chǎn)生邏輯642產(chǎn)生數(shù)據(jù)讀空信號(hào)發(fā)送給所述DMA控制模塊620,通知其不能再從自身讀出數(shù)據(jù)。讀空或?qū)憹M信號(hào)產(chǎn)生邏輯642比較(wr_addr[5:3]-rd_addr[5:3])*8的值和寫FIFO深度的值,當(dāng)(wr_addr[6:3]-rd_addr[6:3])*8=32時(shí),讀空或?qū)憹M信號(hào)產(chǎn)生邏輯642產(chǎn)生數(shù)據(jù)寫滿信號(hào),發(fā)送給功能模塊610通知其不能再向自身寫入數(shù)據(jù)。
功能模塊610,向雙端口存儲(chǔ)器643寫入數(shù)據(jù),如果功能模塊610接到讀空或?qū)憹M信號(hào)產(chǎn)生邏輯642發(fā)送的數(shù)據(jù)寫滿信號(hào),不再向雙端口存儲(chǔ)器643中寫入數(shù)據(jù)。
DMA控制模塊620,從雙端口存儲(chǔ)器643讀取數(shù)據(jù),如果DMA控制模塊620接到讀空或?qū)憹M信號(hào)產(chǎn)生邏輯642發(fā)送的數(shù)據(jù)讀空信號(hào),不再從雙端口存儲(chǔ)器643中讀取數(shù)據(jù)。
功能模塊610、DMA控制模塊620和讀FIFO模塊650之間讀寫操作的方法,與上述功能模塊610、DMA控制模塊620和寫FIFO模塊640之間讀寫操作方法相同。只是功能模塊610,在接到讀空或?qū)憹M信號(hào)產(chǎn)生邏輯652發(fā)出的數(shù)據(jù)讀空信號(hào)的情況下,不再從雙端口存儲(chǔ)器653讀取數(shù)據(jù)。所述DMA控制模塊620,在接到讀空或?qū)憹M信號(hào)產(chǎn)生邏輯652發(fā)出的數(shù)據(jù)寫滿信號(hào)的情況下,不再向雙端口存儲(chǔ)器653寫入數(shù)據(jù)。
在上述實(shí)施例中,介紹了DMA控制模塊和功能模塊,如何根據(jù)讀或?qū)慒IFO模塊產(chǎn)生的數(shù)據(jù)讀空和寫滿信號(hào)進(jìn)行數(shù)據(jù)讀寫操作。其他與本發(fā)明具有相同原理的裝置和方法,也在本發(fā)明的保護(hù)范圍之內(nèi)。
綜上所述,以上僅為本發(fā)明的較佳實(shí)施例而已,并非用于限定本發(fā)明的保護(hù)范圍。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種突發(fā)機(jī)制下實(shí)現(xiàn)數(shù)據(jù)讀寫控制的方法,其特征在于,該方法包括以下步驟A、讀或?qū)慒IFO模塊根據(jù)獲取的BURST長度配置讀寫地址指針;B、讀或?qū)慒IFO模塊根據(jù)讀地址指針、寫地址指針產(chǎn)生數(shù)據(jù)讀空信號(hào),讀或?qū)慒IFO模塊根據(jù)讀地址指針、寫地址指針、BURST長度和讀寫FIFO深度產(chǎn)生數(shù)據(jù)寫滿信號(hào)。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述步驟A中讀或?qū)慒IFO模塊根據(jù)接收到的控制信息,獲取BURST長度。
3.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,在所述步驟A中,所述BURST的長度為2n,n為大于等于1的整數(shù)。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,在所述步驟A中,所述讀或?qū)慒IFO模塊根據(jù)獲取的BURST長度配置讀寫地址指針的步驟包括所述讀或?qū)慒IFO模塊取正常讀寫模式下的N位讀地址指針的高N-n位;所述讀或?qū)慒IFO模塊取正常讀寫模式下的N位寫地址指針的高N-n位。
5.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述讀或?qū)慒IFO模塊根據(jù)獲取的BURST長度配置所述讀地址指針的步驟為所述讀或?qū)慒IFO模塊將正常讀寫模式下的N位讀地址指針右移n位,對(duì)右移后的讀地址指針的高n位補(bǔ)零;所述讀或?qū)慒IFO模塊根據(jù)獲取的所述BURST長度,配置所述寫地址指針的步驟為所述讀或?qū)慒IFO模塊將正常讀寫模式下的N位寫地址指針右移n位,對(duì)右移后的寫地址指針的高n位補(bǔ)零。
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述步驟B具體包括當(dāng)讀地址指針等于寫地址指針時(shí),讀或?qū)慒IFO模塊產(chǎn)生數(shù)據(jù)讀空信號(hào);當(dāng)寫地址指針和讀地址指針之差與BURST長度的乘積,等于所述FIFO深度時(shí),讀或?qū)慒IFO模塊產(chǎn)生數(shù)據(jù)寫滿信號(hào)。
7.根據(jù)權(quán)利要求6所述的方法,其特征在于,所述步驟B后進(jìn)一步包括當(dāng)所述寫FIFO模塊產(chǎn)生數(shù)據(jù)讀空信號(hào)時(shí),將所述信號(hào)發(fā)送給直接內(nèi)存存取DMA控制模塊,通知所述DMA控制模塊不能再從自身讀取數(shù)據(jù);當(dāng)所述讀FIFO模塊產(chǎn)生數(shù)據(jù)讀空信號(hào)時(shí),將所述信號(hào)發(fā)送給功能模塊,通知所述功能模塊不能再從自身讀取數(shù)據(jù);當(dāng)所述寫FIFO模塊產(chǎn)生數(shù)據(jù)寫滿信號(hào)時(shí),將所述信號(hào)發(fā)送給功能模塊,通知所述功能模塊不能再向自身寫入數(shù)據(jù);當(dāng)所述讀FIFO模塊產(chǎn)生數(shù)據(jù)寫滿信號(hào)時(shí),將所述數(shù)據(jù)寫滿信號(hào)發(fā)送給DMA控制模塊,通知所述DMA控制模塊不能再向自身寫入數(shù)據(jù)。
8.一種突發(fā)機(jī)制下實(shí)現(xiàn)數(shù)據(jù)讀寫控制的裝置,該裝置為讀或?qū)慒IFO模塊,包括雙端口存儲(chǔ)器,用于根據(jù)寫地址指針和讀地址指針,進(jìn)行數(shù)據(jù)存儲(chǔ)操作;其特征在于,該裝置進(jìn)一步包括讀或?qū)懙刂樊a(chǎn)生邏輯和讀空或?qū)憹M信號(hào)產(chǎn)生邏輯;所述讀或?qū)懙刂樊a(chǎn)生邏輯,用于獲取BURST長度,根據(jù)獲取的所述BURST長度配置讀地址指針和寫地址指針,將配置的讀地址指針和寫地址指針發(fā)送給讀空或?qū)憹M信號(hào)產(chǎn)生邏輯和所述雙端口存儲(chǔ)器;所述讀空或?qū)憹M信號(hào)產(chǎn)生邏輯,用于接收所述讀地址指針和寫地址指針,根據(jù)讀地址指針、寫地址指針產(chǎn)生數(shù)據(jù)讀空信號(hào),將所述數(shù)據(jù)讀空信號(hào)發(fā)送出去;根據(jù)讀地址指針、寫地址指針、BURST長度和讀寫FIFO深度產(chǎn)生數(shù)據(jù)寫滿信號(hào),將所述數(shù)據(jù)寫滿信號(hào)發(fā)送出去。
9.根據(jù)權(quán)利要求8所述的裝置,其特征在于,該裝置進(jìn)一步包括BURST長度配置寄存器,用于將BURST的長度配置為2n,n為大于等于1的整數(shù),將配置的所述BURST的長度發(fā)送給所述讀或?qū)懙刂樊a(chǎn)生邏輯。
10.根據(jù)權(quán)利要求8所述的裝置,其特征在于,該裝置進(jìn)一步包括DMA控制模塊和功能模塊,所述DMA控制模塊,當(dāng)接收到所述寫FIFO模塊中的讀空或?qū)憹M信號(hào)產(chǎn)生邏輯發(fā)出的數(shù)據(jù)讀空信號(hào)時(shí),不再從該寫FIFO模塊讀取數(shù)據(jù);當(dāng)接收到所述讀FIFO模塊中的讀空或?qū)憹M信號(hào)產(chǎn)生邏輯發(fā)出的數(shù)據(jù)寫滿信號(hào)時(shí),不再向該讀FIFO模塊中寫入數(shù)據(jù);所述功能模塊,當(dāng)接收到所述寫FIFO模塊中的讀空或?qū)憹M信號(hào)產(chǎn)生邏輯發(fā)出的數(shù)據(jù)寫滿信號(hào)時(shí),不再向該寫FIFO模塊寫入數(shù)據(jù);當(dāng)接收到所述讀FIFO模塊中的讀空或?qū)憹M信號(hào)產(chǎn)生邏輯發(fā)出的數(shù)據(jù)讀空信號(hào)時(shí),不再從該讀FIFO模塊讀取數(shù)據(jù)。
全文摘要
本發(fā)明提供一種突發(fā)機(jī)制下實(shí)現(xiàn)數(shù)據(jù)讀寫控制的方法,該方法包括以下步驟A.讀或?qū)慒IFO模塊根據(jù)獲取的BURST長度配置讀寫地址指針;B.讀或?qū)慒IFO模塊根據(jù)讀地址指針、寫地址指針產(chǎn)生數(shù)據(jù)讀空信號(hào),讀或?qū)慒IFO模塊根據(jù)讀地址指針、寫地址指針、BURST長度和讀寫FIFO深度產(chǎn)生數(shù)據(jù)寫滿信號(hào)。本發(fā)明同時(shí)還提供了一種突發(fā)機(jī)制下實(shí)現(xiàn)數(shù)據(jù)讀寫控制的裝置,本發(fā)明采用FIFO模式來保證數(shù)據(jù)傳輸?shù)膶?shí)時(shí)性的同時(shí),實(shí)現(xiàn)了讀或?qū)慒IFO模塊在BURST傳輸機(jī)制下對(duì)數(shù)據(jù)讀寫的控制。
文檔編號(hào)G06F13/28GK1971543SQ200610162318
公開日2007年5月30日 申請(qǐng)日期2006年12月11日 優(yōu)先權(quán)日2006年12月11日
發(fā)明者呂品 申請(qǐng)人:北京中星微電子有限公司