JP2014194619A - バッファ回路及び半導体集積回路 - Google Patents
バッファ回路及び半導体集積回路 Download PDFInfo
- Publication number
- JP2014194619A JP2014194619A JP2013070336A JP2013070336A JP2014194619A JP 2014194619 A JP2014194619 A JP 2014194619A JP 2013070336 A JP2013070336 A JP 2013070336A JP 2013070336 A JP2013070336 A JP 2013070336A JP 2014194619 A JP2014194619 A JP 2014194619A
- Authority
- JP
- Japan
- Prior art keywords
- register
- data
- received data
- write
- output
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Human Computer Interaction (AREA)
- Information Transfer Systems (AREA)
Abstract
【解決手段】レジスタ列41と、複数の受信データを転送順序に並び替えてレジスタ列に格納し、揃った時に1つの転送データとして出力するように制御する制御回路42と、を有し、制御回路は、レジスタ列が複数の受信データを出力するとき、レジスタ列を、各レジスタの格納データを前段のレジスタに格納するように制御し、レジスタ列が新たに新受信データを格納するとき、転送順序に応じて書込レジスタを決定し、レジスタ列を、書込レジスタの格納データを書込レジスタの後段のレジスタに格納し、書込レジスタに新受信データを格納するように制御する
バッファ回路。
【選択図】図6
Description
また、並び替えを実現する際に、ローカルバスへの出力におけるレイテンシィが高くなっていた。
LSI(大規模半導体集積回路)等に搭載されるシステムでは、プロトコル変換回路を設けて、内部のローカルバスのバスプロトコルと異なるバスプロトコルの周辺デバイスを接続する場合がある。
図1のプロトコル変換回路1は、システム側内部のAXIローカルバスプロトコルと周辺デバイスのPCI Expressプロトコルの間の変換を行う。例えば、プロトコル変換回路1は、システム側のAXI(Advanced eXtensible Interface)ローカルバスからの読み出し(Read)要求(サイズを持つデータ要求)に対して、PCI ExpressのRead要求に変換する動作を行う。しかし、要求サイズの上限値の制限やバス特有の制限事項により、1回のAXI Read要求を複数のPCI Express Readに分割要求する必要がある。また、分割要求されたPCI ExpressバスではReadデータを要求順序通りに応答することが規定されていないため、分割したデータが順不同に転送される。しかし、AXIのReadデータとしては順序通りの1つのデータで返す必要があるため、分割データを並び替える必要があった。
LSI等に踏査される大規模システムにおいては、PCI Express、USB(Universal Serial Bus)、SATA(Serial Advanced Technology Attachment)、Ethernet(登録商標)などの様々なインタフェースモジュールをローカルバスに接続して異なる種類の周辺デバイスとの通信を行うのが一般的である。
ブリッジ回路15Aは、ブリッジ制御部31と、分割処理部32と、バッファ回路33と、を有する。ブリッジ回路15Aは、Readのデータ転送ではRead要求(リクエスト)Aの発行に対して、周辺デバイスにReadリクエストを発行し、それに応じた周辺デバイスからのReadデータを受領し、ローカルバスに出力する。ブリッジ制御部31は、各部の制御を行う。
例えば、128Byteの総データ量で、分割数が1の場合は128Byteの1つのデータとなり、分割数が4の場合では、14Byte、64Byte、32Byte、18Byteなどの異なる大きさのデータが入力されることになり、それらの順序を整列する。このとき、分割された各データには順序を識別するTAG番号(#0,#1,#2…)が付与されており、これを利用して、分割データ間の順序を識別する。さらに、それぞれの分割データ内のデータ列は、順序が守られているものとする。
図4は、順不同に入力されるデータをバッファリングし整列させるバッファ回路を示す図であり、(A)が構成例を示し、(B)が各データバッファのデータ格納状況の例を示す。
図5の(A)に示すように、実施形態のバッファ回路は、総転送データ量分のサイズのバッファ回路であり、レジスタ列と、レジスタ列の制御回路と、を有する。制御回路は、複数の受信データをあらかじめ定められた転送順序に並び替えてレジスタ列に格納し、複数の受信データが揃った時に1つの転送データとして順次出力するように制御を行う。
図5の(C)に示すように、TAG1のデータの長さが1の場合には、wp1=3が示す3番のレジスタにTAG1のデータが格納され、wp2およびwp3は1ずつ増加する(後にずれる)。wp0=3は変化しない。
図6は、実施形態のバッファ回路の構成を示す図である。
実施形態のバッファ回路は、レジスタ列41と、制御回路42と、を有する。
位置判定回路62は、入力が要求された新データのTAG番号と一致するポインタレジスタの番号を探し、それに対応する後端ポインタの値および新データの長さを、新データ書き込みパルス(NW)発生回路63および後方シフトパルス(BS)発生回路64に出力する。
2個のANDゲート65、66は、新データ書き込みパルスNWおよび後方シフトパルスBSが、バッファ回路に対して入力要求が出されている時のみ、レジスタ列41に出力されるように制御する。
選択・ラッチ信号生成回路73は、各レジスタへの、新データ書き込み信号NW、後方シフト信号BSおよび出力信号OEに応じて、選択信号S1およびS2およびラッチ信号Lを生成する。
図8に示すように、出力信号OE=1 (=H: active)の時にはS1=0およびS2=0となり、セレクタは、パス52、すなわち後段のレジスタの出力するデータを選択する。出力信号OE=0 (=L: inactive)の時で、NW=1の時にはS1=0およびS2=1となり、セレクタは、入力データバス53、すなわち新たに転送されたデータを選択する。出力信号OE=0の時で、BS=1の時にはS1=1およびS2=0となり、セレクタは、前段から後段のレジスタへのデータパス54A、54B、54Cのデータを選択する。
各レジスタは、出力信号OEに応じて後段のレジスタの格納データを格納し、新データ書き込みパルス(書き込み信号)NWに応じて入力バスからのデータを格納し、後方シフトパルス(既データシフト信号)BSに応じて前段のレジスタの格納データを格納する。
図9から図11は、実施形態のバッファ回路において、周辺デバイスから転送された分割データをTAG番号順にレジスタ列41に格納する動作および転送データが揃った後順に出力する動作を説明する図である。ここでは、8bit(1byte)幅の総データ量32bit(4byte)転送データを、8bit(1byte)ずつの4分割データとして4段のレジスタ列に格納した後、出力する場合を示し、TAG番号2、0、3、1の順番で転送される場合である。なお、説明を簡単にするため、上記のように各分割データの長さは1であるとして説明および図示するが、長さ2以上でもよい。
以上のようにして、周辺デバイスからの転送データはすべて揃ったことになるので、次にレジスタ回路からの出力動作を実行する。
なお、図8から図19の説明では、各分割データの長さは1であるとしたが、長さ2以上でもよく、その場合にはそれぞれの分割データのバッファ回路への格納動作を長さ分だけ繰り返す。
41 レジスタ列
42 制御回路
51−0〜51−N−1 レジスタ
52 後段から前段のレジスタへのデータパス
53 入力データバス
54 前段から後段のレジスタへのデータパス
61−0〜61−M−1 後端ポインタレジスタ
Claims (7)
- 複数段のレジスタを有するレジスタ列と、
複数の受信データをあらかじめ定められた転送順序に並び替えて前記レジスタ列に格納し、前記複数の受信データが揃った時に1つの転送データとして順次出力するように前記レジスタ列を制御する制御回路と、を備え、
前記制御回路は、前記レジスタ列が前記複数の受信データを出力するとき、前記レジスタ列を、各レジスタの格納データを前段のレジスタに格納するように制御し、
前記制御回路は、前記レジスタ列が新たに新受信データを格納するとき、前記転送順序に応じて書込レジスタを決定し、前記レジスタ列を、前記書込レジスタの格納データを前記書込レジスタの後段のレジスタに格納し、前記書込レジスタに前記新受信データを格納するように制御する
ことを特徴とするバッファ回路。 - 前記レジスタ列の各レジスタは、出力信号に応じて後段のレジスタの格納データを格納し、書き込み信号に応じて入力バスからのデータを格納し、既データシフト信号に応じて前段のレジスタの格納データを格納し、
前記制御回路は、
各受信データを前記各受信データに付されたタグ番号に従って順に初段レジスタから格納し、
タグ番号と対応し、各受信データを格納している後端レジスタの位置を示す後端ポインタを記憶するポインタレジスタを有し、
新たに新受信データを格納する時には、新受信データのタグ番号と対応する前記後端ポインタから新受信データを格納する書込レジスタの位置を決定し、前記書込レジスタに前記書き込み信号を出力し、前記書込レジスタより後段のレジスタに前記既データシフト信号を出力し、
前記複数の受信データが揃った時に、前記レジスタ列のすべてのレジスタに、前記出力信号を出力することを特徴とする請求項1記載のバッファ回路。 - 各レジスタは、
後段のレジスタの格納データ、前段のレジスタの格納データおよび前記入力バスから入力されるデータのいずれかを選択するセレクタと、
前記セレクタの出力をラッチするラッチ回路と、を備えることを特徴とする請求項2記載のバッファ回路。 - 初段のレジスタの前記セレクタは、前段のレジスタの格納データを選択することが無いように制御され、
最終段のレジスタの前記セレクタは、後段のレジスタの格納データとして初期値が入力されることを特徴とする請求項3記載のバッファ回路。 - 前記書込レジスタへの新受信データの格納および前記書込レジスタより後段のレジスタへの前段のデータの格納は、並列に同時に行い、
前記すべてのレジスタへの後段のレジスタの格納データの格納は、並列に同時に行うことを特徴とする請求項1から4のいずれか1項記載のバッファ回路。 - ローカルバスと、
前記ローカルバスに接続された周辺デバイスとのインターフェース回路と、を備える半導体集積回路であって、
前記インターフェース回路は、バッファ回路を備え、
前記バッファ回路は、
複数段のレジスタを有するレジスタ列と、
複数の受信データをあらかじめ定められた転送順序に並び替えて前記レジスタ列に格納し、前記複数の受信データが揃った時に1つの転送データとして順次出力するように前記レジスタ列を制御する制御回路と、を備え、
前記制御回路は、前記レジスタ列が前記複数の受信データを出力するとき、前記レジスタ列を、各レジスタの格納データを前段のレジスタに格納するように制御し、
前記制御回路は、前記レジスタ列が新たに新受信データを格納するとき、前記転送順序に応じて書込レジスタを決定し、前記レジスタ列を、前記書込レジスタの格納データを前記書込レジスタの後段のレジスタに格納し、前記書込レジスタに前記新受信データを格納するように制御する
ことを特徴とする半導体集積回路。 - 前記レジスタ列の各レジスタは、出力信号に応じて後段のレジスタの格納データを格納し、書き込み信号に応じて入力バスからのデータを格納し、既データシフト信号に応じて前段のレジスタの格納データを格納し、
前記制御回路は、
各受信データを前記各受信データに付されたタグ番号に従って順に初段レジスタから格納し、
タグ番号と対応し、各受信データを格納している後端レジスタの位置を示す後端ポインタを記憶するポインタレジスタを有し、
新たに新受信データを格納する時には、新受信データのタグ番号と対応する前記後端ポインタから新受信データを格納する書込レジスタの位置を決定し、前記書込レジスタに前記書き込み信号を出力し、前記書込レジスタより後段のレジスタに前記既データシフト信号を出力し、
前記複数の受信データが揃った時に、前記レジスタ列のすべてのレジスタに、前記出力信号を出力することを特徴とする請求項6記載の半導体集積回路。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013070336A JP6094321B2 (ja) | 2013-03-28 | 2013-03-28 | バッファ回路及び半導体集積回路 |
US14/222,367 US9003083B2 (en) | 2013-03-28 | 2014-03-21 | Buffer circuit and semiconductor integrated circuit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013070336A JP6094321B2 (ja) | 2013-03-28 | 2013-03-28 | バッファ回路及び半導体集積回路 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014194619A true JP2014194619A (ja) | 2014-10-09 |
JP6094321B2 JP6094321B2 (ja) | 2017-03-15 |
Family
ID=51621983
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013070336A Expired - Fee Related JP6094321B2 (ja) | 2013-03-28 | 2013-03-28 | バッファ回路及び半導体集積回路 |
Country Status (2)
Country | Link |
---|---|
US (1) | US9003083B2 (ja) |
JP (1) | JP6094321B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2022086294A (ja) * | 2020-11-30 | 2022-06-09 | 日本電波工業株式会社 | 伝送回路 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10216669B2 (en) * | 2016-02-23 | 2019-02-26 | Honeywell International Inc. | Bus bridge for translating requests between a module bus and an axi bus |
GB202107393D0 (en) * | 2021-05-24 | 2021-07-07 | Nordic Semiconductor Asa | Data bus communications |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04250583A (ja) * | 1991-01-25 | 1992-09-07 | Nec Corp | 情報収集装置 |
JP2005267415A (ja) * | 2004-03-19 | 2005-09-29 | Nec Corp | 順序制御回路 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2125607A1 (en) | 1993-06-30 | 1994-12-31 | David Thielen | Method and system for buffering transient data |
JP4923849B2 (ja) | 2006-08-21 | 2012-04-25 | 富士通株式会社 | 無線受信装置 |
US8244938B2 (en) | 2010-11-23 | 2012-08-14 | International Business Machines Corporation | Sliding write window mechanism for writing data |
-
2013
- 2013-03-28 JP JP2013070336A patent/JP6094321B2/ja not_active Expired - Fee Related
-
2014
- 2014-03-21 US US14/222,367 patent/US9003083B2/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04250583A (ja) * | 1991-01-25 | 1992-09-07 | Nec Corp | 情報収集装置 |
JP2005267415A (ja) * | 2004-03-19 | 2005-09-29 | Nec Corp | 順序制御回路 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2022086294A (ja) * | 2020-11-30 | 2022-06-09 | 日本電波工業株式会社 | 伝送回路 |
JP7376459B2 (ja) | 2020-11-30 | 2023-11-08 | 日本電波工業株式会社 | 伝送回路 |
Also Published As
Publication number | Publication date |
---|---|
JP6094321B2 (ja) | 2017-03-15 |
US20140297906A1 (en) | 2014-10-02 |
US9003083B2 (en) | 2015-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11609769B2 (en) | Configuration of a reconfigurable data processor using sub-files | |
US11188497B2 (en) | Configuration unload of a reconfigurable data processor | |
US10027433B2 (en) | Multiple clock domains in NoC | |
US9348775B2 (en) | Out-of-order execution of bus transactions | |
CN106021141B (zh) | 半导体设备 | |
CN112114875B (zh) | 一种超导并行寄存器堆装置 | |
CN112486453B (zh) | 一种异步先入先出寄存器以及芯片 | |
WO2017148221A1 (zh) | 串行外设接口的传输控制方法、装置及系统 | |
JP6094321B2 (ja) | バッファ回路及び半導体集積回路 | |
US20220391695A1 (en) | Tensor dropout in a neural network | |
JP5643896B2 (ja) | デイジーチェーン接続されたデバイスのための高速インターフェイス | |
US20130002315A1 (en) | Asynchronous clock adapter | |
CN110554886B (zh) | 数据拆分结构、方法及其片上实现 | |
US11328209B1 (en) | Dual cycle tensor dropout in a neural network | |
CN106024045B (zh) | 半导体器件 | |
JP2023500300A (ja) | プログラマブルデバイス構成メモリシステム | |
US20120296623A1 (en) | Machine transport and execution of logic simulation | |
WO2018139344A1 (ja) | 情報処理システム、情報処理装置、周辺装置、データ転送方法、及びデータ転送プログラムが格納された非一時的な記憶媒体 | |
US10482208B2 (en) | Coding and synthesizing a state machine in state groups | |
US11200480B2 (en) | Counter readout circuit | |
US8966124B1 (en) | Systems, methods, and articles of manufacture to stream data | |
CN116680230B (zh) | 一种硬件加速电路及芯片 | |
CN101692216B (zh) | 动态数据流结构中存储-匹配-转发单元电路 | |
RU2686017C1 (ru) | Реконфигурируемый вычислительный модуль | |
US20130212363A1 (en) | Machine transport and execution of logic simulation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20150612 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20151201 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20161014 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20161101 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20161212 |
|
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: 20170117 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170130 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6094321 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |