C分項計畫:作業系統與應用程式之研發

本分項計畫的目的是開發的高效能低耗能之雙處理器系統上所需的多媒體網路相關應用程式、作業系統與相關應用程式之整合規劃,支援PAC系統之相關應用軟體,以期提供一套彈性、效能與穩定兼具的多媒體平台。本分項計畫包含:物件導向執行環境 (OO Execution Environments) 之研發、多媒體開發環境、與作業系統和相關軟體之整合規劃等,其研究重點共分為下列兩個部分:

子項計畫1: OO Execution Environments

本項子計畫的主要內容為PAC上之物件導向應用環境之研究與開發,其目標成果為提供支援PAC的物件軟體執行環境與相關工具組,主要依下列三個階段執行:
[1] 支援PAC架構之Java執行環境(Java Virtual Machine for PAC)
目前Java Virtual Machine的種類分為兩種,一為J2SE及J2EE所使用的JVM,一為J2ME所使用的CVM或KVM,本年度之計畫內容為實作PAC上之Java執行環境。由於PAC之應用主要在Embedded System上,因此我們主要以KVM及其相關執行環境 (J2ME) 的實作為主要目標。未來如有需要可以進一步擴充至CVM或JVM,以下是目前所規劃的實施項目:
Bytecode Interpreter
KVM implementation
J2ME-related library implementation / CLDC configuration
[2] 提供PAC架構上之Just-In-Time (JIT) 編譯器支援
前一階段的JVM較單純:在執行bytecode程式時直接讀取辨認各個bytecode指令並模擬機器動作。使用JIT技術的JVM在讀取某段bytecode程式時,會先將其翻譯成機器碼再交由處理器直接執行,並暫時儲存這批機器碼,以便後來重複使用。 如此當部分程式重複執行多次時,總體執行速度可大幅提升且逼近編譯成機器碼後的程式。因此,我們希望在KVM中加上JIT的功能,以解決在bytecode interpreting的效能瓶頸
[3] 針對PAC 雙處理器特性改進KVM效能
KVM的原始設計力求簡單以因應不同的硬體架構。 因此為善用PAC的硬體資源,除了必須根據PAC雙處理器之架構設計修改KVM之內部設計,還必須提供控制硬體資源配置的相關應用程式介面 (API)及函式庫,使Java軟體發展者能針對不同應用調整硬體資源的使用。目前規劃的研究方向如下:
瞭解PAC微處理器之能量感知機制及相關之系統軟體支援,並分析及改進KVM/JIT 內部不同模組之能量需求。 同時,我們也從能量需求的角度,發展適合PAC架構的bytecode 最佳化處理方法。
發展調整能量需求的應用程式介面與函式庫以簡化具能量感知能力之Java 軟體發展。
根據計畫要求針對PAC 其他工具組如多媒體環境等發展Java 介面及函式庫。

 

子項計畫2: 多媒體演算法之系統分析及設計研發

[1] MPEG4 Part 2 Frame-Based Video 編解碼演算法的設計與研發
在MPEG4 Video中定義了許多壓縮編碼工具。一些稱為MPEG4 Video的產品,其實未必將這許多工具的效能皆予以發揮。本小項之研究將考慮其Frame-Based Video部分的規範。我們將先以C語言為基礎,對其解碼與編碼演算法之data memory需求與運算複雜度進行分析,並從事程式結構的設計。然後將針對PAC架構,進行高效率編解碼器的的實作,其中因解碼器較簡單,故將先從事解碼器之實作,然後從事編碼器之實作。
[2] MPEG4 Part 2 Object-Based Video 編解碼演算法的設計與研發
MPEG4一個主要的創新,在於提出Object-Based Coding的觀念。本小項的研究將考慮其Object-Based Video部分的規範。其研究實施之策略與上述Frame-Based Video小項相同。
[3] H.264 Video 編解碼演算法之設計與研發
H.264(亦編為MPEG4 Part 10)的第一版甫於前(2003)年制定完成,是近一二年來受到相當重視之 Video 壓縮標準,其特色是高壓縮比。要達到較高之壓縮比,相對的需要較複雜的運算,我們將針對 H.264 Video 壓縮標準發展較有效率的演算法,尤其會著重在最需要大量運算的 Motion Estimation 部分。整個研究的實施策略與上述兩小項相似。我們預計所發展的系統及方法會配合PAC處理器之架構及特性以達到高效能。
本分項計畫C中各子項計畫之分工與關連略述如下:子項計畫C.1將負責研發Virtual Machine,以支援於行動運算裝置日益盛行的Java相關應用軟體;子項計畫C.2研發多媒體相關之應用軟體,以MPEG4視訊與H.264視訊之編解碼為主要的應用項目,高效能的運算為重要目標。


本分項計畫包含C.1子項計畫由交大資科陳俊穎助理教授主持,陳俊穎助理教授,主要的研究領域為軟體工程、分散式系統與物件導向程式設計,美國加州洛杉磯分校資訊系博士,曾任BioDiscovery, Inc系統總工程師。C.2子項計畫由交大電子系林大衛教授與清華大學資訊工程學系賴尚宏副教授共同主持,林教授主要的研究領域為數位通訊與多媒體系統,美國南加州大學電機工程博士,曾任交通大學副研發長;賴教授主要研究領域為Multimedia、Video/Image Analysis and Processing、Computer Vision,美國佛羅里達大學博士,曾任職任職於美國普林斯頓西門子研發中心技術部多年,並獲得多項美國專利在影響及多媒體應用領域。