半导体装置以及使用该半导体装置的内电路仿真器的制作方法

文档序号:7932199阅读:229来源:国知局
专利名称:半导体装置以及使用该半导体装置的内电路仿真器的制作方法
技术领域
本发明涉及一种半导体装置,该半导体装置被连接到调试工具上时,向调试工具发送内部的数据或程序。本发明还涉及到采用这样的半导体装置的内电路仿真器。
背景技术
在单片微机及根据用户规格生产的专用产品所用的系统LSI(大规模集成电路)等半导体装置中,主要搭载方便进行软件(程序)调试的调试电路。当搭载这种调试电路的半导体装置在与外部的调试工具连接时,将向调试工具发送半导体装置内部的ROM(只读存储器)、RAM(随机存储器)、寄存器等的内容(数据或程序)。进行软件调试的用户,可以通过调试工具获知半导体装置内部的ROM、RAM、寄存器等内容,这样就可以很容易地进行软件的调试。
但是,有的半导体装置,往往不希望进行软件调试的用户以外的人(以下称为“第三者”)知道其中某些数据或程序,比如,半导体装置内部的ROM往往装有解除特定密码的密码解除键,而这个解除密码键就不希望被第三者获知。
在这种情况下,为防止半导体装置内部的数据等被第三者获知,可以考虑采取如下的对策(i)半导体装置中不搭载调试电路;(ii)虽然在半导体电路中搭载调试电路,但是不公开调试电路的使用方法。
但是,若采用上述(i)的措施,由于进行软件调试的用户不能获知半导体装置内部的数据,而使软件调试变得困难。
还有,若采用上述(ii)的对策,则当有第三者对半导体装置进行分析而获知调试电路的使用方法时,半导体装置内部的数据也同时被第三者获知。
可是,在日本专利第1998-133906号公告(以下称“文献1”)中揭示的内电路仿真器的特征包括存储器空间被划分为存储程序的程序存储区和存储数据的数据存储区,且对具有与其分别对应的地址总线的微机进行仿真时,预先设定表示程序存储区内被变换的各变换区的属性的变换数据和表示对数据存储区内分配的各特殊功能寄存器的访问许可/不许可的保护数据,检测出对各变换区或各特殊功能寄存器发生的非法访问,并在停止仿真的内电路仿真器中输入各地址总线的总线信号,根据控制信号选择输出这些信号的一个总线信号的选择装置;以及具有用于地址输入该选择装置的总线信号输出,预先设定并存储变换数据及保护数据的存储装置。
但是,文献1所揭示的内电路仿真器具有选择装置,用于预先设定表示程序存储区内被变换的各变换区属性的变换数据,以及表示对程序存储区内分配的各种特殊功能寄存器的访问许可/不许可的保护数据,输入分别与程序存储区和数据存储区相对应的地址总线的总线信号,根据控制信号选择输出这些信号的一个总线信号;存储装置,用于地址输入该选择装置的总线信号输出,预先设定并存储变换数据及保护数据;是通过检测出对各保护区或对各特殊功能寄存器的非法访问,停止仿真,将变换存储器和SFR保护存储器汇总为一个保护存储器的,不是使进行软件调试的用户可以读取半导体装置内部的数据,而第三者不能够读取半导体装置内数据的装置。
另外,日本专利2000-347942号公报(以下称为“文献2”)中揭示的信息处理装置特征在于具有存储器,存储为防止被设在外部的仿真器的非法访问,而在其存储信息中包含可由用户单独设定的用户程序的保密解除程序的保护信息;单片调试电路,其与仿真器连接后,在仿真器和信息处理装置之间进行调试所需信号的输入输出控制,支持信息处理装置的调试;保密电路,用于在接通电源时接收使信息处理装置复位的通电复位信号,将单片调试电路的功能无效化并设定保密措施,禁止通过仿真器读取存储器的存储信息,接收保密措施指定位和启动该保密措施指定位的复位启动代码后,将单片调试电路的功能有效化并解除保密措施,使通过仿真器读取存储器的存储信息成为可能。
但是,文献2披露的信息处理装置,虽然是一种为了保护存储器中所存储的信息不被设在外部的仿真器非法访问的装置,但在存储信息中也包含了可由用户特别设定的用户程序组成的保密解除程序。

