新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > PLD和數據通路來釋放微控制器中CPU資源

        PLD和數據通路來釋放微控制器中CPU資源

        作者: 時間:2011-11-17 來源:網絡 收藏

        根據的具體設計,其可能會做一系列復雜操作,如表1顯示。

          

          表1:函數的實現舉例。

          這個函數選擇模塊實際上可以是一個小容量的SRAM,預加載所需的函數選擇位,SRAM的地址線可以用來選擇運行哪個操作。最后,多可以用進位和移位信號鏈在一起,以便可以進行多字節操作數。

          由于數據通路只有少數特定功能函數,很容易優化設計,因此其創建成本較低。然而,對于實現復雜的邏輯,數據通路遠遠沒有那么靈活。那么,對于創建智能、靈活、低成本的數字外設來說,哪一種方法是更好的呢?是還是數據通路?答案是,將兩者相結合。下面是一個實例,來看看是如何實現的。

          通用數字模塊

          同時使用和數據通路的系統實例是賽普拉斯半導體的PSoC3和PSoC5芯片。每個系統包含最高24個通用數字邏輯子系統,稱為通用數字模塊(UDB),其結構如圖3所示。一個UDB包含兩個圖1所示的PLD,一個數據通路以及狀態機和控制寄存器。有兩個鏈路路徑,一個用于PLD,一個用于數據通路。由一個路由通道來連接各UDB子塊之間以及UDB之間的信號。PLD配置、數據通路和路由通過寫入UDB配置寄存器來實現。

          UDB的PLD設計在圖1中進行了描述。如圖4,UDB數據通路類似于圖2所示的基本的數據通路,但是它更精密復雜,因為擁有更多寄存器和更多的功能。

          

          圖4:UDB數據通路框圖。

          * 8位ALU可以實現所有的七個基本函數—遞增、遞減、加、減、與、或以及異或,并且它有單獨的位移和位掩碼模塊來進行ALU結果后處理(8位ALU傳輸功能只需通過ALU傳送一個值到位移和位掩碼模塊)。位移模塊可以做左位移、右位移、半字節交換和傳輸。掩碼模塊可以和單獨的掩碼寄存器里的內容逐位相與(圖中未顯示)。

          * 操作可以使用兩個累加器(A0,A1)和兩個數據寄存器(D0,D1)來完成。兩個FIFO寄存器(F0、F1)可用來在數據通路和之間傳輸數據。FIFO深度可達4字節。這一結構可以使多任務處理變得簡單;在不同的時間,獨立操作可以在寄存器子集完成。例如,A0、D0、F0可以用于一個任務,而A1、D1、F1則可用于不同的任務。

          * 廣泛的狀態條件(例如:比較、零檢測、所有個體檢測、溢出檢測)可以應用到累加器,數據寄存器,以及路由到器件其它地方。



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 阳信县| 滁州市| 湄潭县| 尚义县| 射阳县| 乌拉特前旗| 托克托县| 大荔县| 渝中区| 赞皇县| 昭平县| 汽车| 四平市| 射洪县| 循化| 扬州市| 蒙城县| 康马县| 乌恰县| 德令哈市| 墨玉县| 县级市| 定远县| 安陆市| 历史| 九龙县| 武宁县| 曲阳县| 江安县| 邳州市| 通海县| 宜良县| 镶黄旗| 乡城县| 大石桥市| 南漳县| 南皮县| 全南县| 佛山市| 阜新市| 菏泽市|