JP5196905B2 - 動的再構成可能演算装置および半導体装置 - Google Patents
動的再構成可能演算装置および半導体装置 Download PDFInfo
- Publication number
- JP5196905B2 JP5196905B2 JP2007203380A JP2007203380A JP5196905B2 JP 5196905 B2 JP5196905 B2 JP 5196905B2 JP 2007203380 A JP2007203380 A JP 2007203380A JP 2007203380 A JP2007203380 A JP 2007203380A JP 5196905 B2 JP5196905 B2 JP 5196905B2
- Authority
- JP
- Japan
- Prior art keywords
- output
- input
- outputs
- adder
- selector
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Logic Circuits (AREA)
- Complex Calculations (AREA)
- Stored Programmes (AREA)
Description
図1は、この発明の実施の形態1による動的再構成可能演算装置を示す構成図である。
図において、動的再構成可能演算装置は、乗算器100〜107、加算器200〜207、セレクタ300〜307を備えており、これらがツリー状に構成されている。乗算器100〜107は、それぞれが2入力の乗算器であり、乗算器100には、入力データ100aと入力データ100bが入力されるよう構成されている。同様に、乗算器101には、入力データ101aと入力データ101bが、乗算器102には、入力データ102aと入力データ102bが、乗算器103には、入力データ103aと入力データ103bが、乗算器104には、入力データ104aと入力データ104bが、乗算器105には、入力データ105aと入力データ105bが、乗算器106には、入力データ106aと入力データ106bが、乗算器107には、入力データ107aと入力データ107bが、それぞれ接続される。また、出力100c〜107cは、それぞれ乗算器100〜107の出力である。
図2は、8タップ並列積和演算時の回路構成を示す説明図である。
先ず、8個の乗算器100〜107に、それぞれ入力データ100a〜107a、100b〜107bを入力する。乗算器100〜107からは、それぞれ乗算結果出力100c=100a・100b、101c=101a・101b、102c=102a・102b、103c=103a・103b、104c=104a・104b、105c=105a・105b、106c=106a・106b、107c=107a・107bが出力される。次に、加算器200に上記の乗算結果出力100cと101cが入力され、加算結果出力200a=100a・100b+101a・101bが得られる。同様に、加算器201には乗算結果出力102cと103cが入力され、加算結果出力201a=102a・102b+103a・103bが得られ、加算器202には乗算結果出力104cと105cが入力され、加算結果出力202a=104a・104b+105a・105bが得られ、加算器203には乗算結果出力106cと107cが入力され、加算結果出力203a=106a・106b+107a・107bが得られる。
図3は、8入力足し合わせ演算時の回路構成を示す説明図である。
先ず、8個の乗算器100〜107に、それぞれ入力データ100a〜107aと、100b〜107bには固定値“1”を入力する。乗算器100〜107からは、片方の入力が“1”であるため、それぞれ乗算結果出力100c=100a、101c=101a、102c=102a、103c=103a、104c=104a、105c=105a、106c=106a、107c=107aが出力される。
実施の形態2は、実施の形態1の構成において乗算器100〜107の一方の入力側にレジスタとセレクタとを備えたものである。
図4−1および図4−2は、実施の形態2における動的再構成可能演算装置を示す構成図である。
図示の動的再構成可能演算装置は、乗算器100〜107、加算器200〜207、セレクタ300〜315、レジスタ400〜407を備えている。ここで、レジスタ400〜407は、それぞれセレクタ308〜315を介して乗算器100〜107の一方の入力に接続される記憶素子であり、予め所定の値が設定されている。セレクタ308〜315は、2to1のセレクタであり、一方の入力をレジスタ400〜407の出力400a〜407aとして、もう一方の入力を入力データ100b〜107bとし、選択結果出力308a〜315aを乗算器100〜107の入力となるよう接続されている。これらセレクタ308〜315は、第3接続選択手段を構成している。これ以外の構成は、実施の形態1の構成と同様であるため、対応する部分に同一符号を付してその説明を省略する。
乗算器100〜107のおける乗算結果出力100c〜107c以降の信号に流れについては実施の形態1と同様であるため、ここでの説明は省略する。
図5−1および図5−2は、実施の形態2の動的再構成可能演算装置を用いた8入力足し合わせ演算時の回路構成を示す説明図である。
実施の形態2においては、図示のように、レジスタ400〜407にそれぞれ固定値“1”を予め設定し、セレクタ308〜315に、それぞれレジスタ出力400a〜407aを選択出力するようなセレクト信号sel8〜sel15(=“1”)を入力する。これにより、図3で示した実施の形態1における回路構成と同様の結果を得ることができる。尚、乗算器100〜107以降の動作は実施の形態1において図3で説明した動作と同様であるため、ここでの説明は省略する。
実施の形態3の動的再構成可能演算装置は、実施の形態2の構成に加えて、乗算器100〜107と加算器200〜207の出力を保持するためのレジスタ(記憶素子)をそれぞれ備えたものである。
図13−1および図13−2は、実施の形態3における動的再構成可能演算装置を示す構成図である。
図示の動的再構成可能演算装置は、乗算器100〜107、加算器200〜207、セレクタ300〜315、レジスタ400〜423を備えている。ここで、レジスタ408〜415は、それぞれ乗算器100〜107の乗算結果出力100c〜107cの値を保持するためのレジスタ、レジスタ416〜423は、それぞれ加算器200〜207の加算結果出力200a〜207aの値を保持するためのレジスタである。これ以外の構成は、図4−1および図4−2に示した実施の形態2の構成と同様であるため、対応する部分に同一符号を付してその説明を省略する。
このように、乗算器100〜107と加算器200〜207の演算結果出力を格納するレジスタ408〜423を備えることで、パイプライン動作が可能となり、装置全体のスループットを向上させることができる。
図14は、24タップFIRフィルタの動作イメージを示すものである。図中、FFは遅延素子を表す。
一般に、FIRフィルタの式は、式(4)で示される。
尚、式(4)において、Y(k)は時刻kにおける出力信号、Nはタップ数、xは入力信号、hはフィルタの係数である。
先ず、動的再構成可能演算装置上に8タップ並列積和演算を行う回路を構成し、1回目の8タップ分積和演算結果Y’0(23)を求めるための入力データであるx23〜x16とフィルタ係数h0〜h7を入力し、パイプラインの1段目において乗算を行う(図15−1および図15−2・手順1)。即ち、入力データ100a〜107として、x23〜x16をそれぞれ入力し、入力データ100b〜107bとしてフィルタ係数h0〜h7を入力する。また、セレクタ308〜315は、入力データ100b〜107bを選択するよう設定され、セレクタ300〜305は、それぞれレジスタ416〜421の出力416a〜421aを選択するよう設定される。更に、セレクタ304,305は、レジスタ420,421の出力420a,421aを選択するよう設定される。尚、各セレクタ300〜315の設定は図21−1および図21−2に示す手順7まで同様である。
また、図中、1回目の8タップ分積和演算結果Y’0(23)を求めるための演算を演算501で示している。
図22は、この発明の実施の形態4における半導体装置を示すものである。
図22において、半導体装置1は、実施の形態1〜3のいずれかである動的再構成可能演算装置2と、動的再構成可能演算装置2に入力される演算前のデータあるいは演算後のデータのうち少なくとも一方のデータを格納する入出力データバッファ3を備える。このような半導体装置1は、所定の演算処理を指定するプロセッサであるCPU4と、半導体装置1が処理するデータを格納するメモリ5とバスライン6を介して接続されている。
Claims (4)
- それぞれが、2入力の値の乗算を行う複数の乗算器と、
前記複数の乗算器の出力のうちいずれか二つの出力を入力として加算を行う複数の第1加算器と、
前記乗算器の出力または前記第1加算器の出力のうちいずれか二つの出力を入力として加算を行う複数の第2加算器と、
前記乗算器の出力または前記第2加算器の出力のうちいずれか二つの出力を入力として加算を行う複数の第3加算器と、
前記第2加算器に入力される前記乗算器の出力と前記第1加算器の出力とを選択する複数の第1接続選択手段と、
前記第3加算器に入力される前記乗算器の出力と前記第2加算器の出力とを選択する複数の第2接続選択手段とを備えた動的再構成可能演算装置。 - 任意の値を保持する複数の記憶素子と、前記複数の記憶素子の出力と所定の入力とを選択する第3接続選択手段を設け、前記複数の乗算器は前記第3接続選択手段の選択結果を、2入力のうちの一方の入力とすることを特徴とする請求項1記載の動的再構成可能演算装置。
- 乗算器、第1加算器、第2加算器、第3加算器の出力をそれぞれ保持する記憶素子を設けたことを特徴とする請求項1または請求項2記載の動的再構成可能演算装置。
- 請求項1から請求項3のうちのいずれか1項記載の動的再構成可能演算装置を備え、当該動的再構成可能演算装置は、所定の演算処理を指定するプロセッサからの指示に基づいて、当該指示に対応した演算処理を行うと共に、前記動的再構成可能演算装置に入力される演算前のデータまたは演算後のデータのうち、少なくとも一方のデータを格納するバッファを設けたことを特徴とする半導体装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007203380A JP5196905B2 (ja) | 2007-08-03 | 2007-08-03 | 動的再構成可能演算装置および半導体装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007203380A JP5196905B2 (ja) | 2007-08-03 | 2007-08-03 | 動的再構成可能演算装置および半導体装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009038758A JP2009038758A (ja) | 2009-02-19 |
JP5196905B2 true JP5196905B2 (ja) | 2013-05-15 |
Family
ID=40440274
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007203380A Expired - Fee Related JP5196905B2 (ja) | 2007-08-03 | 2007-08-03 | 動的再構成可能演算装置および半導体装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5196905B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107797962A (zh) * | 2017-10-17 | 2018-03-13 | 清华大学 | 基于神经网络的计算阵列 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5241268B2 (ja) * | 2008-02-26 | 2013-07-17 | 三菱電機株式会社 | 動的再構成可能演算装置および半導体装置 |
JP5197389B2 (ja) * | 2009-01-07 | 2013-05-15 | 三菱電機株式会社 | 動的再構成可能な積和演算装置および動的再構成可能プロセッサ |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6556044B2 (en) * | 2001-09-18 | 2003-04-29 | Altera Corporation | Programmable logic device including multipliers and configurations thereof to reduce resource utilization |
JPS63268067A (ja) * | 1987-04-27 | 1988-11-04 | Mitsubishi Electric Corp | 積和演算回路 |
JP3170599B2 (ja) * | 1996-03-01 | 2001-05-28 | 経済産業省産業技術総合研究所長 | プログラマブルlsiおよびその演算方法 |
JPH1055352A (ja) * | 1996-08-08 | 1998-02-24 | Fuji Xerox Co Ltd | 浮動小数点数累積加算装置 |
JP4502662B2 (ja) * | 2004-02-20 | 2010-07-14 | アルテラ コーポレイション | 乗算器−累算器ブロックモード分割 |
-
2007
- 2007-08-03 JP JP2007203380A patent/JP5196905B2/ja not_active Expired - Fee Related
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107797962A (zh) * | 2017-10-17 | 2018-03-13 | 清华大学 | 基于神经网络的计算阵列 |
CN107797962B (zh) * | 2017-10-17 | 2021-04-16 | 清华大学 | 基于神经网络的计算阵列 |
Also Published As
Publication number | Publication date |
---|---|
JP2009038758A (ja) | 2009-02-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9880845B2 (en) | Vector processing engines (VPEs) employing format conversion circuitry in data flow paths between vector data memory and execution units to provide in-flight format-converting of input vector data to execution units for vector processing operations, and related vector processor systems and methods | |
US9792118B2 (en) | Vector processing engines (VPEs) employing a tapped-delay line(s) for providing precision filter vector processing operations with reduced sample re-fetching and power consumption, and related vector processor systems and methods | |
US8112466B2 (en) | Field programmable gate array | |
US9977676B2 (en) | Vector processing engines (VPEs) employing reordering circuitry in data flow paths between execution units and vector data memory to provide in-flight reordering of output vector data stored to vector data memory, and related vector processor systems and methods | |
US9684509B2 (en) | Vector processing engines (VPEs) employing merging circuitry in data flow paths between execution units and vector data memory to provide in-flight merging of output vector data stored to vector data memory, and related vector processing instructions, systems, and methods | |
US7814297B2 (en) | Algebraic single instruction multiple data processing | |
US8891757B2 (en) | Programmable cryptographic integrated circuit | |
US9619227B2 (en) | Vector processing engines (VPEs) employing tapped-delay line(s) for providing precision correlation / covariance vector processing operations with reduced sample re-fetching and power consumption, and related vector processor systems and methods | |
KR101162649B1 (ko) | 가변적 크기의 고속 직교 변환을 구현하기 위한 방법 및장치 | |
US20150143076A1 (en) | VECTOR PROCESSING ENGINES (VPEs) EMPLOYING DESPREADING CIRCUITRY IN DATA FLOW PATHS BETWEEN EXECUTION UNITS AND VECTOR DATA MEMORY TO PROVIDE IN-FLIGHT DESPREADING OF SPREAD-SPECTRUM SEQUENCES, AND RELATED VECTOR PROCESSING INSTRUCTIONS, SYSTEMS, AND METHODS | |
CN107645287B (zh) | 一种6并行快速fir滤波器 | |
JP5196905B2 (ja) | 動的再構成可能演算装置および半導体装置 | |
Shukla et al. | QUKU: a two-level reconfigurable architecture | |
US10963265B2 (en) | Apparatus and method to switch configurable logic units | |
Tsmots et al. | Design of the processors for fast cosine and sine Fourier transforms | |
Wang et al. | High-level designs of complex fir filters on fpgas for the ska | |
Awan et al. | FPGA implementation analysis of polyphase channelizer performing sample rate change required for both matched filtering and channel frequency spacing | |
Saha et al. | An FPGA based architecture of a novel reconfigurable radio processor for software defined radio | |
JP5197389B2 (ja) | 動的再構成可能な積和演算装置および動的再構成可能プロセッサ | |
US8543628B2 (en) | Method and system of digital signal processing | |
Banerjee et al. | Performance analysis of different DSP algorithms on advanced microcontroller and FPGA | |
Petrovsky et al. | Automatic generation of split-radix 2-4 parallel-pipeline FFT processors: hardware reconfiguration and core optimizations | |
Kasap et al. | High-Performance System-on-Chip-Based Accelerator System for Polynomial Matrix Multiplications | |
Sinha et al. | A novel reconfigurable architecture of a DSP processor for efficient mapping of DSP functions using field programmable DSP arrays | |
Vaithiyanathan et al. | Comparative Study of Single MAC FIR Filter Architectures with Different Multiplication Techniques |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100608 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120809 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120821 |
|
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: 20130108 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130205 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160215 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5196905 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |