欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種動(dòng)態(tài)自管理緩沖區(qū)的制作方法

文檔序號(hào):6547225閱讀:175來源:國知局
專利名稱:一種動(dòng)態(tài)自管理緩沖區(qū)的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及緩沖區(qū)技術(shù)領(lǐng)域,特別是指一種動(dòng)態(tài)自管理緩沖區(qū)。
背景技術(shù)
在硬件設(shè)計(jì)中,經(jīng)常應(yīng)用可編程邏輯器件(FPGA)來完成各種算法處理、復(fù)雜接口時(shí)序轉(zhuǎn)換等。而在FPGA內(nèi)部,不同的功能子模塊(或稱為邏輯單元)之間在傳輸數(shù)據(jù)時(shí)會(huì)存在跨時(shí)鐘域問題導(dǎo)致數(shù)據(jù)傳輸失敗。例如FPGA內(nèi)部的邏輯接口模塊與內(nèi)部模塊的處理時(shí)鐘不一致,會(huì)導(dǎo)致數(shù)據(jù)無法在兩個(gè)邏輯單元之間正常傳輸。
目前,通常采取緩沖區(qū)隔離的方式來解決跨時(shí)鐘域的問題,緩沖區(qū)可采用FIFO或DPRAM實(shí)現(xiàn)。其中FIFO具有地址自增功能,因此外部無須提供地址線,但缺點(diǎn)是必須進(jìn)行連續(xù)地址讀寫。DPRAM操作比較靈活,可以對(duì)任意地址進(jìn)行讀寫,但由于需要地址記錄過程,其讀寫控制相對(duì)復(fù)雜一些。
如圖1示出了緩沖區(qū)讀寫邏輯圖,緩沖區(qū)有兩個(gè)端口,其中一個(gè)端口與邏輯接口模塊關(guān)聯(lián),實(shí)現(xiàn)數(shù)據(jù)的寫入,另一個(gè)端口與邏輯內(nèi)部其他模塊關(guān)聯(lián),實(shí)現(xiàn)數(shù)據(jù)的讀出。緩沖區(qū)不僅應(yīng)用在邏輯接口部分來解決跨時(shí)鐘的問題,在邏輯內(nèi)部其它模塊也被大量使用,如進(jìn)行數(shù)據(jù)寬度的轉(zhuǎn)換,或者數(shù)據(jù)結(jié)構(gòu)的調(diào)整等。
對(duì)于緩沖區(qū)來說,一般的,外部輸入的數(shù)據(jù)具有一定的數(shù)據(jù)格式,以ATM信元為例,其長度是固定的53字節(jié),緩沖區(qū)的大小要保證能夠存放一個(gè)完整信元,將用于存放該信元的這個(gè)空間稱做一個(gè)BANK。在這個(gè)例子中,BANK的大小至少應(yīng)是53字節(jié)。實(shí)際應(yīng)用中需要根據(jù)接入的數(shù)據(jù)格式,數(shù)據(jù)線寬度確定BANK的大小。
目前緩沖區(qū)的讀寫一般多采用乒乓方式。如圖2示出了乒乓緩沖區(qū)實(shí)現(xiàn)框圖,采用物理上獨(dú)立的兩個(gè)BANK,對(duì)兩個(gè)BANK交替進(jìn)行讀寫操作。接口模塊先寫B(tài)ANK0,寫滿后再切換到BANK1,當(dāng)接口模塊寫B(tài)ANK1時(shí),內(nèi)部模塊從BANK0讀數(shù)據(jù),然后進(jìn)行交替,周而復(fù)始。緩沖區(qū)的讀寫控制管理由與緩沖區(qū)相連的外部模塊控制,因此緩沖區(qū)各個(gè)功能的實(shí)現(xiàn)和外部模塊的關(guān)聯(lián)很緊密,而存在如下缺點(diǎn)1、緩沖區(qū)的管理復(fù)雜對(duì)與緩沖區(qū)相連的外部模塊來說,必須與緩沖區(qū)兩個(gè)BANK關(guān)聯(lián),并提供相應(yīng)的控制信號(hào)。BANK的切換由發(fā)起操作者控制完成,緩沖區(qū)自身對(duì)切換不提供任何保護(hù)機(jī)制。
2、邏輯資源浪費(fèi)緩沖區(qū)一般采用邏輯內(nèi)部的內(nèi)嵌存儲(chǔ)塊(ESB)實(shí)現(xiàn),每個(gè)ESB大小固定,構(gòu)造一個(gè)物理BANK至少需要一個(gè)ESB,即使沒有使用全部ESB資源也要求一個(gè)BANK占用一個(gè)ESB,這樣對(duì)ESB的實(shí)際利用率較低。
3、擴(kuò)展性較差如果希望擴(kuò)展BANK數(shù)目,將極大增加管理復(fù)雜度前面已經(jīng)提到,這種緩沖區(qū)要求每個(gè)BANK對(duì)應(yīng)一個(gè)物理的ESB實(shí)體,因此會(huì)有獨(dú)立的控制總線、數(shù)據(jù)總線,這樣每增加一個(gè)BANK就將多引入一組總線,會(huì)導(dǎo)致緩沖區(qū)管理更復(fù)雜,并會(huì)進(jìn)一步帶來邏輯資源的浪費(fèi)。

