Abstract:
Disclosed herein is a peripheral LSI containing a number of microprocessor peripheral IPs. Even when the peripheral IPs are integrated, this peripheral LSI can prevent the package price from rising, the power consumption from increasing, and the software designers from being perplexed. A switch of the programmable peripheral LSI is provided for electrically disabling peripheral IPs. As a result, the peripheral IPs are disabled while they are not used.

Description:
FIELD OF THE INVENTION  
         [0001]    The present invention relates to an embedded microprocessor and its peripheral LSI that are incorporated in cellular phones, cameras, and other system devices. More particularly, the present invention relates to a hardware-programmable peripheral LSI carrying peripheral IPs for the interfaces of various peripheral devices, a one-chip microprocessor incorporating said LSI and CPU core, and a device for evaluating and verifying embedded systems with said LSI and microprocessor mounted on board.  
         BACKGROUND OF THE INVENTION  
         [0002]    A wide variety of interface protocols are used for data exchange among computers, peripheral devices such as hard disk drives and scanners, and cellular phone, digital camera, and video systems. A one-chip microprocessor, which is integrated with a CPU core and peripheral IPs conforming to various interface protocols, is developed to support a wide variety of interfaces. The term “peripheral IPs” used in the present application refer to circuit modules that provide an interface for connecting the CPU core to external devices.  
           [0003]    Within this type of microprocessor, all of its peripheral IPs are not used at all times. Since some peripheral IPs are not used, it is necessary to exercise control so as to enable/disable the peripheral IPs.  
           [0004]    One control method is to provide each peripheral IP with a control register so that the CPU core enters a command for each control register via a peripheral bus to specify whether the associated peripheral IP should be enabled or disabled (first conventional technology).  
           [0005]    The method stated in JP-A No. 289051/1999 is to use a programmable circuit, which is typically represented by an FPGA. A programmable circuit is integrated with an MPU and various interface circuits. This programmable circuit is used after LSI manufacture to determine the wiring connections between the MPU and various interface circuits. As a result, various interface sets can be supported by a single LSI (second conventional technology).  
           [0006]    As the number of interfaces to be supported by the CPU core, the number of peripheral IPs increases, causing the following problems:  
           [0007]    When the first conventional technology is used, the increase in the number of peripheral IPs may increase the number of output pins, thereby raising the package price. Further, even when some peripheral IP circuits are disabled by a command, they still run in a sleep mode, allowing unnecessary power consumption to continue. The term “sleep mode” refers to a mode of operation in which the command transmission from the CPU or a device outside the LSI is monitored. If there are many unnecessary peripheral IPs, the software designer may also be perplexed.  
           [0008]    When the second conventional technology is used, the MPU and interface circuits are directly connected by the programmable circuit. Therefore, the resulting configuration differs from the microprocessor&#39;s common configuration, which is established via a bus. That is why the configuration based on the second conventional technology is inapplicable to general-purpose processors. Further, the second conventional technology has not disclosed a configuration that would reduce the amount of unnecessary power consumption.  
           [0009]    In a volume production of an LSI, it is possible to develop an LSI that carries only necessary peripheral IPs. In limited production of diversified products, however, the development cost of such an LSI would turn out to be excessive. If a single kind of LSI can be commonly used for limited production of diversified products, it is possible to reduce the development cost and shorten the development period.  
         SUMMARY OF THE INVENTION  
         [0010]    The first object of the present invention is to offer a semiconductor integrated circuit device suitable for a general-purpose LSI that can be adopted for the limited production of diversified products.  
           [0011]    The second object of the present invention is to offer a method of efficiently developing a system or an LSI for use with a system, using an evaluation chip carrying peripheral IPs.  
           [0012]    To solve the above problems, a peripheral IP selection switch is furnished as a hardware-programmable means of disabling the peripheral bus connections for unnecessary peripheral IPs in compliance with a user request. The switch is necessary for excluding the influence of peripheral IP operations upon the other circuits and essential for disabling unnecessary IPs.  
           [0013]    The programmable peripheral LSI to be connected to the CPU core or the microprocessor integrated with the programmable peripheral LSI and CPU core is to be offered, with the switch mounted, as a volume-production LSI. In addition, a board carrying the CPU core, programmable peripheral LSI, and program storage non-volatile semiconductor memory is to be offered as an evaluation board.  
           [0014]    Furthermore, the power consumption can be reduced by shutting off the power supply to the peripheral IPs to be disabled.  
           [0015]    Other and further objects, features and advantages of the invention will appear more fully from the following description. 
       
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0016]    In the attached drawings:  
         [0017]    [0017]FIG. 1 shows the structure of the programmable peripheral LSI for a first exemplary embodiment of the present invention;  
         [0018]    [0018]FIG. 2 shows the structure of the switch;  
         [0019]    [0019]FIG. 3 is a block diagram of a chip set that uses the programmable peripheral LSI of the present invention;  
         [0020]    [0020]FIG. 4 is a block diagram of a microprocessor that is obtained by integrating the programmable peripheral LSI and CPU core into a single chip;  
         [0021]    [0021]FIG. 5 is a system/LSI design flowchart of a second exemplary embodiment of the present invention;  
         [0022]    [0022]FIG. 6 is a block diagram of an evaluation board that uses the programmable peripheral LSI of the present invention; and  
         [0023]    [0023]FIG. 7 shows how the evaluation board and system evaluation board of the present invention are used for evaluation/verification. 
     
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS  
       [0024]    The embodiments of the present invention are detailed below with reference to drawings.  
       First Exemplary Embodiment  
       [0025]    [0025]FIG. 1 is a block diagram of a programmable peripheral LSI that incorporates peripheral IPs for supporting various interface protocols and a switch for selecting such peripheral IPs.  
         [0026]    An LSI chip  2  is molded by an LSI package  1 . The LSI package  1  has pads  3  for external connection. The pads  3  are connected to terminals  7  on the LSI chip  2 . The LSI chip  2  has peripheral IPs  5 , which are connected to a peripheral bus  4  via a switch  6 .  
         [0027]    For example, a peripheral IP  5 - 1  is an IrDA interface circuit for IrDA wireless communication. Peripheral IPs  5 - 2  to  5 - 5  are interface circuits for IEEE1394, USB, SCI, and SIO, respectively, all of which provide wired communication. Although FIG. 1 shows one peripheral IP for each kind of peripheral IP, two or more peripheral IPs of one kind of peripheral IP can be incorporated.  
         [0028]    The switch  6  has a program input terminal  7 - 7 . The input terminal  7 - 7  is connected to a pad  3 - 5 . The program for specifying the effectivity of peripheral IPs is to be entered via the pad  3 - 5 .  
         [0029]    The peripheral bus  4  is connected to a bus terminal  7 - 6 . The bus terminal  7 - 6  is connected to a pad  3 - 4 . Data is exchanged with a peripheral bus (not shown in the figure) external to the LSI via the pad  3 - 4 . Being connected to a pad  3 - 6 , a power supply terminal  7 - 8  receives a power supply potential from the outside of the LSI via the pad  3 - 6 .  
         [0030]    In the example shown in FIG. 1, peripheral IPs  5 - 2  to  5 - 4  are enabled whereas peripheral IPs  5 - 1  and  5 - 5  are disabled. In this example, the peripheral IPs to be disabled are not connected to any pad. The use of this configuration makes it possible to use a package having a decreased number of pads and reduce the cost of the package.  
         [0031]    [0031]FIG. 2 is used to explain about the method of enabling and disabling the peripheral IPs of the present invention. The switch  6  has switching elements  23  and  24 . The switching element  23  is provided for the line connecting a RAM  21 , peripheral IP  5 , and peripheral bus  4 . The switching element  24  is provided for the line connecting the power supply terminal  7 - 8  and peripheral IP  5 .  
         [0032]    For example, the switching element  23 , which is a component of the switch  6 , can be implemented by an MOS transistor (the present invention uses the term “MOS transistor” for representing an insulated gate type field effect transistor) having a source-drain path in the connection path between a peripheral IP and peripheral bus  4 . Switching elements composing a switch  23 - 1  for peripheral IP  5 - 1  are controlled by a common, first control signal. Switching elements composing a switch  23 - 2  for peripheral IP  5 - 2  are controlled by a common, second control signal.  
         [0033]    Similarly, the switching elements composing a switch  24  can also be implemented by an MOS transistor. Switch  24 - 1  for peripheral IP  5 - 1  is controlled by said first control signal. Switch  24 - 2  for peripheral IP  5 - 2  is controlled by the second control signal.  
         [0034]    When a switching element is turned ON by a control signal, the function of data transfer between a peripheral IP and peripheral bus is enabled with a power supply potential supplied. Therefore, the peripheral IP is enabled. On the other hand, when a switching element is turned OFF by a control signal, the function of data transfer between a peripheral IP and peripheral bus is disabled with no power supply potential supplied. Therefore, the peripheral IP is disabled. The RAM  21  stores these control signals in such a manner that value of a stored control signal for turning ON a switching element is  1 , and that the value of a stored control signal for turning OFF a switching element is  0 .  
         [0035]    [0035]FIG. 3 shows a typical chip set that carries a programmable peripheral LSI of the present invention. LSIs are mounted on a board  31  and interconnected by a peripheral bus  4  and memory bus  37 . An external signal or power supply potential is entered into these LSIs via adaptors  38  and signal lines.  
         [0036]    A programmable peripheral LSI  33  correlates to the LSI shown in FIG. 1. It is connected to a CPU core LSI  34  via the on-board peripheral bus  4 . As indicated in the figure, the programmable peripheral LSI  33  of the present invention employs a bus and therefore complies with the general chip set configuration requirements.  
         [0037]    Further, a non-volatile semiconductor memory  36  is mounted on the board. This memory stores control data that is to be written into the RAM  21  (see FIG. 2).  
         [0038]    When the board is configured in the above-mentioned manner, a desired CPU core can be used at the time of system configuration to select a desired peripheral IP from those incorporated in the peripheral LSI  33  for use. Consequently, the flexibility of system design can be increased. Although FIG. 3 indicates that the chips are mounted on the board, they can be mounted in a single package to form a multi-chip package (MCP).  
         [0039]    For ease of understanding, FIG. 3 discloses major data signal lines only. It goes without saying that the other data signal lines, control signal lines, power supply lines, and other lines also exist. The same holds true for the other drawings as well.  
         [0040]    [0040]FIG. 4 shows a modified version of the example shown in FIG. 1. The example shown in FIG. 4 is a microprocessor  42 , which is formulated by integrating a peripheral LSI chip  2  and CPU core  41  into a single chip. The advantage to this embodiment is that it can increase the degree of integration by integrating a CPU and peripheral IPs into a single chip.  
       Second Exemplary Embodiment  
       [0041]    In the second exemplary embodiment, the LSI shown in FIG. 1 is used for system verification.  
         [0042]    [0042]FIG. 5 shows a system/LSI design flowchart. The term “system” refers to mobile information devices such as a cellular phone and PDA. Various LSIs, liquid-crystal panel, and other components are mounted on such a board. The left-hand half of FIG. 5 shows the flowchart for a system maker. The right-hand half of FIG. 5 shows the flowchart for a semiconductor maker.  
         [0043]    The system maker performs system design (step  501 ). This step is performed to design the entire system and determine the portions to be implemented by software and the portions to be implemented by hardware. The portions to be implemented by hardware are assembled into a so-called ASIC (Application Specific Integration Circuit). At this time, a semiconductor maker offers (step  510 ) in compliance with a system maker&#39;s request an evaluation board carrying a CPU core  34  and peripheral LSI  33 , which are described later with reference to FIG. 6. The system maker uses the evaluation board to conduct pre-design estimation (step  502 ) and decide on the CPU core to be offered as an ASIC.  
         [0044]    In pre-design estimation  502 , the evaluation board is used to check whether the specifications are met by the performance of software executed by the CPU core  34  and the capability of data transfer to a peripheral device via the CPU core and peripheral LSI  33 . In this sense, the pre-design estimation exerts a great influence upon the decision on the CPU core and the semiconductor maker who supplies the CPU core.  
         [0045]    When the CPU core is decided on, the system maker complies with the system design criteria to perform software design (step  503 ) and LSI design (step  504 ), which provides ASIC design, and verifies such designs (step  505 ). The semiconductor maker offers design support and design environment to the system maker (step  520 ).  
         [0046]    Step  505  contains step  506  for software verification, step  507  for ASIC verification, and step  508  for system level verification with an evaluation board supplied by the semiconductor maker. System level verification  508  is performed simultaneously with software verification  506  and LSI verification  507  when the latter two verification steps are performed to a certain extent. The reason is that a higher degree of verification efficiency can be achieved than by conducting system level verification after completion of software/LSI verification.  
         [0047]    When verification is completed in step  505 , the system maker delivers design data to the semiconductor maker. LSI layout data and logic gate level data are both acceptable as the design data. The choice between these two types of data is made in accordance with the system maker&#39;s LSI design capability and agreement with the semiconductor maker. The semiconductor maker creates a real chip in compliance with the design data supplied by the system maker (step  511 ). The system maker performs system verification  509  with the supplied real chip. Upon completion of system verification, the system maker instructs the semiconductor maker to start a volume production of the chip.  
         [0048]    The semiconductor maker does not have to complete all steps  510 - 511  by itself.. The semiconductor maker may cowork with its affiliated companies to perform these tasks.  
         [0049]    [0049]FIG. 6 shows the structure of the evaluation board. The evaluation board  61  carries the peripheral LSI  33 , PLD  63  (FPGA or other programmable circuit), CPU core  34 , and non-volatile semiconductor memory  36 . All of these components are sealed packages of semiconductor chips. The peripheral LSI  33  is structured as shown in FIG. 1 and FIG. 2. The CPU core  34  is connected to the peripheral LSI  33  via the peripheral bus  4 . Further, the CPU core  34 , PLD  63 , and system evaluation board interface  66  are interconnected via a memory bus  37 . The user&#39;s logic supplied by the system maker is programmed in the PLD  63 . The non-volatile semiconductor memory  36  stores the control data (stored in the RAM  21  shown in FIG. 2) for selecting a peripheral IP of the peripheral LSI  33  and the user&#39;s logic to be programmed in the PLD  63 , and is electrically reprogrammable.  
         [0050]    When the evaluation board is used, a desired peripheral IP of the peripheral LSI is selected, and the user&#39;s logic is programmed in the PLD  61  to conduct evaluation and verification. Eventually, an ASIC is created by integrating into a single chip the CPU core  34 , the user-selected peripheral IP of peripheral LSI  33 , and the user&#39;s logic programmed in the PLD  63 .  
         [0051]    [0051]FIG. 7 shows how the evaluation board is used. The evaluation board  61  is mounted on the user&#39;s system evaluation board  71 . A power supply  72  supplies power to the evaluation board  61  and system evaluation board  71 . Further, system level evaluation and verification are conducted by operating software  74  with the evaluation board  61  connected to a PC  73  on which an emulator/debugger runs. In some conventional evaluation/verification equipment containing a number of peripheral IPs, each peripheral IP was implemented by an LSI. In such an instance, however, the overall evaluation/verification equipment was housed within a casing and could not be mounted on the system evaluation board  71 . Even when the programmable peripheral LSI  33  contains a number of unnecessary peripheral IPs, the present invention makes it possible to offer a compact board without having to develop dedicated evaluation/verification equipment.  
         [0052]    On the basis of a peripheral LSI containing a number of peripheral IPs, it is possible to offer at a minimum development cost a peripheral LSI that would be equal in the number of pins and power consumption to an LSI incorporating only peripheral IPs necessary for the user.  
         [0053]    Further, when said LSI is-used as ASIC evaluation/verification equipment, it is possible to cut the development cost for such equipment.  
         [0054]    The invention may be embodied in other specific forms without departing from the spirit or essential characteristics thereof. The present embodiment is therefore to be considered in all respects as illustrative and not restrictive, the scope of the invention being indicated by the appended claims rather than by the foregoing description and all changes which come within the meaning and range of equivalency of the claims are therefore intended to be embraced therein.