專利名稱:控制裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種具有RAM(隨機(jī)存取存儲(chǔ)器)的控制裝置。
背景技術(shù):
由于與ROM(只讀存儲(chǔ)器)相比,DRAM(動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器)通??煽焖俅嫒?,且每位的單位成本較低,因此,常用方法是,將通過CPU(中央處理器)執(zhí)行的操作程序預(yù)先壓縮并存儲(chǔ)于ROM,從而在操作程序被擴(kuò)展并傳送至DRAM之后,可在DRAM中執(zhí)行該操作程序。然而,有可能該操作程序的存儲(chǔ)區(qū)域被錯(cuò)誤地重寫,導(dǎo)致CPU的失控,因?yàn)镈RAM是可重寫的存儲(chǔ)器。
因此,已提出了一種方法,其中CPU判斷用于在DRAM中寫入數(shù)據(jù)的地址是否處于程序區(qū)域中,并且其中當(dāng)CPU作出該地址處于程序區(qū)域中的判定時(shí),通過使確定是否執(zhí)行寫入數(shù)據(jù)的寫入信號無效,CPU禁止在程序區(qū)域中寫入數(shù)據(jù)(例如,見JP-A-11-96075)。
發(fā)明內(nèi)容
然而,例如,通過由寫入信號和另一信號(例如RAS信號、CAS信號等)的組合構(gòu)成的輸入命令控制SDRAM(同步DRAM)。也就是說,雖然寫入信號是有效的,但在某種情況下在SDRAM中寫入數(shù)據(jù),而在某種情況下向SDRAM輸入不寫入數(shù)據(jù)的另一命令(例如,用于周期刷新SDRAM的存儲(chǔ)元件的刷新命令)。如果與根據(jù)JP-A-11-96075的方法一樣地強(qiáng)制使寫入信號無效,雖然可禁止寫入數(shù)據(jù),但不能向SDRAM輸入多種命令。
考慮到以上情況作出本發(fā)明,提供了一種控制裝置,其中不限制輸入RAM控制命令,同時(shí)防止由RAM中的操作程序的重寫引起CPU的錯(cuò)誤操作。
根據(jù)本發(fā)明的一個(gè)方面,一種控制裝置包括RAM,可重寫數(shù)據(jù);數(shù)據(jù)寫入單元,根據(jù)用于指定所述RAM地址的地址信號和用于定義在所述RAM中寫入預(yù)定長度數(shù)據(jù)時(shí)有效的區(qū)域的有效區(qū)域定義信號,在所述RAM的任意區(qū)域中寫入向所述RAM輸出的所述預(yù)定長度數(shù)據(jù);判斷單元,判斷是否禁止通過所述數(shù)據(jù)寫入單元在所述RAM中所述預(yù)定長度數(shù)據(jù)的所述寫入;以及重寫禁止單元,當(dāng)所述判斷單元作出禁止所述寫入的判定時(shí),將所述有效區(qū)域定義信號轉(zhuǎn)變?yōu)槭顾稣麄€(gè)預(yù)定長度數(shù)據(jù)的所述寫入無效的信號。
通過以下結(jié)合附圖進(jìn)行的詳細(xì)說明,本發(fā)明的這些和其它目的和優(yōu)點(diǎn)將變得更加顯而易見,其中圖1是示出了根據(jù)一個(gè)實(shí)施例的電話交換機(jī)的結(jié)構(gòu)的方框圖;圖2是示出了在實(shí)施例中控制部分的結(jié)構(gòu)的方框圖;圖3是示出了根據(jù)實(shí)施例的SDRAM的結(jié)構(gòu)的方框圖;圖4示出了根據(jù)實(shí)施例在控制部分中與SDRAM相關(guān)的電路的特定實(shí)例;圖5是示出了根據(jù)實(shí)施例在控制部分中,向SDRAM輸入的命令的實(shí)例的圖表;圖6是示出了根據(jù)實(shí)施例與控制部分的寫周期操作相關(guān)的信號的實(shí)例的時(shí)間圖;
圖7是示出了根據(jù)實(shí)施例在控制部分中的比較電路中的處理流程的流程圖;圖8是示出了根據(jù)實(shí)施例在控制部分中與門電路相關(guān)的信號之間關(guān)系的圖表;圖9是示出了根據(jù)實(shí)施例在控制部分中,在通過門電路進(jìn)行寫保護(hù)的情況下,在寫周期中向SDRAM輸入的信號的實(shí)例的時(shí)間圖;以及圖10示出了在另一實(shí)施例中的控制部分中與SDRAM相關(guān)的電路的特定實(shí)例。
具體實(shí)施例方式
下面將參考
實(shí)施例的控制裝置。
圖1示出了作為實(shí)施例的電話交換機(jī),即信息處理器的結(jié)構(gòu)。電話交換機(jī)10包括中繼(trunk)單元11、線路卡12、時(shí)間切換部分(time switchportion,TSW)13、控制部分14,以及DTMF(撥號音多頻,Dial Tone MultiFrequency)信號接收部分15。這些組成構(gòu)件通過音頻總線和控制總線互相連接。
中繼部分11連接至外部通信網(wǎng)16。該中繼部分11具有與外部通信網(wǎng)16的接口功能。提供線路卡12,以連接專用分支終端17a至17n。另外,例如標(biāo)準(zhǔn)的電話機(jī)、按鈕電話機(jī)等,可用作專用分支終端17a至17n。
根據(jù)由控制部分14發(fā)出的指令,TSW 13可交換地相互連接中繼單元11和線路卡12。以與上述相同的方式,TSW 13可交換地相互連接中繼單元11、線路卡12和DTMF信號接收部分15。
控制部分14具有CPU(中央處理器)、存儲(chǔ)器等。控制部分14通??傮w控制電話交換機(jī)10的操作。在一個(gè)板上安裝包括在控制部分14中的CPU、存儲(chǔ)器等。稍后將說明控制部分14的細(xì)節(jié)。
DTMF信號接收部分15對數(shù)字信號進(jìn)行數(shù)字過濾處理,例如DFT(離散傅里葉變換),從而探測和識別DTMF信號。另外,DTMF信號為與撥號鍵相應(yīng)的信號,并且由專用分支終端17a至17n輸出。
圖2示出了在電話交換機(jī)10中的控制部分14的示意性結(jié)構(gòu)。另外,在圖2中未示出稍后將要說明的比較電路、保護(hù)寄存器等。控制部分14具有CPU 20(數(shù)據(jù)寫入單元)、在其中存儲(chǔ)壓縮的操作程序的閃速存儲(chǔ)器30、作為通用存儲(chǔ)器的SRAM(靜態(tài)隨機(jī)存取存儲(chǔ)器)31、作為LAN(局域網(wǎng))接口的PHY 32、起著與音頻總線和控制總線的接口作用的交換處理部分33,以及SDRAM 40(RAM),在該SDRAM 40中擴(kuò)展和存儲(chǔ)在閃速存儲(chǔ)器30中存儲(chǔ)的操作程序,并可寫入數(shù)據(jù)。
CPU 20執(zhí)行在SDRAM 40中存儲(chǔ)的操作程序,并通??傮w控制電話交換機(jī)10的操作。另外,CPU 20按每32位(數(shù)據(jù)寬度)處理數(shù)據(jù)。CPU20具有基于從SDRAM 40獲取的指令執(zhí)行進(jìn)程的CPU核心21,作為與閃速存儲(chǔ)器30的接口的外部總線接口22,SRAM 31和交換處理部分33,用于控制SDRAM 40的DRAM控制器23,用于控制閃速存儲(chǔ)器30的ROM控制器24,以及作為與PHY 32的接口的LAN MAC(LAN媒體存取控制器)25。將CPU核心21、外部總線接口22、DRAM控制器23、ROM控制器24和LAN MAC 25獨(dú)立連接到內(nèi)部總線26。
外部總線接口22是與閃速存儲(chǔ)器30、SRAM 31和交換處理部分33的接口。將外部總線接口22連接到地址總線和數(shù)據(jù)總線。通過地址總線指定地址,從而指定數(shù)據(jù)存取的位置。通過數(shù)據(jù)總線在閃速存儲(chǔ)器30、SRAM31與交換處理部分33之間交換數(shù)據(jù)。用于SRAM 31和交換處理部分33的控制信號也從外部總線接口22輸出。在本說明書中,術(shù)語“控制信號”是指這樣的信號,例如用于讀取數(shù)據(jù)的讀取信號、用于寫入數(shù)據(jù)的寫入信號或用于選擇芯片的芯片選擇信號。
通過輸出控制信號,DRAM控制器23控制SDRAM 40。用于存取SDRAM 40的地址信號也從DRAM控制器23向SDRAM輸出,因此DRAM控制器23起著通過數(shù)據(jù)總線向/從SDRAM 40輸入/輸出數(shù)據(jù)的接口的作用。
通過向閃速存儲(chǔ)器30輸出控制信號,ROM控制器24控制閃速存儲(chǔ)器30。
LAN MAC 25起著與PHY 32的接口的作用,作為用于進(jìn)行波形產(chǎn)生、沖突檢測等與通信相關(guān)的LAN通信接口。LAN MAC 25進(jìn)行在LAN通信、糾錯(cuò)等中的發(fā)送/接收方法的判定。
將通過CPU核心21獲取的操作程序壓縮并存儲(chǔ)于閃速存儲(chǔ)器30中。當(dāng)CPU 20將要讀取壓縮的操作程序時(shí),在CPU 20操作的同時(shí),CPU 20通過地址總線從外部總線接口22接收指定的程序存儲(chǔ)地址,從而CPU 20通過連接到同一外部總線接口22的數(shù)據(jù)總線接收程序輸出。從ROM控制器24接受用于控制該操作的控制信號。
交換處理部分33起著控制部分14與音頻總線和控制總線的接口的作用。通過數(shù)據(jù)總線和控制總線,將中繼部分11、線路卡12、TSW 13和DTMF信號接收部分15連接到交換處理部分33。通過地址總線和數(shù)據(jù)總線,該交換處理部分還連接到CPU 20的外部總線接口22。該交換處理部分33從外部總線接口22接受控制信號。
提供SDRAM 40,從而不僅可以在SDRAM 40中存儲(chǔ)程序,也可以在SDRAM 40中寫入通用數(shù)據(jù)。圖3示出了SDRAM 40的結(jié)構(gòu)。如圖3所示,SDRAM 40具有程序區(qū)域41(不可重寫區(qū)域),以及數(shù)據(jù)區(qū)域42。通過CPU 20擴(kuò)展在閃速存儲(chǔ)器30中存儲(chǔ)的壓縮操作程序,并將其存儲(chǔ)于程序區(qū)域41。數(shù)據(jù)區(qū)域42是當(dāng)CPU 20執(zhí)行操作程序時(shí)用作工作存儲(chǔ)器的區(qū)域。預(yù)先將程序區(qū)域41和數(shù)據(jù)區(qū)域42的地址存儲(chǔ)于比較電路(判斷單元)(將稍后說明)中。
圖4是示出了在圖2中所述的控制部分14中與SDRAM 40相關(guān)的電路的特定實(shí)例。該電路具有CPU 20、SDRAM 40、用于控制是否對SDRAM40的程序區(qū)域41進(jìn)行寫保護(hù)的保護(hù)寄存器50(寫保護(hù)設(shè)定單元)、用于比較SDRAM 40的寫入地址等的比較電路51(判斷單元),以及用于根據(jù)由比較電路給出的結(jié)果禁止寫入的門電路52(重寫禁止單元)。另外,在圖4中未示出在圖2中示出的控制電路14中的CPU 20中的ROM控制器24和LAN MAC 25、閃速存儲(chǔ)器30、SRAM 31、PHY 32和交換處理部分33。
CPU 20中的DRAM控制器23具有SDRAM存取狀態(tài)機(jī)23a,以及刷新計(jì)數(shù)器23b。SDRAM存取狀態(tài)機(jī)23a是用于通過控制SDRAM 40輸入/輸出數(shù)據(jù)的接口。刷新計(jì)數(shù)器23b是用于通過指定SDRAM 40的排(bank),在每一個(gè)特定時(shí)間(例如16μs)進(jìn)行刷新的計(jì)數(shù)器。
CPU核心21和SDRAM存取狀態(tài)機(jī)23a通過內(nèi)部總線26互相連接。內(nèi)部總線26包括用于指定為存取SDRAM 40所用的地址的地址總線,以及用于交換向/從SDRAM 40輸入/輸出的數(shù)據(jù)的數(shù)據(jù)總線。CPU核心21還向SDRAM存取狀態(tài)機(jī)23a輸出用于SDRAM 40的控制信號。下面將說明控制信號的細(xì)節(jié)。
在圖4示出的實(shí)例中,控制信號包括CS信號401、RD信號402、WE信號403,以及BE信號404。CS信號401是用于判定是否選擇SDRAM 40的信號。當(dāng)CPU 20對SDRAM 40進(jìn)行存取時(shí),CS信號401變?yōu)橛行?。?dāng)從SDRAM 40讀取數(shù)據(jù)時(shí),RD信號402變?yōu)橛行А.?dāng)在SDRAM 40中寫入數(shù)據(jù)時(shí),WE信號403變?yōu)橛行А?br>
BE信號404是用于從32位中選擇有效字節(jié)作為處理單元的信號。因?yàn)锽E信號404是這樣的信號,其中由字節(jié)(8位)劃分32位總線,在BE信號404中的信息量為32/8位,也就是4位。例如,當(dāng)僅僅一個(gè)高字節(jié)有效時(shí),形成BE信號404,以使對應(yīng)于高字節(jié)的一個(gè)位變?yōu)橛行?,而對?yīng)于余下的三個(gè)字節(jié)的三個(gè)位變?yōu)闊o效。
每當(dāng)接收到來自CPU核心21的信號時(shí),SDRAM存取狀態(tài)機(jī)23a向SDRAM 40輸出信號。通過用于交換指定存取地址的地址信號的地址總線和用于交換數(shù)據(jù)的數(shù)據(jù)總線,SDRAM 40和SDRAM存取狀態(tài)機(jī)23a相互連接。SDRAM存取狀態(tài)機(jī)23a還輸出用于控制SDRAM 40的控制信號。在圖4所示的實(shí)例中,該控制信號包括CAS信號405、RAS信號406、WE信號407、MCS信號408、BA信號409、CLK信號410、CKE信號411以及DQMB信號412(有效區(qū)域定義信號)。
CLK信號410是用于操作SDRAM 40的時(shí)鐘信號。SDRAM 40中的所有輸入信號和數(shù)據(jù)輸入/輸出信號與CLK信號410的前沿同步。CKE信號411是用于判定CLK信號410是否有效的信號。當(dāng)在特定CLK信號的前沿CKE信號411為高電平時(shí),下一個(gè)CLK信號410的前沿變?yōu)橛行А?br>
BA信號409是用于指定將要存取的SDRAM 40的排的信號。例如,當(dāng)SDRAM 40具有四個(gè)排時(shí),在BA信號409中信息量為2位。
MCS信號408是判定是否選擇SDRAM 40的信號。當(dāng)MCS信號408有效時(shí),可以向SDRAM 40輸入命令。
DQMB信號412可以指定當(dāng)例如輸出32位數(shù)據(jù)時(shí)有效的區(qū)域。當(dāng)DQMB信號412中的信息量為2位時(shí),DQMB信號412可以判定所用的32位的哪半部分,高16位還是低16位是有效的。例如,當(dāng)對應(yīng)于高16位的DQMB信號412有效,則高16位變?yōu)闊o效。另外,DQMB信號412是響應(yīng)從CPU核心21輸入SDRAM存取狀態(tài)機(jī)23a的BE信號404的信號。例如,當(dāng)在DQMB信號412中的信息量為4位時(shí),BE信號404可直接用作DQMB信號412,因?yàn)镈QMB信號412中的信息量等于BE信號404中的信息量。下面將假定DQMB信號412為2位信號進(jìn)行說明。
CAS信號405、RAS信號406和WE信號407用于輸入命令。圖5示出了通過使用CAS信號405、RAS信號406和WE信號407輸入到SDRAM40的命令的實(shí)例。另外,在此實(shí)例中,CKE信號411為低電平(有效),且MCS信號408為低電平(有效)。
CBR刷新命令是用于根據(jù)刷新計(jì)數(shù)器23b的計(jì)時(shí)在每一個(gè)預(yù)定的時(shí)間刷新存儲(chǔ)元件的命令。在輸入CBR刷新命令之后,如果不經(jīng)過預(yù)定的時(shí)間,所有命令都不被接受。在RAS信號406和CAS信號405為低電平,同時(shí)WE信號407為高電平的條件下,將CBR刷新命令輸入SDRAM 40。
預(yù)充電命令是用于對SDRAM 40的選定的排開始預(yù)充電操作的命令。術(shù)語“預(yù)充電”是指用于在數(shù)據(jù)讀取時(shí)對存儲(chǔ)單元充電的操作。在RAS信號406和WE信號407為低電平,同時(shí)CAS信號405為高電平的條件下,將預(yù)充電命令輸入SDRAM 40。
有效命令是用于鎖存由BA信號選定的排的行地址的命令。當(dāng)輸入有效命令時(shí),根據(jù)地址信號選擇行地址。在RAS信號406為低電平,同時(shí)CAS信號405和WE信號407為高電平的條件下,將有效命令輸入SDRAM40。
讀取命令是用于開始讀取操作并鎖存列地址的命令。當(dāng)輸入讀取命令時(shí),根據(jù)地址信號選擇列地址。也就是說,當(dāng)輸入有效命令之后向SDRAM40輸入讀取命令時(shí),SDRAM存取狀態(tài)機(jī)23a可以通過數(shù)據(jù)總線從選定的地址讀取數(shù)據(jù)。在RAS信號406和WE信號407為高電平,同時(shí)CAS信號405為低電平的條件下,將讀取命令輸入SDRAM 40。
寫入命令是用于開始寫入操作并鎖存列地址的命令。當(dāng)輸入寫入命令時(shí),根據(jù)地址信號選擇列地址。也就是說,當(dāng)輸入有效命令之后向SDRAM40輸入寫入命令時(shí),SDRAM存取狀態(tài)機(jī)23a可以通過數(shù)據(jù)總線向選定的地址寫入數(shù)據(jù)。在RAS信號406為高電平,同時(shí)CAS信號405和WE信號407為低電平的條件下,將寫入命令輸入SDRAM 40。
當(dāng)將如上所述設(shè)置的控制信號輸出到SDRAM 40時(shí),SDRAM存取狀態(tài)機(jī)23a控制SDRAM 40。
往回參考圖4,保護(hù)寄存器50是用于設(shè)定是否應(yīng)對SDRAM 40進(jìn)行寫保護(hù)的寄存器。例如,當(dāng)通過CPU 20擴(kuò)展在閃速存儲(chǔ)器30中存儲(chǔ)的壓縮操作程序,并將其寫入SDRAM 40時(shí),不需要寫保護(hù)。然而,在將程序?qū)懭隨DRAM 40之后,需要寫保護(hù),因?yàn)榇嬖谥赟DRAM 40中對程序的重寫導(dǎo)致程序失控的可能性。保護(hù)寄存器50通過向比較電路51輸出寫保護(hù)信號413(WP信號)切換該操作。
當(dāng)作出了通過保護(hù)寄存器50的控制進(jìn)行寫保護(hù)的判定時(shí),也就是說,當(dāng)WP信號413有效時(shí),比較電路51參考地址信號、CAS信號405、RAS信號406、WE信號407、MCS信號408和BA信號409,從而判斷是否將數(shù)據(jù)寫入SDRAM 40。比較電路51向門電路輸出判斷結(jié)果,作為WPACC信號。還向CPU 20的外部總線接口輸出關(guān)于是否將數(shù)據(jù)寫入的判斷結(jié)果,作為NMI信號415(通知信號)。NMI信號415用于向程序區(qū)域41中寫入數(shù)據(jù),也就是說,用于保持歷史信息以對程序糾錯(cuò)或者用于恢復(fù)軟件異常。對于沒有寫保護(hù)的寫入,例如程序向SDRAM 40的傳送,比較電路51與保護(hù)寄存器50結(jié)合,以不產(chǎn)生NMI信號415。根據(jù)比較電路的關(guān)于是否需要寫保護(hù)的判斷,門電路52控制DQMB信號412。稍后將詳細(xì)說明比較電路51和門電路52的操作。
接下來將說明通過SDRAM存取狀態(tài)機(jī)23a在SDRAM 40中的常規(guī)寫入操作。在下面的說明中,不進(jìn)行寫保護(hù)。圖6為寫周期操作的時(shí)間圖。在T1時(shí)刻,如圖5的圖表所示輸入有效命令,因?yàn)镸CS信號408為低電平(有效)且RAS信號406為低電平,同時(shí)CAS信號405和WE信號407為高電平。因此,分別根據(jù)地址信號和BA信號409確定行地址和排。
在T1之后的T2時(shí)刻,如圖5的圖表所示輸入寫入命令,因?yàn)镸CS信號408為低電平(有效)且RAS信號406為高電平,同時(shí)CAS信號405和WE信號407為低電平。因此,分別從地址信號和BA信號409獲取列地址和排。
根據(jù)在T1和T2時(shí)刻獲取的排、行地址和列地址確定寫入地址,從而通過數(shù)據(jù)總線寫入從SDRAM存取狀態(tài)機(jī)23a輸入的數(shù)據(jù)。在圖6所示的實(shí)例中,數(shù)據(jù)的脈沖串長度為4,各具有32位的信息量。例如,為使作為32位的高半部分的高16位無效,SDRAM存取狀態(tài)機(jī)23a可以使對應(yīng)于高16位的DQMB信號412處于低電平(有效)。
接下來將參考圖7說明比較電路51的操作。圖7是示出了在比較電路51中的處理流程的流程圖。首先,比較電路51判斷從保護(hù)寄存器50輸入的WP信號413是否為低電平(有效)(步驟71)。當(dāng)WP信號413為高電平(無效)時(shí),比較電路51作出不需要寫保護(hù)的判定,并使向門電路輸出的WPACC信號414為高電平(無效)(步驟72)。同時(shí),比較電路51使向CPU 20的外部總線接口22輸出的NMI信號415為高電平(無效)。
然后,比較電路51判斷是否向SDRAM 40輸入有效命令(步驟73,在圖6中的T1時(shí)刻)。根據(jù)以下事實(shí)作出該判斷MCS信號408和RAS信號406為低電平,同時(shí)CAS信號405和WE信號407為高電平。在此條件下,可以作出向SDRAM 40輸入有效命令的判定。如果沒有有效命令(在步驟73為否),向門電路輸出其電平轉(zhuǎn)變?yōu)楦唠娖?無效)的WPACC信號414,同時(shí)向外部總線接口22輸出其電平轉(zhuǎn)變?yōu)楦唠娖?無效)的NMI信號415(步驟72),因?yàn)椴惶貏e需要寫保護(hù)。如果在步驟73中具有有效命令(在步驟73為是),分別從BA信號409和地址信號中獲取排和行地址(步驟74)。
比較電路51進(jìn)一步判斷緊隨有效命令之后輸入的命令是否為寫入命令(步驟75)。在圖6所示的實(shí)例中,在從剛好在T2時(shí)刻之前的CLK信號410的下降時(shí)刻(T2’)到T2時(shí)刻的一段時(shí)間內(nèi)作出該判斷。如果沒有寫入信號(在步驟75為否),也就是說,除非MCS信號408為低電平且RAS信號406為高電平,同時(shí)CAS信號405和WE信號407為低電平,比較電路51作出不需要寫保護(hù)的判定,同時(shí)進(jìn)行如下操作向門電路52輸出其電平轉(zhuǎn)變?yōu)楦唠娖?無效)的WPACC信號414,并向外部總線接口22輸出其電平轉(zhuǎn)變?yōu)楦唠娖?無效)的NMI信號415。
如果具有寫命令(在步驟75中為是),則分別從BA信號409和地址信號獲取排和列地址(步驟76)。隨后,比較電路51判斷在步驟74和76中獲取的地址是否處于寫保護(hù)區(qū)域內(nèi),即圖3所示的程序區(qū)域41內(nèi)(步驟77)。如果該地址在程序區(qū)域41內(nèi)(在步驟77中為是),比較電路51作出需要寫保護(hù)的判定,并使向門電路52輸出的WPACC信號414和向外部總線接口22輸出的NMI信號415為低電平(有效)。如果該地址不在程序區(qū)域41內(nèi),也就是說,如果該地址在數(shù)據(jù)區(qū)域42內(nèi)(在步驟77中為否),比較電路51作出不需要寫保護(hù)的判定,并使向門電路52輸出的WPACC信號414和向外部總線接口22輸出的NMI信號415為高電平(無效)。
接下來將參考圖8說明在門電路52中的處理。門電路52分別從SDRAM存取狀態(tài)機(jī)23a和比較電路接收DQMB信號412和WPACC信號414,并向SDRAM 40發(fā)送DQMB信號412。在以下的說明中,將從SDRAM存取狀態(tài)機(jī)23a向門電路52輸入的DQMB信號412稱為“DQMBin信號”,而將從門電路52向SDRAM 40輸出的DQMB信號412稱為“DQMBout信號”。另外,無論是高16位還是低16位,DQMBin信號和DQMBout信號作出相同的操作。
圖8是示出了向門電路52輸入的DQMBin信號/WPACC信號414與從門電路52輸出的DQMBout信號之間的關(guān)系的圖表。
當(dāng)DQMBin信號為低電平(有效)時(shí),由于需要寫保護(hù),將DQMBout信號強(qiáng)制轉(zhuǎn)變?yōu)榈碗娖?有效)。當(dāng)DQMBin信號為高電平(無效)時(shí),不需要寫保護(hù)。因此,在這種情況下,根據(jù)從SDRAM存取狀態(tài)機(jī)23a的控制對DQMBout信號進(jìn)行控制,從而當(dāng)DQMBin信號為低電平(有效)時(shí),將DQMBout信號轉(zhuǎn)變?yōu)榈碗娖?有效),并且當(dāng)DQMBin信號為高電平(無效)時(shí),將DQMBout信號轉(zhuǎn)變?yōu)楦唠娖?無效)。
圖9是示出了在通過門電路52執(zhí)行寫保護(hù)的情況下,在寫周期中向SDRAM 40輸入的信號的實(shí)例的時(shí)間圖。另外,在圖9中,就在輸入寫入命令的T2時(shí)刻之前的CLK信號410的下降時(shí)刻T2’,比較電路判斷是否需要寫保護(hù)。門電路根據(jù)此判斷控制DQMB信號412。
如圖9所示,在輸入寫入命令的T2時(shí)刻,通過門電路52將DQMB信號412轉(zhuǎn)變?yōu)榈碗娖?有效)。因此,沒有在SDRAM 40中寫入輸入數(shù)據(jù)。
如上所述,依照本實(shí)施例,比較電路51判斷寫入地址是否處于程序區(qū)域41內(nèi)。當(dāng)作出禁止寫入的判定時(shí),使門電路52的DQMB信號412有效,從而抑制在程序區(qū)域41中的寫入。結(jié)果,可限制用于控制CPU 20的操作程序不被重寫。
此外,根據(jù)DQMB信號412,而非WE信號407,抑制在SDRAM 40的寫入。因此,沒有限制使用WE信號407、CAS信號405和RAS信號406的命令不向SDRAM 40輸入。
此外,當(dāng)將在程序區(qū)域41中寫入數(shù)據(jù)時(shí),NMI信號415向CPU發(fā)出通知。因此,可以對程序異常糾錯(cuò)。
根據(jù)本實(shí)施例,比較電路51和門電路52基于保護(hù)寄存器50控制寫保護(hù),即是否需要寫保護(hù)。因此,當(dāng)將要在程序區(qū)域41中寫入操作程序時(shí),可以進(jìn)行控制,以在正常寫入操作程序之后,禁止數(shù)據(jù)寫入程序區(qū)域41。
雖然本實(shí)施例示出了利用電話交換機(jī)10作為實(shí)例的情況,例如,本實(shí)施例的控制裝置可以應(yīng)用于裝配有CPU和RAM的通用計(jì)算機(jī),或者應(yīng)用于裝配有控制部分14的控制板。
雖然本實(shí)施例示出了在CPU 20內(nèi)部設(shè)置DRAM控制器23的情況,可以配置控制部分14,以在CPU 20的外部設(shè)置DRAM控制器23。并且在CPU 20外部設(shè)置DRAM控制器23的情況下,可在DRAM控制器23與SDRAM 40之間進(jìn)行與本實(shí)施例相同的控制,或者可在CPU 20與SDRAM存取狀態(tài)機(jī)之間進(jìn)行處理。圖10是示出了在CPU 20外部設(shè)置SDRAM存取狀態(tài)機(jī)23a和刷新計(jì)數(shù)器23b的情況下,以及在CPU 20與SDRAM存取狀態(tài)機(jī)23a之間進(jìn)行寫保護(hù)的情況下,與SDRAM 40相關(guān)的電路的具體實(shí)例的圖。
在圖10所示的實(shí)例中,將從CPU 20輸出的地址信號、CS信號401和WE信號403輸入比較電路51。在這種情況下,當(dāng)CS信號401和WE信號403有效且地址信號指示在SDRAM 40的程序區(qū)域41中的地址時(shí),使WPACC信號414有效。將門電路52置于BE信號404之間。當(dāng)WPACC信號414有效時(shí),使所有將要輸出的BE信號404(在CPU 20處理各數(shù)據(jù)長度為32位的數(shù)據(jù)的情況下的所有4位)有效。當(dāng)WPACC信號無效時(shí),將從CPU 20輸出的BE信號404直接發(fā)送到SDRAM存取狀態(tài)機(jī)23a。結(jié)果,可以得到與本實(shí)施例中相同的效果。
根據(jù)以上實(shí)施例,可以提供一種控制裝置,其中不限制輸入RAM控制命令,同時(shí)防止由RAM中的操作程序的重寫引起CPU的錯(cuò)誤操作。
為了示例和說明的目的,提供了對本發(fā)明的實(shí)施例的上述說明。其并非旨在窮舉或?qū)⒈景l(fā)明限制為所公開的精確形式。很明顯,對于本領(lǐng)域的技術(shù)人員而言,多種修改和改變將是顯而易見的。為了最優(yōu)地說明本發(fā)明的原理及其實(shí)際應(yīng)用,選擇并說明了本實(shí)施例,從而使本領(lǐng)域的其它技術(shù)人員能夠理解用于各種實(shí)施例并具有適于預(yù)期具體應(yīng)用的各種修改的本發(fā)明。本發(fā)明旨在僅僅通過以下權(quán)利要求書和其等同替換限定其范圍。
權(quán)利要求
1.一種控制裝置,包括RAM,可重寫數(shù)據(jù);數(shù)據(jù)寫入單元,根據(jù)用于指定所述RAM地址的地址信號和用于定義在所述RAM中寫入預(yù)定長度數(shù)據(jù)時(shí)有效的區(qū)域的有效區(qū)域定義信號,在所述RAM的任意區(qū)域中寫入向所述RAM輸出的所述預(yù)定長度數(shù)據(jù);判斷單元,判斷是否禁止通過所述數(shù)據(jù)寫入單元在所述RAM中所述預(yù)定長度數(shù)據(jù)的所述寫入;以及重寫禁止單元,當(dāng)所述判斷單元作出禁止所述寫入的判定時(shí),將所述有效區(qū)域定義信號轉(zhuǎn)變?yōu)槭顾稣麄€(gè)預(yù)定長度數(shù)據(jù)的所述寫入無效的信號。
2.根據(jù)權(quán)利要求1的控制裝置,其中當(dāng)所述地址處于所述RAM的不可重寫區(qū)域中時(shí),所述判斷單元作出禁止通過所述數(shù)據(jù)寫入單元在所述RAM中寫入所述預(yù)定長度數(shù)據(jù)的判定。
3.根據(jù)權(quán)利要求2的控制裝置,其中在所述不可重寫區(qū)域中存儲(chǔ)通過所述數(shù)據(jù)寫入單元執(zhí)行的程序。
4.根據(jù)權(quán)利要求1的控制裝置,其中當(dāng)所述判斷單元作出禁止在所述RAM中寫入所述預(yù)定長度數(shù)據(jù)的判定時(shí),所述判斷單元向所述數(shù)據(jù)寫入單元發(fā)送通知信號,所述通知信號用于給出禁止所述預(yù)定長度數(shù)據(jù)的所述寫入的通知。
5.根據(jù)權(quán)利要求1的控制裝置,還包括寫保護(hù)設(shè)定單元,切換所述判斷單元是否作出判定。
6.根據(jù)權(quán)利要求1的控制裝置,其中所述控制裝置為電話交換機(jī)。
7.一種控制方法,包括以下步驟根據(jù)用于指定RAM地址的地址信號和用于定義在所述RAM中寫入預(yù)定長度的數(shù)據(jù)時(shí)有效的區(qū)域的有效區(qū)域定義信號,寫入向所述RAM輸出的預(yù)定長度的數(shù)據(jù),所述RAM能夠在所述RAM的任意區(qū)域中重寫數(shù)據(jù);判斷是否禁止在所述RAM中所述預(yù)定長度數(shù)據(jù)的所述寫入;以及當(dāng)作出禁止所述寫入的判定時(shí),將所述有效區(qū)域定義信號轉(zhuǎn)變?yōu)槭顾稣麄€(gè)預(yù)定長度數(shù)據(jù)的所述寫入無效的信號。
8.一種通過計(jì)算機(jī)可讀的存儲(chǔ)介質(zhì),所述存儲(chǔ)介質(zhì)存儲(chǔ)通過計(jì)算機(jī)可執(zhí)行的指令程序,以進(jìn)行操作,所述操作包括以下步驟根據(jù)用于指定RAM地址的地址信號和用于定義在所述RAM中寫入預(yù)定長度的數(shù)據(jù)時(shí)有效的區(qū)域的有效區(qū)域定義信號,寫入向所述RAM輸出的預(yù)定長度的數(shù)據(jù),所述RAM能夠在所述RAM的任意區(qū)域中重寫數(shù)據(jù);判斷是否禁止在所述RAM中所述預(yù)定長度數(shù)據(jù)的所述寫入;以及當(dāng)作出禁止所述寫入的判定時(shí),將所述有效區(qū)域定義信號轉(zhuǎn)變?yōu)槭顾稣麄€(gè)預(yù)定長度數(shù)據(jù)的所述寫入無效的信號。
全文摘要
一種控制裝置,包括RAM,可重寫數(shù)據(jù);數(shù)據(jù)寫入單元,根據(jù)用于指定所述RAM地址的地址信號和用于定義在所述RAM中寫入預(yù)定長度數(shù)據(jù)時(shí)有效的區(qū)域的有效區(qū)域定義信號,在所述RAM的任意區(qū)域中寫入向所述RAM輸出的所述預(yù)定長度數(shù)據(jù);判斷單元,判斷是否禁止通過所述數(shù)據(jù)寫入單元在所述RAM中所述預(yù)定長度數(shù)據(jù)的所述寫入;以及重寫禁止單元,當(dāng)所述判斷單元作出禁止所述寫入的判定時(shí),將所述有效區(qū)域定義信號轉(zhuǎn)變?yōu)槭顾稣麄€(gè)預(yù)定長度數(shù)據(jù)的所述寫入無效的信號。
文檔編號G06F12/14GK1811736SQ200610003048
公開日2006年8月2日 申請日期2006年1月26日 優(yōu)先權(quán)日2005年1月27日
發(fā)明者大塚英治 申請人:株式會(huì)社東芝