999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于硬件透明編程可重構(gòu)操作系統(tǒng)的研究

2009-04-29 00:00:00
電腦知識(shí)與技術(shù) 2009年33期

摘要:針對(duì)所采用的微處理器核和現(xiàn)場(chǎng)可編程門陣列混合可重構(gòu)計(jì)算平臺(tái),實(shí)現(xiàn)了一個(gè)硬件透明的編程模型。該模型能夠提供一個(gè)類似軟件函數(shù)的硬件函數(shù)給設(shè)計(jì)人員,它可以屏蔽底層硬件實(shí)現(xiàn)的物理細(xì)節(jié),使設(shè)計(jì)人員能簡(jiǎn)單方便地使用硬件加速器。

關(guān)鍵詞:可重構(gòu);透明編程;操作系統(tǒng)

中圖分類號(hào):TP316文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1009-3044(2009)33-9581-02

Researching on hard-soft Partition of Reconfigurable Computing Operating System

ZOU Yi

(Hengyang Normal University, Hengyang 421008, China)

Abstract: To address the platform of heterogeneous multi-core reconfigurable computing architecture, it implements a hardware transparent programming model for reconfigurable system development, which provides hardware functions similar to software functions for designers to use the hardware accelerators , it hides the details of underlying hardware accelerators and makes easy for designer to use.

Key words: reconfiguration; hardware transparent programming; operating system

FPGA出現(xiàn)以后,由于既具有專用集成電路的高性能,又具有通用處理器的靈活性,在嵌入式系統(tǒng)中得到越來越廣泛的應(yīng)用。但是在傳統(tǒng)的設(shè)計(jì)中,F(xiàn)PGA類似于專用集成電路,一般都是作為硬件加速器由用戶直接管理使用,操作系統(tǒng)作為資源管理者和人機(jī)交互的接口并沒有參與管理以提供給用戶一個(gè)友好的界面,最多是提供一些驅(qū)動(dòng)作為支持。隨著可重構(gòu)計(jì)算研究的深入,人們發(fā)現(xiàn)這種方式忽略了FPGA內(nèi)在的可重構(gòu)特性以及任務(wù)潛在的并行性,增大了系統(tǒng)設(shè)計(jì)難度,也降低了FPGA的性能。最近幾年,面向可重構(gòu)計(jì)算的操作系統(tǒng),即可重構(gòu)硬件操作系統(tǒng)技術(shù)成為一個(gè)新的研究熱點(diǎn)。研究者們發(fā)現(xiàn)操作系統(tǒng)不僅能夠給應(yīng)用開發(fā)者提供便利,而且可以為應(yīng)用程序提供運(yùn)行時(shí)的支持。因此,在近年來國(guó)內(nèi)外的文獻(xiàn)中,對(duì)可重構(gòu)操作系統(tǒng)方面展開了許多研究。

Miljan Vuleti′c提出了一個(gè)軟硬件無縫集成的模型,通過把硬件相關(guān)的一些操作委托給操作系統(tǒng)完成,實(shí)現(xiàn)硬件對(duì)高層程序員的透明,同時(shí)在加速器內(nèi)部增加了一個(gè)類MMU的組件WMU和加速器內(nèi)部緩存來實(shí)現(xiàn)硬件的可移植性[1-3]。但是在大規(guī)模的應(yīng)用系統(tǒng)中,可能存在若干個(gè)高密度計(jì)算的代碼段,需要若干個(gè)不同的硬件加速器來分別實(shí)現(xiàn)這些代碼段,如果同時(shí)實(shí)現(xiàn)這些帶有自己的WMU和內(nèi)部緩存的硬件加速器就需要大量的硬件資源,不僅增加了系統(tǒng)的成本,同時(shí)因?yàn)閱纹腇PGA很難滿足系統(tǒng)要求,需要多個(gè)FPGA同時(shí)工作,系統(tǒng)設(shè)計(jì)者又不得不考慮多個(gè)FPGA之間的通信問題,同時(shí)單片F(xiàn)PGA的利用率反而會(huì)下降[4]。在可重構(gòu)硬件FPGA不斷向廣度和深度發(fā)展的同時(shí),很多研究人員也在不斷的改進(jìn)操作系統(tǒng)對(duì)可重構(gòu)器件的支持,使得操作系統(tǒng)逐步開始參與硬件資源的管理。在文獻(xiàn)[5]中David Andrews等研究人員定義了支持可重構(gòu)硬件管理的操作系統(tǒng),把硬件功能模塊作為任務(wù)進(jìn)行管理,提出了統(tǒng)一多線程的模型。他們的方法比較通用,還有其它一些研究小組也采用了類似的思路[6-7]。

