新聞中心

超額利用硬件資源

作者:SachinGupta 時間:2013-07-08 來源:電子產(chǎn)品世界 收藏

  動態(tài)重配置的可行性

本文引用地址:http://m.butianyuan.cn/article/147239.htm

  根據(jù)可編程器件的架構(gòu),動態(tài)重配置可適用于許多應(yīng)用。不過,如果開發(fā)人員要了解每個,并手動設(shè)置的值,那么實現(xiàn)動態(tài)重配置就變得相當(dāng)復(fù)雜,耗時費(fèi)力。為了讓動態(tài)重配置切實可行,開發(fā)工具必須提供有效且最省力的方法來設(shè)置的值,同時還要為運(yùn)行實現(xiàn)方案提供基本的重配置基礎(chǔ)架構(gòu)。以下兩種特性非常重要:

  · 自動生成配置寄存器值
  · 簡化開關(guān)配置

  自動生成配置寄存器值:開發(fā)工具必須提供一種簡單方法來定義和管理多種配置。定義配置是指選擇使用的外設(shè)及其內(nèi)部互連。根據(jù)配置定義,開發(fā)工具必須為配置中使用的每個模塊生成所需的寄存器值。舉例來說,圖4顯示了PSoC Designer IDE(集成開發(fā)環(huán)境)根據(jù)具體配置所用外設(shè)生成的代碼?! ?/p>

 

  從代碼可以看出,當(dāng)開發(fā)工具可以生成所需的寄存器值時,就能將開發(fā)工作從手動生成這些值中解放出來,這也可以讓開發(fā)人員頻繁修改配置也不會有任何問題。

  簡化開關(guān)配置:假設(shè)開發(fā)人員必須管理不同配置之間的切換,那么當(dāng)他們編寫代碼用于從閃存中讀取數(shù)值并將其寫入所需的寄存器,特別是開發(fā)過程中對配置所做的頻繁修改,就會造成巨大的開銷。一個錯誤可能會造成難以檢測和定位的系統(tǒng)故障。因此,開發(fā)工具必須提取出低級寄存器寫入細(xì)節(jié),并提供高級API來完成這項任務(wù)。

  由于加載了先前的配置,寫入值的“卸載”也會進(jìn)一步使切換配置復(fù)雜化。并不是所有的情況都需要卸載,但大多數(shù)情況需要。舉例來說,設(shè)想一個應(yīng)用有一種基礎(chǔ)配置和兩種可加載的配置。基礎(chǔ)配置包含隨時都需要的資源,任何時間點都無需加載和卸載。這種配置在輸入主應(yīng)用代碼之前就加載了。在這個應(yīng)用實例中,基礎(chǔ)配置需要通過UART與主機(jī)CPU通信。在第一個可加載配置中,需要一個ADC。在另一個可加載配置中,需要一個PWM和一個觸摸傳感器。假定UART需要兩個可編程數(shù)字資源,PWM需要一個,同時ADC和觸摸傳感器使用相同數(shù)量的資源,那么不同配置之間的切換如圖5所示。  

 

  因此,開發(fā)工具必須提供輕松加載和卸載配置的方法,且無需了解低級寄存器和配置值在閃存中的儲存位置。

模數(shù)轉(zhuǎn)換器相關(guān)文章:模數(shù)轉(zhuǎn)換器工作原理


塵埃粒子計數(shù)器相關(guān)文章:塵埃粒子計數(shù)器原理
衰減器相關(guān)文章:衰減器原理
熱敏打印機(jī)相關(guān)文章:熱敏打印機(jī)原理


關(guān)鍵詞: 電容器 寄存器

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