JP5994423B2 - 半導体集積回路、半導体集積回路のレジスタブロック制御方法 - Google Patents

半導体集積回路、半導体集積回路のレジスタブロック制御方法 Download PDF

Info

Publication number
JP5994423B2
JP5994423B2 JP2012140509A JP2012140509A JP5994423B2 JP 5994423 B2 JP5994423 B2 JP 5994423B2 JP 2012140509 A JP2012140509 A JP 2012140509A JP 2012140509 A JP2012140509 A JP 2012140509A JP 5994423 B2 JP5994423 B2 JP 5994423B2
Authority
JP
Japan
Prior art keywords
data
semiconductor integrated
integrated circuit
register
storage elements
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
Application number
JP2012140509A
Other languages
English (en)
Other versions
JP2014006622A (ja
JP2014006622A5 (ja
Inventor
西本 正輝
正輝 西本
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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
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 Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP2012140509A priority Critical patent/JP5994423B2/ja
Publication of JP2014006622A publication Critical patent/JP2014006622A/ja
Publication of JP2014006622A5 publication Critical patent/JP2014006622A5/ja
Application granted granted Critical
Publication of JP5994423B2 publication Critical patent/JP5994423B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Semiconductor Integrated Circuits (AREA)
  • Microcomputers (AREA)

Description

本発明は、所定の処理を実行する複数の機能ブロックを1個の半導体に集積する半導体集積回路技術に関する。
一般に、半導体集積回路の内部に搭載されている機能ブロックと呼ばれるハードウェアを動作させるためには、動作モードや画像の縦横サイズ等、各種の変数を設定する必要がある。これらの変数は、CPU等からバスインターフェイスを介して、半導体集積回路に搭載されている機能ブロック毎に配置されているレジスタ(フリップフロップ等の記憶素子)に保存する。この時、画像の縦横サイズ等は、変数の取り得る値が0という値はなく、1からの値になるため、ソフトウェアで設定する値も、1からの実際の値で設定されるのが一般的である。
一方、これらの値を使用して動作する半導体集積回路内部のハードウェアは、0という値を使用しているので、設定された変数の値をマイナス1して使用している。例えば、入力画像の水平サイズが1〜256ピクセルで変化する場合、水平サイズを管理するカウンタは、0〜255で変化するようにし、画像の右端を、設定された水平サイズからマイナス1した値で検出している。
図1は、従来の半導体集積回路の一実施例を示すブロック図である。
図1において、10は半導体集積回路、20はCPU等の外部ハードウェアである。
ここで、半導体集積回路10は、内部バス100、機能ブロックA(110A)、機能ブロックM(110M)、機能ブロックN(110N)、減算器M(120M)、減算器N(120N)、レジスタA(130A)、レジスタM(130M)、レジスタN(130N)、等で構成されている。
CPU20は、半導体集積回路10の機能ブロックA(110A)、機能ブロックM(110M)、機能ブロックN(110N)を動作させる際、バスインターフェイスを介して、各機能ブロック毎に配置されているレジスタA(130A)、レジスタM(130M)、レジスタN(130N)に、必要な設定値を書き込む。
これらの機能ブロックの内、機能ブロックA(110A)は、レジスタA(130A)に設定された値をそのまま使用する機能ブロック、機能ブロックM(110M)と機能ブロックN(110N)は、レジスタM(130M)とレジスタN(130N)に設定された値をマイナス1して使用する機能ブロックとすると、機能ブロックM(110M)と機能ブロックN(110N)には、レジスタM(130M)、レジスタN(130N)の値をマイナス1するための減算器M(120M)、減算器N(120N)が必要となる。
また、他の手法としては、設定値をマイナス1する減算器は用いずに、ソフトウェアで設定する値を予めマイナス1して設定する方法がとられる。この場合、ソフトウェア設計者がレジスタに設定する値をマイナス1し忘れると、システム機器のバグに繋がり、機器が不具合を起こすという問題があり、このような課題を解決するために、レジスタ設定値の間違いを監視するレジスタ設定値監視モジュールを備えた、半導体集積回路が提案されている(例えば、特許文献1参照)。
特開2006−293641号公報
このように、従来の半導体集積回路内部には、レジスタに正しい値を設定するための冗長な回路が、存在しているという課題があった。
本発明は、前記従来の課題を解決するために、半導体集積回路の回路増を抑える技術を提供することにある。
本発明の半導体集積回路のレジスタブロックは、1つの減算器と、1つの加算器と、データを記憶する複数の記憶素子と、前記複数の記憶素子の特定の1つを選択する選択回路と、データを前記選択回路により選択された前記複数の記憶素子の特定の1つに書き込む際に、前記減算器でマイナス1して書き込むか、そのまま書き込むか、を切り換える切り換え回路と、を備え、前記複数の記憶素子の中で、前記減算器でデータをマイナス1して書き込まれた記憶素子から、データの読み出しを行う際は、記憶されているデータを前記加算器でプラス1して出力する
本発明のレジスタブロックを搭載した半導体集積回路は、従来、各機能ブロック毎に用意していた設定値−1のための減算器やレジスタ設定値監視モジュールが必要なくなり、半導体集積回路の回路面積を削減することができる。
また、データ値をマイナス1という減算をすることで、変数のビット幅を小さくできる場合があり、変数を記憶するレジスタ(記憶素子)を減らせ、回路面積を削減する効果が増す。このレジスタ(記憶素子)の削減というのは、例えば、1〜256の値を扱う際に、そのまま1〜256のデータを処理する場合は9ビット幅が必要であるが、データ値をマイナス1して、0〜255の値で扱えば、8ビット幅ですむという理由からである。
更に、これらの回路面積の削減は、半導体集積回路の消費電力の削減にも繋げることができる。
従来の半導体集積回路のブロック図である。 本発明による半導体集積回路のブロック図である。 本発明によるレジスタブロックのブロック図である。 本発明によるレジスタブロックのタイミングチャートである。
図2は、本発明における半導体集積回路の一実施例を示すブロック図である。
図2において、10は半導体集積回路、20はCPU等の外部ハードウェアである。
ここで、半導体集積回路10は、内部バス100、機能ブロックA(110A)、機能ブロックM(110M)、機能ブロックN(110N)、レジスタブロック140、等で構成されている。
図3は、本発明におけるレジスタブロック140の一実施例を示すブロック図である。
ここで、レジスタブロック140は、書き込みデータwdataを減算(マイナス1)する減算器141、書き込みデータwdataを保存する記憶素子142A、142M、142N、アドレス信号addressから記憶素子142A、142M、142Nの位置(アドレス番地)を特定するアドレスデコーダー143、減算して保存したデータを加算(プラス1)する加算器144、等で構成されている。
以下、図2、図3に基づいて本発明の実施例を具体的に説明する。
CPU20は、半導体集積回路10の機能ブロックA(110A)、機能ブロックM(110M)、機能ブロックN(110N)を動作させる際、バスインターフェイスを介して、レジスタブロック140に、必要な設定値を書き込む。
これらの機能ブロックの内、機能ブロックA(110A)は、設定された値をそのまま使用する機能ブロックであり、機能ブロックM(110M)と機能ブロックN(110N)は、設定された値をマイナス1して使用する機能ブロックとする。
また、レジスタブロック140の記憶素子142Aは、機能ブロックA(110A)を動作させるための設定値を保存し、アドレス0番地に対応する記憶素子であり、記憶素子142Mは、機能ブロックM(110M)を動作させるための設定値を保存し、アドレス1番地に対応する記憶素子であり、記憶素子142Nは、機能ブロックN(110N)を動作させるための設定値を保存し、アドレス2番地に対応する記憶素子とする。
レジスタブロック140の内部では、記憶素子142Aは、設定された値をそのまま使用する機能ブロックA(110A)用の記憶素子であるため、書き込みデータwdata(T4)がそのまま記憶されるように結線され、記憶素子142M、142Nは、設定された値をマイナス1して使用する機能ブロックM(110M)、機能ブロックN(110N)用の記憶素子であるため、減算器141の出力信号Wdata−1(T5)が記憶されるように結線されている。
次に、レジスタブロック140の動作について説明する。
ある特定の位置(アドレス番地)にある記憶素子を制御する場合、バスインターフェイス信号を介して実現する。バスインターフェイス信号は、クロックclock(T0)、アドレス信号address(T1)、チップイネーブルce(T2)、ライトイネーブルwe(T3)、書き込みデータwdata(T4)、読み出しデータrdata(T8)で構成される。
記憶素子にデータを記憶する場合(ライト・オペレーション)は、記憶させたい記憶素子の位置(アドレス番地)をアドレス信号address(T1)で指定し、チップイネーブルce(T2)をhigh、ライトイネーブルwe(T3)をhigh、記憶させたい値を書き込みデータwdata(T4)で指定する。
このライト・オペレーションをアドレス0番地に対して実行すると、アドレスデコーダー143により記憶素子142Aが特定され、書き込みデータwdata(T4)で指定された値がそのまま記憶素子142Aに記憶され、機能ブロックA(110A)を動作させる設定値Adata(T6)となる。
また、ライト・オペレーションをアドレス1番地、及び2番地に対して実行すると、アドレスデコーダー143により記憶素子142M、及び142Nが特定され、減算器141により書き込みデータwdata(T4)で指定された値からマイナス1された値が、記憶素子142M、及び142Nに記憶され、機能ブロックM(110M)、機能ブロックN(110N)を動作させる設定値Mdata(T7)、及びNdataとなる。
次に、記憶素子に記憶されているデータを読み出す場合(リード・オペレーション)は、各記憶素子に記憶されているデータの中から、アドレス信号address(T1)で指定された記憶素子のデータを選択して出力する。
このリード・オペレーションをアドレス0番地に対して実行すると、アドレスデコーダー143により記憶素子142Aが特定され、記憶素子142Aに記憶されているデータが、読み出しデータrdata(T8)としてそのまま出力されるが、アドレス1番地、及び2番地に対して実行すると、アドレスデコーダー143により記憶素子142M、及び142Nが特定され、記憶素子142M、142Nに記憶されているデータに加算器144でプラス1された値が、読み出しデータrdata(T8)として出力される。
このように本発明のレジスタブロックは、加算器と減算器を各々1個のみ使用して、ある特定の位置(アドレス番地)の記憶素子に対してのみ、マイナス1したデータを記憶し、このマイナス1したデータは、プラス1して出力することを特徴としたレジスタ・インターフェイス回路である。
なお、レジスタブロック140の構成は、前記実施形態に例示したものは一例であり、これに限られるものではない。
図4は、レジスタブロック140の動作例を示すタイミングチャートである。
図4で示すように、記憶素子142Aに記憶されるデータは、書き込みデータwdata(T4)の250という値がそのまま記憶され、Adata(T6)となっているが、記憶素子142Mに記憶されるデータは、書き込みデータwdata(T4)の100という値がマイナス1された99という値が記憶され、Mdata(T7)となっているのがわかる。
また、読み出しデータrdata(T8)は、記憶素子142Aを読み出した場合も、書き込みデータをマイナス1をした値を記憶した記憶素子142Mを読み出した場合でも、読み出された値は、書き込みデータwdata(T4)の250、及び100という値が出力されているのがわかる。
前記実施例で説明したように、本発明の半導体集積回路のレジスタブロックは、減算器と加算器を各々1個のみ備え、CPUからのバスインターフェースで接続されるデータ信号を、そのまま使用するデータ(スルーデータ)と、予め減算器でマイナス1に減算したデータ(減算データ)の2つを用意して、記憶素子に記憶するアドレス番地毎に(設定する変数毎に)、スルーデータか減算データかを選択して記憶する。すなわち、設定するデータの値がデータ値−1が必要なレジスタ(記憶素子)には減算データを書き込み、設定するデータの値が入力データそのままで良いレジスタ(記憶素子)にはスルーデータを書き込むようにした。
また、各レジスタ(記憶素子)に設定されたデータをCPUで読み出す場合は、データ値−1の減算データを書き込んだレジスタ(記憶素子)の値は、加算器でプラス1した値をバスインターフェースに出力するようにしたので、ハードウェアを制御しているソフトウェア側では、ハードウェア内部のデータの持ち方(マイナス1したデータで処理するか、そのままの値で処理するか)を意識する必要はない。
そして、このように構成された本発明の半導体集積回路のレジスタブロックは、従来、各機能ブロック毎に用意していた設定値−1のための減算器やレジスタ設定値監視モジュールが必要なくなり、半導体集積回路の回路面積を削減することができる。
また、データ値をマイナス1という減算をすることで、変数のビット幅を小さくできる場合があり、変数を記憶するレジスタ(記憶素子)を減らせ、回路面積を削減する効果が増す。
更に、これらの回路面積の削減は、半導体集積回路の消費電力の削減にも繋げることができる。
以下に、本出願の特許請求の範囲に記載された発明を付記する。
[請求項1]
外部ハードウェアとバスインターフェースで接続されるデータ信号で、データの書き込みと読み出しを行なうレジスタブロックを備える半導体集積回路において、
前記レジスタブロックは、
1つの減算器と、
1つの加算器と、
データを記憶する複数の記憶素子と、
前記複数の記憶素子の特定の1つを選択する選択回路と、
データを前記複数の記憶素子に書き込む際に、前記減算器でマイナス1して書き込むか、そのまま書き込むか、を切り換える切り換え回路と、
を備えたことを特徴とする半導体集積回路のレジスタブロック。
[請求項2]
前記複数の記憶素子の中で、前記減算器でデータをマイナス1して書き込まれた記憶素子から、データの読み出しを行う際は、記憶されているデータを前記加算器でプラス1して出力することを特徴とする請求項1に記載の半導体集積回路のレジスタブロック。
10 半導体集積回路
20 CPU
100 内部バス
110A 機能ブロックA
110M 機能ブロックM
110N 機能ブロックN
120M 減算器M
120N 減算器N
130A レジスタA
130M レジスタM
130N レジスタN
140 レジスタブロック
141 減算器
142A 記憶素子
142M 記憶素子
142N 記憶素子
143 アドレスデコーダー
144 加算器
T0 システムクロックclock
T1 アドレス信号address
T2 チップイネーブルce
T3 ライトイネーブルwe
T4 書き込みデータwdata
T5 減算Wdata−1
T6 設定値Adata
T7 設定値Mdata
T8 読み出しデータrdata

Claims (2)

  1. 外部ハードウェアとバスインターフェースで接続されるレジスタブロックを備える半導体集積回路において、
    前記レジスタブロックは、
    1つの減算器と、
    1つの加算器と、
    データを記憶する複数の記憶素子と、
    前記複数の記憶素子の特定の1つを選択する選択回路と、
    データを前記選択回路により選択された前記複数の記憶素子の特定の1つに書き込む際に、前記減算器でマイナス1して書き込むか、そのまま書き込むか、を切り換える切り換え回路と、
    を備え、
    前記複数の記憶素子の中で、前記減算器でデータをマイナス1して書き込まれた記憶素子から、データの読み出しを行う際は、記憶されているデータを前記加算器でプラス1して出力することを特徴とする半導体集積回路。
  2. 外部ハードウェアとバスインターフェースで接続されるレジスタブロックを備える半導体集積回路のレジスタブロック制御方法であって、
    前記レジスタブロックは、
    1つの減算器と、1つの加算器と、データを記憶する複数の記憶素子と、前記複数の記憶素子の特定の1つを選択する選択回路と、を備え、
    データを前記選択回路により選択された前記複数の記憶素子の特定の1つに書き込む際に、前記減算器でマイナス1して書き込むか、そのまま書き込むか、を切り換え、
    前記複数の記憶素子の中で、前記減算器でデータをマイナス1して書き込まれた記憶素子から、データの読み出しを行う際は、記憶されているデータを前記加算器でプラス1して出力することを特徴とする半導体集積回路のレジスタブロック制御方法。
JP2012140509A 2012-06-22 2012-06-22 半導体集積回路、半導体集積回路のレジスタブロック制御方法 Active JP5994423B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012140509A JP5994423B2 (ja) 2012-06-22 2012-06-22 半導体集積回路、半導体集積回路のレジスタブロック制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012140509A JP5994423B2 (ja) 2012-06-22 2012-06-22 半導体集積回路、半導体集積回路のレジスタブロック制御方法

Publications (3)

Publication Number Publication Date
JP2014006622A JP2014006622A (ja) 2014-01-16
JP2014006622A5 JP2014006622A5 (ja) 2015-07-23
JP5994423B2 true JP5994423B2 (ja) 2016-09-21

Family

ID=50104300

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012140509A Active JP5994423B2 (ja) 2012-06-22 2012-06-22 半導体集積回路、半導体集積回路のレジスタブロック制御方法

Country Status (1)

Country Link
JP (1) JP5994423B2 (ja)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000315122A (ja) * 1999-05-06 2000-11-14 Nec Eng Ltd タイマ回路及びタイムアウト通知方法

Also Published As

Publication number Publication date
JP2014006622A (ja) 2014-01-16

Similar Documents

Publication Publication Date Title
CN104350546B (zh) 行锤击刷新命令
JP4789753B2 (ja) 画像データバッファ装置、画像転送処理システム、及び画像データバッファ方法
US8914592B2 (en) Data storage apparatus with nonvolatile memories and method for controlling nonvolatile memories
US20160086565A1 (en) Display driving circuit, method of operating display driving circuit, and system on chip
JP2017033501A (ja) 記憶装置および制御方法
US20070106835A1 (en) Display controller and method of updating parameters of the same
JP4085983B2 (ja) 情報処理装置およびメモリアクセス方法
JP5994423B2 (ja) 半導体集積回路、半導体集積回路のレジスタブロック制御方法
JP6004463B2 (ja) 記憶装置及びその制御方法
JP2010061620A (ja) Dma装置及びdma転送方法
US9191002B2 (en) Data processing apparatus and method in PLC system
JP5982148B2 (ja) 半導体記憶装置
JP5907558B2 (ja) マルチインターバルタイマ並びにその制御装置、制御方法及び制御プログラム
CN112579481B (zh) 数据处理方法、数据处理装置和计算装置
JP2011028790A (ja) 半導体記憶装置及びリフレッシュ制御方法
JP4829598B2 (ja) 多ビット記憶装置及び多ビット記憶方法
JP2017182759A (ja) コンピューターのcpuの動作速度の倍速化法
JP2008225894A (ja) Sdramコントローラ
US10429916B2 (en) Control apparatus that controls a memory and power saving control method for the memory
JP5233543B2 (ja) データ処理回路、画像処理装置、及び、データ処理方法
US9251887B2 (en) Static random access memory system and operation method thereof
JP5393626B2 (ja) 情報処理装置
JP2012146167A (ja) メモリエラーパターン記録システム、メモリモジュール、及びメモリエラーパターン記録方法
JP2015088210A (ja) 磁気ディスク装置、制御方法及び制御プログラム
JP2008146307A (ja) タイマ制御装置およびその障害検出方法

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150602

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150602

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160413

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160517

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160614

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: 20160726

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160808

R150 Certificate of patent (=grant) or registration of utility model

Ref document number: 5994423

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150