[go: up one dir, main page]

JP2007011938A - Semiconductor integrated circuit - Google Patents

Semiconductor integrated circuit Download PDF

Info

Publication number
JP2007011938A
JP2007011938A JP2005194818A JP2005194818A JP2007011938A JP 2007011938 A JP2007011938 A JP 2007011938A JP 2005194818 A JP2005194818 A JP 2005194818A JP 2005194818 A JP2005194818 A JP 2005194818A JP 2007011938 A JP2007011938 A JP 2007011938A
Authority
JP
Japan
Prior art keywords
address
nonvolatile memory
endian
bus
data
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.)
Withdrawn
Application number
JP2005194818A
Other languages
Japanese (ja)
Inventor
Masamichi Fujito
正道 藤戸
Isao Nakamura
功 中村
Takashi Iwase
貴司 岩瀬
Naomiki Mitsuishi
直幹 三ッ石
Naoki Otani
直己 大谷
Norihiko Fudeyasu
徳彦 筆保
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Renesas Technology Corp
Original Assignee
Renesas Technology Corp
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 Renesas Technology Corp filed Critical Renesas Technology Corp
Priority to JP2005194818A priority Critical patent/JP2007011938A/en
Publication of JP2007011938A publication Critical patent/JP2007011938A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Read Only Memory (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To prevent collective erasure of a non-volatile memory in an undesiredly large address range. <P>SOLUTION: This semiconductor integrated circuit has the non-volatile memory having electrically rewritable non-volatile memory cells. The non-volatile memory performs the erasure of storage information to the non-volatile memory cells in erasure block units having different size. The non-volatile memory has an endian conversion circuit 25 capable of selecting exchange between an upper bit and a lower bit to all bits of an address signal a0-ai inputted from an address input terminal. When it is possible to perform the exchange between the upper bit and the lower bit to all the bits of the inputted address signal even if endian of the non-volatile memory and endian of an access subject thereof differ, address allocation directions to a data area are equalized in both of the non-volatile memory and the access subject. Even if the erasure block size differs according to an address area, an address map of the erasure block does not differ between the non-volatile memory and the access subject. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

本発明は、半導体集積回路におけるエンディアン変換技術に関し、例えばフラッシュメモリと中央処理装置とを備えたデータプロセッサに適用して有効な技術に関する。   The present invention relates to an endian conversion technique in a semiconductor integrated circuit, for example, a technique effective when applied to a data processor including a flash memory and a central processing unit.

データ領域に対するアドレス割り当てには二通りの態様がある。その一つは、データ領域の下位側に小さなアドレスを割り当てるリトルエンディアン、もう一つはデータ領域の下位側に大きなアドレスを割り当てるビッグエンディアンである。データバス上におけるアドレス下位側からのデータ転送形態を考えれば、例えば複数バイトのデータを複数回に分けてバス上で転送するとき、リトルエンディアンでは順次下位バイトから転送し、ビッグエンディアンでは順次上位バイトから転送することになる。したがって、バスマスタとバススレーブとの間ではエンディアンの認識が一致しなければ誤動作を生ずる。   There are two modes for address assignment to the data area. One is a little endian that assigns a small address to the lower side of the data area, and the other is a big endian that assigns a large address to the lower side of the data area. Considering the form of data transfer from the lower address side on the data bus, for example, when transferring multiple bytes of data over the bus in multiple batches, little endian sequentially transfers from the lower byte, and big endian sequentially transfers the upper byte. Will be transferred from. Therefore, if the endian recognition does not match between the bus master and the bus slave, a malfunction occurs.

エンディアンの相違に対して特許文献1に記載の技術は、アドレスの下位2ビットをエンディアンモード信号と排他的論理和演算を行ってバス幅32ビット以下のデータバス上におけるデータ転送に対してビッグエンディアンとリトルエンディアンの双方に対応可能とするものである。特許文献2はアドレス下位1ビットに対して同様の手段を講ずることが記載される。双方の記載はマルチチップのメモリとCPUを接続するアドレスバスの途中に配置されるエンディアン変換器として位置付けられている。   With respect to the endian difference, the technique described in Patent Document 1 performs a big-endian operation for data transfer on a data bus having a bus width of 32 bits or less by performing an exclusive OR operation on the lower 2 bits of an address with an endian mode signal. And support for both little endian. Patent Document 2 describes that the same means is taken for the lower 1 bit of the address. Both descriptions are positioned as endian converters arranged in the middle of an address bus connecting a multi-chip memory and a CPU.

特開2004−355432号公報JP 2004-355432 A 特開2001−26150号公報JP 2001-26150 A

本発明者はデータ転送における転送元と転送先におけるエンディアンの整合だけでなく、フラッシュメモリの記憶領域などのデータ領域に対するエンディアンの整合について広く検討した。例えば、フラッシュメモリの記憶領域に対するCPUの論理アドレスの割り当てに対し、フラッシュメモリの物理アドレスマップがビッグエンディアンであるのかリトルエンディアンであるのかによって、CPUからの同じアクセスアドレスであっても、其れによって指定されるフラッシュメモリの物理エリアが相違することなる。このとき、フラッシュメモリには一括消去単位とされる消去ブロックのサイズがアドレスエリアによって相違されるものがある。そうすると、前記フラッシュメモリの物理アドレスマップのエンディアンが相違するもの同士の間では、消去動作で指定された同じ消去アドレスを含む消去ブロックのサイズが異なる場合がある。これによりエンディアンが相違するCPUとフラッシュメモリの間では、記憶情報の書き換えに際して、不所望に広いアドレス範囲で一括消去が行われる虞がある。その結果として、フラッシュメモリに書き込まれている情報が不所望に消去されてしまう虞がある。逆に、CPUは広いアドレス範囲について一括消去を行う予定であったところ、フラッシュメモリの狭いアドレス範囲の消去ブロックが消去対象とされ、その結果としてフラッシュメモリに書き込まれている情報が消去されずに残ってしまい、その後のフラッシュメモリへの書き込みが保証されない虞がある。そのため複数回の一括消去動作を行うことが必要となる。
これらの問題に対処するには、データバス上でのエンディアンの整合のようなバス幅に合わせた単なる下位側アドレスビットの論理値反転では足りない。
The present inventor has extensively studied not only endian matching at the transfer source and transfer destination in data transfer but also endian matching for the data area such as the storage area of the flash memory. For example, for the allocation of the CPU logical address to the storage area of the flash memory, even if the same access address from the CPU depends on whether the physical address map of the flash memory is big endian or little endian, The physical area of the specified flash memory will be different. At this time, some flash memories have different erase block sizes, which are used as a batch erase unit, depending on the address area. Then, there are cases where the sizes of erase blocks including the same erase address designated in the erase operation are different between those having different endian in the physical address map of the flash memory. As a result, between the CPU and the flash memory having different endians, there is a possibility that batch erasure is performed undesirably in a wide address range when rewriting stored information. As a result, information written in the flash memory may be erased undesirably. Conversely, when the CPU was scheduled to perform batch erasure over a wide address range, the erase block in the narrow address range of the flash memory is targeted for erasure, and as a result, the information written in the flash memory is not erased. There is a possibility that the writing to the flash memory is not guaranteed. Therefore, it is necessary to perform a batch erase operation a plurality of times.
In order to deal with these problems, it is not sufficient to simply invert the logical value of the lower address bits in accordance with the bus width such as endian matching on the data bus.

また、複数の回路モジュールをオンチップさせて半導体集積回路を設計しようとするとき、複数の回路モジュールにおけるエンディアンの相違に対して、エンディアンが相違する少数派回路モジュールに対して、内部データバスのバイト幅を表すのに必要なアドレスビット数分の下位アドレスとの接続をその都度修正して対処することができる。しかしながら、データ転送におけるエンディアン整合のためであっても、そのような対処法では、設計工数や検証工数が増えるばかりでなく、設計部品としての回路モジュールの種類が毎回増え、設計資産としての回路モジュールデータの管理も煩雑になってしまう。   In addition, when designing a semiconductor integrated circuit by putting a plurality of circuit modules on-chip, the byte of the internal data bus is used for a minority circuit module having a different endian in response to a difference in endian in the plurality of circuit modules. Connections with lower addresses corresponding to the number of address bits necessary to express the width can be corrected each time. However, even for endian matching in data transfer, such a countermeasure not only increases the design man-hours and verification man-hours, but also increases the types of circuit modules as design components each time, and circuit modules as design assets. Data management is also complicated.

本発明の目的は、不揮発性メモリに対し不所望に大きなアドレス範囲で一括消去が行われることを防止し、又は不所望に狭いアドレス範囲で一括消去が行われ複数回の一括消去動作を行わなければならなくなることを防止することができる半導体集積回路を提供することになる。   An object of the present invention is to prevent batch erasure of a non-volatile memory from an undesirably large address range, or to perform erasure multiple times in an undesirably narrow address range. A semiconductor integrated circuit capable of preventing the failure to be provided is provided.

本発明の別の目的は、エンディアンの整合のために設計工数や検証工数が増えたり、設計部品としての回路モジュールの種類が増えることを回避するのに資することができる半導体集積回路を提供することにある。   Another object of the present invention is to provide a semiconductor integrated circuit that can contribute to avoiding an increase in design man-hours and verification man-hours due to endian matching and an increase in the types of circuit modules as design parts. It is in.

本発明の更に別の目的は、入出力データの並列ビット数に拘らずエンディアンの変更に対応することができる半導体集積回路を提供することにある。   Still another object of the present invention is to provide a semiconductor integrated circuit that can cope with endian change regardless of the number of parallel bits of input / output data.

本発明の前記並びにその他の目的と新規な特徴は本明細書の記述及び添付図面から明らかになるであろう。   The above and other objects and novel features of the present invention will be apparent from the description of this specification and the accompanying drawings.

本願において開示される発明のうち代表的なものの概要を簡単に説明すれば下記の通りである。   The following is a brief description of an outline of typical inventions disclosed in the present application.

〔1〕本発明に係る半導体集積回路(1)は、電気的に記憶情報の書換えが可能にされる複数個の不揮発性メモリセル(13)を備えた不揮発性メモリ(4)を有する。前記不揮発性メモリは前記不揮発性メモリセルに対する記憶情報の消去をサイズの異なる消去ブロック(EB0〜EB4)単位で行う。前記不揮発性メモリは、そのアドレス入力端子から入力されるアドレス信号の全ビットに対する論理値反転を選択可能なエンディアン変換回路を有する。   [1] A semiconductor integrated circuit (1) according to the present invention includes a nonvolatile memory (4) including a plurality of nonvolatile memory cells (13) that can electrically rewrite stored information. The nonvolatile memory erases stored information in the nonvolatile memory cells in units of erase blocks (EB0 to EB4) having different sizes. The non-volatile memory has an endian conversion circuit capable of selecting logical value inversion for all bits of an address signal input from the address input terminal.

上記より、不揮発性メモリのエンディアンとそのアクセス主体のエンディアンとが相違する場合、エンディアン変換回路によって入力アドレス信号の全ビットに対する論理値反転を行えばよい。これにより、不揮発性メモリとそのアクセス主体との双方でデータ領域に対するアドレス割り当て方向が等しくなる。したがって、不揮発性メモリにおいて一括消去単位とされる消去ブロックのサイズがアドレスエリアによって相違されていても、サイズの異なる消去ブロックに対するアドレスマップが不揮発性メモリとそのアクセス主体との間で相違することはない。したがって、不揮発性メモリに対し不所望に大きなアドレス範囲で一括消去が行われることを防止し、又は不所望に狭いアドレス範囲で一括消去が行われ複数回の一括消去動作を行わなければならなくなることを防止することができる。   From the above, when the endian of the nonvolatile memory is different from the endian of the access subject, the logical value inversion for all the bits of the input address signal may be performed by the endian conversion circuit. As a result, the address allocation direction for the data area becomes equal in both the nonvolatile memory and the access subject. Therefore, even if the size of the erase block as a batch erase unit in the nonvolatile memory is different depending on the address area, the address map for the erase block having a different size is different between the nonvolatile memory and the access subject. Absent. Therefore, it is possible to prevent batch erasing from an undesirably large address range to a non-volatile memory, or to perform erasing multiple times in an undesirably narrow address range. Can be prevented.

さらに、複数の回路モジュールをオンチップさせて半導体集積回路を設計しようとするとき、不揮発性メモリが他の回路モジュールのエンディアンと相違する少数派回路モジュールであっても、不揮発性メモリがエンディアン変換回路を保有するから、不揮発性メモリの内部でアドレスの配線パターンを修正してビットの入れ換えを行うことを要しない。不揮発性メモリが保有するエンディアン変換回路に対してアドレス入れ換えの選択を行うだけでよい。エンディアン整合のために設計部品としての不揮発性メモリの種類を増やすことを要しない。   Furthermore, when designing a semiconductor integrated circuit by making a plurality of circuit modules on-chip, even if the nonvolatile memory is a minority circuit module different from the endian of another circuit module, the nonvolatile memory is an endian conversion circuit. Therefore, it is not necessary to modify the address wiring pattern in the nonvolatile memory and replace the bits. It is only necessary to select address replacement for the endian conversion circuit held in the nonvolatile memory. It is not necessary to increase the types of non-volatile memories as design parts for endian matching.

上記では全アドレスビットの論理値反転が可能であるから、下位アドレスで指定する最小データ語を最小消去単位とする場合にも対処することができる。データバス上で複数回に分けて転送されるデータの上位と下位の配置や転送順序もデータバスのビット数に係わらず揃えることができる。   In the above, since the logical values of all address bits can be inverted, it is possible to cope with the case where the minimum data word specified by the lower address is the minimum erase unit. The upper and lower arrangement and transfer order of data transferred in a plurality of times on the data bus can be aligned regardless of the number of bits of the data bus.

上記において、消去単位の最小サイズとデータバス幅とを考慮してエンディアン変換回路による論理値反転対象のアドレスビット数を最小とする場合には次のようにする。即ち、エンディアン変換回路は、前記不揮発性メモリのアドレス入力端子から入力されるアドレス信号のうち消去ブロックの最小データ語数を表すのに必要なビット数分の下位側アドレスよりも上位側の全アドレスビットと、前記不揮発性メモリのアドレス入力端子から入力されるアドレス信号のうち前記不揮発性メモリのデータ入出力端子で入出力される並列データ語数を表すのに必要なビット数分の下位側アドレスの全アドレスビットとに対する論理値反転を選択可能であればよい。   In the above, when the number of address bits to be inverted by the endian conversion circuit is minimized in consideration of the minimum size of the erase unit and the data bus width, the following is performed. That is, the endian conversion circuit generates all address bits higher than the lower address corresponding to the number of bits necessary to represent the minimum number of data words of the erase block in the address signal input from the address input terminal of the nonvolatile memory. And all the lower-order addresses corresponding to the number of bits necessary to represent the number of parallel data words input / output at the data input / output terminal of the nonvolatile memory among the address signals input from the address input terminal of the nonvolatile memory. Any logic inversion with respect to the address bits can be selected.

本発明の一つの具体的な形態として、前記不揮発性メモリにおける所定の不揮発性メモリセルは、前記エンディアン変換回路におけるアドレスビットの論理値反転を選択する制御データの記憶領域とされる。このとき前記不揮発性メモリは、例えばリセットの指示に応答して前記制御データを所定の不揮発性メモリセルから読出して前記エンディアン変換回路にセットすればよい。   As one specific form of the present invention, a predetermined nonvolatile memory cell in the nonvolatile memory serves as a storage area for control data for selecting a logical value inversion of an address bit in the endian conversion circuit. At this time, for example, the non-volatile memory may read the control data from a predetermined non-volatile memory cell in response to a reset instruction and set it in the endian conversion circuit.

またCPUとフラッシュメモリの物理的なエンディアンが一致している場合であっても、CPUで実行するプログラムの論理的なアドレス空間における消去単位のサイズの割り当てが、フラッシュメモリの物理的な消去単位と異なるような場合にも、フラッシュメモリのアドレス入れ替えを行うために前記エンディアン変換回路を有するようにしても良い。これにより、既存のプログラムの修正をすることなく適切な消去単位の割り当てを行うことが可能となる。   Even when the physical endian of the CPU and the flash memory match, the allocation of the erase unit size in the logical address space of the program executed by the CPU is the same as the physical erase unit of the flash memory. Even in different cases, the endian conversion circuit may be provided in order to replace the address of the flash memory. As a result, it is possible to assign an appropriate erasing unit without modifying an existing program.

〔2〕本発明の別の観点による半導体集積回路は、電気的に記憶情報の書換えが可能にされる複数個の不揮発性メモリセルを備えた不揮発性メモリと共に、前記不揮発性メモリをアクセス可能なデータ処理ユニットを有する。前記不揮発性メモリは前記不揮発性メモリセルに対する記憶情報の消去をサイズの異なる消去ブロック単位で行う。半導体集積回路は、前記データ処理ユニットから前記不揮発性メモリに内部アドレスバスで伝達されるアドレス信号の全ビットに対する論理値反転を選択可能な前記エンディアン変換回路を有する。   [2] A semiconductor integrated circuit according to another aspect of the present invention can access the non-volatile memory together with a non-volatile memory having a plurality of non-volatile memory cells that can electrically rewrite stored information. It has a data processing unit. The nonvolatile memory erases stored information from the nonvolatile memory cells in units of erase blocks having different sizes. The semiconductor integrated circuit includes the endian conversion circuit capable of selecting logical value inversion for all bits of an address signal transmitted from the data processing unit to the nonvolatile memory via an internal address bus.

上記より、不揮発性メモリのエンディアンとデータ処理ユニットのエンディアンとが相違する場合、エンディアン変換回路によって入力アドレス信号の全ビットに対する論理値反転を行えばよい。これにより、不揮発性メモリとデータ処理ユニットとの双方でデータ領域に対するアドレス割り当て方向が等しくなる。したがって、不揮発性メモリにおいて一括消去単位とされる消去ブロックのサイズがアドレスエリアによって相違されていても、サイズの異なる消去ブロックに対するアドレスマップが不揮発性メモリとデータ処理ユニットとの間で相違することはない。したがって、不揮発性メモリに対し不所望に大きなアドレス範囲で一括消去が行われることを防止することができる。   From the above, when the endian of the nonvolatile memory and the endian of the data processing unit are different, the logic value inversion for all bits of the input address signal may be performed by the endian conversion circuit. As a result, the address allocation direction for the data area is equal in both the nonvolatile memory and the data processing unit. Therefore, even if the size of the erase block as a batch erase unit in the nonvolatile memory is different depending on the address area, the address map for the erase block having a different size is different between the nonvolatile memory and the data processing unit. Absent. Therefore, it is possible to prevent batch erasing from being performed in an undesirably large address range with respect to the nonvolatile memory.

上記では全アドレスビットの論理値反転が可能であるから、下位アドレスで指定する最小データ語を最小消去単位とする場合にも対処することができる。データバス上で複数回に分けて転送されるデータの上位と下位の配置や転送順序もデータバスのビット数に係わらず揃えることができる。   In the above, since the logical values of all address bits can be inverted, it is possible to cope with the case where the minimum data word specified by the lower address is the minimum erase unit. The upper and lower arrangement and transfer order of data transferred in a plurality of times on the data bus can be aligned regardless of the number of bits of the data bus.

上記において、消去単位の最小サイズとデータバス幅とを考慮してエンディアン変換回路による論理値反転対象のアドレスビット数を最小とする場合には次のようにする。即ち、エンディアン変換回路は、前記不揮発性メモリのアドレス入力端子から入力されるアドレス信号のうち消去ブロックの最小データ語数を表すのに必要なビット数分の下位側アドレスよりも上位側の全アドレスビットと、前記不揮発性メモリのアドレス入力端子から入力されるアドレス信号のうち前記不揮発性メモリのデータ入出力端子で入出力される並列データ語数を表すのに必要なビット数分の下位側アドレスの全アドレスビットとに対する論理値反転を選択可能であればよい。   In the above, when the number of address bits to be inverted by the endian conversion circuit is minimized in consideration of the minimum size of the erase unit and the data bus width, the following is performed. That is, the endian conversion circuit generates all address bits higher than the lower address corresponding to the number of bits necessary to represent the minimum number of data words of the erase block in the address signal input from the address input terminal of the nonvolatile memory. And all the lower-order addresses corresponding to the number of bits necessary to represent the number of parallel data words input / output at the data input / output terminal of the nonvolatile memory among the address signals input from the address input terminal of the nonvolatile memory. Any logic inversion with respect to the address bits can be selected.

本発明の一つの具体的な形態として、前記不揮発性メモリにおける所定の不揮発性メモリセルは、前記エンディアン変換回路におけるアドレスビットの論理値反転を選択する制御データの記憶領域とされる。このとき前記不揮発性メモリは、例えばリセットの指示に応答して前記制御データを所定の不揮発性メモリセルから読出して前記エンディアン変換回路にセットすればよい。   As one specific form of the present invention, a predetermined nonvolatile memory cell in the nonvolatile memory serves as a storage area for control data for selecting a logical value inversion of an address bit in the endian conversion circuit. At this time, for example, the non-volatile memory may read the control data from a predetermined non-volatile memory cell in response to a reset instruction and set it in the endian conversion circuit.

本発明の更に具体的な形態として、前記不揮発性メモリ又はデータ処理ユニットが前記エンディアン変換回路を有する。これにより、複数の回路モジュールをオンチップさせて半導体集積回路を設計しようとするとき、エンディアンが相違する少数派回路モジュールに対して、内部データバスのバイト幅を表すのに必要なビット数分の下位側アドレスを配線パターンの修正によって入れ換えることを要しない。不揮発性メモリ又はデータ処理ユニットが保有するエンディアン変換回路に対してアドレスビットの論理値反転の選択を行うだけでよい。エンディアン整合のために設計部品としての不揮発性メモリ及びデータ処理ユニットの種類を増やすことを要しない。   As a more specific form of the present invention, the nonvolatile memory or the data processing unit includes the endian conversion circuit. As a result, when designing a semiconductor integrated circuit by making a plurality of circuit modules on-chip, for the minority circuit modules having different endians, the number of bits required to represent the byte width of the internal data bus is obtained. It is not necessary to replace the lower address by modifying the wiring pattern. It is only necessary to select the logical value inversion of the address bits for the endian conversion circuit possessed by the nonvolatile memory or the data processing unit. It is not necessary to increase the types of nonvolatile memories and data processing units as design parts for endian matching.

〔3〕本発明の更に別の観点による半導体集積回路は、半導体基板上に、内部バスと、前記内部バスに結合されたバスマスタモジュール及びバススレーブモジュールとを有する。バスマスタモジュール又はバススレーブモジュールはエンディアン変換回路を有する。このエンディアン変換回路は、バススレーブモジュールのデータ領域に対するアドレス割り当てに関し、データ領域の下位側に小さなアドレスを割り当てるリトルエンディアンと、データ領域の下位側に大きなアドレスを割り当てるビッグエンディアンとを選択的に切換え可能にする。   [3] A semiconductor integrated circuit according to still another aspect of the present invention includes an internal bus and a bus master module and a bus slave module coupled to the internal bus on a semiconductor substrate. The bus master module or the bus slave module has an endian conversion circuit. This endian conversion circuit can selectively switch between a little endian that assigns a small address to the lower side of the data area and a big endian that assigns a large address to the lower side of the data area for address assignment to the data area of the bus slave module. To.

バスマスタモジュール又はバススレーブモジュールはエンディアン変換回路を有するから、この半導体集積回路を設計しようとするとき、エンディアンが相違する少数派回路モジュールに対して、内部データバスのバイト幅に応じたビット数の下位側アドレスを配線パターンの修正に対して入れ換えることを要しない。不揮発性メモリ又はデータ処理ユニットが保有するエンディアン変換回路に対してエンディアンの切換えを選択するだけでよい。エンディアン整合のために設計部品としてのバスマスタモジュール又はバススレーブモジュールの種類を増やすことを要しない。   Since the bus master module or the bus slave module has an endian conversion circuit, when trying to design this semiconductor integrated circuit, a minority circuit module having a different endian is used to lower the number of bits corresponding to the byte width of the internal data bus. It is not necessary to replace the side address for the correction of the wiring pattern. It is only necessary to select endian switching for the endian conversion circuit held in the nonvolatile memory or the data processing unit. It is not necessary to increase the types of bus master modules or bus slave modules as design parts for endian matching.

本発明の一つの具体的な形態として、前記エンディアン変換回路は、内部バスで伝達されるアドレス信号の全ビットに対する論理値反転を選択可能である。これにより、バスマスタモジュールとバススレーブモジュールとの双方でデータ領域に対するアドレス割り当て方向が等しくなる。   As one specific form of the present invention, the endian conversion circuit can select logical value inversion for all bits of an address signal transmitted through an internal bus. As a result, the address allocation direction for the data area is equal in both the bus master module and the bus slave module.

本発明の別の具体的な形態として、前記エンディアン変換回路は、内部バスで伝達されるアドレス信号のうち、内部バスで伝達される並列データ語数を表すのに必要なアドレスビット数分の下位側アドレスの全アドレスビットの論理値反転を選択可能である。内部バスを介して複数回に分けて転送されるデータの上位と下位の順序が逆転する場合にも簡単に対処することができる。   As another specific form of the present invention, the endian conversion circuit includes, on the lower side, the number of address bits necessary to represent the number of parallel data words transmitted on the internal bus among the address signals transmitted on the internal bus. The logical value inversion of all address bits of the address can be selected. It is possible to easily cope with the case where the upper and lower orders of data transferred in multiple times via the internal bus are reversed.

本発明の更に別の具体的な形態として、前記バススレーブモジュールは電気的に記憶情報の書換えが可能にされる複数個の不揮発性メモリセルを備えた不揮発性メモリである。前記バスマスタモジュールは前記不揮発性メモリをアクセス可能なデータ処理ユニットである。前記不揮発性メモリは前記不揮発性メモリセルに対する記憶情報の消去をサイズの異なる消去ブロック単位で行う。前記エンディアン変換回路は、内部バスで伝達されるアドレス信号のうち消去ブロックの最小データ語数を表すのに必要なビット数分の下位側アドレスよりも上位側の全アドレスビットと、内部バスで伝達されるアドレス信号のうち内部バスで伝達される並列データ語数を表すのに必要なビット数分の下位側アドレスの全アドレスビットとに対する論理値反転を選択可能である。これにより、不揮発性メモリにおいて一括消去単位とされる消去ブロックのサイズがアドレスエリアによって相違されていても、サイズの異なる消去ブロックに対するアドレスマップが不揮発性メモリとそのアクセス主体との間で相違することはない。したがって、不揮発性メモリに対し不所望に大きなアドレス範囲で一括消去が行われることを防止することができる。   As yet another specific form of the present invention, the bus slave module is a non-volatile memory including a plurality of non-volatile memory cells in which stored information can be electrically rewritten. The bus master module is a data processing unit that can access the nonvolatile memory. The nonvolatile memory erases stored information from the nonvolatile memory cells in units of erase blocks having different sizes. The endian conversion circuit transmits all the address bits higher than the lower address corresponding to the number of bits required to represent the minimum number of data words of the erase block among the address signals transmitted on the internal bus, and is transmitted on the internal bus. It is possible to select logical value inversion with respect to all address bits of lower addresses corresponding to the number of bits necessary to represent the number of parallel data words transmitted through the internal bus. As a result, even if the size of the erase block as a batch erase unit in the nonvolatile memory is different depending on the address area, the address map for the erase block having a different size is different between the nonvolatile memory and the access subject. There is no. Therefore, it is possible to prevent batch erasing from being performed in an undesirably large address range with respect to the nonvolatile memory.

本発明の更に具体的な形態として、前記不揮発性メモリにおける所定の不揮発性メモリセルは、前記エンディアン変換回路におけるアドレスビットの論理値反転を選択する制御データの記憶領域とされる。このとき、前記不揮発性メモリはリセットの指示に応答して前記制御データを所定の不揮発性メモリセルから読出して前記エンディアン変換回路にセットすればよい。   As a more specific form of the present invention, a predetermined nonvolatile memory cell in the nonvolatile memory serves as a storage area for control data for selecting logical value inversion of address bits in the endian conversion circuit. At this time, the nonvolatile memory may read the control data from a predetermined nonvolatile memory cell in response to a reset instruction and set it in the endian conversion circuit.

本発明の更に具体的な形態として、ビッグエンディアンとリトルエンディアンが混在した前記バススレーブモジュールとバスマスタモジュールとの中でエンディアンが異なる少数派モジュールが前記エンディアン変換回路を有する。   As a more specific form of the present invention, a minority module having a different endian among the bus slave module and the bus master module in which big endian and little endian are mixed has the endian conversion circuit.

〔4〕本発明の更に別の観点による半導体集積回路は、複数の不揮発性メモリセルを備えた不揮発性メモリ(4)と、前記不揮発性メモリにアドレスバス及びデータバスを介してアクセス可能な複数の回路モジュールとを有する。第1の回路モジュール(2)は、前記データバスを介して第1の不揮発性メモリセルへアクセスするために第1アドレス情報を前記アドレスバスに出力する。第2の回路モジュール(3)は、前記データバスを介して前記第1の不揮発性メモリセルへアクセスするために第2アドレス情報を前記アドレスバスに出力する。そして、第1状態信号に応じて前記第2アドレス情報を前記第1アドレス情報へ変換し、第2状態信号に応じて変換を行わない制御を行う変換器(25A)を有する。   [4] A semiconductor integrated circuit according to still another aspect of the present invention includes a non-volatile memory (4) having a plurality of non-volatile memory cells, and a plurality of non-volatile memories accessible via an address bus and a data bus. Circuit module. The first circuit module (2) outputs first address information to the address bus for accessing the first nonvolatile memory cell via the data bus. The second circuit module (3) outputs second address information to the address bus for accessing the first nonvolatile memory cell via the data bus. And it has a converter (25A) which performs control which converts the 2nd address information into the 1st address information according to the 1st status signal, and does not convert according to the 2nd status signal.

具体的な形態として、前記第1の回路モジュールは前記第2状態信号を出力し、前記第2の回路モジュールは前記第1状態信号を出力する。   As a specific form, the first circuit module outputs the second state signal, and the second circuit module outputs the first state signal.

具体的な形態として、前記不揮発性メモリは、前記第1アドレス情報の入力に応じて、前記第1アドレス情報に含まれる第1ロウアドレス情報と第1カラムアドレス情報とから前記第1の不揮発性メモリセルを選択する。   As a specific form, the non-volatile memory may generate the first non-volatile memory from first row address information and first column address information included in the first address information in response to input of the first address information. Select a memory cell.

本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記の通りである。   The effects obtained by the representative ones of the inventions disclosed in the present application will be briefly described as follows.

すなわち、不揮発性メモリに対し不所望に大きなアドレス範囲で一括消去が行われることを防止することができる。   That is, it is possible to prevent the batch erase from being performed in an undesirably large address range with respect to the nonvolatile memory.

エンディアンの整合のために設計工数や検証工数が増えたり、設計部品としての回路モジュールの種類が増えることを回避するのに資することができる。   This can contribute to avoiding an increase in design man-hours and verification man-hours due to endian matching, and an increase in the types of circuit modules as design parts.

アドレス信号の全ビットに対し上位と下位の入れ換えが可能であることにより、入出力データの並列ビット数に拘らずエンディアンの変更に対応することができる。   Since all the bits of the address signal can be exchanged between upper and lower, it is possible to cope with endian changes regardless of the number of parallel bits of input / output data.

図2には半導体集積回路の一例としてデータプロセッサを示す。データプロセッサを構成する回路素子は、公知のCMOS(相補型MOSトランジスタ)やバイポーラトランジスタ等の半導体集積回路技術によって、単結晶シリコンのような1個の半導体基板上に形成される。   FIG. 2 shows a data processor as an example of a semiconductor integrated circuit. The circuit elements constituting the data processor are formed on a single semiconductor substrate such as single crystal silicon by a known semiconductor integrated circuit technology such as a CMOS (complementary MOS transistor) or a bipolar transistor.

データプロセッサ(MPU)1はバスマスタモジュールとして代表的に示された中央処理装置(CPU)2とダイレクトメモリアクセスコントローラ(DMAC)3を有する。データプロセッサ1はバススレーブモジュールとして、代表的に示された不揮発性メモリとしてのフラッシュメモリ(FLASH)4、ランダムアクセスメモリ(RAM)5、タイマ(TMR)6、フェーズロックドループ回路(PLL)7、ポート回路(PRT)8,9を有する。それら回路モジュール2〜9は内部バス10を共有する。内部バス10はアドレス、データ、及びバス制御信号等の信号線の集合とされる。   The data processor (MPU) 1 has a central processing unit (CPU) 2 and a direct memory access controller (DMAC) 3 which are representatively shown as a bus master module. As a bus slave module, the data processor 1 typically includes a flash memory (FLASH) 4, a random access memory (RAM) 5, a timer (TMR) 6, a phase-locked loop circuit (PLL) 7, which are typically shown as nonvolatile memories. Port circuits (PRT) 8 and 9 are provided. These circuit modules 2 to 9 share the internal bus 10. The internal bus 10 is a set of signal lines for address, data, and bus control signals.

CPU2は命令実行手順を制御する命令制御部と、命令制御部からの制御信号に基づいてメモリアクセスや演算を行って命令を実行する命令実行部を有する。RAM5はCPU2のワーク領域若しくはデータの一時記憶領域に用いられる。DMAC3はCPU2による初期設定に基づいてメモリアクセス等のためのアクセス制御を行う。PLL7は端子XTAL/EXTALに接続された振動子で生成される原発振に基づいてCPU2等の動作基準クロックを生成する。ポート回路8,9は外部とのインタフェースに用いられる。タイマ6はカウントアップやインプットキャプチャ等によるタイマ動作を行う。フラッシュメモリ4はプログラムやデータの保持に利用される。Vccは外部電源端子、Vssは外部接地端子、STBYはスタンバイ信号、RESはリセット信号である。   The CPU 2 includes an instruction control unit that controls an instruction execution procedure, and an instruction execution unit that executes a command by performing memory access or calculation based on a control signal from the instruction control unit. The RAM 5 is used as a work area for the CPU 2 or a temporary storage area for data. The DMAC 3 performs access control for memory access and the like based on the initial setting by the CPU 2. The PLL 7 generates an operation reference clock for the CPU 2 or the like based on the original oscillation generated by the vibrator connected to the terminals XTAL / EXTAL. The port circuits 8 and 9 are used for an interface with the outside. The timer 6 performs a timer operation such as counting up or input capture. The flash memory 4 is used for holding programs and data. Vcc is an external power supply terminal, Vss is an external ground terminal, STBY is a standby signal, and RES is a reset signal.

図3にはフラッシュメモリ4の一例が示される。フラッシュメモリ4は多数の不揮発性メモリセルがマトリクス状に配置されたメモリアレイ(MARY)12を有する。図には代表的に1個の不揮発性メモリセル13が示される。同図に例示される不揮発性メモリセル13は、特に制限されないが、2層ゲート構造の絶縁ゲート型のnチャンネル電界効果トランジスタにより構成されている。この不揮発性メモリセル13は、例えばソースとドレインの間のチャネル形成領域の上にトンネル絶縁膜としての薄いゲート酸化膜を介してフローティングゲートを有し、その上に、絶縁膜を介してコントロールゲートを備える。この不揮発性メモリセル13への情報の書込み動作は、例えばコントロールゲート及びドレインに高圧を印加して、アバランシェ注入によりドレイン側からフローティングゲートに電子を注入することで実現される。この書込み動作により不揮発性メモリセルはそのコントロールゲートからみた閾値電圧が、書込み動作を行わなかった消去状態の閾値電圧に比べて高くされる。一方消去動作は、例えばソースに高圧を印加して、トンネル現象によりフローティングゲートからソース側に電子を引き抜くことによって実現される。消去動作により不揮発性メモリセルはそのコントロールゲートからみた閾値電圧が低くされる。読み出し動作は、消去状態の不揮発性メモリセルの閾値電圧分布と、書込み状態の不揮発性メモリセルの閾値電圧分布との間のワード線選択レベルをコントロールゲートに与えることによって行われる。   FIG. 3 shows an example of the flash memory 4. The flash memory 4 has a memory array (MARY) 12 in which a large number of nonvolatile memory cells are arranged in a matrix. In the figure, one nonvolatile memory cell 13 is typically shown. The non-volatile memory cell 13 illustrated in the figure is configured by an insulated gate n-channel field effect transistor having a two-layer gate structure, although not particularly limited. The nonvolatile memory cell 13 has, for example, a floating gate on a channel formation region between a source and a drain through a thin gate oxide film as a tunnel insulating film, and a control gate on the insulating gate. Is provided. This information writing operation to the non-volatile memory cell 13 is realized, for example, by applying a high voltage to the control gate and drain and injecting electrons from the drain side to the floating gate by avalanche injection. By this writing operation, the threshold voltage of the nonvolatile memory cell viewed from the control gate is made higher than the threshold voltage in the erased state where the writing operation is not performed. On the other hand, the erase operation is realized, for example, by applying a high voltage to the source and extracting electrons from the floating gate to the source side by a tunnel phenomenon. The threshold voltage seen from the control gate of the nonvolatile memory cell is lowered by the erase operation. The read operation is performed by giving the control gate a word line selection level between the threshold voltage distribution of the nonvolatile memory cell in the erased state and the threshold voltage distribution of the nonvolatile memory cell in the written state.

不揮発性メモリセル13のドレインは列毎にビット線BLに接続され、コントロールゲートは行単位でワード線WLに接続される。不揮発性メモリセルのソースは一括消去単位とされる消去ブロック毎に共通のソース線SLに接続される。図3においてワード線WL、ビット線BL及びソース線SLは各1本図示しあるが、実際にはメモリアレイ12の希望に応じて多数配置されている。   The drain of the nonvolatile memory cell 13 is connected to the bit line BL for each column, and the control gate is connected to the word line WL in units of rows. The source of the nonvolatile memory cell is connected to a common source line SL for each erase block which is a batch erase unit. In FIG. 3, one word line WL, one bit line BL, and one source line SL are shown, but in actuality, a large number are arranged as desired in the memory array 12.

ソース線SL及びワード線WLに対する電圧駆動はドライバ回路(DRV)14が行う。アドレスデコーダ15は内部バス10に含まれるアドレスバスABUSからロウアドレス信号受け、このロウアドレス信号をデコードして、ドライバ回路14によって駆動すべきワード線WLの選択やソース線SLの選択を行う。   The driver circuit (DRV) 14 performs voltage driving for the source line SL and the word line WL. The address decoder 15 receives a row address signal from the address bus ABUS included in the internal bus 10, decodes the row address signal, and selects a word line WL to be driven by the driver circuit 14 and a source line SL.

前記ビット線BLは一方においてカラムスイッチアレイ(CSWA)16を介してセンスアンプアレイ(SAA)17に接続し、他方において書込みラッチ回路(PLAT)18に接続する。センスアンプアレイ17はデータ入出力回路(DIO)19に接続される。前記アドレスデコーダ15は内部バス10に含まれるアドレスバスABUSからカラムアドレス信号受け、このカラムアドレス信号をデコードして、カラムスイッチアレイ16の選択信号を形成する。カラムスイッチアレイ16はカラム選択信号で選択されたビット線BLをセンスアンプアレイ17に導通させる。センスアンプアレイ17は読出し動作において不揮発性メモリセルからビット線に読み出された記憶情報のうちカラムスイッチアレイ16で選択されたものをセンスして増幅する。センスアンプアレイ17でセンス・増幅された記憶情報はデータ入出力回路19から内部バス10のデータバスDBUSに出力される。データバスDBUSからデータ入出力回路19に入力された書込みデータはカラムスイッチアレイ16で選択されたビット線を介して書き込みラッチ回路18にラッチされる。書込み動作は書込みラッチ回路18にラッチされたデータに基づいてワード線単位で行われる。   The bit line BL is connected to a sense amplifier array (SAA) 17 via a column switch array (CSWA) 16 on one side and to a write latch circuit (PLAT) 18 on the other side. The sense amplifier array 17 is connected to a data input / output circuit (DIO) 19. The address decoder 15 receives a column address signal from the address bus ABUS included in the internal bus 10 and decodes the column address signal to form a selection signal for the column switch array 16. The column switch array 16 conducts the bit line BL selected by the column selection signal to the sense amplifier array 17. The sense amplifier array 17 senses and amplifies the information selected by the column switch array 16 among the storage information read from the nonvolatile memory cells to the bit lines in the read operation. The storage information sensed and amplified by the sense amplifier array 17 is output from the data input / output circuit 19 to the data bus DBUS of the internal bus 10. Write data input from the data bus DBUS to the data input / output circuit 19 is latched by the write latch circuit 18 via the bit line selected by the column switch array 16. The write operation is performed in units of word lines based on the data latched by the write latch circuit 18.

電圧生成回路(VPPG)21は電源電圧Vccを昇圧して、消去及び書込みに必要な高電圧を生成する。メモリ制御回路(MCNT)22はデータバスDBUSからアクセスコマンドを受け取り、そのコマンドによる指示に従って、消去、書込み、及び読出しの各々の動作に必要な電源の供給、アドレスデコード、データの入出力、データラッチ等の動作手順を制御する。23はそのための制御信号を総称する。   A voltage generation circuit (VPPG) 21 boosts the power supply voltage Vcc to generate a high voltage necessary for erasing and writing. A memory control circuit (MCNT) 22 receives an access command from the data bus DBUS, and supplies power, address decoding, data input / output, and data latch necessary for each of erase, write, and read operations according to an instruction by the command. The operation procedure is controlled. 23 is a generic name for control signals for that purpose.

ここでエンディアンについて説明する。例えばリトルエンディアンとはデータ領域の物理的な領域の下位側に小さなアドレスを割り当てることである。ビッグエンディアンとはデータ領域の物理的な領域の下位側に大きなアドレスを割り当てることである。例えば図4のデータ領域を想定する。データ領域はメモリ領域のようなストレージ上であっても、バス信号線上であっても、何れを考えてもよい。例えばアドレスH’0000から始まる領域にデータH’01234567を格納する場合を例とする。ビッグエンディアンは下位領域(データH’67)LSBに大きなアドレスH’0003が割り当てられる。リトルエンディアンは上位領域(データH’01)MSBに大きなアドレスH’0003が割り当てられる。   Here, endian will be described. For example, little endian is to assign a small address to the lower side of the physical area of the data area. Big endian is to assign a large address to the lower side of the physical area of the data area. For example, assume the data area of FIG. The data area may be either a storage such as a memory area or a bus signal line. For example, a case where data H′01234567 is stored in an area starting from the address H′0000 is taken as an example. In the big endian, a large address H′0003 is assigned to the lower area (data H′67) LSB. In the little endian, a large address H'0003 is assigned to the upper area (data H'01) MSB.