本文提出一個(gè)基于自重構(gòu)系統(tǒng)的硬件透明的編程模型[8]。該模型在操作系統(tǒng)和輔助硬件的支持下,對(duì)用戶屏蔽了硬件的實(shí)現(xiàn)細(xì)節(jié),使得用戶只需按照一定格式提供需要進(jìn)行計(jì)算的數(shù)據(jù)以及相關(guān)的一些控制參數(shù)就可以像訪問一個(gè)軟件函數(shù)一樣去調(diào)用一個(gè)硬件加速器來實(shí)現(xiàn)所要求的功能,而不再需要了解硬件具體的實(shí)現(xiàn)細(xì)節(jié)。

1 硬件透明編程模型

1.1 透明編程模型操作系統(tǒng)的框架

可重構(gòu)計(jì)算提供了微處理器和ASIC(專用集成電路)之外的第三種解決方案,它整合了硬件電路的高性能和高可靠性以及微處理器的可編程功能,它能充分利用單片F(xiàn)PGA可重構(gòu)硬件支持動(dòng)態(tài)重構(gòu)的優(yōu)點(diǎn),一方面對(duì)底層可重構(gòu)資源充分利用,另一方面對(duì)應(yīng)用程序開發(fā)人員實(shí)現(xiàn)硬件透明編程。在操作系統(tǒng)的支持下,編譯和綜合工具會(huì)根據(jù)特定的函數(shù)名稱來識(shí)別硬件函數(shù),并把硬件函數(shù)和輸入?yún)?shù)等映射到可重構(gòu)硬件上執(zhí)行。

本文在以u(píng)C/OS-II嵌入式實(shí)時(shí)操作系統(tǒng)為基礎(chǔ)的硬件透明編程操作系統(tǒng)平臺(tái)上,實(shí)現(xiàn)動(dòng)態(tài)可重構(gòu),并對(duì)硬件函數(shù)進(jìn)行預(yù)配置,獲得硬件運(yùn)算加速,以降低重構(gòu)開銷,從而提高系統(tǒng)的性能。使用的實(shí)驗(yàn)平臺(tái)是Xilinx公司的Virtex-II系列的產(chǎn)品,可重構(gòu)資源管理使用的是一維模型,畢竟二維模型還不成熟,對(duì)系統(tǒng)性能的提升難度較大。

硬件透明編程操作系統(tǒng)的體系結(jié)構(gòu)把動(dòng)態(tài)可重構(gòu)計(jì)算系統(tǒng)作為一組由微處理器和硬件加速器組成的共享內(nèi)存的混合處理單元,其編程模型為程序員提供一個(gè)類似于常規(guī)軟件開發(fā)環(huán)境的接口。將系統(tǒng)框架分為五層(如圖1所示),具體分層如下:

應(yīng)用層:為設(shè)計(jì)者提供包含軟件函數(shù)和硬件函數(shù)的抽象函數(shù)庫(kù),用于描述應(yīng)用程序。這個(gè)硬件函數(shù)庫(kù)包含了需要利用硬件加速器實(shí)現(xiàn)的各種功能。在這里軟件和硬件對(duì)用戶來說都是一組接口,用戶在使用時(shí)不需要關(guān)注實(shí)現(xiàn)的細(xì)節(jié)。

操作系統(tǒng)層:為進(jìn)程通信、同步和硬件函數(shù)調(diào)用提供機(jī)制和支持,并跟蹤和管理可重配置資源,如調(diào)度軟件任務(wù)或配置硬件任務(wù)等。由于硬件任務(wù)的動(dòng)態(tài)創(chuàng)建和釋放,可重配置資源的使用情況也在不斷變化的。資源管理器會(huì)跟蹤這些變化,并且能夠及時(shí)反饋給操作系統(tǒng)。在需要對(duì)可重構(gòu)資源進(jìn)行操作時(shí),操作系統(tǒng)能根據(jù)資源管理單元的情況來命令配置控制器對(duì)可重構(gòu)資源進(jìn)行相應(yīng)的操作。

