易修改無需處理器干預(yù)的LED燈序電路設(shè)計(jì)
到現(xiàn)在為止,Verilog符號已經(jīng)建立,放置到了高層原理設(shè)計(jì)里,并且連接到了設(shè)備的I/ O和時鐘?,F(xiàn)在可以生成Verilog代碼來履行某些功能,在這個案例中可使發(fā)光二極管閃爍。為了管理序列的邏輯能力,可以在設(shè)計(jì)里引入一個簡單的數(shù)據(jù)路徑。
LED技術(shù)越來越多的應(yīng)用到我們的生活中,對于開發(fā)者來說,通過片上系統(tǒng)(SOC)平臺實(shí)現(xiàn)LED或其他設(shè)備次序器,從而找到一種減少成本、降低設(shè)計(jì)難度的設(shè)計(jì)需求變得越來越普遍。SOC器件通過單芯片集成了完整LED子系統(tǒng)所需的單片機(jī)功能和各種數(shù)字外圍設(shè)備。本文介紹了一種基于最新SOC技術(shù)的簡單的8 LED燈序電路設(shè)計(jì)。在這個設(shè)計(jì)中最精彩的部分就是微處理器無需進(jìn)行干預(yù)。不是采用傳統(tǒng)的由單片機(jī)處理器干預(yù)的被動的數(shù)字外設(shè),此設(shè)計(jì)完全是基于SOC數(shù)字系統(tǒng)的智能分布式處理功能。這使中央處理器從管理燈序電路的工作中解脫出來,節(jié)省CPU資源從而設(shè)計(jì)效率更高。
該設(shè)計(jì)方法可以很容易的擴(kuò)展到LED以外的需要用指定順序開啟或關(guān)閉的其他設(shè)備,比如不同長度、不同模式的序列定時器等等。該設(shè)計(jì)示例中還有額外的功能:
· 7位計(jì)數(shù)器(TC)終端計(jì)數(shù)
· 指示設(shè)備開啟關(guān)閉的輸出
· 為序列器件提供的8位輸出
· 給Verilog狀態(tài)機(jī)的時鐘輸入
· 給8位ALU(bit-slice)處理器的總線時鐘
這篇文章中用到的開發(fā)工具是賽普拉斯半導(dǎo)體可編程片上系統(tǒng)(PSoC)的集成開發(fā)環(huán)境PSoC Creator。
原理圖設(shè)計(jì)
設(shè)計(jì)的第一步是在創(chuàng)建一個Verilog符號來定義輸入、輸出和與之相關(guān)的位寬度(見圖1)。一旦上層Verilog模型(原理圖)已經(jīng)建立,它就可以用來產(chǎn)生包含所有模塊中引腳定義的Verilog源文件。這一步不需要開發(fā)功能Verilog代碼。
圖1:Verilog 符號。
剛才創(chuàng)建的Verilog符號現(xiàn)在可以放置到高層原理圖設(shè)計(jì)。在這里,每一個輸入及輸出都能連接到時鐘源、I / O引腳、狀態(tài)和控制寄存器等等。8-LED燈序電路高層原理設(shè)計(jì)見圖2。
圖2:高層原理設(shè)計(jì)示例。
評論