データ領域に対するアドレス割り当てがビッグエンディアンのとき、図5に例示されるように、そのデータ領域に対するアクセスアドレスの論理値を全ビット反転すると、そのデータ領域に対するアドレス割り当ては見掛け上リトルエンディアンと同じになる。   When the address assignment for the data area is big endian, as shown in FIG. 5, if the logical value of the access address for the data area is inverted for all bits, the address assignment for the data area is apparently the same as little endian. .

フラッシュメモリ4のメモリアレイの記憶領域に対するエンディアンについて説明する。例えば図6のようにフラッシュメモリ4の消去ブロックをEB0〜EB4とする。EB0を下位領域とする。CPU2から見たフラッシュメモリ4の論理アドレスマップを例えばリトルエンディアンとする。要するに、CPU2はデータ領域に対するアドレス割り当てをリトルエンディアンとして認識する。特に図示はしないが、データ領域に対するアドレス割り当ての認識がビッグエンディアンのCPUも当然存在する。このとき、フラッシュメモリ4の物理アドレスマップも同じく、リトルエンディアンであるものもあれば、ビッグエンディアンであるものもある。   The endian for the storage area of the memory array of the flash memory 4 will be described. For example, as shown in FIG. 6, the erase blocks of the flash memory 4 are designated as EB0 to EB4. Let EB0 be the lower area. The logical address map of the flash memory 4 as viewed from the CPU 2 is, for example, little endian. In short, the CPU 2 recognizes address assignment for the data area as little endian. Although not specifically illustrated, there is naturally a big endian CPU that recognizes address assignment to a data area. At this time, the physical address map of the flash memory 4 may be little endian and may be big endian.

