超額利用硬件資源
動(dòng)態(tài)重配置的可行性
本文引用地址:http://dyxdggzs.com/article/147239.htm根據可編程器件的架構,動(dòng)態(tài)重配置可適用于許多應用。不過(guò),如果開(kāi)發(fā)人員要了解每個(gè)寄存器,并手動(dòng)設置寄存器的值,那么實(shí)現動(dòng)態(tài)重配置就變得相當復雜,耗時(shí)費力。為了讓動(dòng)態(tài)重配置切實(shí)可行,開(kāi)發(fā)工具必須提供有效且最省力的方法來(lái)設置寄存器的值,同時(shí)還要為運行實(shí)現方案提供基本的重配置基礎架構。以下兩種特性非常重要:
· 自動(dòng)生成配置寄存器值
· 簡(jiǎn)化開(kāi)關(guān)配置
自動(dòng)生成配置寄存器值:開(kāi)發(fā)工具必須提供一種簡(jiǎn)單方法來(lái)定義和管理多種配置。定義配置是指選擇使用的外設及其內部互連。根據配置定義,開(kāi)發(fā)工具必須為配置中使用的每個(gè)模塊生成所需的寄存器值。舉例來(lái)說(shuō),圖4顯示了PSoC Designer IDE(集成開(kāi)發(fā)環(huán)境)根據具體配置所用外設生成的代碼?! ?/p>

從代碼可以看出,當開(kāi)發(fā)工具可以生成所需的寄存器值時(shí),就能將開(kāi)發(fā)工作從手動(dòng)生成這些值中解放出來(lái),這也可以讓開(kāi)發(fā)人員頻繁修改配置也不會(huì )有任何問(wèn)題。
簡(jiǎn)化開(kāi)關(guān)配置:假設開(kāi)發(fā)人員必須管理不同配置之間的切換,那么當他們編寫(xiě)代碼用于從閃存中讀取數值并將其寫(xiě)入所需的寄存器,特別是開(kāi)發(fā)過(guò)程中對配置所做的頻繁修改,就會(huì )造成巨大的開(kāi)銷(xiāo)。一個(gè)錯誤可能會(huì )造成難以檢測和定位的系統故障。因此,開(kāi)發(fā)工具必須提取出低級寄存器寫(xiě)入細節,并提供高級API來(lái)完成這項任務(wù)。
由于加載了先前的配置,寫(xiě)入值的“卸載”也會(huì )進(jìn)一步使切換配置復雜化。并不是所有的情況都需要卸載,但大多數情況需要。舉例來(lái)說(shuō),設想一個(gè)應用有一種基礎配置和兩種可加載的配置?;A配置包含隨時(shí)都需要的資源,任何時(shí)間點(diǎn)都無(wú)需加載和卸載。這種配置在輸入主應用代碼之前就加載了。在這個(gè)應用實(shí)例中,基礎配置需要通過(guò)UART與主機CPU通信。在第一個(gè)可加載配置中,需要一個(gè)ADC。在另一個(gè)可加載配置中,需要一個(gè)PWM和一個(gè)觸摸傳感器。假定UART需要兩個(gè)可編程數字資源,PWM需要一個(gè),同時(shí)ADC和觸摸傳感器使用相同數量的資源,那么不同配置之間的切換如圖5所示?! ?/p>

因此,開(kāi)發(fā)工具必須提供輕松加載和卸載配置的方法,且無(wú)需了解低級寄存器和配置值在閃存中的儲存位置。
模數轉換器相關(guān)文章:模數轉換器工作原理
塵埃粒子計數器相關(guān)文章:塵埃粒子計數器原理 衰減器相關(guān)文章:衰減器原理 熱敏打印機相關(guān)文章:熱敏打印機原理
評論