<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 設計應用 > AM186EM處理器的地址空間優(yōu)化及應用

AM186EM處理器的地址空間優(yōu)化及應用

作者: 時(shí)間:2016-10-10 來(lái)源:網(wǎng)絡(luò ) 收藏

摘要:本文介紹了一種基于處理器的優(yōu)化應用,當系統需要處理器支持的最大容量?jì)却鏁r(shí),FLASH和外圍存儲器(例如雙口RAM等)可以共用處理器的c.jpg選通信號,從而實(shí)現FLASH和外圍存儲器共用盡可能大的。同樣,當系統需要最大容量的FLASH時(shí),內存RAM和外圍存儲器可以共用處理器的d.jpg選通信號,從而實(shí)現RAM和外圍存儲器共用盡可能大的。
引言
隨著(zhù)通信技術(shù)的迅速發(fā)展,各種新業(yè)務(wù)層出不窮,電信運營(yíng)商對通信設備的功能需求日益增多,因此,通信設備經(jīng)常需要升級軟件版本,而隨著(zhù)功能的日趨完善,軟 件版本所需的存儲空間越來(lái)越大。電信級的通信設備對實(shí)時(shí)性的要求很高,往往需要較大的內存來(lái)存儲實(shí)時(shí)數據,因此,通信設備中往往配置盡可能多的內存。另一 方面,激烈的競爭促使各通信設備制造商盡可能采用物美價(jià)廉的器件以降低設備成本。一些廉價(jià)而高性能的處理器獲得了廣泛的應用,然而這一類(lèi)處理器的尋址空間 往往是有限的。處理器由于其低成本、高性能,在基于x86架構的嵌入式系統及通信設備中獲得了廣泛應用。
1 處理器及通用設計
AM186EM處理器只有20位地址的尋址空間,即存儲器的尋址范圍只有1M空間,包括內存RAM、程序存儲器FLASH以及外圍存儲器(如雙口RAM等)映射到存儲器的尋址范圍。
圖1是AM186EM處理器的寄存器設置圖,可以分別設置高端存儲器片選(Upper Memory Chip Select,UMCS)寄存器、低端存儲器片選(Lower Memory ChipSelect,LMCS)寄存器、中端存儲器片選(Midrange Memory Chip Select,MMCS)寄存器以及輔助(PCS and MCSAuxiliary,MPCS)寄存器這4個(gè)寄存器的地址范圍,而且UMCS、LMCS和MMCS寄存器可以針對不同設備的讀寫(xiě)速率分別設置不同的等待狀態(tài)。

本文引用地址:http://dyxdggzs.com/article/201610/306156.htm

a.jpg
UMCS寄存器中LB2~LB0指定了c.jpg選通的高端存儲器的容量,容量大小可以為64K、128K、256K或512K;LMCS寄存器中UB2~UB0指定了d.jpg選通的低端存儲器的容量,容量大小可以為64K、128K、256K或512K;MMCS寄存器中的BA19~BA13指定了e.jpg選通的中端存儲器的起始地址;MPCS寄存器中的M6~M0指定了e.jpg選通的中端存儲器的容量。
另外,UMCS、LMCS和MMCS寄存器中的R2分別指定了c.jpg、d.jpgc.jpg選通的存儲器是否引入外部Ready信號延時(shí);UMCS、LMCS和MMCS寄存器中的R1和R0分別指定了c.jpg、d.jpgc.jpg選通的存儲器引入的等待狀態(tài)。
AM186EM處理器提供了3個(gè)片選信號:高端存儲器選通信號c.jpg用于FLASH片選;低端存儲器選通信號d.jpg用于RAM片選;中端存儲器選通信號e.jpg用于外圍存儲器的片選。
圖2是采用AM186EM處理器的通信設備的設計框圖。硬件上分別將AM186EM處理器的c.jpg、d.jpge.jpg分別作為FLASH、RAM和外圍存儲器的片選信號。軟件上分別設置UMCS寄存器確定c.jpg訪(fǎng)問(wèn)的FLASH的容量和等待狀態(tài),無(wú)須外部Ready信號;設置LMCS寄存器確定d.jpg訪(fǎng)問(wèn)的RAM容量和等待狀態(tài),元需外部Ready信號;設置MMCS和MPCS寄存器確定e.jpg訪(fǎng)問(wèn)的外圍存儲器的起始地址、容量和等待狀態(tài),無(wú)須外部Ready信號。

b.jpg


這種設計的缺點(diǎn)是:假設通信設備對RAM的需求很大,需要設置LMCS寄存器的選通范圍為處理器允許設置的最大RAM容量,即512K內存。因 此,FLASH和外圍存儲器共用另外的512K的地址范圍。但是設置UMCS寄存器時(shí)只能選擇64K、128K、256K或512K的地址范圍,而外圍存 儲器的地址范圍一般用不到256K的地址范圍(例如只使用了64K)。這樣,系統的FLASH容量往往受限于256K的空間,因此系統若要增加新的業(yè)務(wù)處 理程序,卻則會(huì )受到很大限制,而另一方面,AM186EM處理器的1M尋址空間中有些地址空間未使用。
同樣,對于另一類(lèi)通信設備,如果系統最初的地址空間分配已經(jīng)設置UMCS寄存器的選通范圍為處理器允許設置的最大FLASH容量(即512K FLASH),則內存和外圍存儲器共用另外的512K的地址范圍。但是設置LMCS寄存器時(shí)只能選擇64K、128K、256K或512K的地址范圍,而 外圍存儲器的地址范圍一般用不到256K的地址范圍(例如只使用了64K)。這樣,系統的RAM容量往往受限于256K的空間,因此系統若因新的業(yè)務(wù)處理 程序需要更大的內存,則會(huì )受到很大限制,而另一方面AM186EM處理器的1M尋址空間中有些地址空間也未使用。