特に、バスマスタとしてのCPU2とバススレーブのフラッシュメモリ4との間では、データバスDBUS上でのデータの並びの他に、消去ブロックのサイズが相違することに注意しなければならない。例えばデータバスDBUSが32ビットのとき、バイトアドレスに対するデータの並びは、ビッグエンディアンとリトルエンディアンでは逆になる。よってデータ転送に伴うデータの順序が転送元と転送先で一致するには双方でエンディアンが統一されていることが必要になる。フラッシュメモリ4に対する書込みや読出しについては、データバス上でのデータの並びに関するエンディアンの認識がバスマスタとバススレーブとの間で一致していれば問題ない。消去ブロックの指定をアドレスで行う場合、消去コマンドや書き換えコマンドに付随するアドレスが含まれる消去ブロックを一括消去対象とする。このとき、CPU2のエンディアンとフラッシュメモリ4のエンディアンが不一致であれば、CPU2が想定する消去範囲よりも広い範囲で消去が行われる虞がある。例えば図6の例では、CPU2のエンディアンとフラッシュメモリ4のエンディアンが不一致の時、CPU2が消去ブロックEB0の消去アドレスを指定しても、その消去アドレスはフラッシュメモリ4上では消去ブロックEB4に対応され、アドレスH’2000〜H’8000の範囲で不所望に消去が行われることになる。
その逆の場合としてCPU2が消去ブロックEB4の消去アドレスを指定しても、その消去アドレスはフラッシュメモリ4上では消去ブロックEB0に対応され、CPU2はアドレスH‘0000〜H’8000を消去する予定が、フラッシュメモリ4上のアドレスH‘0000〜H’2000のみが消去されることとなり、H‘2000〜H’8000が未消去のままとなる。CPU2がアドレスH‘3000が消去済みであると認識してデータの書き込みを行おうとしても、フラッシュメモリ4のアドレスH’3000は未消去であるため、そこにデータを書き込んだとしても書き込まれたデータは保証されないことになる。そのため、CPU2は残りの消去ブロックEB1〜EB3のそれぞれを消去することが必要となる。
またCPU2の論理アドレスマップとフラッシュメモリ4の物理アドレスマップとの不一致の理由がエンディアンの不一致である場合だけでなく、CPU2で実行するプログラムにおける論理的な消去ブロックの割り当てがフラッシュメモリ4の物理アドレスマップと一致していないことも考えられる。これはCPU4の論理アドレス全体のエンディアンとフラッシュメモリ4の物理アドレスのエンディアンが一致していても、CPU4がフラッシュメモリ4に割り当てた論理アドレス局所に限定する限りではエンディアンが一致していないために一括消去ブロックの割り当てに不都合が生じていると見なすことが可能となる。
In particular, it should be noted that the size of the erase block differs between the CPU 2 as the bus master and the flash memory 4 as the bus slave in addition to the arrangement of data on the data bus DBUS. For example, when the data bus DBUS is 32 bits, the data arrangement with respect to the byte address is reversed between big endian and little endian. Therefore, in order for the order of data accompanying data transfer to coincide between the transfer source and the transfer destination, the endian needs to be unified on both sides. There is no problem with writing to and reading from the flash memory 4 as long as the endian recognition regarding the arrangement of data on the data bus matches between the bus master and the bus slave. When an erase block is designated by an address, an erase block including an address accompanying an erase command or a rewrite command is set as a batch erase target. At this time, if the endian of the CPU 2 and the endian of the flash memory 4 do not match, there is a possibility that the erasure is performed in a wider range than the erasure range assumed by the CPU 2. For example, in the example of FIG. 6, when the endian of the CPU 2 and the endian of the flash memory 4 do not match, even if the CPU 2 designates the erase address of the erase block EB0, the erase address corresponds to the erase block EB4 on the flash memory 4. Thus, erasure is undesirably performed in the range of addresses H′2000 to H′8000.
In the opposite case, even if the CPU 2 designates the erase address of the erase block EB4, the erase address corresponds to the erase block EB0 on the flash memory 4, and the CPU 2 intends to erase the addresses H'0000 to H'8000. Only the addresses H'0000 to H'2000 on the flash memory 4 are erased, and H'2000 to H'8000 remain unerased. Even if the CPU 2 recognizes that the address H'3000 has been erased and tries to write data, the address H'3000 of the flash memory 4 has not been erased, so even if data was written there, it was written. Data will not be guaranteed. Therefore, the CPU 2 needs to erase each of the remaining erase blocks EB1 to EB3.
Further, not only when the reason why the logical address map of the CPU 2 and the physical address map of the flash memory 4 do not match is the endian mismatch, the logical erase block allocation in the program executed by the CPU 2 is the physical address of the flash memory 4. It is also possible that it does not match the map. Even if the endian of the entire logical address of the CPU 4 and the endian of the physical address of the flash memory 4 match, the endian does not match as long as it is limited to the local logical address assigned to the flash memory 4 by the CPU 4. It can be considered that there is an inconvenience in allocation of erase blocks.

