超額利用硬件資源
動(dòng)態(tài)重配置的實(shí)現(xiàn)
本文引用地址:http://m.butianyuan.cn/article/147239.htm為了在應(yīng)用中實(shí)現(xiàn)動(dòng)態(tài)重配置,需要定義用于分配數(shù)字模塊和模擬模塊的多種不同硬件配置。我們可用直觀的圖形用戶界面(GUI)來(lái)簡(jiǎn)化完成這項(xiàng)工作。開(kāi)發(fā)人員可在應(yīng)用中通過(guò)調(diào)用應(yīng)用編程接口(API)動(dòng)態(tài)切換配置。API調(diào)用的代碼隨后可用于根據(jù)外設(shè)以及為特定配置選定的設(shè)置來(lái)設(shè)置所需的寄存器值?! ?/p>
為了展示動(dòng)態(tài)重配置在應(yīng)用中如何實(shí)現(xiàn),我們不妨來(lái)看一個(gè)真實(shí)的系統(tǒng)。圖6顯示了賽普拉斯推出的PSoC 1器件。該器件包括多種不同系統(tǒng)資源:CPU內(nèi)核、數(shù)字子系統(tǒng)、模擬子系統(tǒng)和可編程互聯(lián)等。數(shù)字子系統(tǒng)包含各種不同的可編程數(shù)字模塊,每個(gè)模塊都能獨(dú)立配置用于不同功能。同樣,模擬子系也同包含多種不同可編程模塊,也能進(jìn)行類(lèi)似的配置。這些子系統(tǒng)在圖中顯示為開(kāi)發(fā)工具中的獨(dú)立模塊(圖7)。
要配置可編程硬件模塊,開(kāi)發(fā)人員可拖動(dòng)外設(shè),將其放到空白區(qū),這樣該外設(shè)就連接到其他外設(shè)或引腳。開(kāi)發(fā)工具可生成所需的寄存器值,這些值在編程時(shí)間內(nèi)將存儲(chǔ)到閃存中。加電或復(fù)位時(shí),器件在開(kāi)始執(zhí)行主應(yīng)用代碼前,會(huì)從閃存加載初始配置到寄存器。
開(kāi)發(fā)人員點(diǎn)擊右鍵并從工作區(qū)選擇新的可加載配置,則可定義新的配置。對(duì)每種配置來(lái)說(shuō),開(kāi)發(fā)人員都能選擇不同的外設(shè),并根據(jù)需要加以連接。一旦所有配置都定義完畢,開(kāi)發(fā)工具會(huì)生成所需的寄存器值和匯編碼,并將這些值存儲(chǔ)到他們各自的寄存器,如圖4所示。開(kāi)發(fā)人員也可從主應(yīng)用中用單行代碼“LoadConfig_[config_name]”動(dòng)態(tài)地加載配置。
開(kāi)發(fā)人員需要注意的一個(gè)問(wèn)題是配置之間的切換時(shí)間。雖然卸載和加載配置主要是寄存器寫(xiě)入工作,但這個(gè)過(guò)程所需的時(shí)間與特定配置需寫(xiě)入寄存器的數(shù)量成正比。因此可根據(jù)所用資源算出近似切換時(shí)間,且應(yīng)用也可根據(jù)時(shí)延進(jìn)行調(diào)整。
動(dòng)態(tài)重配置功能強(qiáng)大,幾乎可用于所有不同外設(shè)通過(guò)時(shí)分復(fù)用來(lái)降低系統(tǒng)成本和尺寸的應(yīng)用之中。通過(guò)在運(yùn)行時(shí)修改可編程硬件資源的功能來(lái)執(zhí)行不同任務(wù),系統(tǒng)設(shè)計(jì)人員可以實(shí)現(xiàn)可用硬件資源的超額利用。
模數(shù)轉(zhuǎn)換器相關(guān)文章:模數(shù)轉(zhuǎn)換器工作原理
塵埃粒子計(jì)數(shù)器相關(guān)文章:塵埃粒子計(jì)數(shù)器原理 衰減器相關(guān)文章:衰減器原理 熱敏打印機(jī)相關(guān)文章:熱敏打印機(jī)原理
評(píng)論