2 基于A(yíng)M186EM的地址空間優(yōu)化應用
針對AM186EM處理器,提供了一種地址空間優(yōu)化的應用,可以擴展FLASH或者內存的可用空間,最大化利用處理器提供的地址空間范圍。以采用了最大 RAM容量(512K)的通信設備為例,對擴展該設備FLASH容量的情況進(jìn)行詳細說(shuō)明。對于采用了最大FLASH容量(512K)的通信設備,如何擴展 該設備的RAM容量,其實(shí)現原理是類(lèi)似的。
圖3是基于A(yíng)M186EM處理器的采用地址空間優(yōu)化的通信設備的設計框圖。對于采用最大RAM容量的通信設備,設置對應選通RAM地址范圍的低端寄存器, 使處理器能夠選通允許設置的最大RAM容量(512K)。接下來(lái),使FLASH和外圍存儲器(如雙口RAM等)共享處理器高端寄存器允許設置的最大容量 (512K),這樣,除去外圍存儲器所需的容量外,剩余的空間可以全部作為FLASH的尋址空間。

f.jpg


硬件上,除了利用高端地址選擇信號c.jpg對FLASH和外圍存儲器進(jìn)行選通外,還要利用地址譯碼器來(lái)區分FLASH和外圍存儲器的片選:用地址譯碼器產(chǎn)生外圍存儲器的地址選通范圍,然后將AM186EM處理器的c.jpg和外圍存儲器的地址范圍,經(jīng)過(guò)與門(mén)相與后作為外圍存儲器的片選信號;將c.jpg和除去外圍存儲器的地址范圍,經(jīng)過(guò)與門(mén)相與后作為FLASH的片選信號;將d.jpg作為RAM的片選信號。這樣,FLASH和外圍存儲器實(shí)現了共用c.jpg選通的地址范圍。
FLASH和外圍存儲器的訪(fǎng)問(wèn)速率不同,為了避免處理器訪(fǎng)問(wèn)FLASH或內存時(shí)與訪(fǎng)問(wèn)外圍存儲器時(shí)采用同樣的等待周期(以訪(fǎng)問(wèn)速率低的為標準)從而影響到 系統的性能,不能通過(guò)設置UMCS寄存器引入統一的等待狀態(tài)??梢圆捎迷诳删幊唐骷﨏PLD中產(chǎn)生兩個(gè)不同的Ready信號,針對FLASH和外圍存儲器 的訪(fǎng)問(wèn)引入不同的延時(shí),兩個(gè)Ready信號通過(guò)一個(gè)二選一的算法(根據是FLASH的地址范圍,還是外圍存儲器的地址范圍)輸入到AM186EM處理器的 異步Ready信號輸入端(ARDY)。
軟件上設置UMCS寄存器確定c.jpg訪(fǎng)問(wèn)的容量(可達512K),不需要等待狀態(tài),引入外部Ready信號。由于外部輸入的Ready信號不同,因而訪(fǎng)問(wèn)FLASH或內存的速度和訪(fǎng)問(wèn)外圍存儲器的速度也不同。
圖4是輸入到AM186EM處理器的ARDY輸入端的Ready信號的產(chǎn)生時(shí)序圖。對于A(yíng)M186EM處理器而言,一般情況下,一個(gè)指令周期等于4個(gè)時(shí)鐘 周期。引入外部Readyr信號后,處理器會(huì )從指令的第三個(gè)時(shí)鐘周期開(kāi)始采樣Ready信號的狀態(tài),若Ready信號有效(高電平),則在下一個(gè)時(shí)鐘周期 操作相應的設備;若Ready信號無(wú)效(低電平),則不執行任何操作,在下一個(gè)時(shí)鐘周期再次采樣Ready信號的狀態(tài)。因此,Ready信號產(chǎn)生的原理是 針對不同的設備通過(guò)低電平產(chǎn)生合適的延時(shí)后,再通過(guò)高電平使信號有效,這樣,處理器在下一個(gè)時(shí)鐘周期就可以操作該設備了。

g.jpg



結語(yǔ)
以AM186EM處理器為例,提出一種地址空間優(yōu)化應用方法,共用處理器的c.jpg選 通信。這樣實(shí)現了FLASH或RAM和外圍存儲器可以共用盡可能大的地址空間,因而克服了傳統的FLASH或RAM與外圍存儲器使用不同的地址選擇信號所 帶來(lái)的、FLASH或RAM地址空間擴展受限而外圍存儲器地址空間有剩余的弊端。對于其他尋址空間有限的處理器,其實(shí)現原理是類(lèi)似的。



關(guān)鍵詞: AM186EM CPU 地址空間

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>