发明内容
因此,鉴于以上几点,本发明的目的是提供一种能在连接到调试工具上时,在输入预定的数据和信号的情况下,能够读取内部的数据或程序的半导体装置。本发明的目的还包括提供具有这种半导体装置的内电路仿真器。
为解决上述课题,本发明所涉及的半导体装置是具有进行预定运算的运算处理电路和带有预定功能的M个(M为自然数)功能模块,当被连接到外部的调试工具上时,向调试工具发送功能模块内的数据或程序的半导体装置。其包括N个第一电路,其分别连接在M个功能模块内的预定的N个(N为小于等于M的自然数)功能模块和运算处理电路之间,根据指令,分别在N个功能模块和运算处理电路之间进行数据或程序的传输;第二电路,其被连接到调试工具上时,在根据调试工具发出的指令控制运算电路的同时,指示N个第一电路不进行N个功能模块和运算处理电路间的数据或程序传输;第三电路,其在接收到预定的数据和信号时,指示N个第一电路内的响应数据和信号的第一电路进行所述功能模块与所述运算处理电路间的数据或程序的传输,而忽略所述第二电路的指示;运算处理电路,用于当未与调试工具连接时,在M个功能模块间收发数据或程序的同时进行预定的运算,而当与调试工具连接时,则通过所述N个第一电路读取(M-N)个功能模块内的数据或程序,以及读取所述N个功能模块内的数据或程序,并发送到调试工具中。
在此,第三电路接收多个数据和信号,可以指示响应多个数据和信号的第一电路进行功能模块和运算处理电路间的数据或程序传输,而忽略第二电路发出的指示,同时,第三电路接收被编码的数据和信号,将已编码的数据和信号解码后,指示N个第一电路中的响应被编码的数据或信号的第一电路进行功能模块和运算处理电路间的数据或程序传输,而忽略第二电路的指示。
另外,第三电路具有寄存器,当寄存器被访问时,可指示N个第一电路进行功能模块和运算处理电路间的数据或程序的传输,而忽略第二电路发出的指示。进一步,第三电路具有寄存器,当寄存器内被写入预定的数据时,可以指示N个第一电路中的响应寄存器所存储的数据的第一电路进行功能模块和运算处理电路间的数据或程序的传输,而忽略第二电路发出的指示。
还有,第三电路具有多个寄存器,当寄存器被访问时,可指示响应被访问的寄存器的第一电路进行功能模块和运算处理电路间的数据或程序的传输,而忽略第二电路发出的指示。进一步,第三电路具有多个寄存器,当多个寄存器中的任何一个或全部被写入预定的数据时,指示响应被访问的寄存器或被写入寄存器内的数据的第一电路进行功能模块和运算处理电路间的数据或程序的传输,而忽略第二电路的指示。
另外,数据和信号也可以由运算处理装置或外部提供。还有,寄存器也可以被运算处理装置或外部访问。
另外,还具有根据预定的协议从外部接收信号的第四电路,第四电路也可以根据从外部接收到的数据向第三电路输出数据或信号。
同时,本发明所涉及的内电路仿真器还包括本发明所涉及的半导体装置;以及与半导体装置中的运算处理电路以及由第二电路连接的调试工具。
通过上述构成的本发明,在输入预定的数据和信号时,就可以读取内部的数据或程序。由此,能够简单地实现软件调试的用户可以读取内部的数据而其他用户不能读取内部数据的目的。