發(fā)明內(nèi)容
有鑒于此,本發(fā)明的主要目的在于提供一種動(dòng)態(tài)自管理緩沖區(qū),以簡(jiǎn)化外部模塊對(duì)緩沖區(qū)的管理,對(duì)于外部接口來說,不必關(guān)心緩沖區(qū)內(nèi)部BANK結(jié)構(gòu)。
本發(fā)明提供的動(dòng)態(tài)自管理緩沖區(qū),包括控制模塊和緩存模塊,緩存模塊劃分為多個(gè)BANK空間;控制模塊用于接收外部的讀寫信號(hào),控制數(shù)據(jù)寫入/讀出緩存模塊的各個(gè)BANK中,以及用于對(duì)緩存模塊內(nèi)部BANK進(jìn)行配置。
其中,所述控制模塊包括寫接口模塊、讀接口模塊、參數(shù)配置模塊;寫接口模塊用于接收外部的寫數(shù)據(jù)信號(hào),控制數(shù)據(jù)寫入緩存模塊的BANK;讀接口模塊用于接收外部的讀數(shù)據(jù)信號(hào),控制數(shù)據(jù)讀出緩存模塊的BANK;參數(shù)配置模塊用于將配置參數(shù)傳遞給緩存模塊進(jìn)行配置,以及將配置參數(shù)傳遞給讀接口模塊和寫接口模塊以配合讀寫。
其中,所述寫接口模塊包括BANK狀態(tài)控制模塊、BANK切換控制模塊、地址組合模塊、相與模塊;BANK狀態(tài)控制模塊用于根據(jù)當(dāng)前BANK空滿的狀態(tài),生成指示是否可寫緩沖區(qū)的信號(hào),以及生成寫狀態(tài)信號(hào)發(fā)送給BANK切換控制模塊,還生成輸出到外部的緩沖區(qū)空滿指示信號(hào);相與模塊,用于接收外部的寫使能信號(hào)和BANK狀態(tài)控制模塊生成的是否可寫緩沖區(qū)的信號(hào)進(jìn)行相與,生成指示對(duì)緩存模塊的寫使能信號(hào);BANK切換控制模塊,用于接收外部寫數(shù)據(jù)狀態(tài)指示信號(hào),并根據(jù)接收的BANK狀態(tài)控制模塊的寫狀態(tài)信號(hào),生成控制BANK切換的信號(hào);地址組合模塊,用于接收外部的寫地址信號(hào)和BANK切換控制模塊生成的控制BANK切換的信號(hào)組合成寫緩存模塊的地址指示信號(hào)。
其中,所述讀接口模塊包括BANK狀態(tài)控制模塊、BANK切換控制模塊、地址組合模塊、相與模塊;BANK狀態(tài)控制模塊用于根據(jù)當(dāng)前BANK空滿的狀態(tài),生成指示是否可讀緩沖區(qū)的信號(hào),以及生成讀狀態(tài)信號(hào)發(fā)送給BANK切換控制模塊,還生成輸出到外部的緩沖區(qū)空滿指示信號(hào);相與模塊,用于接收外部的讀使能信號(hào)和BANK狀態(tài)控制模塊生成的是否可讀緩沖區(qū)的信號(hào)進(jìn)行相與,生成指示對(duì)緩存模塊的讀使能信號(hào);BANK切換控制模塊,用于接收外部讀數(shù)據(jù)狀態(tài)指示信號(hào),并根據(jù)接收的BANK狀態(tài)控制模塊的讀狀態(tài)信號(hào),生成控制BANK切換的信號(hào);地址組合模塊,用于接收外部的讀地址信號(hào)和BANK切換控制模塊生成的控制BANK切換的信號(hào)組合成讀緩存模塊的地址指示信號(hào)。
其中,所述參數(shù)配置模塊將配置參數(shù)傳遞給緩存模塊的接口包括緩存數(shù)BUFFER_NUM和緩存地址寬度BUFFER_ADDR_WIDTH接口,用于將對(duì)BANK數(shù)目的配置信息傳輸給緩存模塊;總線寬度BUS_WIDTH接口,用于將對(duì)每個(gè)BANK的數(shù)據(jù)寬度的配置信息傳輸給緩存模塊;地址寬度ADDR_WIDTH接口,用于將對(duì)每個(gè)BANK的數(shù)據(jù)深度的配置信息傳輸給緩存模塊。
由上述方法可以看出,本發(fā)明提供了一種緩沖區(qū)模塊,對(duì)外部模塊提供統(tǒng)一接口,所有BANK切換由緩沖區(qū)自行管理,實(shí)現(xiàn)自管理特性,不需要相連的模塊進(jìn)行控制,因而操作者無須關(guān)心緩沖區(qū)內(nèi)部BANK結(jié)構(gòu),簡(jiǎn)化了對(duì)緩沖區(qū)的管理,從而對(duì)簡(jiǎn)化邏輯設(shè)計(jì)帶來便利。此外,還提供靈活的BANK寫終止操作接口,可以實(shí)現(xiàn)及時(shí)丟棄無效數(shù)據(jù),避免緩沖區(qū)空間浪費(fèi)。
本發(fā)明提供的緩沖區(qū)模塊具有動(dòng)態(tài)自管理特性,可以根據(jù)需要靈活配置內(nèi)部的BANK數(shù)量、大小,適應(yīng)各種應(yīng)用場(chǎng)合。由于BANK的大小、數(shù)據(jù)寬度及數(shù)目都可以通過參數(shù)設(shè)置進(jìn)行動(dòng)態(tài)調(diào)整,因此BANK的擴(kuò)展非常便捷。
緩沖區(qū)采用一個(gè)物理實(shí)體,類型可為DPRAM。在內(nèi)部進(jìn)行緩沖區(qū)的參數(shù)化進(jìn)行BANK劃分,可以將多個(gè)BANK置于同一個(gè)ESB中,從而可以最大限度利用ESB所提供的資源,節(jié)省了邏輯內(nèi)部資源,提高資源利用率。


圖1為緩沖區(qū)讀寫邏輯圖。
圖2為乒乓緩沖區(qū)實(shí)現(xiàn)框3為本發(fā)明緩沖區(qū)結(jié)構(gòu)圖。
圖4為本發(fā)明寫接口模塊結(jié)構(gòu)圖。
圖5為本發(fā)明讀接口模塊結(jié)構(gòu)圖。
具體實(shí)施例方式
本發(fā)明提供了一種新的緩沖區(qū),緩沖區(qū)對(duì)外部模塊提供統(tǒng)一接口,操作者無須關(guān)心緩沖區(qū)內(nèi)部BANK結(jié)構(gòu),所有BANK切換由緩沖區(qū)自行管理。
如圖3示出的本發(fā)明緩沖區(qū)結(jié)構(gòu)圖,包括控制模塊(Control Module)和緩存模塊(Buffer)。緩存模塊內(nèi)部劃分為多個(gè)BANK;由控制模塊控制對(duì)BANK的讀、寫,以及對(duì)緩存模塊內(nèi)部BANK的配置??刂颇K進(jìn)一步包括寫接口模塊、讀接口模塊、參數(shù)配置模塊。所有緩沖區(qū)內(nèi)部管理統(tǒng)一由該控制模塊進(jìn)行控制,包括實(shí)現(xiàn)BANK參數(shù)配置、BANK空滿標(biāo)志生成、BANK自動(dòng)切換、BANK的讀寫等。下面進(jìn)行詳細(xì)說明。
如圖3所示,參數(shù)配置模塊向外提供了參數(shù)配置接口,以接收配置信息對(duì)緩存模塊進(jìn)行參數(shù)化配置。從而,本發(fā)明緩沖區(qū)應(yīng)用到不同場(chǎng)合時(shí),通過接收不同的配置信息初始化緩存模塊,可實(shí)現(xiàn)對(duì)緩存模塊內(nèi)部BANK的不同配置,以保證外部數(shù)據(jù)和BANK大小的匹配。參數(shù)配置模塊通過表1示出的接口(也可以說是參數(shù))將配置參數(shù)傳遞給緩沖模塊初始化成需要的結(jié)構(gòu),其中BUFFER_NUM(緩存數(shù))和BUFFER_ADDR_WIDTH(緩存地址寬度)用于控制緩存模塊對(duì)BANK數(shù)目的配置,BUS_WIDTH(總線寬度)及ADDR_WIDTH(地址寬度)分別用于控制緩存模塊對(duì)每個(gè)BANK的數(shù)據(jù)寬度及深度的配置,BUFFER_CLK_TYPE(緩存時(shí)鐘類型)用于指明讀接口模塊和寫接口模塊的時(shí)鐘關(guān)系。

