JP6608688B2 - 半導体装置 - Google Patents
半導体装置Info
- Publication number
- JP6608688B2 JP6608688B2 JP2015235387A JP2015235387A JP6608688B2 JP 6608688 B2 JP6608688 B2 JP 6608688B2 JP 2015235387 A JP2015235387 A JP 2015235387A JP 2015235387 A JP2015235387 A JP 2015235387A JP 6608688 B2 JP6608688 B2 JP 6608688B2
- Authority
- JP
- Japan
- Prior art keywords
- unit
- control reception
- operation request
- software
- arbitration
- 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
- 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5044—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering hardware capabilities
-
- 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/14—Handling requests for interconnection or transfer
- G06F13/36—Handling requests for interconnection or transfer for access to common bus or bus system
- G06F13/362—Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
-
- 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
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/173—Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
- G06F15/17306—Intercommunication techniques
- G06F15/17312—Routing techniques specific to parallel machines, e.g. wormhole, store and forward, shortest path problem congestion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7807—System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
-
- 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/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
- G06F9/526—Mutual exclusion algorithms
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computing Systems (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Microcomputers (AREA)
- Advance Control (AREA)
- Logic Circuits (AREA)
Description
ハードウェアIPと、を有する。前記ハードウェアIPは、前記複数のソフトウェアの動作要求を受け付ける複数の制御受付部を有する第1の記憶部と、動作要求に基づいて処理を行う演算部と、前記演算部が、1つの動作要求のみを受け取るように、前記複数の制御受付部と前記演算部との間の情報伝達を制御する調停部と、を有する。
実施の形態1にかかる半導体装置100について説明する。図1は、実施の形態1にかかる半導体装置100のハードウェア構成を模式的に示すブロック図である。半導体装置100は、CPU(Central Processing Unit)10_1〜CPU10_N(Nは、2以上の整数)、及び、ハードウェアIP(Intellectual Property)11を有する。CPU10_1〜CPU10_NとハードウェアIP11とは、バス20により、相互に情報伝達が可能である。
上述の実施の形態1では、実行されるソフトウェアと同じ個数の制御受付部が設けられる半導体装置について説明した。しかしながら、上記構成においては、ソフトウェアの数が多くなると、設けられる制御受付部の数も多くなってしまい、半導体装置(すなわち、SoC)の大型化を招いてしまう。これに対し、本実施の形態では、実施の形態1にかかる半導体装置100の変形例として、制御受付部の数を抑制しつつハードウェアIPで調停処理を行う半導体装置について説明する。
実施の形態3にかかる半導体装置について説明する。実施の形態3にかかる半導体装置300は、実施の形態1にかかる半導体装置100の変形例であり、演算部3から送出される情報に基づいて調停部の動作を制御するものである。図6は、実施の形態3にかかる半導体装置300の構成を模式的に示すブロック図である。図6では、図面の簡略化のため、オペレーティングシステム及びバスの表示を省略している。半導体装置300のハードウェアIP13は、実施の形態1にかかる半導体装置100のハードウェアIP11に対応する。ハードウェアIP13は、実施の形態1にかかるハードウェアIP11の調停部2を、調停部7に置換した構成を有する。
実施の形態4にかかる半導体装置について説明する。実施の形態4にかかる半導体装置400は、実施の形態1にかかる半導体装置100の変形例であり、特定のソフトウェアの機能安全の確保するための構成を有するものである。図7は、実施の形態4にかかる半導体装置400の構成を模式的に示すブロック図である。図7では、図面の簡略化のため、オペレーティングシステム及びバスの表示を省略している。半導体装置400のハードウェアIP14は、実施の形態1にかかる半導体装置100のハードウェアIP11に対応する。ハードウェアIP14は、実施の形態1にかかるハードウェアIP11にスイッチング回路8(第2のスイッチング回路とも称する)を追加した構成を有する。
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。例えば、上述の実施の形態では、説明の簡略化のため、4つのソフトウェアが動作する具体例について説明した。しかし、言うまでもないことながら、2つ、3つ、又は5つ以上のソフトウェアが動作し、かつ、これらに対応する制御受付部が設けられた半導体装置を構成できることはいうまでもない。
2、5、7 調停部
3 演算部
2A、5A、8 スイッチング回路
2B 制御部
7C 調停方式設定部
10 CPU部
10_1〜10_N CPU
11〜14 ハードウェアIP
100、200、300、400 半導体装置
CON1〜CON4、CON_M 制御信号
CR1〜CRn 制御受付部
INF 応答情報
OS_1〜OS_N オペレーティングシステム
OR1〜ORn 動作要求
Q1〜Q4、SW1〜SW4 スイッチング素子
Claims (8)
- 複数のソフトウェアが実行されるCPU部と、
前記CPU部が送出する動作要求に基づいて処理を行うハードウェアIPと、を備え、
前記ハードウェアIPは、
前記複数のソフトウェアのそれぞれが送出する動作要求を受け付ける複数の制御受付部を有する第1の記憶部と、
前記制御受付部から送出される動作要求に基づいて処理を行う演算部と、
前記演算部が、前記複数の制御受付部のいずれかからの動作要求のみを受け取るように、前記複数の制御受付部と前記演算部との間の情報伝達を制御する調停部と、を備え、
1又は複数の動作要求を格納可能に構成される第2の記憶部を更に備え、
前記複数の制御受付部の数は、前記複数のソフトウェアの数よりも少なく、
前記複数の制御受付部の一部又は全部は、2以上のソフトウェアからの動作要求を受け付け、
2以上のソフトウェアからの動作要求を受け付ける制御受付部は、受け付けた動作要求を逐次前記第2の記憶部に格納し、
前記調停部は、前記演算部が、前記複数の制御受付部及び前記第2の記憶部のいずれかからの動作要求のみを受け取るように、前記複数の制御受付部及び前記第2の記憶部と前記演算部との間の情報伝達を制御する、
半導体装置。 - 前記複数の制御受付部の一部は、前記複数のソフトウェアのいずれかからの動作要求のみを受け付け、
前記複数のソフトウェアのいずれかからの動作要求のみを受け付ける制御受付部は、受け付けた動作要求を逐次前記第2の記憶部に格納する、
請求項1に記載の半導体装置。 - 前記第2の記憶部に動作要求を格納した制御受付部は、前記格納した受付要求を当該制御受付部から消去し、他の動作要求を受付可能な状態に復帰する、
請求項1に記載の半導体装置。 - 複数のソフトウェアが実行されるCPU部と、
前記CPU部が送出する動作要求に基づいて処理を行うハードウェアIPと、を備え、
前記ハードウェアIPは、
前記複数のソフトウェアのそれぞれが送出する動作要求を受け付ける複数の制御受付部を有する第1の記憶部と、
前記制御受付部から送出される動作要求に基づいて処理を行う演算部と、
前記演算部が、前記複数の制御受付部のいずれかからの動作要求のみを受け取るように、前記複数の制御受付部と前記演算部との間の情報伝達を制御する調停部と、を備え、
前記演算部は、受け取った動作要求に基づいて処理を行ったことで生じた情報である応答情報を、当該動作要求を送出した制御受付部を介して、当該動作要求を送出した制御受付部に送出し、
前記調停部は、複数の調停方式が格納された調停方式設定部を有し、
前記CPU部は、前記応答情報に基づいて、前記調停部が用いる調停方式を指定し、
前記調停部は、前記指定に対応する調停方式を前記調停方式設定部から取得する、
半導体装置。 - 複数のソフトウェアが実行されるCPU部と、
前記CPU部が送出する動作要求に基づいて処理を行うハードウェアIPと、を備え、
前記ハードウェアIPは、
前記複数のソフトウェアのそれぞれが送出する動作要求を受け付ける複数の制御受付部を有する第1の記憶部と、
前記制御受付部から送出される動作要求に基づいて処理を行う演算部と、
前記演算部が、前記複数の制御受付部のいずれかからの動作要求のみを受け取るように、前記複数の制御受付部と前記演算部との間の情報伝達を制御する調停部と、を備え、
前記複数の制御受付部のうちの特定の制御受付部以外の制御受付部のそれぞれと、前記調停部と、の間に並列に挿入された複数の第1のスイッチング素子を有する第2のスイッチング回路を更に備え、
前記特定の制御受付部が動作要求を受け付けた場合に、前記複数の第1のスイッチング素子が開放される、
半導体装置。 - 前記第2のスイッチング回路の複数のスイッチング素子の開閉は、前記特定の制御受付部により制御され、
前記特定の制御受付部が動作要求を受け付けた場合に、前記特定の制御受付部は、前記複数の第1のスイッチング素子を開放する、
請求項5に記載の半導体装置。 - 前記第2のスイッチング回路は、前記特定の制御受付部以外の制御受付部のそれぞれと、前記CPU部と、の間に並列に挿入された複数の第2のスイッチング素子を更に備え、
前記特定の制御受付部が動作要求を受け付けた場合に、前記複数の第2のスイッチング素子が開放される、
請求項5に記載の半導体装置。 - 前記第2のスイッチング素子の開閉は、前記特定の制御受付部により制御され、
前記特定の制御受付部が動作要求を受け付けた場合に、前記特定の制御受付部は、前記複数の第2のスイッチング素子を開放する、
請求項7に記載の半導体装置。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015235387A JP6608688B2 (ja) | 2015-12-02 | 2015-12-02 | 半導体装置 |
EP16194438.4A EP3176702B1 (en) | 2015-12-02 | 2016-10-18 | Semiconductor device and control method of semiconductor device |
CN201610973476.2A CN107066329B (zh) | 2015-12-02 | 2016-10-28 | 半导体装置以及半导体装置的控制方法 |
US15/357,212 US10191872B2 (en) | 2015-12-02 | 2016-11-21 | Semiconductor device and control method of semiconductor device |
US16/253,802 US10642768B2 (en) | 2015-12-02 | 2019-01-22 | Semiconductor device and control method of semiconductor device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015235387A JP6608688B2 (ja) | 2015-12-02 | 2015-12-02 | 半導体装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017102702A JP2017102702A (ja) | 2017-06-08 |
JP6608688B2 true JP6608688B2 (ja) | 2019-11-20 |
Family
ID=57394324
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015235387A Active JP6608688B2 (ja) | 2015-12-02 | 2015-12-02 | 半導体装置 |
Country Status (4)
Country | Link |
---|---|
US (2) | US10191872B2 (ja) |
EP (1) | EP3176702B1 (ja) |
JP (1) | JP6608688B2 (ja) |
CN (1) | CN107066329B (ja) |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5671365A (en) * | 1995-10-20 | 1997-09-23 | Symbios Logic Inc. | I/O system for reducing main processor overhead in initiating I/O requests and servicing I/O completion events |
US5872939A (en) * | 1996-06-05 | 1999-02-16 | Compaq Computer Corporation | Bus arbitration |
US6415392B1 (en) * | 1997-12-08 | 2002-07-02 | Ricoh Company, Ltd. | Remote diagnosis system and method |
US20030120878A1 (en) * | 2001-12-21 | 2003-06-26 | Andreassen Jens Kloster | Resource sharing using a locking mechanism in a multiprocessor environment |
US20050044321A1 (en) * | 2003-08-18 | 2005-02-24 | Jan Bialkowski | Method and system for multiprocess cache management |
KR100812225B1 (ko) * | 2005-12-07 | 2008-03-13 | 한국전자통신연구원 | 멀티프로세서 SoC 플랫폼에 적합한 크로스바 스위치구조 |
CN101136841B (zh) * | 2006-08-28 | 2011-08-24 | 中兴通讯股份有限公司 | 基于现场可编程门阵列的隧道实现装置及方法 |
US20080109587A1 (en) * | 2006-11-02 | 2008-05-08 | Motorola, Inc. | Switch control of usb transceiver between a plurality of processors |
JP2009003633A (ja) * | 2007-06-20 | 2009-01-08 | Panasonic Corp | 情報処理装置 |
US20090144480A1 (en) * | 2007-12-03 | 2009-06-04 | Jun-Dong Cho | Multi-processor system on chip platform and dvb-t baseband receiver using the same |
JP2010140290A (ja) | 2008-12-12 | 2010-06-24 | Panasonic Corp | マルチプロセッサシステム及びその排他制御の調停方法 |
US7940110B2 (en) * | 2009-06-04 | 2011-05-10 | Apple Inc. | Cascode switching circuit |
JP2011232956A (ja) | 2010-04-27 | 2011-11-17 | Clarion Co Ltd | コンピュータシステムとプログラム |
JP5578713B2 (ja) * | 2010-06-28 | 2014-08-27 | ルネサスエレクトロニクス株式会社 | 情報処理装置 |
US8527684B2 (en) * | 2010-11-12 | 2013-09-03 | Lsi Corporation | Closed loop dynamic interconnect bus allocation method and architecture for a multi layer SoC |
-
2015
- 2015-12-02 JP JP2015235387A patent/JP6608688B2/ja active Active
-
2016
- 2016-10-18 EP EP16194438.4A patent/EP3176702B1/en active Active
- 2016-10-28 CN CN201610973476.2A patent/CN107066329B/zh active Active
- 2016-11-21 US US15/357,212 patent/US10191872B2/en active Active
-
2019
- 2019-01-22 US US16/253,802 patent/US10642768B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
CN107066329A (zh) | 2017-08-18 |
US10191872B2 (en) | 2019-01-29 |
US20190171596A1 (en) | 2019-06-06 |
US20170161219A1 (en) | 2017-06-08 |
EP3176702A1 (en) | 2017-06-07 |
JP2017102702A (ja) | 2017-06-08 |
CN107066329B (zh) | 2022-06-14 |
US10642768B2 (en) | 2020-05-05 |
EP3176702B1 (en) | 2020-12-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11809360B2 (en) | Network-on-chip data processing method and device | |
TWI571744B (zh) | 數位信號處理資料傳送技術 | |
US10409746B2 (en) | Memory access control device and control method of memory access | |
US20070076246A1 (en) | Image processing apparatus | |
US20100030927A1 (en) | General purpose hardware acceleration via deirect memory access | |
JP2011048838A (ja) | スイッチマトリックス経由のデータ転送を改善するフロー制御方法 | |
JP2009267837A (ja) | 復号化装置 | |
US10095541B2 (en) | Executing memory access while performing task switching | |
JP2016173798A (ja) | 半導体装置 | |
KR20160039291A (ko) | 칩 선택을 감소하는 디바이스들, 시스템들, 및 방법들 | |
JP6608688B2 (ja) | 半導体装置 | |
US20100042754A1 (en) | Data transmitting device and data transmitting method | |
US10452449B1 (en) | Scheduler for vector processing operator allocation | |
US20090307470A1 (en) | Multi thread processor having dynamic reconfiguration logic circuit | |
WO2013062109A1 (ja) | I/oデバイス制御システムおよびi/oデバイス制御方法 | |
US10073810B2 (en) | Parallel processing device and parallel processing method | |
JP4584324B2 (ja) | データ処理システム、及びコンポーネント管理方法 | |
US20050135402A1 (en) | Data transfer apparatus | |
JP2017163273A (ja) | 半導体装置、情報処理装置、半導体装置の論理の再構成方法および半導体装置の論理の再構成プログラム | |
US8764874B2 (en) | Arrangement, method, integrated circuit and device for routing requests | |
KR20120066999A (ko) | 다이렉트 메모리 액세스 컨트롤러 및 그것의 동작 방법 | |
JP3959407B2 (ja) | 画像処理装置及び画像処理システム | |
JP2009205573A (ja) | バッファ制御装置およびバッファ制御方法 | |
JP6535516B2 (ja) | マルチ・プログラマブルデバイス・システムとその制御方法 | |
JP2007207269A (ja) | 画像処理装置及び画像処理システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160803 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180508 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20190313 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190409 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190603 |
|
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: 20191008 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20191024 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6608688 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |