欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

硬件虛擬化系統(tǒng)的制作方法

文檔序號(hào):6479979閱讀:104來源:國(guó)知局
專利名稱:硬件虛擬化系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及對(duì)軟件-硬件系統(tǒng)的改進(jìn),例如在電源供應(yīng)單元和控制器或其他嵌入式電子設(shè)備的領(lǐng)域中。
背景技術(shù)
一般情況下,在復(fù)雜的基礎(chǔ)設(shè)施中連接許多設(shè)備是困難而昂貴的任務(wù)。此外,電子設(shè)備的制造商常常更新關(guān)鍵組件,比如微控制器。對(duì)于給定的設(shè)計(jì),每次改變微控制器時(shí), 無論是使用同一制造商或許改變了特點(diǎn)(I/O、外圍設(shè)備、RAM、FLASH等)的產(chǎn)品,或者尤其是使用另一個(gè)制造商并因此具有完全不同規(guī)格的產(chǎn)品,不僅設(shè)備的硬件重新設(shè)計(jì)變得必要,而且也需要稱為移植的軟件重新設(shè)計(jì)過程。移植就是從其他早期軟件開始的寫軟件的過程,使它能夠用在不同的硬件平臺(tái)上,以確保兩臺(tái)顯然不同的設(shè)備(主板、微控制器、布局、組件等)從外部看來它們仿佛相同。這個(gè)復(fù)雜的適應(yīng)過程必須盡可能快地進(jìn)行,因?yàn)橐话闱闆r下它發(fā)生在該設(shè)備處于全能力生產(chǎn)的情形。此外,為了保證即使最瑣碎和重復(fù)的功能起作用還需要新的和完全的測(cè)試序列。這種方式有效地阻礙了兩個(gè)或更多制造公司合作開發(fā)設(shè)計(jì)的若干部件,因?yàn)樗鼈兛赡鼙仨毥粨Q過多數(shù)量的信息和訣竅。除此以外,不同的公司也將不得不在公共部件的檢驗(yàn)過程中結(jié)盟,對(duì)于具有自己嚴(yán)格質(zhì)量過程的公司這有點(diǎn)不可接受。例如,人們能夠假設(shè)兩個(gè)或更多公司為同一應(yīng)用制造不同的硬件。以他們解決此問題的方式,使用不同的觀點(diǎn),甚至完全不同的觀點(diǎn)。例如,參考圖1,假設(shè)根據(jù)超出此處解釋的某種原理必須產(chǎn)生并驅(qū)動(dòng)從O至5伏的模擬信號(hào)作為從傳感器到達(dá)的輸入信號(hào)的功能。可以假設(shè)“A”公司偏愛通過由帶有低通濾波的微控制器產(chǎn)生PWM信號(hào)而產(chǎn)生這個(gè)信號(hào), 而“B”公司偏愛使用額外的串聯(lián)驅(qū)動(dòng)芯片產(chǎn)生同一信號(hào)。然后,或許“C”公司偏愛使用不同的微控制器,它與無須附加支持硬件便能夠產(chǎn)生該信號(hào)的內(nèi)部D/A (數(shù)字-模擬)轉(zhuǎn)換外圍設(shè)備合并。忽略此產(chǎn)生方法,仍然存在著導(dǎo)致與產(chǎn)生信號(hào)方式無關(guān)地選擇具體信號(hào)電平的需要(控制鏈)。此信號(hào)產(chǎn)生方法忽略信號(hào)本身的意義。以經(jīng)典的方式,每家公司都將創(chuàng)建其自己的伴隨的硬件和軟件,緊密地綁定所采用的硬件和微控制器。所創(chuàng)建的軟件將包括傳感器分析、“控制”和0-5V輸出值計(jì)算的部分以及傳動(dòng)機(jī)構(gòu)的軟件部分。如果或者傳感器部件改變了,或者“控制”原理改變了,或者傳動(dòng)機(jī)構(gòu)的硬件部件改變了,全部軟件都必須改寫并再次測(cè)試其全部?jī)?nèi)容。此外,每家公司都必須不可避免地應(yīng)付此設(shè)計(jì)的所有部件,而不能夠(或想要)在需要或客戶請(qǐng)求時(shí)以任何方式合作。

