Hereinafter, embodiments of the present invention will be described with reference to the drawings.
In
The noise detection circuit 103 is constituted by a flip-flop with the noise sensing line S101 as the data input, the noise sensing clock S103 as the clock input, and the noise sensing signal S104 as the data output. The noise sensing line S101 and the power supply line S102 constitute a twisted structure 102.
The reason for using the noise sensing clock S103 faster than the system clock will be mentioned. In semiconductor integrated circuits, the operation is generally determined in synchronism with the system clock.
For this reason, the possibility of malfunction is extremely high when noise occurs on the signal line at the timing of the edge of the system clock. Therefore, by sampling the voltage by use of the noise sensing clock S103 faster than the system clock, noises longer than the period of the system clock can be sensed with reliability, and noise detectivity is higher for noises shorter than the period of the system clock. Here, it is in order to improve detectivity that the clock faster than the system clock is used for sampling, and detectivity increases as the frequency increases. The effect of noise detection is obtained even when the noise sensing clock is not faster than the system clock.
Next, the reason that noise can be sensed only by sampling the voltage on the noise sensing line will be mentioned. Sampling means not reading by an analog circuit such as an A/D converter but reading by a flip-flop with the noise sensing clock as the clock input and the voltage on the noise sensing line as the data input. Therefore, it can be determined that noise occurs when the voltage on the noise sensing line is not more than the threshold value of the transistor that receives data in the flip-flop without the need to convert the voltage into a numerical value and compare the numerical value with the threshold value.
Next, the kinds of noise to be sensed will be described. A first kind is a noise directly applied from the outside to the power supply terminal, a communication terminal for exchanging signals, an oscillation terminal for inputting clocks, and a mode setting terminal for setting the mode of the semiconductor integrated circuit. A second kind is a noise caused by electromagnetic waves which noise is not directly applied but fluctuates the internal potential. A third kind is a noise produced from a circuit that requires a large peak current which circuit is mounted on the semiconductor integrated circuit.
To increase the detectivity of noise that occurs unexpectedly, the frequency of the noise sensing clock is increased as mentioned above, or a plurality of noise sensing clocks are formed by delaying the system clock and noise sensing is performed by use of the noise sensing clocks, to thereby improve the noise detectivity. The latter structure using a plurality of noise sensing clocks will be described below.
In
The noise sensing line S101 is a signal wiring that is long and thin inside the semiconductor integrated circuit 001 in terms of layout and is the most sensitive when it is near the power supply line or the ground (GND) line in the formation of the semiconductor integrated circuit 001.
As the noise sensing line S101, for example, a signal line constituting the twisted structure 102 as shown in
In the noise detection circuit 103, the voltage occurring on the noise sensing line S101 is sampled by use of the noise sensing clock S103 faster than the system clock both when the voltage is changed by noise or the like and when it is not changed, the noise sensing signal S104 outputted from the noise detection circuit 103 is changed only when the voltage occurring on the noise sensing line S101 is changed by noise or the like.
By this structure, when ingress of a signal of a frequency not for performing a given operation or power supply line fluctuation occurs due to a noise or the like in the semiconductor integrated circuit 001, this can be detected as noise.
The noise sensing circuit 010 in
The system clock S001 determines the operation clock frequency of the CPU, and is necessary for internal operations of the CPU and peripheral functions. The first delay element 011 and the second delay element 015 may have any structure as long as the sum of the delay times of the delay elements (delay time Δt, number n) is not more than one period of the system clock S001 (Δt*n≦one period of the system clock S001), one or more delay elements are disposed as a structure that can sample the noise caused within one period of the system clock S001, and the system clock S001 is delayed and outputted. Since it is in order to sample noise a plurality of number of times in one period of the system clock S001 that the system clock S001 is delayed before outputted as described above, noise may be sampled by use of not a delay clock but a clock faster than the system clock S001.
Since noise can be sampled a plurality of number of times in one period of the system clock by using a delay clock and similar effects as those obtained when noise is sampled by a high-speed clock are obtained, it is unnecessary that the noise sensing clock be fast.
It is in order to solve the following problem that noises on a plurality of noise sensing lines are sensed by sampling them by use of delay clocks with different delay times with respect to the system clock and the sensed noises are combined. This is because when a noise occurs a certain period of time behind the noise sensing clock, the noise cannot be sensed by a noise sensing circuit that samples noise by use of a noise sensing clock. To sense such a noise, a noise detection circuit is provided that samples noise by a second noise sensing clock delayed the certain period of time from the noise sensing clock. This enables the sensing of noise delayed a certain period of time from the noise sensing clock.
It is difficult to predict where in the semiconductor integrated circuit noise is caused or if noise is applied externally. Therefore, noise detectivity can be increased by physically disposing a plurality of noise sensing circuits in various positions in the semiconductor integrated circuit.
For example, when a noise is applied to the right end of the semiconductor integrated circuit, if a noise sensing circuit is disposed only on the left end, the noise is highly unlikely to be sensed. However, by disposing a noise sensing circuit also on the right end, the probability that the noise is sensed becomes higher.
In the noise sensing circuit 010 that senses signals sensitive to noise, a signal wiring that is long and thin inside in terms of layout and is the most sensitive when it is near the power supply line or the GND line in the formation of the semiconductor integrated circuit 001 is used as the noise sensing line. Alternatively, sensitive signal wirings are intentionally formed on a line near a logic circuit with a large power supply fluctuation and on a line near a dynamic circuit in the semiconductor integrated circuit 001, and these are used as the first noise sensing line S010 and the second noise sensing line S015. A concrete example is as shown in
The voltages occurring on the first noise sensing line S010 and the second noise sensing line S015 are captured by the first layout fixing logic 012 and the second layout fixing logic 016 in a period of time shorter than one period of the system clock S001 both when the voltages are changed by noise or the like and when they are not changed, and the noise sensing signal S002 is outputted from the noise sensing AND circuit 017 only when data opposite in polarity to the first noise sensing line S010 and the second noise sensing line S015, that is, the first noise sensing line S010 and the second noise sensing line S015 exceed the threshold values of the first layout fixing logic 012 and the second layout fixing logic 016 because of noise or the like.
In this structure, the noise sensing period is as follows: In the case of only the first layout fixing logic 012, sampling is performed once every period of the system clock. In the present invention, by providing a plurality of (a number, n, of) layout setting logics and obtaining the inverted AND of the outputs thereof, sampling can be performed a plurality of number of times (a number, n, of times) in one period of the system clock.
The significance of obtaining the inverted AND of the outputs of the first layout fixing logic 012 and the second layout fixing logic 016 will be mentioned. In the embodiment, the outputs of the first layout fixing logic 012 and the second layout fixing logic 016 are high (hereinafter, referred to as “H”) when no noise is sensed (∵because of the output of the flip-flop whose clock is the voltage level of the first noise sensing line S010 and the second noise sensing line S015 which is “H”).
When noise is received, the output of the first noise sensing line S010 or the second noise sensing line S015 becomes low (hereinafter, referred to as “L”), and when the first delay clock S011 or the second delay clock S016 rises at that time, the first sensing data S012 or the second sensing data S017 changes to “L”. When at least one of the pieces of sensing data becomes “L”, since this indicates that noise is detected, the inverted AND of a plurality of (two in the case of the figure) pieces of sensing data is obtained, and this is used as the noise sensing signal S002.
The logic used at this time may be any logic as long as noise can be detected only when the potentials of the first noise sensing line S010 and the second noise sensing line S015 are changed by noise or the like.
While in the semiconductor integrated circuit 001, the first noise sensing line S010 and the second noise sensing line S015 are fixed at the power supply potential and the logic for outputting the noise sensing signal S002 is created by the change of the potential, the first noise sensing line S010 and the second noise sensing line S015 may be fixed at the GND potential. In that case, the logic for outputting the noise sensing signal S002 is also different from that mentioned above.
By this structure, even if a signal of a frequency not for performing a given operation enters the semiconductor integrated circuit 001 due to noise or the like while the CPU is operating, the signal can be detected as noise, and whether the bus method or the serial method is used to transmit memory data from the ROM to the CPU can be selected by the noise sensing signal. The circuit for selecting the method of transmission of the memory data from the ROM to the CPU will be described later.
A memory cell 021 outputs data in a given number, n, of bits. Reference designation S020 represents a number, n, of buses (n-bit bus) outputted from the memory cell 021. Reference designation 042 represents an increment circuit that is fed with an n-fold clock S005 and increments the output value at intervals of the period of the n-fold clock S005. Reference designation 022 represents a selection circuit that selects one signal from the buses S020 based on an increment signal S003 outputted from the increment circuit 042. Reference designation S021 represents a selection circuit output signal outputted from the selection circuit 022. Reference designation 023 represents a one-bit sense amplifier that determines the signal S021. The one-bit sense amplifier 023 operates when a data transmission selection signal S004 is “H”. Reference designation 024 represents an n-bit sense amplifier that determines the signals on the buses S020. The n-bit sense amplifier 024 operates when the data transmission selection signal S004 is “L”.
The data transmission selection signal S004 is generated by obtaining the OR of the noise sensing signal S002 of the noise sensing circuit 010 and the output signal of a power supply sensing circuit 050 by an OR circuit 051. When a drop in power supply voltage is detected by the power supply sensing circuit 050, the one-bit sense amplifier 023 selectively operates, and the n-bit sense amplifier 024 stops operating. When the power supply voltage is normal, the n-bit sense amplifier 024 operates, and the one-bit sense amplifier 023 stops operating.
Because of this structure, the number of sense amplifiers can be selected, and the peak current value consumed by the sense amplifier can be adjusted. In addition, by this, by selecting the one-bit sense amplifier when the power supply voltage drops, power supply fluctuation can be reduced to thereby improve noise immunity characteristics.
Reference designation S004 represents a data transmission selection signal generated by noise sensing in the microcomputer. Reference designation 023 represents a one-bit sense amplifier. The one-bit sense amplifier 023 operates when the data transmission selection signal S004 is “H”. Reference designation 025 represents a serial transmission circuit that serially transmits, bit by bit, the data outputted from the one-bit sense amplifier 023. Reference designation S022 represents serially transmitted data of one-bit width transmitted by the serial transmission circuit 025. Reference designation 027 represents a serial/parallel conversion circuit that converts the data of one-bit width of the serially transmitted data S022 into data of n-bit bus width. Reference designation S023 represents converted parallelly transmitted data that is converted into data of n-bit width by the serial/parallel conversion circuit 027.
Reference designation 024 represents an n-bit sense amplifier. The n-bit sense amplifier 024 operates when the data transmission selection signal S004 is “L”. Reference designation 026 represents an n-bit parallel transmission circuit that performs n-bit parallel transmission of the n-bit data outputted from the n-bit sense amplifier 024. Reference designation S024 represents parallelly transmitted data of n-bit width transmitted by the n-bit parallel transmission circuit 026. Reference designation S025 represents transmitted memory data which is the wired OR of the converted parallelly transmitted data S023 transmitted by the serial method and the parallelly transmitted data S024 transmitted by the parallel method.
The operations performed when the data transmission selection signal S004 is “H” and “L” will be described with reference to
When the data transmission selection signal S004 is “L”, as the memory sense amplifier, the n-bit sense amplifier 024 operates. The data outputted from the n-bit sense amplifier 024 which data is transmitted in a width of n bits is the parallelly transmitted data S024. In this case, since the one-bit sense amplifier 023 does not operate, the serially transmitted data S022 and the converted parallelly transmitted data S023 are Hi-Z. Since the transmitted memory data S025 which is the memory output data is the wired OR of the converted parallelly transmitted data S023 and the parallelly transmitted data S024, the parallelly transmitted data S024 is transmitted as the transmitted memory data S025.
By this structure, the power supply fluctuation caused when noise occurs or the power supply voltage drops can be reduced, and noise immunity can be improved.
Reference designation 041 represents the PLL circuit capable of multiplying n-fold the system clock S001 generated by a clock generation circuit 052 of the microcomputer. Reference designation S005 represents an n-fold clock which is the system clock S001 multiplied n-fold by the PLL circuit 041. Reference designation S004 represents a data transmission selection signal generated by noise sensing in the microcomputer or power supply voltage sensing by a power supply sensing circuit 050. Reference designation 023 represents a one-bit sense amplifier that operates on the n-fold clock S005. The one-bit sense amplifier 023 operates when the data transmission selection signal S004 is “H”. The serial transmission circuit 025 serially transmits, bit by bit, the data outputted from the one-bit sense amplifier 023, on the n-fold clock S005. Reference designation 022 represents serially transmitted data of one-bit width transmitted by the serial transmission circuit 025. Reference designation 027 represents a serial/parallel conversion circuit that converts the data of one-bit width of the serially transmitted data S022 into data of n-bit bus width. Reference designation S023 represents converted parallelly transmitted data that is converted into data of n-bit width by the serial/parallel conversion circuit 027.
Reference designation 024 represents an n-bit sense amplifier. The n-bit sense amplifier 024 operates when the data transmission selection signal S004 is “L”. Reference designation 026 represents an n-bit parallel transmission circuit that performs n-bit parallel transmission of the n-bit data outputted from the n-bit sense amplifier 024. Reference designation S024 represents parallelly transmitted data of n-bit width transmitted by the n-bit parallel transmission circuit 026. Reference designation S025 represents transmitted memory data which is the wired OR of the converted parallelly transmitted data S023 transmitted by the serial method and the parallelly transmitted data S024 transmitted by the parallel method.
The operations performed when the data transmission selection signal S004 is “H” and “L” will be described with reference to
When the data transmission selection signal S004 is “L”, as the memory sense amplifier, the n-bit sense amplifier 024 operates. The data outputted from the n-bit sense amplifier 024 which data is transmitted in a width of n bits is the parallelly transmitted data S024. In this case, since the one-bit sense amplifier 023 does not operate, the serially transmitted data S022 and the converted parallelly transmitted data S023 are Hi-Z. Since the transmitted memory data S025 which is the memory output data is the wired OR of the converted parallelly transmitted data S023 and the parallelly transmitted data S024, the parallelly transmitted data S024 is transmitted as the transmitted memory data S025.
By switching the method of data transmission from the memory from the parallel method to the serial method, the power supply fluctuation in the transmission can be reduced to thereby improve noise immunity characteristics. Moreover, by transmitting data on the n-fold clock S005 at the time of serial transmission, the transmission speed of n-bit data is equal to that of parallel transmission.
Reference designation S032 represents a basic address issued by the CPU 030. Reference designation 043 represents an address correction circuit that changes a CPU stop signal S008 by the determination notification signal S031 to stop the CPU 030.
The operation will be described with reference to
Reference designation T73 represents a fourth instruction execution period. In the fourth instruction execution period T73, since the CPU 30 stops operating in the address changed period T72, the basic address S032 and the instruction notification signal S030 maintain the values in the address changed period T72. The instruction determination signal outputs “H”, and an operation similar to that performed in the second instruction execution period T62 is performed.
By adopting the structure that determines whether the instruction determination signal S007 and the instruction notification signal S030 coincide with each other or not as described above, erroneous reading of memory data due to noise can be sensed.
Reference designation S002 represents a noise sensing signal in the microcomputer. Reference designation S032 represents a basic address issued by the CPU 030. Reference designation 043 represents an address correction circuit that corrects the basic address S032 to an immediately previously specified address. Reference designation S008 represents a CPU stop signal to notify the CPU 030 of the performance of the address correction by the address correction circuit 043 and temporarily stops the execution of the current data and instruction having been transmitted to the CPU 030. Reference designation S009 represents an address to specify the memory.
The operation will be described with reference to
According to this structure, by reissuing the address by the CPU, temporarily stopping the instruction execution by the CPU, and rereading of the memory data by noise sensing in the microcomputer, the possibility of malfunction due to erroneous transmission of the memory data can be avoided.
The semiconductor integrated circuit according to the present invention includes noise sensing, a plurality of sense amplifiers and a discrete noise sensing amplifier selected by noise sensing, a parallel transmission circuit and a serial transmission circuit that transmit data transmitted from the two kinds of sense amplifiers, a determination circuit that determines whether the transmitted data is correct or not, and an address correction circuit that corrects the address based on the result of the determination, and is useful to improve the noise immunity characteristics of the semiconductor integrated circuit.
Number | Date | Country | Kind |
---|---|---|---|
2006-153502 | Jun 2006 | JP | national |