專利名稱:可適應(yīng)可變外部存儲(chǔ)器的大小和字節(jié)存儲(chǔ)順序的數(shù)據(jù)處理設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及數(shù)據(jù)處理設(shè)備,其包括通過存儲(chǔ)總線與外部存儲(chǔ)器相連的集成電路。
特定數(shù)據(jù)處理設(shè)備包括外部存儲(chǔ)器,用于以字節(jié)存儲(chǔ)順序格式存儲(chǔ)對(duì)程序的至少一部分進(jìn)行定義的數(shù)據(jù);以及集成電路,通過N位寬度的存儲(chǔ)總線與該外部存儲(chǔ)器相連,并包括能夠運(yùn)行所存程序的嵌入式處理器、用于至少存儲(chǔ)該程序的引導(dǎo)代碼的內(nèi)部存儲(chǔ)器、與存儲(chǔ)總線相連的外部存儲(chǔ)器的接口、以及將內(nèi)部存儲(chǔ)器和外部存儲(chǔ)器接口與嵌入式處理器相連的處理器總線。
背景技術(shù):
“字節(jié)存儲(chǔ)順序格式(Endian form)”是一種眾所周知的尋址常規(guī)方式,它包括“小端字節(jié)存儲(chǔ)順序格式(Little-Endian form)”和“大端字節(jié)存儲(chǔ)順序格式(Big-Endian form)”,其中根據(jù)“小端字節(jié)存儲(chǔ)順序格式”,每個(gè)多字節(jié)數(shù)字(或數(shù)據(jù))的最低有效字節(jié)存儲(chǔ)在最低地址,其后的字節(jié)存儲(chǔ)在逐漸增加的地址處,而根據(jù)“大端字節(jié)存儲(chǔ)順序格式”,每個(gè)多字節(jié)數(shù)字(或數(shù)據(jù))的最高有效字節(jié)存儲(chǔ)在最低地址,其后的字節(jié)存儲(chǔ)在逐漸增加的地址處。
正如本領(lǐng)域技術(shù)人員所知,在很多包括嵌入式處理器的集成電路中,由于靈活性(例如在大小和/或性能和/或總線寬度方面)和/或技術(shù)局限(例如有限面積與需要的存儲(chǔ)器大小不一致、和/或沒有可用的可編程的存儲(chǔ)器、和/或嵌入式可編程存儲(chǔ)器的成品率太低、和/或需要更大的超出了外部設(shè)備可控制的硅片面積)而沒有將程序存儲(chǔ)器充分嵌入。所以在非易變性內(nèi)部存儲(chǔ)器上(例如ROM)中一般只存儲(chǔ)(或嵌入)引導(dǎo)代碼。外部存儲(chǔ)器一般是可編程的(例如閃存)。
隨著外部存儲(chǔ)器技術(shù)不斷的發(fā)展,某些制造商可能需要使用不同的外部存儲(chǔ)器寬度,以應(yīng)付不同的應(yīng)用(例如當(dāng)不需要高性能時(shí),以低成本為目的)。
此外,根據(jù)情況,顧客可能更喜歡將他們的程序以小端字節(jié)存儲(chǔ)順序或者大端字節(jié)存儲(chǔ)順序格式存儲(chǔ)在外部存儲(chǔ)器上。
為了允許選擇嵌入式處理器的操作模式,很多數(shù)據(jù)處理設(shè)備包括與地或者與電源相連的選擇引腳,以向集成電路的嵌入式邏輯指示外部存儲(chǔ)器的配置。但是降低總成本意味著增加選擇引腳數(shù)量,然而減小數(shù)據(jù)處理設(shè)備的封裝大小意味著更少的選擇引腳可用。所以,排他性地專用于靜態(tài)操作模式設(shè)置的選擇引腳使用可能是缺點(diǎn)。
為了重復(fù)使用這些選擇引腳,可以通過在啟動(dòng)(或復(fù)位)階段對(duì)選擇引腳的電壓(電流)電平進(jìn)行采樣,確定操作模式。采用這種引腳共享,除了外部存儲(chǔ)器大小和/或字節(jié)存儲(chǔ)順序格式指定以外,選擇引腳也可用于其他任務(wù)。但是,需要內(nèi)部邏輯和外部組件,以在啟動(dòng)階段強(qiáng)制設(shè)定引腳狀態(tài),在復(fù)位成為非在用狀態(tài)時(shí),鎖定電平,以及為正常操作而釋放電平。上拉或下拉電阻可以用于上述目的,但是在設(shè)備操作期間它們可能產(chǎn)生漏電流,這種情況一般與其中安裝有上拉或下拉電阻的以電池供能的設(shè)備的需求不兼容。
已提出了一些其他更加復(fù)雜的共享解決方案,但是它們導(dǎo)致更多實(shí)現(xiàn)困難。
發(fā)明內(nèi)容
本發(fā)明的目的是為了改善境況,更確切的是避免使用針對(duì)外部存儲(chǔ)器大小(或?qū)挾?和字節(jié)存儲(chǔ)順序的指定的專用選擇引腳。
為了這個(gè)目的,提供了一種數(shù)據(jù)處理設(shè)備,包括外部存儲(chǔ)器,用于以字節(jié)存儲(chǔ)順序格式存儲(chǔ)對(duì)程序的至少一部分進(jìn)行定義的數(shù)據(jù);以及集成電路,經(jīng)由具有N位寬度的存儲(chǔ)總線與所述外部存儲(chǔ)器相連,并包括i)適于運(yùn)行所述程序的嵌入式處理器、ii)用于存儲(chǔ)至少所述程序的引導(dǎo)代碼的內(nèi)部存儲(chǔ)器、iii)與所述存儲(chǔ)總線相連的外部存儲(chǔ)器接口和iv)將所述內(nèi)部存儲(chǔ)器(IM)和所述外部存儲(chǔ)器接口與所述嵌入式處理器相連的處理器總線。
所述數(shù)據(jù)處理設(shè)備的特征在于所述外部存儲(chǔ)器被設(shè)置來在所選的地址處存儲(chǔ)N位數(shù)據(jù)字,所述數(shù)據(jù)字具有代表其大小的值(等于N/8位)和所存儲(chǔ)的程序數(shù)據(jù)的字節(jié)存儲(chǔ)順序格式;所述數(shù)據(jù)處理設(shè)備的特征在于,還包括配置裝置,與所述嵌入式處理器和所述外部存儲(chǔ)器接口耦合,被設(shè)置來根據(jù)由所述外部存儲(chǔ)器接口在所述外部存儲(chǔ)器的所選地址處讀取的所述N位數(shù)據(jù)字的8位中的至少一個(gè)部分,推斷外部存儲(chǔ)器的大小和存儲(chǔ)字節(jié)存儲(chǔ)順序格式,并根據(jù)所述推斷的外部存儲(chǔ)器大小來設(shè)定所述外部存儲(chǔ)器接口的寬度、以及根據(jù)所述推斷的存儲(chǔ)字節(jié)存儲(chǔ)順序格式來設(shè)定所述嵌入式處理器的數(shù)據(jù)處理模式。
根據(jù)本發(fā)明的所述數(shù)據(jù)處理設(shè)備可以包括獨(dú)立或結(jié)合考慮的其他特征,特別是-所述配置裝置被設(shè)置來控制所述外部存儲(chǔ)器接口,以預(yù)設(shè)所述外部存儲(chǔ)器接口為8位寬度,從而所述接口在所選地址處訪問所述外部存儲(chǔ)器,以讀取所述存儲(chǔ)的N位數(shù)據(jù)字的8位的所述部分,-所述配置裝置被設(shè)置來在讀取所述外部存儲(chǔ)器的所述N位數(shù)據(jù)字之前,以小端字節(jié)存儲(chǔ)順序格式預(yù)設(shè)所述嵌入式處理器的數(shù)據(jù)處理模式。在這種情況下,所述配置裝置優(yōu)選地設(shè)置為,在所述推斷的存儲(chǔ)字節(jié)存儲(chǔ)順序格式是小端字節(jié)存儲(chǔ)順序時(shí),確認(rèn)以小端字節(jié)存儲(chǔ)順序格式的所述嵌入式處理器的數(shù)據(jù)處理模式的所述預(yù)設(shè),或者在所述推斷的存儲(chǔ)字節(jié)存儲(chǔ)順序格式是大端字節(jié)存儲(chǔ)順序時(shí),以大端字節(jié)存儲(chǔ)順序格式設(shè)定所述嵌入式處理器的數(shù)據(jù)處理模式。
-所述配置裝置被設(shè)置來在讀取所述外部存儲(chǔ)器中的所述N位數(shù)據(jù)字之前,以大端字節(jié)存儲(chǔ)順序格式預(yù)設(shè)所述嵌入式處理器的數(shù)據(jù)處理模式。在這種情況下,所述配置裝置優(yōu)選地設(shè)置為,在所述推斷的存儲(chǔ)字節(jié)存儲(chǔ)順序格式是大端字節(jié)存儲(chǔ)順序時(shí),確認(rèn)以大端字節(jié)存儲(chǔ)順序格式的所述嵌入式處理器的數(shù)據(jù)處理模式的所述預(yù)設(shè),或者在所述推斷的存儲(chǔ)字節(jié)存儲(chǔ)順序格式是小端字節(jié)存儲(chǔ)順序時(shí),以小端字節(jié)存儲(chǔ)順序格式設(shè)定所述嵌入式處理器的數(shù)據(jù)處理模式。
-所述的配置裝置被設(shè)置來生成對(duì)所述外部存儲(chǔ)器的從所述所選地址開始的連續(xù)地址處的N/8個(gè)8位訪問,以讀取所述N位數(shù)據(jù)字的至少所述一個(gè)部分,以及所述嵌入式處理器包括專用存儲(chǔ)器,所述專用存儲(chǔ)器的大小等于N,并被設(shè)置來在N/8個(gè)連續(xù)地址處存儲(chǔ)的所述N位數(shù)據(jù)字的每個(gè)讀取的部分,當(dāng)N等于32,并且所述外部存儲(chǔ)器大小等于32時(shí),所述的配置裝置被優(yōu)選地設(shè)置來生成對(duì)所述的外部存儲(chǔ)器的從所述所選地址開始的四個(gè)連續(xù)地址處的4個(gè)8位訪問,以讀取所述N位數(shù)據(jù)字的第一部分四次,以及所述專用存儲(chǔ)器被設(shè)置來在第一、第二、第三和第四連續(xù)地址處存儲(chǔ)所述N位數(shù)據(jù)字的所述讀取的第一部分,而不論推斷的字節(jié)存儲(chǔ)順序格式是何種格式,當(dāng)N等于32,并且所述外部存儲(chǔ)器大小等于16時(shí),所述的配置裝置被優(yōu)選地設(shè)置來生成對(duì)所述外部存儲(chǔ)器的從所述所選地址開始的四個(gè)連續(xù)地址處的4個(gè)8位訪問,以讀取所述N位數(shù)據(jù)字的的第一部分和第三部分兩次,以及所述專用存儲(chǔ)器被設(shè)置來在所述推斷的存儲(chǔ)字節(jié)存儲(chǔ)順序格式是小端字節(jié)存儲(chǔ)順序時(shí),在專用存儲(chǔ)器的連續(xù)的第一和第二個(gè)地址處存儲(chǔ)讀取的第一部分、以及在第三和第四連續(xù)地址處存儲(chǔ)讀取的第三部分,或者在所述推斷的存儲(chǔ)字節(jié)存儲(chǔ)順序格式是大端字節(jié)存儲(chǔ)順序時(shí),在第一和第二連續(xù)地址處存儲(chǔ)讀取的第三部分、以及在第三和第四連續(xù)地址處存儲(chǔ)讀取的第一部分,當(dāng)N等于32,并且所述外部存儲(chǔ)器大小等于8時(shí),所述配置裝置被優(yōu)選地設(shè)置來生成對(duì)所述外部存儲(chǔ)器的從所述所選地址開始的四個(gè)連續(xù)地址的4個(gè)8位訪問,以讀取所述N位數(shù)據(jù)字的第一、第二、第三和第四連續(xù)部分,以及所述專用存儲(chǔ)器被設(shè)置來在所述推斷的存儲(chǔ)字節(jié)存儲(chǔ)順序格式是小端字節(jié)存儲(chǔ)順序時(shí),在第一、第二、第三和第四連續(xù)地址處分別存儲(chǔ)所述第一、第二、第三和第四部分,或者在所述推斷的存儲(chǔ)字節(jié)存儲(chǔ)順序格式是大端字節(jié)存儲(chǔ)順序時(shí),在所述第四、第三、第二和第一地址分別存儲(chǔ)所述第一、第二、第三和第四部分。
本發(fā)明也提供一種包括如上文所介紹的數(shù)據(jù)處理設(shè)備的移動(dòng)電話。
本發(fā)明的其他特征和優(yōu)點(diǎn)將會(huì)在之后的詳細(xì)說明和附圖中明顯可見,附圖中圖1示意性地示出了根據(jù)本發(fā)明的數(shù)據(jù)處理設(shè)備的示例;圖2A到2C示意性地示出了當(dāng)外部存儲(chǔ)器大小分別等于32位、16位和8位時(shí),根據(jù)本發(fā)明的數(shù)據(jù)處理設(shè)備的專用存儲(chǔ)器(DM)和外部存儲(chǔ)器(EM)的3個(gè)示例;以及圖3示意性地示出了根據(jù)本發(fā)明的數(shù)據(jù)處理設(shè)備的判決算法的示例。
附圖可以不僅用于完全公開本發(fā)明,如果需要,還可以提供本發(fā)明的定義。
具體實(shí)施例方式
首先參考圖1,描述根據(jù)本發(fā)明的數(shù)據(jù)處理設(shè)備D實(shí)施例的非限制性示例。
在以下的說明中,將考慮所示數(shù)據(jù)處理設(shè)備D安裝在移動(dòng)電話中。但是它也可以安裝在任何開放設(shè)備(或系統(tǒng))中,特別在微控制器、PDA(“個(gè)人數(shù)字助理”)、TV機(jī)頂盒、或個(gè)人計(jì)算機(jī)外圍設(shè)備中。
此外,在以下的說明中,將考慮所述數(shù)據(jù)處理設(shè)備D被設(shè)置為控制至少移動(dòng)電話應(yīng)用(X)。但是它也可以被設(shè)置為控制任何其他應(yīng)用。
如圖1所示,根據(jù)本發(fā)明的數(shù)據(jù)處理設(shè)備D至少包外部存儲(chǔ)器EM和集成電路IC,其中外部存儲(chǔ)器EM具有N位大小,集成電路IC通過具有N位寬度的存儲(chǔ)總線MB連接到外部存儲(chǔ)器EM。
外部存儲(chǔ)器EM被設(shè)置為以字節(jié)存儲(chǔ)順序格式存儲(chǔ)對(duì)定義應(yīng)用X的程序的至少一部分進(jìn)行定義的數(shù)據(jù)和N位數(shù)據(jù)字C,所述N位數(shù)據(jù)字C的值存儲(chǔ)在所選的地址A,并代表等于N/8位的外部存儲(chǔ)器大小和所存程序數(shù)據(jù)的字節(jié)存儲(chǔ)順序格式。例如,N等于32而且外部存儲(chǔ)器EM的大小等于8位(但它可以等于16位、32位或64位,更一般的是m×8位,m≥1)。這個(gè)外部存儲(chǔ)器EM是可編程的。例如,它可以是閃存。
集成電流IC包括適于運(yùn)行上述程序的嵌入式處理器EP、設(shè)置來至少存儲(chǔ)所述程序的引導(dǎo)代碼的內(nèi)部存儲(chǔ)器IM、特別連接到存儲(chǔ)總線的外部存儲(chǔ)器接口EMI、以及用于把內(nèi)部存儲(chǔ)器IM和外部存儲(chǔ)器接口EMI連接到嵌入式處理器EP的處理器總線PB。
例如,處理器總線PB的寬度等于32位,但是可以想到其他值,特別是16位、64位或128位。
引導(dǎo)代碼提供來執(zhí)行判決算法,目的在于確定集成電路IC的操作模式,以下將會(huì)描述。
例如內(nèi)部存儲(chǔ)器IM是只讀存儲(chǔ)器(ROM),但是可以想到其他類型的非易失性存儲(chǔ)器,特別是嵌入式閃存或磁存儲(chǔ)器。
數(shù)據(jù)處理設(shè)備D也包括配置模塊CM,其與嵌入式處理器EP和外部存儲(chǔ)器接口EMI耦合。
配置模塊CM被特別設(shè)置成根據(jù)N位數(shù)據(jù)字C的8位的至少一個(gè)部分推斷外部存儲(chǔ)器EM的大小和存儲(chǔ)字節(jié)存儲(chǔ)順序格式,所述數(shù)據(jù)字C可由外部存儲(chǔ)器接口EMI在外部存儲(chǔ)器EM的所選地址A處讀取。
更精確地,當(dāng)已激活引導(dǎo)代碼時(shí),配置模塊CM命令外部存儲(chǔ)器接口EMI通過存儲(chǔ)總線MB在所選地址A處訪問外部存儲(chǔ)器EM,以讀取所存字C的一個(gè)或多個(gè)8位部分。為此,配置模塊CM生成對(duì)外部存儲(chǔ)器EM的從所選地址A開始的連續(xù)地址處(即,A、A+1、A+2、…、A+N/8)的N/8個(gè)8位訪問。要讀取的8位部分的數(shù)量(N/8)取決于N的值和外部存儲(chǔ)器大小(等于N/8位),所以該數(shù)量可以等于1、2、4或更多。
當(dāng)配置模塊CM根據(jù)讀取的存儲(chǔ)字C的8位部分,已推斷外部存儲(chǔ)器的大小和存儲(chǔ)字節(jié)存儲(chǔ)順序格式時(shí),它可以根據(jù)推斷的外部存儲(chǔ)器大小設(shè)定外部存儲(chǔ)器接口EMI的寬度,而后,根據(jù)推斷的存儲(chǔ)字節(jié)存儲(chǔ)順序格式設(shè)定嵌入式處理器EP的數(shù)據(jù)處理模式。
嵌入式處理器EP優(yōu)選地包括專用存儲(chǔ)器DM,該專用存儲(chǔ)器DM具有等于N的大小,以在N/8個(gè)連續(xù)地址處存儲(chǔ)N位數(shù)據(jù)字節(jié)C的每個(gè)讀取的部分。
例如,如果N等于32而且外部存儲(chǔ)器大小等于32,配置模塊CM生成對(duì)外部存儲(chǔ)器EM的四個(gè)連續(xù)地址A、A+1、A+2和A+3的4個(gè)8位訪問。N既已等于32,字C按第一B0、第二B1、第三B2和第四B3部分存儲(chǔ)在外部存儲(chǔ)器EM中。但是N也可以等于外部存儲(chǔ)器大小,所有的地址A、A+1、A+2和A+3是等效的。所以,只能讀取字C的第一部分B0。因此,專用存儲(chǔ)器DM在第一、第二、第三和第四的連續(xù)地址處存儲(chǔ)字C的讀取的第一部分B0,而不論推斷的字節(jié)存儲(chǔ)順序格式是何種格式。圖2A中示意性地示出了該示例。
現(xiàn)在如果N等于32,并且外部存儲(chǔ)器大小等于16,配置模塊CM仍生成對(duì)外部存儲(chǔ)器EM的四個(gè)連續(xù)地址A、A+1、A+2和A+3的4個(gè)8位訪問。外部存儲(chǔ)器大小既已等于16,地址A+2(與字C第三部分B2相對(duì)應(yīng))與地址A(與字C第一部分B0相對(duì)應(yīng))等效,同時(shí)地址A+1(與字C第二部分B1相對(duì)應(yīng))與地址A+3(與字C第四部分B3相對(duì)應(yīng))等效。所以,字C的第一部分B0和第三部分B2被分別讀取兩次。因此,當(dāng)推斷的存儲(chǔ)字節(jié)存儲(chǔ)順序格式是小端字節(jié)存儲(chǔ)順序時(shí),專用存儲(chǔ)器DM優(yōu)選地在第一和第二連續(xù)地址處存儲(chǔ)字C的讀取的第一部分B0,并在第三和第四連續(xù)地址處存儲(chǔ)讀取的第三部分B2,或者當(dāng)推斷的存儲(chǔ)的字節(jié)存儲(chǔ)順序格式是大端字節(jié)存儲(chǔ)順序時(shí),專用存儲(chǔ)器DM優(yōu)選地在第一和第二連續(xù)地址處存儲(chǔ)讀取的第三部分B2,并在第三和第四連續(xù)地址處存儲(chǔ)讀取的第一部分B0。圖2B中示意性地示出了該示例。
如果N等于32,并且外部存儲(chǔ)器大小等于8,配置模塊CM仍生成對(duì)外部存儲(chǔ)器EM的四個(gè)連續(xù)地址A、A+1、A+2和A+3的4個(gè)8位訪問。當(dāng)推斷的存儲(chǔ)字節(jié)存儲(chǔ)順序格式是小端字節(jié)存儲(chǔ)順序時(shí),專用存儲(chǔ)器DM分別在第一、第二、第三和第四連續(xù)地址處存儲(chǔ)第一部分B0、第二部分B1、第三部分B2和第四部分B3,或者當(dāng)推斷的存儲(chǔ)字節(jié)存儲(chǔ)順序格式是大端字節(jié)存儲(chǔ)順序時(shí),專用存儲(chǔ)器DM在第四、第三、第二和第一、地址處分別存儲(chǔ)第一部分B0、第二部分B1、第三部分B2和第四部分B3圖2C中示意性地示出了該示例。當(dāng)配置模塊CM訪問嵌入式處理器EP的專用存儲(chǔ)器DM時(shí),配置模塊CM可以讀取專用存儲(chǔ)器DM的內(nèi)容并從中推斷外部存儲(chǔ)器EM的大小和字節(jié)存儲(chǔ)順序格式。為了允許這種推斷,配置模塊CM可以具有表格,該表格建立值(存儲(chǔ)在專用存儲(chǔ)器DM中)與大小和字節(jié)存儲(chǔ)順序格式對(duì)之間的對(duì)應(yīng)關(guān)系。
現(xiàn)在參考圖3,描述數(shù)據(jù)處理設(shè)備D的判決算法的示例。在該示例中,仍考慮N等于32,但是如前面已解釋的,這不是強(qiáng)制性的。
當(dāng)由專用命令激活存儲(chǔ)在內(nèi)部存儲(chǔ)器IM中的引導(dǎo)代碼時(shí),該算法開始。
在步驟10中,至少對(duì)外部存儲(chǔ)器接口EMI和專用存儲(chǔ)器DM的內(nèi)容進(jìn)行復(fù)位。
在步驟20中,配置模塊CM優(yōu)選地在命令(外部存儲(chǔ)器接口EMI)讀取外部存儲(chǔ)器EM的數(shù)據(jù)字C的N位之前,預(yù)設(shè)嵌入式處理器EP的字節(jié)存儲(chǔ)順序(或操作模式)為小端字節(jié)存儲(chǔ)順序。
在步驟30中,配置模塊CM優(yōu)選地設(shè)定外部存儲(chǔ)器接口EMI的寬度為8位,以便外部存儲(chǔ)器接口EMI在所選地址A處訪問外部存儲(chǔ)器EM,以讀取存儲(chǔ)的N位數(shù)據(jù)字C的8位的部分。
在步驟40中,外部存儲(chǔ)器接口EMI通過存儲(chǔ)總線MB訪問外部存儲(chǔ)器EM,以讀取存儲(chǔ)的N位數(shù)據(jù)字C的8位的部分。外部存儲(chǔ)器接口EMI通過處理器總線BP,將讀取的部分傳輸?shù)角度胧教幚砥鱁P,以便把讀取的部分存儲(chǔ)到專用的存儲(chǔ)器DM中。然后配置模塊CM訪問專用存儲(chǔ)器DM,以讀取其內(nèi)容,并推斷外部存儲(chǔ)器EM的大小和字節(jié)存儲(chǔ)順序格式。
在步驟50中,配置模塊CM將推斷的大小與32位相比較。
如果推斷的大小等于32位,則在步驟60中,配置模塊CM設(shè)定外部存儲(chǔ)器接口EMI的寬度為32位,然后前進(jìn)到步驟90。
如果推斷的大小不等于32位,則在步驟70中配置模塊CM將推斷的大小與16位相比較。如果推斷的大小等于16位,則配置模塊CM在步驟80中設(shè)定外部存儲(chǔ)器接口EMI的寬度為16位,然后前進(jìn)到步驟90。如果推斷的大小不等于16位,則配置模塊CM推斷該大小等于8位。所以,它就不必改變外部存儲(chǔ)器接口EMI的寬度(相當(dāng)于確認(rèn)了步驟20中的字節(jié)存儲(chǔ)順序的預(yù)設(shè)),然后前進(jìn)到步驟90。
在步驟90中,配置模塊CM將推斷的字節(jié)存儲(chǔ)順序格式與大端字節(jié)存儲(chǔ)順序相比較。
如果推斷的字節(jié)存儲(chǔ)順序格式不等于大端字節(jié)存儲(chǔ)順序,則配置模塊CM推斷外部存儲(chǔ)器的字節(jié)存儲(chǔ)順序格式是小端字節(jié)存儲(chǔ)順序。所以,它不必改變嵌入式處理器EP的操作模式(或字節(jié)存儲(chǔ)順序)(在步驟20中預(yù)設(shè)的),然后前進(jìn)到步驟110。
如果推斷的字節(jié)存儲(chǔ)順序格式等于大端字節(jié)存儲(chǔ)順序,則配置模塊CM在步驟100中設(shè)定嵌入式處理器EP的字節(jié)存儲(chǔ)順序(或操作模式)為大端字節(jié)存儲(chǔ)順序,然后前進(jìn)到步驟110。
最后,在步驟110中,為了運(yùn)行應(yīng)用X的程序,嵌入式處理器EP通過處理器總線BP、外部存儲(chǔ)器接口EMI和存儲(chǔ)總線MB,訪問應(yīng)用X的程序。
在該算法的步驟20中,預(yù)設(shè)嵌入式處理器EP的字節(jié)存儲(chǔ)順序?yàn)樾《俗止?jié)存儲(chǔ)順序。但是在不同的示例中,可以預(yù)設(shè)嵌入式處理器EP的字節(jié)存儲(chǔ)順序?yàn)榇蠖俗止?jié)存儲(chǔ)順序。在這種情況下,在步驟90中,配置模塊CM將推斷的字節(jié)存儲(chǔ)順序格式與小端字節(jié)存儲(chǔ)順序相比較,并且在步驟100中,設(shè)定嵌入式處理器EP的字節(jié)存儲(chǔ)順序(或操作模式)為小端字節(jié)存儲(chǔ)順序。
數(shù)據(jù)處理設(shè)備D典型地用硬件和軟件模塊的結(jié)合來實(shí)現(xiàn)。
本發(fā)明不限于上述數(shù)據(jù)處理設(shè)備和移動(dòng)電話的實(shí)施例,實(shí)施例僅僅作為示例,在權(quán)利要求的范圍內(nèi),本發(fā)明包括本領(lǐng)域技術(shù)人員可想到的所有可選實(shí)施例。
權(quán)利要求
1.一種數(shù)據(jù)處理設(shè)備(D),包括外部存儲(chǔ)器(EM),用于以字節(jié)存儲(chǔ)順序格式存儲(chǔ)對(duì)程序的至少一部分進(jìn)行定義的數(shù)據(jù);以及集成電路(IC),經(jīng)由具有N位寬度的存儲(chǔ)總線(MB)與所述外部存儲(chǔ)器(EM)相連,并包括i)適于運(yùn)行所述程序的嵌入式處理器(EP)、ii)用于存儲(chǔ)至少所述程序的引導(dǎo)代碼的內(nèi)部存儲(chǔ)器(IM)、iii)與所述存儲(chǔ)總線(MB)相連的外部存儲(chǔ)器接口(EMI)和iv)將所述內(nèi)部存儲(chǔ)器(IM)和所述外部存儲(chǔ)器接口(EMI)與所述嵌入式處理器(EP)相連的處理器總線(PB),所述數(shù)據(jù)處理設(shè)備(D)的特征在于所述外部存儲(chǔ)器(EM)被設(shè)置來在所選的地址處存儲(chǔ)N位數(shù)據(jù)字,所述數(shù)據(jù)字具有代表其大小的值和所存儲(chǔ)的程序數(shù)據(jù)的字節(jié)存儲(chǔ)順序格式,所述值等于N/8位;所述數(shù)據(jù)處理設(shè)備(D)的特征在于,還包括配置裝置(CM),與所述嵌入式處理器(EP)和所述外部存儲(chǔ)器接口(EMI)耦合,被設(shè)置來根據(jù)由所述外部存儲(chǔ)器接口(EMI)在所述外部存儲(chǔ)器(EM)的所選地址處讀取的所述N位數(shù)據(jù)字的8位中的至少一個(gè)部分,推斷外部存儲(chǔ)器(EM)的大小和存儲(chǔ)字節(jié)存儲(chǔ)順序格式,并根據(jù)所述推斷的外部存儲(chǔ)器大小來設(shè)定所述外部存儲(chǔ)器接口(EMI)的寬度、以及根據(jù)所述推斷的存儲(chǔ)字節(jié)存儲(chǔ)順序格式來設(shè)定所述嵌入式處理器(EP)的數(shù)據(jù)處理模式。
2.根據(jù)權(quán)利要求1所述的數(shù)據(jù)處理設(shè)備,其特征在于所述配置裝置(CM)被設(shè)置來控制所述外部存儲(chǔ)器接口(EMI),以預(yù)設(shè)所述外部存儲(chǔ)器接口為8位寬度,從而所述接口在所選地址處訪問所述外部存儲(chǔ)器(EM),以讀取所述存儲(chǔ)的N位數(shù)據(jù)字的8位的所述部分。
3.根據(jù)權(quán)利要求1和2之一所述的數(shù)據(jù)處理設(shè)備,其特征在于所述配置裝置被設(shè)置來在讀取所述外部存儲(chǔ)器(EM)的所述N位數(shù)據(jù)字之前,以小端字節(jié)存儲(chǔ)順序格式預(yù)設(shè)所述嵌入式處理器(EP)的數(shù)據(jù)處理模式。
4.根據(jù)權(quán)利要求3所述的數(shù)據(jù)處理設(shè)備,其特征在于所述配置裝置(CM)被設(shè)置來在所述推斷的存儲(chǔ)字節(jié)存儲(chǔ)順序格式是小端字節(jié)存儲(chǔ)順序時(shí),確認(rèn)以小端字節(jié)存儲(chǔ)順序格式的所述嵌入式處理器(EP)的數(shù)據(jù)處理模式的所述預(yù)設(shè),或者在所述推斷的存儲(chǔ)字節(jié)存儲(chǔ)順序格式是大端字節(jié)存儲(chǔ)順序時(shí),以大端字節(jié)存儲(chǔ)順序格式設(shè)定所述嵌入式處理器(EP)的數(shù)據(jù)處理模式。
5.根據(jù)權(quán)利要求1和2之一所述的數(shù)據(jù)處理設(shè)備,其特征在于所述配置裝置(CM)被設(shè)置來在讀取所述外部存儲(chǔ)器(EM)中的所述N位數(shù)據(jù)字之前,以大端字節(jié)存儲(chǔ)順序格式預(yù)設(shè)所述嵌入式處理器(EP)的數(shù)據(jù)處理模式。
6.根據(jù)權(quán)利要求5所述的數(shù)據(jù)處理設(shè)備,其特征在于所述的配置裝置(CM)被設(shè)置來在所述推斷的存儲(chǔ)字節(jié)存儲(chǔ)順序格式是大端字節(jié)存儲(chǔ)順序時(shí),確認(rèn)以大端字節(jié)存儲(chǔ)順序格式的所述嵌入式處理器(EP)的數(shù)據(jù)處理模式的所述預(yù)設(shè),或者在所述推斷的存儲(chǔ)字節(jié)存儲(chǔ)順序格式是小端字節(jié)存儲(chǔ)順序時(shí),以小端字節(jié)存儲(chǔ)順序格式設(shè)定所述嵌入式處理器(EP)的數(shù)據(jù)處理模式。
7.根據(jù)權(quán)利要求1至6之一所述的數(shù)據(jù)處理設(shè)備,其特征在于所述的配置裝置(CM)被設(shè)置來生成對(duì)所述外部存儲(chǔ)器(EM)的從所述所選地址開始的連續(xù)地址處的N/8個(gè)8位訪問,以讀取所述N位數(shù)據(jù)字的至少所述一個(gè)部分,以及所述嵌入式處理器(EP)包括專用存儲(chǔ)器(DM),所述專用存儲(chǔ)器(DM)的大小等于N,并被設(shè)置來在N/8個(gè)連續(xù)地址處存儲(chǔ)的所述N位數(shù)據(jù)字的每個(gè)讀取的部分。
8.根據(jù)權(quán)利要求7所述的數(shù)據(jù)處理設(shè)備,其特征在于,當(dāng)N等于32,并且所述外部存儲(chǔ)器大小等于32時(shí),所述的配置裝置(CM)被設(shè)置來生成對(duì)所述的外部存儲(chǔ)器(EM)的從所述所選地址開始的四個(gè)連續(xù)地址處的4個(gè)8位訪問,以讀取所述N位數(shù)據(jù)字的第一部分四次,以及所述專用存儲(chǔ)器(DM)被設(shè)置來在第一、第二、第三和第四連續(xù)地址處存儲(chǔ)所述N位數(shù)據(jù)字的所述讀取的第一部分,而不論推斷的字節(jié)存儲(chǔ)順序格式是何種格式。
9.根據(jù)權(quán)利要求7所述的數(shù)據(jù)處理設(shè)備,其特征在于,當(dāng)N等于32,并且所述外部存儲(chǔ)器大小等于16時(shí),所述的配置裝置(CM)被設(shè)置來生成對(duì)所述外部存儲(chǔ)器(EM)的從所述所選地址開始的四個(gè)連續(xù)地址處的4個(gè)8位訪問,以讀取所述N位數(shù)據(jù)字的的第一部分和第三部分兩次,以及所述專用存儲(chǔ)器(DM)被設(shè)置來在所述推斷的存儲(chǔ)字節(jié)存儲(chǔ)順序格式是小端字節(jié)存儲(chǔ)順序時(shí),在專用存儲(chǔ)器的連續(xù)的第一和第二個(gè)地址處存儲(chǔ)讀取的第一部分、以及在第三和第四連續(xù)地址處存儲(chǔ)讀取的第三部分,或者在所述推斷的存儲(chǔ)字節(jié)存儲(chǔ)順序格式是大端字節(jié)存儲(chǔ)順序時(shí),在第一和第二連續(xù)地址處存儲(chǔ)讀取的第三部分、以及在第三和第四連續(xù)地址處存儲(chǔ)讀取的第一部分。
10.根據(jù)權(quán)利要求7所述的數(shù)據(jù)處理設(shè)備,其特征在于,當(dāng)N等于32,并且所述外部存儲(chǔ)器大小等于8時(shí),所述配置裝置(CM)被設(shè)置來生成對(duì)所述外部存儲(chǔ)器(EM)的從所述所選地址開始的四個(gè)連續(xù)地址的4個(gè)8位訪問,以讀取所述N位數(shù)據(jù)字的第一、第二、第三和第四連續(xù)部分,以及所述專用存儲(chǔ)器(DM)被設(shè)置來在所述推斷的存儲(chǔ)字節(jié)存儲(chǔ)順序格式是小端字節(jié)存儲(chǔ)順序時(shí),在第一、第二、第三和第四連續(xù)地址處分別存儲(chǔ)所述第一、第二、第三和第四部分,或者在所述推斷的存儲(chǔ)字節(jié)存儲(chǔ)順序格式是大端字節(jié)存儲(chǔ)順序時(shí),在所述第四、第三、第二和第一地址分別存儲(chǔ)所述第一、第二、第三和第四部分。
11.一種移動(dòng)電話,其特征在于包括根據(jù)前述權(quán)利要求之一所述的數(shù)據(jù)處理設(shè)備(D)。
全文摘要
一種數(shù)據(jù)處理設(shè)備(D),包括外部存儲(chǔ)器(EM),用于以字節(jié)存儲(chǔ)順序格式存儲(chǔ)對(duì)程序的至少一部分進(jìn)行定義的數(shù)據(jù);以及集成電路(IC),經(jīng)由具有N位寬度的存儲(chǔ)總線(MB)與所述外部存儲(chǔ)器(EM)相連,并包括i)適于運(yùn)行所述程序的嵌入式處理器(EP);ii)用于存儲(chǔ)至少所述程序的引導(dǎo)代碼的內(nèi)部存儲(chǔ)器(IM);iii)與所述存儲(chǔ)總線(MB)相連的外部存儲(chǔ)器接口(EMI)和iv)將所述內(nèi)部存儲(chǔ)器(IM)和所述外部存儲(chǔ)器接口(EMI)與所述嵌入式處理器(EP)相連的處理器總線(PB)。所述外部存儲(chǔ)器(EM)在所選的地址處存儲(chǔ)N位數(shù)據(jù)字(C),所述數(shù)據(jù)字(C)具有代表其大小的值(等于N/8位)和所存儲(chǔ)的程序數(shù)據(jù)的字節(jié)存儲(chǔ)順序格式。所述數(shù)據(jù)處理設(shè)備(D)還包括配置裝置(CM),與所述嵌入式處理器(EP)和所述外部存儲(chǔ)器接口(EMI)耦合,被設(shè)置來根據(jù)由所述外部存儲(chǔ)器接口(EMI)在所述外部存儲(chǔ)器(EM)的所選地址處讀取的所述N位數(shù)據(jù)字(C)的8位中的至少一個(gè)部分,推斷外部存儲(chǔ)器(EM)的大小和存儲(chǔ)字節(jié)存儲(chǔ)順序格式,并根據(jù)所述推斷的外部存儲(chǔ)器大小來設(shè)定所述外部存儲(chǔ)器接口(EMI)的寬度、以及根據(jù)所述推斷的存儲(chǔ)字節(jié)存儲(chǔ)順序格式來設(shè)定所述嵌入式處理器(EP)的數(shù)據(jù)處理模式。
文檔編號(hào)G06F9/34GK101031900SQ200580032847
公開日2007年9月5日 申請(qǐng)日期2005年7月19日 優(yōu)先權(quán)日2004年7月30日
發(fā)明者帕特里克·富爾徹里, 弗朗索瓦·尚塞爾 申請(qǐng)人:皇家飛利浦電子股份有限公司