欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

處理器管理外部存儲器的方法

文檔序號:6444133閱讀:265來源:國知局

專利名稱::處理器管理外部存儲器的方法
技術(shù)領(lǐng)域
:本發(fā)明提供一種存儲器管理的方法,尤指一種處理器管理外部存儲器的方法。
背景技術(shù)
:MCS(MicroComputerSystem)是Intel公司對微處理器的總稱,而其所開發(fā)的MCS-31/32及51/52系列的微處理器更是普遍地應(yīng)用在工業(yè)界中。一般而言,微處理器只含有少量的存儲器及輸入輸出點,以MCS-51系列的單芯片為例,它有4K位組的程序存儲器、128位組的數(shù)據(jù)存儲器以及32條輸入輸出點,MCS-52系列的微處理器則是將程序存儲器增加為8K位組,以及將數(shù)據(jù)存儲器增加為256位組,而MCS-31/32及51/52系列的單芯片同樣是使用一個8位的中央處理單元。程序存儲器是用來存放使用者所撰寫的程序,屬于只讀存儲器(ROM),數(shù)據(jù)存儲器則是隨機存取存儲器(RAM),可供中央處理單元運行時讀取或?qū)懭霐?shù)據(jù),通常是用來當(dāng)程序執(zhí)行時暫時存放數(shù)據(jù)的暫存器。MCS-31/32及51/52系列的微處理器都可以由外部擴充存儲器,最大可擴充至64K位組。然而在一些應(yīng)用之中,使用者可能會需要撰寫很大的程序碼或是使用很大的陣列表,如此一來64K位組的外部擴充程序存儲器仍然不夠使用。存儲庫切換(bankswitch)是一種可以將存儲器大幅擴充的方法,使用單芯片上多出的接腳作為解碼線來對超過64K位組的存儲器作定址,若外部存儲器是一個大容量的存儲器裝置,則多出的接腳可以直接作為地址線,若外部存儲器是多個小容量的存儲器裝置,則多出的接腳可用來選擇存儲器芯片。由于單芯片最大的外部擴充存儲器為64K位組,所以可用64K位組作為存儲庫切換的基本單位,稱為一個頁(page)。存儲庫切換最大的問題在于中斷向量表(interruptvectortable)配置的地址,因為中斷向量表通常會放在存儲器中某個特定的地址,雖然程序在運行時可以在各個頁作切換,但是當(dāng)中斷發(fā)生時,程序會立刻在所在頁中的特定地址去尋找中斷向量表,而且此時程序并無法作存儲庫切換,當(dāng)程序找不到中斷向量表時,便會產(chǎn)生錯誤。一般解決這個問題的方法,便是在每個存儲庫中都保留一公用區(qū)(commonarea),公用區(qū)中存儲中斷向量表、中斷服務(wù)例程(interruptserviceroutine)、通用函式庫以及存儲庫切換所需的數(shù)據(jù),所以不論程序運行在哪一個頁,當(dāng)程序發(fā)生中斷時,程序都可以于所在的頁中找到中斷向量表繼續(xù)程序的執(zhí)行。請參考圖1,圖1為公知外部程序存儲器12配置的示意圖。MCS-51/52系列的單芯片使用存儲庫切換的方式在外部擴充512K位組的存儲器12,分為8個頁,每個頁為64K位組,并保留一定大小(例如10K位組)的公用區(qū)用來存放中斷向量表、中斷服務(wù)例程、通用函式庫以及存儲庫切換所需的數(shù)據(jù)。舉例來說,當(dāng)在第一頁的程序需要呼叫第二頁的程序時,會立即跳至公用區(qū),接著存儲庫設(shè)定例程會設(shè)定所需存儲庫的頁碼,因為對于單芯片而言,在公用區(qū)中改變頁碼并不會影響任何數(shù)據(jù)的地址,接著單芯片就可以依據(jù)設(shè)定的頁碼存取第二頁中所需的程序。于第二頁的程序處理完畢之后,程序會先回到公用區(qū)中,由存儲庫設(shè)定例程將頁碼切換回原來的存儲庫,再回到第一頁中原來程序的地址繼續(xù)執(zhí)行程序。由上述可知,公知MCS-51/52系列的單芯片所提供的程序存儲器,最大只能利用擴充外部程序存儲器至64K位組,但是通過存儲庫切換的技巧,使用單芯片上多出的接腳,可以再將外部程序存儲器作大幅的擴充,但是存儲庫切換有個缺點,就是每個存儲庫之中都必須保留一部分的空間作為公用區(qū),用來存放中斷向量表、中斷服務(wù)例程、通用函式庫以及存儲庫切換所需的數(shù)據(jù),而這些數(shù)據(jù)會復(fù)制并存儲在每個存儲庫的公用區(qū)之中,如此一來,存儲器的空間便無法有效地被利用。
發(fā)明內(nèi)容因此本發(fā)明的主要目的是提供一種處理器管理外部存儲器的方法,以解決上述問題。本發(fā)明提供一種處理器管理外部存儲器的方法包含(a)提供一地址轉(zhuǎn)換器;(b)使用該地址轉(zhuǎn)換器將該處理器的中央處理單元指向該外部存儲器的頁碼及該頁碼內(nèi)的地址轉(zhuǎn)換為該外部存儲器相對應(yīng)的實體地址;以及(c)使用該中央處理器存取該實體地址的數(shù)據(jù)。該方法還包含將單一個公用區(qū)存入該外部存儲器以及將該處理器的中央處理單元指向該外部存儲器的頁碼及該頁碼內(nèi)的公用區(qū)的地址對應(yīng)至該外部存儲器的公用區(qū)的實體地址。圖1為公知外部程序存儲器配置的示意圖。圖2為本發(fā)明單芯片連接外部程序存儲器的示意圖。圖3為本發(fā)明外部程序存儲器配置的示意圖。附圖標(biāo)號說明12外部程序存儲器20單芯片22外部程序存儲器24地址轉(zhuǎn)換器具體實施方式請參考圖2,圖2為本發(fā)明單芯片20連接外部程序存儲器22的示意圖。本發(fā)明在單芯片之中加設(shè)一地址轉(zhuǎn)換器24,用來轉(zhuǎn)換存儲器的配置方式,由于存儲庫交換的存儲器配置方式在每一個存儲庫之中都必須保留一公用區(qū)來存儲中斷向量表、中斷服務(wù)例程、通用函式庫以及存儲庫切換所需的數(shù)據(jù),相當(dāng)耗費存儲器空間,本發(fā)明的單芯片20利用地址轉(zhuǎn)換器24將每一存儲庫中的公用區(qū)都對應(yīng)到同一個公用區(qū)之中,如此便可將原本存儲庫中公用區(qū)的空間節(jié)省下來存儲其它的數(shù)據(jù)。使用地址轉(zhuǎn)換器24來重新配置存儲器可以更有效地利用存儲器,而節(jié)省下來的存儲器空間則配置于其它的存儲庫之中,舉例來說,原本使用存儲庫交換只能配置成8個存儲庫的存儲器空間,使用地址轉(zhuǎn)換器將存儲器重新配置之后,可以得到9個或更多存儲庫,多出的存儲庫就是節(jié)省各個存儲庫中公用區(qū)所得到的空間。地址轉(zhuǎn)換器24將單芯片20的端口0-2(P0,P1,P2)轉(zhuǎn)換為定址接腳(A23-0),而圖2中的AD7-0則是用來讀取存儲器的數(shù)據(jù),由于存儲器在重新配置后可能會多出多個存儲庫,所以地址轉(zhuǎn)換器24在單芯片20的內(nèi)部會多使用多只虛擬的接腳來與中央處理單元溝通,用來對多出的存儲庫作定址。此外,于實施時,單芯片20內(nèi)部另外設(shè)有一切換裝置(圖未示),可由使用者自行切換是否使用連接地址轉(zhuǎn)換器24,以得到較佳的使用彈性。請參考圖3,圖3為本發(fā)明外部程序存儲器22配置的示意圖。假設(shè)在存儲庫交換的存儲器配置方式中,每一個存儲庫皆需要保留10K位組的存儲器空間作為公用區(qū),由于單芯片20的外部存儲器22的最大可定址范圍是64K位組,所以一個512K位組的存儲器可分成8頁,而每一頁的大小為64K位組,扣掉10K位組的公用區(qū),每一頁可以使用的空間為54K位組,因為公用區(qū)重覆在每一頁之中,所以浪費了10K*(8-1)=70K位組的存儲器空間。為了更有效的利用存儲器空間,重新配置存儲器的使用空間,如圖3所示,512K位組的存儲器22中僅包含一個10K位組的公用區(qū),通常配置在存儲器22的最低地址,當(dāng)中央處理單元在任何一個存儲庫中執(zhí)行到公用區(qū)時,地址轉(zhuǎn)換器24便會將該位置對應(yīng)到這塊區(qū)域,所以新的存儲器配置方式每一頁的最大空間為54K位組,共用分成9頁,第0頁至第8頁各為54K位組,第9頁為16位組,而第8頁及第9頁就是存儲器重新配置后所節(jié)省下來空間。在本實施例中,單芯片20使用端口0及端口2共16只接腳以及端口1的P1.0、P1.1、P1.2三只接腳來對512K位組的存儲器22作定址,通常存儲庫交換會使用端口0及端口2來定址一個64K位組的存儲庫,而端口1的三只接腳則用來作為存儲庫的頁碼選擇,而本實施例則是利用這19只接腳直接對512K位組的存儲器22的實體地址作定址,再通過地址轉(zhuǎn)換器24將存儲庫交換的存儲器配置方式對應(yīng)至存儲器22的實體地址,如此一來,不需要改變?nèi)魏蔚闹噶罴?,中央處理單元仍然是以存儲庫交換的方式來存取外部的擴充存儲器,但是相同大小的存儲器卻有多的使用空間。對于中央處理單元而言,使用地址轉(zhuǎn)換器24重新配置存儲器之后,存儲器變大了,因為地址轉(zhuǎn)換器24將每一個存儲庫中公用區(qū)的地址都指向同一個區(qū)域,所以雖然單芯片只需使用19只接腳來定址512K位組的存儲器,但是經(jīng)由地址轉(zhuǎn)換器所產(chǎn)生的存儲庫卻大于8頁,所以中央處理單元除了需要16只接腳作為每一頁中64K位組的定址,還需要第4只或更多的接腳用來選擇存儲庫的頁碼。公用區(qū)通常配置在實體存儲器的最低地址,不論中央處理單元讀取到任何一頁中的公用區(qū)地址,都會經(jīng)由地址轉(zhuǎn)換器24對應(yīng)到這個區(qū)域內(nèi),而其它地址的對應(yīng)方式如下實體地址=所在頁的地址-公用區(qū)結(jié)束的地址+新所在頁的起始地址其中實體地址為存儲器重新分配的地址,所在頁的地址為中央處理單元在該頁中所存取數(shù)據(jù)的地址,公用區(qū)結(jié)束的地址視公用區(qū)的大小而定,因為一般都將公用區(qū)由存儲庫的起始地址開始存儲,新所在頁的起始地址為中央處理單元的存取所在頁相對應(yīng)于存儲器重新配置后的所在頁的起始地址。舉例來說,中央處理單元讀取第3頁的地址12AB時,由于這個地址在公用區(qū)內(nèi),所以地址轉(zhuǎn)換器24便會將這個地址對應(yīng)到存儲器的實體地址012AB,若中央處理單元讀取的是第3頁的地址A100,則由上式可知,實體地址=A100-2800+2B000=32900,所以中央處理單元讀取的地址在經(jīng)由地址轉(zhuǎn)換器對應(yīng)到存儲器的實體地址為32900。此外,雖然地址轉(zhuǎn)換器可能會造成地址輸出時的延遲,但是如果地址轉(zhuǎn)換器只轉(zhuǎn)換作為頁碼選擇的P1.0、P1.1、P1.2以及定址高地址的端口2而保持定址低地址的端口0,則這種影響是可以忽略的。由上述可知,利用地址轉(zhuǎn)換器24將中央處理單元指向外部擴充存儲器22的頁碼及該頁碼內(nèi)的地址轉(zhuǎn)換為外部擴充存儲器的實體地址,通過地址轉(zhuǎn)換器24將每一頁中的公用區(qū)對應(yīng)到同一個公用區(qū),所以不論存儲器包含幾個存儲庫,都只需要在存儲器中存儲一個公用區(qū),而使存儲器的空間作更有效的運用,而地址轉(zhuǎn)換器24也會將公用區(qū)之外的頁碼及地址對應(yīng)至新規(guī)畫存儲器的實體地址。在實施時,單芯片20中所包含的切換裝置只有在使用存儲庫交換來擴充存儲器時才會將接腳切換連接至地址轉(zhuǎn)換器,所以不會影響單芯片20的接腳作為其它用途時的功能。與公知技術(shù)相比較,本發(fā)明在單芯片內(nèi)部設(shè)置的地址轉(zhuǎn)換器以及切換裝置可以讓單芯片在使用存儲庫交換來擴充外部存儲器時更有效地運用存儲器的空間,尤其是當(dāng)有多個存儲庫切換時,使用地址轉(zhuǎn)換器將每一個存儲庫中公用區(qū)的地址對應(yīng)到同一個公用區(qū),如此就只需在存儲器中存儲一份公用區(qū),可以節(jié)省許多的存儲器空間。公知技術(shù)在使用存儲庫交換的方式擴充外部存儲器時,必須在每一個存儲庫中都復(fù)制一份公用區(qū)的數(shù)據(jù),相當(dāng)浪費存儲器的空間,而本發(fā)明則可以更有效地利用存儲器的空間。以上所述僅為本發(fā)明的優(yōu)選實施例,凡依本發(fā)明權(quán)利要求書所做的均等變化與修改,皆應(yīng)屬本發(fā)明專利的覆蓋范圍。權(quán)利要求1.一種處理器管理外部存儲器的方法,其包含(a)提供一地址轉(zhuǎn)換器;(b)使用該地址轉(zhuǎn)換器將該處理器的一中央處理單元指向該外部存儲器的一頁碼及該頁碼內(nèi)的地址轉(zhuǎn)換為該外部存儲器相對應(yīng)的一實體地址;以及(c)使用該中央處理器存取該實體地址的數(shù)據(jù)。2.如權(quán)利要求1所述的方法,其還包含將單一個公用區(qū)存入該外部存儲器。3.如權(quán)利要求2所述的方法,其還包含將該處理器的該中央處理單元指向該外部存儲器的該頁碼及該頁碼內(nèi)的公用區(qū)的地址對應(yīng)至該外部存儲器的公用區(qū)的該實體地址。4.如權(quán)利要求1所述的方法,其在步驟(a)中,該地址轉(zhuǎn)換器是安裝于該單芯片上。5.如權(quán)利要求1所述的方法,其中,該中央處理單元是處理8位的指令集。6.如權(quán)利要求1所述的方法,其中,該處理器是為MCS系列的處理器。7.如權(quán)利要求1所述的方法,其中,該外部存儲器為快閃存儲器。8.一種實施權(quán)利要求1所述的方法的芯片。全文摘要一種處理器管理外部存儲器的方法包含提供一地址轉(zhuǎn)換器,使用該地址轉(zhuǎn)換器將該單芯片的中央處理單元指向該外部存儲器的頁碼及該頁碼內(nèi)的地址轉(zhuǎn)換為該外部存儲器相對應(yīng)的實體地址,以及使用該中央處理器存取該實體地址的數(shù)據(jù)。該外部存儲器中僅包含一個公用區(qū),該方法還包含將該單芯片的中央處理單元指向該外部存儲器的頁碼及該頁碼內(nèi)的公用區(qū)的地址對應(yīng)至該外部存儲器的公用區(qū)的實體地址。文檔編號G06F12/10GK1534488SQ0310852公開日2004年10月6日申請日期2003年3月28日優(yōu)先權(quán)日2003年3月28日發(fā)明者莊承德,吳元丁,杜立群申請人:聯(lián)發(fā)科技股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
渭源县| 汉源县| 鸡泽县| 安远县| 鄂州市| 阜城县| 临颍县| 平湖市| 沭阳县| 治县。| 揭东县| 青浦区| 永顺县| 汕尾市| 宣威市| 长顺县| 武强县| 新竹市| 砚山县| 高碑店市| 错那县| 布尔津县| 宝山区| 连州市| 临漳县| 广德县| 射阳县| 资中县| 介休市| 阿拉善左旗| 商丘市| 迁安市| 新河县| 鄯善县| 郸城县| 光泽县| 政和县| 六盘水市| 永福县| 肃宁县| 崇州市|