上記一括消去ブロックのサイズが相違する場合の不都合を解消するために、例えばフラッシュメモリ4は図3に例示されるようにエンディアン変換回路(EDCVT)25を備える。エンディアン変換回路25はアドレスバスからアドレス入力端子に入力されるアドレス信号の全ビットに対し上位と下位の入れ換えを選択可能とする。   In order to eliminate the inconvenience when the sizes of the batch erase blocks are different, for example, the flash memory 4 includes an endian conversion circuit (EDCVT) 25 as illustrated in FIG. The endian conversion circuit 25 enables selection between high-order and low-order replacement for all bits of the address signal input from the address bus to the address input terminal.

図1にはエンディアン変換回路25の一例が示される。エンディアン変換回路25はアドレスビットa0〜aiの全ビットにビット対応で設けられた2入力形式の排他的論理和ゲート(EXOR)26を有する。図には代表的にa0〜a2の3ビット分の構成が例示される。排他的論理和ゲート(EXOR)26の一方の入力には対応するアドレスビットが入力され、他方にはエンディアン制御信号φESが共通に入力される。エンディアン制御信号φESが論理値0の時、出力b0〜biはa0〜aiに等しくされる。エンディアン制御信号φESが論理値1の時、出力b0〜biの各ビットはa0〜aiの各ビットの反転信号とされる。図1に示されたアドレスデコーダ15のアドレスデコード論理は例えばビッグエンディアンとされている。X0〜X7はワード線WLであり、データ領域の下位側よりX0が割り当てられている。したがって、フラッシュメモリ4はエンディアン制御信号φESが論理値0の時ビッグエンディアン、論理値1のときリトルエンディアンとされる。図7には図1に則したエンディアン変換回路25の動作形態が例示される。   FIG. 1 shows an example of the endian conversion circuit 25. The endian conversion circuit 25 has a two-input exclusive OR gate (EXOR) 26 provided corresponding to all the address bits a0 to ai. In the figure, a configuration of three bits a0 to a2 is typically illustrated. A corresponding address bit is input to one input of the exclusive OR gate (EXOR) 26, and an endian control signal φES is input to the other input in common. When the endian control signal φES is a logical value 0, the outputs b0 to bi are made equal to a0 to ai. When the endian control signal φES is a logical value 1, each bit of the outputs b0 to bi is an inverted signal of each bit of a0 to ai. The address decoding logic of the address decoder 15 shown in FIG. 1 is, for example, big endian. X0 to X7 are word lines WL, and X0 is assigned from the lower side of the data area. Accordingly, the flash memory 4 is set to big endian when the endian control signal φES is a logical value 0 and is set to little endian when the logical value 1 is 1. FIG. 7 illustrates an operation mode of the endian conversion circuit 25 in accordance with FIG.

