基于系統(tǒng)級(jí)芯片內(nèi)部SRAM與外部SDRAM組合設(shè)計(jì)方法
發(fā)布時(shí)間:2009/3/3 0:00:00 訪問次數(shù):1574
很多系統(tǒng)級(jí)芯片帶有內(nèi)部存儲(chǔ)器,它具有速度快功耗低的優(yōu)點(diǎn),但容量卻不是很大,因此需要和外部存儲(chǔ)器結(jié)合起來使用。本文介紹如何配置系統(tǒng)以使片上sram和片外sdram一起構(gòu)成一個(gè)連續(xù)的存儲(chǔ)空間,達(dá)到比單獨(dú)使用sdram時(shí)等待時(shí)間更短且功耗更低的目的。
lh79520是一種具有較高集成度的系統(tǒng)級(jí)芯片,可廣泛用于多種便攜式設(shè)備。該芯片帶有32kb片上sram,可用作lcd顯示器的片上幀緩存器。但不幸的是,32kb對(duì)多數(shù)彩色顯示器存儲(chǔ)容量太小,例如一個(gè)320×240 8位像素顯示器需要75kb存儲(chǔ)空間。盡管如此,由于片上存儲(chǔ)器速度快,功耗也比sdram小很多,所以把片上sram作為大型幀緩沖器的一個(gè)部分還是有意義的。
lh79520內(nèi)部有一個(gè)arm720t核,該內(nèi)核包含存儲(chǔ)器管理單元(mmu),可以區(qū)分物理存儲(chǔ)器地址和虛擬存儲(chǔ)器地址。如果arm720t的mmu處于工作狀態(tài),處理器將執(zhí)行虛擬存儲(chǔ)器地址的代碼,虛擬地址可映射到完全不同的物理地址。
初看之下,將sram與sdram合并的任務(wù)像是mmu的工作,但遺憾的是mmu只為處理器內(nèi)核進(jìn)行地址轉(zhuǎn)化,像彩色lcd控制器(clcdc)之類的dma外設(shè)不是arm720t內(nèi)核的一部分,所以dma外設(shè)只能使用物理地址。為了把片上sram和sdram組合成一個(gè)相連的物理地址空間,必須利用lh79520的remap功能和片上sram的地址映射特性。
復(fù)位后lh79520的內(nèi)存映象如圖1最左列所示。將lh79520的復(fù)位、狀態(tài)和功率控制器(rcpc)中的remap寄存器設(shè)定為0b10后,程序會(huì)把片上sram移到緊挨著sdram存儲(chǔ)器的位置。由于片上sram只有32kb,這樣在片上sram最后地址0x00007fff和sdram第一個(gè)地址0x20000000之間會(huì)有一個(gè)很大的空隙。
地址映射反映了在具體器件上,程序訪問最后一個(gè)物理地址存儲(chǔ)器時(shí)會(huì)發(fā)生什么情況。當(dāng)remap等于0b10時(shí),32kb片上sram物理地址范圍為0x00000000~0x00007fff,片上sram地址總線只有15位。如果代碼想進(jìn)入地址為0x00008000的存儲(chǔ)器,那么sram地址總線0位到14位為0,而第15位應(yīng)該為1,但卻不會(huì)出現(xiàn)這種情況因?yàn)闆]有第16條地址線。所以進(jìn)入0x00008000實(shí)際上是進(jìn)入地址為0x00000000的存儲(chǔ)器,于是在0x00000000~0x1ffffffff范圍里,地址重復(fù)使得片上sram每隔32kb就會(huì)在地址空間里有一個(gè)映射(圖2)。
所以,要從片上sram和sdram上創(chuàng)建一個(gè)75kb幀緩沖器就要把clcdc上格幀緩沖器設(shè)定在0x1fff8000地址上,于是幀緩沖器范圍將從0x1fff8000~0x2000abff。
多數(shù)lh79520應(yīng)用需要從虛擬地址0x00000000開始放置異常矢量,由于remap寄存器已經(jīng)設(shè)定為0b10,所以從0x00000000開始的物理地址空間已經(jīng)被第一個(gè)32kb或幀緩沖器所占有。如果系統(tǒng)中斷速率很高,程序?qū)?huì)受益于使用片上sram進(jìn)行異常處理。對(duì)這類系統(tǒng),只要把開始地址在clcdc的片上幀緩沖器設(shè)定到內(nèi)部存儲(chǔ)器并跟隨所有異常處理代碼地址,如果異常處理代碼有1kb,就將clcdc幀緩沖器開始代碼設(shè)定為0x1fff8400。
另一方面,由于lh79520從虛擬地址取回指令,因此不必保存幀緩沖器應(yīng)用所需要的空間異常向量。mmu允許把任何需要的內(nèi)存放在虛擬地址0x00000000處,例如可以把4kb的sdram映射到虛擬地址0x00000000上,并把異常矢量拷貝到新的虛擬地址。當(dāng)然,還得用mmu來給幀緩沖器創(chuàng)建一個(gè)相鄰的虛擬存儲(chǔ)空間。假如有快速圖形庫,則對(duì)mmu編程時(shí)應(yīng)該使幀緩沖器虛擬內(nèi)存空間作為高速緩存,而不是寫緩沖器,這樣能夠減少幀緩沖器更新的等待時(shí)間。
歡迎轉(zhuǎn)載,信息來自維庫電子市場(chǎng)網(wǎng)(www.dzsc.com)
很多系統(tǒng)級(jí)芯片帶有內(nèi)部存儲(chǔ)器,它具有速度快功耗低的優(yōu)點(diǎn),但容量卻不是很大,因此需要和外部存儲(chǔ)器結(jié)合起來使用。本文介紹如何配置系統(tǒng)以使片上sram和片外sdram一起構(gòu)成一個(gè)連續(xù)的存儲(chǔ)空間,達(dá)到比單獨(dú)使用sdram時(shí)等待時(shí)間更短且功耗更低的目的。
lh79520是一種具有較高集成度的系統(tǒng)級(jí)芯片,可廣泛用于多種便攜式設(shè)備。該芯片帶有32kb片上sram,可用作lcd顯示器的片上幀緩存器。但不幸的是,32kb對(duì)多數(shù)彩色顯示器存儲(chǔ)容量太小,例如一個(gè)320×240 8位像素顯示器需要75kb存儲(chǔ)空間。盡管如此,由于片上存儲(chǔ)器速度快,功耗也比sdram小很多,所以把片上sram作為大型幀緩沖器的一個(gè)部分還是有意義的。
lh79520內(nèi)部有一個(gè)arm720t核,該內(nèi)核包含存儲(chǔ)器管理單元(mmu),可以區(qū)分物理存儲(chǔ)器地址和虛擬存儲(chǔ)器地址。如果arm720t的mmu處于工作狀態(tài),處理器將執(zhí)行虛擬存儲(chǔ)器地址的代碼,虛擬地址可映射到完全不同的物理地址。
初看之下,將sram與sdram合并的任務(wù)像是mmu的工作,但遺憾的是mmu只為處理器內(nèi)核進(jìn)行地址轉(zhuǎn)化,像彩色lcd控制器(clcdc)之類的dma外設(shè)不是arm720t內(nèi)核的一部分,所以dma外設(shè)只能使用物理地址。為了把片上sram和sdram組合成一個(gè)相連的物理地址空間,必須利用lh79520的remap功能和片上sram的地址映射特性。
復(fù)位后lh79520的內(nèi)存映象如圖1最左列所示。將lh79520的復(fù)位、狀態(tài)和功率控制器(rcpc)中的remap寄存器設(shè)定為0b10后,程序會(huì)把片上sram移到緊挨著sdram存儲(chǔ)器的位置。由于片上sram只有32kb,這樣在片上sram最后地址0x00007fff和sdram第一個(gè)地址0x20000000之間會(huì)有一個(gè)很大的空隙。
地址映射反映了在具體器件上,程序訪問最后一個(gè)物理地址存儲(chǔ)器時(shí)會(huì)發(fā)生什么情況。當(dāng)remap等于0b10時(shí),32kb片上sram物理地址范圍為0x00000000~0x00007fff,片上sram地址總線只有15位。如果代碼想進(jìn)入地址為0x00008000的存儲(chǔ)器,那么sram地址總線0位到14位為0,而第15位應(yīng)該為1,但卻不會(huì)出現(xiàn)這種情況因?yàn)闆]有第16條地址線。所以進(jìn)入0x00008000實(shí)際上是進(jìn)入地址為0x00000000的存儲(chǔ)器,于是在0x00000000~0x1ffffffff范圍里,地址重復(fù)使得片上sram每隔32kb就會(huì)在地址空間里有一個(gè)映射(圖2)。
所以,要從片上sram和sdram上創(chuàng)建一個(gè)75kb幀緩沖器就要把clcdc上格幀緩沖器設(shè)定在0x1fff8000地址上,于是幀緩沖器范圍將從0x1fff8000~0x2000abff。
多數(shù)lh79520應(yīng)用需要從虛擬地址0x00000000開始放置異常矢量,由于remap寄存器已經(jīng)設(shè)定為0b10,所以從0x00000000開始的物理地址空間已經(jīng)被第一個(gè)32kb或幀緩沖器所占有。如果系統(tǒng)中斷速率很高,程序?qū)?huì)受益于使用片上sram進(jìn)行異常處理。對(duì)這類系統(tǒng),只要把開始地址在clcdc的片上幀緩沖器設(shè)定到內(nèi)部存儲(chǔ)器并跟隨所有異常處理代碼地址,如果異常處理代碼有1kb,就將clcdc幀緩沖器開始代碼設(shè)定為0x1fff8400。
另一方面,由于lh79520從虛擬地址取回指令,因此不必保存幀緩沖器應(yīng)用所需要的空間異常向量。mmu允許把任何需要的內(nèi)存放在虛擬地址0x00000000處,例如可以把4kb的sdram映射到虛擬地址0x00000000上,并把異常矢量拷貝到新的虛擬地址。當(dāng)然,還得用mmu來給幀緩沖器創(chuàng)建一個(gè)相鄰的虛擬存儲(chǔ)空間。假如有快速圖形庫,則對(duì)mmu編程時(shí)應(yīng)該使幀緩沖器虛擬內(nèi)存空間作為高速緩存,而不是寫緩沖器,這樣能夠減少幀緩沖器更新的等待時(shí)間。
歡迎轉(zhuǎn)載,信息來自維庫電子市場(chǎng)網(wǎng)(www.dzsc.com)
熱門點(diǎn)擊
- SmartMedia卡介紹
- USB接口內(nèi)部結(jié)構(gòu)
- SmartMedia卡的操作命令
- (DIMM)雙列存貯器組件
- CAN總線的仲裁
- (SIMM)單列存貯器組件原理及參數(shù)
- DRAM模塊原理
- 影響DRAM存儲(chǔ)密度的工藝技術(shù)分析
- 基于系統(tǒng)級(jí)芯片內(nèi)部SRAM與外部SDRAM組
- SmartMedia管腳定義
推薦技術(shù)資料
- F28P65x C2000 實(shí)時(shí)微控制器
- ARM Cortex-M33 內(nèi)核̴
- 氮化鎵二極管和晶體管̴
- Richtek RT5716設(shè)
- 新一代旗艦芯片麒麟9020應(yīng)用
- 新品WTOLC-4X50H32
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動(dòng)IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機(jī)遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計(jì)
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究