便攜式裝置及其控制方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種便攜式裝置,特別涉及一種便攜式裝置的控制方法。
【背景技術(shù)】
[0002]—般而言,標準安卓(Android)系統(tǒng)使用Linux裝置驅(qū)動器層(Linux devicedriver layer)來控制不同的輸入/輸出元件。然而,在此架構(gòu)下,全部的輸入/輸出元件由不同的硬件驅(qū)動器來驅(qū)動,而每個硬件驅(qū)動器可能會有不同的軟件錯誤,其中這些軟件錯誤需要用不同的方式來解決。因此,需要一種適用于不同輸入/輸出元件的控制方法,以便在產(chǎn)品開發(fā)階段能節(jié)省解決不同軟件問題所需的時間與人力。
【發(fā)明內(nèi)容】
[0003]本發(fā)明提供一種便攜式裝置。該集成電路包括:一主要處理器;一輸入輸出處理器;一通道端口,耦接于該主要處理器以及該輸入輸出處理器之間,具有多個通道;以及至少一輸入/輸出元件,耦接于該輸入輸出處理器。該主要處理器以及該輸入輸出處理器占用該通道中的一個,用以在該主要處理器以及該輸入輸出處理之間傳送一第一指令,并在根據(jù)該第一指令執(zhí)行一程序之后,釋放掉所占用的該通道。
[0004]再者,本發(fā)明提供一種控制方法,適用于一便攜式裝置。該便攜式裝置包括一主要處理器、一輸入輸出處理器、耦接于該輸入輸出處理器的一輸入/輸出元件,以及耦接于該主要處理器以及該輸入輸出處理器之間且具有多個通道的一通道端口。占用該通道中的一個,以便在該主要處理器以及該輸入輸出處理之間傳送一第一指令。根據(jù)該第一指令執(zhí)行一程序。在根據(jù)該第一指令執(zhí)行該程序之后,釋放掉所占用的該通道。
【附圖說明】
[0005]圖1是顯示根據(jù)本發(fā)明一實施例所述的便攜式裝置的軟件系統(tǒng)的架構(gòu);
[0006]圖2A與圖2B是顯示根據(jù)本發(fā)明一實施例所述的便攜式裝置的硬件架構(gòu);
[0007]圖3是顯示根據(jù)本發(fā)明另一實施例所述的便攜式裝置的子系統(tǒng)的硬件架構(gòu);
[0008]圖4是顯示根據(jù)本發(fā)明另一實施例所述的便攜式裝置的硬件架構(gòu);
[0009]圖5是顯示根據(jù)本發(fā)明一實施例所述的便攜式裝置中主系統(tǒng)與子系統(tǒng)之間的通道的方塊圖;
[0010]圖6是顯示根據(jù)本發(fā)明一實施例所述的便攜式裝置的控制方法;
[0011]圖7是顯示根據(jù)本發(fā)明一實施例所述的圖6的步驟S610的流程圖;
[0012]圖8是顯示根據(jù)本發(fā)明另一實施例所述的便攜式裝置的控制方法;
[0013]圖9是顯示根據(jù)本發(fā)明一實施例所述的圖8中步驟S810的流程圖。
[0014]【符號說明】
[0015]10?固件與應(yīng)用層;
[0016]20?外部數(shù)據(jù)庫與運行層;
[0017]30?硬件抽象層;
[0018]40?存根層;
[0019]50?Linux裝置驅(qū)動器層;
[0020]60?硬件層;
[0021]100?軟件系統(tǒng);
[0022]110?通道層;
[0023]120?輸入輸出處理器層;
[0024]130?即時操作系統(tǒng)層;
[0025]140?裝置驅(qū)動器層;
[0026]200?便攜式裝置;
[0027]210、470 ?主系統(tǒng);
[0028]220?圖形處理單元;
[0029]222?視頻模塊;
[0030]224?照相機模塊;
[0031]226?顯示模塊;
[0032]228?圖像信號處理模塊;
[0033]230 ?JPEG 編碼器;
[0034]232?數(shù)據(jù)壓縮模塊;
[0035]234?數(shù)據(jù)解壓縮模塊;
[0036]236?靜態(tài)隨機存取存儲器;
[0037]240?中央處理單元;
[0038]242?基帶芯片;
[0039]250?存儲器控制器;
[0040]252、254?雙倍數(shù)據(jù)率同步動態(tài)隨機存取存儲器;[0041 ]260、300、400 ?子系統(tǒng);
[0042]270、310、410、510 ?通道端口;
[0043]272、312、420?輸入輸出處理器;
[0044]274、314、450 ?音頻引擎;
[0045]280、230?雙端口隨機存取存儲器;
[0046]282、330?安全數(shù)字輸入輸出控制器;
[0047]284、332?通用串行總線3.0控制器;
[0048]290、340?通用輸入輸出控制器;
[0049]292、350?通用串行總線2.0控制器;
[0050]360?串行總線控制器;
[0051]370?音頻采樣率轉(zhuǎn)換器與混波控制器;
[0052]430、530-570 ?裝置;
[0053]440?電源管理單元;
[0054]442?時鐘管理器;
[0055]444?內(nèi)部裝置電源閘單元;
[0056]446?電流與溫度監(jiān)測器;
[0057]455?音頻接口;
[0058]460?電源管理集成電路;
[0059]510_A_510_N?通道;
[0060]520?虛擬矩陣;
[0061]BUS1-BUS6?總線一總線六;
[0062]CMD ?指令;
[0063]CMD_Int、H_Int、Host_Int、INTR1、INTR2 ?中斷指令;
[0064]DAT ?數(shù)據(jù);
[0065]GP10、I2C、SP1、Aud1、GP10、USB2.0、SLIM BUS、I2S ?信號;
[0066]S602-S618、S702-S710、S802-S818、S902-S910 ?步驟。
【具體實施方式】
[0067]為讓本發(fā)明的該和其他目的、特征、和優(yōu)點能更明顯易懂,下文特舉出優(yōu)選實施例,并配合附圖,作詳細說明如下:
[0068]圖1是顯示根據(jù)本發(fā)明一實施例所述的便攜式裝置的軟件系統(tǒng)100的架構(gòu)。軟件系統(tǒng)100包括固件與應(yīng)用層(framework and applicat1n layer) 10、外部數(shù)據(jù)庫與運行層(external-1 ibraries and runtime layer) 20、硬件抽象層(hardware abstract1nlayer,HAL) 30、存根層(stub layer) 40、Linux裝置驅(qū)動器層50以及硬件層60。相較于傳統(tǒng)的安卓(android)軟件系統(tǒng),軟件系統(tǒng)100還包括通道層(channel layer) 110、輸入輸出處理器層120、即時操作系統(tǒng)(0S)層130以及裝置驅(qū)動器層140。根據(jù)軟件系統(tǒng)100,可使用獨立的處理器來管理設(shè)置在便攜式裝置或是外部連接于便攜式裝置的輸入/輸出(input/output)元件,并控制便攜式裝置的電源管理,以便減少便攜式裝置的主要處理器的負載。于是,主要處理器可進入閑置模式或是睡眠模式,因而能降低便攜式裝置的耗電量。
[0069]圖2A與圖2B是顯示根據(jù)本發(fā)明一實施例所述的便攜式裝置200的硬件架構(gòu)。便攜式裝置200包括主系統(tǒng)210以及子系統(tǒng)260。便攜式裝置200可以是智能電話或是平板計算機。主系統(tǒng)210包括總線一 BUS1與總線二 BUS2、圖形處理單元(GPU) 220、視頻模塊222、照相機模塊224、顯示模塊226、圖像信號處理(Image Signal Processing,ISP)模塊228、聯(lián)合圖像專家群(Joint Photographic Experts Group, JPEG)編碼器 230、數(shù)據(jù)壓縮模塊232、數(shù)據(jù)解壓縮模塊234、靜態(tài)隨機存取存儲器(SRAM) 236、中央處理單元(CPU) 240、基帶芯片242、存儲器控制器250,以及兩個雙倍數(shù)據(jù)率同步動態(tài)隨機存取存儲器(DDRSDRAM) 252與254??偩€一 BUS1為多媒體內(nèi)連總線,而總線二 BUS2為低延遲(low-latency)內(nèi)連總線。在主系統(tǒng)210內(nèi),主操作系統(tǒng)由中央處理單元240 (主要處理器)所執(zhí)行,以便執(zhí)行高速運算,例如圖像處理運算、數(shù)據(jù)壓縮/解壓縮運算等。在此實施例中,主操作系統(tǒng)可以是嵌入式操作系統(tǒng),例如,內(nèi)嵌于只讀存儲器(R0M)、快閃存儲器或是任何非易失性存儲器(未顯示)的安卓(Android)操作系統(tǒng)或是以微軟視窗(Microso