九九热最新网址,777奇米四色米奇影院在线播放,国产精品18久久久久久久久久,中文有码视频,亚洲一区在线免费观看,国产91精品在线,婷婷丁香六月天

歡迎來到裝配圖網(wǎng)! | 幫助中心 裝配圖網(wǎng)zhuangpeitu.com!
裝配圖網(wǎng)
ImageVerifierCode 換一換
首頁 裝配圖網(wǎng) > 資源分類 > DOC文檔下載  

基于vhdl三層電梯控制器的設(shè)計(jì)1說明書.doc

  • 資源ID:116834089       資源大?。?span id="24d9guoke414" class="font-tahoma">639.54KB        全文頁數(shù):78頁
  • 資源格式: DOC        下載積分:12積分
快捷下載 游客一鍵下載
會員登錄下載
微信登錄下載
三方登錄下載: 微信開放平臺登錄 支付寶登錄   QQ登錄   微博登錄  
二維碼
微信掃一掃登錄
下載資源需要12積分
郵箱/手機(jī):
溫馨提示:
用戶名和密碼都是您填寫的郵箱或者手機(jī)號,方便查詢和重復(fù)下載(系統(tǒng)自動生成)
支付方式: 支付寶    微信支付   
驗(yàn)證碼:   換一換

 
賬號:
密碼:
驗(yàn)證碼:   換一換
  忘記密碼?
    
友情提示
2、PDF文件下載后,可能會被瀏覽器默認(rèn)打開,此種情況可以點(diǎn)擊瀏覽器菜單,保存網(wǎng)頁到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站資源下載后的文檔和圖紙-無水印,預(yù)覽文檔經(jīng)過壓縮,下載后原文更清晰。
5、試題試卷類文檔,如果標(biāo)題沒有明確說明有答案則都視為沒有答案,請知曉。

基于vhdl三層電梯控制器的設(shè)計(jì)1說明書.doc