軟硬件結(jié)合層:配置控制器從配置文件數(shù)據(jù)庫(kù)中讀取出對(duì)應(yīng)硬件加速模塊的配置文件,并配置到可重構(gòu)資源管理單元指定的位置。提供控制和存取可重構(gòu)資源管理單元等的基本接口。

體系結(jié)構(gòu)層:是以一個(gè)或者多個(gè)微處理器和可重構(gòu)器件作為處理單元,以可重構(gòu)資源控制管理器和綜合、配置單元作為支持單元的體系結(jié)構(gòu)。后文將對(duì)系統(tǒng)的體系結(jié)構(gòu)進(jìn)行詳細(xì)分析。

硬件層:指系統(tǒng)里面真正的物理組件,比如微處理器實(shí)體、可編程器件、內(nèi)存模塊、內(nèi)部連接網(wǎng)絡(luò)等底層物理器件。

1.2 透明編程模型操作系統(tǒng)的體系結(jié)構(gòu)

動(dòng)態(tài)可重構(gòu)計(jì)算系統(tǒng)的一個(gè)重要組成部分是體系結(jié)構(gòu),其結(jié)構(gòu)圖如圖2所示,下面著重介紹系統(tǒng)的體系結(jié)構(gòu)模型中的關(guān)鍵組件:

微處理單元:包括微處理器和硬件加速器。在圖2中表示為微處理器和FPGA上可重構(gòu)區(qū)域的專用處理模塊。其中專用硬件處理模塊可以是IP核,也可以是自行設(shè)計(jì)的硬件模塊,用虛線框表示說明專用處理模塊可動(dòng)態(tài)改變。

存儲(chǔ)系統(tǒng):微處理器和硬件加速器可能有片上內(nèi)存資源作為局部高速緩存。他們也能通過存儲(chǔ)器接口單元存取片外的內(nèi)存。片外和片內(nèi)的存儲(chǔ)設(shè)備共享統(tǒng)一的線性地址內(nèi)存空間。內(nèi)存接口單元有專門管理片內(nèi)和片外存儲(chǔ)設(shè)備存取的電路。

互連總線:處理單元采用共享內(nèi)存的方式通信。連接到總線的每個(gè)單元都有唯一的地址來標(biāo)識(shí)自己,總線控制器管理總線上的數(shù)據(jù)流通。

可重構(gòu)資源管理模塊:負(fù)責(zé)維護(hù)動(dòng)態(tài)可重構(gòu)資源狀態(tài)信息、從硬件函數(shù)庫(kù)中讀配置字節(jié)流文件、執(zhí)行綜合和配置命令。

標(biāo)準(zhǔn)化接口:硬件加速模塊能接收的數(shù)據(jù)模式是固定的,為了實(shí)現(xiàn)硬件函數(shù)對(duì)不同數(shù)據(jù)類型的支持,就需要標(biāo)準(zhǔn)化輸入?yún)?shù)。比如當(dāng)函數(shù)的輸入?yún)?shù)中有向量(如數(shù)組)時(shí),通常參數(shù)給出的是向量的起始地址,在這樣的情況下,如果硬件加速器有足夠的緩存那么就可以把向量全部讀取過來放在緩存中,然后分別處理;也可以讓硬件加速器自己訪問內(nèi)存來讀取數(shù)據(jù)。

2 總結(jié)

在傳統(tǒng)的編程模型中,設(shè)計(jì)人員需要理解體系結(jié)構(gòu)和可重構(gòu)器件實(shí)現(xiàn)的物理細(xì)節(jié),這樣增大了開發(fā)負(fù)擔(dān),降低了開發(fā)效率。本文實(shí)現(xiàn)了一個(gè)硬件透明的編程模型。該模型能夠提供一個(gè)類似軟件函數(shù)的硬件函數(shù)給設(shè)計(jì)人員,它屏蔽了底層硬件實(shí)現(xiàn)的物理細(xì)節(jié),使設(shè)計(jì)人員能簡(jiǎn)單方便地使用硬件加速器。下一步的工作包括豐富和完善包含軟硬件函數(shù)的抽象函數(shù)庫(kù),動(dòng)態(tài)可重構(gòu)計(jì)算系統(tǒng)的動(dòng)態(tài)軟硬件劃分也是今后的研究中需要考慮的方面。

參考文獻(xiàn):

[1] Vuletid M, Pozzi L, Ienne P. Seamless hardware-software integration in reconfigurable computing systems[J].Design Test of Computers,2005, 22(2):102-113.

