<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

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

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

作者: 時(shí)間:2011-05-04 來(lái)源:網(wǎng)絡(luò ) 收藏

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

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

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

· 指示設備開(kāi)啟關(guān)閉的輸出

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

· 給Verilog狀態(tài)機的時(shí)鐘輸入

· 給8位ALU(bit-slice)處理器的總線(xiàn)時(shí)鐘

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

原理圖設計

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

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

圖1:Verilog 符號。

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

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

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

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

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

數據路徑配置工具示圖如下。請注意CFGRAM(配置RAM)的前二行注釋?zhuān)骸癆0 - 0”,這是給累加器0清零,“A0 - A0+1”,實(shí)現在A(yíng)0累加值。

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

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

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

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

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




關(guān)鍵詞: LED燈序電路

評論


技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>