KR101861768B1 - 시스템 온칩, 이를 포함하는 전자 시스템, 및 그 동작 방법 - Google Patents
시스템 온칩, 이를 포함하는 전자 시스템, 및 그 동작 방법 Download PDFInfo
- Publication number
- KR101861768B1 KR101861768B1 KR1020110093653A KR20110093653A KR101861768B1 KR 101861768 B1 KR101861768 B1 KR 101861768B1 KR 1020110093653 A KR1020110093653 A KR 1020110093653A KR 20110093653 A KR20110093653 A KR 20110093653A KR 101861768 B1 KR101861768 B1 KR 101861768B1
- Authority
- KR
- South Korea
- Prior art keywords
- block
- quality
- master
- service
- bus
- 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
- 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
-
- 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/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
-
- 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/16—Handling requests for interconnection or transfer for access to memory bus
-
- 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/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1673—Details of memory controller using buffers
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bus Control (AREA)
Abstract
Description
도 1은 본 발명의 실시 예에 따른 SoC를 포함하는 전자 시스템의 블록도를 나타낸다.
도 2a는 본 발명의 일 실시예에 따른 SoC의 동작 방법을 설명하기 위한 개념도이다.
도 2b는 도 2a에 도시된 QoS 생성기의 일 구현예를 나타내는 블록도이다.
도 3은 본 발명의 다른 일 실시예에 따른 SoC의 동작 방법을 설명하기 위한 개념도이다.
도 4는 본 발명의 일 실시예에 따른 QoS 정보 생성 방법을 설명하기 위한 표이다.
도 5는 본 발명의 일 실시예에 따른 버퍼 정보, 가중치 및 QoS 신호간의 관계를 설명하기 위한 그래프이다.
도 6은 본 발명의 일 실시예에 따른 FIFO 레벨 대 QoS 매핑 관계를 나타내는 그래프이다.
도 7은 도 6의 그래프에 상응하는 LUT(Look-up table)을 나타내는 도면이다.
도 8은 본 발명의 일 실시예에 따른 SoC의 동작 방법을 나타내는 플로우챠트이다.
도 9는 본 발명의 다른 일 실시예에 따른 SoC의 동작 방법을 나타내는 플로우챠트이다.
100: SoC
110: CPU(central processing unit)
120: ROM(read only memory)
130: RAM(random access memory)
140: 메모리 스케쥴러
150: 메모리 컨트롤러
160: 가속기
170: LCD 컨트롤러
180: 버스
180: 버스 중재기
210, 220, 230: 마스터 블록
211, 221, 231: QoS 신호 발생기
212, 213, 221, 222, 231, 232: 레지스터
Claims (22)
- 버스(bus)를 통해 통신하는 마스터 블록(master block), 및 슬레이브 블록(slave block)를 포함하는 시스템 온칩(SoC)의 동작 방법에 있어서,
상기 마스터 블록의 실시간 정보 레지스터에 상기 마스터 블록이 실시간성 블록인지 아닌지를 나타내기 위한 실시간성 정보가 설정되는 단계;
상기 실시간성 정보에 따라 상기 마스터 블록의 가중치 레지스터에 가중치가 설정되는 단계;
상기 마스터 블록의 버퍼 정보를 체크하는 단계;
상기 버퍼 정보와 가중치를 이용하여 서비스 품질(QoS) 신호를 생성하는 단계; 및
상기 서비스 품질 신호를 이용하여 상기 마스터 블록의 상기 버스 사용에 대한 우선권을 결정하는 단계를 포함하는 SoC의 동작 방법. - 제1항에 있어서, 상기 동작 방법은
상기 서비스 품질 신호를 이용하여 상기 마스터 블록의 상기 슬레이브 블록에 대한 억세스 우선권을 결정하는 단계를 더 포함하는 SoC의 동작 방법. - 제2항에 있어서, 상기 버스 사용에 대한 우선권을 결정하는 단계는
상기 마스터 블록이 상기 서비스 품질 신호를 포함하는 버스 사용 요구 신호를 버스 중재기로 전송하는 단계; 및
둘 이상의 버스 사용 요구 신호가 수신된 경우, 상기 버스 중재기는 상기 서비스 품질 신호에 따라 더 높은 우선권을 갖는 마스터 블록에게 상기 버스 사용을 허용하는 단계를 포함하는 SoC의 동작 방법. - 제2항에 있어서, 상기 슬레이브 블록에 대한 억세스 우선권을 결정하는 단계는
상기 마스터 블록이 상기 서비스 품질 신호를 포함하는 슬레이브 억세스 요구 신호를 상기 슬레이브 블록으로 전송하는 단계; 및
둘 이상의 슬레이브 억세스 요구 신호가 수신된 경우, 상기 슬레이브 블록은 상기 서비스 품질 신호에 따라 더 높은 우선권을 갖는 마스터 블록에게 억세스를 허용하는 단계를 포함하는 SoC의 동작 방법. - 제4항에 있어서, 상기 슬레이브 블록은
메모리 장치에 대한 억세스를 스케쥴링하는 메모리 스케쥴러를 포함하는 SoC의 동작 방법. - 제1항에 있어서, 상기 QoS 는
상기 버퍼 정보와 선형(linear), 비선형(non-linear), 또는 단편적 선형(piece linear) 관계를 가지는 것을 특징으로 하는 SoC의 동작 방법. - 버스(bus)를 통해 통신하는 마스터 블록(master block), 및 슬레이브 블록(slave block)를 포함하는 SoC의 동작 방법에 있어서,
상기 마스터 블록에 다수의 서비스 품질(QoS) 신호들을 포함하는 룩업 테이블이 저장되는 단계;
상기 마스터 블록의 버퍼 정보를 체크하는 단계;
상기 룩업 테이블로부터 상기 체크된 버퍼 정보에 상응하는 서비스 품질(QoS) 신호를 추출하는 단계; 및
상기 서비스 품질 신호를 이용하여 상기 마스터 블록의 상기 버스 사용에 대한 우선권을 결정하는 단계를 포함하는 SoC의 동작 방법. - 제7항에 있어서, 상기 룩업 테이블은
해당 마스터 블록의 동작 모드에 따라 변경될 수 있는 SoC의 동작 방법. - 제8항에 있어서,
상기 룩업 테이블은 복수개 구비되고,
상기 동작 방법은
상기 마스터 블록의 동작 모드에 따라 상기 복수개의 룩업 테이블 중 하나를 선택하는 단계를 더 포함하는 SoC의 동작 방법. - 제8항에 있어서, 상기 동작 방법은
상기 마스터 블록의 동작 모드에 따라 상기 룩업 테이블을 내부적으로 생성하여 설정하는 단계를 더 포함하는 SoC의 동작 방법. - 제7항에 있어서, 상기 동작 방법은
상기 서비스 품질 신호를 이용하여 상기 마스터 블록의 상기 슬레이브 블록에 대한 억세스 우선권을 결정하는 단계를 더 포함하는 SoC의 동작 방법. - 제11항에 있어서, 상기 버스 사용에 대한 우선권을 결정하는 단계는
상기 마스터 블록이 상기 서비스 품질 신호를 포함하는 버스 사용 요구 신호를 버스 중재기로 전송하는 단계; 및
둘 이상의 버스 사용 요구 신호가 수신된 경우, 상기 버스 중재기는 상기 서비스 품질 신호에 따라 더 높은 우선권을 갖는 마스터 블록에게 버스 사용을 허용하는 단계를 포함하는 SoC의 동작 방법. - 제11항에 있어서, 상기 슬레이브 블록에 대한 억세스 우선권을 결정하는 단계는
상기 마스터 블록이 상기 서비스 품질 신호를 포함하는 슬레이브 억세스 요구 신호를 상기 슬레이브 블록으로 전송하는 단계; 및
둘 이상의 슬레이브 억세스 요구 신호가 수신된 경우, 상기 슬레이브 블록은 상기 서비스 품질 신호에 따라 더 높은 우선권을 갖는 마스터 블록에게 억세스를 허용하는 단계를 포함하는 SoC의 동작 방법. - 제13항에 있어서, 상기 슬레이브 블록은
메모리 장치에 대한 억세스 순서를 스케쥴링하는 메모리 스케쥴러를 포함하는 SoC의 동작 방법. - 복수의 마스터 블록(master block)들;
슬레이브 블록(slave block); 및
상기 복수의 마스터 블록들과 상기 슬레이브 블록을 연결하는 버스(bus)를 포함하고,
상기 복수의 마스터 블록들 각각은
상기 버스를 통해 전송할 또는 전송받을 데이터를 저장하기 위한 버퍼; 및
상기 버퍼의 정보를 체크하고 상기 버퍼 정보를 이용하여 서비스 품질(QoS) 신호를 생성하는 서비스 품질 신호 생성기를 포함하고,
상기 버스는
상기 서비스 품질 신호를 이용하여 상기 마스터 블록들의 상기 버스 사용에 대한 우선권을 결정하는 버스 중재기를 포함하며,
상기 서비스 품질 신호는 해당 마스터 블록의 동작 모드에 따라 다른 값을 가지는 SoC. - 제15항에 있어서, 상기 복수의 마스터 블록들 각각은
해당 마스터 블록이 실시간성 블록인지 아닌지를 나타내기 위한 실시간성 정보를 저장하는 실시간성 정보 레지스터; 및
상기 실시간성 정보에 따라 해당 마스터 블록의 가중치를 저장하는 가중치 레지스터를 더 포함하며,
상기 서비스 품질 신호 생성기는
상기 버퍼 정보와 상기 가중치를 이용하여 상기 서비스 품질(QoS) 신호를 생성하는 SoC. - 제15항에 있어서, 상기 서비스 품질 신호 생성기는
각각이 복수의 서비스 품질(QoS) 엔트리들을 포함하는 복수의 룩업 테이블을 포함하고,
상기 마스터 블록의 동작 모드에 따라 상기 복수개의 룩업 테이블 중 하나를 선택하여, 선택된 룩업 테이블로부터 상기 버퍼 정보에 상응하는 서비스 품질 정보를 추출하는 SoC. - 제15항에 있어서, 상기 서비스 품질 신호 생성기는
상기 마스터 블록의 동작 모드에 따라 룩업 테이블을 생성하여 저장하고, 상기 룩업 테이블로부터 상기 버퍼 정보에 상응하는 서비스 품질 정보를 추출하는 SoC. - 제15항에 있어서, 상기 슬레이브 블록은
상기 서비스 품질 신호를 이용하여 상기 마스터 블록들의 상기 슬레이브 블록에 대한 억세스 우선권을 결정하는 SoC. - 제19항에 있어서, 상기 슬레이브 블록은
메모리 장치에 대한 억세스를 스케쥴링하는 메모리 스케쥴러를 포함하는 SoC. - 삭제
- 삭제
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020110093653A KR101861768B1 (ko) | 2011-09-16 | 2011-09-16 | 시스템 온칩, 이를 포함하는 전자 시스템, 및 그 동작 방법 |
US13/604,516 US8793420B2 (en) | 2011-09-16 | 2012-09-05 | System on chip, electronic system including the same, and method of operating the same |
TW101132528A TWI563392B (en) | 2011-09-16 | 2012-09-06 | System on chip, electronic system including the same, and method of operating the same |
CN201210345514.1A CN103218322B (zh) | 2011-09-16 | 2012-09-17 | 片上系统、电子系统以及操作其的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020110093653A KR101861768B1 (ko) | 2011-09-16 | 2011-09-16 | 시스템 온칩, 이를 포함하는 전자 시스템, 및 그 동작 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20130030108A KR20130030108A (ko) | 2013-03-26 |
KR101861768B1 true KR101861768B1 (ko) | 2018-05-28 |
Family
ID=47881733
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020110093653A Active KR101861768B1 (ko) | 2011-09-16 | 2011-09-16 | 시스템 온칩, 이를 포함하는 전자 시스템, 및 그 동작 방법 |
Country Status (4)
Country | Link |
---|---|
US (1) | US8793420B2 (ko) |
KR (1) | KR101861768B1 (ko) |
CN (1) | CN103218322B (ko) |
TW (1) | TWI563392B (ko) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10353747B2 (en) | 2015-07-13 | 2019-07-16 | Futurewei Technologies, Inc. | Shared memory controller and method of using same |
KR102360214B1 (ko) * | 2015-08-26 | 2022-02-08 | 삼성전자주식회사 | 실시간 공유 인터페이스를 포함하는 시스템 온 칩의 스케쥴링 방법 |
EP3358468B1 (en) * | 2015-10-01 | 2020-12-09 | Renesas Electronics Corporation | Semiconductor device |
CN105630716B (zh) * | 2015-12-21 | 2018-06-12 | 北京航天测控技术有限公司 | 一种多卡校准方法 |
KR20180074197A (ko) | 2016-12-23 | 2018-07-03 | 삼성전자주식회사 | 버스 트래픽 컨트롤 장치 및 이를 갖는 버스 시스템 |
CN110391960B (zh) * | 2018-04-18 | 2021-10-15 | 珠海全志科技股份有限公司 | 总线传输控制装置及方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5802330A (en) | 1996-05-01 | 1998-09-01 | Advanced Micro Devices, Inc. | Computer system including a plurality of real time peripheral devices having arbitration control feedback mechanisms |
US6898649B2 (en) | 2000-12-29 | 2005-05-24 | Zarlink Semiconductor Limited | Arbiter for queue management system for allocating bus mastership as a percentage of total bus time |
US20070233923A1 (en) | 2006-02-28 | 2007-10-04 | Samsung Electronics Co., Ltd. | Bus arbitration system and method thereof |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR940002905B1 (en) * | 1989-12-15 | 1994-04-07 | Ibm | Apparatus for conditioning priority arbitration in buffered direct memory addressing |
US5761452A (en) | 1996-03-18 | 1998-06-02 | Advanced Micro Devices, Inc. | Bus arbiter method and system |
US5805840A (en) | 1996-03-26 | 1998-09-08 | Advanced Micro Devices, Inc. | Bus arbiter employing a transaction grading mechanism to dynamically vary arbitration priority |
KR100455396B1 (ko) * | 2002-10-14 | 2004-11-06 | 삼성전자주식회사 | 마스터 블록들의 우선 순위를 결정하는 파라미터 발생회로 및 파라미터 발생 방법. |
KR100784385B1 (ko) * | 2005-08-10 | 2007-12-11 | 삼성전자주식회사 | 공유 자원에 대한 접근 요청을 중재하는 시스템 및 방법 |
CN101894045A (zh) * | 2010-06-18 | 2010-11-24 | 阳坚 | 一种实时Linux操作系统 |
CN101873272B (zh) * | 2010-06-30 | 2013-01-30 | 天津市视讯软件开发有限公司 | 满足互通性和公平性的以太无源光网络动态带宽分配方法 |
-
2011
- 2011-09-16 KR KR1020110093653A patent/KR101861768B1/ko active Active
-
2012
- 2012-09-05 US US13/604,516 patent/US8793420B2/en active Active
- 2012-09-06 TW TW101132528A patent/TWI563392B/zh active
- 2012-09-17 CN CN201210345514.1A patent/CN103218322B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5802330A (en) | 1996-05-01 | 1998-09-01 | Advanced Micro Devices, Inc. | Computer system including a plurality of real time peripheral devices having arbitration control feedback mechanisms |
US6898649B2 (en) | 2000-12-29 | 2005-05-24 | Zarlink Semiconductor Limited | Arbiter for queue management system for allocating bus mastership as a percentage of total bus time |
US20070233923A1 (en) | 2006-02-28 | 2007-10-04 | Samsung Electronics Co., Ltd. | Bus arbitration system and method thereof |
Also Published As
Publication number | Publication date |
---|---|
CN103218322B (zh) | 2017-10-24 |
TWI563392B (en) | 2016-12-21 |
CN103218322A (zh) | 2013-07-24 |
TW201329728A (zh) | 2013-07-16 |
US8793420B2 (en) | 2014-07-29 |
KR20130030108A (ko) | 2013-03-26 |
US20130073762A1 (en) | 2013-03-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11755527B2 (en) | Techniques for command validation for access to a storage device by a remote client | |
KR101861768B1 (ko) | 시스템 온칩, 이를 포함하는 전자 시스템, 및 그 동작 방법 | |
US10235047B2 (en) | Memory management method, apparatus, and system | |
WO2015165298A1 (zh) | 计算机,控制设备和数据处理方法 | |
US8677074B2 (en) | Shared memory access techniques | |
CN101218567A (zh) | 访问控制装置、访问控制集成电路以及访问控制方法 | |
US11886365B2 (en) | DMA control circuit with quality of service indications | |
CN102541661B (zh) | 实现等待地址同步接口的方法和设备 | |
US10037225B2 (en) | Method and system for scheduling computing | |
CN111177025A (zh) | 数据存储方法、装置及终端设备 | |
US20160188499A1 (en) | Tightly-coupled distributed uncore coherent fabric | |
CN114116231A (zh) | 一种数据加载方法、装置、计算机设备及存储介质 | |
US20220300421A1 (en) | Memory Sharing | |
CN105373496A (zh) | 微型计算机 | |
US20100312924A1 (en) | Network processor, reception controller and data reception processing method performing direct memory access transfer | |
TWI539273B (zh) | 用於減少電力消耗之並行網路應用程式排程技術 | |
US20140204100A1 (en) | Modified Quality of Service (QoS) Thresholds | |
KR102396309B1 (ko) | 데이터 요청을 제어하기 위한 장치 및 방법 | |
US9618988B2 (en) | Method and apparatus for managing a thermal budget of at least a part of a processing system | |
US9354812B1 (en) | Dynamic memory utilization in a system on a chip | |
US10832132B2 (en) | Data transmission method and calculation apparatus for neural network, electronic apparatus, computer-readable storage medium and computer program product | |
CN112948084A (zh) | 任务调度方法及系统 | |
KR20230013828A (ko) | 시스템 온 칩 및 시스템 온 칩의 동작 방법 | |
CN118740760B (zh) | 数据传输方法、设备、介质及计算机程序产品 | |
TW202507504A (zh) | 高效堆疊相關處理器指令 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20110916 |
|
PG1501 | Laying open of application | ||
A201 | Request for examination | ||
PA0201 | Request for examination |
Patent event code: PA02012R01D Patent event date: 20160816 Comment text: Request for Examination of Application Patent event code: PA02011R01I Patent event date: 20110916 Comment text: Patent Application |
|
E701 | Decision to grant or registration of patent right | ||
PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20180308 |
|
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20180521 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20180523 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration | ||
PR1001 | Payment of annual fee |
Payment date: 20210428 Start annual number: 4 End annual number: 4 |
|
PR1001 | Payment of annual fee |
Payment date: 20220420 Start annual number: 5 End annual number: 5 |
|
PR1001 | Payment of annual fee |
Payment date: 20230426 Start annual number: 6 End annual number: 6 |
|
PR1001 | Payment of annual fee |
Payment date: 20240424 Start annual number: 7 End annual number: 7 |