存儲(chǔ)器訪問(wèn)控制模塊以及相關(guān)方法
【技術(shù)領(lǐng)域】
[0001]許多計(jì)算系統(tǒng)可以包括操作在不同的時(shí)鐘頻率上并且具有不同的數(shù)據(jù)總線位大小的組件和/或子系統(tǒng)。例如,計(jì)算系統(tǒng)可以包括操作在比系統(tǒng)總線主控器(master)更高的時(shí)鐘頻率處的處理器。并且,相同的計(jì)算系統(tǒng)可以具有如下系統(tǒng)總線,該系統(tǒng)總線具有比其處理器總線更大的位大小。在該示例計(jì)算系統(tǒng)中,連接到系統(tǒng)總線的處理器和組件兩者將需要訪問(wèn)一定量的計(jì)算機(jī)存儲(chǔ)器(memory,或內(nèi)存)。由于在時(shí)鐘頻率和總線大小上的差異,處理器和系統(tǒng)總線主控器可能需要根據(jù)其各自的時(shí)鐘頻率和總線大小而操作的不同的計(jì)算機(jī)存儲(chǔ)器。但是,使用根據(jù)不同的時(shí)鐘頻率和總線大小而操作的多存儲(chǔ)器器件對(duì)計(jì)算系統(tǒng)增加費(fèi)用和復(fù)雜性。因此,所感興趣的是,處理器和系統(tǒng)總線主控器兩者不論其在時(shí)鐘頻率和總線大小上的差異,都能夠使用共同共享的存儲(chǔ)器器件。在該上下文中產(chǎn)生本發(fā)明。
【發(fā)明內(nèi)容】
[0002]在一實(shí)施例中,公開(kāi)了存儲(chǔ)器訪問(wèn)控制模塊。該存儲(chǔ)器訪問(wèn)控制模塊包括:第一數(shù)據(jù)接口,用于根據(jù)第一數(shù)據(jù)總線位大小和第一時(shí)鐘頻率向第一數(shù)據(jù)通信總線和從第一數(shù)據(jù)通信總線進(jìn)行數(shù)據(jù)傳輸。該存儲(chǔ)器訪問(wèn)控制模塊還包括多個(gè)仲裁模塊,被連接以根據(jù)該第一數(shù)據(jù)總線位大小和該第一時(shí)鐘頻率與該第一數(shù)據(jù)接口進(jìn)行數(shù)據(jù)通信。存儲(chǔ)器訪問(wèn)控制模塊還包括:多個(gè)存儲(chǔ)器區(qū)(bank),被連接以根據(jù)該第一數(shù)據(jù)總線位大小和該第一時(shí)鐘頻率與該多個(gè)仲裁模塊進(jìn)行數(shù)據(jù)通信,使得該多個(gè)存儲(chǔ)器區(qū)的每一個(gè)被連接以與該多個(gè)仲裁模塊中的不同的一個(gè)仲裁模塊進(jìn)行數(shù)據(jù)通信。存儲(chǔ)器訪問(wèn)控制模塊還包括,第二數(shù)據(jù)接口,用于根據(jù)第二數(shù)據(jù)總線位大小和第二時(shí)鐘頻率向第二數(shù)據(jù)通信總線和從第二數(shù)據(jù)通信總線進(jìn)行數(shù)據(jù)傳輸。該第二數(shù)據(jù)總線位大小是該第一數(shù)據(jù)總線位大小的整數(shù)倍。該第一時(shí)鐘頻率是該第二時(shí)鐘頻率的整數(shù)倍。存儲(chǔ)器訪問(wèn)控制模塊還包括:分道器(channelizer)模塊,被連接以根據(jù)該第二數(shù)據(jù)總線位大小和該第二時(shí)鐘頻率與該第二數(shù)據(jù)接口進(jìn)行數(shù)據(jù)通信。該分道器模塊還被連接以根據(jù)該第一數(shù)據(jù)總線位大小和第一時(shí)鐘頻率與該多個(gè)仲裁模塊進(jìn)行數(shù)據(jù)通信。該分道器模塊定義為,在儲(chǔ)存操作期間將從該第二數(shù)據(jù)接口接收的數(shù)據(jù)從該第二數(shù)據(jù)總線位大小分割為該第一數(shù)據(jù)總線位大小的多個(gè)數(shù)據(jù)段。分道器模塊還被定義為,在該儲(chǔ)存操作期間根據(jù)該第一時(shí)鐘頻率將該第一數(shù)據(jù)總線位大小的數(shù)據(jù)段經(jīng)由該多個(gè)仲裁模塊中的相應(yīng)的那些沿各自的數(shù)據(jù)通道發(fā)送到該多個(gè)存儲(chǔ)器區(qū)中的尋址的那些存儲(chǔ)器區(qū)。分道器模塊還被定義為,在加載操作期間根據(jù)該第一數(shù)據(jù)總線位大小和第一時(shí)鐘頻率從該多個(gè)存儲(chǔ)器區(qū)中的尋址的那些存儲(chǔ)器區(qū)經(jīng)由該多個(gè)仲裁模塊中的相應(yīng)的那些接收數(shù)據(jù)。分道器模塊還被定義為,將在該加載操作期間從該多個(gè)存儲(chǔ)器區(qū)接收的數(shù)據(jù)組合為該第二數(shù)據(jù)總線位大小并根據(jù)該第二時(shí)鐘頻率將該第二數(shù)據(jù)總線位大小的組合的數(shù)據(jù)發(fā)送到該第二數(shù)據(jù)接口。
[0003]在另一實(shí)施例中,公開(kāi)了一種用于控制對(duì)存儲(chǔ)器的訪問(wèn)的方法。該方法包括:根據(jù)第一數(shù)據(jù)總線位大小和第一時(shí)鐘頻率從第一數(shù)據(jù)接口接收第一存儲(chǔ)器訪問(wèn)請(qǐng)求。該方法還包括:根據(jù)該第一數(shù)據(jù)總線位大小和該第一時(shí)鐘頻率將該第一存儲(chǔ)器訪問(wèn)請(qǐng)求發(fā)送到對(duì)由該第一存儲(chǔ)器訪問(wèn)請(qǐng)求尋址的存儲(chǔ)器區(qū)負(fù)責(zé)的仲裁模塊。該方法還包括:根據(jù)第二數(shù)據(jù)總線位大小和第二時(shí)鐘頻率從第二數(shù)據(jù)接口接收第二存儲(chǔ)器訪問(wèn)請(qǐng)求。該第二存儲(chǔ)器訪問(wèn)請(qǐng)求是數(shù)據(jù)儲(chǔ)存請(qǐng)求。該第二數(shù)據(jù)總線位大小是該第一數(shù)據(jù)總線位大小的整數(shù)倍。該第一時(shí)鐘頻率是該第二時(shí)鐘頻率的整數(shù)倍。該方法還包括,將該第二數(shù)據(jù)總線位大小的第二存儲(chǔ)器訪問(wèn)請(qǐng)求分割為該第一數(shù)據(jù)總線位大小的數(shù)據(jù)段。該方法還包括:根據(jù)第一時(shí)鐘頻率將該第一數(shù)據(jù)總線位大小的每一個(gè)數(shù)據(jù)段發(fā)送到對(duì)由該第一數(shù)據(jù)總線位大小的數(shù)據(jù)段尋址的存儲(chǔ)器區(qū)負(fù)責(zé)的仲裁模塊。
[0004]本發(fā)明的其它方面和優(yōu)點(diǎn)將從結(jié)合附圖的下述具體的描述中變得更加清晰,該附圖以示例的方式描述本發(fā)明。
【附圖說(shuō)明】
[0005]圖1示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的計(jì)算系統(tǒng)。
[0006]圖2示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的計(jì)算系統(tǒng),其中實(shí)現(xiàn)存儲(chǔ)器訪問(wèn)控制模塊以控制由作為第一存儲(chǔ)器訪問(wèn)器的計(jì)算機(jī)處理器并且由作為第二存儲(chǔ)器訪問(wèn)器的系統(tǒng)總線主控器對(duì)多個(gè)存儲(chǔ)器區(qū)的訪問(wèn)。
[0007]圖3示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的具有更詳細(xì)的存儲(chǔ)器訪問(wèn)控制模塊的示意圖的圖1和2的計(jì)算系統(tǒng)。
[0008]圖4A示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的用于在儲(chǔ)存操作期間操作存儲(chǔ)器訪問(wèn)控制模塊以控制對(duì)存儲(chǔ)器的訪問(wèn)的方法的流程圖。
[0009]圖4B示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的接續(xù)圖4A的用于在加載操作期間操作存儲(chǔ)器訪問(wèn)控制模塊的方法的流程圖。
【具體實(shí)施方式】
[0010]在下述說(shuō)明中,列出多個(gè)具體的細(xì)節(jié)以便提供對(duì)本發(fā)明透徹的理解。但是,對(duì)本領(lǐng)域的技術(shù)人員來(lái)說(shuō)應(yīng)當(dāng)清楚,可以不需要這些具體的細(xì)節(jié)中的一些或者全部而實(shí)施本發(fā)明。在其它情況中,沒(méi)有詳細(xì)地描述了已知的處理操作從而不會(huì)與本發(fā)明不必要地混淆。
[0011]圖1示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的計(jì)算系統(tǒng)100。計(jì)算系統(tǒng)100包括多個(gè)存儲(chǔ)器區(qū)109A-109D和多個(gè)存儲(chǔ)器訪問(wèn)器101、103。存儲(chǔ)器訪問(wèn)器101、103可以是任何類(lèi)型的計(jì)算組件,諸如而不限于,計(jì)算機(jī)處理器、系統(tǒng)總線主控器、或者需要訪問(wèn)計(jì)算機(jī)存儲(chǔ)器的另外的計(jì)算組件。在一實(shí)施例中,第一存儲(chǔ)器訪問(wèn)器101被定義為計(jì)算機(jī)處理器,并且第二存儲(chǔ)器訪問(wèn)器103被定義為系統(tǒng)總線主控器103,通過(guò)該總線主控103,其它計(jì)算組件可以訪問(wèn)多個(gè)存儲(chǔ)器區(qū)109A-109D。盡管圖1以示例的方式示出了四個(gè)存儲(chǔ)器區(qū)109A-109D,但應(yīng)理解的是,其它實(shí)施例本質(zhì)上可以實(shí)現(xiàn)任何數(shù)量的存儲(chǔ)器區(qū)。在一實(shí)施例中,存儲(chǔ)器區(qū)109A-109D的每一個(gè)被定義為靜態(tài)隨機(jī)訪問(wèn)存儲(chǔ)器(SRAM)。但是,應(yīng)理解的是,在其它實(shí)施例中,存儲(chǔ)器區(qū)109A-109D可以被定義為任何類(lèi)型的計(jì)算機(jī)存儲(chǔ)、或者計(jì)算機(jī)存儲(chǔ)器類(lèi)型的任何組合。此外,通過(guò)多個(gè)存儲(chǔ)器區(qū)109A-109D,每一個(gè)存儲(chǔ)器區(qū)109A-109D被配置為包括整體可尋址的存儲(chǔ)器空間的不同的部分。
[0012]對(duì)多個(gè)存儲(chǔ)器區(qū)109A-109D的每一個(gè)的訪問(wèn)由多個(gè)仲裁模塊107A-107D的相應(yīng)的一個(gè)來(lái)控制。如圖1所示,每一個(gè)仲裁模塊107A-107D與存儲(chǔ)器區(qū)109A-109D的相應(yīng)的一個(gè)進(jìn)行雙向數(shù)據(jù)通信,如箭頭113A-113D所表示。在數(shù)據(jù)儲(chǔ)存操作、即數(shù)據(jù)寫(xiě)入操作期間,仲裁模塊 107A-107D 將傳送(communicate)數(shù)據(jù)儲(chǔ)存指令(data store instruct1n)以及將要儲(chǔ)存到其存儲(chǔ)器區(qū)109A-109D的數(shù)據(jù)。在數(shù)據(jù)加載操作、即數(shù)據(jù)讀取操作期間,仲裁模塊107A-107D將會(huì)將數(shù)據(jù)加載指令傳送到其存儲(chǔ)器區(qū)109A-109D并接收所請(qǐng)求的數(shù)據(jù)。
[0013]每一個(gè)仲裁模塊107A-107D被定義為分別控制對(duì)其存儲(chǔ)器區(qū)109A-109D的訪問(wèn),使得在給定時(shí)間時(shí)對(duì)其存儲(chǔ)器區(qū)的多個(gè)訪問(wèn)請(qǐng)求被保持在對(duì)特定的存儲(chǔ)器區(qū)的可允許的規(guī)格內(nèi)。例如,如果存儲(chǔ)器區(qū)109A-109D被定義為一次處理一個(gè)訪問(wèn)請(qǐng)求,則用于存儲(chǔ)器區(qū)109A-109D的仲裁模塊107A-107D將操作以確保存儲(chǔ)器區(qū)109A-109D—次僅被分派一個(gè)訪問(wèn)請(qǐng)求的任務(wù)。在存儲(chǔ)器區(qū)109A-109D繁忙時(shí)到達(dá)仲裁模塊107A-107D處的任何額外的訪問(wèn)請(qǐng)求將被仲裁模塊107A-107D保留直到存儲(chǔ)器區(qū)109A-109D可用以處理下一個(gè)存儲(chǔ)器訪問(wèn)請(qǐng)求。
[0014]第一存儲(chǔ)器訪問(wèn)器101被連接以與仲裁模塊107A-107D的每一個(gè)通信,如箭頭111所示。箭頭111對(duì)應(yīng)于第一數(shù)據(jù)通信總線111。以此方式,第一存儲(chǔ)器訪問(wèn)器101能夠?qū)⒋鎯?chǔ)器訪問(wèn)請(qǐng)求發(fā)送到特定的仲裁模塊107A-107D,該特定的仲裁模塊107A-107D對(duì)包括目標(biāo)存儲(chǔ)器地址的存儲(chǔ)器區(qū)109A-109D負(fù)責(zé)。在圖1的示例實(shí)施例中,第一存儲(chǔ)器訪問(wèn)器101、仲裁模塊107A-107D的每一個(gè)以及存儲(chǔ)器區(qū)109A-109D的每一個(gè)被定義為根據(jù)具有第一時(shí)鐘頻率clkl的第一時(shí)鐘并根據(jù)第一數(shù)據(jù)總線位大小bsl而相互通信數(shù)據(jù)。
[0015]第二存儲(chǔ)器訪問(wèn)器103被定義為根據(jù)具有第二時(shí)鐘頻率clk2的第二時(shí)鐘并根據(jù)第二數(shù)據(jù)總線位大小bs2操作。因此,在時(shí)鐘頻率和數(shù)據(jù)總線位大小的方面,第二存儲(chǔ)器訪問(wèn)器103具有不同于多個(gè)仲裁模塊107A-107D的數(shù)據(jù)接口