總線(xiàn)邏輯管理系統(tǒng)和方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及電子技術(shù)領(lǐng)域,特別涉及一種總線(xiàn)邏輯管理系統(tǒng)和方法。
【背景技術(shù)】
[0002]SOC (System On Chip,片上系統(tǒng))是一種集成電路,可將計(jì)算機(jī)的處理器、只讀存儲(chǔ)器、隨機(jī)存儲(chǔ)器、定時(shí)計(jì)數(shù)器以及多種輸入輸出接口等集成在一片芯片上,為不同的應(yīng)用場(chǎng)合完成不同的功能。目前,SOC中處理器的處理位數(shù)大多為8位、16位、32位甚至64位,當(dāng)進(jìn)行數(shù)據(jù)處理時(shí),根據(jù)處理器固定的處理位數(shù)進(jìn)行讀寫(xiě)。例如:處理器為32位時(shí),每一次的數(shù)據(jù)操作對(duì)應(yīng)的都是32位。
[0003]但是,當(dāng)用戶(hù)需要對(duì)數(shù)據(jù)中的一位或幾位進(jìn)行操作時(shí),需要通過(guò)應(yīng)用程序執(zhí)行多個(gè)步驟。例如:32位的SOC系統(tǒng)中,每一次的數(shù)據(jù)操作對(duì)應(yīng)的都是32位。如果需要對(duì)32位數(shù)據(jù)中的某一位進(jìn)行操作,而不影響其他31位,應(yīng)用程序需要將該32位數(shù)據(jù)讀取并存儲(chǔ)至緩存,分析當(dāng)前需要操作的位,然后對(duì)該位進(jìn)行讀寫(xiě)操作,最后合成新的32位數(shù)據(jù)寫(xiě)入目的地址。不僅操作過(guò)程繁瑣,需要花費(fèi)很多處理器處理周期,并且執(zhí)行效率低下。
[0004]上述總線(xiàn)系統(tǒng)的操作位寬固定,當(dāng)對(duì)單一的位或者某幾位進(jìn)行數(shù)據(jù)操作時(shí),具有局限性,需要將操作數(shù)據(jù)通過(guò)處理器固定的處理位數(shù)整體進(jìn)行讀寫(xiě),然后根據(jù)實(shí)際需要,再更改其中個(gè)別的位。不僅程序執(zhí)行繁瑣,而且針對(duì)不同的操作設(shè)備的地址分配,由于不同的設(shè)備具有不同的操作位寬,因此不利于程序的修改和移植,加重了程序開(kāi)發(fā)的工作量和難度。
【發(fā)明內(nèi)容】
[0005]本發(fā)明旨在至少在一定程度上解決上述技術(shù)問(wèn)題。
[0006]為此,本發(fā)明的第一個(gè)目的在于提出一種總線(xiàn)邏輯管理系統(tǒng),通過(guò)在總線(xiàn)中嵌入總線(xiàn)邏輯管理器,可根據(jù)不同操作設(shè)備的操作位寬,變換相應(yīng)的總線(xiàn)操作位寬,滿(mǎn)足應(yīng)用需要,增加了數(shù)據(jù)操作的靈活性。
[0007]本發(fā)明的第二個(gè)目的在于提出一種總線(xiàn)邏輯管理方法。
[0008]為達(dá)上述目的,根據(jù)本發(fā)明第一方面實(shí)施例提出了一種總線(xiàn)邏輯管理系統(tǒng),包括:總線(xiàn);操作設(shè)備,所述操作設(shè)備的操作位寬為N,并與所述總線(xiàn)連接,N為正整數(shù);處理器,所述處理器與所述總線(xiàn)連接,其中,所述處理器的操作位寬為M,M為大于N的正整數(shù);以及總線(xiàn)邏輯管理器,所述總線(xiàn)邏輯管理器內(nèi)嵌于所述總線(xiàn)之中,所述總線(xiàn)邏輯管理器用于對(duì)所述總線(xiàn)的操作位寬進(jìn)行調(diào)整,以使所述總線(xiàn)符合所述操作設(shè)備和所述處理器的操作位寬需求。
[0009]本發(fā)明實(shí)施例的總線(xiàn)邏輯管理系統(tǒng),通過(guò)在總線(xiàn)中嵌入總線(xiàn)邏輯管理器,可根據(jù)不同操作設(shè)備的操作位寬,變換相應(yīng)的總線(xiàn)操作位寬,滿(mǎn)足應(yīng)用需要,增加了數(shù)據(jù)操作的靈活性。同時(shí),利用極少的硬件資源,結(jié)合現(xiàn)有的總線(xiàn)系統(tǒng)的功能,利用硬件對(duì)小操作位寬設(shè)備進(jìn)行高速處理,無(wú)需使用軟件程序,增加了可靠性和穩(wěn)定性,提高了執(zhí)行效率和處理器利用率。
[0010]本發(fā)明第二方面實(shí)施例提供了一種總線(xiàn)邏輯管理方法,包括以下步驟:獲取操作設(shè)備的操作位寬N,N為正整數(shù);獲取總線(xiàn)邏輯管理器唯一的私有地址;根據(jù)所述操作設(shè)備的操作位寬,通過(guò)所述私有地址對(duì)所述總線(xiàn)邏輯管理器的操作位寬進(jìn)行配置;以及根據(jù)操作地址空間和操作設(shè)備的訪(fǎng)問(wèn)地址空間將所述處理器寫(xiě)入所述操作地址空間的數(shù)據(jù)轉(zhuǎn)移至所述訪(fǎng)問(wèn)地址空間。
[0011]本發(fā)明實(shí)施例的總線(xiàn)邏輯管理方法,通過(guò)在總線(xiàn)中嵌入總線(xiàn)邏輯管理器,可根據(jù)不同操作設(shè)備的操作位寬,變換相應(yīng)的總線(xiàn)操作位寬,滿(mǎn)足應(yīng)用需要,增加了數(shù)據(jù)操作的靈活性。同時(shí),利用極少的硬件資源,結(jié)合現(xiàn)有的總線(xiàn)系統(tǒng)的功能,利用硬件對(duì)小操作位寬設(shè)備進(jìn)行高速處理,無(wú)需使用軟件程序,增加了可靠性和穩(wěn)定性,提高了執(zhí)行效率和處理器利用率。
[0012]本發(fā)明的附加方面和優(yōu)點(diǎn)將在下面的描述中部分給出,部分將從下面的描述中變得明顯,或通過(guò)本發(fā)明的實(shí)踐了解到。
【附圖說(shuō)明】
[0013]本發(fā)明的上述和/或附加的方面和優(yōu)點(diǎn)從結(jié)合下面附圖對(duì)實(shí)施例的描述中將變得明顯和容易理解,其中:
[0014]圖1為根據(jù)本發(fā)明一個(gè)實(shí)施例的總線(xiàn)邏輯管理系統(tǒng)的系統(tǒng)結(jié)構(gòu)設(shè)計(jì)示意圖;
[0015]圖2為根據(jù)本發(fā)明一個(gè)實(shí)施例的總線(xiàn)邏輯管理系統(tǒng)的結(jié)構(gòu)示意圖;
[0016]圖3為根據(jù)本發(fā)明另一個(gè)實(shí)施例的總線(xiàn)邏輯管理系統(tǒng)的結(jié)構(gòu)示意圖;
[0017]圖4為根據(jù)本發(fā)明一個(gè)實(shí)施例的總線(xiàn)邏輯管理方法的流程圖;
[0018]圖5為根據(jù)本發(fā)明另一個(gè)實(shí)施例的總線(xiàn)邏輯管理方法的流程圖。
【具體實(shí)施方式】
[0019]下面詳細(xì)描述本發(fā)明的實(shí)施例,實(shí)施例的示例在附圖中示出,其中自始至終相同或類(lèi)似的標(biāo)號(hào)表示相同或類(lèi)似的元件或具有相同或類(lèi)似功能的元件。下面通過(guò)參考附圖描述的實(shí)施例是示例性的,僅用于解釋本發(fā)明,而不能理解為對(duì)本發(fā)明的限制。
[0020]在本發(fā)明的描述中,需要理解的是,術(shù)語(yǔ)“中心”、“縱向”、“橫向”、“上”、“下”、“前”、“后”、“左”、“右”、“豎直”、“水平”、“頂”、“底”、“內(nèi)”、“外”等指示的方位或位置關(guān)系為基于附圖所示的方位或位置關(guān)系,僅是為了便于描述本發(fā)明和簡(jiǎn)化描述,而不是指示或暗示所指的裝置或元件必須具有特定的方位、以特定的方位構(gòu)造和操作,因此不能理解為對(duì)本發(fā)明的限制。此外,術(shù)語(yǔ)“第一”、“第二”僅用于描述目的,而不能理解為指示或暗示相對(duì)重要性。
[0021]在本發(fā)明的描述中,需要說(shuō)明的是,除非另有明確的規(guī)定和限定,術(shù)語(yǔ)“安裝”、“相連”、“連接”應(yīng)做廣義理解,例如,可以是固定連接,也可以是可拆卸連接,或一體地連接;可以是機(jī)械連接,也可以是電連接;可以是直接相連,也可以通過(guò)中間媒介間接相連,可以是兩個(gè)元件內(nèi)部的連通。對(duì)于本領(lǐng)域的普通技術(shù)人員而言,可以具體情況理解上述術(shù)語(yǔ)在本發(fā)明中的具體含義。
[0022]下面參考附圖描述根據(jù)本發(fā)明實(shí)施例的總線(xiàn)邏輯管理系統(tǒng)和方法。
[0023]為使對(duì)不同操作位寬的設(shè)備進(jìn)行操作時(shí),操作位寬變化更加靈活,本發(fā)明提出一種總線(xiàn)邏輯管理系統(tǒng)。
[0024]圖1為根據(jù)本發(fā)明一個(gè)實(shí)施例的總線(xiàn)邏輯管理系統(tǒng)的系統(tǒng)結(jié)構(gòu)設(shè)計(jì)示意圖。
[0025]如圖1所示,根據(jù)本發(fā)明實(shí)施例的總線(xiàn)邏輯管理系統(tǒng),包括:總線(xiàn)10、操作設(shè)備20、處理器30以及總線(xiàn)邏輯管理器40。
[0026]總線(xiàn)10與操作設(shè)備20和處理器30相連,用于傳輸處理器30對(duì)操作設(shè)備20的指令和操作數(shù)據(jù)。
[0027]操作設(shè)備20的操作位寬為N,并與總線(xiàn)10連接,其中,N為正整數(shù)。
[0028]處理器30與總線(xiàn)10連接,處理器30的操作位寬為M,其中,M為大于N的正整數(shù)。
[0029]總線(xiàn)邏輯管理器40內(nèi)嵌于總線(xiàn)10之中,總線(xiàn)邏輯管理器40用于對(duì)總線(xiàn)10的操作位寬進(jìn)行調(diào)整,以使總線(xiàn)10的操作位寬符合操作設(shè)備20和處理器30的需求。
[0030]在本發(fā)明的實(shí)施例中,總線(xiàn)邏輯管理器40具有私有地址,處理器30可通過(guò)總線(xiàn)邏輯管理器40的私有地址對(duì)總線(xiàn)邏輯管理器40進(jìn)行配置操作,從而通過(guò)總線(xiàn)邏輯管理器40對(duì)總線(xiàn)進(jìn)行的操作位寬進(jìn)行配置。例如:當(dāng)處理器30的操作位寬為32位,操作設(shè)備20的操作位寬為2位時(shí),總線(xiàn)邏輯管理器40根據(jù)處理器30的配置指令設(shè)置總線(xiàn)10的操作位寬,滿(mǎn)足操作設(shè)備20的2位的操作位寬要求。
[0031]圖2為根據(jù)本發(fā)明一個(gè)實(shí)施例的總線(xiàn)邏輯管理系統(tǒng)的結(jié)構(gòu)示意圖。
[0032]如圖2所示,根據(jù)本發(fā)明實(shí)施例的總線(xiàn)邏輯管理系統(tǒng),包括:總線(xiàn)10、操作設(shè)備20、處理器30以及總線(xiàn)邏輯管理器40。其中,總線(xiàn)邏輯管理器40具體包括:位寬變換配置選擇模塊41、地址關(guān)聯(lián)配置選擇模塊42和地址訪(fǎng)問(wèn)邏輯控制模塊43。
[0033