上記エンディアン変換回路25を採用することにより、フラッシュメモリ4のエンディアンとそのアクセス主体であるCPU2のエンディアンとが相違する場合、エンディアン変換回路25によって入力アドレス信号の全ビットに対し上位と下位の入れ換えを行えばよい。これにより、フラッシュメモリ4とCPU2との双方でデータ領域に対するアドレス割り当て方向が等しくなる。したがって、フラッシュメモリ4において一括消去単位とされる消去ブロックのサイズがアドレスエリアによって相違されていても、サイズの異なる消去ブロックに対するアドレスマップがフラッシュメモリ4とCPU2との間で相違することはない。したがって、フラッシュメモリ4に対し不所望に広いアドレス範囲で一括消去が行われ、または不所望に狭いアドレス範囲で一括消去が行われることを防止することができる。   By adopting the endian conversion circuit 25, when the endian of the flash memory 4 is different from the endian of the CPU 2 which is the main subject of access, the endian conversion circuit 25 replaces the upper and lower bits for all bits of the input address signal. Just do it. Thereby, both the flash memory 4 and the CPU 2 have the same address allocation direction for the data area. Therefore, even if the size of the erase block as a batch erase unit in the flash memory 4 is different depending on the address area, the address map for the erase block having a different size does not differ between the flash memory 4 and the CPU 2. Therefore, it is possible to prevent batch erasure from being performed on the flash memory 4 in an undesirably wide address range or from being performed in an undesirably narrow address range.

