JP5292406B2 - 半導体集積回路装置 - Google Patents
半導体集積回路装置 Download PDFInfo
- Publication number
- JP5292406B2 JP5292406B2 JP2010528678A JP2010528678A JP5292406B2 JP 5292406 B2 JP5292406 B2 JP 5292406B2 JP 2010528678 A JP2010528678 A JP 2010528678A JP 2010528678 A JP2010528678 A JP 2010528678A JP 5292406 B2 JP5292406 B2 JP 5292406B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- endian
- cpu
- memory
- address
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/04—Addressing variable-length words or parts of words
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30025—Format conversion instructions, e.g. Floating-Point to Integer, decimal conversion
Description
又、マイクロコンピュータにおいて、命令やデータを格納するために必要とされるメモリ容量を削減し、適正な消費電力で命令の実行/データの処理効率を向上することも求められる。
図1は、本実施の形態に係るマイクロコンピュータの一部分の構成を示すブロック図である。尚、図1に於いては、後述するアライナ11の記載を省略している。
本実施の形態の特徴点は、実施の形態1に係るバイエンディアン方式のマイクロコンピュータに於いて、CPU周辺の各I/O装置とCPU間のデータバスを、リトルエンディアン専用のデータバスとビッグエンディアン専用のデータバスとに分離した点にある。
図8は、マイクロコンピュータMCUの一例の概略を示すブロック図である。
jmp @#adr (1)
jmp @Rn (2)
のように、命令が記述される。命令の記述に含まれる“@”はアドレス修飾が行われることを示し、“#”は続くバイナリ情報を数値情報として認識し、Rnはレジスタ番号を指定することを示す。
図15はエンディアンの異なる周辺機能ブロックを有するマイクロコンピュータの概略を示し、その他の構成は実施の形態3のマイクロコンピュータMCU(図8)と同様である。図15には、CPU1、バスコントローラBSC、バスコントローラBSCに接続されるリトルエンディアンでデータ処理を行うリトルエンディアン用周辺機能ブロック(リトルエンディアン用周辺I/O装置18,19)、及び、バスコントローラBSCに接続されるビッグエンディアンでデータ処理を行うビッグエンディアン用周辺機能ブロック(ビッグエンディアン用周辺I/O装置15,16)が、記載されている。リトルエンディアン用周辺機能ブロックはリトルエンディアン用周辺データバス17を介してバスコントローラ BSC内のアライナ13に接続され、ビッグエンディアン用周辺機能ブロックはビッグエンディアン用周辺データバス14を介してバスコントローラ BSC内のアライナ13に接続される。本構成において、リトルエンディアン用周辺I/O装置19内の転送バッファTBL等、ビッグエンディアン用周辺I/O装置15内の転送バッファTBB等とCPU1のI/Oレジスタ12(レジスタ群REGのうちの一つのレジスタである。レジスタ9と同一のものであってもよい。)は、周辺I/O装置内の転送バッファやレジスタのサイズに関係なく、LSBが共通に接続されるようにバスが接続される。リトルエンディアン用周辺I/O装置18、19かビッグエンディアン用周辺I/O装置15、16かは、それぞれの転送バッファやレジスタに割り付けられているアドレスによって判別できるようになっている。
図17は、実施の形態1,2,3,4及び後述する実施の形態6に係るマイクロコンピュータで実行するプログラムの開発ツールのフロー概略を示す。C言語等の高級言語で記述されたソースプログラムをコンパイラが構文解析等、及び最適化を行ってアセンブリ言語で記述したアセンブリ言語プログラムを出力する。アセンブラはコンパイラから出力されたアセンブリ言語から機械語を生成し機械語プログラムを出力する。1又は複数の機械語プログラムをリンケージエディタで結合(リンク処理)してマイクロコンピュータで実行可能なプログラムが生成される。
以下、マイクロコンピュータMCUでの処理性能の向上、コード効率の向上、及び消費電力の向上について、各々、記載する。尚、コード効率の向上とは、命令を格納するために必要とされるメモリ容量を削減することである。
若しくは、レジスタ格納値のうちの演算に使用するデータ幅を指定可能な演算命令において、当該データ幅として指定できる値の範囲にあわせて乗算命令においてコードサイズを2バイト〜6バイトを選択可能とし、または、除算命令においてコードサイズを3バイト〜7バイトを選択可能としている。
Claims (2)
- CPUと、
バスと、
前記CPUと前記バスとの間に配置されるアライナとを備えており、
前記CPUは、前記バスを介して、メモリから命令コードを取得して当該命令コードに応じた動作を行い、当該命令コードに応じた動作を行うために必要とされるデータを取得し、
前記命令コードはリトルエンディアン又はビッグエンディアンのいずれか一方の決定されたエンディアンで前記メモリに格納され、前記データはNビット(N=8×k:kは2以上の正の整数)で表されるベクタアドレス情報を含みリトルエンディアン又はビッグエンディアンのいずれで前記メモリに格納されるかを任意に決定され、
前記アライナはNビット長でのデータアクセスを行う場合、当該データがリトルエンディアン又はビッグエンディアンのいずれで格納されているかに関わらず前記メモリに格納されているバイト順序で前記CPUに当該データを供給し、前記ベクタアドレス情報のアクセスを行う場合、当該ベクタアドレス情報がリトルエンディアン又はビッグエンディアンのいずれで格納されているかに関わらず前記メモリに格納されているバイト順序で前記CPUに当該ベクタアドレス情報を供給し、Nビットと異なるビット長でのデータアクセスを行う場合、当該データがリトルエンディアン又はビッグエンディアンのいずれで格納されているかに応じて前記メモリに格納されているバイト順序を変更して前記CPUに供給する、
ことを特徴とする半導体集積回路装置。 - 命令コードを取得して当該命令コードに応じて動作を行うCPUと、
前記CPUに接続されるアライナと
を備えており、
前記CPUは取得する命令コードはすべて同じエンディアンでメモリに格納されるものであり、
前記CPUはリセット信号又は割り込み信号を入力すると、当該リセット信号又は割り込み信号に基づいてNビット(N=8×k:kは2以上の正の整数)で表されたベクタアドレス情報を取得し、さらに前記ベクタアドレス情報により特定される命令コードを取得して実行し、
前記CPUが前記リセットベクタアドレス情報をアクセスする場合、前記アライナは前記ベクタアドレス情報を受け、そのベクタアドレス情報のエンディアンに拘らずメモリに格納されているバイト順序で前記ベクタアドレスを前記CPUに供給し、
前記CPUがNビットとは異なるデータ長である第1のデータをアクセスする場合、前記アライナはそのデータを受け、そのデータがリトルエンディアンであるかビッグエンディアンであるかに応じてメモリに格納されているバイト順序を変更して前記データを前記CPUに供給する、半導体集積回路装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010528678A JP5292406B2 (ja) | 2008-09-12 | 2009-05-28 | 半導体集積回路装置 |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008234768 | 2008-09-12 | ||
JP2008234768 | 2008-09-12 | ||
PCT/JP2009/059738 WO2010029794A1 (ja) | 2008-09-12 | 2009-05-28 | データ処理装置及び半導体集積回路装置 |
JP2010528678A JP5292406B2 (ja) | 2008-09-12 | 2009-05-28 | 半導体集積回路装置 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013121448A Division JP5521092B2 (ja) | 2008-09-12 | 2013-06-10 | データ処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2010029794A1 JPWO2010029794A1 (ja) | 2012-02-02 |
JP5292406B2 true JP5292406B2 (ja) | 2013-09-18 |
Family
ID=42005057
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010528678A Active JP5292406B2 (ja) | 2008-09-12 | 2009-05-28 | 半導体集積回路装置 |
JP2013121448A Active JP5521092B2 (ja) | 2008-09-12 | 2013-06-10 | データ処理装置 |
JP2014078466A Active JP5802791B2 (ja) | 2008-09-12 | 2014-04-07 | 半導体集積回路装置 |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013121448A Active JP5521092B2 (ja) | 2008-09-12 | 2013-06-10 | データ処理装置 |
JP2014078466A Active JP5802791B2 (ja) | 2008-09-12 | 2014-04-07 | 半導体集積回路装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US9524237B2 (ja) |
JP (3) | JP5292406B2 (ja) |
CN (2) | CN102150139A (ja) |
TW (2) | TWI476597B (ja) |
WO (1) | WO2010029794A1 (ja) |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4437464B2 (ja) | 2005-06-01 | 2010-03-24 | 株式会社ルネサステクノロジ | 半導体装置及びデータ処理システム |
JP5622429B2 (ja) * | 2010-04-20 | 2014-11-12 | ルネサスエレクトロニクス株式会社 | マイクロコンピュータ |
US8578340B1 (en) | 2010-09-24 | 2013-11-05 | Ca, Inc. | Recording and replaying computer program execution with recorded execution event breakpoints |
US9762246B2 (en) * | 2011-05-20 | 2017-09-12 | Semiconductor Energy Laboratory Co., Ltd. | Semiconductor device with a storage circuit having an oxide semiconductor |
FR2977371B1 (fr) * | 2011-06-30 | 2013-08-02 | Trixell | Matrice de pixels a groupements programmables |
CN103576739A (zh) * | 2012-08-02 | 2014-02-12 | 中兴通讯股份有限公司 | 数字芯片、具有数字芯片的设备和大小端模式配置方法 |
CN102968330B (zh) * | 2012-11-27 | 2015-08-19 | 武汉大学 | 一种固件代码反汇编中端模式差异的处理方法 |
US10120682B2 (en) * | 2014-02-28 | 2018-11-06 | International Business Machines Corporation | Virtualization in a bi-endian-mode processor architecture |
US9507595B2 (en) * | 2014-02-28 | 2016-11-29 | International Business Machines Corporation | Execution of multi-byte memory access instruction specifying endian mode that overrides current global endian mode |
US9619214B2 (en) | 2014-08-13 | 2017-04-11 | International Business Machines Corporation | Compiler optimizations for vector instructions |
JP6372250B2 (ja) * | 2014-08-25 | 2018-08-15 | サンケン電気株式会社 | 演算処理装置 |
US9588746B2 (en) | 2014-12-19 | 2017-03-07 | International Business Machines Corporation | Compiler method for generating instructions for vector operations on a multi-endian processor |
US10169014B2 (en) | 2014-12-19 | 2019-01-01 | International Business Machines Corporation | Compiler method for generating instructions for vector operations in a multi-endian instruction set |
US9880821B2 (en) | 2015-08-17 | 2018-01-30 | International Business Machines Corporation | Compiler optimizations for vector operations that are reformatting-resistant |
US9594668B1 (en) | 2015-09-04 | 2017-03-14 | International Business Machines Corporation | Debugger display of vector register contents after compiler optimizations for vector instructions |
CN105404496B (zh) * | 2015-11-06 | 2018-11-16 | 深圳国微技术有限公司 | 数据传输的控制方法和控制装置及具有其的微处理器 |
US10079067B1 (en) * | 2017-09-07 | 2018-09-18 | Winbond Electronics Corp. | Data read method and a non-volatile memory apparatus using the same |
CN109977061B (zh) * | 2017-12-28 | 2023-04-11 | 中兴通讯股份有限公司 | 一种中断处理方法及中断处理装置 |
CN110647355B (zh) * | 2018-06-27 | 2021-11-26 | 上海寒武纪信息科技有限公司 | 数据处理器和数据处理方法 |
TWI749724B (zh) * | 2020-08-21 | 2021-12-11 | 和碩聯合科技股份有限公司 | 電子電路系統 |
JP2023044909A (ja) * | 2021-09-21 | 2023-04-03 | 株式会社日立製作所 | プロセッサおよびエンディアン変換方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63211019A (ja) * | 1987-02-27 | 1988-09-01 | Hitachi Ltd | 直接メモリアクセス制御装置 |
JPH08278918A (ja) * | 1995-02-24 | 1996-10-22 | Internatl Business Mach Corp <Ibm> | エンディアンタスクを実行するシステム及び方法 |
JPH0997211A (ja) * | 1995-09-29 | 1997-04-08 | Matsushita Electric Ind Co Ltd | バス制御装置、及びバス制御装置を含む情報処理装置 |
JP2000082009A (ja) * | 1998-09-04 | 2000-03-21 | Hitachi Ltd | データ処理装置 |
JP2005174296A (ja) * | 2003-12-09 | 2005-06-30 | Arm Ltd | Simdデータ処理システムにおけるエンディアンの補償 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0336643A (ja) * | 1989-07-03 | 1991-02-18 | Nec Corp | データ処理方法 |
DE69124437T2 (de) * | 1990-08-09 | 1997-07-03 | Silicon Graphics Inc | Verfahren und Vorrichtung zum Umkehren von Byteordnung in einem Rechner |
US5627975A (en) * | 1994-08-02 | 1997-05-06 | Motorola, Inc. | Interbus buffer for use between a pseudo little endian bus and a true little endian bus |
US5928349A (en) * | 1995-02-24 | 1999-07-27 | International Business Machines Corporation | Mixed-endian computing environment for a conventional bi-endian computer system |
US5734910A (en) * | 1995-12-22 | 1998-03-31 | International Business Machines Corporation | Integrating multi-modal synchronous interrupt handlers for computer system |
US5961640A (en) * | 1997-04-22 | 1999-10-05 | Vlsi Technology, Inc. | Virtual contiguous FIFO having the provision of packet-driven automatic endian conversion |
JP2000003304A (ja) * | 1998-06-12 | 2000-01-07 | Nec Corp | データ処理装置とデータアライン装置 |
JP3659048B2 (ja) * | 1999-02-16 | 2005-06-15 | 株式会社日立製作所 | オペレーティングシステム及び計算機 |
US7404019B2 (en) * | 2003-03-07 | 2008-07-22 | Freescale Semiconductor, Inc. | Method and apparatus for endianness control in a data processing system |
JP4446373B2 (ja) * | 2003-03-19 | 2010-04-07 | パナソニック株式会社 | プロセッサ、データ共有装置 |
US6993619B2 (en) * | 2003-03-28 | 2006-01-31 | International Business Machines Corporation | Single request data transfer regardless of size and alignment |
JP2008033722A (ja) * | 2006-07-31 | 2008-02-14 | Matsushita Electric Ind Co Ltd | エンディアン変換回路を備えたデータ転送制御装置 |
US20080040576A1 (en) * | 2006-08-09 | 2008-02-14 | Brian Michael Stempel | Associate Cached Branch Information with the Last Granularity of Branch instruction in Variable Length instruction Set |
US7624251B2 (en) * | 2006-11-01 | 2009-11-24 | Apple Inc. | Instructions for efficiently accessing unaligned partial vectors |
-
2009
- 2009-05-28 CN CN2009801356167A patent/CN102150139A/zh active Pending
- 2009-05-28 JP JP2010528678A patent/JP5292406B2/ja active Active
- 2009-05-28 US US13/063,347 patent/US9524237B2/en active Active
- 2009-05-28 CN CN201510321721.7A patent/CN105893270A/zh active Pending
- 2009-05-28 WO PCT/JP2009/059738 patent/WO2010029794A1/ja active Application Filing
- 2009-08-13 TW TW098127267A patent/TWI476597B/zh not_active IP Right Cessation
- 2009-08-13 TW TW103145485A patent/TWI541658B/zh not_active IP Right Cessation
-
2013
- 2013-06-10 JP JP2013121448A patent/JP5521092B2/ja active Active
-
2014
- 2014-04-07 JP JP2014078466A patent/JP5802791B2/ja active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63211019A (ja) * | 1987-02-27 | 1988-09-01 | Hitachi Ltd | 直接メモリアクセス制御装置 |
JPH08278918A (ja) * | 1995-02-24 | 1996-10-22 | Internatl Business Mach Corp <Ibm> | エンディアンタスクを実行するシステム及び方法 |
JPH0997211A (ja) * | 1995-09-29 | 1997-04-08 | Matsushita Electric Ind Co Ltd | バス制御装置、及びバス制御装置を含む情報処理装置 |
JP2000082009A (ja) * | 1998-09-04 | 2000-03-21 | Hitachi Ltd | データ処理装置 |
JP2005174296A (ja) * | 2003-12-09 | 2005-06-30 | Arm Ltd | Simdデータ処理システムにおけるエンディアンの補償 |
Also Published As
Publication number | Publication date |
---|---|
US9524237B2 (en) | 2016-12-20 |
JP5521092B2 (ja) | 2014-06-11 |
CN105893270A (zh) | 2016-08-24 |
JP2014179107A (ja) | 2014-09-25 |
TW201530320A (zh) | 2015-08-01 |
TW201020795A (en) | 2010-06-01 |
JP5802791B2 (ja) | 2015-11-04 |
JPWO2010029794A1 (ja) | 2012-02-02 |
TWI476597B (zh) | 2015-03-11 |
WO2010029794A1 (ja) | 2010-03-18 |
TWI541658B (zh) | 2016-07-11 |
CN102150139A (zh) | 2011-08-10 |
US20110191569A1 (en) | 2011-08-04 |
JP2013229039A (ja) | 2013-11-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5802791B2 (ja) | 半導体集積回路装置 | |
JP2834837B2 (ja) | プログラマブルコントローラ | |
US6539467B1 (en) | Microprocessor with non-aligned memory access | |
US8521989B2 (en) | Programmable and scalable microcontroller architecture | |
JP2816248B2 (ja) | データプロセッサ | |
JP2009223897A (ja) | Riscアーキテクチャを有する8ビットマイクロコントローラ | |
JPH0766324B2 (ja) | データ処理装置 | |
JP2001092662A (ja) | プロセッサコア及びこれを用いたプロセッサ | |
JP2581236B2 (ja) | データ処理装置 | |
JPH0810428B2 (ja) | データ処理装置 | |
JPH07120278B2 (ja) | データ処理装置 | |
JPH03216776A (ja) | 集積回路装置及びそれにより構成されたマイクロプロセッサ | |
US6012138A (en) | Dynamically variable length CPU pipeline for efficiently executing two instruction sets | |
JP4073721B2 (ja) | データ処理装置 | |
JP2556182B2 (ja) | デ−タ処理装置 | |
JP3822885B2 (ja) | 1チップデータプロセッサ | |
JP2504235B2 (ja) | デ―タ処理装置 | |
JP3740321B2 (ja) | データ処理装置 | |
JP3760093B2 (ja) | マイクロコンピュータ | |
JP3539914B2 (ja) | マイクロコンピュータ | |
JP3147884B2 (ja) | 記憶装置及び情報処理装置 | |
JP2696578B2 (ja) | データ処理装置 | |
JP4382076B2 (ja) | データ処理装置 | |
JP3539951B2 (ja) | データ処理装置 | |
Papamichalis | Introduction to the TMS320 Family of Digital Signal Processors |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130212 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130412 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20130514 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130610 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5292406 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
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 |