發(fā)明內(nèi)容
根據(jù)一個(gè)方面,本發(fā)明提出了一種系統(tǒng),使上述缺點(diǎn)能夠至少部分地減輕。
從本質(zhì)上說,本發(fā)明所基于的概念是硬件虛擬化,使得所創(chuàng)建的應(yīng)用便不因所述硬件本身的改變而蒙受損害。以這種方式,所述應(yīng)用的創(chuàng)建者便不必多注意在所述硬件上作出的改變(或者根本不必?fù)?dān)心它們)。遵循具有兩種不同觀點(diǎn)的兩種方法可以實(shí)現(xiàn)這種虛擬化,正如下文的解釋。根據(jù)一個(gè)方面,本發(fā)明涉及的電子設(shè)備至少包括帶有數(shù)字控制單元的主板、多個(gè)資源以及含有固件并能夠存儲(chǔ)可執(zhí)行程序的至少一個(gè)存儲(chǔ)器支持。根據(jù)本發(fā)明,所述固件能夠執(zhí)行所述電子設(shè)備資源的虛擬化,向所述資源分配虛擬地址。以這種方式,為所述電子設(shè)備配備的軟件(固件)提供了可執(zhí)行程序,帶有由同一可執(zhí)行程序使用的一系列虛擬地址,不必知道真實(shí)地址以及因而所述設(shè)備硬件的真實(shí)結(jié)構(gòu)。在第一個(gè)實(shí)施例中,對(duì)以電子設(shè)備的微控制器或另一個(gè)數(shù)字控制單元的同一編程語言編寫的源程序進(jìn)行編譯,可以獲得可執(zhí)行程序。所述固件通過簡(jiǎn)單地使所述程序中引用的每個(gè)虛擬地址與所述電子設(shè)備中出現(xiàn)的所述資源的對(duì)應(yīng)真實(shí)地址相關(guān)聯(lián),啟動(dòng)微控制器或數(shù)字控制單元對(duì)所述可執(zhí)行程序的執(zhí)行。以這種配置,當(dāng)所述硬件結(jié)構(gòu)改變時(shí),為了提供與所述實(shí)際硬件結(jié)構(gòu)的真實(shí)地址相關(guān)聯(lián)的虛擬地址,只要更新所述固件就夠了。所述可執(zhí)行應(yīng)用程序可以在新的硬件平臺(tái)上運(yùn)行,只要相對(duì)于為之編寫所述可執(zhí)行程序的硬件平臺(tái)或結(jié)構(gòu),新硬件平臺(tái)包含相同數(shù)目的資源或更大數(shù)目的資源即可。同一源程序以及因此從所述源程序的編譯獲得的同一可執(zhí)行程序能夠運(yùn)行在不同的設(shè)備上,只要它們裝備了相同的微控制器,因?yàn)樗鰬?yīng)用程序是以特定微控制器的編程語言編寫的。然而除了這個(gè)限制,由于虛擬化所述硬件結(jié)構(gòu)的地址的固件,關(guān)于所述應(yīng)用軟件在不同硬件+固件結(jié)構(gòu)上起作用的能力不存在限制。這就允許應(yīng)用軟件的編寫不受所述硬件結(jié)構(gòu)及其固件的設(shè)計(jì)的拘束,解決了上述問題。在第二個(gè)實(shí)施例中,本發(fā)明也允許所述應(yīng)用程序不受數(shù)字控制單元或微控制器的類型的拘束,允許編寫出能夠運(yùn)行在任何硬件+固件設(shè)備或結(jié)構(gòu)上的應(yīng)用程序,只要它裝備了必要的資源。事實(shí)上,根據(jù)這種方式,所述應(yīng)用程序(以其源程序版本)以其自己的語言編寫,與所述微控制器編程語言無關(guān)且不同。所述編程語言包含為這種語言專門創(chuàng)建的若干指令,與所述微控制器所用的指令不同。以這種方式,同一源程序,適當(dāng)?shù)鼐幾g和翻譯為可執(zhí)行程序,即以數(shù)值代碼形式,能夠由不同的微控制器執(zhí)行。利用這種方法,除了正常的功能和硬件虛擬化以外,所述固件也執(zhí)行所述可執(zhí)行代碼的解釋。所以,一方面它產(chǎn)生與所述固件相關(guān)聯(lián)的所述硬件結(jié)構(gòu)上可用資源的真實(shí)地址對(duì)應(yīng)的虛擬地址的列表。另一方面,所述固件包含解釋程序,即把所述可執(zhí)行程序的每個(gè)指令行翻譯為微控制器的編程語言的對(duì)應(yīng)指令行的程序,把可執(zhí)行程序中使用的每個(gè)虛擬地址與所述硬件設(shè)備的對(duì)應(yīng)真實(shí)地址相關(guān)聯(lián)。應(yīng)當(dāng)認(rèn)識(shí)到,利用這種類型的方法,所述源程序和從其編譯獲得的對(duì)應(yīng)可執(zhí)行程序完全與所述應(yīng)用程序代碼(可執(zhí)行程序)必須運(yùn)行其上的設(shè)備的硬件結(jié)構(gòu)無關(guān),也與微控制器的所述類型無關(guān)。如果改變了微控制器,僅僅需要修改固件,所以它裝備的解釋程序能夠把所述可執(zhí)行程序指令翻譯為新微控制器理解的指令。同樣,如果設(shè)備的硬件結(jié)構(gòu)改變了,例如由于增加或更換了一個(gè)或多個(gè)擴(kuò)展板,則固件必須修改以包含新的虛擬地址并且給出硬件設(shè)備的虛擬與真實(shí)地址之間的對(duì)應(yīng)關(guān)系。反之亦然,可執(zhí)行程序由于以下事實(shí)能夠保持不變它是基于其自己的編程語言,所以與微控制器無關(guān),并且基于硬件系統(tǒng)的虛擬地址而不是真實(shí)地址。為了簡(jiǎn)化一旦編譯便能夠在這種類型的硬件+固件平臺(tái)上執(zhí)行的源程序的編寫, 根據(jù)某些實(shí)施例,所述固件能夠提供與所述基礎(chǔ)硬件上可用資源的地址對(duì)應(yīng)的虛擬地址的列表,其中名稱、標(biāo)簽或別名與每個(gè)地址相關(guān)聯(lián),每個(gè)地址向程序員提供該地址所引用的資源性質(zhì)的清楚指示。根據(jù)某些實(shí)施例,為了進(jìn)一步簡(jiǎn)化編程工作,所述應(yīng)用程序軟件的編程語言能夠提供一條或多條指令,向所述固件提供的虛擬地址的每個(gè)名稱、標(biāo)簽或別名分配概念上與所述應(yīng)用程序內(nèi)該具體地址或資源執(zhí)行的所述功能相關(guān)聯(lián)的標(biāo)簽、名稱或別名。后文將參考非限制性應(yīng)用實(shí)例以及在附帶的權(quán)利要求書中介紹本發(fā)明進(jìn)一步的特征和實(shí)施例,它們形成了本說明書的完整部分。


以下說明和附圖顯示了本發(fā)明實(shí)際的、非限制性的實(shí)施例,由它們將更好地理解本發(fā)明。更詳細(xì)地說圖1、2A、2B、3A和顯示了本發(fā)明第一個(gè)實(shí)施例的展示圖;圖4顯示了應(yīng)用本發(fā)明的可能硬件設(shè)備的框圖;圖5顯示了用戶的應(yīng)用程序的運(yùn)行時(shí)編程的圖形界面。
具體實(shí)施例方式根據(jù)第一個(gè)可能的實(shí)施例,本發(fā)明允許電子設(shè)備的硬件設(shè)計(jì)和管理程序(應(yīng)用程序)編寫得到簡(jiǎn)化。通過采用這種方法,有可能編寫出能夠在甚至顯著不同的硬件結(jié)構(gòu)上運(yùn)行的單一應(yīng)用程序。在這個(gè)實(shí)施例中存在的僅有約束是硬件設(shè)備使用相同的微控制器, 因?yàn)閼?yīng)用程序以微控制器自己的編程語言編寫。本質(zhì)上,如圖2的圖表中的定性顯示,創(chuàng)建了軟件層,所以實(shí)際應(yīng)用程序永遠(yuǎn)“看到”相同的基礎(chǔ)硬件。以這種方式,有可能安排同一應(yīng)用程序或者更確切地說同一硬件設(shè)備管理程序運(yùn)行在具有相互不同硬件解決方案的兩個(gè)不同的環(huán)境中,一致之處僅僅在于使用相同的微控制器。兩個(gè)解決方案示意地顯示在圖2(A)和圖2(B)中,它們的不同在于硬件, 因此也在于虛擬化軟件。在兩個(gè)系統(tǒng)中同一應(yīng)用程序都能夠工作。參考一開始陳述的實(shí)例(圖1),虛擬化軟件能夠包括傳感器管理和傳動(dòng)機(jī)構(gòu)軟件。虛擬化軟件使傳感器提供的輸出數(shù)據(jù)或信號(hào)以與所采用的硬件解決方案無關(guān)的格式可用。同樣,基于傳感器通過虛擬化軟件提供的輸入信號(hào),根據(jù)控制自身應(yīng)用的邏輯,虛擬化軟件能夠接收用于驅(qū)動(dòng)傳動(dòng)機(jī)構(gòu)的以及由控制應(yīng)用程序產(chǎn)生的輸入數(shù)據(jù)或信號(hào)。以這種方式,不同的公司能夠共同地創(chuàng)建某設(shè)計(jì)而無需交換所采用的硬件解決方案的有關(guān)信息“A”公司能夠制造硬件和虛擬化軟件#1,“B”公司是硬件和軟件#2,而“C” 公司創(chuàng)建因而能夠不區(qū)別地使用硬件#1或#2的應(yīng)用程序,無需顧慮其差異和特定特征。必須交換的信息只不過是虛擬化軟件與應(yīng)用程序之間接口的有關(guān)規(guī)則和細(xì)節(jié)。顯然,制造硬件的每家公司必須不可避免地也創(chuàng)建其自己的虛擬化軟件,它必須使用相同的規(guī)則。例如,人們可以假設(shè)必須為冷卻風(fēng)扇制造控制器,其中根據(jù)溫度傳感器檢測(cè)的值控制啟動(dòng)、轉(zhuǎn)速和關(guān)閉。關(guān)于組件的選擇和產(chǎn)生模擬風(fēng)扇驅(qū)動(dòng)信號(hào)的方法,制造硬件部分的公司每家都將采用他們認(rèn)為適當(dāng)?shù)慕鉀Q方案。創(chuàng)建應(yīng)用程序的人員編寫的程序?qū)⒔邮兆鳛樗鶛z測(cè)溫度的函數(shù)的輸入數(shù)據(jù),并且提供輸出信號(hào),其中基于該輸出信號(hào)并且以該輸出信號(hào)為函數(shù)將產(chǎn)生風(fēng)扇驅(qū)動(dòng)信號(hào)。無需知道硬件和虛擬化軟件的細(xì)節(jié)便能夠創(chuàng)建這種應(yīng)用程序。編寫應(yīng)用程序的人員僅僅需要知道接口細(xì)節(jié),即他/她必須知道由虛擬化軟件根據(jù)所檢測(cè)的溫度提供輸入數(shù)值以及虛擬化軟件被設(shè)計(jì)為接收應(yīng)用程序產(chǎn)生的信號(hào)。以這種方式,用戶能夠編寫的應(yīng)用程序例如根據(jù)溫度以兩種不同的速度驅(qū)動(dòng)風(fēng)扇,或者僅僅提供啟動(dòng)條件和關(guān)閉條件。作為替代,用戶在編寫應(yīng)用程序時(shí),可以改變啟動(dòng)和關(guān)閉發(fā)生時(shí)溫度閾值,并且可能改變風(fēng)扇的較高轉(zhuǎn)速。理論上,應(yīng)用程序也可以使用將收到的溫度聯(lián)系到風(fēng)扇速度(rpm)的更復(fù)雜公式,所以有多個(gè)速度而不是有限數(shù)目。應(yīng)用程序的任何改寫都不需要虛擬化軟件上的操作,甚至不需要硬件結(jié)構(gòu)上的操作,并且能夠由與制造硬件+軟件虛擬化系統(tǒng)的公司都不同的主體(公司)進(jìn)行。同樣,不同的硬件+軟件虛擬化系統(tǒng)能夠使用相同的應(yīng)用程序,只要與應(yīng)用程序的接口的規(guī)則和細(xì)節(jié)相同即可。本發(fā)明這個(gè)實(shí)施例的另一個(gè)優(yōu)點(diǎn)在于,作出的任何改變都導(dǎo)致測(cè)試階段限于已經(jīng)改變的軟件部分。例如,在改變了控制“原理”的情況下,不再需要徹底測(cè)試管理傳感器的部分,也不需要測(cè)試信號(hào)生成部分,它們位于虛擬化軟件中。此外,移植也便利和加快了,如僅有硬件改變(不是微控制器,它必須保持不變,因?yàn)閼?yīng)用程序以微控制器的編程語言編寫),僅僅修改和測(cè)試虛擬化軟件就夠了。以這種方式,應(yīng)用程序能夠保持不變。在虛擬化軟件中也能夠引入更高級(jí)和更通用的特征,比如引導(dǎo)程序加載器、CRC計(jì)算功能、傳輸和接收例程、中斷虛擬化等等。最后,這種方法也提出了新的開發(fā)模型,它允許開發(fā)應(yīng)用程序時(shí)不訪問實(shí)際硬件以及在沒有真實(shí)應(yīng)用程序可用時(shí)界定新硬件。事實(shí)上,通過在模擬真實(shí)應(yīng)用程序的計(jì)算機(jī)上創(chuàng)建軟件,有可能無需具有真實(shí)應(yīng)用程序甚至在不知道其細(xì)節(jié)時(shí)測(cè)試虛擬化軟件和硬件。不僅如此,通過計(jì)算機(jī)上的模擬硬件并且因此模擬接口規(guī)則的其他軟件,有可能在不具有基礎(chǔ)硬件時(shí)創(chuàng)建和測(cè)試應(yīng)用程序。 在圖3A和圖;3B中分別概略顯示了模擬的這兩種模式。根據(jù)不同實(shí)施例,本發(fā)明允許應(yīng)用程序完全不受硬件的約束,允許創(chuàng)建能夠在使用不同微控制器的系統(tǒng)上運(yùn)行的應(yīng)用控制程序。為此,需要以與所用微控制器無關(guān)的語言, 即以其自己的語言編寫應(yīng)用程序。應(yīng)用程序代碼一旦以虛擬機(jī)器語言編譯后,由虛擬化軟件讀取并被翻譯為所用微控制器能夠執(zhí)行的微指令。應(yīng)用程序無論如何不必知道基礎(chǔ)硬件結(jié)構(gòu)。通過虛擬化軟件,應(yīng)用程序“看到”與采用的實(shí)際硬件和微控制器無關(guān)的相同硬件基礎(chǔ)設(shè)施。事實(shí)上,應(yīng)用程序開發(fā)人員可能完全不知道硬件和所用的微控制器的類型,并且在任何情況下都不必知道硬件結(jié)構(gòu)的任何細(xì)節(jié),甚至所用微控制器的類型。虛擬化軟件(及其引擎“虛擬機(jī)”)能夠被考慮為兩個(gè)子系統(tǒng)的結(jié)合允許微控制器解釋編寫應(yīng)用程序代碼的語言的軟件層和對(duì)解釋程序以及應(yīng)用程序本身可用的一系列功能(合并在框架中)。如果修改硬件甚至徹底地包括微控制器變得必要,僅僅移植并測(cè)試虛擬化軟件就夠了。最后,如果僅僅修改應(yīng)用程序變得必要,將不再有任何理由測(cè)試虛擬化軟件中出現(xiàn)的功能。
“虛擬機(jī)”將其功能作為若干狀態(tài)、讀數(shù)和操作呈現(xiàn)給應(yīng)用程序,但是將不提供硬件的任何痕跡,或者對(duì)它的任何引用。硬件以及由此“虛擬機(jī)”即虛擬化軟件的制造商也必須創(chuàng)建開發(fā)環(huán)境,包括編譯器、匯編程序和連接器,它將新的虛擬語言翻譯為虛擬化軟件能夠正確解釋的二進(jìn)制代碼。 最后,制造商也必須提供編程軟件,它允許通過虛擬化軟件更新微控制器上的新應(yīng)用程序。為了更好地理解本發(fā)明這個(gè)實(shí)施例的基礎(chǔ)準(zhǔn)則,考慮圖1中概略顯示類型的特定簡(jiǎn)單的現(xiàn)實(shí)情形硬件設(shè)備包括溫度傳感器和傳動(dòng)機(jī)構(gòu),用于風(fēng)扇或其他構(gòu)件,其操作必須根據(jù)檢測(cè)到的溫度控制。例如,人們可以安排風(fēng)扇必須根據(jù)溫度是否超過一定的最大值或降低到低于一定的最小值而啟用或禁用。微控制器必須被編程為正確地進(jìn)行這種檢查,接收溫度輸入數(shù)據(jù)和提供驅(qū)動(dòng)傳動(dòng)機(jī)構(gòu)的輸出信號(hào)。應(yīng)用程序編寫者不知道傳感器讀數(shù)如何取得,以及輸出電壓如何施加,但是必須知道并實(shí)施僅僅它們之間的關(guān)系。例如,可以編寫以下類型的純粹指示代碼
input signal Sensor as ThermalSensor output signal OutputVoltage as AnalogVoltageO_5V procedure Main() if (Sensor <-5 DegC)
OutputVoltage = 1.0 Volt elseif (Sensor > 20 DegC)
OutputVoltage = 4.0 Volt
else
OutputVoltage = 2.5 Volt
end if
end procedure應(yīng)用程序應(yīng)用以下邏輯如果傳感器檢測(cè)的溫度低于_5°C,模擬輸出信號(hào)為 1. 0V,如果檢測(cè)的溫度在-5°c與20°C之間,模擬輸出信號(hào)為2. 5V,最后,如果檢測(cè)的溫度高于20°C,模擬輸出信號(hào)為4.0V。虛擬化軟件使溫度讀數(shù)(經(jīng)由“ThermalSensor”變量輸入)和輸出信號(hào)(經(jīng)由“AnalOgVOltage0_5V”變量輸出)可用。運(yùn)行時(shí),虛擬化軟件將連續(xù)處理熱傳感器的讀數(shù)并把讀數(shù)轉(zhuǎn)換為攝氏度。同時(shí),它將執(zhí)行應(yīng)用程序代碼,在將這個(gè)讀數(shù)的值與應(yīng)用程序代碼編寫者選擇的_5°C和20°C溫度閾值對(duì)比之后,將選擇應(yīng)當(dāng)施加到模擬輸出信號(hào)的電壓(1.0、2.5或4.0伏)。最后,同一虛擬化軟件將使用應(yīng)用程序算出的值并因此產(chǎn)生輸出信號(hào),驅(qū)動(dòng)可用的硬件。從以上說明應(yīng)當(dāng)理解,除了以某種方式能夠取得以攝氏度提供的溫度輸入和以某種其他方式能夠產(chǎn)生O與5V之間的模擬電壓的事實(shí)以外,編寫應(yīng)用程序與硬件沒有關(guān)系。在這一點(diǎn)上,改變應(yīng)用程序極為簡(jiǎn)單,并且根本不影響虛擬化軟件。用戶將使用所提供的開發(fā)環(huán)境(或可能帶有文本編輯器)編寫應(yīng)用程序。編譯器/匯編程序?qū)?zhí)行句法和詞法分析,向用戶提供可能錯(cuò)誤的列表,隨后它把代碼翻譯為虛擬化軟件可解釋的機(jī)器語言。最后,連接器將致力于把應(yīng)用程序所需的各種資源 (在本實(shí)例中是“Sensor”和“OutputVoltage”信號(hào))連接到由硬件使之可用的真實(shí)資源(“Thermalknsor”和“AnalogVoltageO_5V”);例如,使虛擬化軟件“理解”,每次請(qǐng)求 “knsor”變量時(shí),都意在它已經(jīng)讀取并轉(zhuǎn)換為攝氏度的具體溫度讀數(shù)的值。然后必須通過程序員以可執(zhí)行代碼提供虛擬化軟件,使之能夠使用。后文將更詳細(xì)地介紹硬件結(jié)構(gòu)虛擬化概念的這第二種方法,同時(shí)關(guān)注可能的編程語言。圖4示意地顯示了硬件系統(tǒng)100,包括帶有微控制器101的主板102,通過總線103 連接到一系列板105-109,它們例如可以是數(shù)字和/或模擬輸入板以及/或者數(shù)字和模擬輸出板,以及一般地任何類型的板。通用配置的實(shí)例顯示在圖4的框圖中,該實(shí)例是關(guān)于理解硬件系統(tǒng)能夠包括不同數(shù)目的板并且也包括其他類型的板。一般來說,每塊板都具有多根針,其中某些由例如圖4的框圖中的105P. . . 109P所示。帶有相關(guān)聯(lián)輸入和輸出針的這些板表示硬件系統(tǒng)100的第一部分資源。微控制器101的主板102具有其他內(nèi)部資源,它們能夠包括輸入或輸出、支持變量、計(jì)時(shí)器等等。本發(fā)明所基于的概念包括硬件系統(tǒng)中所有資源的虛擬化,無論是微控制器的還是系統(tǒng)擴(kuò)展板的。微控制器的永久存儲(chǔ)器104中存儲(chǔ)的固件分析可用的硬件資源并向每個(gè)資源分配虛擬地址。這些虛擬地址將以下面介紹的方式用于應(yīng)用程序編程中。應(yīng)用程序的程序員將不需要知道硬件系統(tǒng)的真實(shí)結(jié)構(gòu),知道什么類型的資源可用以及每個(gè)資源以什么標(biāo)簽或虛擬地址標(biāo)識(shí)就夠了。以這種方式,一旦硬件系統(tǒng)上可用資源的虛擬地址列表已經(jīng)產(chǎn)生并且已經(jīng)為這個(gè)具體系統(tǒng)編寫了應(yīng)用程序,同一應(yīng)用程序便能夠?qū)С龅讲煌挠布到y(tǒng),只要它具有足夠數(shù)目的資源,即相同的硬件資源或更大數(shù)目的資源。通用硬件系統(tǒng)中可用的各種“對(duì)象”或“資源”對(duì)應(yīng)的虛擬地址列表顯示在以下例如列表A中。該列表由與硬件相關(guān)聯(lián)的虛擬化固件產(chǎn)生列表 A
權(quán)利要求
1.一種電子設(shè)備,至少包括帶有數(shù)字控制單元的主板、多個(gè)資源以及含有固件并能夠存儲(chǔ)可執(zhí)行程序的至少一個(gè)存儲(chǔ)器支持,其特征在于,所述固件能夠執(zhí)行所述電子設(shè)備資源的虛擬化,向所述資源分配虛擬地址,所述可執(zhí)行程序通過使用所述虛擬地址與電子設(shè)備交換信息或指令。
2.根據(jù)權(quán)利要求1的設(shè)備,其特征在于,它包括一個(gè)或多個(gè)帶有相應(yīng)硬件資源的附加板,所述固件執(zhí)行所述附加板的硬件資源的虛擬化,向所述資源分配對(duì)應(yīng)的虛擬地址。
3.根據(jù)權(quán)利要求1或2的設(shè)備,其特征在于,所述固件能夠在輸出中提供向所述設(shè)備的資源分配的虛擬地址的列表。
4.根據(jù)權(quán)利要求1、2或3的設(shè)備,其特征在于,所述可執(zhí)行程序以與所述設(shè)備的數(shù)字控制單元相同的編程語言編寫。
5.根據(jù)權(quán)利要求1、2或3的設(shè)備,其特征在于,所述可執(zhí)行程序以與所述設(shè)備的數(shù)字控制單元的編程語言不同的語言編寫,以及所述固件包含解釋程序,解釋所述可執(zhí)行程序的語言并允許其由所述數(shù)字控制單元執(zhí)行。
6.根據(jù)權(quán)利要求5的設(shè)備,其特征在于,所述固件提供包含虛擬地址列表的文件,每個(gè)虛擬地址都對(duì)應(yīng)于所述設(shè)備的真實(shí)資源,所述文件構(gòu)成了所述電子設(shè)備的虛擬表達(dá)。
7.根據(jù)權(quán)利要求6的設(shè)備,其特征在于,所述可執(zhí)行程序包含使用與所述數(shù)字控制單元的編程語言不同語言的命令和所述固件提供的虛擬地址的指令,以及所述固件解釋程序把所述可執(zhí)行程序的每條指令翻譯為所述數(shù)字控制單元的編程語言中對(duì)應(yīng)的指令并且把所述設(shè)備的對(duì)應(yīng)真實(shí)地址與每個(gè)虛擬地址相關(guān)聯(lián)。
8.根據(jù)權(quán)利要求3或6的設(shè)備,其特征在于,向所述虛擬地址分配名稱或別名以提供向其分配所述虛擬地址的資源的性質(zhì)的清楚指示。
9.根據(jù)權(quán)利要求8的設(shè)備,其特征在于,向所述虛擬地址分配關(guān)于相應(yīng)虛擬地址引用的資源的說明。
10.根據(jù)權(quán)利要求9的設(shè)備,其特征在于,所述說明包括擁有向其分配相應(yīng)虛擬地址的資源的板的序列ID號(hào)。
11.一種利用可執(zhí)行程序的電子設(shè)備的管理方法,該電子設(shè)備包括至少一個(gè)帶有數(shù)字控制單元的主板,其特征在于通過向所述電子設(shè)備的資源分配相應(yīng)的虛擬地址而虛擬化所述資源;所述可執(zhí)行程序使用所述虛擬地址;以及固件允許獲得所述虛擬地址與所述電子設(shè)備的資源的真實(shí)地址之間的對(duì)應(yīng)關(guān)系。
12.根據(jù)權(quán)利要求11的方法,其特征在于,所述方法為所述電子設(shè)備產(chǎn)生包含向所述設(shè)備的資源分配的虛擬地址的文件,所述文件構(gòu)成了所述電子設(shè)備的虛擬表達(dá)。
13.根據(jù)權(quán)利要求12的方法,其特征在于,所述方法把向其分配每個(gè)虛擬地址的資源的性質(zhì)相關(guān)的標(biāo)簽或別名與所述虛擬地址相關(guān)聯(lián)。
14.根據(jù)權(quán)利要求11或12或13的方法,其特征在于,所述可執(zhí)行程序以與所述數(shù)字控制單元的編程語言相同的語言編寫,以及經(jīng)由所述電子設(shè)備的固件,把所述電子設(shè)備的真實(shí)地址與所述可執(zhí)行程序所用的每個(gè)虛擬地址相關(guān)聯(lián)。
15.根據(jù)權(quán)利要求11或12或13的方法,其特征在于,所述可執(zhí)行程序以與所述數(shù)字控制單元的編程語言不同的語言編寫,以及所述可執(zhí)行程序的指令被所述固件解釋為所述可編程單元的語言。
16.根據(jù)權(quán)利要求15的方法,其特征在于,所述可執(zhí)行程序從與所述電子設(shè)備的所述可編程數(shù)字單元的編程語言不同的編程語言編寫的源程序的編譯獲得,以及所述源程序包括聲明部分,其中將別名與所述源程序中所用的每個(gè)虛擬地址相關(guān)聯(lián),標(biāo)識(shí)所述源程序內(nèi)所述虛擬地址對(duì)應(yīng)的資源的功能。
17.根據(jù)權(quán)利要求15或16的方法,其特征在于,所述可執(zhí)行程序的語言包括把被適應(yīng)的對(duì)象與虛擬化的資源相關(guān)聯(lián)的指令,有可能經(jīng)由用戶界面啟用或不啟用所述被適應(yīng)的對(duì)象,允許在執(zhí)行時(shí)(運(yùn)行時(shí))定制所述可執(zhí)行程序。
18.根據(jù)權(quán)利要求17的方法,其特征在于,所述被適應(yīng)的對(duì)象與用戶能夠設(shè)置的一串標(biāo)記相關(guān)聯(lián),所述標(biāo)記與多個(gè)被適應(yīng)的輸出的相應(yīng)虛擬地址相關(guān)聯(lián),可與所述被適應(yīng)的對(duì)象相關(guān)聯(lián),在執(zhí)行時(shí)(運(yùn)行時(shí))所述標(biāo)記也可設(shè)置和修改。
19.一種在電子設(shè)備的存儲(chǔ)器支持中的可存儲(chǔ)的、用于所述電子設(shè)備管理的固件,所述電子設(shè)備至少包括主板和數(shù)字控制單元,所述固件把向所述電子設(shè)備的對(duì)應(yīng)硬件資源分配的對(duì)應(yīng)虛擬地址與所述電子設(shè)備的資源的真實(shí)地址相關(guān)聯(lián)。
20.根據(jù)權(quán)利要求19的固件,其特征在于,它提供與所述電子設(shè)備的所述資源相關(guān)聯(lián)的虛擬地址的列表。
21.根據(jù)權(quán)利要求20的固件,其特征在于,所述虛擬地址的列表對(duì)于每個(gè)虛擬地址都包括向其分配所述虛擬地址的真實(shí)資源的性質(zhì)相關(guān)的標(biāo)簽或別名。
22.根據(jù)權(quán)利要求19、20或21的固件,其特征在于,它包括解釋程序,以解釋以與所述數(shù)字控制單元的編程語言不同的語言編寫的可執(zhí)行程序。
23.一種存儲(chǔ)器支持,包括根據(jù)權(quán)利要求19至22中的一項(xiàng)或多項(xiàng)所述的固件。
全文摘要
一種電子設(shè)備至少包括一塊帶有數(shù)字控制單元(101)的主板(102)、多個(gè)資源(105、106、107、108、109)以及含有固件并能夠保持可執(zhí)行程序的至少一個(gè)存儲(chǔ)器支持(104)。所述固件能夠執(zhí)行所述電子設(shè)備資源的虛擬化,向這些資源分配虛擬地址。所述可執(zhí)行程序通過使用這些虛擬地址與所述電子設(shè)備交換信息或指令。
文檔編號(hào)G06F9/445GK102177501SQ200880131481
公開日2011年9月7日 申請(qǐng)日期2008年8月25日 優(yōu)先權(quán)日2008年8月25日
發(fā)明者D·塔扎里, F·韋爾尼阿 申請(qǐng)人:寶威電源意大利股份公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
剑阁县| 梧州市| 监利县| 郑州市| 都江堰市| 英山县| 扎囊县| 永丰县| 鲁甸县| 荔浦县| 商都县| 西乌珠穆沁旗| 黑龙江省| 莎车县| 梅河口市| 祁东县| 高州市| 红原县| 太保市| 大城县| 华坪县| 岐山县| 霍州市| 禄劝| 蓬安县| 正阳县| 文化| 永仁县| 宝鸡市| 德昌县| 璧山县| 合川市| 马边| 沽源县| 溧水县| 莱西市| 正定县| 双鸭山市| 合水县| 南乐县| 富阳市|