さらに、複数の回路モジュールをオンチップさせてデータプロセッサ1を設計しようとするとき、フラッシュメモリ4が他の回路モジュールのエンディアンと相違する少数派回路モジュールであっても、フラッシュメモリ4がエンディアン変換回路25を保有するから、フラッシュメモリ4の内部でアドレスの配線パターンを修正してアドレスビットの入れ換えを行うことを要しない。フラッシュメモリ4が保有するエンディアン変換回路25に対してアドレスビットの論理値反転の選択を行うだけでよい。エンディアン整合のために設計部品としてのフラッシュメモリの種類を増やすことを要しない。エンディアン変換回路25を採用しない場合には、ビッグエンディアン用には図8のアドレスデコーダを持つフラッシュメモリ、リトルエンディアン用には図9のアドレスデコーダを持つフラッシュメモリを別々に用意しなければならなくなる。   Further, when the data processor 1 is designed by on-chip a plurality of circuit modules, even if the flash memory 4 is a minority circuit module that is different from the endian of another circuit module, the flash memory 4 is an endian conversion circuit. Therefore, it is not necessary to modify the address wiring pattern in the flash memory 4 and replace the address bits. It is only necessary to select the logical value inversion of the address bits for the endian conversion circuit 25 held in the flash memory 4. It is not necessary to increase the types of flash memory as design parts for endian matching. When the endian conversion circuit 25 is not employed, it is necessary to separately prepare a flash memory having the address decoder of FIG. 8 for the big endian and a flash memory having the address decoder of FIG. 9 for the little endian.

前記エンディアン変換回路25の例では、入力アドレスa0〜aiの全ビットに対する論理値反転が可能であるから、下位アドレスで指定する最小データ語であるバイトを最小消去単位とする場合にも対処することができる。32ビットのデータバスDBUS上におけるバイトデータの上位と下位の配置順に対してもデータバスDBUSのビット数に係わらず揃えることができる。   In the example of the endian conversion circuit 25, the logical value can be inverted for all the bits of the input addresses a0 to ai. Can do. The upper and lower arrangement orders of the byte data on the 32-bit data bus DBUS can be aligned regardless of the number of bits of the data bus DBUS.

図10には必要最小限のアドレスビットだけを選択的に反転する場合の例を示す。図10の例は消去ブロックの最小サイズが2キロバイト(KB)、データバス幅が64ビットの例である。アドレスはa0〜a31の32ビットのバイトアドレスとする。消去ブロックの最小サイズである2キロバイト(KB)を表すのに必要なアドレスビットはアドレスのa0〜a10の11ビットである。64ビット(8バイト)のデータバスDBUS上におけるバイトデータを表すのに必要なアドレスは3ビットのアドレスa0〜a2である。この場合に、エンディアン変換に応じて反転すべきアドレスビットは、アドレスa0〜a10よりも上位のアドレスビットa11〜a31と、アドレスビットa0〜a2の全アドレスビットとすればよい。これにより、消去ブロックの最小サイズが2キロバイト(KB)、データバス幅が64ビット以下のフラッシュメモリにおいて、ビッグエンディアンとリトルエンディアンとの間でデータバスDBUS上におけるデータ転送順序が変更されず、また、2KBの最小消去ブロックサイズを超えて誤った消去が行われることを抑制することができる。これを、必要最小限のビット数のアドレス反転で実現することができる。尚、図10において記号〜はそれが付されたアドレス範囲の各アドレスビットの反転を意味する。   FIG. 10 shows an example in which only the minimum necessary address bits are selectively inverted. The example of FIG. 10 is an example in which the minimum size of the erase block is 2 kilobytes (KB) and the data bus width is 64 bits. The address is a 32-bit byte address a0 to a31. Address bits necessary to represent 2 kilobytes (KB), which is the minimum size of the erase block, are 11 bits a0 to a10 of the address. Addresses required to represent byte data on a 64-bit (8-byte) data bus DBUS are 3-bit addresses a0 to a2. In this case, the address bits to be inverted in accordance with the endian conversion may be the address bits a11 to a31 higher than the addresses a0 to a10 and all the address bits a0 to a2. As a result, in a flash memory having a minimum erase block size of 2 kilobytes (KB) and a data bus width of 64 bits or less, the data transfer order on the data bus DBUS is not changed between big endian and little endian. It is possible to suppress erroneous erasure that exceeds the minimum erase block size of 2 KB. This can be realized by address inversion with the minimum number of bits. In FIG. 10, the symbol “˜” means inversion of each address bit in the address range to which it is attached.

図1で説明したエンディアン制御信号φESは図3に示されるようにメモリコントローラ22の制御ラッチ(LAT)30が出力する。制御ラッチ30は所定の不揮発性メモリセル13が保持するエンディアン制御データをラッチする。メモリコントローラ22はリセット信号RESによってリセット動作が指示されると、これに応答して前記所定の不揮発性メモリセル13をリードする動作を開始して、当該所定の不揮発性メモリセル13が保持するエンディアン制御データを制御ラッチ30に内部転送する。内部転送されたエンディアン制御データがエンディアン制御信号φESとしてエンディアン変換回路25に供給される。   The endian control signal φES described with reference to FIG. 1 is output by a control latch (LAT) 30 of the memory controller 22 as shown in FIG. The control latch 30 latches endian control data held in a predetermined nonvolatile memory cell 13. When the reset operation is instructed by the reset signal RES, the memory controller 22 starts the operation of reading the predetermined nonvolatile memory cell 13 in response to this, and the endian held by the predetermined nonvolatile memory cell 13 Control data is internally transferred to the control latch 30. The internally transferred endian control data is supplied to the endian conversion circuit 25 as an endian control signal φES.

図11にはエンディアン制御データの書込みフローチャートが例示される。この書込み動作は、例えばEPROMライタのような外部書込み装置をポート回路8に接続し、直接フラッシュメモリ4をアクセスすることによって行う。このとき、書込み装置はフラッシュメモリ4のエンディアンに合わせてコマンドやデータを転送する。先ず、エンディアン制御データとその書き込みアドレスを付随する書込みコマンドが発行されると、フラッシュメモリ4はエンディアン制御データの書き込みアドレスをアドレスデコーダ15にラッチすると共に(S1)、エンディアン制御データを書込みデータラッチ18にラッチする(S2)。この後、メモリ制御回路22は書込みデータに従って書込み高電圧を印加する(S3)。次いで、ベリファイデータを読み出し(S4)、ベリファイデータを元に再書き込みデータの演算を行い(S5)、再書き込みデータが書込みデータと相違するか否かによって書込み完了を判定し(S6)、同じであれば再度ステップS3に戻って高電圧印加を繰り返す。再書き込みデータが書込みデータと不一致になっていれば書き込み完了として処理を終了する。エンディアン制御データは製造段階において初期値を持つ。この初期値がビッグエンディアンを指定する場合には、リトルエンディアンを選択するとき図11のフローチャートに従った書込みを行うことになる。   FIG. 11 illustrates a flowchart for writing endian control data. This writing operation is performed by connecting an external writing device such as an EPROM writer to the port circuit 8 and directly accessing the flash memory 4. At this time, the writing device transfers commands and data in accordance with the endian of the flash memory 4. First, when a write command accompanied by endian control data and its write address is issued, the flash memory 4 latches the write address of the endian control data in the address decoder 15 (S1), and the endian control data is written to the write data latch 18. (S2). Thereafter, the memory control circuit 22 applies a write high voltage according to the write data (S3). Next, verify data is read (S4), rewrite data is calculated based on the verify data (S5), and write completion is determined depending on whether the rewrite data is different from the write data (S6). If there is, return to step S3 again and repeat the high voltage application. If the rewrite data does not match the write data, the process is terminated as writing completion. Endian control data has an initial value in the manufacturing stage. When the initial value specifies big endian, writing according to the flowchart of FIG. 11 is performed when selecting little endian.

図12にはエンディアン制御データの読出しフローチャートが例示される。リセット信号RESが論理値1にされて(RES=1)リセット動作が指示されると(T1)、フラッシュメモリ4は前記所定の不揮発性メモリセル13を選択してその記憶情報を制御ラッチ30に内部転送する(T2)。その後、リセット信号RESが論理値0(RES=0)にされることによって処理を終了する(T3)。   FIG. 12 illustrates a flowchart for reading endian control data. When the reset signal RES is set to the logical value 1 (RES = 1) and the reset operation is instructed (T1), the flash memory 4 selects the predetermined nonvolatile memory cell 13 and stores the stored information in the control latch 30. Transfer internally (T2). Thereafter, the reset signal RES is set to a logical value 0 (RES = 0), thereby terminating the process (T3).

図13にはCPU2がエンディアン変換回路25Aを持つ場合の例が示される。CPU2が持つエンディアン変換回路25Aは実行部(EXEC)31から出力されるアドレス信号a0〜anを入力し、エンディアン制御信号φESAによって選択的に反転してアドレス信号b0〜bnをアドレスバスABUSに出力する。   FIG. 13 shows an example in which the CPU 2 has an endian conversion circuit 25A. The endian conversion circuit 25A of the CPU 2 receives the address signals a0 to an output from the execution unit (EXEC) 31, selectively inverts the signals by the endian control signal φESA, and outputs the address signals b0 to bn to the address bus ABUS. .

図2に示されるデータプロセッサ1において、いずれのオンチップ回路モジュールもエンディアン変換回路を備えず、ビッグエンディアンとリトルエンディアンが混在した回路モジュールがオンチップされているとする。このとき、オンチップ回路モジュールの中でエンディアンが異なる少数派モジュールが前記エンディアン変換回路を有すればよい。フラッシュメモリのエンディアンがマイナーエンディアンであるとき、エンディアン変換回路25を備えたフラッシュメモリ4を採用してデータプロセッサ1を構成すればよい。CPUのエンディアンがマイナーエンディアンであるとき、エンディアン変換回路25Aを備えたCPU2を採用してデータプロセッサ1を構成すればよい。   In the data processor 1 shown in FIG. 2, it is assumed that none of the on-chip circuit modules includes an endian conversion circuit, and a circuit module in which big endian and little endian are mixed is on-chip. At this time, a minority module having a different endian among the on-chip circuit modules may have the endian conversion circuit. When the endian of the flash memory is minor endian, the data processor 1 may be configured using the flash memory 4 provided with the endian conversion circuit 25. When the endian of the CPU is minor endian, the data processor 1 may be configured by adopting the CPU 2 provided with the endian conversion circuit 25A.

予めCPU2とDMAC3の双方が図13のエンディアン変換回路25Aを備える場合について考える。このとき、CPU2のエンディアンがマイナーエンディアンであり、DMAC3のエンディアンがメジャーエンディアンであれば、DMAC3のエンディアン変換回路25Aは変換動作させなくてもよい。従ってCPU2の制御信号φESAを変換イネーブルレベルに、DMAC3の制御信号φESAを変換ディスエーブルレベルにすればよい。   Consider a case where both the CPU 2 and the DMAC 3 are provided with the endian conversion circuit 25A of FIG. At this time, if the endian of the CPU 2 is a minor endian and the endian of the DMAC 3 is a major endian, the endian conversion circuit 25A of the DMAC 3 may not perform the conversion operation. Therefore, the control signal φESA of the CPU 2 may be set to the conversion enable level, and the control signal φESA of the DMAC 3 may be set to the conversion disable level.

