(計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)專業(yè)論文)面向嵌入式異構(gòu)多核體系的軟硬件協(xié)同任務(wù)調(diào)度方法.pdf_第1頁(yè)
(計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)專業(yè)論文)面向嵌入式異構(gòu)多核體系的軟硬件協(xié)同任務(wù)調(diào)度方法.pdf_第2頁(yè)
(計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)專業(yè)論文)面向嵌入式異構(gòu)多核體系的軟硬件協(xié)同任務(wù)調(diào)度方法.pdf_第3頁(yè)
(計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)專業(yè)論文)面向嵌入式異構(gòu)多核體系的軟硬件協(xié)同任務(wù)調(diào)度方法.pdf_第4頁(yè)
(計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)專業(yè)論文)面向嵌入式異構(gòu)多核體系的軟硬件協(xié)同任務(wù)調(diào)度方法.pdf_第5頁(yè)
已閱讀5頁(yè),還剩53頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

(計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)專業(yè)論文)面向嵌入式異構(gòu)多核體系的軟硬件協(xié)同任務(wù)調(diào)度方法.pdf.pdf 免費(fèi)下載

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

浙江人學(xué)碩l 學(xué)位論文 摘要 半導(dǎo)體技術(shù)的發(fā)展使得基于i p 核的s o c 系統(tǒng)在嵌入式領(lǐng)域得到了廣泛 應(yīng)用。其中主從關(guān)系架構(gòu)的異構(gòu)多核系統(tǒng),是擁有用于任務(wù)控制的通用處理 器核和面向應(yīng)用定制的專用處理器核。 異構(gòu)多核嵌入式系統(tǒng)上的操作系統(tǒng),一般運(yùn)行在通用處理核上,而計(jì)算 量大的部分運(yùn)行在專用處理器核上?,F(xiàn)有軟件系統(tǒng)對(duì)異構(gòu)多核的支持,主要 是用驅(qū)動(dòng)程序,或一組系統(tǒng)調(diào)用把輔助核抽象成可以被應(yīng)用程序直接使用的 接口,應(yīng)用程序一般直接編程以使用輔助核。這種方法在系統(tǒng)中運(yùn)行單個(gè)應(yīng) 用程序的時(shí)候能獲得很好的效果,并不適用于多個(gè)應(yīng)用程序同時(shí)運(yùn)行的情 況。 本文認(rèn)為可以從軟硬件協(xié)同的角度,探索在該體系下的操作系統(tǒng)任務(wù)調(diào) 度方法,調(diào)度系統(tǒng)的部分功能由硬件協(xié)同完成。 本文將輔助核任務(wù)分成預(yù)處理,任務(wù)運(yùn)行以及后續(xù)處理三個(gè)階段。預(yù)處 理階段生成輔助核可以運(yùn)行的執(zhí)行環(huán)境,包括代碼和數(shù)據(jù);任務(wù)運(yùn)行階段則 是任務(wù)在輔助核上的運(yùn)行過(guò)程;后續(xù)處理則是任務(wù)運(yùn)行完成的后續(xù)處理工 作。第二階段運(yùn)行在輔助核上,而預(yù)處理和后續(xù)處理階段運(yùn)行在主核進(jìn)程上, 管理著輔助核任務(wù)的創(chuàng)建和銷毀,由操作系統(tǒng)的調(diào)度器進(jìn)行調(diào)度 本文設(shè)計(jì)的硬件調(diào)度器完成第二階段輔助核任務(wù)的調(diào)度管理。這是一個(gè) 支持先來(lái)先服務(wù)和動(dòng)態(tài)優(yōu)先級(jí)兩種調(diào)度策略的i p 核,可以按不同的調(diào)度策 略調(diào)度輔助核任務(wù)在輔助核上運(yùn)行。 通過(guò)本文設(shè)計(jì)的軟硬件協(xié)同任務(wù)調(diào)度方法,測(cè)試可知輔助核計(jì)算任務(wù)吞 吐量提高了8 1 ,用于輔助核任務(wù)調(diào)度的時(shí)間減少了7 8 。 總之,本文設(shè)計(jì)的軟硬件協(xié)同任務(wù)調(diào)度方法,通過(guò)設(shè)計(jì)硬件調(diào)度器,配 合軟件層面的操作系統(tǒng)調(diào)度系統(tǒng),可以靈活而高效地支持異構(gòu)多核的體系中 的任務(wù)調(diào)度管理。 關(guān)鍵詞多核,異構(gòu),操作系統(tǒng),編程模型,軟硬件協(xié)同,調(diào)度 浙江大學(xué)碩上學(xué)位論文 a b s t r a c t a st h ed e v e l o p m e n to fs e m i c o n d u c t o rt e c h n o l o g y , i pb a s e ds o cs y s t e mi s b e c o m i n gp o p u l a ri nt h e 鋤b e d d e ds y s t e mf i e l d o n ei st h eh e t e r o g e n e o u sm u l t i - c o r e s y s t e mi nt h em a s t e r s l a v em o d e l t h eg e n e r a lp r o c e s s o rc o r ea sm a s t e ri sr e s p o n s i b l e f o rt h ec o n t r o l l i n go fs y s t e mw h i l et h es l a v ep r o c e s s o rc o r e sw h i c ha r r ed e s i g n e df o r s p e c i f i cp u r p o s e 1 1 磚o p e r a t i n gs y s t e mf o rt h i sa r c h i t e c t u r ei sr u n n i n go nt h em a s t e rc o r e , a n dt h e p a r ti nt h ea p p l i c a t i o n 、i t l ll a r g ec o m p u t a t i o ni sr u n n i n gi nt h es l a v ec o r e s f o rt h e s l a v ec o r e s d e v i c ed r i v e ro rs y s t e mc a l l 伽b eu s e da sai n t e r f a c ef o ra p p l i c a t i o n b u t t l l e ya l en o ta p p l i c a b l ew h e nt h e r ea r em o r et h a no n ea p p l i c a t i o ni nt h es y s t e m t l l i s p a p e rd e s i g n sah a r d w a r es c h e d u l e r t or e i n f o r c et h e g e n e r a ls o f t w a r e s c h e d u l e ri nt h eo p e r a t i n gs y s t e mf o rh e t e r o g e n e o u sm u l t i c o r ea r c h i t e c t u r e i nt h i sp a p e rt h et a s kf o rs l a v ec o i ei sd e s i g ni nt h r e ep a r t s , t h ep r e - p r o c e s s i n g , r u n n i n g , p o s t - p r o c a s s i n g p r e - p r o c e s s i n gp a r ti sr e s p o n s i b l ef o rt h ec r e a t i n go ft h e c o n t e x to ft h es l a v et a s k , i n c l u d i n gt h ec o d ea n dd a t a , a n dt h ep o s t - p r o c e s s i n gp a r ti s r e s p o n s i b l ef o rp r o c e s s i n gt h er e s u l t so fc o m p u t a t i o n n mr u n n i n gp a r t , t h ec o m p u t i n g o fd a t ai st h ec o r eo fs l a v et a s k , i ss c h e d u l e db yt h eh a r d w a r es c h e d u l e rw h i l et h e p r e , - p r o c e s s i n ga n dp o s t - p r o c e s s i n gr u n n i n gi nt h em a s t e rc o r ei ss c h a d u l e db yt h e s o f t w a r es c h e d u l e r 1 1 磚h a r d w a r es c h e d u l e rt h i sp a p e rd e s i g n e di ss u p p o r tf i r s tc o m ef i s ts 盯、,i ( f c f s ) a n dd y n a m i cp r i o r i t ys c h e d u l i n gs t r a t e g i 嬲 w i t ht h i sh a r d w a r e - s o f t - w a r ec o - s c h e d u l em e t h o d , a f t e rt e s t i n ga n da n a l y z i n g , t h e s l a v et a s k st h r o u g h p u ti nt h es y s t e mi si n c r e a s e d8 1 a n dt h es c h e d u l i n gt i m ef o r s l a v et a s k si sr e d u c e d7 8 t h a nt h eg e n e r a ls c h e d u l i n gm e t h o di ns o f t w a r e i ns h o r t , t h em e t h o dt h a th a r d w a r e - s o f t w a r ec o - s c h e d u l em e t h o d , h a r d w a r e s c h e d u l e rr e i n f o r c et h es o f t w a r es c h e d u l e r , c a nb ef l e x i b l ea n de f f i c i e n ts u p p o r tt h e t a s ks c h e d u l i n go f h e t e r o g e n e o u sm u l t i - c o r es y s t e m k e y w o r d s m u l t i - c o r e , h e t e r o g e n e o u s ,o p e r a t i n gs y s t e m , p r o g r a m m i n gm o d e l , c o o p e r a t i n gw i t hh a r d w a r ea n ds e t , w a r e , s c h e d u l i n g 浙江人學(xué)碩士學(xué)位論文圖目錄 圖目錄 圖2 1c e l l 微架構(gòu)的整體框架圖,引用自2 9 9 圖2 2 應(yīng)用程序的執(zhí)行模式f 1 1 】1 7 圖3 1 軟硬件協(xié)同調(diào)度模型。1 9 圖3 2 嵌入式異構(gòu)多核體系設(shè)計(jì)圖2 2 圖3 3s p e 結(jié)構(gòu)圖2 3 圖4 1s o c 中的硬件調(diào)度器。2 5 圖4 - 2 硬件調(diào)度器的模塊設(shè)計(jì)2 6 圖4 3 新s p e 任務(wù)添加到硬件調(diào)度器任務(wù)隊(duì)列的流程3 0 圖4 4s p e 任務(wù)調(diào)度控制過(guò)程3 1 圖4 5s p e 任務(wù)的后期處理過(guò)程3 2 圖5 1 操作系統(tǒng)支持模型3 4 圖5 2s p e 程序的編程模型【5 l 】3 5 圖孓3 應(yīng)用程序的執(zhí)行流程3 6 圖6 1x i l i n xv i r t e x - 4m l 4 0 3f p g a 開發(fā)板外觀1 5 0 1 3 7 圖6 - 2s o c 系統(tǒng)在e d k 中的整體設(shè)計(jì)圖3 8 圖6 3 單個(gè)應(yīng)用程序基于傳統(tǒng)調(diào)度和硬件調(diào)度運(yùn)行效果比較4 3 圖6 4 高優(yōu)先級(jí)應(yīng)用程序基于傳統(tǒng)調(diào)度和硬件調(diào)度的運(yùn)行時(shí)間比較4 3 圖6 5 兩個(gè)應(yīng)用程序基于傳統(tǒng)調(diào)度和硬件調(diào)度同時(shí)運(yùn)行的時(shí)間比較4 4 圖6 - 6 不同調(diào)度方法下單個(gè)應(yīng)用程序中s p e 任務(wù)時(shí)間對(duì)比4 5 圖6 - 7 不同調(diào)度方法下不同數(shù)量應(yīng)用程序s p e 任務(wù)時(shí)間的對(duì)比4 6 i i i 浙江大學(xué)碩士學(xué)位論文 表目錄 表目錄 表4 1s p e 任務(wù)控制模塊格式2 7 表4 - 2 存儲(chǔ)控制原語(yǔ)的格式。2 9 表4 3s p e 控制原語(yǔ)的格式2 9 表6 1s o c 系統(tǒng)的內(nèi)存映射分配表3 9 表6 - 2 用于測(cè)試應(yīng)用程序列表。4 l 表6 - 3 測(cè)試分組和測(cè)試結(jié)果匯總。4 2 表6 - 4 單個(gè)應(yīng)用程序基于傳統(tǒng)調(diào)度和硬件調(diào)度運(yùn)行效果比較4 2 表6 - 5 高優(yōu)先級(jí)應(yīng)用程序基于傳統(tǒng)調(diào)度和硬件調(diào)度的運(yùn)行時(shí)h j 比較4 3 表6 6 兩個(gè)應(yīng)用程序基于傳統(tǒng)調(diào)度和硬件調(diào)度同時(shí)運(yùn)行的時(shí)問(wèn)比較4 4 表6 7 不同調(diào)度方法下單個(gè)應(yīng)用程序中s p e 任務(wù)時(shí)日j 對(duì)比4 5 表6 8 不同調(diào)度方法下不同數(shù)量應(yīng)用程序s p e 任務(wù)時(shí)問(wèn)的對(duì)比4 5 i v 浙江大學(xué)碩士攀位論文 輔l 章緒論 第1 章緒論 1 。l 嵌入式舜構(gòu)多核體系概述 半導(dǎo)體以及相應(yīng)的集成電路制造工藝的迅猛發(fā)展,集成在芯片上的晶體管的 密度不斷的提高。使得越來(lái)越多的元件都可以集成剎一塊單一的芯片上。但是芯 片出于菇體鎊數(shù)量增加兩發(fā)熱爨越來(lái)越大,晶體管躺電流泄露闊題也隧乏越來(lái)越 嚴(yán)重。薅蓑菇棼管鼗量熬趲鴦鬟,務(wù)秘冬群鶼c p u 竣謗皴本震寒提秀c p u 瓣謗算 性能,但怒,晶體管數(shù)耳增加一德,所得到提升的譙能卻只有原來(lái)的3 0 【l 】處 理器的設(shè)計(jì)農(nóng)工藝設(shè)計(jì)和性能提升上都面臨著巨大f i 勺挑戰(zhàn),而多核成為了解決這 些問(wèn)題的一種途徑2 1 。 嵌入式系統(tǒng)往往是針對(duì)特定艨用設(shè)計(jì)豹專門的系統(tǒng),楣比通用計(jì)籀機(jī),在系 統(tǒng)熬設(shè)詩(shī)秘突襲上罄較蕘楚攀,褒半導(dǎo)缽技本藏熬瓣今關(guān),在萃令蒼麓童把各羲 不同蘑途豹功能模塊整合在一起,不毽可戳攆拜模塊聞的逶信速度,掇舞系統(tǒng)往 能,而且還w 以減少芯片的面積,從而也降低芯片的能耗【3 1 很多的專用于圖像 計(jì)算,數(shù)字信號(hào)處理的應(yīng)用中,為了突破單個(gè)處理核速度的限制,都有漿用單芯 片多核心的設(shè)計(jì)方法【4 】 5 】。 有著越越多豹囂囪特定纛髑豹系統(tǒng)采用硬紛多核豹方式來(lái)提升臻統(tǒng)豹謗 算能力。褒【3 】設(shè)詩(shī)了一令撼騫多令d s p 處理核熬多核系統(tǒng)來(lái)疆舞系統(tǒng)詩(shī)舞能力。 還有在f 6 】巾寅現(xiàn)了一個(gè)基于多娥璦核的用于加速j p e g 計(jì)算的系統(tǒng)。穰f 7 】中實(shí)現(xiàn) 了一個(gè)用予加速m p e g 2 視頻編解碼的多處理器系統(tǒng),并為此硬件系統(tǒng)專門設(shè)計(jì) 了軟件編程模型以及m p e g 2 編解碼任務(wù)的調(diào)度方式。同樣在【8 】中實(shí)現(xiàn)一個(gè)用于 m p e g - - 4 計(jì)舞舷速豹嵌入式s o c 體系結(jié)構(gòu),以及翻巾是一個(gè)為h d t v 墩耀兩專 門設(shè)詩(shī)豹霧:l 奄多核系統(tǒng),多令簸壤孩孛甄騫為h d t v 謗葵專瓣設(shè)謗戇憊遴孩,氌 有運(yùn)行系統(tǒng)管理和h d t v 計(jì)算強(qiáng)務(wù)調(diào)度的傳統(tǒng)的嵌入式通用處理挾。 可以看剿為了滿足各種各樣的應(yīng)用需求,各種針對(duì)特定應(yīng)用而設(shè)計(jì)的異構(gòu)多 核系統(tǒng)越來(lái)越流行。在這種體系中,除了針對(duì)特定_ 陂用優(yōu)化設(shè)計(jì)的處理榱外,還 有一個(gè)負(fù)責(zé)操作系統(tǒng)運(yùn)行的通用處理核。不單單是嵌入式領(lǐng)域,在高餓熊服務(wù)器 系統(tǒng)簇域,i b m 豹c e l l 蔣系絮擒氌采矮了這樣瓣一令募捧多菝懿設(shè)詩(shī)方式。 在這種菇梅多核的體系粱襁巾,逶常把運(yùn)行搽體系統(tǒng)靜逶用鷯處璜撥稱為主 處理核或者激核。而把針對(duì)特定成用設(shè)計(jì)的處理核稱為輔助處理核或糟輔助核。 如前面提到的d s p ,還有針對(duì)j p e g ,m p e g 2 ,m p e g - 4 以及h d t v 殿用設(shè)計(jì)的 浙江大學(xué)碗上掌能論文第1 章緒論 處理核都屬予這一類。這些輔助處理核往往只能避行針對(duì)特定應(yīng)用設(shè)計(jì)的專用指 令集,所以嫩行在糖助核上的輔助核任務(wù)需要主核的管理和控鍘。 1 2 多核攮俸系統(tǒng)霹編程模凝 在支持辨構(gòu)多核體系的軟件系統(tǒng)中,操作系統(tǒng)運(yùn)行在主核上,而輔助核娜通 過(guò)各種各樣的方式抽象成軟件接口。例如以驅(qū)動(dòng)程序,系統(tǒng)調(diào)用,或者廉?dāng)M文件 系統(tǒng)的方式【lo 】_ 抽象出軟件接口供成用程序直接使用。在驅(qū)動(dòng)程序支持輔助核的 方式中,從攆終系統(tǒng)靜受度素瓣,輳駒核是一個(gè)麴露濺大詩(shī)葬能力的設(shè)撂,應(yīng)用 程序發(fā)揮麓麓孩強(qiáng)大詩(shī)算韙力懿方式羲是霞薅轆懿梭輟動(dòng)鬈彥。采瑁系絞調(diào)耀方 式支持輔助核的方式中,支持輔助核的軟件接日被包裝成操作系統(tǒng)內(nèi)核巾的一組 系統(tǒng)調(diào)用。而虛擬文件系統(tǒng)則是把輔助核的使用包激成一個(gè)虛擬文件系統(tǒng),通過(guò) 對(duì)文件系統(tǒng)的操作來(lái)實(shí)現(xiàn)對(duì)輔助棱的操作 在l l l 】文巾設(shè)計(jì)了一個(gè)輔助核和圭孩在編程模嬲上地位稠等的模型。在這個(gè) 摸壅孛,運(yùn)露在壤蘩菝夔瘦蔫趲譬霹疆窩運(yùn)學(xué)程囊孩上懿應(yīng)躉程序一攆調(diào)震系 統(tǒng)調(diào)用,麗時(shí)也可以和主核上的艨用程序一樣平等的被操作系統(tǒng)調(diào)度。遨傘模型 是通過(guò)一個(gè)支持d s p 的程序稷序庫(kù)和專門的軟件巾斷及相應(yīng)的中斷處理函數(shù)來(lái) 實(shí)現(xiàn)的。 異構(gòu)多核體系提供了強(qiáng)大的計(jì)算處理能力,軟件系統(tǒng)對(duì)這種體系結(jié)構(gòu)的支持 方式淡及稷纛緩瞧模型塞接關(guān)系凌硬終囂霎戇力麴涮璃率、程痔員鑊羽疆穆系統(tǒng) 酶方便往等系歹| j 闊題。 總的來(lái)說(shuō),f l l 】中所使用的方式比較靈活,從殿用程序的角度來(lái)看,輔助核 和主核地位樣,應(yīng)用程序能夠使用傳統(tǒng)的編程方斌來(lái)使用異構(gòu)多核中的各種不 同類型的處驥核。不過(guò)編程的方便性需要提供一緞裁雜的底層應(yīng)用程序麾和軟件 孛斷及相威豹巾斷處理函數(shù)豹支持。嵌入式領(lǐng)域的繳孀強(qiáng)耨月異,如暴瓣每一種 不弱豹舅幸奄多核俸系蠡舞愛(ài)一套裁拳癢戳及孛甄及夸獲簸理丞數(shù),:| 莓怒一今j 常 大的工作薰,這必然會(huì)延長(zhǎng)產(chǎn)晶的殲發(fā)周期。 而對(duì)于使用虛擬文件系統(tǒng)威者驅(qū)動(dòng)程序的方式來(lái)支持輔助核的方式,在實(shí)現(xiàn) 上較為簡(jiǎn)單。尤其是采用驅(qū)動(dòng)穰序的方式在開發(fā)比較快,而虛擬文件系統(tǒng)的方式 雖然比驅(qū)動(dòng)稷序的方式復(fù)雜一點(diǎn),但其在編程模型上豹先進(jìn)性可以使褥舞發(fā)應(yīng)用 翟痔露較菇麓肇童鼴。 但是,光論采用驅(qū)動(dòng)程序還怒虛投文件系統(tǒng)的蠢式支持異構(gòu)多棱體系,郝是 把輔助核硬件抽象成相應(yīng)的軟件接口,在應(yīng)用程序巾通過(guò)使用這些軟件接口對(duì)輔 2 浙江大學(xué)碩上學(xué)位論文 第1 章緒論 助核硬件進(jìn)行直接的操作。這種方式用于測(cè)試輔助核的功能完整性以及應(yīng)用在單 任務(wù)的系統(tǒng)中是很合適的,實(shí)現(xiàn)方式和使用方式都很簡(jiǎn)單,但是,當(dāng)有多個(gè)應(yīng)用 程序使用輔助核硬件的時(shí)候,由于這種軟件直接操作硬件的方式,使得應(yīng)用程序 很難發(fā)現(xiàn)某個(gè)輔助處理核是否已經(jīng)被其他程序所使用,輔助核資源使用的沖突就 發(fā)生了。 此外,定義一組系統(tǒng)調(diào)用來(lái)支持輔助核也是一種方法。通過(guò)對(duì)輔助核進(jìn)行底 層抽象,輔助核在各個(gè)應(yīng)用程序上的使用分配由操作系統(tǒng)內(nèi)核進(jìn)行調(diào)度。這樣就 可以解決輔助核管理的問(wèn)題。但是從底層看,這需要復(fù)制大量的內(nèi)核設(shè)施,同時(shí) 還要的大量的新系統(tǒng)調(diào)用的配合,才能提供必要的功能。這種方法在實(shí)現(xiàn)上也頗 為復(fù)雜【l o 】。 1 3 研究目的 從上一節(jié)對(duì)異構(gòu)多核體系上的軟件支持模型的分析中可以看到,在支持主核 和輔助核這種體系的操作系統(tǒng) 1 2 l o p ,如何靈活而有效的調(diào)度管理應(yīng)用程序任務(wù) 在輔助核運(yùn)行成了一個(gè)很大的問(wèn)題。無(wú)論是以驅(qū)動(dòng)程序還是虛擬文件系統(tǒng)的方式 把輔助核抽象成軟件接口,都很難滿足多任務(wù)的系統(tǒng)需求。而定義一組系統(tǒng)調(diào)用 來(lái)支持的輔助核的方法卻在實(shí)現(xiàn)上比較復(fù)雜,面對(duì)各種各樣的異構(gòu)多核體系,都 需要實(shí)現(xiàn)各自獨(dú)立的一組系統(tǒng)調(diào)用,軟件系統(tǒng)的可移植性上比較差。 針對(duì)這些問(wèn)題,本文認(rèn)為可以從軟硬件協(xié)同工作的方式來(lái)解決異構(gòu)多核體系 中的任務(wù)調(diào)度問(wèn)題。 1 4 本文工作 本文提出了一個(gè)面向嵌入式異構(gòu)多核體系的軟硬件協(xié)同任務(wù)調(diào)度的方法。在 此方法中,把運(yùn)行在異構(gòu)多核體系結(jié)構(gòu)上的應(yīng)用程序分成運(yùn)行在主核上的任務(wù)線 程及主核任務(wù)和運(yùn)行在輔助核上的任務(wù)線程即輔助核任務(wù)兩種類型。對(duì)這兩種類 型的任務(wù)采用分層次的調(diào)度管理方式,兩類任務(wù)各自由相應(yīng)的調(diào)度器進(jìn)行調(diào)度管 理。主核任務(wù)由操作系統(tǒng)調(diào)度器進(jìn)行調(diào)度管理,輔助核任務(wù)則由本文設(shè)計(jì)的一個(gè) 基于口核的連接到片上總線的硬件調(diào)度器來(lái)調(diào)度管理在本文中,重點(diǎn)對(duì)輔助核 的管理和調(diào)度輔助核任務(wù)的硬件調(diào)度器做了深入研究。 本文主要在以下幾個(gè)方面開展了研究工作: 1 ) 分析嵌入式異構(gòu)多核體系的特性,并研究了針對(duì)異構(gòu)多核體系的操作系統(tǒng)支 持以及應(yīng)用程序編程模型。 浙江大學(xué)碩士學(xué)位論文第1 章緒論 2 ) 設(shè)計(jì)軟硬件協(xié)同任務(wù)調(diào)度的模型,輔助核任務(wù)由硬件調(diào)度器進(jìn)行調(diào)度管理, 麗主核任務(wù)則由操作系統(tǒng)的調(diào)度器來(lái)調(diào)度管理。 3 ) 設(shè)計(jì)并實(shí)現(xiàn)了基于口核的硬件調(diào)度器,該調(diào)度器支持先來(lái)先服務(wù)和動(dòng)態(tài)優(yōu)先 級(jí)兩種調(diào)度策略。并定義硬件調(diào)度器和輔助核之間的控制通訊接口。 4 ) 設(shè)計(jì)輔助核任務(wù)的編程模型。并按照此編程模型編寫測(cè)試應(yīng)用程序?qū)φ麄€(gè)軟 硬件協(xié)同任務(wù)調(diào)度模型進(jìn)行驗(yàn)證。 通過(guò)軟件和硬件協(xié)同調(diào)度的方式,把多個(gè)任務(wù)有序、高效的運(yùn)行在多核系統(tǒng) 中,降低操作系統(tǒng)支持異構(gòu)多核系統(tǒng)的復(fù)雜度。并提供一個(gè)和現(xiàn)有編程模型相似 的,易于程序員使用的軟件編程模型,降低編程復(fù)雜度。 1 5 論文的組織 本文第一章是緒論,簡(jiǎn)要介紹了本文所做研究的背景,本文的研究?jī)?nèi)容和目 的,還有介紹一下本文的組織結(jié)構(gòu)。在第二章中,介紹了與本文相關(guān)的背景內(nèi)容 和相關(guān)的技術(shù)簡(jiǎn)介。第三章介紹了軟硬件協(xié)同的任務(wù)調(diào)度方法,并簡(jiǎn)要的介紹了 嵌入式異構(gòu)多核體系。第四章詳細(xì)介紹了硬件調(diào)度器的設(shè)計(jì),同時(shí)介紹了硬件調(diào) 度器和輔助核之間控制通訊接口以及硬件調(diào)度器的軟件接口抽象。第五章介紹了 支持操作系統(tǒng)對(duì)軟硬件協(xié)同任務(wù)調(diào)度方法的支持,并介紹了相應(yīng)的編程模型。第 六章則介紹了軟硬件協(xié)同任務(wù)調(diào)度器系統(tǒng)在f p g a 開發(fā)板上的實(shí)現(xiàn)和測(cè)試驗(yàn)證。 第七章對(duì)本文的內(nèi)容進(jìn)行了總結(jié),同時(shí)對(duì)未來(lái)的工作做了展望。 1 6 本章小結(jié) 本章介紹了本文研究的背景,并介紹了本文研究的主要內(nèi)容以及研究目的。 同時(shí)介紹了本論文的組織結(jié)構(gòu)。 4 浙江大學(xué)碩上學(xué)位論文 第2 章相關(guān)背景及技術(shù)簡(jiǎn)介 第2 章相關(guān)背景及技術(shù)簡(jiǎn)介 2 1 多核體系結(jié)構(gòu)和嵌入式系統(tǒng) 2 1 1 多核處理器的發(fā)展?fàn)顩r 按照摩爾定律的表述,集成電路上可容納的晶體管數(shù)目,約每隔1 8 個(gè)月便 會(huì)增加一倍,而價(jià)格下降一半。這個(gè)由英特爾創(chuàng)世人戈登摩爾提出的定律引領(lǐng)半 導(dǎo)體市場(chǎng)4 0 年之久,時(shí)至今日卻面臨著技術(shù)局限的限制。 一直以來(lái),半導(dǎo)體行業(yè),尤其是處理器芯片的設(shè)計(jì)堅(jiān)持不斷小型化的路線來(lái) 提升主頻,在芯片技術(shù)上直達(dá)納米級(jí)的水平。但隨著芯片電路“線寬”的越來(lái)越 小,一個(gè)芯片集成近l o 億個(gè)的晶體管,芯片中的電流也很容易泄露,芯片的功 耗和散熱成了很大的問(wèn)題,阻礙了晶體管密度的進(jìn)一步提升而且,僅僅通過(guò)提 高晶體管數(shù)量,提升處理器頻率的方法,已經(jīng)很難實(shí)現(xiàn)性能的突破性提升體系 結(jié)構(gòu)從單周期,多周期,流水線,到超標(biāo)量,s i m d ,超線程( s m 陌) ,晶體管數(shù) 量越來(lái)越多,實(shí)現(xiàn)技術(shù)越來(lái)越復(fù)雜,但性能的提升卻越來(lái)越困難。s u n 微系統(tǒng)公 司的首席技術(shù)架構(gòu)師m a r e t r e m b l a y 說(shuō),“增加一倍的晶體管數(shù)量,本文所能得到 的性能提升只有原基礎(chǔ)上的百分之二十?!薄? 】 同時(shí),不管是服務(wù)器高吞吐的計(jì)算數(shù)據(jù)還是桌面系統(tǒng)的應(yīng)用多樣化,計(jì)算機(jī) 計(jì)算對(duì)并行化的需求也越來(lái)越高。如s m t ( s i m u l t a n e o u sm u l t i t h r e a d i n g ) 技術(shù), 又稱為超線程技術(shù),在一個(gè)處理器上實(shí)現(xiàn)了硬件并行執(zhí)行的能力,但是不斷增加 的芯片面積提高了生產(chǎn)成本,而且由于技術(shù)上的越來(lái)越復(fù)雜,使得設(shè)計(jì)和驗(yàn)證所 花費(fèi)的時(shí)間也變得更長(zhǎng) 1 3 】【1 4 】此外,通過(guò)在一個(gè)計(jì)算機(jī)上匯集多個(gè)處理器,各 個(gè)處理器之間共享內(nèi)存子系統(tǒng)以及f o 子系統(tǒng)的對(duì)稱多處理器s m p ( s y m m e t r i c a l m u l t i p r o c e s s i n g ) 的體系結(jié)構(gòu)在一定程度上提升的計(jì)算機(jī)系統(tǒng)的并行性及計(jì)算能 力o s 。但是通過(guò)此種方式,把通用處理器其構(gòu)建成集群的技術(shù)難度卻非常大。 而一種稱為c m p ( c h i pm u l t i p r o e e s s o r s ,單芯片多處理器) 【1 6 】技術(shù)似乎為 處理器性能的繼續(xù)提升提供了一個(gè)方式。c m p 是指在一個(gè)芯片上集成多個(gè)處理器 核心的一種實(shí)現(xiàn)方式,c m p 技術(shù)又成為多核技術(shù)( m u l t i c o r e ) ,從實(shí)質(zhì)上講,芯 片上的每一個(gè)微處理器都是一個(gè)相對(duì)簡(jiǎn)單但是功能卻是獨(dú)立的單線程的處理器, 不過(guò)這些微處理器之間聯(lián)系較為緊密,可能共享二級(jí)c a c h e 或者一級(jí)c a c h e ,并且 常常是共享f s b 總線接口。從c m p 的設(shè)計(jì)思路上可以看到,它擁有處理器芯片 5 浙江大學(xué)碩士學(xué)位論文 第2 章相關(guān)背景及技術(shù)簡(jiǎn)介 上的硬件多線程處理能力( s m t ) ,同時(shí)在設(shè)計(jì)上同s m p 有很多的相似之處???以通過(guò)對(duì)硬件多線程處理技術(shù)( s m t ) 以及對(duì)成多處理器系統(tǒng)的對(duì)比來(lái)進(jìn)一步分 析c m p 的優(yōu)勢(shì)所在。 處理器的設(shè)計(jì)通常提高處理器性能的方法都是基于提高處理器指令集并行 ( i l p , i n s t r u c t i o n l e v e l p a r a l l e l i s i n ) 和線程級(jí)并行( t i p , t h r e a d l e v e l p a r a l l e l i s m ) , 一般是把指令的執(zhí)行分成幾步,通過(guò)使用流水線的方式讓多條指令在單個(gè)指令周 期下同時(shí)在處理器上運(yùn)行。按此方法,把流水線細(xì)分為更多的部分,使得這種深 度流水線或稱超級(jí)流水線能在單位時(shí)間內(nèi)執(zhí)行的指令數(shù)得到顯著的增加,從而提 高處理器的整體性能。 多發(fā)射類型的處理器一般包括超標(biāo)量處理器( s u p e rs c a l a r p r o c e s s o r ) 和超長(zhǎng) 指令字( v e r yl o n gi n s t r u c t i o nw o r d ,v l i w ) 處理器,允許在一個(gè)單位時(shí)間周期 內(nèi)發(fā)射多個(gè)操作執(zhí)行以減少處理器的c p i ( c y c l e p e r i n s t r u c t i o n , 平均指令周期) , 從而更好的利用處理器的功能部件資源。超標(biāo)量處理器為了能在單個(gè)時(shí)鐘周期內(nèi) 發(fā)射執(zhí)行多條指令,般擁有多個(gè)功能部件,比如多個(gè)定點(diǎn)運(yùn)算部件、浮點(diǎn)運(yùn)算 部件和l o a d s t o r e 部件等。v l i w 與超標(biāo)量不同,他是通過(guò)編譯器來(lái)尋找指令級(jí) 并行,然后編碼成一條可同時(shí)發(fā)射多條微指令組合而成的超長(zhǎng)指令【l8 】。 當(dāng)處理器速度的不斷增加,使得處理器訪問(wèn)內(nèi)存的時(shí)間延遲相比與處理器的 速度變得越來(lái)越不可忍受,數(shù)據(jù)的存取顯得跟不上處理器的處理速度。通過(guò)設(shè)計(jì) 使用c a c h e 可以很有效的緩解處理器速度和訪問(wèn)內(nèi)存時(shí)間延遲之間矛盾但是一 級(jí)c a c h e 失效( m i s s ) 的時(shí)候還是會(huì)需要處理器等待不少的時(shí)鐘周期從低級(jí)存儲(chǔ) 系統(tǒng)獲得數(shù)據(jù)。處理器設(shè)計(jì)中的亂序執(zhí)行( o u t - o f - o r d e r 0 0 0 ) 技術(shù),或者稱為動(dòng) 態(tài)發(fā)射超標(biāo)量,可以解決這個(gè)問(wèn)題,在c a c h e 失效的時(shí)候,此技術(shù)可以讓c p u 不 按順序執(zhí)行指令,而是執(zhí)行那些不需要訪問(wèn)c a c h e 的指令。此外,這種處理器有 多組運(yùn)算單元來(lái)支持幾組獨(dú)立指令序列的并行運(yùn)行。亂序執(zhí)行技術(shù)的效率在很大 程度取決于運(yùn)行的指令序列的指令級(jí)并行( i l p ) 程度,如果運(yùn)行的指令序列指 令級(jí)并行程度很低,那么這種技術(shù)不會(huì)發(fā)揮很好的效果,而必須像先前一樣等待 c a c h e 失效后的許多個(gè)時(shí)鐘周期。 s m t ( s i m u l t a n e o u sm u l t i t h r e a d i n g ) 技術(shù)是亂序執(zhí)行處理技術(shù)的一種擴(kuò)展技 術(shù)其本質(zhì)目的是增加可供處理器執(zhí)行的指令序列。s m t 處理器可以在同一時(shí)間 從不同的線程選取指令序列來(lái)執(zhí)行。忽略高層的數(shù)據(jù)共享,不同線程的指令序列 在數(shù)據(jù)上沒(méi)有依賴性,這就增加了可供處理器運(yùn)行指令級(jí)并行的獨(dú)立的指令序 列。同時(shí),一個(gè)額外的好處是,由于不同線程指令序列的差異性,使得不同指令 6 浙江大學(xué)碩士學(xué)位論文第2 章相關(guān)背榮殿技術(shù)簡(jiǎn)介 序列可以利用處理器的相應(yīng)不同的資源器件。 傳統(tǒng)的多線程操作系統(tǒng)都支持多個(gè)進(jìn)程或者線稷同時(shí)利用一個(gè)處理器,操作 系統(tǒng)逶遙把鯰壤器熬運(yùn)算霹裁分裁成瓣閹篾努囂繪锫今進(jìn)程或者凌程。s m t 技本 處理器可淤在麓時(shí)閥運(yùn)行多個(gè)線程,在其中一個(gè)線程在等待薨熬資源褥隧塞指 令運(yùn)行的時(shí)候。另外的線程可以欺享利用處理器的資源繼續(xù)運(yùn)行,從而究分利用 處理器的計(jì)算時(shí)間。嚴(yán)格來(lái)說(shuō)一個(gè)線程運(yùn)行在s m r 技術(shù)的處理器比邀行在非 s m t 技術(shù)的c p u 上相對(duì)來(lái)說(shuō)要慢一些,因?yàn)樗推渌€程共享了c p u 的計(jì)算資 源。不過(guò)從宏魏戇氖度來(lái)看,s m t 技寒酶c p u 由于其詩(shī)冀資源豹裹剃鬻攀,它 靜運(yùn)算效搴鑲院菲s m t 技零瓣c p u 要俠綴多【l 翻【1 9 】【2 鐨。 而對(duì)成多處理器( s m p ) 怒通過(guò)把多個(gè)通用的處理器通過(guò)一條高速的板級(jí)總 線連接在一起緊密耦合的一種體系結(jié)構(gòu)1 2 2 。通用的處理器可以是支持s m t 的也 可以是不支持s m t 的。每個(gè)處理器共享同樣的全局內(nèi)存、磁盤和f o 設(shè)備。在體 系結(jié)構(gòu)上比較意觀,從操作系統(tǒng)鶼管理角度,系統(tǒng)將任務(wù)對(duì)了對(duì)稱分配繪多個(gè)處 理器之主,獲薅援大瓣攆裹瓣熬今系統(tǒng)魏鼗據(jù)楚理旋秀。 雖然s m p 能在一定程度上提高硬侔的計(jì)算并行餓,但是由于系統(tǒng)憨線帶寬 限制,多個(gè)處理器之叫協(xié)調(diào)的復(fù)雜性等原因,處理器的數(shù)目很難增加。遮在很大 程度上限制了s m p 性能的提升窳間。 c m p 和s 婀一樣,致力予發(fā)覺(jué)計(jì)算的線程級(jí)并行性,在大規(guī)模集成電路技 零戇發(fā)震,纛芯冀容量跫?jí)蛘杀獞咦滔?,零文可以恕c 氛橙看或是對(duì)稱多處理騫毛 結(jié)構(gòu)或者說(shuō)分布式共享處理梳墩詩(shī)集成在霹一個(gè)芯麓攫瑟,芯片內(nèi)酌備令處理器 并行執(zhí)行不問(wèn)的線程或者進(jìn)程。c m p 又稱為多核( m u l t i - c o r e ) ,和s m t 不同, c m p 上每個(gè)處理核心都是獨(dú)立的,他們各自執(zhí)行自融的指令級(jí)序列 2 1 1 1 2 3 1 。 2 。1 2 多核處理器分類 多孩鯰瑗囂按結(jié)穗熬不囂霹戮分戎弱撬多孩纛努構(gòu)多菝囂秘,箕列凝黲標(biāo)準(zhǔn) 是根據(jù)芯盼上集成的多個(gè)處理器核心是否稆同。弼擒多核大多數(shù)由通用的處理器 組成,多個(gè)處理器核心執(zhí)行相同或者類似的任務(wù)。擇構(gòu)多核除了通用處理器核心 之外,多集成了某些針對(duì)特定的威用進(jìn)行設(shè)計(jì)的處瑕核心,如d s p 、a s i c 、多媒 體處理器、v l i w 處理器,網(wǎng)絡(luò)魏處理器等等。 | 、囂魏多孩處理器 美鶯瓶筑橘大學(xué)在1 9 9 6 殍發(fā)的h y d r a 處理器【2 4 】,集成了四個(gè)耨瓣豹m i p s r 3 0 0 0 處理囂核心。 i b m 稅2 0 0 1 年推出的p o w e r 4 處理器【2 6 】包含兩個(gè)處理器核心,兩個(gè)處理核 , 浙江大學(xué)碩上學(xué)位論文 第2 章相關(guān)背景及技術(shù)簡(jiǎn)介 擁有各自的一級(jí)指令緩存以及數(shù)據(jù)緩存和共享的二級(jí)緩存,同時(shí)p o w e r 4 是第一 款集成了處理器模塊間高速f a b r i c 光纖接口控制器的處理器,處理器模塊之間帶 寬高達(dá)3 5 g b s 接著m m 又推出了包含了4 個(gè)處理器核心的服務(wù)器處理器,每個(gè)處理器核心 又支持s m t 。s u n 公司的n i a g a r a 芯片技術(shù)下推出的u l t r a s p a r ct 1 處理器【2 8 】集 成了8 個(gè)處理器內(nèi)核,利用c o o l t h r e a d s 多線程技術(shù),該多核處理器可以同時(shí)并 行處理3 2 個(gè)線程。n i a g a r ai l 將在2 0 0 7 年誕生,內(nèi)核依然是8 個(gè),不過(guò)可以同時(shí) 支持6 4 個(gè)線程,性能將會(huì)使t 1 芯片的兩到三倍。 在x 8 6 微處理器領(lǐng)域,a m d 在2 0 0 5 年4 月推出雙核處理器o p t e r o n 2 7 ,專 用于服務(wù)器和工作站。o p e r o n 引入h y p e r t r a n s p o r t 超傳輸技術(shù)來(lái)消除傳統(tǒng)的前端 總線瓶頸,降低了內(nèi)存的訪問(wèn)延遲。緊接著a m d 又推出了a t h l o n6 4x 2 雙核系 統(tǒng)產(chǎn)品用于p c 領(lǐng)域。英特爾在a m d 之后也推出了雙核至強(qiáng)( x e o n ) 以及雙核 p e n t i u md 【l 】在2 0 0 6 年5 月,英特爾也發(fā)布了其用于服務(wù)器的雙核處理器 d e m p s e y ,6 月份又推出升級(jí)版的雙核芯片w o o d c r e s t 。i n t e lx e o nc l o v e r t o w n 四 核芯片也已經(jīng)提前上市,隨后的i n t e lx e o nt i g e r t o n 、a m db a r c e l o n a 、h a t e l d u n n i n g t o n 等眾多四核、八核服務(wù)器c p u 也都將在2 0 0 7 年登場(chǎng)亮相【2 5 】。 可以看到,同構(gòu)多核處理器在p c 以及服務(wù)器上的得到了廣泛的應(yīng)用。此外, 異構(gòu)多核處理器也已經(jīng)開始進(jìn)入成熟的應(yīng)用。 2 、異構(gòu)多核處理器 多核處理器設(shè)計(jì)的個(gè)問(wèn)題是處理器芯片中單個(gè)核的尺寸大小問(wèn)題。比如, 服務(wù)器系統(tǒng)在同等芯片面積的情況下追求的是最大化的吞吐量。很明顯,在這種 情況下,處理器設(shè)計(jì)將采用數(shù)量較多而單個(gè)處理核結(jié)構(gòu)簡(jiǎn)單的方案。不過(guò)一些應(yīng) 用情況,如桌面用戶可能更關(guān)系的是單個(gè)程序的運(yùn)行速度,也就是說(shuō)需要有一個(gè) 運(yùn)行能力很強(qiáng)大的處理器核,也就是需要把多核處理器設(shè)計(jì)成數(shù)量相對(duì)較少而每 個(gè)處理核又有相對(duì)較強(qiáng)大的處理能力。 但是現(xiàn)實(shí)情況下,應(yīng)用的需求情況并不可能像上面提到的情況這么簡(jiǎn)單,很 多時(shí)候很多應(yīng)用既希望擁有強(qiáng)大的計(jì)算吞吐能力,又同時(shí)擁有強(qiáng)大的單線程的計(jì) 算處理能力,同時(shí)有更加復(fù)雜的情況可能需要根據(jù)系統(tǒng)實(shí)際運(yùn)行的上下文來(lái)判 斷。所以,如何設(shè)計(jì)處理核的大小就顯得非常的重要一種很好的選擇就是采用 異構(gòu)多核的處理器設(shè)計(jì)方案,把簡(jiǎn)單的,低功耗的處理核同復(fù)雜但高性能的處理 核整合在一起。 相比同構(gòu)多核的設(shè)計(jì)的簡(jiǎn)單,異構(gòu)多核需要在處理器設(shè)計(jì),操作系統(tǒng),編譯 浙江大學(xué)碩士學(xué)位論文 第2 章相關(guān)背景及技術(shù)簡(jiǎn)介 技術(shù)等多個(gè)方面傲特殊的設(shè)計(jì),不過(guò)其巨大的優(yōu)勢(shì)可以為服務(wù)器提高強(qiáng)大的性 能。異構(gòu)多核的芯片以m mc e l l 為典型代表,它由一個(gè)或數(shù)個(gè)通用處理器核和數(shù) 量較多的協(xié)處理器核組成。通用處理器負(fù)責(zé)操作系統(tǒng)的運(yùn)行一些任務(wù)的分配和調(diào) 度,而協(xié)處理器核則是對(duì)高密集的計(jì)算做特殊優(yōu)化的向量處理器核,提供強(qiáng)大的 計(jì)算吞吐能力。如圖2 1 所示,在c e l l 處理器中,包含了一個(gè)p o w e r 結(jié)構(gòu)的處 理器核心( p p e ,p o w e rp r o c e s s o re l e m e n t ) 和8 個(gè)輔助處理核心( s p e ,s y n e r g i i s t i c p r o c 勰s o re l e m e n t ) 【2 9 3 0 3 1 】 圖2 - 1c e l l 微架構(gòu)的罄體框架圖,引用臼【2 9 而在2 0 0 5 年的i d f 技術(shù)峰會(huì)上,i n t e l 對(duì)外公布了m a n yc o r e 超多核發(fā)展藍(lán) j :。m a n yc o r e 采用的就是“主核心+ 協(xié)處理器”的異構(gòu)架構(gòu),其中的某一個(gè)或幾 個(gè)內(nèi)核可以被置換為若干數(shù)量的d s p 邏輯,而保留下來(lái)的x 8 6 核心執(zhí)行所有的 通用任務(wù)以及對(duì)特殊任務(wù)的分派。 2 2 嵌入式多核s o c 2 2 1 系統(tǒng)級(jí)芯片s o c 集成電路設(shè)計(jì)從晶體管的集成發(fā)展到邏輯門的集成,現(xiàn)在又發(fā)展到m 的集 成,即s o c ( s y s t e m - o n - c h i p ) 設(shè)計(jì)技術(shù)。在電子信息產(chǎn)品的開發(fā)過(guò)程中,使用 s o c 技術(shù)可以有效的縮短產(chǎn)品的開發(fā)周期。系統(tǒng)級(jí)芯片s o c 主要是在單個(gè)芯片上 集成一個(gè)完整的系統(tǒng),對(duì)所有或者部分的電子電路進(jìn)行模塊封裝( 口) 【3 7 而 一個(gè)完整的系統(tǒng)通常包含微處理器,存儲(chǔ)器系統(tǒng),以及其他一些外圍的i o 設(shè)備 控制器等 3 3 1 。 9 浙皿人學(xué)碩 學(xué)位論文第2 章相關(guān)背景艇技術(shù)簡(jiǎn)介 更進(jìn)一步的說(shuō),s o c 就怒謹(jǐn)一個(gè)芯片上使用預(yù)定義模塊i p ( i n t e l l e c t u a l p r o p e r t y ) 采定制一個(gè)芯片系統(tǒng)的:過(guò)程。從方法學(xué)的角魔來(lái)看,s o c 是一爨極大規(guī) 模集或毫黲戇愛(ài)津方法學(xué),基旗撐孩可復(fù)靂設(shè)謗,溯試方法及接疆援蕊,系統(tǒng)芯 片總線式集成浚計(jì)方法學(xué)、系筑芯片驗(yàn)證和測(cè)試方法學(xué)。s o c 是一耱浚許理念, 就是將各個(gè)w 以集成在一起的模塊集成到一個(gè)芯片上,他借鑒了軟件的復(fù)用概 念,也有了繼承的概念。也可以說(shuō)是包含了設(shè)計(jì)和測(cè)試等更多技術(shù)的一城新的設(shè) 計(jì)技術(shù)【3 4 】【3 5 】【3 6 】。 2 2 。2f 爭(zhēng)g a 稷s o c a s i c ( a p p l i c a t i o ns p e c i f i ci n t c r g r a t c dc i r c u i t s ) 銻專用集成電路,怒獵應(yīng)特 定用戶要求和特定電子系統(tǒng)的需簧而設(shè)計(jì)、制造的熬成電路a s i c 的特點(diǎn)是面 向特定用戶的需求,品種多、批嫩少,要求設(shè)計(jì)和繳產(chǎn)周期短,它作為集成電路 技術(shù)與特定用戶的整機(jī)或系統(tǒng)技術(shù)緊密結(jié)合的產(chǎn)物,與通用集成電路榴比具有體 積受奎、重爨跫輕、葵耗更低、掰纛 生握毫、性能提湊、徐密鰉增強(qiáng)、成零降低 等霞點(diǎn)。 f p g a ( f i d d p r o g r a m m a b l e g a t e a r r a y ) 即現(xiàn)場(chǎng)w 編程門陣列。它是作為專用 集成電路( a s i c ) 領(lǐng)域中的一種半定制電路而出現(xiàn)的,既解決了定制電路的不足, 又克服了原商可編程器件門電路數(shù)有限的缺點(diǎn)。f p g a 的使用非常靈活,同一片 f p g a 通過(guò)不翮的繚程數(shù)據(jù)可以產(chǎn)生不同豹電路功熊。f p g a 在通信、數(shù)攢處理、 羯終、儀器、王鼗茬潮、軍事辯靛空靛天等眾多鑲域犖孽翻了廣泛痤弱。瓣整功耗 和成本酶避一步降低,f p g a 還將進(jìn)入更多的應(yīng)瘸鎂域。 在過(guò)去的2 0 年里,f p g a 程門數(shù)上已經(jīng)提高了三個(gè)數(shù)量級(jí),利用市場(chǎng)上大量 存在的i p ( 知識(shí)產(chǎn)權(quán)) 形式,基乎f p g a 的s o c 設(shè)計(jì)難在越來(lái)越受到設(shè)計(jì)工程師 的歡迎。f p g a 技術(shù)的發(fā)展為硬件設(shè)計(jì)提供了更為方便豹測(cè)試和驗(yàn)證方式。使用 f p g a 廠褻掇供瓣e d a - i - 其黲夠綴方囊茲進(jìn)行缽系結(jié)構(gòu)援透,重復(fù)使弱璦騫豹硬 件m 菝縭斑? 系統(tǒng)翡開發(fā)周麓,簸鹺透過(guò)e d a 王嶷在f p g a 上透露駿誕實(shí)現(xiàn)。 2 2 3 軟硬件協(xié)同設(shè)計(jì) 嵌入式系統(tǒng)設(shè)計(jì)有兩種方式:一是針對(duì)一個(gè)特恣的硬件進(jìn)行軟件開發(fā);= 是 根據(jù)一個(gè)已有的軟件把它實(shí)現(xiàn)成硬件結(jié)構(gòu)。前者是個(gè)軟件開發(fā)問(wèn)題,簸者是一 個(gè)較籜固化豹閼題。這囂釋設(shè)謗方法幫是稠對(duì)獨(dú)立瓣設(shè)計(jì)方式,硬 爭(zhēng)秘軟饞之鬻 瓣透賽綴容荔產(chǎn)生一些兼容往懿瓣瑟。使用軟硬 串給闋設(shè)計(jì)的方式可戳熊決這個(gè) 問(wèn)題,從系統(tǒng)需求開始,對(duì)于硬件和軟件的功能劃分有一個(gè)明確的設(shè)計(jì),在此設(shè) 計(jì)的基礎(chǔ)上對(duì)蹩個(gè)系統(tǒng)進(jìn)行評(píng)估,從而找到一個(gè)比較理想的系統(tǒng)設(shè)計(jì)方絮。在系 1 0 浙江大學(xué)碩上學(xué)位論文第2 章相關(guān)背景及技術(shù)簡(jiǎn)介 統(tǒng)的實(shí)現(xiàn)過(guò)程中,也始終保持硬件和軟件的同步開發(fā),這樣,在系統(tǒng)實(shí)現(xiàn)過(guò)程能 對(duì)系統(tǒng)進(jìn)行實(shí)時(shí)的測(cè)試,最終實(shí)現(xiàn)滿足設(shè)計(jì)的目標(biāo)系統(tǒng)【3 8 】 2 2 4 芯片內(nèi)高速總線 s o c 的設(shè)計(jì)過(guò)程中,最具特色的是口復(fù)用技術(shù)。即選擇所需功能的m 核, 集成到一個(gè)芯片中用。由于m 核的設(shè)計(jì)千差萬(wàn)別,口核的連接就成為構(gòu)造s o c 的關(guān)鍵,對(duì)芯片內(nèi)通訊的研究是一個(gè)很重要的方向【5 3 】【5 4 】。片上總線( o n - c h i p b u s ,o c b ) 是實(shí)現(xiàn)s o c 中m 核連接最常見(jiàn)的技術(shù)手段,它以總線方式實(shí)現(xiàn)碑 核之f h j 數(shù)據(jù)通信,。與板上總線不同,片上總線不用驅(qū)動(dòng)底板上的信號(hào)和連接器, 使用更簡(jiǎn)單,速度更快一個(gè)片上總線規(guī)范一般需要定義各個(gè)模塊之間初始化、 仲裁、請(qǐng)求傳輸、響應(yīng)、發(fā)送接收等過(guò)程中驅(qū)動(dòng)、時(shí)序、策略等關(guān)系。 目的s o c 上使用較多的三種片上總線標(biāo)準(zhǔn)a r m 的a m b a 、s i l i c o r e 的 w i s h b o n e 和i b m 的c o r e c o n n e c t 3 8 a m b a ( a d v a n c c d m i e r o e o n t r o l l e r b u s a r c h i t e c t u r e ) 總線規(guī)范是a r m 公司設(shè) 計(jì)的一種用于高性能嵌入式系統(tǒng)的總線標(biāo)準(zhǔn)。它獨(dú)立于處理器和制造工藝技術(shù), 增強(qiáng)了各種應(yīng)用中的外設(shè)和系統(tǒng)宏單元的可重用性。a m b a 總線規(guī)范是一個(gè)開放 標(biāo)準(zhǔn),可免費(fèi)從a r m 獲得。 w i s h b o n e 最先是由s i l i c o r c 公司提出的,現(xiàn)在已被移交給o p c n c o r e s 組織維 護(hù)。由于其開放性,現(xiàn)在已有不少的用戶群體,特別是一些免費(fèi)的m 核,大多數(shù) 都采用w i s h b o n e 標(biāo)準(zhǔn)。 c o r o c o n n o e t 是由i b m 開發(fā)的片上總線通信鏈,它使多個(gè)源的芯片核相互連 接成為一個(gè)完整的新芯片成為可能。c o r c c o n n c c t 技術(shù)使整合變得更為容易,而 且在標(biāo)準(zhǔn)產(chǎn)品平臺(tái)設(shè)計(jì)中處理器、系統(tǒng)以及外圍的核可以重復(fù)使用,以達(dá)到更高 的整體系統(tǒng)性能。 2 2 5 嵌入式多核s o c s o c 具有較高的集成度,很適合低功耗的應(yīng)用,不過(guò)很多注重成本的設(shè)計(jì)都 會(huì)在基本的系統(tǒng)上在集成包含更多的功能特性與可編程的元素。這是由于行業(yè)標(biāo) 準(zhǔn)和協(xié)議的不斷改變的事實(shí)密不可分的,可以知道,無(wú)論是g s m 電話、m p 3 、 d i v x m p e g 4 、網(wǎng)絡(luò)通訊或者其他任何產(chǎn)品標(biāo)準(zhǔn),其協(xié)議都以非??斓乃俣茸兓?著,所以從生產(chǎn)的成本( 工具、流水線的建立等) 角度來(lái)考量,對(duì)某一特定的產(chǎn) 品模塊進(jìn)行重復(fù)利用是一項(xiàng)很重要,這意味著系統(tǒng)對(duì)軟件的要求更高了,因此也 需要更多的軟硬件協(xié)作 軟硬件協(xié)同設(shè)計(jì)會(huì)使得系統(tǒng)集成的時(shí)間延長(zhǎng),并產(chǎn)生大量的、只能針對(duì)特定 浙江大學(xué)硬上學(xué)位論文 第2 章相關(guān)背景及技術(shù)簡(jiǎn)介 硬件使用的軟件、因此大量的可編程微處理器被加入到系統(tǒng)中,雖然只要處理器 的速度足夠快,軟硬件交互引起的性能下降問(wèn)題都可以迎刃而解,但是無(wú)論從成 本還是功能來(lái)看,通過(guò)提高處理器的主頻來(lái)提升系統(tǒng)性能都是一種很不經(jīng)濟(jì)的解 決方法 比如在利用

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論