TW201329728A - 系統晶片、包含該系統晶片的電子系統以及其操作方法 - Google Patents

系統晶片、包含該系統晶片的電子系統以及其操作方法 Download PDF

Info

Publication number
TW201329728A
TW201329728A TW101132528A TW101132528A TW201329728A TW 201329728 A TW201329728 A TW 201329728A TW 101132528 A TW101132528 A TW 101132528A TW 101132528 A TW101132528 A TW 101132528A TW 201329728 A TW201329728 A TW 201329728A
Authority
TW
Taiwan
Prior art keywords
block
primary
quality
information
bus
Prior art date
Application number
TW101132528A
Other languages
English (en)
Other versions
TWI563392B (en
Inventor
Jong-Ho Roh
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of TW201329728A publication Critical patent/TW201329728A/zh
Application granted granted Critical
Publication of TWI563392B publication Critical patent/TWI563392B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1673Details 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

提供一種系統晶片(SoC)、一種包含所述系統晶片之電子系統以及其操作方法。所述方法包含將指示主區塊是否為即時區塊之即時資訊設定在所述主區塊之即時資訊暫存器中。將權重設定在所述主區塊之權重暫存器中。核對所述主區塊之緩衝器資訊。使用所述緩衝器資訊與所述權重來產生服務品質(QoS)信號。基於所述QoS信號決定所述主區塊使用所述匯流排之優先權。

Description

系統晶片、包含該系統晶片的電子系統以及其操作方法 【對相關申請案之交叉參考】
本申請案主張2011年9月16日申請之韓國專利申請案第10-2011-0093653號的優先權,所述申請案之全部揭露內容以引用的方式併入本文中。
本揭露內容是關於系統晶片(system-on-chip),且更特定言之,是關於一種系統晶片、包含所述系統晶片之電子系統以及其操作方法。
本發明概念之實施例是關於一種系統晶片(system-on-chip;SoC),且更特定言之,是關於根據服務品質(quality-of-service;QoS)決定匯流排或從區塊之存取優先權之SoC、包含所述SoC之電子系統以及其操作方法。
隨著晶載匯流排系統(on-chip bus system)之演變,包含例如與主區塊之連接之各種態樣(諸如服務響應時間、損耗、信號雜訊比、串音、回聲、中斷、頻率響應、響度位準等)有關之資訊在內的QoS資訊被用作匯流排與記憶體控制器之排程資訊。因此,提供了使用仲裁以維持連接之可接受QoS之匯流排系統。因此,QoS資訊自主區塊傳遞至匯流排系統有利於實現可接受效能。
用於多媒體資料處理之SoC包含各種類型的主區塊與從區塊。所述SoC可用各種方式進行使用。舉例而言,單一SoC可用在視訊 攝錄影機、電話手機或台式個人電腦(personal computer;PC)中。此等產品中之每一者都具有不同操作模式。舉例而言,視訊攝錄影機具有諸如視訊拍攝模式、視訊顯示模式以及靜態影像顯示模式之操作模式。因此,包含於所述SoC中之主區塊、匯流排、記憶體系統等需要設計成在各種操作模式下進行適當操作。在對SoC之構造而言很重要的晶片間匯流排/記憶體系統領域中,已引入網路系統之QoS之概念,且已開發出用以滿足針對頻寬、閒置時間(latency)以及即時(real-time)等系統效能之需求之方法。
具體而言,當需要即時但卻未滿足需求時,QoS降低。舉例而言,控制液晶顯示(liquid crystal display;LCD)裝置之LCD控制器為具有即時約束之主區塊,且當需求未得到滿足時,圖像之品質可能會降低。
根據本發明概念之例示性實施例,提供了操作包含主區塊、從區塊以及匯流排在內之系統晶片(SoC)之方法。所述方法包含將即時資訊設定在所述主區塊之即時資訊暫存器中,所述即時資訊指示所述主區塊是否為即時區塊。將權重設定在所述主區塊之權重暫存器中。核對所述主區塊之緩衝器資訊。使用所述緩衝器資訊與所述權重來產生服務品質(QoS)信號。基於所述QoS信號決定所述主區塊使用匯流排之優先權。
所述方法可更包含基於所述QoS信號決定所述主區塊存取所述從區塊之優先權。
所述主區塊使用匯流排之優先權之決定可包含:所述主區塊向所述匯流排仲裁器發送包括所述QoS信號在內之匯流排使用請求信號,且所述匯流排仲裁器基於QoS信號准許具有較高優先權之主區 塊使用所述匯流排,所述QoS信號分別包括在輸入至所述匯流排仲裁器之至少兩個匯流排使用請求信號中。
根據本發明概念之例示性實施例,提供了操作包含主區塊、從區塊與匯流排在內之SoC之方法,所述主區塊與所述從區塊經由所述匯流排互相通訊。所述方法包含將包括多個服務品質(QoS)信號在內之查找表儲存在所述主區塊中。核對所述主區塊之緩衝器資訊。自所述查找表中提取對應於所述緩衝器資訊之QoS信號。基於所述QoS信號決定所述主區塊之優先權以便使用匯流排。
可根據所述主區塊之操作模式來改變所述查找表。
當提供多個查找表時,所述方法可更包含根據所述主區塊之所述操作模式自多個查找表中選擇查找表。
根據本發明概念之例示性實施例,提供了包含多個主區塊、從區塊以及匯流排在內之SoC,所述匯流排經組態(configured to)以將所述主區塊與所述從區塊連接。主區塊中之每一者可包含:即時資訊暫存器,所述即時資訊暫存器經組態以儲存指示每一主區塊是否為即時區塊之即時資訊;權重暫存器,所述權重暫存器經組態以儲存主區塊之權重;緩衝器,所述緩衝器經組態以儲存待傳輸至所述匯流排或自所述匯流排接收之資料;以及QoS產生器,所述QoS產生器經組態以核對所述緩衝器之資訊且使用所述緩衝器資訊來產生QoS信號。
所述匯流排可包含匯流排仲裁器,所述匯流排仲裁器經組態以基於QoS信號決定所述主區塊使用所述匯流排之優先權。
所述從區塊可基於所述QoS信號決定所述主區塊存取所述從區塊之優先權。
所述從區塊可包含記憶體排程器,所述記憶體排程器經組態以對記憶體之存取進行排程。
根據本發明概念之例示性實施例,提供了一種電子系統,所述電子系統包含:所述系統晶片(SoC);以及非揮發性記憶體,所述非揮發性記憶體經組態以儲存所述SoC所使用之資料。
一種操作系統晶片(SoC)之方法包含將指示第一主區塊是否為即時區塊之即時資訊儲存在所述第一主區塊之第一暫存器中。將指示第二主區塊是否為即時區塊之即時資訊儲存在所述第二主區塊之第一暫存器中。基於指示所述第一主區塊是否為即時區塊之所述即時資訊,將針對所述第一主區塊之權重資訊儲存在所述第一主區塊之第二暫存器中。基於指示所述第二主區塊是否為即時區塊之所述即時資訊,將針對所述第二主區塊之權重資訊儲存在所述第二主區塊之第二暫存器中。核對第一主區塊與第二主區塊之緩衝器資訊。使用針對所述第一主區塊之所述緩衝器資訊以及所述權重資訊來產生針對所述第一主區塊之服務品質(QoS)信號。使用針對所述第二主區塊之所述緩衝器資訊以及所述權重資訊來產生針對所述第二主區塊之服務品質(QoS)信號。基於針對第一主區塊與第二主區塊所產生之QoS信號,決定針對使用匯流排之第一主區塊與第二主區塊之相對優先權。
藉由參考所附圖式詳細描述本發明概念之例示性實施例,本發明概念之以上以及其他特徵與態樣將變得更加明瞭。
10‧‧‧電子系統
100‧‧‧系統晶片
110‧‧‧中央處理器
120‧‧‧唯讀記憶體
130‧‧‧隨機存取記憶體
140‧‧‧記憶體排程器
141‧‧‧佇列
150‧‧‧記憶體控制器
160‧‧‧加速器
170‧‧‧顯示裝置控制器
180‧‧‧匯流排
181‧‧‧匯流排仲裁器
182‧‧‧多工器
190‧‧‧顯示裝置
195‧‧‧外部記憶體
210‧‧‧第一主區塊
211‧‧‧QoS產生器
211'‧‧‧QoS產生器
212‧‧‧暫存器
213‧‧‧暫存器
215‧‧‧緩衝器
220‧‧‧第二主區塊
221‧‧‧QoS產生器
221'‧‧‧QoS產生器
222‧‧‧暫存器
223‧‧‧暫存器
225‧‧‧緩衝器
230‧‧‧第三主區塊
231‧‧‧QoS產生器
231'‧‧‧QoS產生器
232‧‧‧暫存器
233‧‧‧暫存器
235‧‧‧緩衝器
251‧‧‧查找表
252‧‧‧選擇器
Fifo_level‧‧‧緩衝器資訊
LUT_0[3:0]‧‧‧QoS資訊入口
LUT_15[3:0]‧‧‧QoS資訊入口
M1‧‧‧第一主控器
M2‧‧‧第二主控器
M3‧‧‧第三主控器
QR1‧‧‧第一QoS資訊
QR1[3:0]‧‧‧QoS資訊
QR2‧‧‧第二QoS資訊
QR3‧‧‧第三QoS資訊
QRx‧‧‧QoS信號
W1‧‧‧曲線
W2‧‧‧曲線
W3‧‧‧曲線
圖1為說明根據本發明概念之例示性實施例的包含系統晶片(SoC)在內之電子系統的方塊圖。
圖2A為說明根據本發明概念之例示性實施例的操作所述SoC之方法的概念圖。
圖2B為說明圖2A中所說明之服務品質(QoS)產生器的方塊圖。
圖3為說明根據本發明概念之例示性實施例的操作所述SoC之方 法的概念圖。
圖4為說明根據本發明概念之例示性實施例的產生QoS資訊之方法的表格。
圖5為說明根據本發明概念之例示性實施例的緩衝器資訊、權重以及QoS信號之間之關係的曲線圖。
圖6A至圖6C為繪示根據本發明概念之例示性實施例的先進先出(FIFO)位準與QoS資訊之間之關係的曲線圖。
圖7A至圖7C分別為對應於圖6A至圖6C中所說明之曲線圖的查找表(LUT)。
圖8為說明根據本發明概念之例示性實施例的操作SoC之方法的流程圖。
圖9為說明根據本發明概念之例示性實施例的操作SoC之方法的流程圖。
現將在下文中參考所附圖式對本發明概念進行更全面的描述,所附圖式中繪示了本發明之例示性實施例。然而,本發明可按許多不同形式來體現,且不應解釋為限於本文中所闡述之實施例。相反,此等實施例經提供以使得本揭露內容詳盡且完整,且使得本揭露內容向熟習此項技術者充分傳達本發明之範圍。在諸圖中,為了清晰起見,可能放大了層與區域之大小及相對大小。在本揭露內容中,相同編號指代相同元件。
應理解,當元件被描述為“連接”或“耦合”至另一元件時,其可直接連接或耦合至其他元件,或可存在介入元件。
圖1為說明根據本發明概念之例示性實施例的包含系統晶片(SoC)100之電子系統10的方塊圖。電子系統10可作為手持式裝置來實施,諸如行動電話、智慧型手機、平板電腦、個人數位助理(personal digital assistant;PDA)、企業數位助理(enterprise digital assistant;EDA)、數位靜態相機(digital still camera)、數位視訊攝影機(digital video camera)、攜帶型多媒體播放器(portable multimedia player;PMP)、個人導航裝置或攜帶型導航裝置(portable navigation device;PND)、手持式遊戲機、電子書閱讀器等。
電子系統10可包含SoC 100、顯示裝置190以及外部記憶體195。所述SoC 100可包含中央處理器110、唯讀記憶體(read-only memory;ROM)120、隨機存取記憶體(random access memory;RAM)130、記憶體排程器140、記憶體控制器150、加速器160、顯示裝置控制器170以及匯流排180。SoC 100亦可包含例如電源管理單元、電視機(television;TV)處理器等其他元件。
可稱為處理器之CPU(中央處理器)110可處理或執行儲存在記憶體120、130或195中之程式及/或資料。舉例而言,回應於自時脈信號產生器(未圖示)輸出之時脈信號,CPU 110可處理或執行所述程式及/或所述資料。
CPU 110可包含多核心處理器。所述多核心處理器為具有兩個或兩個以上獨立的有效處理器(稱為核心)之單一計算組件(component)。所述處理器中之每一者可讀取並執行程式指令。所述多核心處理器可同時驅動多個加速器,且由此,包含所述多核心處理器之資料處理系統可執行多重加速。
必要時,可將儲存在記憶體120、130或195中之所述程式及/或所述資料載入至CPU 110中之記憶體中。
ROM 120可儲存永久程式及/或資料。所述ROM 120可包含可抹可程式化ROM(erasable programmable ROM;EPROM)或電力可抹可程式化ROM(electrically erasable programmable ROM;EEPROM)。
RAM 130可臨時儲存程式、資料或指令。可根據CPU 110之控制或儲存在ROM 120中之開機碼(booting code),將儲存在記憶體120或195中之程式及/或資料臨時儲存在RAM 130中。所述RAM 130可包含,例如,動態RAM(dynamic RAM;DRAM)或靜態RAM(static RAM;SRAM)。
加速器160可指用於提高處理諸如文本、音訊、靜態影像、動畫、視訊、二維資料或三維資料等多媒體或多媒體資料之效能的硬體裝置或共同處理器。
為清晰地進行描述,圖1中僅說明了一個加速器160,但SoC 100可包含多個加速器。至少一個應用程式可驅動單一加速器。
記憶體控制器150可用於藉由介面與外部記憶體195連接。所述記憶體控制器150控制外部記憶體195之全部操作,並控制主機與所述外部記憶體195之間的資料通訊。所述記憶體控制器150可控制所述外部記憶體195,以便按照所述主機之請求寫入或讀取資料。所述主機可為諸如CPU 110、加速器160或顯示裝置控制器170之主裝置。
所述外部記憶體195為用以儲存資料之儲存空間,並且可儲存作業系統(operating system;OS)以及各種程式及與資料。所述外部記憶體195可包含DRAM,但本發明概念並未限制於此配置。所述外部記憶體195可包含諸如快閃記憶體、相變RAM(phase-change RAM;PRAM)、磁阻式RAM(magnetoresistive RAM;MRAM)、電阻式RAM(resistive RAM;ReRAM)或鐵電RAM(ferroelectric RAM;FeRAM)之非揮發性記憶體。根據例示性實施例,所述外部記憶體195可嵌入SoC 100中。
記憶體排程器140對外部記憶體195之存取之優先權次序進行排程。舉例而言,當同時自多個主區塊(例如CPU 110、加速器160以及顯示裝置控制器170)接收存取請求信號時,記憶體排程器140可 決定所述主區塊中哪一者具有優先於其他主區塊之存取優先權,且可對外部記憶體195之存取之優先權次序進行排程。
元件110、120、130、140、160與170可經由匯流排180互相通訊。
顯示裝置190可顯示由加速器160或載入至CPU(中央處理器)110之軟體加速器進行加速或處理之多媒體。顯示裝置190可為液晶顯示(LCD)裝置,但本發明概念並未限制於此組態。在例示性實施例中,顯示裝置190可為發光二極體(light emitting diode;LED)顯示裝置、有機LED(organic LED;OLED)顯示裝置或其他類型顯示裝置中之一者。
顯示裝置控制器170控制顯示裝置190之操作。
圖2A為說明根據本發明概念之例示性實施例的操作SoC 100之方法的概念圖。圖2B為圖2A中所說明之服務品質(QoS)產生器211的方塊圖。參看圖1、圖2A以及圖2B,匯流排180可包含匯流排仲裁器181與多工器182。多個區塊210、220與230連接至匯流排180。所述區塊210、220與230被稱為智慧財產權(intellectual property;IP),並且被劃分為從區塊與主區塊。所述從區塊只接收來自其他區塊之請求,而所述主區塊可請求從區塊傳達資料。必要時,單一區塊可充當從與主二者。
儘管圖2A中說明了三個主區塊210、220與230以及一個從區塊140,但本發明概念並未限於此特定組態。主區塊可為圖1所說明之CPU 110、加速器160以及顯示裝置控制器170中之任一者。儘管未圖示,但TV處理器或相機/攝影機介面(camera interface)可為主區塊。
圖1中所說明之記憶體排程器140可為從區塊。所述記憶體排程器可決定記憶體存取優先權,並且可維持其中之記憶體存取請求之佇列(queue)141。
根據例示性實施例,主區塊210、220與230可分別包含QoS產生器211、221與231,且分別包含緩衝器(buffer)215、225與235。
所述緩衝器215、225與235中之每一者可使用用於處理資料之先進先出(first in,first out;FIFO)方法。所述緩衝器215、225與235中之每一者可自主區塊210、220或230之輸入埠接收傳輸資料,根據所述資料之輸入次序排列並管理資料,自首先進入的資料開始按順序讀取資料,並按順序將所述資料傳輸至主區塊210、220或230之輸出埠。或者,緩衝器215、225與235可包含佇列、記憶體、暫存器或正反器。
緩衝器215、225與235中之每一者可包含儲存待傳輸至從區塊之資料的寫入緩衝器,以及儲存自從緩衝器接收之資料的讀取緩衝器。
QoS產生器211、221與231可使用緩衝器資訊產生QoS資訊。所述緩衝器資訊指示緩衝器之佔有程度。舉例而言,所述緩衝器資訊可指示每一主區塊中之所述緩衝器中有多少填入了資料或未填入資料。舉例而言,寫入緩衝器之緩衝器資訊可指示所述緩衝器填入資料之程度,而讀取緩衝器之緩衝器資訊可指示所述緩衝器中有多少未填入資料。
參看圖2B,QoS產生器211可包含查找表(look-up table;LUT)251以及選擇器252,所述查找表包含多個QoS資訊入口LUT_0[3:0]至LUT_15[3:0]。
QoS產生器211可自儲存在LUT 251中之所述QoS資訊入口LUT_0[3:0]至LUT_15[3:0]中選擇對應於緩衝器資訊Fifo_level之入口,並將所選擇之入口作為QoS資訊QR1[3:0]輸出。
儘管如圖2B中所說明,LUT 251包含16個QoS資訊入口LUT_0[3:0]至LUT_15[3:0],且每一QoS資訊入口為4位元資料,但是本發明概念並未限於此配置。舉例而言,可使用更多或更少的QoS資訊 入口,且每一入口可使用任何數目位元之資料。圖2B中僅說明了一個QoS產生器211,但其他QoS產生器221與231可與QoS產生器211具有相同結構。
此處,可在製造時根據主區塊210之特性預定LUT 251。主區塊210之所述特性可指示主區塊210是否為即時區塊。可對QoS產生器211、221與231中之每一者進行程式化,從而可根據主區塊210、220或230之操作模式來改變LUT 251。舉例而言,QoS產生器211、221與231中之每一者可包含多個預定的LUT,且可根據所述操作模式選擇所述LUT中之一者。或者,QoS產生器211、221與231中之每一者可根據所述操作模式產生並儲存LUT。
可根據使用SoC 100之產品之各種功能來定義所述操作模式。舉例而言,當在視訊攝錄影機中使用SoC 100時,視訊拍攝、視訊顯示、靜態影像顯示等可定義為操作模式。當在攜帶型電話中使用SoC 100時,通訊模式、相機/攝影機模式(canera mode)、MP3模式等可定義為操作模式。可用使用SoC 100之產品之使用者介面(未圖示)來設定或改變所述操作模式。舉例而言,當使用SoC 100之產品為攜帶型電話時,使用者可在使用者介面之選單上選擇相片拍攝模式或視訊拍攝模式,且可依照所述使用者之選擇來改變SoC 100之操作模式。當經由所述使用者介面來改變所述操作模式時,CPU 110可告知其他主區塊所改變之操作模式。
回應於第一主區塊210之緩衝器資訊,第一主區塊210之QoS產生器211基於LUT產生第一QoS資訊QR1,所述LUT根據第一主區塊210之特性或操作模式進行設定。以類似方式,相應第二主區塊220與相應第三主區塊230之QoS產生器221與231分別產生第二QoS資訊QR2與第三QoS資訊QR3。
下文將參考圖6A至圖7C詳細描述所述LUT。
向匯流排仲裁器181與記憶體排程器140提供所述第一至第三QoS資訊QR1、QR2與QR3。匯流排仲裁器181基於所述第一至第三QoS資訊QR1、QR2與QR3來決定匯流排使用優先權。
主區塊210、220與230中之每一者可向匯流排仲裁器181輸出用以請求使用匯流排180之請求信號,以便經由匯流排180傳輸資料。所述第一至第三QoS資訊QR1、QR2與QR3中之每一者可包含在所述請求信號中,且被傳輸至匯流排仲裁器181。
匯流排仲裁器181基於相應主區塊210、220與230之QoS資訊QR1、QR2與QR3來決定匯流排使用優先權。匯流排仲裁器181可決定所述匯流排使用優先權,以使具有較高值之QoS資訊QR1、QR2或QR3具有較高優先權。
當來自兩個主區塊之匯流排使用請求信號有效(active)時,如上文所述,匯流排仲裁器181基於所述QoS資訊決定優先於其他主區塊之較高優先權之主區塊,且准許具有較高優先權之主區塊使用匯流排180。若存在兩個或兩個以上具有相同優先權之主區塊,則匯流排仲裁器181可准許所述主區塊循環使用匯流排180。
匯流排仲裁器181可包含優先權暫存器,所述優先權暫存器儲存主區塊210、220與230中之每一者之優先權資訊。
回應於匯流排仲裁器181之輸出信號,多工器182對自主區塊210、220與230接收之資料進行多工,且主區塊210、220與230按照其優先權之降序來使用匯流排180。
與匯流排仲裁器181相似,記憶體排程器140亦可使用相應主區塊210、220與230之QoS資訊QR1、QR2與QR3來決定記憶體存取之優先權。
舉例而言,主區塊210、220與230可分別向記憶體排程器140傳輸分別包含QoS資訊QR1、QR2與QR3在內之記憶體存取請求信號。 當接收兩個或兩個以上記憶體存取請求信號時,記憶體排程器140可基於QoS資訊QR1、QR2與QR3,准許具有記憶體存取之最高優先權之主區塊210、220或230。
圖3為說明根據本發明概念之例示性實施例的操作SoC 100之方法的概念圖。由於圖3中所說明之特徵中之許多特徵就結構與操作而言與圖2中所說明之特徵類似,因此為了避免冗餘,將對二者之間的差異進行描述。
參看圖3,主區塊210可包含QoS產生器211’、暫存器212與213以及緩衝器215。主區塊220可包含QoS產生器221’、暫存器222與223以及緩衝器225。主區塊230可包含QoS產生器231’、暫存器232與233以及緩衝器235。
暫存器212、213、222、223、232與233可包含即時資訊暫存器212、222與232以及權重暫存器213、223與233。
即時資訊暫存器212、222與232中之每一者儲存指示主區塊210、220或230為即時主控器還是非即時主控器之即時資訊。
權重暫存器213、223與233中之每一者儲存主區塊210、220或230之權重。可根據所述即時資訊來決定所述權重,但本發明概念並不限於此組態。舉例而言,可根據系統之頻寬或閒置時間(latency)來決定所述權重。可根據每一主區塊210、220或230之所述特性或所述操作模式來預定主區塊210、220與230中之每一者之所述即時資訊與所述權重。亦可由製造商或使用者來設定所述即時資訊與所述權重。所述製造商可為SoC 100之製造商,且所述使用者可為將SoC 100應用於產品之產品提供者。
QoS產生器211’、221’與231’中之每一者可使用權重與緩衝器資訊來產生QoS資訊。所述緩衝器資訊指示緩衝器之佔有程度,例如每一主區塊中之所述緩衝器中有多少填入了資料或未填入資料。
舉例而言,第一主區塊210之QoS產生器211’可使用基於所述權重、所述緩衝器資訊以及第一主區塊210之操作特性而得以預先程式化之方程式來產生第一QoS資訊QR1。以類似方式,第二主區塊220與第三主區塊230之QoS產生器221’與231’分別產生第二QoS資訊QR2與第三QoS資訊QR3。
向匯流排仲裁器181與記憶體排程器140提供所述第一至第三QoS資訊QR1、QR2與QR3。如上文所述,匯流排仲裁器181可基於所述第一至第三QoS資訊QR1、QR2與QR3來決定匯流排使用優先權。記憶體排程器140亦可基於第一至第三主區塊210、220與230之QoS資訊QR1、QR2與QR3來決定記憶體存取優先權。所決定之記憶體存取優先權可儲存在記憶體排程器140之佇列141內。
圖4為說明根據本發明概念之例示性實施例的產生QoS資訊之方法的表格。參看圖4,針對第一至第三主控器M1、M2與M3中之每一者預定權重。舉例而言,相應主控器M1、M2與M3之權重可分別為60%、10%與30%。所述60%、10%與30%可分別表達為值0.6、0.1與0.3。當所述權重越高時,緊急性亦越高。可週期性地核對緩衝器之緩衝器資訊,或在其發生改變時核對。相應主控器M1、M2與M3之緩衝器資訊分別由M1_FL、M2_FL與M3_FL來表示。
主控器M1、M2與M3藉由分別將權重60、10以及30與緩衝器資訊M1_FL、M2_FL以及M3_FL相乘,可產生QoS信號QRx(其中x=1、2、3)。QoS信號QRx可為0.6×M1_FL、0.1×M2_FL、以及0.3×M3_FL。
圖5為說明根據本發明概念之例示性實施例的緩衝器資訊、權重以及QoS信號QRx之間之關係的曲線圖。參看圖5,QoS信號QRx可為與緩衝器資訊成比例之值,例如FIFO位準。所述成比例程度可由權重定義。所述權重具有圖5中曲線W1與W2所示之線性曲線,或 曲線W3中所示之分段線性曲線。然而,本發明概念並非限於這一特定配置。舉例而言,所述權重可具有非線性曲線。
緩衝器資訊(buffer information)、權重(weight)與QoS信號之間的關係可預定為方程式(equation)或以表格(table)之形式儲存。
圖6A至圖6C為繪示根據本發明概念之例示性實施例的FIFO位準與QoS資訊之間之關係的曲線圖。圖7A至圖7C分別為對應於圖6A至圖6C中所說明之曲線圖的LUT。
圖6A所示為繪製了FIFO位準與QoS資訊之間的線性映射關係。參看圖6B,QoS資訊之值相對於FIFO位準之中間值(例如約為12)之格化儲存(binning)迅速增加,隨後穩定,在所述狀況下敏感度較高。參看圖6C,QoS資訊之值相對於FIFO位準之中間值(例如約為12)之格化儲存(binning)緩慢增加,隨後激增,在所述狀況下敏感度較低。
參看圖7A至圖7C,可提供對應於圖6A至圖6C預先所示之曲線圖的LUT。在圖7A至圖7C中,LUT索引對應於FIFO位準,且LUT值對應於QoS資訊。
圖8為說明根據本發明概念之例示性實施例的操作SoC之方法的流程圖。參看圖8,在操作S110中,在所述主區塊之即時資訊暫存器中設定指示主區塊為即時主區塊還是非即時主區塊之即時資訊。
可根據所述主區塊之特性或操作模式,由使用者來設定所述主區塊之所述即時或非即時。可在製造時將所述即時資訊暫存器設定為某個值(例如預設值,default value),且之後由使用者改變。
此後,在操作S120中設定權重暫存器。與所述即時資訊相似,可根據所述主區塊之特性或操作模式,由使用者設定所述權重。此外,可在製造時將所述權重設定為某個值(例如預設值),且之後由使用者改變。亦可根據所述即時資訊決定所述權重。
在操作S130中,所述主區塊核對緩衝器資訊。
在操作S140中,所述主區塊之QoS產生器使用所述緩衝器資訊與所述權重來產生QoS信號,並將所述QoS信號傳輸至匯流排仲裁器181與記憶體排程器140。
在操作S150中,匯流排仲裁器181可使用所述QoS信號來仲裁匯流排的使用,且記憶體排程器140可使用所述QoS信號對記憶體存取進行排程。
圖9為說明根據本發明概念之例示性實施例的操作SoC之方法的流程圖。參看圖9,主區塊在操作S210中核對操作模式,且在操作S220中確定所述操作模式是否已發生改變。
當確定所述操作模式已發生改變時(是,S220),在操作S230中,所述主區塊之QoS產生器改變LUT。可藉由基於所改變之操作模式自多個預定的LUT中選擇另一LUT,或基於所述操作模式產生並儲存新的LUT來改變所述LUT。
在操作S240中,所述主區塊核對緩衝器資訊。當確定所述操作模式未發生改變時(否,步驟S220),可跳過改變所述LUT(步驟S230)之步驟。
在操作S250中,所述主區塊之QoS產生器提取對應於來自LUT之所述緩衝器資訊之QoS信號,並將所述QoS信號發送至匯流排仲裁器181與記憶體排程器140。
在操作S260中,匯流排仲裁器181可使用所述QoS信號來仲裁匯流排使用,且記憶體排程器140可使用所述QoS信號對記憶體存取進行排程。
已描述用以提高關於即時請求之QoS之實施例,但是本發明概念並未限制於彼等實施例。舉例而言,可基於系統之頻寬或閒置時間(latency)產生QoS信號,且可基於所述QoS信號來決定匯流排使用優 先權或從區塊之存取優先權,從而針對所述系統之頻寬或閒置時間(latency)來提高QoS。
如上文所述,根據本發明概念之例示性實施例,主區塊以即時請求之形式將QoS資訊中之操作性緊急資訊發送至記憶體排程器或匯流排仲裁器。因此,在排程中使用所述主區塊針對即時之緊急性,且由此QoS提高。
此外,根據使用了主控器或所述主控器之操作模式之產品來產生不同的QoS資訊,從而管理QoS使其高於預定水平或將其提高。
雖然已參考本發明概念之例示性實施例詳細展示且描述了本發明概念,但一般熟習此項技術者應瞭解,在不脫離本發明概念之精神與範疇之狀況下,可對本發明概念之形式與細節做出各種改變。
140‧‧‧記憶體排程器
141‧‧‧佇列(queue)
180‧‧‧匯流排
181‧‧‧匯流排仲裁器
182‧‧‧多工器
210‧‧‧第一主區塊
211‧‧‧QoS產生器
215‧‧‧緩衝器
220‧‧‧第二主區塊
221‧‧‧QoS產生器
225‧‧‧緩衝器
230‧‧‧第三主區塊
231‧‧‧QoS產生器
235‧‧‧緩衝器
M1‧‧‧第一主控器
M2‧‧‧第二主控器
M3‧‧‧第三主控器
QR1‧‧‧第一QoS資訊
QR2‧‧‧第二QoS資訊
QR3‧‧‧第三QoS資訊

Claims (22)

  1. 一種操作系統晶片(SoC)之方法,所述系統晶片包含經由匯流排互相通訊之主區塊與從區塊,所述操作系統晶片之方法包括:將指示所述主區塊是否為即時區塊之即時資訊儲存在所述主區塊之即時資訊暫存器中;基於所述即時資訊,將權重資訊儲存在所述主區塊之權重暫存器中;核對所述主區塊之緩衝器資訊;使用所述緩衝器資訊與所述權重資訊來產生服務品質(QoS)信號;以及基於所述服務品質信號決定所述主區塊使用所述匯流排之優先權。
  2. 如申請專利範圍第1項所述之操作系統晶片之方法,更包括基於所述服務品質信號決定所述主區塊存取所述從區塊之優先權。
  3. 如申請專利範圍第2項所述之操作系統晶片之方法,其中決定所述主區塊使用所述匯流排之所述優先權包括下述步驟:將包括所述服務品質信號在內之匯流排使用請求信號自所述主區塊發送至匯流排仲裁器;以及基於作為請求信號之一部分提供給所述匯流排仲裁器之所述服務品質信號,由所述匯流排仲裁器准許所述主區塊以優先於具有較低優先權之另一主區塊的方式使用所述匯流排。
  4. 如申請專利範圍第2項所述之操作系統晶片之方法,其中決定所述主區塊存取所述從區塊之所述優先權包括下述步驟:將包括所述服務品質信號在內之從存取請求信號(slave access request signal)自所述主區塊發送至所述從區塊;以及基於作為所述從存取請求信號之一部分提供給所述從區塊之所 述服務品質信號,由所述從區塊准許所述主區塊以相比其他主區塊具有較高優先權之方式存取所述從區塊。
  5. 如申請專利範圍第4項所述之操作系統晶片之方法,其中所述從區塊包括記憶體排程器,所述記憶體排程器經組態以對記憶體之存取進行排程。
  6. 如申請專利範圍第1項所述之操作系統晶片之方法,其中所述服務品質信號與所述緩衝器資訊具有線性、非線性或分段線性(piece-linear)關係。
  7. 一種操作系統晶片(SoC)之方法,所述系統晶片包含經由匯流排互相通訊之主區塊與從區塊,所述操作系統晶片之方法包括:將包括多個服務品質(QoS)信號在內之查找表儲存在所述主區塊中;核對所述主區塊之緩衝器資訊;自所述查找表中提取對應於所述緩衝器資訊之服務品質信號;以及基於所述服務品質信號決定所述主區塊使用所述匯流排之優先權。
  8. 如申請專利範圍第7項所述之操作系統晶片之方法,其中所述查找表根據所述主區塊之操作模式來改變。
  9. 如申請專利範圍第8項所述之操作系統晶片之方法,其更包括:在提供了多個所述查找表時,根據所述主區塊之所述操作模式自所述多個查找表中選擇查找表。
  10. 如申請專利範圍第8項所述之操作系統晶片之方法,其更包括:根據所述主區塊之所述操作模式產生並儲存所述查找表。
  11. 如申請專利範圍第7項所述之操作系統晶片之方法,其更包括基於所述服務品質信號決定所述主區塊存取所述從區塊之優先權。
  12. 如申請專利範圍第11項所述之操作系統晶片之方法,其中決定所述主區塊使用所述匯流排之所述優先權包括下述步驟:將包括所述服務品質信號在內之匯流排使用請求信號自所述主區塊發送至匯流排仲裁器;以及基於作為所述匯流排使用請求信號之一部分提供給所述匯流排仲裁器之所述服務品質信號,由所述匯流排仲裁器准許所述主區塊以優先於具有較低優先權之另一主區塊的方式使用所述匯流排。
  13. 如申請專利範圍第11項所述之操作系統晶片之方法,其中決定所述主區塊存取所述從區塊之所述優先權包括下述步驟:將包括所述服務品質信號在內之從存取請求信號自所述主區塊發送至所述從區塊;以及基於作為所述從存取請求信號之一部分提供給所述從區塊之所述服務品質信號,由所述從區塊准許所述主區塊以相比其他主區塊具有較高優先權之方式存取所述從區塊。
  14. 如申請專利範圍第13項所述之操作系統晶片之方法,其中所述從區塊包括記憶體排程器,所述記憶體排程器經組態對記憶體之存取進行排程。
  15. 一種系統晶片,包括:多個主區塊;從區塊;以及匯流排,所述匯流排經組態以在所述多個主區塊與所述從區塊之間載運通訊信號,其中,所述多個主區塊中之每一者包括:緩衝器,所述緩衝器經組態以儲存待傳輸至所述匯流排或自所述匯流排接收之資料;以及服務品質(QoS)產生器,所述服務品質(QoS)產生器經組態以 擷取所述緩衝器之資訊,並使用所擷取之所述緩衝器資訊來產生服務品質信號,其中,所述匯流排包括匯流排仲裁器,所述匯流排仲裁器經組態以基於所述多個主區塊中之每一者之所述服務品質信號來決定所述多個主區塊中之每一者使用所述匯流排之優先權,且其中所述多個主區塊中之每一者之所述服務品質信號具有根據所述多個主區塊中之每一者之操作模式設定之值。
  16. 如申請專利範圍第15項所述之系統晶片,其中所述多個主區塊中之每一者更包括:即時資訊暫存器,所述即時資訊暫存器經組態以儲存指示所述多個主區塊中之每一者是否為即時區塊之即時資訊;以及權重暫存器,所述權重暫存器經組態以基於所述即時資訊儲存所述多個主區塊中之每一者之權重,且其中,所述服務品質產生器使用所述緩衝器資訊與所述權重來產生所述服務品質信號。
  17. 如申請專利範圍第15項所述之系統晶片,其中所述服務品質產生器包括多個查找表,所述多個查找表中之每一者包括多個服務品質入口(Qos entries),所述服務品質產生器基於所述主區塊之所述操作模式選擇所述查找表中之一者,且所述服務品質產生器自所選擇之所述查找表中提取對應於所述緩衝器資訊之服務品質入口。
  18. 如申請專利範圍第15項所述之系統晶片,其中所述服務品質產生器根據所述主區塊之所述操作模式產生並儲存查找表,並自所述查找表中提取對應於所述緩衝器資訊之服務品質資訊。
  19. 如申請專利範圍第15項所述之系統晶片,其中所述從區塊基於所述服務品質信號來決定所述多個主區塊中之每一者存取所述從區塊之優先權。
  20. 如申請專利範圍第15項所述之系統晶片,其中所述從區塊包括記憶體排程器,所述記憶體排程器經組態以對記憶體之存取進行排程。
  21. 一種操作系統晶片(SoC)之方法,包括:將指示第一主區塊是否為即時區塊之即時資訊儲存在所述第一主區塊之第一暫存器中;將指示第二主區塊是否為即時區塊之即時資訊儲存在所述第二主區塊之第一暫存器中;基於指示所述第一主區塊是否為即時區塊之所述即時資訊,將所述第一主區塊之權重資訊儲存在所述第一主區塊之第二暫存器中;基於指示所述第二主區塊是否為即時區塊之所述即時資訊,將所述第二主區塊之權重資訊儲存在所述第二主區塊之第二暫存器中;核對所述第一主區塊與所述第二主區塊之緩衝器資訊;使用所述第一主區塊之所述緩衝器資訊以及所述權重資訊來產生所述第一主區塊之服務品質(QoS)信號;使用所述第二主區塊之所述緩衝器資訊以及所述權重資訊來產生所述第二主區塊之服務品質(QoS)信號;以及基於針對所述第一主區塊與所述第二主區塊所產生之服務品質信號,決定所述第一主區塊與所述第二主區塊使用所述匯流排之相對優先權。
  22. 一種電子系統,包括:系統晶片(SoC);以及非揮發性記憶體,所述非揮發性記憶體經組態以儲存所述系統晶片所使用之資料,其中所述系統晶片包括:多個主區塊; 從區塊;以及匯流排,所述匯流排經組態以在所述多個主區塊與所述從區塊之間載運通訊信號,其中,所述多個主區塊中之每一者包括:緩衝器,所述緩衝器經組態以儲存待傳輸至所述匯流排或自所述匯流排接收之資料;以及服務品質(QoS)產生器,所述服務品質(QoS)產生器經組態以擷取所述緩衝器之資訊,並使用所擷取之所述緩衝器資訊來產生服務品質信號,其中所述匯流排包括匯流排仲裁器,所述匯流排仲裁器經組態以基於所述多個主區塊中之每一者之所述服務品質信號來決定所述多個主區塊中之每一者使用所述匯流排之優先權,且其中所述多個主區塊中之每一者之所述服務品質信號具有根據所述多個主區塊中之每一者之操作模式設定之值。
TW101132528A 2011-09-16 2012-09-06 System on chip, electronic system including the same, and method of operating the same TWI563392B (en)

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
TW201329728A true TW201329728A (zh) 2013-07-16
TWI563392B TWI563392B (en) 2016-12-21

Family

ID=47881733

Family Applications (1)

Application Number Title Priority Date Filing Date
TW101132528A TWI563392B (en) 2011-09-16 2012-09-06 System on chip, electronic system including the same, and method of operating the same

Country Status (4)

Country Link
US (1) US8793420B2 (zh)
KR (1) KR101861768B1 (zh)
CN (1) CN103218322B (zh)
TW (1) TWI563392B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
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 삼성전자주식회사 실시간 공유 인터페이스를 포함하는 시스템 온 칩의 스케쥴링 방법
CN106856663B (zh) * 2015-10-01 2022-01-07 瑞萨电子株式会社 半导体装置
CN105630716B (zh) * 2015-12-21 2018-06-12 北京航天测控技术有限公司 一种多卡校准方法
KR20180074197A (ko) 2016-12-23 2018-07-03 삼성전자주식회사 버스 트래픽 컨트롤 장치 및 이를 갖는 버스 시스템
CN110391960B (zh) * 2018-04-18 2021-10-15 珠海全志科技股份有限公司 总线传输控制装置及方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
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
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
GB0031763D0 (en) 2000-12-29 2001-02-07 Mitel Semiconductor Ltd Arbiter for a queue management system
KR100455396B1 (ko) * 2002-10-14 2004-11-06 삼성전자주식회사 마스터 블록들의 우선 순위를 결정하는 파라미터 발생회로 및 파라미터 발생 방법.
KR100784385B1 (ko) * 2005-08-10 2007-12-11 삼성전자주식회사 공유 자원에 대한 접근 요청을 중재하는 시스템 및 방법
KR100839494B1 (ko) 2006-02-28 2008-06-19 삼성전자주식회사 버스 중재 시스템 및 버스 중재 방법
CN101894045A (zh) * 2010-06-18 2010-11-24 阳坚 一种实时Linux操作系统
CN101873272B (zh) * 2010-06-30 2013-01-30 天津市视讯软件开发有限公司 满足互通性和公平性的以太无源光网络动态带宽分配方法

Also Published As

Publication number Publication date
CN103218322A (zh) 2013-07-24
KR101861768B1 (ko) 2018-05-28
KR20130030108A (ko) 2013-03-26
CN103218322B (zh) 2017-10-24
US20130073762A1 (en) 2013-03-21
TWI563392B (en) 2016-12-21
US8793420B2 (en) 2014-07-29

Similar Documents

Publication Publication Date Title
US11755527B2 (en) Techniques for command validation for access to a storage device by a remote client
TW201329728A (zh) 系統晶片、包含該系統晶片的電子系統以及其操作方法
US20230205717A1 (en) System on chip having semaphore function and method for implementing semaphore function
US10409351B2 (en) Computing devices and methods of allocating power to plurality of cores in each computing device
US9746902B2 (en) System-on-chip including multi-core processor and dynamic power management method thereof
US10037225B2 (en) Method and system for scheduling computing
JP2013196321A (ja) 電子回路及び調停方法
US11068283B2 (en) Semiconductor apparatus, operation method thereof, and stacked memory apparatus having the same
JP6331944B2 (ja) 情報処理装置、メモリ制御装置及び情報処理装置の制御方法
US20140204100A1 (en) Modified Quality of Service (QoS) Thresholds
EP3665572B1 (en) Memory allocation type for media buffer
US9575759B2 (en) Memory system and electronic device including memory system
KR102012699B1 (ko) 다중 버스 시스템 및 이를 포함하는 반도체 시스템
US20150161047A1 (en) Multi-core cpu system for adjusting l2 cache character, method thereof, and devices having the same
CN112463028B (zh) 一种i/o处理方法、系统、设备及计算机可读存储介质
US20220300421A1 (en) Memory Sharing
WO2012066746A1 (ja) 情報処理装置
TW202418089A (zh) 分配記憶體空間的方法、記憶體擴充器和系統
KR20230013828A (ko) 시스템 온 칩 및 시스템 온 칩의 동작 방법
CN115981853A (zh) Gpu互联架构、实现gpu互联架构的方法、计算设备