以上本発明者によってなされた発明を実施形態に基づいて具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは言うまでもない。   Although the invention made by the present inventor has been specifically described based on the embodiments, it is needless to say that the present invention is not limited thereto and can be variously modified without departing from the gist thereof.

例えば、不揮発性メモリセルは2層ゲート構造のフローティングゲート構造に限定されない。シリコンナイトライドのような電荷トラップ膜を電荷蓄積領域に備えた構造、メモリトランジスタと共にアシストゲートを備えたスプリットゲート構造等であってもよい。また、書込み及び消去はアバランシェ注入とソースへのFNトンネルに限定されない。ホットエレクトロン注入によって書込みを行い、ホットホール注入によって消去を行ってよい。或いはホットエレクトロン注入によって書込みを行い、FNトンネルによって基板へ電子を放出させて消去を行ってもよい。   For example, the nonvolatile memory cell is not limited to a floating gate structure having a two-layer gate structure. A structure including a charge trapping film such as silicon nitride in a charge storage region, a split gate structure including an assist gate together with a memory transistor, or the like may be used. Further, writing and erasing are not limited to avalanche injection and FN tunneling to the source. Writing may be performed by hot electron injection and erasure may be performed by hot hole injection. Alternatively, writing may be performed by hot electron injection, and erasing may be performed by emitting electrons to the substrate through an FN tunnel.

エンディアン変換回路を備える回路モジュールはフラッシュメモリ以外のバススレーブモジュール、例えばRAMやタイマ等の周辺回路であってよい。エンディアン変換回路を備えるバスマスタモジュールはCPU以外のDMAC等であってもよい。   The circuit module including the endian conversion circuit may be a bus slave module other than the flash memory, for example, a peripheral circuit such as a RAM or a timer. The bus master module including the endian conversion circuit may be a DMAC other than the CPU.

エンディアン変換回路には排他的論理ゲートを用いる構成に限定されず、排他的負論理和ゲート等その他の構成を採用することは当然可能である。データバスの並列ビット数や消去ブロックサイズは適宜変更可能である。   The endian conversion circuit is not limited to a configuration using an exclusive logic gate, and other configurations such as an exclusive negative OR gate can naturally be adopted. The number of parallel bits and the erase block size of the data bus can be changed as appropriate.

本発明はデータプロセッサに限定されない。フラッシュメモリ単体の半導体集積回路や、CPU単体の半導体集積回路等、種々の半導体集積回路に広く適用することができる。   The present invention is not limited to data processors. The present invention can be widely applied to various semiconductor integrated circuits such as a semiconductor integrated circuit having a single flash memory and a semiconductor integrated circuit having a single CPU.

エンディアン変換回路の一例を示す論理回路図である。It is a logic circuit diagram showing an example of an endian conversion circuit. 半導体集積回路の一例であるデータプロセッサのブロック図である。1 is a block diagram of a data processor that is an example of a semiconductor integrated circuit. FIG. フラッシュメモリの一例を示すブロック図である。It is a block diagram which shows an example of flash memory. ビッグエンディアンとリトルエンディアンの概念説明図である。It is a conceptual explanatory view of big endian and little endian. アドレス信号の全ビット反転の意義を示す説明図である。It is explanatory drawing which shows the significance of all bit inversion of an address signal. フラッシュメモリにおけるサイズの異なる一括消去ブロックとエンディアンとの関係を示す説明図である。It is explanatory drawing which shows the relationship between the block erase block from which size differs in flash memory, and endian. 図1に則したエンディアン変換回路の動作形態を示す説明図である。It is explanatory drawing which shows the operation | movement form of the endian conversion circuit based on FIG. エンディアン変換回路を採用しない場合におけるビッグエンディアン専用のアドレスデコーダの論理回路図である。It is a logic circuit diagram of an address decoder dedicated to big endian when no endian conversion circuit is employed. エンディアン変換回路を採用しない場合におけるリトルエンディアン専用のアドレスデコーダの論理回路図である。FIG. 5 is a logic circuit diagram of a little endian dedicated address decoder when an endian conversion circuit is not employed. エンディアン変換回路において必要最小限のアドレスビットだけを選択的に反転させるようにする場合の対象アドレスビットとエンディアンとの関係を示す説明図である。It is explanatory drawing which shows the relationship between a target address bit and an endian in the case of selectively inverting only a minimum necessary address bit in an endian conversion circuit. エンディアン制御データの書込みフローチャートである。It is a write-in flowchart of endian control data. エンディアン制御データの読出しフローチャートである。It is a read flowchart of endian control data. CPUが備えるエンディアン変換回路の構成を例示する論理回路図である。It is a logic circuit diagram which illustrates the composition of the endian conversion circuit with which CPU is provided.

符号の説明Explanation of symbols

1 データプロセッサ
2 中央処理装置
3 ダイレクトメモリアクセスコントローラ
4 フラッシュメモリ
8,9 ポート回路
10 内部バス
RES リセット信号
12 メモリアレイ
13 不揮発性メモリセル
SL ソース線
WL ワード線
BL ビット線
14 ドライバ回路
15 アドレスデコーダ
25,25A エンディアン変換回路
φES、φESA エンディアン制御信号
30 制御ラッチ
31 実行部
DESCRIPTION OF SYMBOLS 1 Data processor 2 Central processing unit 3 Direct memory access controller 4 Flash memory 8, 9 Port circuit 10 Internal bus RES Reset signal 12 Memory array 13 Non-volatile memory cell SL Source line WL Word line BL Bit line 14 Driver circuit 15 Address decoder 25 , 25A Endian conversion circuit φES, φESA Endian control signal 30 Control latch 31 Execution unit

Claims (19)

