JP5401700B2 - Microcomputer - Google Patents

Microcomputer Download PDF

Info

Publication number
JP5401700B2
JP5401700B2 JP2009133213A JP2009133213A JP5401700B2 JP 5401700 B2 JP5401700 B2 JP 5401700B2 JP 2009133213 A JP2009133213 A JP 2009133213A JP 2009133213 A JP2009133213 A JP 2009133213A JP 5401700 B2 JP5401700 B2 JP 5401700B2
Authority
JP
Japan
Prior art keywords
bus
control unit
memory
internal
bus control
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2009133213A
Other languages
Japanese (ja)
Other versions
JP2010282284A5 (en
JP2010282284A (en
Inventor
浩行 河合
直幹 三ッ石
淳子 小原
Original Assignee
ルネサスエレクトロニクス株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ルネサスエレクトロニクス株式会社 filed Critical ルネサスエレクトロニクス株式会社
Priority to JP2009133213A priority Critical patent/JP5401700B2/en
Publication of JP2010282284A publication Critical patent/JP2010282284A/en
Publication of JP2010282284A5 publication Critical patent/JP2010282284A5/ja
Application granted granted Critical
Publication of JP5401700B2 publication Critical patent/JP5401700B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、半導体集積回路であるマイクロコンピュータに係り、特にバス制御に関するものである。   The present invention relates to a microcomputer which is a semiconductor integrated circuit, and more particularly to bus control.

半導体集積回路であるマイクロコンピュータは、機器制御用途に広く用いられる。また、マイクロコンピュータに装着されるメモリは、よりメモリ容量の大きいものやメモリアクセスが高速にできるものなど様々な種類がある。例えば、メモリの種類として、SRAM(Static Random Access Memory)や、フラッシュメモリ、DRAM(Dynamic Random Access Memory)等が挙げられる。   A microcomputer which is a semiconductor integrated circuit is widely used for device control. In addition, there are various types of memories mounted on the microcomputer, such as those having a larger memory capacity and those capable of high-speed memory access. For example, SRAM (Static Random Access Memory), flash memory, DRAM (Dynamic Random Access Memory), etc. are mentioned as a kind of memory.

これらがバスに接続された場合におけるバス制御には、各メモリにおける制御信号、アドレス、あるいはアクセス時間等が異なるために、接続されるメモリに応じたインタフェース仕様が求められる。   When these are connected to the bus, control specifications, addresses, access times, and the like in each memory are different, so interface specifications corresponding to the connected memory are required.

特に、新たな種類のメモリが提供された場合には、新たなインタフェース仕様が求められることになる。   In particular, when a new type of memory is provided, a new interface specification is required.

これに対応するために、マイクロコンピュータのアドレス空間を複数のエリアに分割し、エリア毎にインタフェースを選択可能とすることが可能である。   In order to cope with this, it is possible to divide the address space of the microcomputer into a plurality of areas and select an interface for each area.

具体的には、バス制御として複数のインタフェース仕様を実装する。これは、ステートマシンなどとして実装される。   Specifically, multiple interface specifications are implemented as bus control. This is implemented as a state machine or the like.

そして、バスマスタとなる例えばCPUから出力されるアドレスと、ユーザの設定とによってどのステート遷移をとるかを選択することになる。   Then, which state transition is to be taken is selected depending on, for example, an address output from the CPU serving as the bus master and a user setting.

実装するインタフェースが増加すると、ステートマシン等の論理が複雑になり、開発期間が長くなるという問題がある。   When the number of interfaces to be mounted increases, there is a problem that logic such as a state machine becomes complicated and a development period becomes long.

また、一般的に、n個のインタフェースを別々に開発するよりも、n個のインタフェースを全て実装した1つの論理を開発する方が、非常に複雑になり易い。   In general, it is much more complicated to develop a single logic in which all n interfaces are mounted than to develop n interfaces separately.

また、アドレス空間の各エリアには、通常1種類のインタフェースを設定するため、複数のインタフェース仕様を実装していても、実際には使われないインタフェースも考えられるため無駄があるという問題がある。   In addition, since one type of interface is normally set in each area of the address space, there is a problem that even if a plurality of interface specifications are implemented, an interface that is not actually used can be considered, which is wasteful.

また、1つのインタフェースに対しても、動作周波数に応じて、最適な実装形態が異なる場合がある。例えば、動作周波数が高ければ、レイテンシよりもFF(Flip Flop)間の論理段数を小さくすることが必要になる。これを動作周波数が低い領域で実行すると、レイテンシが増加する影響が相対的に大きくなる。   Also, the optimal mounting form may differ for one interface depending on the operating frequency. For example, if the operating frequency is high, the number of logical stages between FFs (Flip Flop) needs to be smaller than the latency. If this is performed in a region where the operating frequency is low, the effect of increasing the latency becomes relatively large.

これらに鑑みて、例えば、プログラム可能なFPGA(Field Programmable Gate Array)あるいは、PLD(Programmable Logic Array)を用いて新たなインタフェース仕様に対応することも考えられる。   In view of these, for example, it is conceivable to support a new interface specification using a programmable FPGA (Field Programmable Gate Array) or PLD (Programmable Logic Array).

例えば、特開2004−56716号公報においては、FPGAあるいは、PLDがチップに組み込まれた構成が開示されており、内蔵されたフラッシュメモリからコンフィグレーションデータを読み出して、FPGAあるいはPLDに論理回路を構築する方式が開示されている。   For example, Japanese Patent Laid-Open No. 2004-56716 discloses a configuration in which an FPGA or a PLD is incorporated in a chip, reads configuration data from the built-in flash memory, and constructs a logic circuit in the FPGA or PLD. The method to do is disclosed.

しかしながら、特開2004−56716号公報においては、フラッシュメモリに格納されたコンフィグレーションデータをコンフィグ回路が読み出してプログラマブルロジック回路に転送することにより、論理回路を構築する方式が示されているが、外付けのメモリに対して、新たなインタフェース仕様を提供する方式については開示されていない。   However, Japanese Patent Application Laid-Open No. 2004-56716 discloses a method of constructing a logic circuit by reading configuration data stored in a flash memory and transferring the configuration data to a programmable logic circuit. A method for providing a new interface specification for the attached memory is not disclosed.

また、特開平6−75849号公報においては、外付けのメモリの種類を指示する判断信号に応じて、内部のプログラマブル・ロジックアレイに対応するメモリの制御回路を実装する論理を決めることが開示されている。   Japanese Patent Laid-Open No. 6-75849 discloses that a logic for mounting a memory control circuit corresponding to an internal programmable logic array is determined in accordance with a determination signal instructing the type of external memory. ing.

特開2004−56716号公報JP 2004-56716 A 特開平6−75849号公報JP-A-6-75849

しかしながら、特開平6−75849号公報においては、パワーオン後、すなわち、プログラマブル・ロジックアレイが初期化された状態のときに、MPU(Micro Processing Unit)により特定端子から入力されたコンフィグレーションデータをバスを介して転送するとの記載があるが、内部のプログラマブル・ロジックアレイを構築するデータが格納されているプログラムROMにアクセスするための手段が開示されていない。   However, in Japanese Patent Laid-Open No. 6-75849, after power-on, that is, when the programmable logic array is initialized, configuration data input from a specific terminal by an MPU (Micro Processing Unit) is used as a bus. However, there is no disclosure of means for accessing a program ROM in which data for constructing an internal programmable logic array is stored.

すなわち、最初の初期化の状態において、プログラマブル・ロジックアレイが構成されていないためプログラムROMを制御する制御回路が実際には別に必要となると考えられるが、どのような構成とするのが適切であるかについては何ら考慮されていない。   That is, in the initial initialization state, since a programmable logic array is not configured, it is considered that a separate control circuit for controlling the program ROM is actually required, but any configuration is appropriate. There are no considerations.

したがって、上記の文献には、新たなインタフェース仕様に対応することが可能なマイクロコンピュータについては開示されていない。   Therefore, the above document does not disclose a microcomputer that can cope with a new interface specification.

本発明は、上記のような問題を解決するためになされたものであって、新たなインタフェース仕様に対応することが可能なマイクロコンピュータを提供することを目的とする。   The present invention has been made to solve the above-described problems, and an object of the present invention is to provide a microcomputer that can cope with a new interface specification.

本発明の一実施例に従うマイクロコンピュータは、制御部と、構築データを記憶する内部メモリと、内部メモリと接続された内部バスと、バスコントローラと、外部バスインタフェースとを備える。バスコントローラは、内部バスを介して内部メモリをアクセスするバス制御部と、プログラム可能な論理部とを含む。制御部は、内部メモリに記憶された構築データを読み出して、構築データに基づいて、プログラム可能な論理部上に、外部バスインタフェースを介して接続される外部メモリをアクセスするためのバス制御機能を構築する。   A microcomputer according to an embodiment of the present invention includes a control unit, an internal memory for storing construction data, an internal bus connected to the internal memory, a bus controller, and an external bus interface. The bus controller includes a bus control unit that accesses an internal memory via an internal bus, and a programmable logic unit. The control unit reads the construction data stored in the internal memory, and has a bus control function for accessing the external memory connected via the external bus interface on the programmable logic unit based on the construction data. To construct.

本発明の一実施例によれば、マイクロコンピュータは、内部メモリをアクセスするバス制御部により、構築データを読み出して、プログラム可能な論理部上に外部メモリをアクセスするためのバス制御機能を構築するため新たなインタフェース仕様に対応することができる。   According to one embodiment of the present invention, the microcomputer reads the construction data by the bus control unit that accesses the internal memory, and constructs a bus control function for accessing the external memory on the programmable logic unit. Therefore, it can cope with a new interface specification.

本発明の実施の形態1に従うマイクロコンピュータ1等の概略構成について説明する図である。It is a figure explaining schematic structure of the microcomputer 1 grade | etc., According to Embodiment 1 of this invention. マイクロコンピュータ1のアドレス空間について説明する図である。It is a figure explaining the address space of the microcomputer. PLD(Programmable Logic Device)100の構成について説明する図である。1 is a diagram illustrating a configuration of a PLD (Programmable Logic Device) 100. FIG. 図3のLUTアレイ120のアーキテクチャの具体例について説明する図である。FIG. 4 is a diagram illustrating a specific example of the architecture of the LUT array 120 in FIG. 3. LUT論理ユニット121について説明する図である。FIG. 3 is a diagram for explaining an LUT logical unit 121. 外部バスインタフェースのSRAMの制御タイミングについて説明する図である。It is a figure explaining the control timing of SRAM of an external bus interface. 外部バスインタフェースのSDRAMの制御タイミングについて説明する図である。It is a figure explaining the control timing of SDRAM of an external bus interface. SDRAMの状態遷移図について説明する図である。It is a figure explaining the state transition diagram of SDRAM. 本発明の実施の形態に従う電源投入時のバスコントローラ30の設定について説明する図である。It is a figure explaining the setting of the bus controller 30 at the time of power activation according to embodiment of this invention. 本発明の実施の形態2に従うマイクロコンピュータ1#等の概略構成について説明する図である。It is a figure explaining schematic structure of microcomputer 1 # etc. according to Embodiment 2 of this invention. 可変バス制御部の切り替え処理について説明する図である。It is a figure explaining the switching process of a variable bus control part. 本発明の実施の形態3に従うマイクロコンピュータ1aの概略構成について説明する図である。It is a figure explaining schematic structure of the microcomputer 1a according to Embodiment 3 of this invention. 本発明の実施の形態4に従うマイクロコンピュータ2の概略構成について説明する図である。It is a figure explaining schematic structure of the microcomputer 2 according to Embodiment 4 of this invention. 本発明の実施の形態4に従うバスコントローラの処理について説明する図である。It is a figure explaining the process of the bus controller according to Embodiment 4 of this invention. 本発明の実施の形態4に従う別のマイクロコンピュータ2#の概略構成について説明する図である。It is a figure explaining schematic structure of another microcomputer 2 # according to Embodiment 4 of this invention. 専用RAMを可変バス制御情報用の領域と、コンフィグレーションメモリ用の領域とに分けて用いる場合について説明する図である。It is a figure explaining the case where dedicated RAM is divided and used for the area | region for variable bus control information, and the area | region for configuration memory. 本発明の実施の形態5に従うマイクロコンピュータ3の概略構成について説明する図である。It is a figure explaining schematic structure of the microcomputer 3 according to Embodiment 5 of this invention.

以下において、本発明の実施の形態について図面を参照しながら詳細に説明する。なお図中における同一符号は、同一または相当部分を示すものとする。   Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. In addition, the same code | symbol in a figure shall show the same or an equivalent part.

(実施の形態1)
図1を用いて、本発明の実施の形態1に従うマイクロコンピュータ1等の概略構成について説明する。
(Embodiment 1)
A schematic configuration of microcomputer 1 and the like according to the first embodiment of the present invention will be described with reference to FIG.

図1を参照して、本発明の実施の形態に従うマイクロコンピュータ1は、CPU(Central Processing Unit)10と、内部CPUバス12と、内部周辺バス14と、内部メモリバス16と、DMAC(Direct Memory Access Controller)15と、周辺機能20と、バスコントローラ30と、ROM(Read-Only Memory)50と、RAM(Random Access Memory)55と、外部バスインタフェース60とを含む。   Referring to FIG. 1, a microcomputer 1 according to an embodiment of the present invention includes a CPU (Central Processing Unit) 10, an internal CPU bus 12, an internal peripheral bus 14, an internal memory bus 16, and a DMAC (Direct Memory). An access controller 15, a peripheral function 20, a bus controller 30, a ROM (Read-Only Memory) 50, a RAM (Random Access Memory) 55, and an external bus interface 60 are included.

また、CPU10は、内部CPUバス12を介してDMAC15およびバスコントローラ30と接続され、マイクロコンピュータ1全体を管理する。   The CPU 10 is connected to the DMAC 15 and the bus controller 30 via the internal CPU bus 12 and manages the entire microcomputer 1.

DMAC15は、CPU10からのDMA転送要求に応じてマイクロコンピュータ1内のDMA転送を制御する。   The DMAC 15 controls DMA transfer in the microcomputer 1 in response to a DMA transfer request from the CPU 10.

バスコントローラ30は、接続されている内部CPUバス12、内部周辺バス14、内部メモリバス16および外部バスインタフェース60を介する外部バス62を管理する。各バスは、アドレスバス線、データバス線、データ制御信号線等の少なくとも1つを含む。   The bus controller 30 manages the external bus 62 via the connected internal CPU bus 12, internal peripheral bus 14, internal memory bus 16, and external bus interface 60. Each bus includes at least one of an address bus line, a data bus line, a data control signal line, and the like.

ROM50は、ブートROMであり起動用のプログラム等が格納されている。また、RAM55は、CPU10のワーク領域として用いられる。   The ROM 50 is a boot ROM and stores a startup program and the like. The RAM 55 is used as a work area for the CPU 10.

外部バスインタフェース60は、外部バス62と接続され、バスコントローラ30と外部バス62と接続されたメモリとの間のデータの授受を実行する。   The external bus interface 60 is connected to the external bus 62 and executes data exchange between the bus controller 30 and a memory connected to the external bus 62.

バスコントローラ30は、バス管理部40と、バス制御部31とを含む。
バス管理部40は、内部CPUバスI/F42と、内部周辺バスI/F44と、調停制御部46とを含む。
The bus controller 30 includes a bus management unit 40 and a bus control unit 31.
The bus management unit 40 includes an internal CPU bus I / F 42, an internal peripheral bus I / F 44, and an arbitration control unit 46.

内部CPUバスI/F42は、内部CPUバス12と接続され、内部CPUバス12を介してCPU10との間のデータの授受を実行する。   The internal CPU bus I / F 42 is connected to the internal CPU bus 12 and executes data exchange with the CPU 10 via the internal CPU bus 12.

内部周辺バスI/F44は、内部周辺バス14と接続され、内部周辺バス14を介して周辺機能20あるいはDMAC15との間のデータの授受を実行する。   The internal peripheral bus I / F 44 is connected to the internal peripheral bus 14 and exchanges data with the peripheral function 20 or the DMAC 15 via the internal peripheral bus 14.

調停制御部46は、バスの使用状態を監視し、内部CPUバス12、内部周辺バス14、内部メモリバス16、外部バス62に関して、どのデバイスにバスの使用権を与えるのかを決定し、バス使用権の調停を行っている。   The arbitration control unit 46 monitors the bus use state, determines which device is given the right to use the bus with respect to the internal CPU bus 12, the internal peripheral bus 14, the internal memory bus 16, and the external bus 62, and uses the bus. We are mediating rights.

バス制御部31は、アドレスデコーダ32と、固定バス制御部34と、可変バス制御部35と、ロック機構38と、マルチプレクサ36とを含む。   The bus control unit 31 includes an address decoder 32, a fixed bus control unit 34, a variable bus control unit 35, a lock mechanism 38, and a multiplexer 36.

アドレスデコーダ32は、例えばCPU10あるいは、DMAC15からのアドレス指示に対してデコード処理して、後述する固定バス制御部34あるいは可変バス制御部35を起動する。   The address decoder 32 decodes, for example, an address instruction from the CPU 10 or the DMAC 15 and activates a fixed bus control unit 34 or a variable bus control unit 35 described later.

固定バス制御部34は、マルチプレクサ36を介して内部メモリバス16と接続されたROM50あるいは、RAM55を制御する。   The fixed bus control unit 34 controls the ROM 50 or the RAM 55 connected to the internal memory bus 16 via the multiplexer 36.

一方、可変バス制御部35は、マルチプレクサ36および外部バスインタフェース60を介して、外部バス62と接続されたFLASH/ROM70、SRAM(Static Random Access Memory)80、あるいはSDRAM(Synchronous DRAM)90の少なくとも1つを制御する。   On the other hand, the variable bus control unit 35 includes at least one of a FLASH / ROM 70, an SRAM (Static Random Access Memory) 80, or an SDRAM (Synchronous DRAM) 90 connected to the external bus 62 via the multiplexer 36 and the external bus interface 60. Control one.

マルチプレクサ36は、固定バス制御部34と内部メモリバス16との接続あるいは、可変バス制御部35と外部バスインタフェース60との接続を切り替える。マルチプレクサ36は、アドレスデコーダ32のデコード処理した処理結果に基づいて上記接続を切り替える。   The multiplexer 36 switches the connection between the fixed bus control unit 34 and the internal memory bus 16 or the connection between the variable bus control unit 35 and the external bus interface 60. The multiplexer 36 switches the connection based on the processing result obtained by the decoding process by the address decoder 32.

本実施の形態においては、可変バス制御部35は、プログラム可能なPLD(Programmable Logic Device)で構成されているものとする。なお、本例においては、PLDを用いた構成について説明するが、PLDに限られず、FPGA(Field Programmable Gate Array)等を用いることも可能である。   In the present embodiment, the variable bus control unit 35 is assumed to be configured by a programmable PLD (Programmable Logic Device). In this example, a configuration using a PLD is described. However, the configuration is not limited to the PLD, and an FPGA (Field Programmable Gate Array) or the like can also be used.

図2を用いて、マイクロコンピュータ1のアドレス空間について説明する。
図2(A)を参照して、ここでは、4GBのアドレス空間(H’00000000〜H’FFFFFFFF)が設けられている場合が示されている。このアドレス空間は、バスコントローラにより制御されている。
The address space of the microcomputer 1 will be described with reference to FIG.
Referring to FIG. 2A, here, a case where a 4 GB address space (H'00000000 to H'FFFFFFFF) is provided is shown. This address space is controlled by the bus controller.

エリア0の一部の領域には、内部ROMが割り当てられ、エリア1が可変バス制御用に割り当てられている。   An internal ROM is allocated to a partial area of area 0, and area 1 is allocated for variable bus control.

また、エリア2の一部の領域には、内部RAMおよび内部I/Oレジスタが割り当てられている。内部ROM、内部RAMおよび内部I/Oレジスタのアドレスは、予め定められているものとする。   In addition, an internal RAM and an internal I / O register are allocated to a part of the area 2. Assume that the addresses of the internal ROM, internal RAM, and internal I / O register are predetermined.

図2(B)を参照して、ここでは、上記のアドレス空間のエリア1をさらに2つに分割した場合が示されている。具体的には、エリア1a,1bとに分けられた場合が示されている。例えば、エリア1a,1bに対応して、外部バスと接続される2つのメモリデバイスをそれぞれ割り当てるようにすることが可能である。   Referring to FIG. 2B, here, a case where the area 1 of the address space is further divided into two is shown. Specifically, the case where it is divided into areas 1a and 1b is shown. For example, two memory devices connected to the external bus can be assigned to areas 1a and 1b, respectively.

図3を用いて、PLD(Programmable Logic Device)100の構成について説明する。   The configuration of a PLD (Programmable Logic Device) 100 will be described with reference to FIG.

図3を参照して、PLD100は、LUT(Look Up Table)アレイ120およびFF(Flip Flop)クラスタ130からなるブロック110をインターコネクト部140を介して互いに接続した構成からなる。   Referring to FIG. 3, PLD 100 has a configuration in which blocks 110 including a LUT (Look Up Table) array 120 and an FF (Flip Flop) cluster 130 are connected to each other via an interconnect unit 140.

インターコネクト部140は、PLD100外部とブロック110との間およびブロック110同士の間に介在し、これらの間で信号を入出力させるものである。   The interconnect unit 140 is interposed between the outside of the PLD 100 and the block 110 and between the blocks 110, and inputs and outputs signals between them.

図4を用いて、図3のLUTアレイ120のアーキテクチャの具体例について説明する。   A specific example of the architecture of the LUT array 120 in FIG. 3 will be described with reference to FIG.

図4を参照して、LUTアレイ120は複数個のLUT論理ユニット121を2次元アレイとして行列状に高密度に集積したものである。   Referring to FIG. 4, LUT array 120 is a plurality of LUT logical units 121 integrated in a matrix at a high density as a two-dimensional array.

図3において、FFクラスタ130は、複数個のFF論理ユニットを1次元アレイとして列状に配置したものである。   In FIG. 3, the FF cluster 130 has a plurality of FF logic units arranged in a column as a one-dimensional array.

図5を用いて、LUT論理ユニット121について説明する。
図5を参照して、LUT論理ユニット121は、4bitのコンフィグレーションメモリと4to1マルチプレクサとからなる2入力1出力のLUTとなっている。
The LUT logical unit 121 will be described with reference to FIG.
Referring to FIG. 5, the LUT logic unit 121 is a 2-input 1-output LUT composed of a 4-bit configuration memory and a 4to1 multiplexer.

LUTは、この4bitのコンフィグレーションメモリの値を設定することにより、論理関数を設定できる。   The LUT can set a logical function by setting the value of the 4-bit configuration memory.

そして、4bitのコンフィグレーションメモリ(MEM1〜MEM4)の設定値に応じた論理関数に基づいて、入力値A,Bに対する出力値Yが決定される。   The output value Y for the input values A and B is determined based on a logical function corresponding to the set value of the 4-bit configuration memory (MEM1 to MEM4).

LUTアレイ120では、LUT論理ユニット121間には配線スイッチ(図示しない)が配置され、LUT論理ユニット121同士を接続している。LUT論理ユニット121間の接続は、この配線スイッチで切り替えられる。この配線スイッチとしては、例えばPMOSやNMOS等を用いて構成し、ゲート電圧を制御することによりLUT論理ユニット121間を導通または遮断すればよい。   In the LUT array 120, a wiring switch (not shown) is arranged between the LUT logical units 121 and connects the LUT logical units 121 to each other. The connection between the LUT logical units 121 is switched by this wiring switch. As this wiring switch, for example, a PMOS, an NMOS, or the like is used, and the LUT logic unit 121 may be electrically connected or disconnected by controlling the gate voltage.

このように、LUT論理ユニット121および配線スイッチは、内蔵するコンフィグレーションメモリを変更することにより論理や接続を変更できるので、LSI製造後に回路の再構成が可能となる。   As described above, the LUT logic unit 121 and the wiring switch can change the logic and connection by changing the built-in configuration memory. Therefore, the circuit can be reconfigured after the LSI is manufactured.

そして、本実施の形態においては、上記PLDのコンフィグレーションメモリに後述する可変バス制御論理情報を格納(マッピング)することにより可変バス制御部を構築するものとする。   In this embodiment, the variable bus control unit is constructed by storing (mapping) variable bus control logic information described later in the configuration memory of the PLD.

次に、外部バスと接続されるメモリの制御タイミングについて説明する。
図6を用いて、外部バスインタフェースのSRAMの制御タイミングについて説明する。
Next, the control timing of the memory connected to the external bus will be described.
The control timing of the external bus interface SRAM will be described with reference to FIG.

図6(A)を参照して、ここでは、外部メモリがSRAMの場合のリードの場合が示されている。   Referring to FIG. 6A, here, a case of reading when the external memory is an SRAM is shown.

ここでは、バスクロックSDφが示されており、2周期で1バスサイクルであるものとする。   Here, the bus clock SDφ is shown, and it is assumed that one cycle is two cycles.

具体的には、外部バス62に接続された外部メモリに対する読出アドレスAmが制御信号と合わせてバスコントローラ30に対して入力される。アドレスAmは、アドレスデコーダ32においてデコード処理される。そして、デコード結果に基づいて、対応する外部メモリに割り当てられたエリア、例えばエリア1に対応したチップセレクト信号CS_n、リードイネーブル信号RD_nがアサートされる。SRAMからの読出データD15−D8/D7−D0は、T2サイクルに有効となる。   Specifically, the read address Am for the external memory connected to the external bus 62 is input to the bus controller 30 together with the control signal. The address Am is decoded by the address decoder 32. Then, based on the decoding result, an area assigned to the corresponding external memory, for example, a chip select signal CS_n and a read enable signal RD_n corresponding to area 1 are asserted. Read data D15-D8 / D7-D0 from the SRAM is valid in the T2 cycle.

図6(B)を参照して、ここでは、外部メモリがSRAMの場合のライトの場合が示されている。   Referring to FIG. 6B, here, a case of writing when the external memory is an SRAM is shown.

ここでは、リードの場合と同様に、外部バス62に接続された外部メモリに対する書込アドレスAmが制御信号と合わせてバスコントローラ30に対して入力される。アドレスAmは、アドレスデコーダ32においてデコード処理される。そして、デコード結果に基づいて、対応する外部メモリに割り当てられたエリア、例えばエリア1に対応したチップセレクト信号CS_n、ライトイネーブル信号WR_nがアサートされる。SRAMへの書込データD15−D8/D7−D0は、T1サイクルの立ち下がりから有効となる。   Here, as in the case of reading, the write address Am for the external memory connected to the external bus 62 is input to the bus controller 30 together with the control signal. The address Am is decoded by the address decoder 32. Based on the decoding result, the chip select signal CS_n and the write enable signal WR_n corresponding to the area assigned to the corresponding external memory, for example, the area 1 are asserted. The write data D15-D8 / D7-D0 to the SRAM become valid from the fall of the T1 cycle.

図7を用いて、外部バスインタフェースのSDRAMの制御タイミングについて説明する。   The control timing of the SDRAM of the external bus interface will be described with reference to FIG.

図7(A)を参照して、ここでは、外部メモリがSDRAMの場合のリードの場合が示されている。   Referring to FIG. 7A, here, a case of reading when the external memory is an SDRAM is shown.

ここでは、バスクロックSDφが示されており、SDRAMは、バスクロックに同期して動作する。   Here, a bus clock SDφ is shown, and the SDRAM operates in synchronization with the bus clock.

具体的には、Td1サイクルにおいて、外部バス62に接続された外部メモリに対するロウアドレスが制御信号と合わせてバスコントローラ30に対して入力される。具体的には、ロウアドレスストローブ信号RAS_nがアサートされ、その間にロウアドレスが取り込まれる。また、その際に、リード/ライト指定信号WE_nがアサートされる。また、コラムアドレスストローブ信号CAS_nは、ネゲートされている。   Specifically, in the Td1 cycle, the row address for the external memory connected to the external bus 62 is input to the bus controller 30 together with the control signal. Specifically, the row address strobe signal RAS_n is asserted, and the row address is captured during that time. At this time, the read / write designation signal WE_n is asserted. The column address strobe signal CAS_n is negated.

このRAS、CAS、WEの組合せに基づいてコマンドが発行され、全バンクプリチャージを実行するPALLコマンドが発行される。   A command is issued based on the combination of RAS, CAS, and WE, and a PALL command for executing all bank precharges is issued.

そして、次に、Td2サイクルにおいて、ロウアドレスストローブ信号RAS_nがアサートされ、また、コラムアドレスストローブ信号CAS_nおよびリード/ライト指定信号WE_nは、ネゲートである場合に、アクティブコマンドACTVが発行される。   Then, in the Td2 cycle, the row address strobe signal RAS_n is asserted, and the active command ACTV is issued when the column address strobe signal CAS_n and the read / write designation signal WE_n are negated.

そして、次に、Td3サイクルは、NOP状態である。
次に、Td4サイクルにおいて、コラムアドレスストローブ信号CAS_nがアサートされる。その間に、コラムアドレスが取り込まれる。また、リード/ライト指定信号WE_nがアサートされる。
Next, the Td3 cycle is in the NOP state.
Next, in the Td4 cycle, the column address strobe signal CAS_n is asserted. Meanwhile, the column address is fetched. Further, the read / write designation signal WE_n is asserted.

このRAS、CAS、WEの組合せに基づいて、ライトコマンドWRITEが発行される。   A write command WRITE is issued based on the combination of RAS, CAS, and WE.

そして、SDRAMへの書込データD15−D8/D7−D0は、Td4サイクルに有効となる。   Then, the write data D15-D8 / D7-D0 to the SDRAM becomes valid in the Td4 cycle.

図8を用いて、SDRAMの状態遷移図について説明する。
図8を参照して、リフレッシュ状態ST2、あるいは、パワーオン状態ST4となった後、全バンクプリチャージコマンドが発行される(状態ST6)。これにより、例えば、バンクA,Bの2つのバンクがSDRAMに設けられている場合に、両方のバンクがプリチャージされる。
A state transition diagram of the SDRAM will be described with reference to FIG.
Referring to FIG. 8, after entering refresh state ST2 or power-on state ST4, an all-bank precharge command is issued (state ST6). Thereby, for example, when two banks A and B are provided in the SDRAM, both banks are precharged.

そして、次に、バンクAのアクティブコマンドが発行される(状態ST8)。
そして、バンクAのリード/ライトコマンドが発行される(状態ST10)。これにより、バンクAのリードあるいは、ライト動作が実行される。
Then, an active command for bank A is issued (state ST8).
Then, a read / write command for bank A is issued (state ST10). As a result, a read or write operation of bank A is executed.

そして、次に、ページ変更の処理が求められた場合には、バンクAのプリチャージコマンドが発行される(状態ST12)。   Next, when page change processing is requested, a precharge command for bank A is issued (state ST12).

そして、バンクAのアクティブコマンドが発行される(状態ST14)。そして、再び、状態ST10に戻る。   Then, an active command for bank A is issued (state ST14). And it returns to state ST10 again.

一方、状態ST10において、バンク変更の処理が求められた場合には、次に、バンクBのアクティブコマンドが発行される(状態ST16)。   On the other hand, if the bank change process is requested in the state ST10, then the active command for the bank B is issued (state ST16).

そして、バンクBのリード/ライトコマンドが発行される(状態ST18)。これにより、バンクBのリードあるいは、ライト動作が実行される。   Then, a read / write command for bank B is issued (state ST18). Thereby, the read or write operation of the bank B is executed.

そして、次に、ページ変更の処理が求められた場合には、バンクBのプリチャージコマンドが発行する(状態ST20)。   Next, when page change processing is requested, a precharge command for bank B is issued (state ST20).

そして、再び、状態ST16に戻る。
一方、状態ST18において、バンク変更の処理が求められた場合には、状態ST12に進む。以降の処理については、同様である。
And it returns to state ST16 again.
On the other hand, when the bank change process is requested in the state ST18, the process proceeds to the state ST12. The subsequent processing is the same.

したがって、図6〜図8に示されるようにSDRAMに対するアクセスは、SRAMに対するアクセスと異なり、コマンドを用いたアクセスシーケンスが必要となる。   Therefore, as shown in FIGS. 6 to 8, access to the SDRAM requires an access sequence using a command, unlike access to the SRAM.

本発明の実施の形態1においては、ROM50あるいは、RAM55に用いられるSRAMのような簡単なアクセスシーケンスについては、固定バス制御部34でアクセスするものとする。   In the first embodiment of the present invention, a simple access sequence such as the SRAM used in the ROM 50 or the RAM 55 is accessed by the fixed bus control unit 34.

一方、SDRAMのような複雑なプロトコル(アクセスシーケンス)が必要な外部メモリについては、可変バス制御部35でアクセスするものとする。   On the other hand, an external memory that requires a complicated protocol (access sequence) such as SDRAM is accessed by the variable bus control unit 35.

図9を用いて、本発明の実施の形態に従う電源投入時のバスコントローラ30の設定について説明する。   Using FIG. 9, setting of bus controller 30 at the time of power-on according to the embodiment of the present invention will be described.

図9を参照して、まず、パワーオンリセットが有るかどうかを判断する(ステップS2)。具体的には、電源投入に従って、図示しないパワーオンリセット回路は、パワーオンリセット信号を出力する。CPU10は、当該信号を検知したかどうかを判断し、当該信号を検知した場合には、電源投入があったものと判断する。   Referring to FIG. 9, it is first determined whether or not there is a power-on reset (step S2). Specifically, as power is turned on, a power-on reset circuit (not shown) outputs a power-on reset signal. The CPU 10 determines whether or not the signal is detected, and determines that the power is turned on when the signal is detected.

そして、次に、CPU10は、リセット処理を実行する(ステップS4)。具体的には、初期値をリセットするとともに、バスの接続状況の確認等の初期化処理を実行する。   Next, the CPU 10 executes a reset process (step S4). Specifically, the initial value is reset and initialization processing such as confirmation of the bus connection status is executed.

そして、次に、CPU10は、ブート処理を実行する(ステップS6)。具体的には、CPU10は、内部ROMに格納されているプログラムのデータ読出を実行する。具体的には、CPU10は、内部CPUバス12を介して、バスコントローラ30に対して図2で説明した予め設けられている内部ROMが格納されているエリア0のアドレスを指定する。バスコントローラ30のアドレスデコーダ32は、内部CPUバスI/F42を介して入力されるアドレスをデコード処理する。そして、エリア0のアドレスであると判断した場合には、固定バス制御部34を起動する。そして、固定バス制御部34は、マルチプレクサ36、内部メモリバス16を介してROM50にアクセスする。   Next, the CPU 10 executes a boot process (step S6). Specifically, the CPU 10 executes data reading of a program stored in the internal ROM. Specifically, the CPU 10 designates the address of the area 0 in which the internal ROM provided in advance illustrated in FIG. 2 is stored with respect to the bus controller 30 via the internal CPU bus 12. The address decoder 32 of the bus controller 30 decodes an address input via the internal CPU bus I / F 42. If it is determined that the address is in area 0, the fixed bus control unit 34 is activated. The fixed bus control unit 34 accesses the ROM 50 through the multiplexer 36 and the internal memory bus 16.

そして、バスコントローラ30の固定バス制御部34は、ROM50にアクセスして、ROM50に格納されている起動用のプログラム等を読み出す。   Then, the fixed bus control unit 34 of the bus controller 30 accesses the ROM 50 and reads a startup program or the like stored in the ROM 50.

そして、次に、CPU10は、ROM50に可変バス制御論理情報が格納されているかどうかを判断する(ステップS8)。   Next, the CPU 10 determines whether or not the variable bus control logic information is stored in the ROM 50 (step S8).

そして、CPU10は、ROM50に可変バス制御論理情報が格納されていると判断した場合(ステップS8においてYES)には、可変バス制御情報を設定する(ステップS10)。   If the CPU 10 determines that the variable bus control logic information is stored in the ROM 50 (YES in step S8), the CPU 10 sets the variable bus control information (step S10).

具体的には、CPU10は、ROM50に格納されている可変バス制御論理情報をPLDのコンフィグレーションメモリにマッピングすることにより可変バス制御部35を構築する。これにより、可変バス制御部35を利用することが可能となる。例えば、一例として、ROM50に格納されている可変バス制御論理情報は、SDRAM90の制御機能に対応するものとする。そして、可変バス制御部35は、可変バス制御論理情報のマッピングが完了したことをロック機構38に通知する。   Specifically, the CPU 10 constructs the variable bus control unit 35 by mapping the variable bus control logic information stored in the ROM 50 to the configuration memory of the PLD. Thereby, the variable bus control unit 35 can be used. For example, as an example, the variable bus control logic information stored in the ROM 50 corresponds to the control function of the SDRAM 90. Then, the variable bus control unit 35 notifies the lock mechanism 38 that the mapping of the variable bus control logic information is completed.

そして、ロック機構38は、ロック信号を設定する(ステップS11)。
当該ロック信号の設定により、可変バス制御部35への可変バス論理情報の格納を禁止することができる。また、ロック機構38からアドレスデコーダ32にロック信号が設定されたことが通知される。アドレスデコーダ32は、ロック機構38から当該ロック信号の設定の通知を受けて、可変バス制御部35を起動可能とする。なお、アドレスデコーダ32は、ロック機構38からロック信号の設定の通知を受けていない場合には、可変バス制御部35へのマッピングが完了していないと判断されるため可変バス制御部35の起動を抑制し、固定バス制御部34のみ起動するようにしてもよいし、アドレスエラー等の例外処理の対象としてもよい。
Then, the lock mechanism 38 sets a lock signal (step S11).
By setting the lock signal, storage of variable bus logical information in the variable bus control unit 35 can be prohibited. Further, the lock mechanism 38 notifies the address decoder 32 that a lock signal has been set. The address decoder 32 can start the variable bus control unit 35 upon receiving a notification of the setting of the lock signal from the lock mechanism 38. If the address decoder 32 has not received a lock signal setting notification from the lock mechanism 38, it is determined that the mapping to the variable bus control unit 35 has not been completed, and the variable bus control unit 35 is activated. The fixed bus control unit 34 may be activated or may be the target of exception processing such as an address error.

そして、処理を終了する(エンド)。
ROM50の可変バス制御論理情報の格納は、予めチップ設計時に格納しておいても良いし、周辺機能に含まれるシリアルコミュニケーションインタフェース(SCI)を介してたとえばROMライターを用いて外部からROM50に可変バス制御情報を書き込むようにしても良い。
Then, the process ends (END).
The variable bus control logic information in the ROM 50 may be stored in advance during chip design, or the variable bus control logic information may be stored in the ROM 50 from the outside using, for example, a ROM writer via a serial communication interface (SCI) included in peripheral functions. Control information may be written.

例えば、外部バス62と接続されたSDRAM90にアクセスする場合について説明する。   For example, a case where the SDRAM 90 connected to the external bus 62 is accessed will be described.

CPU10は、内部CPUバス12を介して、バスコントローラ30に対して図2で説明したエリア1のアドレスを指定する。バスコントローラ30のアドレスデコーダ32は、内部CPUバスI/F42を介して入力されるアドレスをデコード処理する。そして、エリア1のアドレスであると判断した場合には、可変バス制御部35を起動する。なお、この際、アドレスデコーダ32のデコード処理結果に基づいてマルチプレクサ36は、可変バス制御部35と外部バスインタフェース60とに接続を切り替える。   The CPU 10 designates the address of the area 1 described in FIG. 2 to the bus controller 30 via the internal CPU bus 12. The address decoder 32 of the bus controller 30 decodes an address input via the internal CPU bus I / F 42. If it is determined that the address is in area 1, the variable bus control unit 35 is activated. At this time, the multiplexer 36 switches the connection between the variable bus control unit 35 and the external bus interface 60 based on the decoding processing result of the address decoder 32.

そして、可変バス制御部35は、マルチプレクサ36、外部バスインタフェース60、外部バス62を介してSDRAM90にアクセスする。   Then, the variable bus control unit 35 accesses the SDRAM 90 via the multiplexer 36, the external bus interface 60, and the external bus 62.

メモリの種類毎に、インタフェースを設ける構成の場合には、接続されるデバイス毎にインタフェースを用意する必要があり回路規模が大きくなる可能性がある。また、同一の機能をマージすることによりコントローラの回路規模を縮小することも考えられるが、外部メモリの構成がシステム/アプリケーションによって多様化すると、予め全てのデバイスに対応するように機能をマージすることは非常に難しく、複雑となる可能性があり、設計コストが余分にかかる可能性もある。   In the case of a configuration in which an interface is provided for each type of memory, it is necessary to prepare an interface for each connected device, which may increase the circuit scale. It is also possible to reduce the circuit scale of the controller by merging the same functions. However, if the external memory configuration is diversified depending on the system / application, the functions should be merged in advance so as to correspond to all devices. Can be very difficult and complex, and can add extra design cost.

本願方式の如く、可変バス制御論理情報を用意して、可変バス制御部にマッピングする方式を採用することにより、回路規模を縮小することが可能となる。また、複雑なコントローラを設計する必要が無く、開発期間も縮小することが可能となる。   By adopting a method of preparing variable bus control logic information and mapping it to the variable bus control unit as in the present application method, the circuit scale can be reduced. Further, it is not necessary to design a complicated controller, and the development period can be shortened.

また、可変バス制御論理情報を格納することにより、外付けのメモリに対して新たなインタフェース仕様に対応することも可能である。   Further, by storing the variable bus control logic information, it is possible to cope with a new interface specification for the external memory.

本例においては、一例として、可変バス制御論理情報に基づいてPLDに構築された可変バス制御部35は、外部バス62と接続されたSDRAM90にアクセス可能である場合について説明したが、特にSDRAM90に限られず、同様に、FLASH/ROM70、SRAM80に対しても同様に適用可能である。すなわち、FLASH/ROM70用の可変バス制御論理情報あるいは、SDRAM90用の可変バス制御論理情報をROM50にそれぞれ格納しておけばよい。   In this example, as an example, the variable bus control unit 35 constructed in the PLD based on the variable bus control logic information has been described as being accessible to the SDRAM 90 connected to the external bus 62. The present invention is not limited, and similarly, the present invention can be similarly applied to FLASH / ROM 70 and SRAM 80. That is, the variable bus control logic information for the FLASH / ROM 70 or the variable bus control logic information for the SDRAM 90 may be stored in the ROM 50, respectively.

(実施の形態2)
図10を用いて、本発明の実施の形態2に従うマイクロコンピュータ1#等の概略構成について説明する。
(Embodiment 2)
A schematic configuration of microcomputer 1 # and the like according to the second embodiment of the present invention will be described with reference to FIG.

図10を参照して、本発明の実施の形態2に従うマイクロコンピュータ1#は、マイクロコンピュータ1と比較して、内部ROM50において、2つの可変バス制御情報PA,PBを格納している点が異なる。例えば、可変バス制御情報PAに基づいてPLDに構築された可変バス制御部35は、外部バス62と接続されたFLASH/ROM70にアクセス可能であるものとする。また、例えば、可変バス制御部PBに基づいてPLDに構築された可変バス制御部35は、外部バス62と接続されたSDRAM90にアクセス可能であるものとする。   Referring to FIG. 10, microcomputer 1 # according to the second embodiment of the present invention is different from microcomputer 1 in that two variable bus control information PA and PB are stored in internal ROM 50. . For example, it is assumed that the variable bus control unit 35 constructed in the PLD based on the variable bus control information PA can access the FLASH / ROM 70 connected to the external bus 62. Further, for example, it is assumed that the variable bus control unit 35 constructed in the PLD based on the variable bus control unit PB can access the SDRAM 90 connected to the external bus 62.

また、本例においては、一例として、図2(B)におけるエリア1aがFLASH/ROM70に対応する外部メモリとして割り当てられているものとする。また、図2(B)におけるエリア1bがSDRAM90に対応する外部メモリとして割り当てられているものとする。   In this example, as an example, it is assumed that area 1a in FIG. 2B is allocated as an external memory corresponding to FLASH / ROM 70. Further, it is assumed that the area 1b in FIG. 2B is allocated as an external memory corresponding to the SDRAM 90.

図11を用いて、可変バス制御部の切り替え処理について説明する。なお、最初に可変バス制御部35に可変バス制御情報をマッピングする方式については、実施の形態1で説明したのと同様である。   The switching process of the variable bus control unit will be described with reference to FIG. Note that the method of mapping variable bus control information to the variable bus control unit 35 first is the same as that described in the first embodiment.

図11を参照して、まず、外部メモリに対するアドレスをデコードする(ステップS20)。具体的には、上述したように、バスコントローラ30のアドレスデコーダ32は、内部CPUバスI/F42を介して入力されるアドレスをデコード処理する。   Referring to FIG. 11, first, the address for the external memory is decoded (step S20). Specifically, as described above, the address decoder 32 of the bus controller 30 decodes an address input via the internal CPU bus I / F 42.

そして、次に、アドレスデコーダ32は、指定するエリアは、現在の可変バス制御論理で対応可能であるかどうかを判断する(ステップS22)。例えば、エリア1aのアドレスが指定されたと判断した場合には、現在の可変バス制御論理がエリア1aに対応するものであるか否かを判断する。   Next, the address decoder 32 determines whether or not the designated area can be handled by the current variable bus control logic (step S22). For example, if it is determined that the address of the area 1a is designated, it is determined whether or not the current variable bus control logic corresponds to the area 1a.

ステップS22において、アドレスデコーダ32は、指定するエリアは、現在の可変バス制御論理で対応可能であると判断した場合(ステップS22においてYES)には、転送を実行する(ステップS24)。例えば、エリア1aのアドレスが指定されたと判断した場合に、現在の可変バス制御論理がエリア1aに対応するものであると判断した場合には、データ読出あるいはデータ書込に関するデータ転送処理を実行する。   In step S22, when the address decoder 32 determines that the designated area can be handled by the current variable bus control logic (YES in step S22), the address decoder 32 executes the transfer (step S24). For example, when it is determined that the address of the area 1a is designated, and when it is determined that the current variable bus control logic corresponds to the area 1a, data transfer processing related to data reading or data writing is executed. .

一方、ステップS22において、アドレスデコーダ32は、指定するエリアは、現在の可変バス制御論理で対応可能でないと判断した場合(ステップS22においてNO)には、次に現在の論理は、論理情報PAであるか否かを判断する(ステップS26)。   On the other hand, if the address decoder 32 determines in step S22 that the specified area cannot be handled by the current variable bus control logic (NO in step S22), the current logic is the logical information PA. It is determined whether or not there is (step S26).

そして、アドレスデコーダ32は、現在の論理は、可変バス制御論理情報PAであると判断した場合(ステップS26においてYES)には、可変バス制御論理情報PAから可変バス制御論理情報PBへの切り替え要求をCPU10に出力する(ステップS28)。   When address decoder 32 determines that the current logic is variable bus control logic information PA (YES in step S26), address decoder 32 requests to switch from variable bus control logic information PA to variable bus control logic information PB. Is output to the CPU 10 (step S28).

一方、アドレスデコーダ32は、現在の論理は、可変バス制御論理情報PAでないと判断した場合(ステップS26においてNO)には、可変バス制御論理情報PBから可変バス制御論理情報PAへの切り替え要求をCPU10に出力する(ステップS30)。   On the other hand, when address decoder 32 determines that the current logic is not variable bus control logic information PA (NO in step S26), address decoder 32 issues a request for switching from variable bus control logic information PB to variable bus control logic information PA. It outputs to CPU10 (step S30).

そして、次に、CPU10は、外部との間のデータ転送処理が完了したかどうかを判断する(ステップS32)。外部との間でのデータ転送処理が完了する前に、可変バス制御部35の機能を切り替えてしまうと前回の転送処理が停止し、処理が適切に終了しないからである。   Next, the CPU 10 determines whether or not the data transfer process with the outside is completed (step S32). This is because if the function of the variable bus control unit 35 is switched before the data transfer process with the outside is completed, the previous transfer process is stopped and the process is not properly terminated.

ステップS32において、外部との間でのデータ転送処理が完了したと判断された場合(ステップS32においてYES)には、次に、CPU10は、ロックの解除を要求し、ロック機構38はロックを解除する(ステップS34)。   If it is determined in step S32 that the data transfer process with the outside has been completed (YES in step S32), the CPU 10 next requests the lock release, and the lock mechanism 38 releases the lock. (Step S34).

具体的には、ロック機構38は、可変バス制御部35にロックが解除されたことを通知し、当該処理により、可変バス制御部35への可変バス制御情報の格納が可能となる。また、ロック機構38は、ロック信号が解除されたことをアドレスデコーダ32に通知する。当該ロック信号の解除の通知を受けて、アドレスデコーダ32は、可変バス制御部35を起動不能とする。ロック信号の解除の通知を受けた場合には、可変バス制御部35へのマッピングが完了していないと判断されるからである。   Specifically, the lock mechanism 38 notifies the variable bus control unit 35 that the lock has been released, and the variable bus control information can be stored in the variable bus control unit 35 by this processing. The lock mechanism 38 notifies the address decoder 32 that the lock signal has been released. Upon receiving the notification of the release of the lock signal, the address decoder 32 disables the variable bus control unit 35 from being activated. This is because it is determined that the mapping to the variable bus control unit 35 is not completed when the lock signal release notification is received.

そして、論理情報を転送する(ステップS36)。
具体的には、上述したように、CPU10は、内部ROMに格納されているプログラムのデータ読出を実行する。具体的には、CPU10は、内部ROM50に格納されている可変バス制御情報PAあるいは可変バス制御情報PBを可変バス制御部35にマッピングする。
Then, the logical information is transferred (step S36).
Specifically, as described above, the CPU 10 executes data reading of a program stored in the internal ROM. Specifically, the CPU 10 maps the variable bus control information PA or the variable bus control information PB stored in the internal ROM 50 to the variable bus control unit 35.

これにより、可変バス制御部35を利用することが可能となる。例えば、一例として、可変バス制御論理情報PAに基づいてPLDに構築された可変バス制御部35は、外部バス62と接続されたFLASH/ROM70にアクセス可能であるものとする。一方、可変バス制御論理情報PBに基づいてPLDに構築された可変バス制御部35は、外部バス62と接続されたSDRAM90にアクセス可能であるものとする。   Thereby, the variable bus control unit 35 can be used. For example, as an example, the variable bus control unit 35 constructed in the PLD based on the variable bus control logic information PA is assumed to be accessible to the FLASH / ROM 70 connected to the external bus 62. On the other hand, it is assumed that the variable bus control unit 35 constructed in the PLD based on the variable bus control logic information PB can access the SDRAM 90 connected to the external bus 62.

そして、次に、ロック機構38は、ロック信号を設定する(ステップS38)。
当該ロック信号の設定により、可変バス制御部35への可変バス論理情報の格納を禁止することができる。また、ロック機構38からアドレスデコーダ32にロック信号が設定されたことが通知される。アドレスデコーダ32は、ロック機構38から当該ロック信号の設定の通知を受けて、可変バス制御部35を起動可能とする。
Next, the lock mechanism 38 sets a lock signal (step S38).
By setting the lock signal, storage of variable bus logical information in the variable bus control unit 35 can be prohibited. Further, the lock mechanism 38 notifies the address decoder 32 that a lock signal has been set. The address decoder 32 can start the variable bus control unit 35 upon receiving a notification of the setting of the lock signal from the lock mechanism 38.

そして、外部メモリに対するアドレスをデコードしたデコード結果に基づく、指定するエリアに対応するメモリのデータ読出あるいはデータ書込に関するデータ転送処理を実行する(ステップS40)。   Then, data transfer processing relating to data reading or data writing in the memory corresponding to the designated area is executed based on the decoding result obtained by decoding the address for the external memory (step S40).

例えば、エリア1aのアドレスが指定されたと判断した場合に、現在の可変バス制御論理がエリア1bに対応するものである場合には、可変バス制御論理をエリア1aに切り替えてデータ転送処理を実行する。また、逆にエリア1bのアドレスが指定されたと判断された場合に、現在の可変バス制御論理がエリア1aに対応するものである場合には、可変バス制御論理をエリア1bに切り替えてデータ転送処理を実行する。   For example, if it is determined that the address of the area 1a is designated, and the current variable bus control logic corresponds to the area 1b, the variable bus control logic is switched to the area 1a and the data transfer process is executed. . Conversely, if it is determined that the address of the area 1b is designated, and the current variable bus control logic corresponds to the area 1a, the variable bus control logic is switched to the area 1b to perform data transfer processing. Execute.

そして、処理を終了する(エンド)。
当該方式により、PLDである可変バス制御部35の機能を切り替えることにより、効率的に外部バスに接続された外部メモリを切り替えてアクセスすることが可能となる。
Then, the process ends (END).
By switching the function of the variable bus control unit 35 that is a PLD by this method, it becomes possible to efficiently switch and access the external memory connected to the external bus.

(実施の形態3)
図12を用いて、本発明の実施の形態3に従うマイクロコンピュータ1aの概略構成について説明する。
(Embodiment 3)
A schematic configuration of microcomputer 1a according to the third embodiment of the present invention will be described with reference to FIG.

図12を参照して、本発明の実施の形態3に従うマイクロコンピュータ1#aは、マイクロコンピュータ1と比較して、内部RAM55において、可変バス制御情報を格納している点が異なる。   Referring to FIG. 12, microcomputer 1 # a according to the third embodiment of the present invention is different from microcomputer 1 in that variable bus control information is stored in internal RAM 55.

当該構成の如く、内部RAM55に可変バス制御情報を格納するようにすることも可能である。   As in this configuration, variable bus control information can be stored in the internal RAM 55.

外部メモリの種類が複数あり、チップ開発時(ROMのデータ確定時)において、どの外部メモリを外部メモリとして用いるかが特定できない場合には、システム構築時に、可変バス制御情報を外部メモリあるいは周辺機能に含まれるシリアルコミュニケーションインタフェース(SCI)を介して通信インタフェースにより内部RAM55に格納することも可能である。   If there are multiple types of external memory and it is not possible to specify which external memory is used as the external memory during chip development (when determining ROM data), the variable bus control information can be transferred to the external memory or peripheral function when building the system. It is also possible to store in the internal RAM 55 by a communication interface via a serial communication interface (SCI) included in.

そして、内部RAM55に格納された可変バス制御情報に基づいて、上述したPLDにマッピングすることにより、外部バスと接続された外部メモリに対してもアクセスすることが可能となる。すなわち、外付けのメモリに対して新たなインタフェース仕様に対応することが可能である。   Then, by mapping to the above-described PLD based on the variable bus control information stored in the internal RAM 55, it is possible to access an external memory connected to the external bus. That is, it is possible to cope with a new interface specification for an external memory.

(実施の形態4)
図13を用いて、本発明の実施の形態4に従うマイクロコンピュータ2の概略構成について説明する。
(Embodiment 4)
A schematic configuration of microcomputer 2 according to the fourth embodiment of the present invention will be described with reference to FIG.

図13を参照して、本発明の実施の形態4に従うマイクロコンピュータ2は、マイクロコンピュータ1と比較して、バスコントローラ30をバスコントローラ30#に置換した点が異なる。その他の点については同様であるのでその詳細な説明については繰り返さない。また、ロック機構38の代わりに調停制御部46からのロック解除の指示の入力を受けるロック機構38#を設けた点が異なる。   Referring to FIG. 13, microcomputer 2 according to the fourth embodiment of the present invention differs from microcomputer 1 in that bus controller 30 is replaced with bus controller 30 #. Since the other points are the same, detailed description thereof will not be repeated. Another difference is that a lock mechanism 38 # that receives an input of an unlocking instruction from the arbitration control unit 46 is provided instead of the lock mechanism 38.

バスコントローラ30#は、バスコントローラ30と比較して、さらに、コンフィグレーション制御部37と、専用RAM39とをさらに設けた点が異なる。   The bus controller 30 # is different from the bus controller 30 in that a configuration control unit 37 and a dedicated RAM 39 are further provided.

コンフィグレーション制御部37は、専用RAM39に格納されている可変制御論理情報を可変バス制御部35にマッピングする。   The configuration control unit 37 maps the variable control logic information stored in the dedicated RAM 39 to the variable bus control unit 35.

図14を用いて、本発明の実施の形態4に従うバスコントローラの処理について説明する。   Processing of the bus controller according to the fourth embodiment of the present invention will be described using FIG.

図14を参照して、まず、外部メモリに対するアドレスをデコードする(ステップS20)。具体的には、上述したように、バスコントローラ30のアドレスデコーダ32は、内部CPUバスI/F42を介して入力されるアドレスをデコード処理する。   Referring to FIG. 14, first, the address for the external memory is decoded (step S20). Specifically, as described above, the address decoder 32 of the bus controller 30 decodes an address input via the internal CPU bus I / F 42.

そして、次に、アドレスデコーダ32は、指定するエリアは、現在の可変バス制御論理で対応可能であるかどうかを判断する(ステップS22)。例えば、エリア1aのアドレスが指定されたと判断した場合には、現在の可変バス制御論理がエリア1aに対応するものであるか否かを判断する。   Next, the address decoder 32 determines whether or not the designated area can be handled by the current variable bus control logic (step S22). For example, if it is determined that the address of the area 1a is designated, it is determined whether or not the current variable bus control logic corresponds to the area 1a.

ステップS22において、アドレスデコーダ32は、指定するエリアは、現在の可変バス制御論理で対応可能であると判断した場合(ステップS22においてYES)には、転送を実行する(ステップS24)。例えば、エリア1aのアドレスが指定されたと判断した場合に、現在の可変バス制御論理がエリア1aに対応するものであると判断した場合には、データ読出あるいはデータ書込に関するデータ転送処理を実行する。   In step S22, when the address decoder 32 determines that the designated area can be handled by the current variable bus control logic (YES in step S22), the address decoder 32 executes the transfer (step S24). For example, when it is determined that the address of the area 1a is designated, and when it is determined that the current variable bus control logic corresponds to the area 1a, data transfer processing related to data reading or data writing is executed. .

一方、ステップS22において、アドレスデコーダ32は、指定するエリアは、現在の可変バス制御論理で対応可能でないと判断した場合(ステップS22においてNO)には、次に現在の論理は、論理情報PAであるか否かを判断する(ステップS26)。   On the other hand, if the address decoder 32 determines in step S22 that the specified area cannot be handled by the current variable bus control logic (NO in step S22), the current logic is the logical information PA. It is determined whether or not there is (step S26).

そして、アドレスデコーダ32は、現在の論理は、論理情報PAであると判断した場合(ステップS26においてYES)には、可変バス制御論理情報PAから可変バス制御論理情報PBへの切り替え要求を出力する(ステップS28)。具体的には、アドレスデコーダ32は、コンフィグレーション制御部37に対して可変バス制御論理情報(PA→PB)の切り替え要求を出力する。   When address decoder 32 determines that the current logic is logic information PA (YES in step S26), address decoder 32 outputs a request for switching from variable bus control logic information PA to variable bus control logic information PB. (Step S28). Specifically, the address decoder 32 outputs a request for switching the variable bus control logic information (PA → PB) to the configuration control unit 37.

一方、現在の論理は、論理情報PAでないと判断された場合(ステップS26においてNO)には、可変バス制御論理情報PBから可変バス制御論理情報PAへの切り替え要求を出力する(ステップS30)。具体的には、アドレスデコーダ32は、コンフィグレーション制御部37に対して可変バス制御論理情報(PB→PA)の切り替え要求を出力する。   On the other hand, when it is determined that the current logic is not logic information PA (NO in step S26), a request for switching from variable bus control logic information PB to variable bus control logic information PA is output (step S30). Specifically, the address decoder 32 outputs a request for switching the variable bus control logic information (PB → PA) to the configuration control unit 37.

コンフィグレーション制御部37は、可変バス制御論理情報の切り替え要求に対してウエイト要求をアドレスデコーダ32に対して出力する(ステップS29)。   The configuration control unit 37 outputs a wait request to the address decoder 32 in response to the variable bus control logic information switching request (step S29).

アドレスデコーダ32は、ウエイト要求に従って処理を一時停止させるとともに、後続の可変バス制御部35を使用する転送をウエイトさせる。   The address decoder 32 suspends processing according to the wait request and waits for transfer using the subsequent variable bus control unit 35.

そして、次に、調停制御部46は、外部との間のデータ転送処理が完了したかどうかを判断する(ステップS32)。外部との間でのデータ転送処理が完了する前に、可変バス制御部35の機能を切り替えてしまうと前回の転送処理が停止し、処理が適切に終了しないからである。   Next, the arbitration control unit 46 determines whether or not the data transfer process with the outside is completed (step S32). This is because if the function of the variable bus control unit 35 is switched before the data transfer process with the outside is completed, the previous transfer process is stopped and the process is not properly terminated.

ステップS32において、調整制御部46は、外部との間でのデータ転送処理が完了したと判断した場合(ステップS32においてYES)には、次に、調整制御部46は、ロックの解除を要求し、ロック機構38は、ロックを解除する(ステップS34)。具体的には、ロック機構38は、可変バス制御部35にロックが解除されたことを通知し、当該処理により、可変バス制御部35への可変バス制御情報の格納が可能となる。また、可変バス制御部35は、ロックが解除されたことをコンフィグレーション制御部37に通知する。   In step S32, when the adjustment control unit 46 determines that the data transfer process with the outside is completed (YES in step S32), the adjustment control unit 46 next requests the unlocking. The lock mechanism 38 releases the lock (step S34). Specifically, the lock mechanism 38 notifies the variable bus control unit 35 that the lock has been released, and the variable bus control information can be stored in the variable bus control unit 35 by this processing. The variable bus control unit 35 notifies the configuration control unit 37 that the lock has been released.

そして、論理情報を転送する(ステップS36)。
具体的には、コンフィグレーション制御部37は、ロックが解除されたことの通知を受けて、専用RAM39にアクセスし、専用RAM39に格納されているプログラムのデータ読出を実行する。具体的には、コンフィグレーション制御部37は、専用RAM39に格納されている可変バス制御情報PAあるいは可変バス制御情報PBを可変バス制御部35にマッピングする。
Then, the logical information is transferred (step S36).
Specifically, upon receiving a notification that the lock has been released, the configuration control unit 37 accesses the dedicated RAM 39 and executes data reading of the program stored in the dedicated RAM 39. Specifically, the configuration control unit 37 maps the variable bus control information PA or the variable bus control information PB stored in the dedicated RAM 39 to the variable bus control unit 35.

これにより、可変バス制御部35を利用することが可能となる。例えば、一例として、可変バス制御論理情報PAに基づいてPLDに構築された可変バス制御部35は、外部バス62と接続されたFLASH/ROM70にアクセス可能であるものとする。一方、可変バス制御論理情報PBに基づいてPLDに構築された可変バス制御部35は、外部バス62と接続されたSDRAM90にアクセス可能であるものとする。   Thereby, the variable bus control unit 35 can be used. For example, as an example, the variable bus control unit 35 constructed in the PLD based on the variable bus control logic information PA is assumed to be accessible to the FLASH / ROM 70 connected to the external bus 62. On the other hand, it is assumed that the variable bus control unit 35 constructed in the PLD based on the variable bus control logic information PB can access the SDRAM 90 connected to the external bus 62.

次に、ロック機構38#は、ロック信号を設定する(ステップS38)。
当該ロック信号の設定により、可変バス制御部35への可変バス論理情報の格納を禁止することができる。また、ロック機構38からアドレスデコーダ32にロック信号が設定されたことが通知される。アドレスデコーダ32は、ロック機構38から当該ロック信号の設定の通知を受けて、可変バス制御部35を起動可能とする。
Next, the lock mechanism 38 # sets a lock signal (step S38).
By setting the lock signal, storage of variable bus logical information in the variable bus control unit 35 can be prohibited. Further, the lock mechanism 38 notifies the address decoder 32 that a lock signal has been set. The address decoder 32 can start the variable bus control unit 35 upon receiving a notification of the setting of the lock signal from the lock mechanism 38.

そして、また、コンフィグレーション制御部37は、ウエイト要求を解除する(ステップS39)。   And the configuration control part 37 cancels | releases a weight request | requirement (step S39).

具体的には、コンフィグレーション制御部37は、アドレスデコーダ32に対してウエイト要求の解除を通知する。   Specifically, the configuration control unit 37 notifies the address decoder 32 of cancellation of the wait request.

そして、アドレスデコーダ32は、ウエイト要求の解除の通知を受けて、外部メモリに対するアドレスをデコードしたデコード結果に基づく、指定するエリアに対応するメモリのデータ読出あるいはデータ書込に関するデータ転送処理を実行する(ステップS40)。   The address decoder 32 receives the notification of the release of the wait request and executes data transfer processing related to data reading or data writing in the memory corresponding to the designated area based on the decoding result obtained by decoding the address to the external memory. (Step S40).

例えば、エリア1aのアドレスが指定されたと判断した場合に、現在の可変バス制御論理がエリア1bに対応するものである場合には、可変バス制御論理をエリア1aに切り替えて転送を実行する。また、逆にエリア1bのアドレスが指定されたと判断された場合に、現在の可変バス制御論理がエリア1aに対応するものである場合には、可変バス制御論理をエリア1bに切り替えて転送を実行する。   For example, if it is determined that the address of the area 1a is designated, and the current variable bus control logic corresponds to the area 1b, the variable bus control logic is switched to the area 1a to execute the transfer. On the other hand, if it is determined that the address of area 1b is designated, and the current variable bus control logic corresponds to area 1a, the variable bus control logic is switched to area 1b to execute the transfer. To do.

そして、終了する(エンド)。
当該方式により、PLDである可変バス制御部35の機能を切り替えることにより、効率的に外部バスに接続された外部メモリを切り替えてアクセスすることが可能となるとともに、バスコントローラ30#内部でコンフィグレーション制御部37により可変バス制御部35の機能が切り替えられるためCPU10を介することなく高速に機能の切り替えが可能となる。また、CPU処理が割込みにより中断されることなく、CPU処理とコンフィグレーション処理とを並列して実行することができシステム性能の低下を低減することが可能となる。
Then, the process ends (END).
By switching the function of the variable bus control unit 35 that is a PLD by this method, it is possible to efficiently switch and access the external memory connected to the external bus, and the configuration within the bus controller 30 #. Since the function of the variable bus control unit 35 is switched by the control unit 37, the function can be switched at high speed without using the CPU 10. In addition, the CPU processing and the configuration processing can be executed in parallel without interrupting the CPU processing due to an interrupt, and it is possible to reduce the deterioration in system performance.

なお、本例と同様に、実施の形態1に従う構成においても調整制御部46において、外部との間でのデータ転送処理が完了したか否かを判断して、CPUの代わりにロック機構38に対してロックの解除を要求するようにすることも可能である。   As in this example, in the configuration according to the first embodiment, the adjustment control unit 46 determines whether or not the data transfer process with the outside is completed, and the lock mechanism 38 is used instead of the CPU. It is also possible to request the lock release.

また、専用RAMへの書込は、例えば、図9で説明した如く、ブート処理により、内部ROMに格納されているプログラムのデータ読出を実行する。具体的には、CPU10は、固定バス制御部34を介して内部ROM50にアクセスし、そして、内部メモリバス16を介して、可変バス制御情報PA,PBを専用RAM39に書き込むことにより実現可能である。   For example, as described with reference to FIG. 9, data is read from the program stored in the internal ROM by boot processing as described in FIG. Specifically, the CPU 10 can be realized by accessing the internal ROM 50 via the fixed bus control unit 34 and writing the variable bus control information PA and PB into the dedicated RAM 39 via the internal memory bus 16. .

また、上述したように内部ROMに限られず、内部RAMから専用RAMに可変バス制御情報を転送するようにすることも可能である。   Further, as described above, the variable bus control information can be transferred from the internal RAM to the dedicated RAM without being limited to the internal ROM.

あるいは、周辺機能に含まれるSCIを介して通信インタフェースにより外部から専用RAM39に可変バス制御情報を書き込むようにすることも可能である。   Alternatively, the variable bus control information can be written to the dedicated RAM 39 from the outside by a communication interface via the SCI included in the peripheral function.

また、上記の図13の例においては、可変バス制御論理情報の切り替え要求に対して、調停制御部46において、バスの状態を監視する。そして、調停制御部46において、外部との間でのデータ転送処理が完了したか否かを判断し、完了したと判断した場合には、ロック機構38#に対してロックの解除を要求する方式について説明した。   Further, in the example of FIG. 13 described above, the arbitration control unit 46 monitors the bus state in response to a request for switching the variable bus control logic information. Then, the arbitration control unit 46 determines whether or not the data transfer processing with the outside has been completed, and if it is determined that the transfer has been completed, a method of requesting the lock mechanism 38 # to release the lock Explained.

一方で、ロック機構の機能をコンフィグレーション制御部に持たせることも可能である。   On the other hand, it is also possible to give the configuration control unit the function of the lock mechanism.

図15は、本発明の実施の形態4に従う別のマイクロコンピュータ2#の概略構成について説明する。   FIG. 15 illustrates a schematic configuration of another microcomputer 2 # according to the fourth embodiment of the present invention.

図15を参照して、本発明の実施の形態4に従う別のマイクロコンピュータ2#は、マイクロコンピュータ2と比較して、バスコントローラ30#をバスコントローラ30#aに置換した点が異なる。その他の点については同様であるので、その詳細な説明については繰り返さない。具体的には、ロック機構の機能をコンフィグレーション制御部37#に持たせた点が異なる。その他の構成については同様であるのでその詳細な説明は繰り返さない。すなわち、コンフィグレーション制御部37#は、内部状態としてロックか否かを情報を保持しており、ロックが設定されている場合には、可変バス制御部35への書込を禁止し、ロックが解除されている場合には、可変バス制御部35への書込を可能とする。   Referring to FIG. 15, another microcomputer 2 # according to the fourth embodiment of the present invention is different from microcomputer 2 in that bus controller 30 # is replaced with bus controller 30 # a. Since the other points are the same, detailed description thereof will not be repeated. Specifically, the configuration control unit 37 # is provided with a lock mechanism function. Since other configurations are the same, detailed description thereof will not be repeated. That is, the configuration control unit 37 # holds information as to whether or not it is locked as an internal state. When the lock is set, writing to the variable bus control unit 35 is prohibited, and the lock is disabled. When it is released, writing to the variable bus control unit 35 is enabled.

上記の図14で説明したバスコントローラの処理についてはほぼ同様であるが、ステップS32において、コンフィグレーション制御部37#が外部との間のデータ転送処理が完了したかどうかを判断する(ステップS32)。そして、ステップS32において、コンフィグレーション制御部37#は、外部との間でのデータ転送処理が完了したと判断した場合(ステップS32においてYES)には、次に、内部状態として有するロックを解除(ステップS34)し、そして、論理情報を転送(ステップS36)し、ロックを設定する(ステップS38)。以降の処理については上述したのと同様である。   The processing of the bus controller described above with reference to FIG. 14 is substantially the same, but in step S32, the configuration control unit 37 # determines whether the data transfer processing with the outside has been completed (step S32). . If the configuration control unit 37 # determines in step S32 that the data transfer process with the outside has been completed (YES in step S32), the lock that is held as the internal state is then released ( Then, the logical information is transferred (step S36) and the lock is set (step S38). The subsequent processing is the same as described above.

本方式においても、バスコントローラ30#a内部でコンフィグレーション制御部37#により可変バス制御部35の機能が切り替えられるためCPU10を介することなく高速に機能の切り替えが可能となる。また、ロック機構の機能をコンフィグレーション制御部37#に持たせることにより構成が簡易となる。   Also in this system, since the function of the variable bus control unit 35 is switched by the configuration control unit 37 # inside the bus controller 30 # a, the function can be switched at high speed without using the CPU 10. Further, the configuration can be simplified by providing the configuration control unit 37 # with the function of the lock mechanism.

また、図13および図15に示される構成において、専用RAM39を可変バス制御部35であるPLDに近接して配置する構成を採用し、専用RAMの一部領域をPLDにおける、上述した4bitのコンフィグレーションメモリ(MEM1〜MEM4)の領域として用いることも可能である。   Further, in the configuration shown in FIG. 13 and FIG. 15, a configuration in which the dedicated RAM 39 is arranged close to the PLD which is the variable bus control unit 35 is adopted, and a part of the dedicated RAM is configured in the 4-bit configuration described above. It is also possible to use it as an area of the configuration memory (MEM1 to MEM4).

図16を用いて、専用RAMを可変バス制御情報用の領域と、コンフィグレーションメモリ用の領域とに分けて用いる場合について説明する。   The case where the dedicated RAM is used separately for the variable bus control information area and the configuration memory area will be described with reference to FIG.

図16に示される方式により、可変バス制御情報を格納する専用RAMの一部をコンフィグレーションメモリ用の領域として一体化して用いることにより回路面積を縮小することが可能である。   With the method shown in FIG. 16, it is possible to reduce the circuit area by using a part of the dedicated RAM for storing the variable bus control information as an area for the configuration memory.

また、専用RAMを例えば、デュアルポートRAMで構成する。一方のポートでデータを読み出しながら、他方のポートを用いてデータの書込を実行することが可能であるため例えば、内部メモリバス16と接続されたROM50から可変バス制御情報を専用RAMに転送する際においても高速な転送が可能となる。   Further, the dedicated RAM is constituted by, for example, a dual port RAM. Since it is possible to write data using the other port while reading data from one port, for example, the variable bus control information is transferred from the ROM 50 connected to the internal memory bus 16 to the dedicated RAM. Even in this case, high-speed transfer is possible.

(実施の形態5)
図17を用いて、本発明の実施の形態5に従うマイクロコンピュータ3の概略構成について説明する。
(Embodiment 5)
The schematic configuration of microcomputer 3 according to the fifth embodiment of the present invention will be described using FIG.

図17を参照して、本発明の実施の形態5に従うマイクロコンピュータ3は、マイクロコンピュータ1と比較して、周辺機能20を周辺機能20#に置換した点が異なる。その他の点については同様であるのでその詳細な説明については繰り返さない。   Referring to FIG. 17, microcomputer 3 according to the fifth embodiment of the present invention is different from microcomputer 1 in that peripheral function 20 is replaced with peripheral function 20 #. Since the other points are the same, detailed description thereof will not be repeated.

周辺機能20#は、周辺機能管理部21と周辺機能制御部24とを含む。
周辺機能管理部21は、内部周辺バスI/F22と、調停制御部23とを含む。
Peripheral function 20 # includes a peripheral function management unit 21 and a peripheral function control unit 24.
Peripheral function management unit 21 includes an internal peripheral bus I / F 22 and an arbitration control unit 23.

内部周辺バスI/F22は、内部周辺バス14と接続され、内部CPUバス12を介してCPU10あるいはDMAC15との間のデータの授受を実行する。   The internal peripheral bus I / F 22 is connected to the internal peripheral bus 14 and executes data exchange with the CPU 10 or the DMAC 15 via the internal CPU bus 12.

調停制御部23は、バス使用権の調停を行っている。
周辺機能制御部24は、固定周辺機能部25と、可変周辺機能部26と、ロック機構27と、マルチプレクサ28とを含む。
The arbitration control unit 23 performs arbitration of the bus use right.
Peripheral function control unit 24 includes a fixed peripheral function unit 25, a variable peripheral function unit 26, a lock mechanism 27, and a multiplexer 28.

固定周辺機能部25は、マルチプレクサ28を介して、例えばポートAAを用いて外部との間でデータ通信が可能であるものとする。   It is assumed that the fixed peripheral function unit 25 can perform data communication with the outside through the multiplexer 28 using, for example, the port AA.

一方、可変周辺機能部26は、マルチプレクサ28を介して、例えばポートBBを用いて外部との間でデータ通信が可能であるものとする。   On the other hand, it is assumed that the variable peripheral function unit 26 can perform data communication with the outside through the multiplexer 28 using, for example, the port BB.

具体的には、上述したように、例えば、内部メモリバス16と接続されているROM50に可変周辺機能部26を設定するための周辺機能制御論理情報が含まれているものとする。   Specifically, as described above, for example, it is assumed that peripheral function control logic information for setting the variable peripheral function unit 26 is included in the ROM 50 connected to the internal memory bus 16.

そして、CPU10によって、固定バス制御部34を介して読み出されて、可変周辺機能部26にマッピングする。マッピングの方式等については、図1で説明したのと同様であるのでその詳細な説明は繰り返さない。   Then, it is read out by the CPU 10 via the fixed bus control unit 34 and mapped to the variable peripheral function unit 26. Since the mapping method and the like are the same as those described in FIG. 1, detailed description thereof will not be repeated.

当該方式により、バスコントローラのみならず、他の例えば周辺機能にPLDを設けることにより、周辺機能に新たな機能を設計することが可能となるため例えば、新たな通信インタフェースに対応した周辺機能を設定することも可能である。   With this method, it is possible to design a new function for a peripheral function by providing a PLD not only for the bus controller but also for other peripheral functions. For example, a peripheral function corresponding to a new communication interface is set. It is also possible to do.

今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。   The embodiment disclosed this time should be considered as illustrative in all points and not restrictive. The scope of the present invention is defined by the terms of the claims, rather than the description above, and is intended to include any modifications within the scope and meaning equivalent to the terms of the claims.

1,1#,1a,2,3 マイクロコンピュータ、10 CPU、12 内部CPUバス、14 内部周辺バス、15 DMAC、16 内部メモリバス、20,20# 周辺機能、21 周辺機能管理部、22 内部周辺バスI/F、23 調整制御部、24 周辺機能制御部、25 固定周辺機能部、26 可変周辺機能部、27,38,38# ロック、28 マルチプレクサ、30,30#,30#a バスコントローラ、31 バス制御部、32 アドレスデコーダ、34 固定バス制御部、35 可変バス制御部、36 マルチプレクサ、37,37# コンフィグレーション制御部、39 専用RAM、40 バス管理部、42 内部CPUバスI/F、44 内部周辺バスI/F、46 調停制御部、50 ROM、55 RAM、60 外部バスインタフェース、70 FLASH/ROM、80 SRAM、90 SDRAM。   1, 1 #, 1a, 2, 3 Microcomputer, 10 CPU, 12 internal CPU bus, 14 internal peripheral bus, 15 DMAC, 16 internal memory bus, 20, 20 # peripheral function, 21 peripheral function management unit, 22 internal peripheral Bus I / F, 23 adjustment control unit, 24 peripheral function control unit, 25 fixed peripheral function unit, 26 variable peripheral function unit, 27, 38, 38 # lock, 28 multiplexer, 30, 30 #, 30 # a bus controller, 31 bus control unit, 32 address decoder, 34 fixed bus control unit, 35 variable bus control unit, 36 multiplexer, 37, 37 # configuration control unit, 39 dedicated RAM, 40 bus management unit, 42 internal CPU bus I / F, 44 Internal peripheral bus I / F, 46 Arbitration controller, 50 ROM, 55 RAM, 60 External bus Interface, 70 FLASH / ROM, 80 SRAM, 90 SDRAM.

Claims (8)

  1. 制御部と、
    構築データを記憶する内部メモリと、
    前記内部メモリと接続された内部バスと、
    バスコントローラと、
    外部バスインタフェースとを備え、
    前記バスコントローラは、
    前記内部バスを介して前記内部メモリをアクセスするバス制御部と、
    プログラム可能な論理部と、
    ロック機構とを含み、
    前記制御部は、前記内部メモリに記憶された構築データを読み出して、前記構築データに基づいて、前記プログラム可能な論理部上に、前記外部バスインタフェースを介して接続される外部メモリをアクセスするためのバス制御機能を構築し、
    前記ロック機構は、前記論理部上への前記バス制御機能の構築が完了した場合に前記バス制御機能の起動を許可する、マイクロコンピュータ。
    A control unit;
    An internal memory for storing construction data;
    An internal bus connected to the internal memory;
    A bus controller;
    With an external bus interface,
    The bus controller
    A bus control unit for accessing the internal memory via the internal bus;
    A programmable logic part;
    Including a locking mechanism,
    The control unit reads the construction data stored in the internal memory, and accesses the external memory connected via the external bus interface on the programmable logic unit based on the construction data. Built a bus control function
    The lock mechanism is a microcomputer that permits activation of the bus control function when the construction of the bus control function on the logic unit is completed.
  2. 前記内部メモリは、RAMに相当する、請求項1記載のマイクロコンピュータ。   The microcomputer according to claim 1, wherein the internal memory corresponds to a RAM.
  3. 前記制御部は、リセット処理後に、前記内部メモリに記憶された構築データを読み出して、前記バス制御機能を構築する、請求項1記載のマイクロコンピュータ。   The microcomputer according to claim 1, wherein after the reset process, the control unit reads the construction data stored in the internal memory and constructs the bus control function.
  4. 前記内部メモリは、前記外部バスインタフェースを介して接続される第1および第2の外部メモリにそれぞれ対応して設けられ、対応する外部メモリをアクセスするためのバス制御機能を前記論理部上に構築するための第1および第2の構築データを記憶する、請求項1記載のマイクロコンピュータ。   The internal memory is provided corresponding to each of the first and second external memories connected via the external bus interface, and a bus control function for accessing the corresponding external memory is constructed on the logic unit. The microcomputer according to claim 1, wherein the microcomputer stores first and second construction data for performing.
  5. 前記バスコントローラは、アドレスデコーダをさらに含み、
    前記アドレスデコーダは、前記外部バスインタフェースを介して接続される第1および第2の外部メモリの一方をアクセスするアドレス情報の入力を受けて、デコード結果に基づく切り替え信号を生成し、
    前記制御部は、前記切り替え信号に従って、前記内部メモリから前記第1および第2の構築データの一方を読み出して、前記論理部上に構築するバス制御機能を切り替える、請求項4記載のマイクロコンピュータ。
    The bus controller further includes an address decoder,
    The address decoder receives an input of address information for accessing one of the first and second external memories connected via the external bus interface, and generates a switching signal based on a decoding result;
    5. The microcomputer according to claim 4, wherein the control unit reads one of the first and second construction data from the internal memory according to the switching signal, and switches a bus control function to be constructed on the logic unit.
  6. ログラム可能な周辺機能論理部を含む周辺回路をさらに備え、
    前記内部メモリは、周辺機能を構築するための周辺機能構築データを記憶し、
    前記制御部は、前記内部メモリに記憶された周辺機能構築データを読み出して、前記周辺機能構築データに基づいて、前記プログラム可能な周辺機能論理部上に、前記周辺機能を構築する、請求項1記載のマイクロコンピュータ。
    Further comprising a peripheral circuit including a program capable of peripheral functional logic unit,
    The internal memory stores peripheral function construction data for constructing peripheral functions,
    The control unit reads peripheral function construction data stored in the internal memory, and constructs the peripheral function on the programmable peripheral function logic unit based on the peripheral function construction data. The microcomputer as described.
  7. 制御部と、
    構築データを記憶する内部メモリと、
    前記内部メモリと接続された内部バスと、
    バスコントローラと、
    外部バスインタフェースとを備え、
    前記バスコントローラは、
    前記内部バスを介して前記内部メモリをアクセスするバス制御部と、
    プログラム可能な論理部と、
    専用メモリと、
    前記プログラム可能な論理部上にバス制御機能を構築するコンフィグレーション制御部とを含み、
    前記制御部は、前記内部メモリに記憶された構築データを読み出して、前記専用メモリに格納し、
    前記コンフィグレーション制御部は、前記専用メモリに格納された前記構築データに基づいて、前記外部バスインタフェースを介して接続される外部メモリをアクセスするためのバス制御機能を構築する、マイクロコンピュータ。
    A control unit;
    An internal memory for storing construction data;
    An internal bus connected to the internal memory;
    A bus controller;
    With an external bus interface,
    The bus controller
    A bus control unit for accessing the internal memory via the internal bus;
    A programmable logic part;
    Dedicated memory,
    A configuration control unit that builds a bus control function on the programmable logic unit,
    The control unit reads the construction data stored in the internal memory, stores it in the dedicated memory,
    The configuration control unit constructs a bus control function for accessing an external memory connected via the external bus interface based on the construction data stored in the dedicated memory.
  8. 前記専用メモリの一部は、前記プログラム可能な論理部のための複数の回路情報保持手段として用いられるものである、請求項7記載のマイクロコンピュータ。 8. The microcomputer according to claim 7 , wherein a part of the dedicated memory is used as a plurality of circuit information holding means for the programmable logic unit .
JP2009133213A 2009-06-02 2009-06-02 Microcomputer Expired - Fee Related JP5401700B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009133213A JP5401700B2 (en) 2009-06-02 2009-06-02 Microcomputer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009133213A JP5401700B2 (en) 2009-06-02 2009-06-02 Microcomputer

Publications (3)

Publication Number Publication Date
JP2010282284A JP2010282284A (en) 2010-12-16
JP2010282284A5 JP2010282284A5 (en) 2012-04-12
JP5401700B2 true JP5401700B2 (en) 2014-01-29

Family

ID=43538982

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009133213A Expired - Fee Related JP5401700B2 (en) 2009-06-02 2009-06-02 Microcomputer

Country Status (1)

Country Link
JP (1) JP5401700B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103534692B (en) * 2011-05-17 2016-10-19 阿尔特拉公司 Hard logic in docking hybrid integrated device and the system and method for soft logic
CN108134683A (en) * 2016-12-01 2018-06-08 腾讯科技(深圳)有限公司 A kind of implementation method of terminal and bus architecture

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63214995A (en) * 1987-03-04 1988-09-07 Ando Electric Co Ltd Memory selecting circuit
JPH03263185A (en) * 1990-03-14 1991-11-22 Hitachi Ltd Lsi with any-time writable interface circuit
JP3191996B2 (en) * 1992-08-27 2001-07-23 株式会社リコー External memory control method
JP2001175586A (en) * 1999-12-21 2001-06-29 Hitachi Hokkai Semiconductor Ltd Data processor and data processing system
JP2001265647A (en) * 2000-03-17 2001-09-28 Mitsubishi Electric Corp Board system, memory control method in board system and memory replacing method in board system
JP2001290758A (en) * 2000-04-10 2001-10-19 Nec Corp Computer system
JP3904493B2 (en) * 2002-07-24 2007-04-11 株式会社ルネサステクノロジ Semiconductor device
JP4453271B2 (en) * 2003-04-25 2010-04-21 コニカミノルタホールディングス株式会社 Computer system and memory connection method
JP4892970B2 (en) * 2005-12-27 2012-03-07 富士ゼロックス株式会社 Method of using electronic circuit and programmable logic device
JP2008009564A (en) * 2006-06-27 2008-01-17 Fujitsu Ltd Memory access device, memory access method, memory manufacturing method and program
JP4659774B2 (en) * 2007-03-07 2011-03-30 三菱電機株式会社 Electrical equipment
JP2008293096A (en) * 2007-05-22 2008-12-04 Shinko Electric Ind Co Ltd Memory interface and system

Also Published As

Publication number Publication date
JP2010282284A (en) 2010-12-16

Similar Documents

Publication Publication Date Title
US10061699B2 (en) Multiple data channel memory module architecture
KR102068101B1 (en) Hybrid memory cube system interconnect directory-based cache coherence methodology
US10025737B2 (en) Interface for storage device access over memory bus
US9645746B2 (en) Systems and methods for support of non-volatile memory on a DDR memory channel
US9997232B2 (en) Processing in memory (PIM) capable memory device having sensing circuitry performing logic operations
US9418042B2 (en) Memory interface and method of interfacing between functional entities
US10379752B2 (en) High-throughput low-latency hybrid memory module
JP2015172960A (en) Atomic memory device
KR101454090B1 (en) Systems, methods, and apparatuses for hybrid memory
US5893136A (en) Memory controller for independently supporting Synchronous and Asynchronous DRAM memories
JP4989872B2 (en) Semiconductor memory device and arithmetic processing unit
US7076609B2 (en) Cache sharing for a chip multiprocessor or multiprocessing system
US5497355A (en) Synchronous address latching for memory arrays
Perissakis et al. Embedded DRAM for a reconfigurable array
JP3722415B2 (en) Scalable shared memory multiprocessor computer system with repetitive chip structure with efficient bus mechanism and coherence control
US6771526B2 (en) Method and apparatus for data transfer
US5729709A (en) Memory controller with burst addressing circuit
US8291211B2 (en) System embedding plural controller sharing nonvolatile memory
US6996659B2 (en) Generic bridge core
US7127563B2 (en) Shared memory architecture
KR100244841B1 (en) High-speed, multiple-port, interleaved cache with arbitration of multiple access addresses
US6202125B1 (en) Processor-cache protocol using simple commands to implement a range of cache configurations
KR101496072B1 (en) Integrated circuit with programmable circuitry and an embedded processor system
US6854043B2 (en) System and method for multi-modal memory controller system operation
EP1239374B1 (en) Shared program memory for use in multicore DSP devices

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120224

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120224

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130531

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130618

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130806

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130827

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130913

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20131001

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131008

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees