新聞中心

        EEPW首頁 > 電源與新能源 > 設計應用 > 易修改無需處理器干預的LED燈序電路設計方案

        易修改無需處理器干預的LED燈序電路設計方案

        作者: 時間:2011-05-04 來源:網絡 收藏

        LED技術越來越多的應用到我們的生活中,對于開發者來說,通過片上系統(SOC)平臺實現LED或其他設備次序器,從而找到一種減少成本、降低設計難度的設計需求變得越來越普遍。SOC器件通過單芯片集成了完整LED子系統所需的單片機功能和各種數字外圍設備。本文介紹了一種基于最新SOC技術的簡單的8 LED燈序電路設計。在這個設計中最精彩的部分就是微處理器無需進行干預。不是采用傳統的由單片機處理器干預的被動的數字外設,此設計完全是基于SOC數字系統的智能分布式處理功能。這使中央處理器從管理燈序電路的工作中解脫出來,節省CPU資源從而設計效率更高。

        該設計方法可以很容易的擴展到LED以外的需要用指定順序開啟或關閉的其他設備,比如不同長度、不同模式的序列定時器等等。該設計示例中還有額外的功能:

        · 7位計數器(TC)終端計數

        · 指示設備開啟關閉的輸出

        · 為序列器件提供的8位輸出

        · 給Verilog狀態機的時鐘輸入

        · 給8位ALU(bit-slice)處理器的總線時鐘

        這篇文章中用到的開發工具是賽普拉斯半導體可編程片上系統(PSoC)的集成開發環境PSoC Creator。

        原理圖設計

        設計的第一步是在創建一個Verilog符號來定義輸入、輸出和與之相關的位寬度(見圖1)。一旦上層Verilog模型(原理圖)已經建立,它就可以用來產生包含所有模塊中引腳定義的Verilog源文件。這一步不需要開發功能Verilog代碼。

        易修改無需處理器干預的LED燈序電路設計方案

        圖1:Verilog 符號。

        剛才創建的Verilog符號現在可以放置到高層原理圖設計。在這里,每一個輸入及輸出都能連接到時鐘源、I / O引腳、狀態和控制寄存器等等。8-LED燈序電路高層原理設計見圖2。

        易修改無需處理器干預的LED燈序電路設計方案

        圖2:高層原理設計示例。

        到現在為止,Verilog符號已經建立,放置到了高層原理設計里,并且連接到了設備的I/ O和時鐘。現在可以生成Verilog代碼來履行某些功能,在這個案例中可使發光二極管閃爍。為了管理序列的邏輯能力,可以在設計里引入一個簡單的數據路徑。

        這個數據路徑包含一個8位ALU,其具備精簡指令集,兩個數據寄存器、兩個累積器、位移和比較邏輯、一個4 deep的 8位FIFO。為了保持設計簡單,只用到了兩個ALU,用來將累加器設置為0,每次開啟或關閉序列執行的時候累加器就遞增。對于較復雜的定序設計,開發人員可以聯合多個ALU形成一個16位或24位處理器。這樣的處理器類似于bit-slice處理器,其在70年代和80年代早期比較流行,它可以為次序的子系統提供足夠的處理能力。

        數據路徑配置工具示圖如下。請注意CFGRAM(配置RAM)的前二行注釋:“A0 - 0”,這是給累加器0清零,“A0 - A0+1”,實現在A0累加值。

        易修改無需處理器干預的LED燈序電路設計方案

        圖3:數據路徑配置工具。

        片上系統(SOC)技術以可編程的方式重新利用了bit-slice技術,用來把處理任務智能地分配到其他可編程硬件,從而減少主CPU的負荷。使用這種方法,可以研制出一種標準狀態機。不同的是,通常算法功能要消耗大量的邏輯門。而在新的方式中這已無需再關注,因為這些功能在標準標準ALU即可實現,它包含由基于PLD的狀態機控制的數據路徑與/或邏輯。

        這個設計獨立運行于主CPU。主應用程序可以通過API(可以修改執行參數)控制燈序電路,燈序電路初始化之后,就不再需要CPU。此外,這種實現方式同使用CPU方式相比,本身即可提高效率、可以使用更少的晶體管,從而更好的降低整體系統功耗,給其他特性預留出更多資源。

        本文討論了LED燈序電路設計,同樣的設計方法也可用到類似設計,可以通過功能強大的SOC集成結構來執行各種各樣的需要頻繁處理的任務,降低主CPU負荷。現在,工程師不斷面臨很多壓力:提高性能、降低功耗、減少成本…擁有一種像這樣的系統設計工具可以幫助工程師不斷地創造奇跡,達到公眾對他們的期望。




        關鍵詞: LED燈序電路

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 吉安县| 饶平县| 逊克县| 阿巴嘎旗| 巴青县| 清流县| 建宁县| 沅江市| 双江| 光泽县| 永登县| 台湾省| 景东| 大同市| 娄烦县| 平罗县| 女性| 怀柔区| 南投县| 平乡县| 西青区| 资阳市| 温州市| 海伦市| 洛川县| 盐亭县| 准格尔旗| 昌图县| 廉江市| 宁河县| 濮阳市| 泽库县| 秭归县| 闻喜县| 乐业县| 永宁县| 新和县| 鄂伦春自治旗| 江油市| 稻城县| 台南县|