新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 使用Smart I/O模塊實現(xiàn)管腳電平數(shù)字邏輯功能和降低CPU負載

使用Smart I/O模塊實現(xiàn)管腳電平數(shù)字邏輯功能和降低CPU負載

作者: 時間:2016-08-09 來源:Tammoy Sen,Chethan D 收藏

  摘要

本文引用地址:http://www.butianyuan.cn/article/201608/295245.htm

  在系統(tǒng)集成和電路板設(shè)計過程中,工程師常常需要根據(jù)輸入輸出信號實現(xiàn)管腳電平數(shù)字邏輯功能。使用外置獨立邏輯元件通常會造成物料成本增加,因而不適合低成本系統(tǒng)。此外,微控制器需要具備高效的功率,才能實現(xiàn)電池驅(qū)動設(shè)備的長時間工作。這些問題在設(shè)計層面就可以得到解決,方法是將可編程邏輯模塊添加到輸入輸出端口,以集成與輸入輸出相關(guān)的板級膠合邏輯功能,并減少微控制器的一些信號處理任務(wù),降低設(shè)備功耗。 我們提供了LED控制等應(yīng)用示例,以展示邏輯門在減少物料成本和設(shè)備功耗方面所起的作用。

  設(shè)計工程師常常需要根據(jù)輸入輸出信號(Input and Output, I/O)實現(xiàn)管腳電平數(shù)字邏輯。例如,系統(tǒng)工程師利用微控制器進行時鐘增殖時常常需要創(chuàng)建時鐘樹,將輸入時鐘輸入至多個緩沖時鐘(具有適當?shù)尿?qū)動能力),和/或倒轉(zhuǎn)時鐘極性。還有許多場景下,系統(tǒng)工程師必須對I/O信號進行邏輯組合。 他們通常的方案是利用離散組合邏輯模塊等外置元件實施最后時刻的改變,使用“藍線(blue wire)”將元件連接起來。這不僅提高了物料成本,而且還會影響生產(chǎn)PCB時耗時的自轉(zhuǎn)步驟。

  圖 1 MCU + 離散邏輯

  隨著電池供電設(shè)備的快速增長,功耗已成為系統(tǒng)工程師關(guān)心的重要問題。每節(jié)省一點電能都將延長電池一次充電的使用時間。因此,系統(tǒng)工程師嘗試在硬件上完成一些簡單的I/O信號處理任務(wù)來降低CPU負載——CPU是系統(tǒng)的主要耗電部件。例如,將兩個脈寬調(diào)制(PWM)信號輸入到異或門,,輸出信號即可實現(xiàn)呼吸燈。兩個PWM信號擁有微小的頻率差,頻率差產(chǎn)生的拍頻就是呼吸燈期望的呼吸頻率。在這個方案中,如果固件中實現(xiàn)了運行邏輯,CPU將無需定時啟動。

  圖2 8個呼吸燈的硬件實現(xiàn)

  今天的微控制器已經(jīng)可以在I/O口上提供可編程邏輯功能以集成板級膠合邏輯I/O功能,如與門、或門和異或門。圖3顯示了Smart I/O模塊的集成方式。Smart I/O模塊放在微控制器(MCU)的外設(shè)(如TCPWM、UART和 SPI)和I/O口之間的信號路徑上。I/O口的輸入信號可以先進行邏輯操作,然后路由到MCU的外設(shè)和芯片的連接單元。同樣地,外設(shè)的輸出信號和芯片的內(nèi)部連接信號可以先進行邏輯操作,然后路由到GPIO端口。Smart I/O模塊甚至可以在低功率模式下運行,并在必要時使用端口中斷喚醒芯片。

  圖?3.MCU中Smart I/O的示例

  Smart I/O模塊元件

  每個Smart I/O模塊與端口綁定,可以對該端口輸入輸出信號進行操作。以賽普拉斯的4為例,Smart I/O模塊由具有互聯(lián)矩陣的8個三輸入查找表(Look-Up Table, LUT)組成,如圖4所示。

  圖4.Smart I/O查找表

  Smart I/O可利用互聯(lián)矩陣靈活地進行互聯(lián)。用戶無需編寫任何代碼即可配置Smart I/O模塊。MCU設(shè)計工具鏈(具體到本文情況是Creator)利用圖形用戶界面(GUI)簡化了Smart I/O模塊的配置。

  查找表的輸入輸出信號可以在GUI的下拉列表中選擇來輕松配置。Smart I/O查找表的真值表可以通過限定輸出值為所有可能的輸入組合進行配置,如圖5所示:

  圖5. 在Creator中配置Smart I/O查找表

  Smart I/O模塊的應(yīng)用

  有許多應(yīng)用都可以利用Smart I/O減少物料成本、降低CPU負載和設(shè)備功耗。下面介紹其中兩個應(yīng)用:

  利用Smart I/O實現(xiàn)邏輯功能-Smart I/O查找表可用作通用邏輯元件來構(gòu)建定制邏輯功能,比如邏輯門、4線-2線優(yōu)先編碼器、移位寄存器和脈沖干擾濾波器。

  圖6 是通過將2個具有微小頻率差的PWM信號連接至異或門,實現(xiàn)一個呼吸燈。圖7是利用PSoC 4 MCU中的Smart I/O達到的呼吸燈效果。這里,通過配置查找表真值表在Smart I/O執(zhí)行異或操作,如圖8所示:

  圖 6. 使用邏輯門實現(xiàn)呼吸燈

  圖7. 利用PSOC 4 Smart I/O實現(xiàn)呼吸燈效果

  圖8. 使用Smart I/O實現(xiàn)異或門

  模式檢測 – Smart I/O可配置為檢測輸入信號具體模式(比如,檢測是否3路輸入信號都為低電平)的功能。電池供電嵌入系統(tǒng)將微控制器調(diào)成低功耗模式,當指定事件觸發(fā)時,產(chǎn)生中斷喚醒CPU來處理事件。

  在一些應(yīng)用中,必須根據(jù)多個事件的具體組合來喚醒設(shè)備和處理事件。今天市場上的MCU要求CPU處于工作狀態(tài)以檢測模式和處理事件。這導(dǎo)致CPU在每次發(fā)生事件時都被喚醒以檢查事件的組合,從而增加功耗。

  Smart I/O可工作在低功耗狀態(tài)中,根據(jù)多個事件的具體組合喚醒設(shè)備。在圖9的應(yīng)用中,根據(jù)多個事件的具體組合,MCU從深睡眠中被喚醒。在這種情況下,只有當兩個輸入都處于高電平時(即處于黑暗且窗口打開),設(shè)備醒來,并將傳感器狀態(tài)發(fā)送至接收器或是啟動警報通知用戶關(guān)閉窗口。

  圖 9. 使用PSoC 4Smart I/O檢測具體模式

  該系統(tǒng)的實現(xiàn)方案如圖10所示。兩個I/O管腳的輸入信號在Smart I/O模塊進行與操作,然后發(fā)送給CPU喚醒中斷控制器,將設(shè)備從深睡眠中喚醒。只有當兩個條件均為真才喚醒CPU,從而減少設(shè)備功耗,延遲電池壽命。

  圖10. 檢測具體的輸入模式 – PSoC Creator的實現(xiàn)方案

  圖10. 使用Smart I/O執(zhí)行與門



關(guān)鍵詞: 芯片 PSoC

評論


相關(guān)推薦

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

關(guān)閉