[2] Vuletid M, Pozzi L, Ienne P. Programming Transparency and Portable Hardware Interfacing towards General-Purpose Reconfigurable Computing。In: Proceedings of the 15th IEEE International Conference on Application-Specific Systems, Architectures and Processors (ASAP'04): 339-351.

[3] Vuletid M, Pozzi L, Ienne P. Virtual Memory Window for Application-Specific Reconfigurable Coprocessors, DAC 2004, June 7–11, 2004, San Diego, California, USA. 948~953

[4] 覃祥菊,朱明程.FPGA動(dòng)態(tài)可重構(gòu)技術(shù)原理及實(shí)現(xiàn)方法分析[J].電子器件,2004,27(2):64-69.

[5] Andrews D., Niehaus D.Programming models for hybrid FPGA-CPU computational components: A missing link. IEEE Transactions on Micro, 2004, 24(4):42-53.

[6] 周博,王石記,邱衛(wèi)東,彭澄廉.SHUM-UCOS:基于統(tǒng)一多任務(wù)模型可重構(gòu)系統(tǒng)的實(shí)時(shí)操作系統(tǒng)[J].計(jì)算機(jī)學(xué)報(bào),2006,29(2):208-218.

[7] Walder H., Platzner M. Reconfigurable hardware operating systems: From design concepts to realizations. In: Proceedings of the 3rd International Conference on Engineering of Reconfigurable Systems and Architectures (ERSA'03), Las Vegas (NV), USA, 2003: 284-287.

[8] 謝巍.支持可重構(gòu)硬件透明編程的操作系統(tǒng)研究:[湖南大學(xué)碩士論文].長(zhǎng)沙:湖南大學(xué),2007,18-24.

主站蜘蛛池模板: 日本不卡视频在线| 99在线视频免费观看| 亚洲综合激情另类专区| 强奷白丝美女在线观看| 日本一区二区三区精品国产| 国产一在线| 六月婷婷激情综合| 欧美日韩国产成人在线观看| 亚洲品质国产精品无码| 91在线国内在线播放老师| 免费人成在线观看视频色| 亚洲无码视频一区二区三区| 国产91导航| 色老头综合网| 国产一级无码不卡视频| 午夜视频日本| 国产精品无码AV中文| 99久视频| 欧美天堂久久| 99久久精品无码专区免费| 九九视频免费看| 亚欧成人无码AV在线播放| 2021国产乱人伦在线播放| 亚洲第一成网站| 国产精品尤物在线| 男女精品视频| 免费高清毛片| 高潮毛片免费观看| 国产精品综合久久久| 色欲色欲久久综合网| 亚洲精品动漫在线观看| 国产真实自在自线免费精品| 国产精品免费久久久久影院无码| 精品国产亚洲人成在线| 日日拍夜夜操| 国产aⅴ无码专区亚洲av综合网| 99热这里只有精品国产99| 国产特一级毛片| 亚洲国产中文精品va在线播放| 国内精自线i品一区202| 97超级碰碰碰碰精品| 小13箩利洗澡无码视频免费网站| 国产成人久久综合一区| 国产欧美一区二区三区视频在线观看| 国产精品无码AⅤ在线观看播放| 亚洲va视频| 国产欧美视频综合二区| 婷婷亚洲最大| 色婷婷视频在线| 婷婷六月激情综合一区| 国产情精品嫩草影院88av| 日本午夜视频在线观看| 成人av专区精品无码国产| 国产成人亚洲日韩欧美电影| 国产亚洲欧美日韩在线一区二区三区 | 精品夜恋影院亚洲欧洲| 欧美精品H在线播放| 欧美无遮挡国产欧美另类| 91丨九色丨首页在线播放| 久久成人18免费| 精品视频在线一区| 成人免费网站久久久| 精品国产成人高清在线| 亚洲 欧美 中文 AⅤ在线视频| 国产一级二级三级毛片| AV不卡在线永久免费观看| 囯产av无码片毛片一级| 色综合久久久久8天国| 热99re99首页精品亚洲五月天| 福利国产微拍广场一区视频在线 | 内射人妻无码色AV天堂| 日本不卡在线视频| 毛片网站免费在线观看| 99热在线只有精品| 91精品国产丝袜| 少妇露出福利视频| 国产精品自拍合集| 国产欧美自拍视频| 一本大道视频精品人妻| 少妇被粗大的猛烈进出免费视频| 亚洲va精品中文字幕| 亚洲va在线∨a天堂va欧美va|