一種隨機(jī)存取存儲(chǔ)器的訪問方法、裝置及控制芯片的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及通信技術(shù)領(lǐng)域,具體涉及一種隨機(jī)存取存儲(chǔ)器(RAM,Random-AccessMemory)的訪問方法、裝置及控制芯片。
【背景技術(shù)】
[0002]隨著通信技術(shù)的飛速發(fā)展,網(wǎng)絡(luò)的傳輸速率發(fā)展到100Gb/S,甚至更高。隨著傳輸速率的提高,對(duì)RAM的訪問速度要求也越來越高。比如路由器中的路由表,交換機(jī)中的媒體訪問控制(MAC,Media/Medium Access Control)地址表,這些表均存儲(chǔ)在對(duì)應(yīng)通信設(shè)備的RAM中,為了實(shí)時(shí)了解存放在RAM中的信息,需要通過中央處理器(CPU,CentralProcessing Unit)訪問RAM后進(jìn)行分析。目前的通信設(shè)備中,100Gb/s以上的數(shù)據(jù)傳輸是通過專用集成電路(ASIC,Applicat1n Specific Integrated Circuit)芯片實(shí)現(xiàn)的,而存放路由表、MAC地址表等信息的RAM也是處于這個(gè)ASIC芯片中。CPU要訪問ASIC中的RAM,要通過一個(gè)帶寬并不太高的接口,該接口的帶寬在10M-200M之間。
[0003]現(xiàn)有技術(shù)中,傳統(tǒng)的RAM的訪問過程包括:CPU將訪問的RAM編號(hào)(RAM_ID)和訪問地址等指令寫入命令寄存器;ASIC內(nèi)部的邏輯電路根據(jù)命令寄存器中的指令來讀取RAM中的數(shù)據(jù)信息,讀取到的數(shù)據(jù)信息存儲(chǔ)在數(shù)據(jù)寄存器后,CPU讀取數(shù)據(jù)寄存器中的數(shù)據(jù)信息。按照這種方式獲得RAM中的信息至少需要10多個(gè)ASIC時(shí)鐘周期,才能得到RAM中的一條數(shù)據(jù)信息。并且,要獲取RAM中帶有某一類屬性的信息時(shí),并不知道這個(gè)信息在RAM中的具體地址,需要將RAM的所有地址遍歷一遍,從所有的RAM信息中提取帶有這類屬性的信息。按照這種方式訪問RAM需要消耗更多的時(shí)間,效率較低。
【發(fā)明內(nèi)容】
[0004]為解決現(xiàn)有存在的技術(shù)問題,本發(fā)明實(shí)施例提供一種訪問RAM的方法、裝置及控制芯片,能夠解決訪問RAM效率低下的問題。
[0005]為達(dá)到上述目的,本發(fā)明實(shí)施例的技術(shù)方案是這樣實(shí)現(xiàn)的:
[0006]本發(fā)明實(shí)施例提供了一種RAM的訪問裝置,所述裝置包括:寄存器模塊、查找匹配模塊和RAM接口模塊;其中,
[0007]所述寄存器模塊,用于獲取中央處理器配置的屬性信息和啟動(dòng)信息,將所述啟動(dòng)信息發(fā)送至所述查找匹配模塊;還用于存儲(chǔ)所述查找匹配模塊匹配成功的數(shù)據(jù)信息,指示所述中央處理器讀取所述數(shù)據(jù)信息;
[0008]所述查找匹配模塊,用于根據(jù)所述啟動(dòng)信息向所述RAM接口模塊發(fā)送地址信息;還用于獲取所述RAM接口模塊發(fā)送的數(shù)據(jù)信息,基于所述寄存器模塊中的屬性信息與所述數(shù)據(jù)信息進(jìn)行匹配,匹配成功后,將所述數(shù)據(jù)信息發(fā)送至所述寄存器模塊;
[0009]所述RAM接口模塊,用于基于所述查找匹配模塊發(fā)送的地址信息從RAM中讀取數(shù)據(jù)信息,將所述數(shù)據(jù)信息發(fā)送至所述查找匹配模塊。
[0010]上述方案中,所述寄存器模塊,用于獲取中央處理器配置的屬性信息和啟動(dòng)信息,所述屬性信息包括:待訪問的地址范圍信息;
[0011]所述查找匹配模塊,用于接收到所述啟動(dòng)信息后,基于所述待訪問的地址范圍信息,從起始地址開始至結(jié)束地址終止依次向所述RAM接口模塊發(fā)送地址信息。
[0012]上述方案中,所述寄存器模塊,用于獲取中央處理器配置的屬性信息;所述屬性信息包括:屬性參數(shù);
[0013]所述查找匹配模塊,用于基于所述寄存器模塊中的屬性參數(shù)與所述數(shù)據(jù)信息進(jìn)行匹配。
[0014]上述方案中,所述寄存器模塊包括:配置寄存器、數(shù)據(jù)寄存器和狀態(tài)寄存器;其中,
[0015]所述配置寄存器,用于獲取中央處理器配置的屬性信息和啟動(dòng)信息,將所述啟動(dòng)信息發(fā)送至所述查找匹配模塊;
[0016]所述數(shù)據(jù)寄存器,用于存儲(chǔ)所述查找匹配模塊匹配成功的數(shù)據(jù)信息;
[0017]所述狀態(tài)寄存器,用于指示所述中央處理器讀取所述數(shù)據(jù)信息。
[0018]上述方案中,所述配置寄存器包括:屬性寄存器和啟動(dòng)寄存器;其中,
[0019]所述屬性寄存器,用于獲取中央處理器配置的屬性信息;
[0020]所述啟動(dòng)寄存器,用于獲取中央處理器配置的啟動(dòng)信息,將所述啟動(dòng)信息發(fā)送至所述查找匹配模塊。
[0021]上述方案中,所述狀態(tài)寄存器包括單個(gè)數(shù)據(jù)已獲取狀態(tài)寄存器,用于當(dāng)所述查找匹配模塊匹配成功的數(shù)據(jù)信息存儲(chǔ)至所述數(shù)據(jù)寄存器中時(shí),通過高電位指示所述中央處理器讀取所述數(shù)據(jù)信息。
[0022]上述方案中,所述狀態(tài)寄存器還包括所有數(shù)據(jù)已獲取狀態(tài)寄存器,用于確定待訪問的數(shù)據(jù)信息訪問結(jié)束時(shí),指示RAM訪問結(jié)束。
[0023]本發(fā)明實(shí)施例還提供了一種RAM的訪問方法,所述方法包括:
[0024]獲取中央處理器配置的屬性信息和啟動(dòng)信息;
[0025]基于所述啟動(dòng)信息和所述屬性信息查找RAM獲得數(shù)據(jù)信息;
[0026]將所述數(shù)據(jù)信息與所述屬性信息進(jìn)行匹配,匹配成功后指示所述中央處理器讀取所述數(shù)據(jù)信息。
[0027]上述方案中,所述屬性信息包括:待訪問的地址范圍信息和屬性參數(shù);
[0028]所述基于所述啟動(dòng)信息和所述屬性信息查找RAM獲得數(shù)據(jù)信息,包括:當(dāng)接收到所述中央處理器配置的啟動(dòng)信息時(shí),基于所述屬性信息中的地址范圍信息,從起始地址開始至結(jié)束地址終止依次查找RAM獲得數(shù)據(jù)信息;
[0029]相應(yīng)的,將所述數(shù)據(jù)信息與所述屬性信息進(jìn)行匹配,包括:
[0030]將所述數(shù)據(jù)信息與所述屬性信息中的屬性參數(shù)進(jìn)行匹配。
[0031]本發(fā)明實(shí)施例還提供了一種控制芯片,所述控制芯片包括:隨機(jī)存取存儲(chǔ)器RAM和權(quán)利要求1至7任一項(xiàng)所述的RAM的訪問裝置;其中,
[0032]所述RAM,用于存儲(chǔ)數(shù)據(jù)信息。
[0033]本發(fā)明實(shí)施例提供的訪問RAM的方法、裝置及控制芯片,通過所述RAM的訪問裝置內(nèi)部匹配出符合屬性信息的數(shù)據(jù)信息,將所述數(shù)據(jù)信息存儲(chǔ)在所述訪問裝置內(nèi)的數(shù)據(jù)寄存器中;CPU僅需要訪問寄存器模塊(具體是寄存器模塊中的狀態(tài)寄存器和數(shù)據(jù)寄存器)直接讀取符合屬性信息的數(shù)據(jù),無需CPU遍歷RAM中的所有數(shù)據(jù)信息再由CPU判斷數(shù)據(jù)信息是否滿足屬性信息的要求,大大節(jié)省了訪問時(shí)間,提升了 RAM的訪問效率。
【附圖說明】
[0034]圖1為本發(fā)明實(shí)施例一的RAM的訪問裝置的第一種組成結(jié)構(gòu)示意圖;
[0035]圖2為本發(fā)明實(shí)施例一的RAM的訪問裝置的第二種組成結(jié)構(gòu)示意圖;
[0036]圖3為本發(fā)明實(shí)施例二的控制芯片的組成結(jié)構(gòu)示意圖;
[0037]圖4為本發(fā)明實(shí)施例三的RAM的訪問方法的流程示意圖;
[0038]圖5為本發(fā)明實(shí)施例四的RAM的訪問方法的流程示意圖。
【具體實(shí)施方式】
[0039]下面結(jié)合附圖及具體實(shí)施例對(duì)本發(fā)明作進(jìn)一步詳細(xì)的說明。
[0040]實(shí)施例一
[0041 ] 本發(fā)明實(shí)施例提供了一種RAM的訪問裝置。圖1為本發(fā)明實(shí)施例一的RAM的訪問裝置的組成結(jié)構(gòu)示意圖;如圖1所示,所述裝置包括:寄存器模塊13、查找匹配模塊12和RAM接口模塊11 ;其中,
[0042]所述寄存器模塊13,用于獲取中央處理器配置的屬性信息和啟動(dòng)信息,將所述啟動(dòng)信息發(fā)送至所述查找匹配模塊12 ;還用于存儲(chǔ)所述查找匹配模塊12匹配成功的數(shù)據(jù)信息,指示所述中央處理器讀取所述數(shù)據(jù)信息;
[0043]所述查找匹配模塊12,用于根據(jù)所述啟動(dòng)信息向所述RAM接口模塊11發(fā)送地址信息;還用于獲取所述RAM接口模塊11發(fā)送的數(shù)據(jù)信息,基于所述寄存器模塊13中的屬性信息與所述數(shù)據(jù)信息進(jìn)行匹配,匹配成功后,將所述數(shù)據(jù)信息發(fā)送至所述寄存器模塊13 ;
[0044]所述RAM接口模塊11,用于基于所述查找匹配模塊12發(fā)送的地址信息從RAM中讀取數(shù)據(jù)信息,將所述數(shù)據(jù)信息發(fā)送至所述查找匹配模塊12。
[0045]其中,所述寄存器模塊13,用于獲取中央處理器配置的屬性信息和啟動(dòng)信息,所述屬性信息包括:待訪問的地址范圍信息;所述查找匹配模塊12,用于接收到所述啟動(dòng)信息后,基于所述待訪問的地址范圍信息,從起始地址開始依次向所述RAM接口模塊11發(fā)送地址信息。
[0046]其中,所述寄存器模塊13,用于獲取中央處理器配置的屬性信息;所述屬性信息包括:屬性參數(shù);所述查找匹配模塊12,用于基于所述寄存器模塊13中的屬性參數(shù)與所述數(shù)據(jù)信息進(jìn)行匹配。
[0047]本實(shí)施例中,所述寄存器模塊13主要用于獲取CPU配置的屬性信息和啟動(dòng)信息,CPU可通過配置屬性信息指示本實(shí)施例所述的RAM訪問裝置如何進(jìn)行操作,例如配置進(jìn)行匹配的屬性參數(shù)、配置待訪問的RAM標(biāo)識(shí)(具體為RAM編號(hào))、配置待訪問的RAM的地址范圍信息(包括起始地址和結(jié)束地址等)等,也即所述屬性信息可以包括屬性參數(shù)、RAM標(biāo)識(shí)以及RAM的地址范圍信息等等;其中,所述待訪問的RAM的地址范圍滿足所述RAM的地址范圍,即當(dāng)所述RAM的地址范圍為大于等于O小于等于N (N為正整數(shù))時(shí),所述待訪問的RAM地址范圍為大于等于a小于等于b ;其中,a大于等于0,b小于等于N,a和b均為正整數(shù);可以理解為,CPU根據(jù)RAM的地址范圍信息配置待訪問的地址范圍信息。當(dāng)然,所述待訪問的地址范圍信息為可選的,即所述寄存器模塊13獲取CPU配置的屬性信息中也可以不包括所述待訪問的地址范圍信息;當(dāng)所述屬性信息中不包括所述待訪問的地址范圍信息時(shí),所述查找匹配模塊從RAM的地址O開始至所述RAM的地址η (η表征RAM的深度)結(jié)束依次向RAM接口模塊發(fā)送地址信息。并且CPU還可以配置所述啟動(dòng)信息指示本實(shí)施例所述的RAM訪問裝置開始執(zhí)行數(shù)據(jù)訪問,也可以理解為,所述C