表1參數(shù)配置模塊還通過相應(yīng)接口將配置的表1參數(shù)發(fā)送給寫接口模塊、讀接口模塊,寫接口模塊和讀接口模塊根據(jù)配置參數(shù)得知BANK的大小、數(shù)量、寬度、深度等,用于控制對(duì)BANK的寫入和讀取過程。
如圖4所示,寫接口模塊由BANK切換控制模塊、BANK狀態(tài)控制模塊、地址組合模塊、相與模塊組成。
BANK切換控制模塊接收外部的Wr_end(寫結(jié)束)、Wr_cancel(寫取消)信號(hào)和BANK狀態(tài)控制模塊發(fā)送的Wr_stage(寫狀態(tài))信號(hào),來控制Bank_sel(選BANK)信號(hào)的變化。其中Wr_end是用來指示當(dāng)前BANK寫操作正常結(jié)束信號(hào),通知BANK切換控制模塊進(jìn)行BANK切換。Wr_cancel是用來指示當(dāng)前BANK寫無效信號(hào),用于回收當(dāng)前BANK。Wr_stage用來表示當(dāng)前是否處于對(duì)緩沖區(qū)的“寫狀態(tài)”。Bank_sel用來指示當(dāng)前正在操作的BANK。
若BANK切換控制模塊接收的Wr_stage為“寫狀態(tài)”(可以認(rèn)為BANK切換控制模塊在監(jiān)控當(dāng)前是否處于寫狀態(tài)),并接收到的Wr_end信號(hào)有效時(shí),表示當(dāng)前外部在寫緩沖區(qū)并且寫B(tài)ANK正常結(jié)束,此時(shí)BANK切換控制模塊遞增Bank_sel指向下一個(gè)BANK,完成寫過程中BANK的切換。若寫過程中(即Wr_stage為“寫狀態(tài)”),接收的Wr_cancel信號(hào)有效(如該信號(hào)平時(shí)為低電平無效,跳變?yōu)楦唠娖接行?,表示終止當(dāng)前BANK的寫入操作,BANK切換控制模塊保持Bank_sel為原值,不切換BANK。
地址組合模塊接收Bank_sel和Wr_addr信號(hào),組合后輸出Buf_wr_addr信號(hào),來指示向緩存模塊的哪個(gè)實(shí)際物理地址寫數(shù)據(jù)。對(duì)外部模塊來說,Wr_addr索引范圍是一個(gè)BANK的地址空間,需要通過處理轉(zhuǎn)換成緩存模塊實(shí)際的物理地址Buf_wr_addr來寫入數(shù)據(jù)。本發(fā)明中Bank_sel是地址的高位,對(duì)應(yīng)BANK的基址,Wr_addr對(duì)應(yīng)BANK的偏移地址,由地址組合模塊接收Bank_sel和Wr_addr信號(hào)進(jìn)行基址和偏移地址的組合(類似于字符串相加的計(jì)算方法,例如Bank_sel和Wr_addr地址分別為AAAA、BBBB,則組合后地址為“AAAABBBB”),便可以確定出要寫入的緩存模塊的物理地址Buf_wr_addr了。
在實(shí)際應(yīng)用中,初始化時(shí)Bank_sel指向第一個(gè)BANK。BANK的數(shù)量由參數(shù)配置模塊提供給BANK切換模塊,Bank_sel的遞增變換由BANK切換模塊控制,對(duì)外部模塊來說,在確定Wr_addr后,具體BANK的寫入由BANK切換模塊控制,不需要外部接口去控制要寫入哪個(gè)BANK,進(jìn)而不需要外部模塊考慮BANK的結(jié)構(gòu)、BANK的切換問題了。
BANK狀態(tài)控制模塊接收BANK切換控制模塊的Bank_sel,F(xiàn)lag_bank信號(hào),生成Buf_free,用于指示緩沖區(qū)內(nèi)部是否有空BANK,還提供接口接收外部Wr_en信號(hào),以及將表示寫B(tài)ANK狀態(tài)的Wr_stage發(fā)送給BANK切換控制模塊,還生成Wr_enable,和接收的Wr_en通過相與模塊生成Buffer_wr_en送給buffer,控制是否可寫入BANK。Flag_bank是映射的BANK的空滿指示信號(hào),會(huì)在后面進(jìn)行介紹。
下面對(duì)BANK切換控制模塊、BANK狀態(tài)控制模塊的工作原理進(jìn)行詳細(xì)描述。
當(dāng)接收的外部Wr_en信號(hào)有效開始寫buffer的狀態(tài)時(shí),BANK狀態(tài)控制模塊將“寫狀態(tài)”信號(hào)通過Wr_stage接口(信號(hào))通知BANK切換控制模塊,當(dāng)Wr_en信號(hào)無效,則將“空閑狀態(tài)”通過Wr_stage通知BANK切換控制模塊。這樣BANK切換控制模塊可以得知當(dāng)前是否在寫緩存狀態(tài),當(dāng)在寫狀態(tài)時(shí),根據(jù)Wr_end控制進(jìn)行Bank_sel的遞增實(shí)現(xiàn)Bank的切換(每接收一個(gè)Wr_end,則Bank_sel指向下一個(gè)),而非寫數(shù)據(jù)時(shí),則BANK不動(dòng)作,避免誤切換,也就是說,Wr_stage類似BANK切換控制的使能信號(hào)。
對(duì)于BANK狀態(tài)控制模塊,外部的寫使能Wr_en與Wr_enable相與生成Buffer_wr_en,來指示當(dāng)前是否可寫入緩存buffer,其中Wr_enable與當(dāng)前BANK狀態(tài)關(guān)聯(lián),當(dāng)前BANK為空閑時(shí)該信號(hào)有效,從而防止對(duì)緩沖模塊當(dāng)前BANK的誤寫入。
每個(gè)BANK對(duì)應(yīng)一個(gè)空滿指示信號(hào)Flag_bank,分別用0和1表示空滿狀態(tài),在初始化時(shí),全部為0。Buf_free是輸出到外部表示整個(gè)緩沖模塊狀態(tài)信號(hào),如果該信號(hào)為0表示內(nèi)部BANK有空閑,可以寫入數(shù)據(jù)。初始化時(shí)內(nèi)部所有BANK均為空閑,將BANK0的狀態(tài)Flag_bank0映射到Buf_free上,當(dāng)外部模塊向BANK0寫入數(shù)據(jù)后,也就是傳遞過來的Bank_sel信號(hào)進(jìn)行了遞增,就將BANK1的狀態(tài)Flag_bank1映射到Buf_free上,以此類推,當(dāng)操作到最后一個(gè)BANK時(shí),下一個(gè)循環(huán)回BANK0??梢哉f,Buf_free是下一個(gè)要寫的BANK的狀態(tài)的映射,用于通知外部模塊是否還有空閑的BANK,并在寫后修改所寫入的BANK的Flag_bank狀態(tài)值為有數(shù)據(jù)(為1表示滿狀態(tài))。
這里需要說明的是,F(xiàn)lag_bank也同樣映射到讀接口模塊上,讀接口根據(jù)空滿狀態(tài)值確定緩存的BANK中是否有數(shù)據(jù)讀取,讀出數(shù)據(jù)后并修改對(duì)應(yīng)BANK的Flag_bank狀態(tài)值為空狀態(tài)。
以上可以看出,控制模塊對(duì)緩沖區(qū)內(nèi)部每個(gè)BANK空滿指示信號(hào)集中處理,生成對(duì)外統(tǒng)一輸出的空滿指示信號(hào)Buf_free,外部模塊只需根據(jù)這個(gè)信號(hào)決定是否進(jìn)行寫操作,無須關(guān)注內(nèi)部各個(gè)BANK的狀態(tài)。
Wr_stage是當(dāng)前寫緩沖區(qū)的狀態(tài)指示,當(dāng)接收Wr_en信號(hào)時(shí),表示外部在寫緩存,則將Wr_stage信號(hào)表示為寫狀態(tài)發(fā)送給BANK切換裝置,使能該BANK切換裝置有效,BANK切換裝置便可根據(jù)Wr_end控制進(jìn)行切換。
參見圖5示出的讀接口模塊,讀接口與寫接口模塊的結(jié)構(gòu)相同,讀原理和寫原理基本相同,故不再詳述,僅簡(jiǎn)述不同之處
a、對(duì)應(yīng)的寫操作變?yōu)樽x操作;b、對(duì)一個(gè)BANK讀數(shù)據(jù)時(shí),所依據(jù)的Flag_bank是該BANK在寫數(shù)據(jù)后更新后的Flag_bank,F(xiàn)lag_bank映射到Buf_full,當(dāng)Buf_ful有效時(shí)(Flag_bank為滿標(biāo)志),表示要讀取的下一個(gè)BANK有數(shù)據(jù);并在讀數(shù)據(jù)后,再次更新該BANK對(duì)應(yīng)的FlagFlag_bankbank為空;c、由于讀操作不需要回收BANK,因此不提供Rd_cancel信號(hào)。
由上可以看出,本發(fā)明緩沖區(qū)由多個(gè)BANK組成,每個(gè)BANK大小、數(shù)據(jù)寬度以及BANK數(shù)目通過參數(shù)可以調(diào)整,以應(yīng)用到不同的場(chǎng)合需求,該緩沖區(qū)可以使用DPRAM來實(shí)現(xiàn)。并且緩沖區(qū)內(nèi)部多個(gè)BANK由控制模塊完全自行管理,包括控制BANK填充過程,通過寫取消信號(hào)回退指針,無效當(dāng)前已寫入BANK中數(shù)據(jù);BANK讀寫完成后自動(dòng)切換;緩沖區(qū)對(duì)外部輸出空、滿指示信號(hào),表明是否可以讀寫緩沖區(qū),任何外部讀、寫操作在緩沖區(qū)內(nèi)部被轉(zhuǎn)換成針對(duì)相應(yīng)BANK的操作。外部接口看不到BANK的劃分,外部模塊對(duì)緩沖區(qū)的操作就像只有一個(gè)BANK。
本發(fā)明緩沖區(qū)對(duì)外部模塊提供統(tǒng)一接口,操作者無須關(guān)心緩沖區(qū)內(nèi)部BANK結(jié)構(gòu),所有BANK切換由緩沖區(qū)自行管理,從而可以使與緩沖區(qū)相連的單元不用去對(duì)緩沖區(qū)進(jìn)行控制,簡(jiǎn)化邏輯單元的設(shè)計(jì)。多BANK的緩沖區(qū)設(shè)計(jì),也不會(huì)造成與外部邏輯單元連接的復(fù)雜性。
以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種動(dòng)態(tài)自管理緩沖區(qū),其特征在于,包括控制模塊和緩存模塊,緩存模塊劃分為多個(gè)BANK空間;控制模塊用于接收外部的讀寫信號(hào),控制數(shù)據(jù)寫入/讀出緩存模塊的各個(gè)BANK中,以及用于對(duì)緩存模塊內(nèi)部BANK進(jìn)行配置。
2.根據(jù)權(quán)利要求1所述的裝置,其特征在于,所述控制模塊包括寫接口模塊、讀接口模塊、參數(shù)配置模塊;寫接口模塊用于接收外部的寫數(shù)據(jù)信號(hào),控制數(shù)據(jù)寫入緩存模塊的BANK;讀接口模塊用于接收外部的讀數(shù)據(jù)信號(hào),控制數(shù)據(jù)讀出緩存模塊的BANK;參數(shù)配置模塊用于將配置參數(shù)傳遞給緩存模塊進(jìn)行配置,以及將配置參數(shù)傳遞給讀接口模塊和寫接口模塊以配合讀寫。
3.根據(jù)權(quán)利要求2所述的裝置,其特征在于,所述寫接口模塊包括BANK狀態(tài)控制模塊、BANK切換控制模塊、地址組合模塊、相與模塊;BANK狀態(tài)控制模塊用于根據(jù)當(dāng)前BANK空滿的狀態(tài),生成指示是否可寫緩沖區(qū)的信號(hào),以及生成寫狀態(tài)信號(hào)發(fā)送給BANK切換控制模塊,還生成輸出到外部的緩沖區(qū)空滿指示信號(hào);相與模塊,用于接收外部的寫使能信號(hào)和BANK狀態(tài)控制模塊生成的是否可寫緩沖區(qū)的信號(hào)進(jìn)行相與,生成指示對(duì)緩存模塊的寫使能信號(hào);BANK切換控制模塊,用于接收外部寫數(shù)據(jù)狀態(tài)指示信號(hào),并根據(jù)接收的BANK狀態(tài)控制模塊的寫狀態(tài)信號(hào),生成控制BANK切換的信號(hào);地址組合模塊,用于接收外部的寫地址信號(hào)和BANK切換控制模塊生成的控制BANK切換的信號(hào)組合成寫緩存模塊的地址指示信號(hào)。
4.根據(jù)權(quán)利要求2所述的裝置,其特征在于,所述讀接口模塊包括BANK狀態(tài)控制模塊、BANK切換控制模塊、地址組合模塊、相與模塊;BANK狀態(tài)控制模塊用于根據(jù)當(dāng)前BANK空滿的狀態(tài),生成指示是否可讀緩沖區(qū)的信號(hào),以及生成讀狀態(tài)信號(hào)發(fā)送給BANK切換控制模塊,還生成輸出到外部的緩沖區(qū)空滿指示信號(hào);相與模塊,用于接收外部的讀使能信號(hào)和BANK狀態(tài)控制模塊生成的是否可讀緩沖區(qū)的信號(hào)進(jìn)行相與,生成指示對(duì)緩存模塊的讀使能信號(hào);BANK切換控制模塊,用于接收外部讀數(shù)據(jù)狀態(tài)指示信號(hào),并根據(jù)接收的BANK狀態(tài)控制模塊的讀狀態(tài)信號(hào),生成控制BANK切換的信號(hào);地址組合模塊,用于接收外部的讀地址信號(hào)和BANK切換控制模塊生成的控制BANK切換的信號(hào)組合成讀緩存模塊的地址指示信號(hào)。
5.根據(jù)權(quán)利要求2所述的裝置,其特征在于,所述參數(shù)配置模塊將配置參數(shù)傳遞給緩存模塊的接口包括緩存數(shù)BUFFER_NUM和緩存地址寬度BUFFER_ADDR_WIDTH接口,用于將對(duì)BANK數(shù)目的配置信息傳輸給緩存模塊;總線寬度BUS_WIDTH接口,用于將對(duì)每個(gè)BANK的數(shù)據(jù)寬度的配置信息傳輸給緩存模塊;地址寬度ADDR_WIDTH接口,用于將對(duì)每個(gè)BANK的數(shù)據(jù)深度的配置信息傳輸給緩存模塊。
6.根據(jù)權(quán)利要求1所述的裝置,其特征在于,所述緩存模塊為DPRAM實(shí)體。
全文摘要
本發(fā)明提供了一種動(dòng)態(tài)自管理緩沖區(qū),包括控制模塊和緩存模塊,緩存模塊劃分為多個(gè)BANK空間;控制模塊用于接收外部的讀寫信號(hào),控制數(shù)據(jù)寫入/讀出緩存模塊的各個(gè)BANK中,以及用于對(duì)緩存模塊內(nèi)部BANK進(jìn)行配置??刂颇K還包括寫接口模塊、讀接口模塊、參數(shù)配置模塊;寫接口模塊用于接收外部的寫數(shù)據(jù)信號(hào),控制數(shù)據(jù)寫入緩存模塊的BANK;讀接口模塊用于接收外部的讀數(shù)據(jù)信號(hào),控制數(shù)據(jù)讀出緩存模塊的BANK;參數(shù)配置模塊用于將配置參數(shù)傳遞給緩存模塊進(jìn)行配置,以及將配置參數(shù)傳遞給寫接口模塊、讀接口模塊。使用本發(fā)明,可以簡(jiǎn)化外部模塊對(duì)緩沖區(qū)的管理,對(duì)于外部接口來說,不必關(guān)心緩沖區(qū)內(nèi)部BANK結(jié)構(gòu)。
文檔編號(hào)G06F3/06GK1851633SQ200510066328
公開日2006年10月25日 申請(qǐng)日期2005年4月22日 優(yōu)先權(quán)日2005年4月22日
發(fā)明者段勇 申請(qǐng)人:華為技術(shù)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
苍山县| 翁牛特旗| 景谷| 尤溪县| 乌拉特后旗| 萝北县| 新兴县| 普兰店市| 儋州市| 伊川县| 将乐县| 鄂伦春自治旗| 谢通门县| 古蔺县| 沭阳县| 双流县| 镇赉县| 株洲县| 隆昌县| 长治县| 万载县| 亚东县| 庄浪县| 鸡西市| 房产| 精河县| 湄潭县| 浦北县| 神农架林区| 东兴市| 郎溪县| 曲水县| 花垣县| 迁安市| 洛阳市| 贞丰县| 安新县| 碌曲县| 黔西县| 丰原市| 汝南县|