電気的に記憶情報の書換えが可能にされる複数個の不揮発性メモリセルを備えた不揮発性メモリを有し、
前記不揮発性メモリは前記不揮発性メモリセルに対する記憶情報の消去をサイズの異なる消去ブロック単位で行い、
前記不揮発性メモリは、そのアドレス入力端子から入力されるアドレス信号の全ビットに対する論理値反転を選択可能なエンディアン変換回路を有する半導体集積回路。
A non-volatile memory having a plurality of non-volatile memory cells that can electrically rewrite stored information;
The nonvolatile memory erases stored information in the nonvolatile memory cells in units of erase blocks having different sizes,
The nonvolatile memory is a semiconductor integrated circuit having an endian conversion circuit capable of selecting logical value inversion for all bits of an address signal input from an address input terminal.
電気的に記憶情報の書換えが可能にされる複数個の不揮発性メモリセルを備えた不揮発性メモリを有し、
前記不揮発性メモリは前記不揮発性メモリセルに対する記憶情報の消去をサイズの異なる消去ブロック単位で行い、
前記不揮発性メモリのアドレス入力端子から入力されるアドレス信号のうち消去ブロックの最小データ語数を表すのに必要なアドレスビット数分の下位側アドレスよりも上位側の全アドレスビットと、前記不揮発性メモリのアドレス入力端子から入力されるアドレス信号のうち前記不揮発性メモリのデータ入出力端子で入出力される並列データ語数を表すのに必要なアドレスビット数分の下位側アドレスの全アドレスビットとに対する論理値反転を選択可能なエンディアン変換回路を有する半導体集積回路。
A non-volatile memory having a plurality of non-volatile memory cells that can electrically rewrite stored information;
The nonvolatile memory erases stored information in the nonvolatile memory cells in units of erase blocks having different sizes,
All address bits higher than lower addresses corresponding to the number of address bits necessary to represent the minimum number of data words of an erase block among address signals input from the address input terminal of the nonvolatile memory, and the nonvolatile memory Logic for all address bits of the lower address for the number of address bits required to represent the number of parallel data words input / output at the data input / output terminal of the non-volatile memory among the address signals input from the address input terminal A semiconductor integrated circuit having an endian conversion circuit capable of selecting value inversion.
前記不揮発性メモリにおける所定の不揮発性メモリセルは、前記エンディアン変換回路におけるアドレスビットの論理値反転を選択する制御データの記憶領域とされる請求項1又は2記載の半導体集積回路。   3. The semiconductor integrated circuit according to claim 1, wherein a predetermined nonvolatile memory cell in the nonvolatile memory serves as a storage area for control data for selecting logical value inversion of an address bit in the endian conversion circuit. 前記不揮発性メモリはリセットの指示に応答して前記制御データを所定の不揮発性メモリセルから読出して前記エンディアン変換回路にセットする請求項3記載の半導体集積回路。   4. The semiconductor integrated circuit according to claim 3, wherein the non-volatile memory reads the control data from a predetermined non-volatile memory cell in response to a reset instruction and sets the control data in the endian conversion circuit. 電気的に記憶情報の書換えが可能にされる複数個の不揮発性メモリセルを備えた不揮発性メモリと、前記不揮発性メモリをアクセス可能なデータ処理ユニットとを有する半導体集積回路であって、
前記不揮発性メモリは前記不揮発性メモリセルに対する記憶情報の消去をサイズの異なる消去ブロック単位で行い、
前記データ処理ユニットから前記不揮発性メモリに内部アドレスバスで伝達されるアドレス信号の全ビットに対する論理値反転を選択可能な前記エンディアン変換回路を有する半導体集積回路。
A semiconductor integrated circuit comprising: a nonvolatile memory having a plurality of nonvolatile memory cells that can electrically rewrite stored information; and a data processing unit capable of accessing the nonvolatile memory,
The nonvolatile memory erases stored information in the nonvolatile memory cells in units of erase blocks having different sizes,
A semiconductor integrated circuit having the endian conversion circuit capable of selecting logical inversion for all bits of an address signal transmitted from the data processing unit to the nonvolatile memory via an internal address bus.
電気的に記憶情報の書換えが可能にされる複数個の不揮発性メモリセルを備えた不揮発性メモリと、前記不揮発性メモリをアクセス可能なデータ処理ユニットとを有する半導体集積回路であって、
前記不揮発性メモリは前記不揮発性メモリセルに対する記憶情報の消去をサイズの異なる消去ブロック単位で行い、
前記データ処理ユニットから前記不揮発性メモリに内部アドレスバスで伝達されるアドレス信号のうち消去ブロックの最小データ語数を表すのに必要なビット数分の下位側アドレスよりも上位側の全アドレスビットと、前記内部アドレスバスで伝達されるアドレス信号のうち前記データ処理ユニットと前記不揮発性メモリとを接続するに内部データバスで伝達される並列データ語数を表すのに必要なビット数分の下位側アドレスの全アドレスビットとに対する論理値反転を選択可能なエンディアン変換回路を有する半導体集積回路。
A semiconductor integrated circuit comprising: a nonvolatile memory having a plurality of nonvolatile memory cells that can electrically rewrite stored information; and a data processing unit capable of accessing the nonvolatile memory,
The nonvolatile memory erases stored information in the nonvolatile memory cells in units of erase blocks having different sizes,
All address bits higher than the lower address corresponding to the number of bits necessary to represent the minimum number of data words of the erase block among the address signals transmitted from the data processing unit to the nonvolatile memory via the internal address bus; Of the address signals transmitted on the internal address bus, lower-order addresses corresponding to the number of bits necessary to represent the number of parallel data words transmitted on the internal data bus to connect the data processing unit and the nonvolatile memory. A semiconductor integrated circuit having an endian conversion circuit capable of selecting logical inversion with respect to all address bits.
前記不揮発性メモリにおける所定の不揮発性メモリセルは、前記エンディアン変換回路におけるアドレスビットの論理値反転を選択する制御データの記憶領域とされる請求項5又は6記載の半導体集積回路。   7. The semiconductor integrated circuit according to claim 5, wherein a predetermined nonvolatile memory cell in the nonvolatile memory serves as a storage area for control data for selecting a logical value inversion of an address bit in the endian conversion circuit. 前記不揮発性メモリはリセットの指示に応答して前記制御データを所定の不揮発性メモリセルから読出して前記エンディアン変換回路にセットする請求項7記載の半導体集積回路。   8. The semiconductor integrated circuit according to claim 7, wherein the non-volatile memory reads the control data from a predetermined non-volatile memory cell in response to a reset instruction and sets the control data in the endian conversion circuit. 前記不揮発性メモリ又はデータ処理ユニットが前記エンディアン変換回路を有する請求項8記載の半導体装置。   The semiconductor device according to claim 8, wherein the nonvolatile memory or the data processing unit includes the endian conversion circuit. 半導体基板上に、内部バスと、前記内部バスに結合されたバスマスタモジュール及びバススレーブモジュールとを有する半導体集積回路であって、
前記バスマスタモジュール又はバススレーブモジュールはエンディアン変換回路を有し、
前記エンディアン変換回路は、バススレーブモジュールのデータ領域に対するアドレス割り当てに関し、データ領域の下位側に小さなアドレスを割り当てるリトルエンディアンと、データ領域の下位側に大きなアドレスを割り当てるビッグエンディアンとを選択的に切換え可能にするものである半導体集積回路。
A semiconductor integrated circuit having an internal bus and a bus master module and a bus slave module coupled to the internal bus on a semiconductor substrate,
The bus master module or the bus slave module has an endian conversion circuit,
The endian conversion circuit can selectively switch between a little endian that assigns a small address to the lower side of the data area and a big endian that assigns a large address to the lower side of the data area, with respect to address assignment to the data area of the bus slave module. A semiconductor integrated circuit.
前記エンディアン変換回路は、内部バスで伝達されるアドレス信号の全ビットに対する論理値反転を選択可能である請求項10記載の半導体集積回路。   11. The semiconductor integrated circuit according to claim 10, wherein the endian conversion circuit can select logic value inversion for all bits of an address signal transmitted through an internal bus. 前記エンディアン変換回路は、内部バスで伝達されるアドレス信号のうち、内部バスで伝達される並列データ語数を表すのに必要なアドレスビット数分の下位側アドレスの全アドレスビットの論理値反転を選択可能である請求項10記載の半導体集積回路。   The endian conversion circuit selects logical value inversion of all the address bits of the lower address for the number of address bits necessary to represent the number of parallel data words transmitted on the internal bus from among the address signals transmitted on the internal bus. The semiconductor integrated circuit according to claim 10, which is possible. 前記バススレーブモジュールは電気的に記憶情報の書換えが可能にされる複数個の不揮発性メモリセルを備えた不揮発性メモリであり、
前記バスマスタモジュールは前記不揮発性メモリをアクセス可能なデータ処理ユニットであり、
前記不揮発性メモリは前記不揮発性メモリセルに対する記憶情報の消去をサイズの異なる消去ブロック単位で行い、
前記エンディアン変換回路は、内部バスで伝達されるアドレス信号のうち消去ブロックの最小データ語数を表すのに必要なビット数分の下位側アドレスよりも上位側の全アドレスビットと、内部バスで伝達されるアドレス信号のうち内部バスで伝達される並列データ語数を表すのに必要なビット数分の下位側アドレスの全アドレスビットとの論理値反転を選択可能である請求項10記載の半導体集積回路。
The bus slave module is a non-volatile memory including a plurality of non-volatile memory cells that can rewrite stored information electrically.
The bus master module is a data processing unit capable of accessing the nonvolatile memory;
The nonvolatile memory erases stored information in the nonvolatile memory cells in units of erase blocks having different sizes,
The endian conversion circuit transmits all the address bits higher than the lower address corresponding to the number of bits required to represent the minimum number of data words of the erase block among the address signals transmitted on the internal bus, and is transmitted on the internal bus. 11. The semiconductor integrated circuit according to claim 10, wherein logical value inversion with all address bits of the lower address corresponding to the number of bits necessary to represent the number of parallel data words transmitted through the internal bus can be selected.
前記不揮発性メモリにおける所定の不揮発性メモリセルは、前記エンディアン変換回路におけるアドレスビットの論理値反転を選択する制御データの記憶領域とされる請求項13記載の半導体集積回路。   14. The semiconductor integrated circuit according to claim 13, wherein a predetermined nonvolatile memory cell in the nonvolatile memory serves as a storage area for control data for selecting logical value inversion of an address bit in the endian conversion circuit. 前記不揮発性メモリはリセットの指示に応答して前記制御データを所定の不揮発性メモリセルから読出して前記エンディアン変換回路にセットする請求項14記載の半導体集積回路。   15. The semiconductor integrated circuit according to claim 14, wherein the nonvolatile memory reads the control data from a predetermined nonvolatile memory cell in response to a reset instruction and sets the control data in the endian conversion circuit. ビッグエンディアンとリトルエンディアンが混在した前記バススレーブモジュールとバスマスタモジュールとの中でエンディアンが異なる少数派モジュールが前記エンディアン変換回路を有する請求項10記載の半導体集積回路。   The semiconductor integrated circuit according to claim 10, wherein a minority module having a different endian among the bus slave module and the bus master module in which big endian and little endian are mixed has the endian conversion circuit. 複数の不揮発性メモリセルを備えた不揮発性メモリと、前記不揮発性メモリにアドレスバス及びデータバスを介してアクセス可能な複数の回路モジュールとを有し、
第1の回路モジュールは、前記データバスを介して第1の不揮発性メモリセルへアクセスするために第1アドレス情報を前記アドレスバスに出力し、
第2の回路モジュールは、前記データバスを介して前記第1の不揮発性メモリセルへアクセスするために第2アドレス情報を前記アドレスバスに出力し、
第1状態信号に応じて前記第2アドレス情報を前記第1アドレス情報へ変換し、第2状態信号に応じて変換を行わない制御を行う変換器を有する半導体集積回路。
A non-volatile memory including a plurality of non-volatile memory cells, and a plurality of circuit modules accessible to the non-volatile memory via an address bus and a data bus,
The first circuit module outputs first address information to the address bus for accessing the first nonvolatile memory cell via the data bus;
A second circuit module for outputting second address information to the address bus to access the first nonvolatile memory cell via the data bus;
A semiconductor integrated circuit comprising: a converter that converts the second address information into the first address information in response to a first state signal and performs control not to perform conversion in response to a second state signal.
前記第1の回路モジュールは前記第2状態信号を出力し、
前記第2の回路モジュールは前記第1状態信号を出力する請求項17の半導体集積回路。
The first circuit module outputs the second state signal;
The semiconductor integrated circuit according to claim 17, wherein the second circuit module outputs the first state signal.
前記不揮発性メモリは、前記第1アドレス情報の入力に応じて、前記第1アドレス情報に含まれる第1ロウアドレス情報と第1カラムアドレス情報とから前記第1の不揮発性メモリセルを選択する請求項17の半導体集積回路。   The non-volatile memory selects the first non-volatile memory cell from first row address information and first column address information included in the first address information in response to an input of the first address information. Item 18. The semiconductor integrated circuit according to Item 17.
JP2005194818A 2005-07-04 2005-07-04 Semiconductor integrated circuit Withdrawn JP2007011938A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005194818A JP2007011938A (en) 2005-07-04 2005-07-04 Semiconductor integrated circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005194818A JP2007011938A (en) 2005-07-04 2005-07-04 Semiconductor integrated circuit

Publications (1)

Publication Number Publication Date
JP2007011938A true JP2007011938A (en) 2007-01-18

Family

ID=37750296

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005194818A Withdrawn JP2007011938A (en) 2005-07-04 2005-07-04 Semiconductor integrated circuit

Country Status (1)

Country Link
JP (1) JP2007011938A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010079553A (en) * 2008-09-25 2010-04-08 Brother Ind Ltd Wireless tag communication system and wireless tag communication device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010079553A (en) * 2008-09-25 2010-04-08 Brother Ind Ltd Wireless tag communication system and wireless tag communication device

Similar Documents

Publication Publication Date Title
JP5311784B2 (en) Semiconductor device
US10121546B2 (en) Semiconductor device, pre-write program, and restoration program
US7440337B2 (en) Nonvolatile semiconductor memory apparatus having buffer memory for storing a program and buffering work data
KR100320360B1 (en) Program memory for remote reprogrammable microcontrollers
TWI391936B (en) Memory device architectures and operation
US10102915B2 (en) Semiconductor device including nonvolatile memory configured to switch between a reference current reading system and a complimentary reading system
US8359423B2 (en) Using LPDDR1 bus as transport layer to communicate to flash
US9460793B1 (en) Semiconductor memory device
CN109841253B (en) Semiconductor memory device and reset method thereof
JP4955990B2 (en) Nonvolatile semiconductor memory device
CN104143357A (en) Memory system, semiconductor memory device and method of operating the same
JP5016841B2 (en) Nonvolatile semiconductor memory device
CN105518791A (en) Semiconductor device
US10698617B2 (en) Memory system
TW201631586A (en) Nonvolatile memory device, operating method thereof, and data storage device including the same
US8315098B2 (en) Memory system
JP2007011938A (en) Semiconductor integrated circuit
JP2004199833A (en) Control method of nonvolatile semiconductor memory device and nonvolatile semiconductor memory device
US20190369906A1 (en) Semiconductor device
JP2005317127A (en) Nonvolatile semiconductor memory device
CN107481761A (en) Semiconductor device
JPH11185485A (en) Semiconductor storage device and data processing device
JP2004303416A (en) Nonvolatile storage device, microcomputer, nonvolatile semiconductor memory device, and data processor
JP2012168719A (en) Memory system
JP2012064269A (en) Microcomputer application system

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20081007