图1是根据本发明第一实施方式的内电路防真器示意图。
图2是图1中的保护电路的内部构成示意图。
图3是表示图2所示的输入输出缓冲器的内部构成一个例子的示意图。
图4是表示图3缓冲器工作的真值表。
图5是根据本发明的第二实施方式的内电路仿真器的示意图。
图6是根据本发明的第三实施方式的内电路仿真器示意图。
图7是表示图2所示输入输出缓冲器内部构成的其它示例图。
图8为表示图2所示输入输出缓冲器内部构成的其它示例图。
图9为表示图2所示输入输出缓冲器内部构成的其它示例图。
具体实施例方式
下面,参照附图对本发明的实施方式进行描述。另外,在同一构成要素赋予同样的附图标记,省略说明。
图1是关于本发明的一种实施方式所涉及的内电路仿真器的图示。如图1所示,内电路仿真器1具有系统LSI(大规模集成电路)10和调试工具40。
系统LSI10包括CPU(中央处理器)11、调试电路12、保护解除电路13、ROM(只读存储器)21、RAM(随机存储器)22、寄存器23和25、用户电路24以及保护电路31~34。
ROM21存储着CPU11执行的软件(程序)及CPU11使用的数据等。RAM22以及寄存器23存储暂存数据等。用户电路24进行满足用户技术要求的工作。
CPU11在未与调试工具40连接时,读取ROM21、RAM22、寄存器23以及用户电路24内部的数据并进行预定的运算。而CPU11在与调试工具40连接时,根据调试工具40和调试电路12的指令,读取ROM21、RAM22、寄存器23以及用户电路24内部的数据并输出到调试工具40中。在本实施方式中,由于CPU11是连接在调试工具40上的,因此,根据调试工具40以及调试电路12的指令,读取ROM21、RAM22、寄存器23以及用户电路24内部的数据并输出到调试工具40中。
保护电路31~34分别与ROM21、RAM22、寄存器23以及用户电路24和CPU11连接,根据调试电路12以及保护解除电路13的指令,进行ROM21、RAM22、寄存器23以及用户电路24和CPU11间的数据或程序的传输。
另外,在CPU11和保护电路31~34之间、CPU11和寄存器25之间,以及保护电路31~34和ROM21、RAM22、寄存器23以及用户电路24之间,分别用8位宽的总线连接。
当调试电路12在与调试工具40相连接时,根据调试工具40的指令,在控制CPU11的同时,向保护电路31~34输出高电平的保护有效信号;当未与调试工具40相连接时,向保护电路31~34输出低电平的保护有效信号。在本实施方式中,由于调试电路12与调试工具40相连接,因此,向保护电路31~34中输出高电平的保护有效信号。
保护解除电路13从外部输入控制信号。当保护解除电路13从外部输入的控制信号为低电平时,将低电平的保护解除信号输出到保护电路31~34。还有,保护解除电路13从外部输入的控制信号为高电平时,将高电平的保护解除信号输出到保护电路31~34。另外,控制信号由系统LSI10的使用说明书中被称为“未使用”和“预留”的端子输入。
图2是表示保护电路31~34的内部构成的示意图。如图2所示,保护电路31~34包括输入输出缓冲器51~58和与门电路59。
与门电路59,与将保护有效信号和保护解除信号反转的信号进行逻辑积运算,将作为结果而得到的信号输出到输入输出缓冲器51~58中。
图3是表示输入输出缓冲器51~58内部构成的示意图。如图3所示,输入输出缓冲器51~58包括带有输出启动功能的缓冲器61和62。缓冲器61的输入与CPU11相连接,输出与ROM21、RAM22、寄存器23以及用户电路24相连接。而且,缓冲器62的输入与缓冲器61的输出相连,输出与缓冲器62的输入相连接。
缓冲器61和62在与门电路59的输出信号为低电平时开启,在与门电路59的输出信号为高电平时关闭。
图4是表示缓冲器61和62的动作的真值表。如图4所示,当保护有效信号为低电平时,不管保护解除信号是高电平还是低电平,与门电路59的输出信号都变为低电平,缓冲器61和62为开启状态。
在保护有效信号为高电平,保护解除信号为低电平时,与门电路59的输出信号变为高电平,缓冲器61和62关闭。
在保护有效信号和保护解除信号均为高电平时,与门电路59的输出信号变为低电平,缓冲器61和62开启。
这样通过内电路仿真器1,将高电平的控制信号输入到保护解除电路13时,保护电路31~34中的缓冲器61和62开启,CPU11就可以读取ROM21、RAM22、寄存器23以及用户电路24内部的数据并发送到调试工具40。这样,用户就可以读取ROM21、RAM22、寄存器23以及用户电路24内部的数据。另外,保护解除电路13被输入低电平的控制信号时,保护电路31~34内的缓冲器61和62关闭,CPU11就不能读取ROM21、RAM22、寄存器23以及用户电路24内部的数据。这样,就可以防止用户读取ROM21、RAM22、寄存器23以及用户电路24内部的数据。另外,可以不管保护信号及保护解除信号的状态,而读取寄存器25内部的数据等。
在此,可以只让被允许读取ROM21、RAM22、寄存器23以及用户电路24内部数据的用户(比如,进行软件调试的技术人员)知道系统LSI10中用于输入控制信号的端子(使用说明书中被称为“未使用”和“预留”的端子),而不让其他的用户知道。这样,被允许读取ROM21、RAM22、寄存器23以及用户电路24内部的数据的用户可以很容易地进行调试,还能够防止其他的用户读取ROM21、RAM22、寄存器23以及用户电路24内部的数据。
同时,由于在系统LSI10中用来输入控制信号的端子在使用说明书中被称为“未使用”和“预留”,因此未被告之输入控制信号的端子的用户,在系统LSI10被连接到调试工具40时,因为将缓冲器61和62关闭,所以解析系统LSI10就变得非常困难。同理,在系统LSI10被连接到调试工具40时,未被告之输入控制信号用的端子的用户读取ROM21、RAM22、寄存器23以及用户电路24内部的数据等就变得非常困难。
还有,在系统LSI10被连接到调试工具40上时,除了将高电平的控制信号输入到保护解除电路13中以外,由于不能使缓冲器61和62开启,因此不能使用其他方法或装置读取ROM21、RAM22、寄存器23以及用户电路24内部的数据。
另外,在本实施方式中,当一个控制信号变为高电平时,保护电路31~34内的缓冲器61和62开启,比如,在输入第一~第四的控制信号后,第一控制信号变为高电平时,保护电路31内的缓冲器61和62开启;在第二控制信号变为高电平时,保护电路32内的缓冲器61和62开启;第三控制信号变为高电平时,保护电路33内的缓冲器61和62开启;第四控制信号变为高电平时,保护电路34内的缓冲器61和62开启。这样,为读取ROM21、RAM22、寄存器23以及用户电路24内部的数据,就可以设定保密级,并根据保密级实现数据等的读取。
再有,第一~第四的控制信号被编码,保护解除电路13对第一~第四的控制信号进行解码,根据解码结果,可以开启保护电路31~34中的任何一个或全部的缓冲器61和62。
同时,在保护解除电路13内部设有寄存器,当从外部对寄存器访问时,也可以输出高电平的保护解除信号。
另外,保护解除电路13在内部设有寄存器,当从外部将预定值的数据(解除键)写入该寄存器时,也可以根据被写入的数据,将保护电路31~34中的一个或全部的缓冲器61和62开启。这样,就可以为读取ROM21、RAM22、寄存器23以及用户电路24内部的数据而设定保密级,以实现根据保密级的数据等的读取。
再有,在保护解除电路13内部有多个寄存器,当从外部访问这些寄存器时,也可以根据被访问的寄存器,将保护电路31~34中的一个或所有的缓冲器61和62开启。这样,就可以为读取ROM21、RAM22、寄存器23以及用户电路24内部的数据而设定保密级,以实现根据保密级进行数据等的读取。
另外,在保护解除电路13内部有多个寄存器,当从外部向这些寄存器写入预定值的数据(解除键)时,根据进行写入的寄存器和被写入的数据,可以将保护电路31~34中的一个或所有的缓冲器61和62开启。这样,就可以为读取ROM21、RAM22、寄存器23以及用户电路24内部的数据而设定保密级,以实现根据保密级进行数据等的读取。
还有,在本实施方式中,在ROM21、RAM22、寄存器23以及用户电路24和CPU11之间,连接着保护电路31~34,比如,在只想防止ROM21内部的数据被读取时,可以在ROM21和CPU11之间连接保护电路31,而不需要保护电路32~34。
另外,在系统LSI10未被连接到调试工具40上时,CPU11可以进行预定的运算处理。
下面,对本发明的第二实施方式进行介绍。图5是本发明的第二实施方式所涉及的内电路仿真器示意图。
如图5所示,内电路仿真器71具有系统LSI72和调试工具40。
系统LSI72包括CPU11、调试电路12、保护解除电路13、ROM21、RAM22、寄存器23和25、用户电路24和保护电路31~34。
在未与调试工具40连接时,CPU11读取ROM21、RAM22、寄存器23或用户电路24内部的数据或程序,并进行规定的运算。而CPU11在与调试工具40连接时,则根据调试工具40和调试电路12的指令,向保护解除电路13输入高电平或低电平的控制信号。在本实施方式中,由于CPU11与调试工具40连接,所以,根据调试工具40和调试电路12的指令,向保护解除电路13输出高电平或低电平的控制信号。
保护解除电路13从CPU11输入控制信号。在控制信号是低电平时,保护解除电路13向保护电路31~34输出低电平的保护解除信号。而在控制信号为高电平时,保护解除电路13向保护电路31~34输出高电平的保护解除信号。
这样,通过内电路仿真器71,CPU11根据调试工具40或调试电路12的指令向保护解除电路13输出高电平的控制信号时,保护电路31~34内的缓冲器61和62呈开启状态,CPU11读取ROM21、RAM22、寄存器23以及用户电路24内部的数据并发送到调试工具40。这样,用户就可以读取ROM21、RAM22、寄存器23以及用户电路24内部的数据。另外,当CPU11根据调试工具40或调试电路12的指令向保护解除电路13输出低电平控制信号时,保护电路31~34内的缓冲器61和62关闭,CPU11便不能读取ROM21、RAM22、寄存器23以及用户电路24内部的数据。这样,就可以防止用户读取ROM21、RAM22、寄存器23以及用户电路24内部的数据。
在此,可以做到只让那些被允许读取ROM21、RAM22、寄存器23以及用户电路24内部的数据的用户(比如,进行软件调试的技术人员)知道使CPU11输出高电平控制信号的指令,而不让其他的用户知道。如果这样做,既可以使被允许读取ROM21、RAM22、寄存器23以及用户电路24内部数据的用户很容易地进行调试,又可能够防止其他的用户读取ROM21、RAM22、寄存器23以及用户电路24内部的数据等,而且,可以不管保护信号及保护解除信号的状态,而读取寄存器25内部的数据等。
还有,由于系统LSI72连接在调试工具40时,缓冲器61和62被关闭,所以不知道使CPU11输出高电平控制信号的指令的用户,解析系统LSI72非常困难。因此,不知道使CPU11输出高电平控制信号的指令的用户,在系统LSI72被连接在调试工具40的情况下,读取ROM21、RAM22、寄存器23以及用户电路24内部的数据则变得非常困难。
同时,在系统LSI72被连接在调试工具40的情况下,除了使CPU11输出高电平的控制信号以外,还不能将缓冲器61和62开启,因此,无法采用其他装置或方法读取ROM21、RAM22、寄存器23以及用户电路24内部的数据。
另外,在本实施方式中,当一个控制信号变为高电平时,保护电路31~34中的缓冲器61和62开启,比如,CPU11向保护解除电路13输出第一~第四的控制信号,当第一控制信号变为高电平时,保护电路31内的缓冲器61和62开启;在第二控制信号变为高电平时,保护电路32内的缓冲器61和62开启;第三控制信号变为高电平时,保护电路33内的缓冲器61和62开启;第四控制信号变为高电平时,保护电路34内的缓冲器61和62开启。这样,就可以实现为读取ROM21、RAM22、寄存器23以及用户电路24内部的数据设定保密级,并根据保密级进行读取数据等。
再有,当第一~第四的控制信号被编码后,保护解除电路13对第一~第四的控制信号进行解码,根据解码结果,可以将保护电路31~34中的任何一个或所有的缓冲器61和62开启。
另外,在保护解除电路13内部具有寄存器,当该寄存器被CPU11访问时,可以输出高电平的保护解除信号。
进一步,在保护解除电路13内部设有寄存器,当该寄存器从CPU11写入预定值的数据(解除键)时,根据写入的数据,可以将保护电路31~34中的任何一个或所有的缓冲器61和62开启。这样,可实现为读取ROM21、RAM22、寄存器23以及用户电路24内部的数据设定保密级,并根据保密级进行数据等的读取。
还有,在保护解除电路13内部有多个寄存器,当这些寄存器被CPU11访问时,可以根据被访问的寄存器,将保护电路31~34中的任何一个或全部的缓冲器61和62开启。这样,可以实现为读取ROM21、RAM22、寄存器23以及用户电路24内部的数据设定保密级,并根据保密级进行数据等的读取。
进一步,在保护解除电路13内部有多个寄存器,当这些寄存器被CPU11写入预定值的数据(解除键)时,根据执行写入的寄存器和被写入的数据,可以将保护电路31~34中的任何一个或全部的缓冲器61和62开启。以此,可以实现为读取ROM21、RAM22、寄存器23以及用户电路24内部的数据设定保密级,并根据保密级读取数据等。
还有,在本实施方式中,在ROM21、RAM22、寄存器23以及用户电路24和CPU11之间,虽然连接有保护电路31~34,但,比如在只想防止ROM21内部的数据被读取时,可以在ROM21和CPU11之间连接保护电路31,而不要保护电路32~34。
同时,在内电路仿真器71中,由于没有必要像内电路仿真器1那样从外部向保护解除电路13输入控制信号,所以也不需要输入控制信号而使用的端子和输入控制信号而使用的特别装置。
另外,在系统LSI72未被连接到调试工具40上时,CPU11可以进行预定的运算处理。
下面,对本发明的第三实施方式进行介绍。图6是本发明的第三实施方式所涉及的内电路仿真器示意图。
如图6所示,内电路仿真器81具有系统LSI82和调试工具40。
系统LSI82包括CPU11、调试电路12、保护解除电路13、ROM21、RAM22、寄存器23和25、用户电路24、保护电路31~34和串行接口电路83。
串行接口电路83按照预定的协议从外部接收串行信号,根据该串行信号,向保护解除电路13输入高电平或低电平的控制信号。
从串行接口电路83将控制信号输入到保护解除电路13中。在控制信号是低电平的时候,保护解除电路13向保护电路31~34输出低电平的保护解除信号。而在控制信号是高电平的时候,保护解除电路13向保护电路31~34输出高电平的保护解除信号。
这样,通过内电路仿真器81,根据从外部输入的串行信号,在串行接口电路83向保护解除电路13输出高电平控制信号时,保护电路31~34中的缓冲器61和62开启,CPU11读取ROM21、RAM22、寄存器23以及用户电路24内部的数据并发送到调试工具40中。这样,用户就可以读取ROM21、RAM22、寄存器23以及用户电路24内部的数据。同时,在串行接口电路83根据从外部输入的串行信号,向保护解除电路13输出低电平控制信号时,保护电路31~34中的缓冲器61和62关闭,CPU11不能读取ROM21、RAM22、寄存器23以及用户电路24内部的数据。这样,就可以防止用户读取ROM21、RAM22、寄存器23以及用户电路24内部的数据。
在此,可以做到只让那些被允许读取ROM21、RAM22、寄存器23以及用户电路24内部数据的用户(比如,进行软件调试的技术人员等)知道使串行接口电路83输出高电平控制信号的串行信号以及协议,而不让其他用户知道。这样,被允许读取ROM21、RAM22、寄存器23以及用户电路24内部的数据的用户就可以很容易地进行调试,同时可以防止其他的用户读取ROM21、RAM22、寄存器23以及用户电路24内部的数据等,而且,可以不管保护信号及保护解除信号的状态,而读取寄存器25内部的数据等。
还有,当系统LSI82被连接在调试工具40上时,将缓冲器61和62关闭,这样不知道使串行接口电路83输出高电平控制信号及协议规定的用户就难以进行系统LSI82的解析。所以不清楚使串行接口电路83输出高电平控制信号的用户,当系统LSI82被连接在调试工具40上时,读取ROM21、RAM22、寄存器23及用户电路24内部的数据就变得非常困难。
而且,系统LSI82被连接在调试工具40上时,除使串行接口电路83输出高电平控制信号外,由于无法开启缓冲器61和62,所以不能采用其他方法和装置读取ROM21、RAM22、寄存器23及用户电路24内部的数据等。
另外,在本实施方式中,虽然一个信号变为高电平时,保护电路31~34内的缓冲器61和62为开启状态,但也可以如下设定比如串行接口电路83向保护解除电路13输出第一~第四的控制信号,当第一控制信号变为高电平时,保护电路31内的缓冲器61和62开启,当第二控制信号变为高电平时,保护电路32内的缓冲器61和62开启,当第三控制信号变为高电平时,保护电路33内的缓冲器61和62开启,当第四控制信号变为高电平时,保护电路34内的缓冲器61和62开启。这样,就可以实现为读取ROM21、RAM22、寄存器23及用户电路24的数据设保密级,并按照保密级读取数据。
还可以进一步将第一~第四控制信号进行编码,保护解除电路13对第一~第四控制信号进行解码,根据解码结果,使保护电路31~34中的任一电路或所有的缓冲器61和62开启。这样,可以为读取ROM21、RAM22、寄存器23及用户电路24的数据设保密级,按保密级读取数据。
另外,在本实施方式中,虽然采用了串行接口电路83,但是也可以采用并行接口。
还有,在本实施方式中,在ROM21、RAM22、寄存器23及用户电路24与CPU11之间连接着保护电路31~34,但是,例如在只防止ROM21内部数据被读取时,也可以在ROM21与CPU11之间连接保护电路31,而不要保护电路32~34。
另外,当系统LSI82未被连接在调试工具40上时,CPU11可以进行预定的运算处理。
同时,在第一~第三实施方式中,虽然保护电路31~34具有输入输出缓冲器51~58(参照图3),但是根据需要,保护电路31~34即可以具有如图7所示的输出缓冲器91~98,还可以具有如图8所示的输入缓冲器101~108。
另外,保护电路31~34如图9所示,还可以具有包含缓冲器61和62、与非门电路84和85在内的输入输出缓冲器111~118。
如上所述,根据本发明输入预定的数据或信号时,就可以读取内部数据或程序,这样,能够简单地实现软件调试用户可以读取内部数据,而其他用户不能读取内部数据等目的。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的权利要求范围之内。
附图标记说明1、71、81内电路仿真器10、72、82系统大规模集成电路11CPU12调试电路13保护解除电路
21ROM22RAM23寄存器24用户电路31~34保护电路40调试工具51~58、111~118输入输出缓冲器59与门电路61、62缓冲器83串行接口电路84、85与非门电路91~98输出缓冲器101~108输入缓冲器
权利要求
1.一种半导体装置,其具有进行预定运算的运算处理电路以及具有预定功能的M个(M为自然数)功能模块,当与外部调试工具连接时,将所述功能模块内的数据或程序发送至所述调试工具,其包括N个第一电路,被分别连接在所述M个功能模块内的预定的N个(N为小于等于M的自然数)功能模块与所述运算处理电路之间,根据指示,分别在所述N个功能模块和所述运算处理电路之间进行数据或程序的传输;第二电路,当与所述调试工具连接时,其响应于所述调试工具发出的指示,在控制所述运算处理电路的同时,指示所述N个第一电路不在所述N个功能模块与所述运算处理电路之间进行数据或程序传输;以及第三电路,当其接收到预定的数据和信号时,指示所述N个第一电路中的响应所述数据或信号的第一电路进行所述功能模块与所述运算处理电路之间的数据或程序的传输,而忽略所述第二电路发出的指示;所述运算处理电路,在未与所述调试工具连接时,其与所述M个功能模块之间进行数据或程序的收发的同时进行预定的运算;当与所述调试工具连接时,则通过所述N个第一电路读取所述(M-N)个功能模块内的数据或程序,以及读取所述N个功能模块内的数据或程序,然后发送给所述调试工具。
2.根据权利要求1所述的半导体装置,其特征在于所述第三电路接收多个数据和信号,指示响应所述多个数据和信号的第一电路进行所述功能模块和所述运算处理电路之间的数据或程序的传输,而忽略所述第二电路发出的指示。
3.根据权利要求1或2所述的半导体装置,其特征在于所述第三电路,接收已编码的数据或信号,并对所述已编码的数据或信号进行解码,指示响应所述已解码数据或信号的第一电路进行所述功能模块和所述运算处理电路之间的数据或程序的传输,而忽略所述第二电路发出的指示。
4.根据权利要求1所述的半导体装置,其特征在于所述第三电路具有寄存器,当所述寄存器被访问时,指示所述N个第一电路进行所述功能模块和所述运算处理电路之间的数据或程序的传输,而忽略所述第二电路发出的指示。
5.根据权利要求1或4所述的半导体装置,其特征在于所述第三电路具有寄存器,当将预定的数据写入所述寄存器中时,指示响应写入所述寄存器的数据的第一电路进行所述功能模块与所述运算处理电路之间的数据或程序的传输,而忽略所述第二电路发出的指示。
6.根据权利要求1或4所述的半导体装置,其特征在于所述第三电路具有多个寄存器,当所述寄存器被访问时,指示响应所述被访问的寄存器的第一电路进行所述功能模块与所述运算处理电路之间的数据或程序的传输,而忽略所述第二电路发出的指示。
7.根据权利要求1或4所述的半导体装置,其特征在于所述第三电路具有多个寄存器,当在所述多个寄存器中的任何一个或全部被写入预定的数据时,指示响应所述被访问的寄存器或被写入所述寄存器内的数据的第一电路进行所述功能模块与所述运算处理电路之间的数据或程序的传输,而忽略所述第二电路发出的指示。
8.根据权利要求1~7中任一所述的半导体装置,其特征在于由所述运算处理装置或从外部供给所述数据或信号。
9.根据权利要求4~7中任一所述的半导体装置,其特征在于由所述运算处理装置或从外部访问所述寄存器。
10.根据权利要求1~7中任一所述的半导体装置,其特征在于,还具有第四电路,其根据特定的协议从外部接收数据,所述第四电路基于从外部接收的数据,向所述第三电路输出数据或信号。
11.一种内电路仿真器,其具有权利要求1~10中任一所述的半导体装置,以及连接至所述半导体装置内的所述运算处理电路及所述第二电路的调试工具。
全文摘要
提供一种能够在输入预定的数据或信号时,读取内部数据或程序的半导体装置等。其具有保护电路(31)~(34),被分别连接在ROM(21)、RAM(22)、寄存器(23)及用户电路(24)与CPU(11)之间;调试电路(12),当其被连接在调试工具(40)上时,在控制CPU(11)的同时,指示保护电路不进行数据传输;保护解除电路(13),其在接收了预定的信号时,指示保护电路(31)~(34)进行数据传输,而忽略来自调试电路(12)的指示;以及CPU(11),用于在未与调试工具(40)连接时,进行预定的运算。
文档编号H04L1/22GK1489051SQ03156030
公开日2004年4月14日 申请日期2003年8月27日 优先权日2002年8月27日
发明者水田雅彦, 冈义美 申请人:精工爱普生株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1