JP2022048644A - 半導体装置及び転送方法 - Google Patents
半導体装置及び転送方法 Download PDFInfo
- Publication number
- JP2022048644A JP2022048644A JP2020154583A JP2020154583A JP2022048644A JP 2022048644 A JP2022048644 A JP 2022048644A JP 2020154583 A JP2020154583 A JP 2020154583A JP 2020154583 A JP2020154583 A JP 2020154583A JP 2022048644 A JP2022048644 A JP 2022048644A
- Authority
- JP
- Japan
- Prior art keywords
- packet
- packets
- circuit
- entry
- priority
- 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
- 239000004065 semiconductor Substances 0.000 title claims abstract description 35
- 238000012546 transfer Methods 0.000 title claims abstract description 21
- 238000000034 method Methods 0.000 title claims description 41
- 238000010187 selection method Methods 0.000 claims abstract description 11
- 238000004422 calculation algorithm Methods 0.000 claims description 45
- 238000012986 modification Methods 0.000 claims description 3
- 230000004048 modification Effects 0.000 claims description 3
- 238000012545 processing Methods 0.000 abstract description 15
- 230000006866 deterioration Effects 0.000 abstract description 3
- 230000008569 process Effects 0.000 description 18
- 238000010586 diagram Methods 0.000 description 13
- 238000004364 calculation method Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000000052 comparative effect Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000012706 support-vector machine Methods 0.000 description 3
- 235000008694 Humulus lupulus Nutrition 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000003909 pattern recognition Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 239000011435 rock Substances 0.000 description 2
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
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
- G06F13/4022—Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
-
- 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/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/12—Replacement control
- G06F12/121—Replacement control using replacement algorithms
- G06F12/123—Replacement control using replacement algorithms with age lists, e.g. queue, most recently used [MRU] list or least recently used [LRU] list
- G06F12/124—Replacement control using replacement algorithms with age lists, e.g. queue, most recently used [MRU] list or least recently used [LRU] list being minimized, e.g. non MRU
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1041—Resource optimization
- G06F2212/1044—Space efficiency improvement
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Computer Hardware Design (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Bus Control (AREA)
Abstract
Description
〔1-1〕比較例
図1は、比較例に係る調停処理の一例を説明するための図である。図1に示すように、コア等の送信元(「ソース」と称されてもよい)から送信される調停対象となるデータ、例えばパケットは、先入れ先出し方式のFIFO(First In - First Out)110及び120に格納される。
図2は、一実施形態に係るシステム1の構成例を示すブロック図である。システム1は、複数のコア間で通信を行なうコンピュータシステムの一例であり、1つ又は複数の半導体チップ、例えば、CPULSI等により実現されてよい。
図3は、一実施形態に係る調停回路3の機能構成例を示すブロック図である。図2に示す調停回路3-1~3-5の各々が図3に示す調停回路3の機能構成を備えてもよいし、調停回路3-1~3-5のうちの一部の調停回路3が当該機能構成を備えてもよい。以下の説明では、例えば調停回路3-5が図3に例示する機能構成を備えるものとする。
(v)パケットにデータが含まれているか否か(例えばデータ部の有無)。
(vi)データのサイズ(例えばデータ部又は全体のサイズ)。
(vii)パケットが制御用パケットか否か。
(viii)パケットがキャッシュ用パケットか否か(再利用されるデータか否か)。
(I)距離観点LRU351bにおける上記(iv)の観点による優先度。
(II)データ観点LRU351dにおける上記(vii)の観点による優先度。
(III)データ観点LRU351dにおける上記(viii)の観点による優先度。
図7は、一実施形態に係る調停回路3の動作例を説明するための図である。図7では、図2に示すシステム1の調停回路3-5における動作の一例を説明する。
図9は、調停回路3の一例である回路10のハードウェア(HW;Hardware)構成例を示すブロック図である。回路10は、例えば、FPGA等のPLD、ASIC等により、集積回路、換言すれば半導体装置として形成されてよい。
[現在のエントリ数]-[現サイクルでエントリからのアウトプットを行なう数]+1(入力ID:2NDである場合、さらに+1)
次に、図11及び図12を参照して、一実施形態に係るシステム1、例えば調停回路3を実装するための実装処理、並びに、ユーザ設定処理の動作例を説明する。図11は、調停回路3の実装処理の動作例を説明するフローチャートであり、図12は、ユーザ設定処理の動作例を説明するフローチャートである。
図11に例示するように、調停回路3の実装、例えば設計及び実装の少なくとも一方において、作業者により、FLAG12の情報が選定される(ステップS1)。例えば、フラグ情報34aに設ける項目として、FROM、TO、DISTANCE、PKT-OPCD等のパケットから取得可能な種々のFLAG12の情報が選定されてよい。
図12に例示するように、調停回路3の実装後、作業者又はユーザにより、調停回路3にプログラマブル回路がある場合にユーザ設定領域の実装が行なわれる(ステップS11)。
上述した一実施形態に係る技術は、以下のように変形、変更して実施することができる。
以上の実施形態に関し、さらに以下の付記を開示する。
バッファに蓄積された複数のパケットからいずれかのパケットを選択して転送する半導体装置であって、
前記複数のパケットをグループ化するための互いに異なる複数の条件を、前記複数の条件の各々の優先順位に応じて切り替え、
前記切り替えにより選択された条件に基づき抽出されるグループに属する複数のパケットの中から、所定の選択方式でいずれかのパケットを選択して前記バッファから転送する、
半導体装置。
前記複数の条件のそれぞれは、パケットごとに取得される複数種類の情報のうちの、互いに異なる種類の情報に基づき、前記複数のパケットをグループ化する、
付記1に記載の半導体装置。
前記複数の条件のうちの2以上の条件を切り替えるための1以上のアルゴリズムのうちの、前記半導体装置で実行されるプログラムに応じたアルゴリズムに従って、前記2以上の条件を切り替える、
付記1又は付記2に記載の半導体装置。
前記半導体装置の構成後に、前記1以上のアルゴリズムの変更、及び、新たなアルゴリズムの追加、の一方又は双方を実行するための回路を備える、
付記3に記載の半導体装置。
前記回路は、再構成可能な論理回路である、
付記4に記載の半導体装置。
前記切り替えは、前記複数の条件を一定期間ごとに切り替える、
付記1~付記5のいずれか1項に記載の半導体装置。
前記所定の選択方式は、LRU(Least Recent Used)方式である、
付記1~付記6のいずれか1項に記載の半導体装置。
バッファに蓄積された複数のパケットからいずれかのパケットを選択して転送する半導体装置が、
前記複数のパケットをグループ化するための互いに異なる複数の条件を、前記複数の条件の各々の優先順位に応じて切り替え、
前記切り替えにより選択された条件に基づき抽出されるグループに属する複数のパケットの中から、所定の選択方式でいずれかのパケットを選択して前記バッファから転送する、
転送方法。
前記複数の条件のそれぞれは、パケットごとに取得される複数種類の情報のうちの、互いに異なる種類の情報に基づき、前記複数のパケットをグループ化する、
付記8に記載の転送方法。
前記切り替える処理は、前記複数の条件のうちの2以上の条件を切り替えるための1以上のアルゴリズムのうちの、前記半導体装置で実行されるプログラムに応じたアルゴリズムに従って、前記2以上の条件を切り替える処理を含む、
付記8又は付記9に記載の転送方法。
前記切り替える処理は、前記複数の条件を一定期間ごとに切り替える処理を含む、
付記8~付記10のいずれか1項に記載の転送方法。
前記所定の選択方式は、LRU(Least Recent Used)方式である、
付記8~付記11のいずれか1項に記載の転送方法。
10 回路
2、2-1~2-8 ソース
3、3-1~3-5 調停回路
31 メモリ部
32 空エントリ管理部
33 順序管理部
34 フラグ情報管理部
34a フラグ情報
35 モード選択部
351 モード
351a 種別観点LRU
351b 距離観点LRU
351c 宛先観点LRU
351d データ観点LRU
352 優先調整モード選択部
352a カウンタスケジューラ
353 LRU選択部
354 ステージング部
36 判定部
37 エントリ選択部
4、4-1~4-13 TX
Claims (6)
- バッファに蓄積された複数のパケットからいずれかのパケットを選択して転送する半導体装置であって、
前記複数のパケットをグループ化するための互いに異なる複数の条件を、前記複数の条件の各々の優先順位に応じて切り替え、
前記切り替えにより選択された条件に基づき抽出されるグループに属する複数のパケットの中から、所定の選択方式でいずれかのパケットを選択して前記バッファから転送する、
半導体装置。 - 前記複数の条件のそれぞれは、パケットごとに取得される複数種類の情報のうちの、互いに異なる種類の情報に基づき、前記複数のパケットをグループ化する、
請求項1に記載の半導体装置。 - 前記複数の条件のうちの2以上の条件を切り替えるための1以上のアルゴリズムのうちの、前記半導体装置で実行されるプログラムに応じたアルゴリズムに従って、前記2以上の条件を切り替える、
請求項1又は請求項2に記載の半導体装置。 - 前記半導体装置の構成後に、前記1以上のアルゴリズムの変更、及び、新たなアルゴリズムの追加、の一方又は双方を実行するための回路を備える、
請求項3に記載の半導体装置。 - 前記切り替えは、前記複数の条件を一定期間ごとに切り替える、
請求項1~請求項4のいずれか1項に記載の半導体装置。 - バッファに蓄積された複数のパケットからいずれかのパケットを選択して転送する半導体装置が、
前記複数のパケットをグループ化するための互いに異なる複数の条件を、前記複数の条件の各々の優先順位に応じて切り替え、
前記切り替えにより選択された条件に基づき抽出されるグループに属する複数のパケットの中から、所定の選択方式でいずれかのパケットを選択して前記バッファから転送する、
転送方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020154583A JP7508962B2 (ja) | 2020-09-15 | 2020-09-15 | 半導体装置及び転送方法 |
US17/352,406 US11914538B2 (en) | 2020-09-15 | 2021-06-21 | Semiconductor apparatus and transfer method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020154583A JP7508962B2 (ja) | 2020-09-15 | 2020-09-15 | 半導体装置及び転送方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2022048644A true JP2022048644A (ja) | 2022-03-28 |
JP7508962B2 JP7508962B2 (ja) | 2024-07-02 |
Family
ID=80626629
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020154583A Active JP7508962B2 (ja) | 2020-09-15 | 2020-09-15 | 半導体装置及び転送方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US11914538B2 (ja) |
JP (1) | JP7508962B2 (ja) |
Family Cites Families (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3260456B2 (ja) | 1992-12-25 | 2002-02-25 | 株式会社日立製作所 | コンピュータシステムおよびそれに適した集積回路並びに要求選択回路 |
US5617575A (en) | 1991-03-19 | 1997-04-01 | Hitachi, Ltd. | Interprocessor priority control system for multivector processor |
US5872936A (en) * | 1995-05-08 | 1999-02-16 | Apple Computer, Inc. | Apparatus for and method of arbitrating bus conflicts |
US6104700A (en) * | 1997-08-29 | 2000-08-15 | Extreme Networks | Policy based quality of service |
US7917647B2 (en) * | 2000-06-16 | 2011-03-29 | Mcafee, Inc. | Method and apparatus for rate limiting |
DE60026908D1 (de) * | 2000-07-05 | 2006-05-18 | St Microelectronics Srl | Arbitrierungsverfahren und Schaltungsarchitektur dazu |
JP2002117003A (ja) | 2000-10-05 | 2002-04-19 | Hitachi Ltd | アクセス要求選択制御方式 |
US7287649B2 (en) * | 2001-05-18 | 2007-10-30 | Broadcom Corporation | System on a chip for packet processing |
CA2451764A1 (en) * | 2001-07-05 | 2003-01-16 | Sandburst Corporation | Method and apparatus for allocating link bandwidth |
US7079545B1 (en) * | 2001-12-17 | 2006-07-18 | Applied Microcircuits Corporation ( Amcc) | System and method for simultaneous deficit round robin prioritization |
US7020131B1 (en) * | 2001-12-24 | 2006-03-28 | Applied Micro Circuits Corp. | System and method for hierarchical switching |
JP2005316609A (ja) | 2004-04-27 | 2005-11-10 | Sony Corp | バス調停装置およびバス調停方法 |
US20060018322A1 (en) * | 2004-07-21 | 2006-01-26 | Moshe Oron | Dedicated service class for voice traffic |
JP2007026021A (ja) | 2005-07-15 | 2007-02-01 | Nec Electronics Corp | バス制御システム及びバス制御方法 |
US7664901B2 (en) * | 2007-03-27 | 2010-02-16 | Arm Limited | Data processing apparatus and method for arbitrating access to a shared resource |
US8099564B1 (en) * | 2007-08-10 | 2012-01-17 | Xilinx, Inc. | Programmable memory controller |
US8103833B2 (en) * | 2007-09-04 | 2012-01-24 | Freescale Semiconductor, Inc. | Cache memory and a method for servicing access requests |
US7743199B2 (en) * | 2008-04-23 | 2010-06-22 | International Business Machines Corporation | Method and apparatus for obtaining trace information of multiple processors on an SoC using a segmented trace ring bus to enable a flexible trace output configuration |
US20090307408A1 (en) * | 2008-06-09 | 2009-12-10 | Rowan Nigel Naylor | Peer-to-Peer Embedded System Communication Method and Apparatus |
JP5537022B2 (ja) | 2008-12-18 | 2014-07-02 | パナソニック株式会社 | 通信方法及び通信装置 |
WO2010113262A1 (ja) | 2009-03-31 | 2010-10-07 | 富士通株式会社 | 調停方法、調停回路、及び調停回路を備えた装置 |
WO2012172691A1 (ja) | 2011-06-17 | 2012-12-20 | 株式会社日立製作所 | スイッチ及びそれを用いた計算機システム及びパケット転送制御方法 |
JP2013003966A (ja) | 2011-06-20 | 2013-01-07 | Bosch Corp | データ書き込み装置およびデータ書き込み方法 |
US11082350B2 (en) * | 2012-05-22 | 2021-08-03 | Xockets, Inc. | Network server systems, architectures, components and related methods |
US9250954B2 (en) * | 2013-01-17 | 2016-02-02 | Xockets, Inc. | Offload processor modules for connection to system memory, and corresponding methods and systems |
US9483346B2 (en) | 2014-08-07 | 2016-11-01 | Pure Storage, Inc. | Data rebuild on feedback from a queue in a non-volatile solid-state storage |
CN106330777A (zh) * | 2015-06-17 | 2017-01-11 | 中兴通讯股份有限公司 | 网关侧网络资源的分配方法及装置 |
US10866910B2 (en) * | 2015-09-28 | 2020-12-15 | Sandisk Technologies Llc | Systems, methods, and computer-readable media for managing instruction fetch in virtual computing environments |
US11467769B2 (en) * | 2015-09-28 | 2022-10-11 | Sandisk Technologies Llc | Managed fetching and execution of commands from submission queues |
CN106506393A (zh) * | 2016-02-05 | 2017-03-15 | 华为技术有限公司 | 一种数据流处理方法、装置和系统 |
US20180191629A1 (en) * | 2016-12-30 | 2018-07-05 | Intel Corporation | Time-based flexible packet scheduling |
US11095568B2 (en) * | 2018-11-06 | 2021-08-17 | Cox Communications, Inc. | Systems and methods for network scheduling and re-transmission buffering |
-
2020
- 2020-09-15 JP JP2020154583A patent/JP7508962B2/ja active Active
-
2021
- 2021-06-21 US US17/352,406 patent/US11914538B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US20220083490A1 (en) | 2022-03-17 |
US11914538B2 (en) | 2024-02-27 |
JP7508962B2 (ja) | 2024-07-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8819616B2 (en) | Asymmetric mesh NoC topologies | |
US9742630B2 (en) | Configurable router for a network on chip (NoC) | |
CN103348640B (zh) | 中继装置 | |
WO2015020712A1 (en) | Automatic noc topology generation | |
US20200153691A1 (en) | Software implementation of network switch/router | |
KR20040004532A (ko) | 최적화된 가변 네트워크 스위치 | |
CN108111410B (zh) | 在笛卡尔拓扑的网络中构建无死锁路由的方法和装置 | |
CN112084027B (zh) | 片上网络数据传输方法、装置、片上网络、设备及介质 | |
May et al. | Transputer and Routers: components for concurrent machines | |
CN102546417B (zh) | 基于网络信息的片上网络路由器调度方法 | |
EP3560148B1 (en) | Database functions-defined network switch | |
US10547514B2 (en) | Automatic crossbar generation and router connections for network-on-chip (NOC) topology generation | |
US9185026B2 (en) | Tagging and synchronization for fairness in NOC interconnects | |
US20180197110A1 (en) | Metrics to Train Machine Learning Predictor for NoC Construction | |
Cai et al. | Comparative evaluation of FPGA and ASIC implementations of bufferless and buffered routing algorithms for on-chip networks | |
Akbar et al. | A novel power efficient adaptive RED-based flow control mechanism for networks-on-chip | |
Dehghani et al. | Deadline-aware and energy-efficient dynamic task mapping and scheduling for multicore systems based on wireless network-on-chip | |
US7835284B2 (en) | Method and apparatus for routing data in an inter-nodal communications lattice of a massively parallel computer system by routing through transporter nodes | |
US7839786B2 (en) | Method and apparatus for routing data in an inter-nodal communications lattice of a massively parallel computer system by semi-randomly varying routing policies for different packets | |
JP2022048644A (ja) | 半導体装置及び転送方法 | |
Yang et al. | Rwadmm: routing and wavelength assignment for distribution-based multiple multicasts in onoc | |
Pande et al. | The (low) power of less wiring: Enabling energy efficiency in many-core platforms through wireless noc | |
Su et al. | Synthesizing fault-tolerant schedule for time-triggered network without hot backup | |
Han et al. | Low-cost congestion detection mechanism for networks-on-chip | |
US20160006605A1 (en) | Network control device and network setting system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230608 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20240214 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20240227 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240426 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20240426 |
|
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: 20240521 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240603 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7508962 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |