实施形态1
本实施形态是:具备微型计算机的电子设备脱离通常动作而产生错误动作时,或者希望微型计算机的功能改变时,对微型计算机内的RAM数据区域中,例如成为故障原因的错误数据,由与微型计算机外部连接着的非易失性存储器,把RAM内的数据改写为正确的数据。这种非易失性存储器是预先装置在电子设备内、与微型计算机连接着的。而且,当表示电子设备脱离通常正常动作而产生错误动作的时候,识别进行任意RAM数据修正的地址的源地址数据以及目标地址数据、实际上进行数据修正时使用的掩模数据以及比较数据,例如由使用者以及微型计算机技术人员写入非易失性存储器中。这些数据写入之后,接入电子设备主机的电源,从而能够进行RAM数据的改写。
再者,将非易失性存储器与微型计算机连接,所述的各数据没有写入的状态时,即,把可改写RAM数据的数据进行存储之前的状态下,在非易失性存储器的各地址中写入者数值“0”。
图1是表示本发明实施形态1半导体装置结构的方框图,图2是模式化地表示本发明相同实施形态的具体结构的方框图。在图1中,微型计算机10被装在各种电子设备上,进行该电子设备的动作控制。在微型计算机10的外部设置着作为存储手段的非易失性存储器8。在非易失性存储器8的内部配置着:源地址81,它指定下述RAM2中作为任意地址的第1地址21;为抽取RAM2的第1地址21内的第1数据21a中规定位而进行运算处理的掩模数据82;与所述的运算结果进行比较的比较数据83;根据所述的比较结果,用于将RAM中第2地址22内的第2数据22a中规定位改写成其它值的第2掩模数据84;指定下述第2地址22的目标地址85。再者,将这些数据写入本设备是在本设备发生错误动作,微型计算机10觉察到故障之时,数据被写入之前,各个数据写入“0”。
微型计算机10具备进行各种运算处理动作的中央运算处理器(记作CPU)3以及RAM(随机存取存储器)2,RAM2是能够记录、改写掩模型ROM1记录的程序与通过掩模型ROM1控制CPU的数据的存储器。在RAM2内的数据区域包藏着第1地址21以及第2地址22,在第1地址21中写入的第1数据21a是规定的数据时,在第2地址22中写入的第2数据22a会输出规定的结果。
第1运算器4是将从非易失性存储器8来的第1掩模数据82与第1数据21a进行逻辑运算,抽取第1数据21a中规定位的第1运算手段,主要进行乘法运算,但不限定于此。比较器5是将第1运算器4的运算结果与从非易失性存储器8输出的比较数据83进行比较的比较手段。切换器7是根据比较器5的比较结果进行断开(OFF)/接通(ON)切换的切换手段并决定是否将下述第2运算器6的运算结果改写成第2数据22a。比较器5的比较结果是真(第1运算器4的结果与比较数据83一致的情况)则切换器7为ON,并根据第2运算器6的运算结果,将第2数据22a的规定位改写成正确的值,当比较器5的结果是假(第1运算器4的结果与比较数据83不一致的情况)则切换器7为OFF,第2数据22a不改写。
第2运算器6是用第2数据22a与第2掩模数据84进行逻辑运算的运算手段,本实施形态主要进行逻辑运算处理,但不限定于此。掩模型ROM1设置在微型计算机10内部且写入着控制CPU3的软件。第2数据22a中规定位的值不正确的情况下,第2运算器6会把该值与规定位设定为正确值的第2掩模数据84进行逻辑运算且将第2数据22a的规定位修改成正确的值。如此,微型计算机1O具备所述掩模型ROM1、RAM2、第1运算器4、比较器5、第2运算器6、切换器7。
微型计算机技术人员将成为微型计算机10故障原因的RAM2中的地址以及二进制位、抽取有故障地址及二进制位用的源地址81及第1掩模数据82、为了确认有无故障用的比较数据83、改写RAM内数据用的第2掩模数据84、目标地址85这些作为预先解决的,在非易失性存储器8中预先写入必要的数据。
对于如上所述而构成的本实施形态的半导体装置,利用图1以及图2对它的动作进行更加详细地说明。
首先,对于微型计算机10,在设备结构内是预先连接着非易失性存储器8的状态。在非易失性存储器8内所有地址写入之始是写入着“0”,且不随便改写RAM2内的数据。
接着,当微型计算机10产生错误动作,希望改变微型计算机10功能的一部分时,需要改变微型计算机10内软件的一部分。对于本实施形态,由于微型计算机10内的数据区域是由RAM2构成的,可以任意地改写。为了进行改写,微型计算机技术人员等使用者将用于指定改写用的数据和改写地址的数据写入到非易失性存储器8中,因此能够改写RAM2内的数据。
当在非易失性存储器8中写入各数据时,根据非易失性存储器8内的源地址81,选择作为RAM2内的任意地址的第1地址21,将写入于此第1地址21中的第1数据21a以及非易失性存储器8内的第1掩模数据82利用第1运算器4进行逻辑运算,读出第1数据21a中的规定位。将此运算结果与比较数据83通过比较器5进行比较。根据比较的结果,切换变化切换器7来进行控制。比较数据83中预先写入使该规定位的值与第1运算器4其运算结果的规定位的值相一致的数据,当此比较数据83与第1运算器4的运算结果一致时,为了能够修正第2地址22的第2数据22a的规定位的值,控制得使切换器7为ON。
当比较器5中,当第1运算器4的数据与比较数据83一致的时候,使切换器7为ON来改写第2数据22a。又,当比较器5中,第1运算器4的数据与比较数据83不一致的时候,切换器7为OFF,不改写第2数据22a。
另一方面,由非易失性存储器8内的目标地址85指定RAM2内的第2地址22,第2地址22内的第2数据22a的规定位由第2运算器6读出。在第2运算器6中将该位与非易失性存储器8内的第2掩模数据84进行逻辑运算并输出到切换器7。这里,当切换器7为ON时,将第2运算器6的运算结果写入第2数据22a(改写规定位),而切换器7为OFF的时,不将第2运算器6的运算结果写入第2数据22a,即第2数据22a没有任何变化。
这里,对于第1数据21a与第2数据22a分别结合成对进行工作,根据第1数据21a的条件,将符合上述条件的结果作为第2数据22a输出。
以下利用图2对上述动作进行详细地叙述。
首先对写入非易失性存储器8的各数据进行说明。
图2中,RAM2内的各数据以及非易失性存储器8内的各数据实际上是8位的数据。例如,如果载有微型计算机10的设备脱离通常的动作时,微型计算机的技术人员或使用者认为在微型计算机10内存在故障,根据此错误动作的状态,例如使用记录RAM2中写入的内容的RAM分配状态表,识别认为RAM2内存在错误第2地址22内的第2数据22a。接着,为了由非易失性存储器8识别第2数据22a以及与第2数据22a配对工作的第2数据21a,因此将与第1地址21相对应的地址写入非易失性存储器8内的源地址81,将与第2地址22相对应的地址写入非易失性存储器8内的目标地址。
又,在第1地址21中写入“01000101”作为第1数据21a,假设微型计算机技术人员或者使用者对此是已知的,并在非易失性存储器8中写入“00000100”,作为由第1运算器4抽取与存在错误的第2数据22a的规定位相对应的第1数据21a中规定位其值用的第1掩模数据82。
再者,将与由第1掩模数据82抽取的位的值进行比较用的比较数据83“00000100”写入非易失性存储器8。此比较数据83成为与被认为存在错误的第2数据22a的位相对应、与第1数据21a中规定位的值相一致的数据。也就是,利用第1掩模数据82从第1数据21a中抽取规定位的值,确认此位的值是否为所要求的值。
又,根据第1数据21a的条件,其结果作为第2数据22a被输出,微型计算机技术人员对此是已知的,并例如通过RAM分配状态表识别写入此第2数据22a“00000010”的第2地址22。这样,由于在修正错误时由非易失性存储器8指定第2地址22,将与第2地址22相对应的地址写入非易失性存储器8内的目标地址85中。
再者,将由目标地址85规定的第2地址22的第2数据22a中被认为存在错误的规定位改写成其它值用的第2掩模数据84“00100000”,写入非易失性存储器8中。
以下,利用图2来说明动作。
首先,当本设备发生错误动作,断定微型计算机中存在故障的时候,由微型计算机技术人员或者使用者将源地址81、第1掩模数据82、比较地址83、第2掩模数据84以及目标地址85写入非易失性存储器中。这样,在第1运算器4中对由源地址81所选择的第1数据21a“01000101”以及第掩模数据82“00000100”进行逻辑乘。这里,第1掩模数据82,由于与第1数据21a进行逻辑乘,成为了抽取第1数据21a中规定位(本例是从最低位数起第3位)值这样的数据。因此,逻辑乘的结果为“00000100”。将此运算结果“00000100”与比较数据83“00000100”通过比较器5进行比较。这里,通过比较器5将比较数据83与第1运算器4的运算结果进行比较,这是为了确认由第1运算器4抽取的规定位的值是否为所要求的值。
另一方面,由目标地址85,选择RAM2内的第2地址22,将在此第2地址22中写入的第2数据22a以及第2掩模数据84通过第2运算器6进行逻辑运算。例如,在作为由目标地址85所选择的第2地址22的第2数据22a输入“00000010”、作为第2掩模数据84输入“00100000”的状态下,将各数据通过第2运算器6进行逻辑加。此逻辑加的结果为“00100010”。
又,所述比较器5中的比较结果,当第1运算器4的运算结果与比较数据83一致时,切换器7为ON,当第1运算器4的运算结果与比较数据83不一致时,切换器7为OFF。切换器7为OFF时,也就是,没有必要修正第2数据22a的情况,第2运算器6的运算结果没有反映到第2数据22a,数据没有改变,而切换器为ON时,根据第2运算器6的运算结果,将第2数据22a内规定的位改写成正确的值。对于本实施形态,将运算前写入第2数据22a的数据“00000010”改写成作为第2运算器6运算结果的“00100010”。也就是,第2数据22a左侧起第3位的值原来应该是“1”,但由于是“0”,由第2运算器6的运算结果而改写成“1”。
如上所述,根据本实施形态,第2数据22a的规定位的值中存在错误时,在预先与微型计算机10连接着的非易失性存储器8中写入改写数据用的任意的地址以及数据,对第2数据22a的规定位的值进行改写,从而能够维修微型计算机10的软件故障。即,本实施形态中,微型计算机10其软件故障的维修只要采用较小容量的非易失性存储器就可以了,因此以便宜的费用就能够实施。
实施形态2
接着,将采用本发明半导体装置的一实例作为实施形态2来进行说明。本实施形态中表示的一实例是控制录像机中通常采用的根据防误擦销检测动作的微型计算机的故障维修。
具备微型计算机的录像机当发生错误动作时以及希望一部分地改变微型计算机进行动作的功能时,必须修正微型计算机内的软件。以往能进行只重新制作掩模型ROM等大幅度的改变,但是在本实施形态中,对于这样软件的改变、修正,例如对微型计算机内的RAM(数据区域)中成为故障原因的错误数据,有效地由与微型计算机外部连接着非易失性存储器,以较便宜的费用,将RAM内的数据改写为正确的数据。这样的非易失性存储器是预先装载在录像机内并与微型计算机相连接。这样,当录像机脱离正常动作时,由使用者等将规定进行任意RAM中数据修正的地址的源地址数据和目标地址数据、实际进行数据修正时采用的掩模数据和比较数据,写入到非易失性存储器中。这些数据写入以后,接通录像机的电源,则进行RAM数据的改写。
再者,非易失性存储器与微型计算机相连接,而所述数据还没有写入的状态时,即存储能改写RAM数据的数据之前,非易失性存储器各地址中已写入数据“0”。
图3是表示录像机采用的盒式录像带其外观的立体图,同图(a)表示具有防误擦销(能够录像状态)的盒式录像带,同图(b)是表示没有防误擦销(不能够录像状态)的录像带。31是录像带,32是有或没有销的以及开关式门等结构的防误擦检测部。
图4是表示本实施形态结构的方框图,为了说明的方便,省略了实施形态1所采用的掩模型ROM以及CPU的描述。在图4中,微型计算机20是控制电子设备动作的控制手段,非易失性存储器8与微型计算机20连接,是存储对微型计算机20内的错误进行修正的数据的存储手段。在非易失性存储器8内部配置着规定RAM2中记录的第1数据41其任意地址的源地址81、与第1数据41进行逻辑运算的第1掩模数据82、与第1运算器4的运算结果进行比较的比较数据83、与第2数据42进行逻辑运算的第2掩模数据84以及规定第2数据42地址的目标地址85,并且各数据能够由微型计算机技术人员改变成任意的数据。又,非易失性存储器8处于预先与微型计算机20连接着的状态,当本设备产生错误动作并判明微型计算机2存在故障时,微型计算机的技术人员则将所述的数据写入非易失性存储器8中。
RAM2(随机存取存储器)2为具有数据区域的可改写存储器,在RAM2在数据区域地址中写入第1数据41以及第2数据42。
第1运算器是将从非易失性存储器8输出的第1掩模数据82与第1数据41进行逻辑运算的第1运算手段,例如在本实施形态第1运算器为乘法器,但根据下述第1选择数据86,也可将它设定为加法器,除此之外的逻辑运算器也适用。又,当第1运算器4为乘法器时,将RAM2中的第1数据41与非易失性存储器8中的第1掩模数据82进行乘法运算且向比较器5输出此结果。对于任何运算,都是为了抽取第1数据中规定位的运算。
比较器5是将第1运算器4的运算结果与比较数据83进行比较并控制下述切换器7的ON/OFF切换的手段。本实施形态中当第1运算器的运算结果与比较数据83相一致时,操作使切换器7为ON状态。即,确认由第1运算器4抽取的第1数据41的规定位其值与要求的比较数据83之间的一致性。
切换器7是根据比较器5的比较结果进行断开(OFF)/接通(ON)切换的切换手段,它切换下述第2运算器6的运算结果是否写入到第2数据42。
第2运算器6是第2数据42与第2掩模数据84进行逻辑运算的第2运算手段。本实施形态中是为乘法器,但根据下述第2选择数据87,例如也可以设定为加法器,还其它的逻辑运算器也适用。又,当第2运算器6作为乘法器时,将RAM2中第2数据42与非易失性存储器8中第2掩模数据84进行加法运算,将其结果输出到切换器7中。还有,当第2运算器6作为加法器时,将RAM2中第2数据42与非易失性存储器8中第2掩模数据84进行乘法运算,将其结果输出到切换器7中。对于任何一运算都是为了抽取第2数据42中的规定位并改变抽取的规定位的值的运算。第1选择数据86能够选择第1运算器4为乘法器或加法器。第2选择数据87能够选择第2运算器6为乘法器或加法器。第1以及第2选择86及87中,设定为“01h”时,指定乘法器,设定为“02h”,则指定乘法器。
在微型计算机20内分别设置着RAM2、第1运算器4、比较器5、第2运算器6、切换器7。
关于如上述这样结构的本实施形态半导体装置,以下对它的动作进行说明。
如图3所示,对于录像机使用的盒式录像带31,在录像带盒的侧面附有防误擦检测部32(本实施形态是销),存在着当附有此销时能够记录(图3(a))则能够进行记录,如没有此销时(图3(b))则不能够进行记录如此的规则性。此采用这种盒式录像带的微型计算机的控制中,使用载有掩模ROM的微型计算机。
上述结构中,例如发现录像机软件不顾没有防误擦销(折断),仍进行记录的错误动作。作为这样的错误动作的原因,也可认为是检测机械故障,但本实施形态的说明是以由微型计算机内软件故障引起的错误动作为前提的。如上所述,软件中没有防误擦销(折断)的时候标记为“1”的“防误擦标记”与在防误擦标记为“1”时,控制不进行记录动作的“记录起动标记”之间的关系存在错误时,产生由微型计算机软件故障原因而引起的错误动作。又,当“记录起动标记”为“1”时起动记录动作,当为“O”时不起动记录动作。
本来,防误擦标记为“1”(防误擦销折断)的时候,记录起始标记是“0”(不起动记录动作)。不顾这样的正常情况,成为记录起动标记为“1”(开始记录动作)的状态时,录像机则引起了如上所述那样的错误动作。此时,使本装置工作,如果防误擦标记成为“1”,则进行改写RAM的数据区域中记录起动标记部分的动作。以进行记录起动标记为“0”(不进行记录动作)的动作。此结果是消除了软件的故障并且不需要重新制作掩模型ROM。
以下利用图4对具体动作进行详细描述。
在图4中,首先非易失性存储器8以与微型计算机20连接着的状态设置在录像机内。在此时的非易失性存储器8所有的地址中,由于预先写入了“0”值,不能够进行随便改写RAM2内的数据的动作。这样的录像机中,发生不顾有无防误擦检测量部,发生起记录动作的错误动作,并且察觉其原因是微型计算机20故障时,微型计算机技术人员按照以下的次序,在非易失性存储器8中预先写入各数据。
微型计算机技术人员或者使用者预先知道RAM2内写入防误擦标记的地址和二进制位、写入记录起动标记的地址和二进制位。这样,根据这些已知的信息,防误擦标记在RAM2的地址“16c5h”左起第2位作为第1数据41写入、记录起动标记在地址“3A67h”左起第6位作为第2数据42写入,则在非易失性存储器8中写入源地址81“16c5h”作为任意地址,写入读出第1数据41中左起第2位用的数据“01000000”作为第1掩模数据82,写入与第1运算器的运算结果比较用的数据“01000000”作为比较数据83,写入改写第2数据42中左起第6位用的数据“11111011”作为第2掩模数据84,写入规定第2数据42地址用的“3A67h”作为目标地址85。
这里,对于比较数据83,将它与第1运算器的4运算结果进行比较,写入与防误擦标记为“1”时第1数据41和第1掩模数据82的运算结果相一致的数据。即,这是为了修正在防误擦标记为“1”时的第2数据42。对于防误擦标记为“0”时(即有防误擦销的情况),由于没有必要对第2数据42进行修正,当第1运算器4的运算结果与比较数据83不一致时,不改变第2数据42。再者,向非易失性存储器8的数据写入是采用专门写入装置来写入的方法。
又,在第1选择数据86中写入着使得第1运算器4作为乘法器工作的“01h”,在第2选择数据87中写入着使得第2运算器6作为乘法器工作的“01h”。在第2运算器6进行乘法运算时,在第2掩模数据中84中写入着数据“11111011”,它可将第2数据42左起第6位从“1”改写为“0”。
又,根据非易失性存储器8的源地址81,规定RAM2的任意地址“16c5h”,读出写入在此地址的第1数据41“01000000”。读出的第1数据41被输入第1运算器4,在第1运算器4中将第1数据41“01000000”与非易失性存储器8内第1数据82“01000000”进行乘法运算。即,抽取第1数据41中防误擦标记写入位的值。其运算结果为“01000000”并将此结果输入比较器5。比较器5将第1运算器4的结果“01000000”与非易失性存储器8中的比较数据83“01000000”进行比较,由于各数据是一致的(即,防误擦标记(左起第2位)为1时),控制使切换器7为ON。
另一方面,由目标地址85“3A67h”规定RAM2中第2数据42的地址,将第2数据42“00000100”读出到第2运算器6。通过第2运算器6将第2数据42“00000100”与掩模数据84“11111011”进行乘法处理。此乘法结果为“00000000”。即,将希望修正的位(左起第6位)的值从“1”变为“0”,对于希望修正位以外的位,全部成为“1”以使得第2运算器6的运算不改变值。
然后,切换器7为ON的时候,第2运算器6的运算结果“00000000”写入到第2数据42中。此时,第2运算器6中进行运算之前的第2数据42,其记录起动标记(左起第6位)原为“1”,但由于被第2运算器6的运算结果改写了,第2数据42的记录起动标记为“0”。此结果是,如果第1数据41中的防误擦标记(左起第2位)为“1”,则进行第2数据42中记录起动标记(左起第6位)为“0”的动作,因而解除没附有防误擦用的销却进行记录的故障。
使这样修正了错误的微型计算机20在录像机中工作时,具有防误擦检测部32的盒式录像带31(参照图3(a)),根据操作者的录像指令进行记录动作,不具防误擦检测部32的盒式录像带31(参照图3(b)),即使操作者进行了错误的指令,也正常动作,不进行记录。
根据以上的本实施形态。在非易失性存储器8中写入第1以及第2掩模数据82及84、源地址81、比较地址83、目标地址85的任意数据,由源地址81抽取RAM2内的第1地址41,由第1掩模数据82从写入防误擦标记的第1数据41中读出防误擦标记,并与比较数据进行比较,当与比较数据83一致时,将写入着记录起动标记的第2数据42与第2掩模数据84在第2运算器6进行运算后的结果写入第2数据42,从而当防误擦标记为“1”的时候,能修正第2数据42,使记录起动标记为“0”。其中微型计算机的错误修正可利用小容量的非易失性存储器,以低费用就能实现,得到良好的效果。
又,非易失性存储器8中,能由微型计算机技术人员指定与故障处相符的源地址、目标地址并设定各数据,因此对于各种错误,能够不用改变掩模型ROM而进行错误的修正。
再者,在本实施形态中,已说明了将第1以及第2运算器4及6作为乘法器的情况,但由于改变非易失性存储器8内的第1以及第2选择数据86及87,可将第1以及第2运算器中任意一个或者双方设定为加法器等。又,本实施形态是只对于乘法器与加法器才能够切换的结构,但也能够设定为除法器等其它逻辑运算器。
如上所述,本发明能够获得下述良好效果:不改变掩模型ROM且不将程序区域的一部分改写到设置在微型计算机外部设的非易失性存储器中,能够以低费用由小容量的非易失性存储器进行软件错误的修正。
还可获得修正微型计算机的错误时,不需要将微型计算机本身从晶片状态再次经过扩散工序而重新制作,能够大幅度减少费用如此的良好效果。