<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è) > EDA/PCB > 設計應用 > VHDL密碼控制系統的設計和仿真

VHDL密碼控制系統的設計和仿真

作者:米保良,吳國增 時(shí)間:2008-12-15 來(lái)源:國外電子元器件 收藏

1 引言

本文引用地址:http://dyxdggzs.com/article/90228.htm

  隨著(zhù)電子技術(shù)和ASIC技術(shù)的發(fā)展.數字系統設計向速度快、容量大、體積小、重量輕的趨勢發(fā)展。目前數字系統設計可直接面向用戶(hù)需求,根據系統的行為和功能要求,自上而下地逐層完成設計過(guò)程:描述、綜合、優(yōu)化、仿真與驗證,以及器件生成。該設計過(guò)程除系統行為和功能描述外,其他設計幾乎都由計算機自動(dòng)完成,從而實(shí)現電子設計自動(dòng)化()。這樣大大地縮短了系統的設計周期,適應當今品種多、批量小的電子市場(chǎng)要求,提高了產(chǎn)品的競爭能力。由于電子設計自動(dòng)化是采用硬件描述語(yǔ)言描述硬件電路,所以研究硬件語(yǔ)言及仿真、綜合等技術(shù)是電子設計自動(dòng)化的首要任務(wù)。本文提出一種利用MAX+plusⅡ開(kāi)發(fā)軟件環(huán)境和硬件描述語(yǔ)言的密碼控制系統設計方案,并對系統的各個(gè)模塊進(jìn)行仿真分析。

2 語(yǔ)言特點(diǎn)和基本結構

  語(yǔ)言即超高速集成電路硬件描述語(yǔ)言,它是一種用形式化方法描述數字電路和設計數字邏輯系統的語(yǔ)言,特別適合描述復雜的組合邏輯、組運算、狀態(tài)機和真值表。與傳統的門(mén)級設計方法相比,VHDL語(yǔ)言具有以下特點(diǎn):

  設計層次高,用于較復雜的運算時(shí)能盡快發(fā)現問(wèn)題,縮短產(chǎn)品上市時(shí)間,從而成本降低;與工藝無(wú)關(guān),獨立實(shí)現,修改方便,系統描述能力強;可讀性好,有利于交流,適合文檔保存;VHDL標準、規范并且可移植性強:VHDL類(lèi)型多且支持用戶(hù)自定義類(lèi)型,也支持自頂向下的設計方法和多種電路設計。

  VHDL語(yǔ)言程序設計的基本語(yǔ)法結構如下:

3 系統設計分析

  密碼控制系統包括鍵盤(pán)、控制器和顯示器等三部分,如圖1所示。

  4位密碼控制系統設計能實(shí)現如下功能:密碼驗證功能:即用戶(hù)使用鍵盤(pán)輸入4位密碼后,按#鍵確認。如果輸入密碼正確則輸出000l;如果密碼錯誤則輸出00000密碼更改功能:當用戶(hù)輸入密碼正確后,可在此基礎上更改密碼,即繼續輸入4位密碼,按+鍵確認,該輸入為新密碼。如果密碼更改成功,則輸出1000;作為整體,控制模塊有2個(gè)輸入,即時(shí)鐘信號和鍵盤(pán)按鍵信號;兩個(gè)輸出,即鍵盤(pán)掃描信號和結果顯示信號,具體如圖l所示。該控制模塊總共包括分頻子模塊、鍵盤(pán)掃描子模塊、鍵盤(pán)譯碼子模塊、控制子模塊以及輸出顯示子模塊,下面分別對各個(gè)模塊進(jìn)行編程仿真。

3.1 分頻子模塊

  分頻子模塊將時(shí)鐘分頻為系統所需頻率的時(shí)鐘信號。通過(guò)觸發(fā)器的級聯(lián)實(shí)現分頻電路模塊,且級聯(lián)的觸發(fā)器級數不同,分頻也不同。級數越多頻率越低,并按照一定的規律而降低,即頻率隨級數的增加以分比為l/2的速率降低。本系統設計采用VHDL語(yǔ)言實(shí)現分頻,其仿真如圖2所示。由圖2可以看出,CLK—A、CLK—B、VLK—B0和CLK—Bl的頻率成倍遞減。

3.2 鍵盤(pán)掃描子模塊

  該模塊通過(guò)分頻子模塊提供的分頻信號,逐周期掃描鍵盤(pán)的每一行,其信號分別是lll0、110l、lOll和0111,如此循環(huán).即逐周期選中鍵盤(pán)的第一列、第二列、第三列和第四列,實(shí)現仿真如圖3所示。由圖3看出,CLK_SCAN 4位信號中0的位置代表鍵盤(pán)的列位置。

3.3 譯碼子模塊

  利用鍵盤(pán)掃描子模塊,讀取鍵盤(pán)的輸入信號,判斷哪一個(gè)按鍵被按下,仿真如圖4所示。由圖4看出,_KEYBOARD是掃描周期,C是鍵盤(pán)按鍵后的輸出信號值;FLAG_NUMB表示按下的是數字鍵(值為1),OUT_NUMB表示按下的鍵號,其中15表示功能鍵(#鍵和*鍵);其余數字即為其相應號碼鍵。FLAG FUNC表示按下的是功能鍵(值為1);OUT FUNC表示其按鍵值,0100表示*鍵,000l表示#鍵,1000表示數字鍵。

3.4 控制子模塊

  由于控制子模塊無(wú)法單獨仿真,只能和其他模塊一起才能工作,所以無(wú)單獨仿真圖。其功能是獲取鍵盤(pán)輸入,按規則進(jìn)行判斷并完成相應操作(正確、錯誤、設置密碼、輸出結果等)。

3.5 總體仿真

  圖5所示為系統總體仿真圖,以下說(shuō)明圖5中的信號含義:CLK_SCAN為鍵盤(pán)掃描信號,指出當前掃描鍵盤(pán)的第幾行;KEY_IN為鍵盤(pán)按鍵輸入信號,指出當前掃描行的哪一按鍵被按下:SHOW為判斷結果,0表示密碼不匹配、1表示密碼正確、8表示修改密碼成功。ACC為內部移位寄存器。臨時(shí)存儲4個(gè)4位二進(jìn)制數,用于暫存用戶(hù)輸入的密碼;REG為內部移位寄存器,臨時(shí)存儲4個(gè)4位二進(jìn)制數,用于保存密碼;NC為內部信號,用于表示當前已輸入數據數.或者表示用戶(hù)按數字鍵的次數。

  根據圖5所示的總體仿真圖,可導出密碼控制系統電路,如圖6所示。

4 結語(yǔ)

  本系統設計是通過(guò)自動(dòng)調用MAX-7000S系列的EPM7128SLC84-6型EPGA器件來(lái)實(shí)現。并且通過(guò)系統總體仿真圖能看出設計的密碼控制系統完全符合要求。



關(guān)鍵詞: VHDL EDA

評論


相關(guān)推薦

技術(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>