摘 要電梯作為垂直方向的交通工具,在高層建筑和公共場所已成為不可或缺的設(shè)備。中國是全球最大的電梯市場,也具有最強(qiáng)的電梯生產(chǎn)能力,但由于缺乏自主知識產(chǎn)權(quán)和核心技術(shù),自主品牌占市場的份額很少。隨著社會需求的變化,電梯朝著節(jié)能、環(huán)保及智能化方向發(fā)展。EDA技術(shù)打破了軟件和硬件間的壁壘,使計(jì)算機(jī)的軟件技術(shù)與硬件實(shí)現(xiàn)、設(shè)計(jì)效率與產(chǎn)品性能合二為一,它代表了電子設(shè)計(jì)技術(shù)和應(yīng)用技術(shù)的發(fā)展方向。VHDL主要用于描述數(shù)字系統(tǒng)的接口,結(jié)構(gòu)和功能,它的語法簡單易懂,移植性好。本設(shè)計(jì)采用VHDL,源程序經(jīng)A1tera公司的MAX+plus II軟件仿真。運(yùn)用有限狀態(tài)機(jī)的設(shè)計(jì)方法,設(shè)計(jì)了兩個進(jìn)程相互配合,狀態(tài)機(jī)進(jìn)程作為主要進(jìn)程,信號燈控制進(jìn)程作為輔助進(jìn)程。在電梯時鐘的觸發(fā)下,通過當(dāng)前狀態(tài)和信號燈信號來判定下一狀態(tài)。信號燈控制進(jìn)程中,信號燈信號存儲按鍵請求情況,它的熄滅是由狀態(tài)機(jī)進(jìn)程中傳出的信號來控制。【關(guān)鍵詞】電梯控制器 EDA技術(shù)及其優(yōu)點(diǎn),電梯控制器的基本設(shè)計(jì)原理目 錄前 言第一章 概述第一節(jié) 中國電梯的現(xiàn)狀及發(fā)展趨勢 一 、中國電梯市場的現(xiàn)狀二 、電梯的發(fā)展方向第二節(jié) EDA技術(shù)及VHDL簡述一 、EDA技術(shù)及其發(fā)展二 、硬件描述語言VHDL第二章 五層電梯控制器的基本設(shè)計(jì)原理第一節(jié) 電梯控制器的功能模塊第二節(jié) 電梯控制器的流程圖第三節(jié) 有限狀態(tài)機(jī)一 、建立狀態(tài)機(jī)的基本原理和基本方法 二 、狀態(tài)機(jī)的優(yōu)越性三 、一般狀態(tài)機(jī)的VHDL設(shè)計(jì)第三章 五層電梯控制器的具體設(shè)計(jì)第一節(jié) 五層電梯控制器實(shí)現(xiàn)的功能及運(yùn)行規(guī)則第二節(jié) 五層電梯控制器的綜合設(shè)計(jì)一 、五層電梯控制器的設(shè)計(jì)思路二 、實(shí)體設(shè)計(jì)三 、結(jié)構(gòu)體設(shè)計(jì)四 、VHDL源代碼語法的簡單說明 五 、VHDL源代碼參考文獻(xiàn)前 言隨著EDA技術(shù)的發(fā)展和應(yīng)用領(lǐng)域的擴(kuò)大和深入,EDA技術(shù)在電子信息、通信、自動控制及計(jì)算機(jī)領(lǐng)域的重要性日益突出。隨著技術(shù)市場與人才市場對EDA的需求不斷提高,產(chǎn)品的市場需求和技術(shù)市場的要求也必然會反映到教學(xué)和科研領(lǐng)域中來。用VHDL硬件描述語言的形式來進(jìn)行數(shù)字系統(tǒng)的設(shè)計(jì)方便靈活,利用EDA軟件進(jìn)行編譯優(yōu)化仿真極大地減少了電路設(shè)計(jì)時間和可能發(fā)生的錯誤,降低了開發(fā)成本,這種設(shè)計(jì)方法必將在未來的數(shù)字系統(tǒng)設(shè)計(jì)中發(fā)揮越來越重要的作用。CPLD作為新一代工業(yè)控制器,以其高可靠性和技術(shù)先進(jìn)性,在電梯控制中得到廣泛應(yīng)用,從而使電梯由傳統(tǒng)的繼電器控制方式發(fā)展為計(jì)算機(jī)控制的一個重要方向,成為當(dāng)前電梯控制和技術(shù)改造的熱點(diǎn)之一。另外CPLD是一種專門從事邏輯控制的微型計(jì)算機(jī)系統(tǒng)。由于CPLD具有性能穩(wěn)定、抗干擾能力強(qiáng)、設(shè)計(jì)配置靈活等特點(diǎn),配合VHDL語言的突出的優(yōu)點(diǎn),因此在工業(yè)控制方面得到了廣泛應(yīng)用。相信以后必將受到世界范圍內(nèi)電子工程設(shè)汁人員的廣泛關(guān)注和普遍歡迎。EDA是目前世界電子設(shè)計(jì)的最新技術(shù)方向和潮流,是一種全新的實(shí)驗(yàn)手段,能有效地提高現(xiàn)代化電子設(shè)計(jì)能力。為了跟上時代的步伐,提高自己的電子設(shè)計(jì)能力,我選擇了做本課題來學(xué)習(xí)EDA技術(shù)的基本內(nèi)容。第一章 概述第一節(jié) 中國電梯的現(xiàn)狀及發(fā)展趨勢一、中國電梯市場的現(xiàn)狀近年來,隨著中國房地產(chǎn)業(yè)的快速發(fā)展,與之配套的電梯生產(chǎn)制造業(yè)也經(jīng)歷了迅猛發(fā)展的階段,電梯產(chǎn)量保持了每年20以上的增長速度。我國電梯的出口年均增長率將保持在35%以上,電梯行業(yè)逐步成為國內(nèi)比較重要的行業(yè)。 隨著我國經(jīng)濟(jì)持續(xù)增長、城鎮(zhèn)化建設(shè)的加速和房地產(chǎn)行業(yè)的進(jìn)一步發(fā)展,對電梯的需求越來越大。估計(jì)未來50年中國新增住房面積將達(dá)到200億平方米。國家規(guī)定20米以上高樓就應(yīng)安裝電梯,因此未來電梯最大的市場就是住宅市場。此外,機(jī)場、商場、地鐵等大型公共設(shè)施建設(shè)對自動扶梯、觀光電梯等電梯的需求量也十分可觀。目前,中國不但是全球最大的電梯市場,而且形成了全球最強(qiáng)的電梯生產(chǎn)能力,但由于缺乏自主的知識產(chǎn)權(quán)和核心技術(shù),產(chǎn)品的附加價(jià)值不高,利潤非常低。目前,全國注冊電梯企業(yè)約400家,但美國奧的斯、瑞士迅達(dá)、芬蘭通力、德國蒂森、日本三菱、日立、富士達(dá)、東芝等13家大型外企占據(jù)中國電梯市場75%左右的份額,而自主品牌只占25%左右的市場份額。電梯作為終端消費(fèi)品,品牌在市場競爭中的作用非常明顯。品牌往往成為人們在選擇電梯產(chǎn)品時的重要考慮因素,電梯生產(chǎn)要想建立良好的品牌并獲得市場的認(rèn)可,也必須經(jīng)過市場一定時間的不斷考驗(yàn)。面對外資巨頭的貼身進(jìn)逼,我 國電梯品牌在服務(wù)和營銷上難以匹敵,其生存狀況不容樂觀。二、電梯的發(fā)展方向電梯作為垂直方向的交通工具,在高層建筑和公共場所已經(jīng)成為重要的建筑設(shè)備而不可或缺。電梯產(chǎn)業(yè)的前景和走勢隨著社會的需求而悄然發(fā)生著改變,除了考慮安全、舒適、豪華裝修等要求外,市場對新一代的綠色電梯、節(jié)能電梯和智能電梯的需求越來越旺盛。國內(nèi)外電梯企業(yè)順應(yīng)市場需要,加大研發(fā)投入,都準(zhǔn)備在未來新概念電梯產(chǎn)業(yè)發(fā)展中占得先機(jī)。1、電梯的節(jié)能和環(huán)保“綠色”已成為21世紀(jì)的主流色調(diào),一個全球性的綠色市場為企業(yè)的發(fā)展提供了廣闊的空間,當(dāng)今社會誰先推出綠色產(chǎn)品,搶占綠色營銷市場,誰就能掌握競爭的主動權(quán)。有關(guān)人士預(yù)言,綠色環(huán)保電梯將成為今后電梯市場的主導(dǎo)性產(chǎn)品,誰擁有了它的核心技術(shù),誰就在競爭中獲得了優(yōu)勢。老式電梯噪音、占用空間、耗能等形成的危害積累起來是相當(dāng)大的,因此,在城市環(huán)保社區(qū)建設(shè)中,如何盡量減少電梯對環(huán)境的危害是相當(dāng)重要的課題之一。目前,我國市場每年銷售各種類型的電梯達(dá)4.5萬部,如果這些電梯全部實(shí)現(xiàn)環(huán)?;?,其環(huán)境效益是難以估量的。電梯現(xiàn)在越來越多,在對賓館、寫字樓等的用電情況調(diào)查統(tǒng)計(jì)中,電梯用電量占總用電量的17%-25%以上,僅次于空調(diào)用電量,高于照明、供水等的用電量。負(fù)責(zé)任的開發(fā)商,都會為業(yè)主的長遠(yuǎn)利益著想,購買節(jié)能型的電梯。近年來,節(jié)能型電梯的市場越來越好,電梯制造商也越來越注重電梯的“節(jié)能”性能。在上世紀(jì)90年代,在電梯驅(qū)動上開始應(yīng)用變頻調(diào)壓調(diào)速系統(tǒng),能耗大幅度地降低。近幾年,又出現(xiàn)了永磁同步電機(jī)驅(qū)動的電梯,能耗又有大幅度的下降,有的電梯還能利用太陽能對機(jī)房的電能進(jìn)行補(bǔ)充。2、電梯的智能化隨著城市化的高速發(fā)展,越來越多的摩天大樓拔地而起。就摩天大樓的高度而言,不僅受建筑技術(shù)上的制約,而且還有電梯升高方面的困惑,因而,在摩天大樓日益完備智能化的趨勢中,電梯的智能化也不容忽視。它不僅是人們上上下下的代步工具,同時,也是摩天大樓智能化的一個重要標(biāo)志。盡管電梯在摩天大樓中只是個細(xì)節(jié),但電梯智能化程度的高低卻決定著它服務(wù)質(zhì)量的優(yōu)劣。因而,電梯的智能化在一定程度上反映出智能大廈的智能程度。計(jì)算機(jī)技術(shù),通訊技術(shù)與控制技術(shù)的發(fā)展使大廈的智能化成為現(xiàn)實(shí),而電梯是智能建筑中的重要交通工具,其技術(shù)發(fā)展及智能化程度也倍受世人關(guān)注。智能化的電梯要與智能大廈中所有自動化系統(tǒng)聯(lián)網(wǎng),如與樓宇控制系統(tǒng)、消防系統(tǒng)、保安監(jiān)控系統(tǒng)等交互聯(lián)系,使電梯成為高效優(yōu)質(zhì)、安全舒適的服務(wù)工具。第二節(jié) EDA技術(shù)及VHDL簡述一、EDA技術(shù)現(xiàn)代EDA技術(shù)就是以讓算機(jī)為工具,在EDA軟件平臺上,根據(jù)硬件描述語言HDL完成的設(shè)計(jì)文件,能自動地完成用軟件方式描述的電子系統(tǒng)到硬件系統(tǒng)的邏輯編譯、邏輯化簡、邏輯分割、邏輯綜合及優(yōu)化、布局布線、邏輯仿真,直至完成對于特定目標(biāo)芯片的適配編譯、邏輯映射和編程下載等工作。設(shè)計(jì)者的工作僅限于利用軟件的方式來完成對系統(tǒng)硬件功能的描述,在EDA工具的幫助下和應(yīng)用相應(yīng)的FPGA/CPLD器件,就可以得到最后的設(shè)計(jì)結(jié)果。盡管目標(biāo)系統(tǒng)是硬件,但整個設(shè)計(jì)和修改過程如同完成軟件設(shè)計(jì)一樣方便和高效??梢姡肊DA技術(shù)進(jìn)行電子系統(tǒng)的設(shè)計(jì),具有以下幾個特點(diǎn):用軟件的方式設(shè)計(jì)硬件;用軟件方式設(shè)計(jì)的系統(tǒng)到硬件系統(tǒng)的轉(zhuǎn)換是由有關(guān)的開發(fā)軟件自動完成的;從以前的“組合設(shè)計(jì)”轉(zhuǎn)向真正的“自由設(shè)計(jì)”;設(shè)計(jì)過程中可用有關(guān)軟件進(jìn)行各種仿真;系統(tǒng)可現(xiàn)場編程,在線升級;設(shè)計(jì)的移植性好,效率高;非常適合分工設(shè)計(jì),團(tuán)隊(duì)協(xié)作;整個系統(tǒng)可集成在一個芯片上,體積小、功耗低、可靠性高。因此,EDA是當(dāng)今電子設(shè)計(jì)的發(fā)展趨勢。二、硬件描述語言VHDLVHDL主要用于描述數(shù)字系統(tǒng)的結(jié)構(gòu),行為,功能和接口,它是從抽象到具體的水平來描述硬件的一個行業(yè)標(biāo)準(zhǔn)的語言。VHDL的程序結(jié)構(gòu)特點(diǎn)是將一項(xiàng)工程設(shè)計(jì)分成外部和內(nèi)部,外部即端口,內(nèi)部則涉及實(shí)體的功能和算法。在對一個設(shè)計(jì)實(shí)體定義了外部端口并完成內(nèi)部開發(fā)后,其他的設(shè)計(jì)就可以直接調(diào)用這個實(shí)體。自1987年被IEEE批準(zhǔn)后,VHDL語言已經(jīng)在電子設(shè)計(jì)生產(chǎn)中處于核心地位。它有以下優(yōu)點(diǎn):VHDL語言功能強(qiáng)大,設(shè)計(jì)方式多樣。VHDL語言具有強(qiáng)大的硬件描述能力。VHDL語言具有很好移植性。VHDL語言的設(shè)計(jì)描述與器件無關(guān)。VHDL語言程序易于共享和復(fù)用。由于VHDL語言是一種描述、模擬、綜合、優(yōu)化和布線的標(biāo)準(zhǔn)硬件描述語言,因此它可以使設(shè)計(jì)成果在設(shè)計(jì)人員之間方便地進(jìn)行交流和共享,從而減小硬件電路設(shè)計(jì)的工作量,縮短開發(fā)周期。三,EDA設(shè)計(jì)技術(shù)的基本特征一般來說,EDA設(shè)計(jì)技術(shù)就是指以計(jì)算機(jī)為工作平臺,以eda軟件工具未開發(fā)環(huán)境,以硬件描述語言為設(shè)計(jì)語言,以可編程邏輯器件為載體,以asic和soc芯片為設(shè)計(jì)的基本目標(biāo),以電子系統(tǒng)設(shè)計(jì)為應(yīng)用方向的電子產(chǎn)品自動化設(shè)計(jì)過程。通常,eda技術(shù)的基本特征主要包括以下幾個方面:(1)自頂向下的設(shè)計(jì)方法。(2)硬件描述語言。(3)邏輯綜合與優(yōu)化功能。(4)開放性與標(biāo)準(zhǔn)化。 第二章 三層電梯控制器的基本設(shè)計(jì)原理第一節(jié) 電梯控制器的功能模塊電梯控制器的功能模塊如圖2.1所示,包括主控制器、分控制器、樓層選擇器、狀態(tài)顯示器、譯碼器和樓層顯示器。乘客在電梯中選擇所要到達(dá)的樓層,通過主控制器的處理,電梯開始運(yùn)行,狀態(tài)顯示器顯示電梯的運(yùn)行狀態(tài),電梯所在樓層數(shù)通過譯碼器譯碼從而在樓層顯示器中顯示。分控制器把有效的請求傳給主控制器進(jìn)行處理,同時顯示電梯的運(yùn)行狀態(tài)和電梯所在樓層數(shù)。由于分控制器相對簡單很多,所以主控制器是核心部分。狀態(tài)顯示器主控制器樓層選擇器分控制器譯碼器樓層顯示器 圖2.1 電梯控制器原理圖第二節(jié) 電梯控制器的流程圖外部按鍵請求信號寄存器狀態(tài)寄存器內(nèi)部軟件執(zhí)行機(jī)構(gòu)外部硬件執(zhí)行機(jī)構(gòu)圖2.2 總流程圖初始化判定電梯運(yùn)行方向是否有請求?等待電梯運(yùn)行樓層檢測否電梯停止目標(biāo)層與本層是否同層?是是否目標(biāo)層?開門延時關(guān)門是否停止運(yùn)行?是否是否是否停止圖2.3 電梯控制主流程圖第三節(jié) 有限狀態(tài)機(jī) 有限狀態(tài)機(jī)(finite state machine)又稱有限狀態(tài)自動機(jī)或簡稱狀態(tài)機(jī),是表示有限個狀態(tài)以及這些狀態(tài)之間的轉(zhuǎn)移和動作等行為的數(shù)學(xué)模型,它是由一組狀態(tài)、一個初始狀態(tài)、輸入和根據(jù)輸入及現(xiàn)有狀態(tài)轉(zhuǎn)換為下一個狀態(tài)的轉(zhuǎn)換函數(shù)組成。有限狀態(tài)機(jī)是一種基本的、簡單的、重要的形式化技術(shù),在軟件設(shè)計(jì)中常常采用。它是描述一個由有限個獨(dú)立狀態(tài)組成的過程,這些狀態(tài)可以互相遷移,直到最終離開這個過程。采用有限狀態(tài)機(jī)可以使設(shè)計(jì)過程直觀簡單易于理解,隨著硬件設(shè)計(jì)軟件化趨勢的加劇,在運(yùn)用VHDL硬件描述語言設(shè)計(jì)數(shù)字系統(tǒng)時,利用有限狀態(tài)機(jī)成為了可靠方便的途徑??刂破髯鳛殡娮酉到y(tǒng)設(shè)計(jì)的核心部分,在EDA軟件平臺上,借助有限狀態(tài)機(jī)表示方法符合人的邏輯思維的特征,將控制功能用有限狀態(tài)機(jī)來建模實(shí)現(xiàn),有許多優(yōu)越之處,以使FSM成為大型控制電路設(shè)計(jì)的有力工具。一、建立狀態(tài)機(jī)的基本原理和基本方法1、狀態(tài)機(jī)的基本原理除了輸人信號、輸出信號外,狀態(tài)機(jī)還包含一組寄存器記憶內(nèi)部狀態(tài)。狀態(tài)機(jī)寄存器的下一個狀態(tài)及輸出,不僅同輸入信號有關(guān),而且還與寄存器的當(dāng)前狀態(tài)有關(guān),狀態(tài)機(jī)有兩個主要部分:即組合邏輯和寄存器部分。組合邏輯部分又可分為狀態(tài)譯碼器和輸出譯碼器,狀態(tài)譯碼器確定狀態(tài)機(jī)的下一個狀態(tài),即確定狀態(tài)機(jī)的激勵方程,輸出譯碼器確定狀態(tài)機(jī)的輸出,即確定狀態(tài)機(jī)的輸出方程。在實(shí)際的應(yīng)用中,根據(jù)有限狀態(tài)機(jī)是否使用輸入信號,設(shè)計(jì)人員經(jīng)常將其分為摩爾(moore)型狀態(tài)機(jī)和米立(mealy)型狀態(tài)機(jī)兩種類型。摩爾狀態(tài)機(jī)的輸出只是當(dāng)前狀態(tài)的函數(shù),而米立狀態(tài)機(jī)的輸出一般是當(dāng)前狀態(tài)和輸入信號的函數(shù)。大多數(shù)實(shí)用的狀態(tài)機(jī)都是同步的時序電路,由時鐘信號觸發(fā)進(jìn)行狀態(tài)的轉(zhuǎn)換。時鐘信號同所有的邊沿觸發(fā)的狀態(tài)寄存器和輸出寄存器相連,使?fàn)顟B(tài)的改變發(fā)生在時鐘的上升或下降沿。在數(shù)字系統(tǒng)中,那些輸出取決于過去的輸入和當(dāng)前的輸入的部分都可以作為有限狀態(tài)機(jī)。有限狀態(tài)機(jī)的全部“歷史”都反映在當(dāng)前狀態(tài)上。當(dāng)給FSM一個新的輸入時,在時鐘的觸發(fā)下,狀態(tài)就會發(fā)生轉(zhuǎn)移。2、建立狀態(tài)機(jī)的方法數(shù)字系統(tǒng)中,傳統(tǒng)的狀態(tài)機(jī)建立方法主要有狀態(tài)轉(zhuǎn)移圖和狀態(tài)轉(zhuǎn)移表兩種。狀態(tài)轉(zhuǎn)移圖:如圖2.4所示,圖中每個橢圓表示狀態(tài)機(jī)的一個狀態(tài),而箭頭表示狀態(tài)之間的轉(zhuǎn)移方向,引起狀態(tài)轉(zhuǎn)換的輸入信號及當(dāng)前輸出表示在箭頭上。狀態(tài)A狀態(tài)B狀態(tài)C狀態(tài)D輸入/出輸入/出輸入/出輸入/出圖2.4 狀態(tài)轉(zhuǎn)移圖狀態(tài)轉(zhuǎn)移表:如表2.1所示,表中的行列出了全部可能的輸入信號和內(nèi)部狀態(tài)以組合及相應(yīng)的次狀態(tài)和輸出,因此狀態(tài)表表現(xiàn)了狀態(tài)轉(zhuǎn)移函數(shù)和輸出函數(shù)。然而,狀態(tài)表不適合具有大量輸入的系統(tǒng),因?yàn)殡S著輸入的增加其狀態(tài)數(shù)和系統(tǒng)的復(fù)雜性會顯著增加。表2.1 狀態(tài)轉(zhuǎn)移表現(xiàn)態(tài)輸入次態(tài)輸出A-DI0-ImA-DO0-On如果能夠畫出狀態(tài)轉(zhuǎn)移圖或狀態(tài)轉(zhuǎn)移表,就可以列出狀態(tài)轉(zhuǎn)移方程和輸出方程,畫出設(shè)計(jì)電路圖。狀態(tài)轉(zhuǎn)移圖、狀態(tài)轉(zhuǎn)移表這兩種狀態(tài)機(jī)的建立方法是等價(jià)的,都可以描述同一硬件的結(jié)構(gòu),它們可以相互轉(zhuǎn)換,但各有優(yōu)缺點(diǎn),分別適合于不同場合,并且這種傳統(tǒng)的設(shè)計(jì)方法十分復(fù)雜。 利用VHDL設(shè)計(jì)狀態(tài)機(jī),不必進(jìn)行繁雜的狀態(tài)分配,狀態(tài)表繪制和化簡,更不必畫出設(shè)計(jì)電路和搭試硬件電路測試邏輯功能,這些工作可以全由EDA工具完成。用VHDL語言設(shè)計(jì)狀態(tài)機(jī),是通過簡便地定義狀態(tài)變量,將狀態(tài)描述成進(jìn)程,每個狀態(tài)均可表達(dá)為case-when語句結(jié)構(gòu)中的一條case語句,狀態(tài)的轉(zhuǎn)移通過if-then-else語句實(shí)現(xiàn),并輸出信號以控制其他進(jìn)程,從而實(shí)現(xiàn)所需功能。二、狀態(tài)機(jī)的優(yōu)越性 狀態(tài)機(jī)的工作方式是根據(jù)控制信號按照預(yù)先設(shè)定的狀態(tài)進(jìn)行順序運(yùn)行的,它是純硬件數(shù)字系統(tǒng)中的順序控制電路,狀態(tài)機(jī)克服了純硬件數(shù)字系統(tǒng)順序方式控制不靈活的缺點(diǎn)。 由于狀態(tài)機(jī)的結(jié)構(gòu)模式相對簡單,設(shè)計(jì)方案相對固定,特別是可以定義符號化枚舉類型的狀態(tài),這一切都是VHDL綜合器盡可能發(fā)揮其強(qiáng)大的優(yōu)化功能提供了有利條件。狀態(tài)機(jī)容易構(gòu)成性能良好的同步時序邏輯模塊,在大規(guī)模邏輯電路設(shè)計(jì)可以抑制冒險(xiǎn)現(xiàn)象。狀態(tài)機(jī)的VHDL表述豐富多樣,程序?qū)哟畏置?,結(jié)構(gòu)清晰,簡單易懂,便于于排錯、修改和模塊移植。由于在VHDL中,一個狀態(tài)機(jī)可以有多個進(jìn)程,一個結(jié)構(gòu)體中可以有多個狀態(tài)機(jī),而一個單獨(dú)的狀態(tài)機(jī)(多個并行運(yùn)行的狀態(tài)機(jī))以順序方式所能完成的運(yùn)算與控制方面的工作與一個CPU的功能類似,所以在高速運(yùn)算和控制方面,狀態(tài)機(jī)更有其巨大的優(yōu)勢。由于狀態(tài)機(jī)是由純硬件電路構(gòu)成,它的運(yùn)行不依賴軟件指令的逐條執(zhí)行,在設(shè)計(jì)中能使用各種完整的容錯技術(shù),并且當(dāng)狀態(tài)機(jī)進(jìn)入非法狀態(tài)時會從中跳出,此過程耗時很少,所以就可靠性而言,狀態(tài)機(jī)的優(yōu)勢也是十分明顯的。三、一般狀態(tài)機(jī)的VHDL設(shè)計(jì)用VHDL設(shè)計(jì)的狀態(tài)機(jī)有多種形式,但最一般和最常用的狀態(tài)機(jī)通常包含說明部分,主控時序進(jìn)程,主控組合進(jìn)程和輔助進(jìn)程幾個部分。1、說明部分說明部分中使用type語句定義新的數(shù)據(jù)類型,此數(shù)據(jù)類型為枚舉型,其元素通常都用狀態(tài)機(jī)的狀態(tài)名來定義。狀態(tài)變量定義為信號,便于信息傳遞,并將狀態(tài)變量的數(shù)據(jù)類型定義為含有既定狀態(tài)元素的新定義的數(shù)據(jù)類型。說明部分一般放在結(jié)構(gòu)體的architecture和begin之間。2、主控時序進(jìn)程主控時序進(jìn)程是指負(fù)責(zé)狀態(tài)機(jī)運(yùn)轉(zhuǎn)和在時鐘驅(qū)動下負(fù)責(zé)狀態(tài)轉(zhuǎn)換的進(jìn)程。狀態(tài)機(jī)隨外部時鐘信號以同步時序方式工作,因此,狀態(tài)機(jī)中必須包含一個對工作時鐘信號敏感的進(jìn)程,作為狀態(tài)機(jī)的“驅(qū)動泵”,當(dāng)時鐘發(fā)生跳變時,狀態(tài)機(jī)的狀態(tài)才會發(fā)生改變。當(dāng)時鐘的有效跳變到來時,時序進(jìn)程將代表次態(tài)的信號next_state中的內(nèi)容送入現(xiàn)態(tài)信號current_state中,而next_state中的內(nèi)容完全由其他進(jìn)程根據(jù)實(shí)際情況而定,此進(jìn)程中往往也包括一些清零或置位的控制信號。3、主控組合進(jìn)程主控組合進(jìn)程的任務(wù)是根據(jù)外部輸入的控制信號(包括來自狀態(tài)機(jī)外部的信號和來自狀態(tài)機(jī)內(nèi)部其他非主控的組合或時序進(jìn)程的信號)和當(dāng)前狀態(tài)值確定下一狀態(tài)next_state的取向,以及確定對外輸出或?qū)?nèi)其他進(jìn)程輸出控制信號的內(nèi)容。4、輔助進(jìn)程輔助進(jìn)程是用于配合狀態(tài)機(jī)工作的組合或時序進(jìn)程。在一般狀態(tài)機(jī)的設(shè)計(jì)過程中,為了能獲得可綜合的,高效的VHDL狀態(tài)機(jī)描述,建議使用枚舉數(shù)據(jù)類型來定義狀態(tài)機(jī)的狀態(tài),并使用多進(jìn)程方式來描述狀態(tài)機(jī)的內(nèi)部邏輯。例如可使用兩個進(jìn)程來描述,個進(jìn)程描述時序邏輯,包括狀態(tài)寄存器的工作和寄存器狀態(tài)的輸出,另一個進(jìn)程描述組合邏輯,包括進(jìn)程間狀態(tài)值的傳遞邏輯以及狀態(tài)轉(zhuǎn)換值的輸出。必要時還可以引入第三個進(jìn)程完成其它的邏輯功能。第三章 五層電梯控制器的設(shè)計(jì)原理本設(shè)計(jì)嘗試用硬件描述語言VHDL來實(shí)現(xiàn)對三層電梯的控制,源程序經(jīng)A1tera公司的MAX+plus II軟件仿真,保證了設(shè)計(jì)的正確性。使用VHDL進(jìn)行電梯控制器的設(shè)計(jì),主要就是對電梯軟件部分的設(shè)計(jì),使用VHDL中的邏輯關(guān)系建立電梯的升降模式,開門,關(guān)門達(dá)到動作,而外部器件的硬件設(shè)備基本上保持不變。使用VHDL硬件描述語言設(shè)計(jì)電梯控制器可以為電梯實(shí)現(xiàn)智能控制奠定基礎(chǔ)。第一節(jié) 五層電梯控制器實(shí)現(xiàn)的功能及運(yùn)行規(guī)則電梯一層入口處設(shè)有上升請求開關(guān),二,三,四層入口處設(shè)有上、下請求開關(guān),五層入口處設(shè)有下降請求開關(guān),電梯內(nèi)部設(shè)有顧客到達(dá)樓層的停站請求開關(guān)。每層電梯入口處設(shè)有位置指示裝置及電梯運(yùn)行模式 (上升或下降)指示裝置。電梯初始狀態(tài)為一層開門狀態(tài)。電梯每秒上升(下降)一層樓。電梯到達(dá)需要停止的樓層,經(jīng)過1秒電梯門打開,開門指示燈亮,開門4秒后,電梯門關(guān)閉(開門指示燈滅),電梯繼續(xù)運(yùn)行,直至執(zhí)行完最后一個請求信號后停留在當(dāng)前層。電梯需要寄存器來記憶電梯內(nèi)外所有請求,并按照電梯運(yùn)行規(guī)則按順序響應(yīng),每個請求信號保留至執(zhí)行后消除。電梯的運(yùn)行規(guī)則:當(dāng)電梯處于上升模式時,只響應(yīng)比電梯所在位置高的上樓請求信號和停站請求信號,由下而上逐個執(zhí)行,直到最后一個上樓請求執(zhí)行完畢;如果高層有下樓請求,則直接上升到有下樓請求的最高層,然后進(jìn)入下降模式。當(dāng)電梯處于下降模式時則與上升模式相反。第二節(jié) 五層電梯控制器的綜合設(shè)計(jì)一、五層電梯控制器的設(shè)計(jì)思路電梯控制器設(shè)計(jì)兩個進(jìn)程相互配合,狀態(tài)機(jī)進(jìn)程作為主要進(jìn)程,信號燈控制進(jìn)程作為輔助進(jìn)程。根據(jù)電梯的實(shí)際工作情況,可以為狀態(tài)機(jī)設(shè)置十個狀態(tài),它們分別是“電梯停在一層”“開門”“關(guān)門”“開門等待第一秒”“開門等待第二秒”“開門等待第三秒”“開門等待第四秒”“上升”“下降”和“停止”。由于電梯每秒上升或下降一層,則可以用周期為1s的信號來作為電梯狀態(tài)轉(zhuǎn)換的觸發(fā)時鐘。狀態(tài)機(jī)進(jìn)程中的很多判斷條件是以信號燈控制進(jìn)程產(chǎn)生的信號燈信號為依據(jù),而信號燈控制進(jìn)程中信號燈的熄滅又是由狀態(tài)機(jī)進(jìn)程中傳出的信號來控制。五層電梯控制器的設(shè)計(jì)主要是對實(shí)體和結(jié)構(gòu)體的設(shè)計(jì),它的VHDL描述模塊流程如圖3.1所示:元件庫的說明定義實(shí)體結(jié)構(gòu)體端口狀態(tài)機(jī)進(jìn)程信號燈控制進(jìn)程結(jié)束按鍵信號燈圖3.1 五層電梯控制器的VHDL描述模塊流程二、實(shí)體設(shè)計(jì)實(shí)體設(shè)計(jì)即是對端口名、端口模式及數(shù)據(jù)類型的說明。首先考慮輸入端口,一個異步復(fù)位端口“reset”,用于當(dāng)電梯出現(xiàn)非正常情況時回到初始狀態(tài);在電梯外部,一層入口處設(shè)有上升請求端,二,三,四層入口處設(shè)有上升和下降請求端,五層入口處設(shè)有下降請求端;在電梯內(nèi)部,應(yīng)設(shè)有各層停站請求端口;一個電梯時鐘輸入端口,它提供周期為1s的時鐘信號,用作電梯狀態(tài)轉(zhuǎn)換的觸發(fā)時鐘;還有一個頻率很高的按鍵時鐘輸入端口。其次考慮輸出端口,當(dāng)有各層上升或下降請求時,各層入口處應(yīng)該有端口顯示請求是否被響應(yīng),有請求時端口輸出邏輯1,被執(zhí)行后則恢復(fù)成邏輯0;同樣的,電梯內(nèi)部也應(yīng)有各層停站請求是否被響應(yīng)的指示端口;一個開關(guān)門指示端口,當(dāng)門開著時,它為邏輯1,門關(guān)著時,則為邏輯0;還需要端口來顯示電梯所處的位置和模式(上升或下降)。三、結(jié)構(gòu)體設(shè)計(jì)在結(jié)構(gòu)體中,首先說明了狀態(tài)機(jī)設(shè)置的十個狀態(tài),分別是:電梯停在1層(stopon1)、開門(dooropen)、關(guān)門(doorclose)、開門等待第1秒(doorwait1)、開門等待第2秒(doorwait2)、開門等待第3秒(doorwait3)、開門等待第4秒(doorwait4)、上升(up)、下降(down)和停止(stop)。在結(jié)構(gòu)體最前端用如下的定義語句,來定義狀態(tài)機(jī)。type lift_state is(stopon1,dooropen,doorclose,doorwait1,doorwait2,doorwait3,doorwait4,up,down,stop);接著描述電梯內(nèi)部功能實(shí)現(xiàn),在結(jié)構(gòu)體中設(shè)計(jì)了兩個進(jìn)程,一個狀態(tài)機(jī)進(jìn)程(ctrlift),它是以reset和liftclk作為敏感信號,控制電梯的狀態(tài)轉(zhuǎn)移;另外一個是信號燈控制進(jìn)程(ctrlight),它是以reset和buttonclk作為敏感信號,控制寄存信號的邏輯值。在狀態(tài)機(jī)進(jìn)程中,電梯關(guān)門后根據(jù)信號燈的情況,來決定下一個狀態(tài)是上升、下降還是停止;在信號燈控制進(jìn)程中,由于使用了專門的頻率較高的按鍵時鐘,所以使得按鍵的靈敏度大,但是時鐘頻率不能過高,否則容易使按鍵過于靈敏,而信號燈的熄滅是由狀態(tài)機(jī)進(jìn)程中傳出clearup和cleardn信號來控制。四、VHDL源代碼語法的簡單說明本程序設(shè)計(jì)調(diào)用了ieee庫,ieee庫是VHDL設(shè)計(jì)中最為常用的庫,它包含有ieee標(biāo)準(zhǔn)的程序包和其他一些支持工業(yè)標(biāo)準(zhǔn)的程序包。本設(shè)計(jì)采用std-logic-1164、std-logic-unsigned、std-logic-arith程序包。以關(guān)鍵詞entity引導(dǎo),end entity threelift結(jié)尾的部分是程序的實(shí)體部分。VHDL的實(shí)體描述了電路器件的外部情況,本設(shè)計(jì)定義了關(guān)于三層電梯控制器用到的各類時鐘、異步復(fù)位按鍵、信號燈指示端口、電梯的請求端口。它描述了端口模式主要有in、buffer、out,以及各端口信號的數(shù)據(jù)類型主要有std-logic、std-logic-vector、integer。(3)以關(guān)鍵詞architecture引導(dǎo),end architecture one結(jié)尾的語句部分是結(jié)構(gòu)體部分,結(jié)構(gòu)體描述電路器件的內(nèi)部邏輯功能。五、VHDL源代碼library ieee; -庫的說明use ieee.std_logic_1164.all; -程序包的說明use ieee.std_logic_unsigned.all;use ieee.std_logic_arith.all;entity threelift is -實(shí)體 port(buttonclk:in std_logic; -按鍵時鐘信號 liftclk:in std_logic; -電梯時鐘信號 reset:in std_logic; -異步復(fù)位端口 f1upbutton:in std_logic; -一層上升請求端口 f2upbutton:in std_logic; -二層上升請求端口 f2dnbutton:in std_logic; -二層下降請求端口 f3dnbutton:in std_logic; -三層下降請求端口 stop1button:in std_logic; -一層停站請求端口 stop2button:in std_logic; -二層停站請求端口 stop3button:in std_logic; -三層停站請求端口 position:buffer integer range 1 to 3; -電梯位置信號 udsig:buffer std_logic; -電梯模式(上升或下降)信號 fuplight,fdnlight,stoplight:buffer std_logic_vector(3 downto 1); -上升、下降、停站請求寄存信號doorlight:out std_logic; -開關(guān)門信號 dout1:out std_logic_vector(3 downto 0); end entity threelift;architecture one of threelift is -結(jié)構(gòu)體type lift_state is -定義十個狀態(tài)(stopon1,dooropen,doorclose,doorwait1,doorwait2,doorwait3,doorwait4,up,down,stop);signal mylift:lift_state;signal clearup:std_logic; -上升和停站請求清除信號signal cleardn:std_logic; -下降和停站請求清除信號beginctrlift:process(reset,liftclk) -狀態(tài)機(jī)進(jìn)程variable pos:integer range 3 downto 1;beginif reset=1 then -異步復(fù)位,電梯的初始狀態(tài)為一層開門狀態(tài) mylift=stopon1; clearup=0; cleardn doorlight=1; position=1; pos:=1; mylift mylift clearup=0; cleardn=0; mylift mylift mylift -關(guān)門,判定電梯下一個運(yùn)行方式 doorlight=0; if udsig=1 then -電梯處在上升模式 if position=3 then if fuplight=000 and fdnlight=000 and stoplight=000 then -沒有請求信號時,電梯停在當(dāng)前層 udsig=0; mylift=doorclose; elsif fdnlight(3)=1 or stoplight(3)=1 then -本層有請求信號是,電梯開門 udsig=0; mylift=dooropen; else -否則下降 udsig=0; mylift=down; end if; elsif position=2 then if fuplight=000 and fdnlight=000 and stoplight=000 then udsig=1; mylift=doorclose;elsif fuplight(2)=1 or stoplight(2)=1 then -本層有上升或停站請求時時,電梯開門 udsig=1; mylift=dooropen; elsif fuplight=000 and stoplight=000 and fdnlight=010 then -只有二層有下降請求時,電梯開門 udsig=0; mylift=dooropen; elsif stoplight(3)=1 or fdnlight(3)=1 then -三層有停站請求或下降請求,則上升 udsig=1; mylift=up; else udsig=0; mylift=down; end if; elsif position=1 then if fuplight=000 and fdnlight=000 and stoplight=000 then udsig=1; mylift=doorclose; elsif stoplight(1)=1 or fuplight(1)=1 then udsig=1; mylift=dooropen; else udsig=1; mylift=up; end if; end if; elsif udsig=0 then -電梯處在下降模式 if position=3 then if fuplight=000 and fdnlight=000 and stoplight=000 then udsig=0; mylift=doorclose; elsif fdnlight(3)=1 or stoplight(3)=1 then udsig=0; mylift=dooropen; else udsig=0; mylift=down; end if; elsif position=2 then if fuplight=000 and fdnlight=000 and stoplight=000 then udsig=0; mylift=doorclose; elsif fdnlight(2)=1 or stoplight(2)=1 then udsig=0; mylift=dooropen; elsif fdnlight=000 and stoplight=000 and fuplight=010 then udsig=1; mylift=dooropen; elsif fuplight(1)=1 or stoplight(1)=1 then -一層有停站請求或上升請求,則下降 udsig=0; mylift=down; else udsig=1; mylift=up; end if; elsif position=1 then if fuplight=000 and fdnlight=000 and stoplight=000 then udsig=1; mylift=doorclose; elsif stoplight(1)=1 or fuplight(1)=1 then udsig=1; mylift=dooropen; else udsig=1; mylift -電梯處于上升狀態(tài) position=position+1; -電梯樓層數(shù)加一 pos:=pos+1; if pos3 and (stoplight(pos)=1 or fuplight(pos)=1) then mylift=stop; -電梯在一層或二層,本層有停站或上升請求時,則停止 elsif pos=3 and (stoplight(pos)=1 or fdnlight(pos)=1) then mylift=stop;-電梯處在三層,并且有三層停站或下降請求,則停止 else mylift -電梯處在下降狀態(tài) position1 and (stoplight(pos)=1 and fdnlight(pos)=1) then mylift=stop; elsif pos=1 and (stoplight(pos)=1 or fuplight(pos)=1) then mylift=stop; else mylift mylift doorlight=1; if udsig=1 then if position3 and (fuplight(pos)=1 or stoplight(pos)=1) then clearup=1; -清除當(dāng)前層上升和停站請求 else clearup=1; cleardn1 and (fdnlight(pos)=1 or stoplight(pos)=1) then cleardn=1; -清除當(dāng)前層下降和停站請求 else clearup=1; cleardn=1; end if; end if; mylift=doorwait1; end case; end if;end if;end process ctrlift;ctrlight:process(reset,buttonclk) -信號燈控制進(jìn)程beginif reset=1 then -復(fù)位,寄存信號清零 fuplight=000; fdnlight=000; stoplight=000;else if buttonclkevent and buttonclk=1 then if clearup=1 then -上升和停站請求清零 fuplight(position)=0; stoplight(position)=0; else if f1upbutton=1 then -記憶各層上升請求 fuplight(1)=1; elsif f2upbutton=1 then fuplight(2)=1; end if; end if; if cleardn=1 then -下降和停站請求清零 fdnlight(position)=0; stoplight(position)=0; else if f2dnbutton=1 then -記憶各層下降請求 fdnlight(2)=1; elsif f3dnbutton=1 then fdnlight(3)=1; end if; end if; if stop1button=1 then -記憶各層停站請求 stoplight(1)=1; elsif stop2button=1 then stoplight(2)=1; elsif stop3button=1 then stoplight(3)=1; end if; end if;end if;end process ctrlight;process(position) -樓層顯示進(jìn)程beginif position=1 then dout1=0001;elsif position=2 then dout1=0010;elsif position=3 then dout1=0011;end if;end process;end architecture one;第三節(jié) 本章小結(jié)本設(shè)計(jì)運(yùn)用有限狀

注意事項(xiàng)

本文(基于vhdl三層電梯控制器的設(shè)計(jì)1說明書.doc)為本站會員(good****022)主動上傳,裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。 若此文所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng)(點(diǎn)擊聯(lián)系客服),我們立即給予刪除!

溫馨提示:如果因?yàn)榫W(wǎng)速或其他原因下載失敗請重新下載,重復(fù)下載不扣分。




關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!