freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于vhdl三層電梯控制器的設(shè)計(jì)1說明書-文庫(kù)吧

2025-04-17 18:48 本頁(yè)面


【正文】 態(tài)以及這些狀態(tài)之間的轉(zhuǎn)移和動(dòng)作等 行為的數(shù)學(xué)模型 ,它是 由一組狀態(tài)、一個(gè)初始狀態(tài)、輸入和根據(jù)輸入及現(xiàn)有狀態(tài)轉(zhuǎn)換為下一個(gè)狀態(tài)的轉(zhuǎn)換函數(shù)組成 。 有限狀態(tài)機(jī)是一種基本的、簡(jiǎn)單的、重要的形式化技術(shù),在軟件設(shè)計(jì)中常常采用。它是描述一個(gè)由有限個(gè)獨(dú)立狀態(tài)組成的過程,這些狀態(tài)可以互相遷移,直到最終離開這個(gè)過程。采用有限狀態(tài)機(jī)可以使設(shè)計(jì)過程直觀簡(jiǎn)單易于理解, 隨著硬件設(shè)計(jì)軟件化趨勢(shì)的加劇,在運(yùn)用 VHDL硬件描述語(yǔ)言設(shè)計(jì)數(shù)字系統(tǒng)時(shí),利用有限狀態(tài)機(jī)成為了可靠方便的途徑??刂破髯鳛殡娮酉到y(tǒng)設(shè)計(jì)的核心部分,在 EDA 軟件平臺(tái)上,借助有限狀態(tài)機(jī)表示方法符合人的邏輯思維的特征, 將控制功能用有限狀態(tài)機(jī)來建模實(shí)現(xiàn),有許多優(yōu)越之處,以使 FSM 成為大型控制電路設(shè)計(jì)的有力工具。 一、 建立 狀態(tài)機(jī) 的基本原理 和基本方法 狀態(tài)機(jī)的基本原理 除了輸人信號(hào)、輸出信號(hào)外,狀態(tài)機(jī)還包含一組寄存器記憶內(nèi)部狀態(tài)。狀態(tài)機(jī)寄存器的下一個(gè)狀態(tài)及輸出,不僅同輸入信號(hào)有關(guān),而且還與寄存器的當(dāng)前狀態(tài)有關(guān),狀態(tài)機(jī)有兩個(gè)主要部分:即組合邏輯和寄存器部分。組合邏輯部分又可分為狀態(tài)譯碼器和輸出譯碼器,狀態(tài)譯碼器確定狀態(tài)機(jī)的下一個(gè)狀態(tài),即確定狀態(tài)機(jī)的激勵(lì)方程,輸出譯碼器確定狀態(tài)機(jī)的輸出,即確定狀態(tài)機(jī)的輸出方程。 在實(shí)際的應(yīng)用 中,根據(jù)有限狀態(tài)機(jī)是否使用輸入信號(hào),設(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)和輸入信號(hào)的函數(shù)。大多數(shù)實(shí)用的狀態(tài)機(jī)都是同步的時(shí)序電路,由時(shí)鐘信號(hào)觸發(fā)進(jìn)行狀態(tài)的轉(zhuǎn)換。時(shí)鐘信號(hào)同所有的邊沿觸發(fā)的狀態(tài)寄存器和輸出寄存器相連,使?fàn)顟B(tài)的改變發(fā)生在時(shí)鐘的上升或下降沿。 在數(shù)字系統(tǒng)中, 那些輸出取決于過去的輸入和當(dāng)前的輸入的部分都可以作為 11 有限狀態(tài)機(jī)。有限狀態(tài)機(jī)的全部“歷史”都反映在當(dāng)前狀態(tài)上。當(dāng)給 FSM 一個(gè)新的輸入 時(shí), 在時(shí)鐘的觸發(fā)下,狀態(tài)就會(huì)發(fā)生轉(zhuǎn)移。 建立 狀態(tài)機(jī)的方法 數(shù)字系統(tǒng)中 ,傳統(tǒng)的狀態(tài)機(jī)建立方法主要有 狀 態(tài)轉(zhuǎn)移圖 和狀態(tài)轉(zhuǎn)移表 兩種 。 狀態(tài)轉(zhuǎn)移圖: 如圖 所示,圖中每個(gè)橢圓表示狀態(tài)機(jī)的一個(gè)狀態(tài),而 箭頭表示狀態(tài)之間的轉(zhuǎn)移方向 ,引起 狀態(tài)轉(zhuǎn)換的輸入信號(hào)及當(dāng)前輸出表示在 箭頭上。 狀態(tài)轉(zhuǎn)移表: 如表 所示, 表中的行列出了全部可能的輸入信號(hào)和內(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ù)雜性會(huì)顯著增加。 表 狀態(tài)轉(zhuǎn)移表 現(xiàn)態(tài) 輸入 次態(tài) 輸出 AD I0Im AD O0On 如果能夠畫出狀態(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),分別適合于不同場(chǎng)合 ,并且這種傳統(tǒng)的設(shè)計(jì)方法十分復(fù)雜。 利用 VHDL 設(shè)計(jì)狀態(tài)機(jī),不必進(jìn)行繁雜的狀態(tài)分配,狀態(tài)表繪制和化簡(jiǎn),更不必畫出設(shè)計(jì)電路和搭試硬件電路測(cè)試邏輯功能,這 些工作可以全由 EDA 工具完成。用 VHDL 語(yǔ)言設(shè)計(jì)狀態(tài)機(jī),是通過簡(jiǎn)便地定義狀態(tài)變量,將狀態(tài)描述狀態(tài) A 狀態(tài) B 狀態(tài) C 狀態(tài) D 輸入 /出 輸入 /出 輸入 /出 輸入 /出 圖 狀態(tài)轉(zhuǎn)移圖 12 成進(jìn)程, 每個(gè)狀態(tài)均可表達(dá)為 casewhen 語(yǔ)句結(jié)構(gòu)中的一條 case 語(yǔ)句,狀態(tài)的轉(zhuǎn)移通過 ifthenelse 語(yǔ)句實(shí)現(xiàn),并輸出信號(hào)以控制其他進(jìn)程,從而實(shí)現(xiàn)所需功能。 二、 狀態(tài)機(jī)的優(yōu)越性 ○ 1 狀態(tài)機(jī)的工作方式是根據(jù)控制信號(hào)按照預(yù)先設(shè)定的狀態(tài)進(jìn)行順序運(yùn)行的,它是純硬件數(shù)字系統(tǒng)中的順序控制電路, 狀態(tài)機(jī) 克服了純硬件數(shù)字系統(tǒng)順序方式控制不靈活的缺點(diǎn)。 ○ 2 由 于 狀態(tài)機(jī)的結(jié)構(gòu)模式相對(duì)簡(jiǎn)單 ,設(shè)計(jì)方案相對(duì)固定,特別是可以定義符號(hào)化枚舉類型的狀態(tài),這一切都是 VHDL 綜合器盡可能發(fā)揮其強(qiáng)大的優(yōu)化功能提供了有利條件。 ○ 3 狀態(tài)機(jī)容易構(gòu)成性能良好的同步時(shí)序邏輯模塊 ,在大規(guī)模邏輯電路設(shè)計(jì)可以抑制冒險(xiǎn)現(xiàn)象。 ○ 4 狀態(tài)機(jī)的 VHDL 表述豐富多樣 ,程序?qū)哟畏置鳎Y(jié)構(gòu)清晰,簡(jiǎn)單易懂,便于于排錯(cuò)、修改和模塊移植。 ○ 5 由于在 VHDL 中,一個(gè)狀態(tài)機(jī)可以有多個(gè)進(jìn)程,一個(gè)結(jié)構(gòu)體中可以有多個(gè)狀態(tài)機(jī),而 一個(gè)單獨(dú)的狀態(tài) 機(jī)(多個(gè)并行運(yùn)行的 狀態(tài)機(jī) )以順序方式所能完成的運(yùn)算與控制方面的 工作 與一個(gè) CPU 的功能類似,所以 在高速運(yùn)算和控制方面,狀態(tài)機(jī)更有其巨大的優(yōu)勢(shì)。 ○ 6 由于狀態(tài)機(jī)是由純硬件電路構(gòu)成,它的運(yùn)行不依賴軟件指令的逐條執(zhí)行,在 設(shè)計(jì)中能使用各種完整的容錯(cuò)技術(shù) , 并且當(dāng)狀態(tài)機(jī)進(jìn)入非法狀態(tài)時(shí)會(huì)從中跳出,此過程耗時(shí)很少,所以 就可靠性而言,狀態(tài)機(jī)的優(yōu)勢(shì)也是十分明顯的。 三、 一般狀態(tài)機(jī)的 VHDL 設(shè)計(jì) 用 VHDL 設(shè)計(jì)的狀態(tài)機(jī)有多種形式,但最一般和最常用的狀態(tài)機(jī)通常包含說明部分,主控時(shí)序 進(jìn)程 ,主控組合 進(jìn)程 和輔 助進(jìn)程 幾個(gè) 部分。 說明部分 13 說明部分中使用 type 語(yǔ)句定義新的數(shù)據(jù)類型,此數(shù)據(jù)類型為枚舉型,其元素通常都用狀態(tài)機(jī)的狀態(tài)名來定義。狀態(tài)變量定義為信號(hào),便于信息傳遞,并將狀態(tài)變量的數(shù)據(jù)類型定義為含有既定狀態(tài)元素的新定義的數(shù)據(jù)類型。說明部分一般放在結(jié)構(gòu)體的 architecture 和 begin 之間。 主控時(shí)序進(jìn)程 主控時(shí)序進(jìn)程 是指負(fù)責(zé)狀態(tài)機(jī)運(yùn)轉(zhuǎn)和在時(shí)鐘驅(qū)動(dòng) 下負(fù)責(zé)狀態(tài) 轉(zhuǎn)換的進(jìn)程。狀態(tài)機(jī)隨外部時(shí)鐘信號(hào)以同步 時(shí)序 方式工作, 因此,狀態(tài)機(jī)中必須包含一個(gè)對(duì)工作時(shí)鐘信號(hào) 敏感的進(jìn)程,作為狀態(tài)機(jī)的“驅(qū)動(dòng)泵”,當(dāng)時(shí)鐘發(fā)生跳變時(shí) ,狀態(tài)機(jī)的狀態(tài)才會(huì)發(fā)生改變。 當(dāng)時(shí)鐘的有效跳變到來時(shí),時(shí)序進(jìn)程將代表次態(tài)的信號(hào)next_state 中的內(nèi)容送入現(xiàn)態(tài)信號(hào) current_state 中,而 next_state 中的內(nèi)容完全由其他進(jìn)程根據(jù)實(shí)際情況而定,此進(jìn)程中往往也包括一些清零或置位的控制信號(hào)。 主控組合進(jìn)程 主控組合進(jìn)程的任務(wù)是 根據(jù)外部輸入的控制信號(hào)( 包括來自狀態(tài)機(jī)外部的信號(hào)和來自狀態(tài)機(jī)內(nèi)部其他非主控的組合或時(shí)序進(jìn)程的信號(hào) ) 和 當(dāng)前狀態(tài)值確定下一狀態(tài) next_state 的取向 ,以及 確定對(duì)外輸出 或?qū)?nèi) 其他進(jìn)程輸出控制信號(hào)的內(nèi)容。 輔助進(jìn)程 輔助 進(jìn)程 是 用于配合狀態(tài)機(jī)工作的組合或 時(shí)序進(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)部邏輯。例如可使用兩個(gè)進(jìn)程來描述, — 個(gè)進(jìn)程描述時(shí)序邏輯,包括狀態(tài)寄存器的工作和寄存器狀態(tài)的輸出,另一個(gè)進(jìn)程描述組合邏輯,包括進(jìn)程間狀態(tài)值的傳遞邏輯以及狀態(tài)轉(zhuǎn)換值的輸出。必要時(shí)還可以引入第三個(gè)進(jìn)程完成其它的邏輯功能。 第三章 五 層電梯控制器的 設(shè)計(jì)原理 本 設(shè)計(jì)嘗試用硬件描述語(yǔ)言 VHDL 來實(shí)現(xiàn)對(duì) 三層電梯的控制, 源程序 經(jīng) 14 A1tera 公司的 MAX+plus II 軟件仿真, 保證 了 設(shè)計(jì)的正確性。使用 VHDL 進(jìn)行電梯控制器的設(shè)計(jì),主要就是對(duì)電梯軟件部分的設(shè)計(jì),使用 VHDL 中的邏輯關(guān)系建立電梯的升降模式,開門,關(guān)門達(dá)到動(dòng)作,而外部器件的硬件設(shè)備基本上保持不變。使用 VHDL 硬件描述語(yǔ)言設(shè)計(jì)電梯控制器可以為電梯實(shí)現(xiàn)智能控制奠定基礎(chǔ)。 第一節(jié) 五 層電梯控制器 實(shí)現(xiàn)的功能及運(yùn)行規(guī)則 ○ 1 電梯一層入口處設(shè)有上升請(qǐng)求開關(guān),二 ,三,四 層入口處設(shè)有上、下請(qǐng)求開關(guān), 五 層入口處設(shè)有下降請(qǐng)求開關(guān), 電梯內(nèi) 部 設(shè)有顧客到達(dá) 樓層 的停站 請(qǐng)求開關(guān)。 ○ 2 每層 電梯入口處 設(shè)有 位置指示裝置及電梯運(yùn)行 模式 (上升或下降 )指示裝置。 ○ 3 電梯初始狀態(tài)為一層開門狀態(tài)。 ○ 4 電梯每秒 上 升 (下 降 )一層樓。 ○ 5 電梯到達(dá) 需要停止的 樓層,經(jīng)過 1秒電梯門打開,開門指示燈亮,開門4秒后,電梯門關(guān)閉 (開門指示燈滅 ),電梯繼續(xù) 運(yùn) 行,直至執(zhí)行完最后一個(gè)請(qǐng)求信號(hào)后停留在當(dāng)前層。 ○ 6 電梯需要寄存器來 記憶電梯內(nèi)外所有請(qǐng)求,并按照電梯運(yùn)行 規(guī)則按順序響應(yīng),每個(gè)請(qǐng)求信號(hào)保留至執(zhí)行后消除。 ○ 7 電梯 的 運(yùn)行規(guī)則 : 當(dāng)電梯處于上升模式時(shí),只響應(yīng)比電梯所在位置高的上樓請(qǐng)求信號(hào) 和停站請(qǐng)求信號(hào) ,由下而上逐個(gè)執(zhí)行,直到最后一個(gè)上樓請(qǐng)求執(zhí)行完畢;如果高層有下樓請(qǐng)求,則直接 上 升到 有 下樓請(qǐng)求的最高層,然后進(jìn)入下降模式。當(dāng)電梯處于下降模式時(shí)則與上升模式相反。 第二節(jié) 五 層電梯控制器的綜合設(shè)計(jì) 15 一、 五 層電梯控制器的設(shè)計(jì)思路 電梯控制器設(shè)計(jì)兩個(gè)進(jìn)程相互配合,狀態(tài)機(jī)進(jìn)程作為主要進(jìn)程,信號(hào)燈控制進(jìn)程作為輔助進(jìn)程。 根據(jù)電梯的實(shí)際工作情況,可以為狀 態(tài)機(jī)設(shè)置 十個(gè)狀態(tài),它們分別是“電梯停在一層”“開門”“關(guān)門”“開門等待第一秒”“開門等待第二秒”“ 開門等待第三秒”“開門等待第四秒”“上升”“下降”和“停止” 。由于電梯每秒上升或下降一層,則可以用周期為 1s 的信號(hào)來作為電梯狀態(tài)轉(zhuǎn)換的觸發(fā)時(shí)鐘。 狀態(tài)機(jī)進(jìn)程中的很多判斷條件是以信號(hào)燈 控制 進(jìn)程產(chǎn)生的信號(hào)燈信號(hào)為依據(jù) ,而信號(hào)燈 控制 進(jìn)程中信號(hào)燈的熄滅又是由狀態(tài)機(jī)進(jìn)程中傳出的信號(hào)來控制。 五 層電梯控制器的設(shè)計(jì)主要是對(duì)實(shí)體 和 結(jié)構(gòu)體的設(shè)計(jì),它的 VHDL 描述模塊流程如 圖 : 二、 實(shí)體設(shè)計(jì) 實(shí)體設(shè)計(jì)即是 對(duì)端口名、端口模式及數(shù)據(jù)類型的說明。首先考慮輸入端口,一個(gè)異步復(fù)位端口 “reset”,用于當(dāng)電梯出現(xiàn)非正常情況時(shí)回到初始狀態(tài); 在電梯外部,一層入口處設(shè)有上升請(qǐng)求端,二 ,三,四 層入口處設(shè)有上升和下降請(qǐng)求端,五 層入口處設(shè)有下降請(qǐng)求端;在電梯內(nèi)部,應(yīng)設(shè)有各層停站請(qǐng)求端口;一個(gè)電梯時(shí)鐘 輸入 端口 ,它提供 周期為 1s 的時(shí)鐘信號(hào),用作電梯狀態(tài)轉(zhuǎn)換的觸發(fā)時(shí)鐘 ;元件庫(kù)的說明 定義實(shí)體 結(jié)構(gòu)體 端口 狀態(tài)機(jī)進(jìn)程 信號(hào)燈控制進(jìn)程 結(jié)束 按鍵信號(hào)燈 圖 五 層電梯控制器的 VHDL 描述模塊流程 16 還有一個(gè)頻率很高的按鍵時(shí)鐘輸入端口。 其次 考慮輸出端口, 當(dāng)有 各層 上升 或 下降請(qǐng)求時(shí), 各層入口處 應(yīng)該有端口顯示請(qǐng)求是否被響應(yīng),有請(qǐng)求時(shí) 端口輸出邏輯‘ 1’,被執(zhí)行后則恢復(fù) 成 邏輯‘ 0’ ; 同樣的,電梯內(nèi)部也應(yīng)有各層停站請(qǐng)求是否被響應(yīng)的 指示 端口 ;一個(gè)開關(guān)門指示端口,當(dāng)門開著時(shí),它為邏輯‘ 1’,門關(guān)著時(shí),則為邏輯‘ 0’;還需要端口來顯示電梯所處的位置和 模式(上升或下降)。 三、 結(jié)構(gòu)體設(shè)計(jì) 在結(jié)構(gòu)體中,首先說明了狀態(tài)機(jī)設(shè)置 的 十個(gè)狀態(tài), 分別是:電梯停在 1 層(stopon1)、開門 (dooropen)、關(guān)門 (doorclose)、開門等待第 1秒 (doorwait1)、開門等待第 2 秒 (doorwait2)、開門等待第 3 秒 (doorwait3)、開門等待第 4 秒(doorwait4)、上升 (up)、下降 (down)和停止 (stop)。在 結(jié)構(gòu)體最前端用 如下的定義語(yǔ)句,來定義狀態(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ì)了兩個(gè)進(jìn)程, 一個(gè)狀態(tài)機(jī)進(jìn)程( ctrlift) , 它是以 reset 和 liftclk 作為敏感信號(hào),控制電梯的狀態(tài)轉(zhuǎn)移; 另外一個(gè)是信號(hào)燈控制進(jìn)程 ( ctrlight),它是以 reset 和 buttonclk 作為敏感信號(hào) , 控制寄存信號(hào)的邏輯值 。在狀態(tài)機(jī)進(jìn)程中, 電梯關(guān)門后根據(jù) 信號(hào)燈的情況,來決定下一個(gè)狀態(tài)是上升、下降還是停止; 在信號(hào)燈控制進(jìn)程中,由于使用了專門的頻率較高的按鍵時(shí)鐘,所以使得按鍵的靈敏度大,但是時(shí)鐘頻率不能過高,否則容易使按鍵過于靈敏,而信號(hào)燈的熄滅是由狀態(tài)機(jī)進(jìn)程中傳出 clearup 和 cleardn 信號(hào)來控制。 四、 VHDL 源代碼語(yǔ)法 的 簡(jiǎn)單說明 ○ 1 本程序設(shè)計(jì)調(diào)用了 ieee 庫(kù), ieee 庫(kù)是 VHDL 設(shè)計(jì)中最為常用的庫(kù),它 包含有 ieee 標(biāo)準(zhǔn)的程序包和其他一些支持工業(yè)標(biāo)準(zhǔn)的程序包。本 設(shè)計(jì)采用 17 stdlogic116 stdlogicunsigned、 stdlogicarith 程序包。 ○ 2 以關(guān)鍵詞 entity 引導(dǎo), end entity threelift 結(jié)尾的 部分 是程序的 實(shí)體 部分 。VHDL 的實(shí)體描述了電路器件的外部情況 , 本設(shè)計(jì)定義了關(guān)于三層電梯控制器用到的各類時(shí)鐘、異步復(fù)位按鍵、信號(hào)燈指示 端口 、電梯的請(qǐng)求 端口 。 它描述 了 端口模式主要 有 in、 buffer、 out,以 及 各端口信號(hào)的數(shù)據(jù)類型主要 有 stdlogic、stdlogicvector、 integer。 ( 3) 以關(guān)鍵詞 architecture 引導(dǎo), end architecture one 結(jié)尾的語(yǔ)句部分 是 結(jié)構(gòu)體部分, 結(jié)構(gòu)體描述電路器件的內(nèi)部邏輯功能 。 五、 VHDL 源代碼 library ieee。
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1