加入星計(jì)劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長(zhǎng)期合作伙伴
立即加入

EDA程序設(shè)計(jì)-萬(wàn)年歷設(shè)計(jì)(VHDL語(yǔ)言)

10/04 17:14
762
服務(wù)支持:
技術(shù)交流群

完成交易后在“購(gòu)買成功”頁(yè)面掃碼入群,即可與技術(shù)大咖們分享疑惑和經(jīng)驗(yàn)、收獲成長(zhǎng)和認(rèn)同、領(lǐng)取優(yōu)惠和紅包等。

虛擬商品不可退

當(dāng)前內(nèi)容為數(shù)字版權(quán)作品,購(gòu)買后不支持退換且無(wú)法轉(zhuǎn)移使用。

加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論
放大
實(shí)物圖
相關(guān)方案
  • 方案介紹
    • 二?? 設(shè)計(jì)流程:
    • 三 部分VHDL程序
  • 相關(guān)文件
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

一?? 課程設(shè)計(jì)的目的及意義

1.0設(shè)計(jì)目的

本次設(shè)計(jì)的目的就是在掌握計(jì)算機(jī)組成原理理論的基礎(chǔ)上,了解EDA技術(shù),掌握VHDL硬件描述語(yǔ)言的設(shè)計(jì)方法和思想,通過(guò)學(xué)習(xí)的VHDL語(yǔ)言結(jié)合電子電路的設(shè)計(jì)知識(shí)理論聯(lián)系實(shí)際,掌握所學(xué)的課程知識(shí),例如本課程設(shè)計(jì)就是基于所學(xué)的計(jì)算機(jī)原理中的數(shù)控分頻器基礎(chǔ)之上的,通過(guò)本課程設(shè)計(jì),達(dá)到鞏固和綜合運(yùn)用計(jì)算機(jī)原理中的知識(shí),理論聯(lián)系實(shí)際,鞏固所學(xué)理論知識(shí),并且提高自己通過(guò)所學(xué)理論分析、解決計(jì)算機(jī)實(shí)際問(wèn)題的能力。進(jìn)一步加深對(duì)計(jì)算機(jī)原理以及數(shù)字電路應(yīng)用技術(shù)方面的了解與認(rèn)識(shí),進(jìn)一步熟悉數(shù)字電路系統(tǒng)設(shè)計(jì)、制作與調(diào)試的方法和步驟

1.1設(shè)計(jì)意義

??鞏固所學(xué)課堂知識(shí),理論聯(lián)系實(shí)際,提高分析、解決計(jì)算機(jī)技術(shù)實(shí)際問(wèn)題的獨(dú)立工作能力。為了進(jìn)一步了解計(jì)算機(jī)工作組成原理與系統(tǒng)結(jié)構(gòu),深入學(xué)習(xí)EDA技術(shù),用VHDL技術(shù),用VHDL語(yǔ)言去控制將會(huì)使我們對(duì)本專業(yè)知識(shí)可以更好地掌握。熟悉QUARUS II軟件的應(yīng)用。熟悉EDA實(shí)驗(yàn)開(kāi)發(fā)系統(tǒng)的基本使用。學(xué)習(xí)用VHDL基本單元電路的時(shí)間應(yīng)用。進(jìn)一步掌握EDA的多層次設(shè)計(jì)方法

1.2 設(shè)計(jì)要求

    1. Quartus中編寫(xiě)VHDL程序?qū)崿F(xiàn)年、月、日、時(shí)、分、秒各模塊的功能。

(2) 將各模塊在原理圖中連接起來(lái)實(shí)現(xiàn)百年歷計(jì)時(shí)功能。

(3) 將年、月、日和時(shí)、分、秒兩種模式分別在試驗(yàn)箱模式7下顯示,并設(shè)置鍵8為模式的切換鍵,鍵3 為調(diào)整數(shù)鍵,鍵6為在當(dāng)前模式下切換調(diào)整位鍵。將各端口引腳綁定好并下載到實(shí)驗(yàn)箱實(shí)現(xiàn)其功能,觀察是否能實(shí)現(xiàn)相應(yīng)功能效果,如是否可以進(jìn)位,是否能判斷閏年等等。

二?? 設(shè)計(jì)流程:

?2.0? 萬(wàn)年歷原理

秒、分是60進(jìn)制,時(shí)是24進(jìn)制,日31天由月1.3.5.7.8.10.12控制,日28/29由2月和潤(rùn)年控制,日30由月4.6.9.11控制。原理如下圖:

2.1 原理框圖

根據(jù)實(shí)驗(yàn)要求,截得實(shí)驗(yàn)原理框圖如下:

2.2 原理框圖中各子模塊的VHDL語(yǔ)言表述及生成模塊框圖:

2.3 VHDL設(shè)計(jì)流程

(1)設(shè)計(jì)輸入根據(jù)電路設(shè)計(jì)所提出的要求,將程序輸入到VHDL編輯器中區(qū)編輯。

(2)功能及模擬用VHDL,模擬器對(duì)編輯后的程序進(jìn)行模擬,如果達(dá)不到設(shè)計(jì)要求,則可以重新修改程序,直到通過(guò)功能模擬。

(3)邏輯綜合與優(yōu)化,將通過(guò)功能模擬的程序放到VHDL編譯器中,進(jìn)行邏輯、綜合與優(yōu)化。

三 部分VHDL程序

3.0? 60進(jìn)制計(jì)數(shù)器

library ieee;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY CNT60 IS

PORT(CLK:IN STD_LOGIC;

CQ1,CQ2:OUT STD_LOGIC_VECTOR (3 DOWNTO 0);

COUT:OUT STD_LOGIC);

END CNT60;

ARCHITECTURE behav OF CNT60 IS

BEGIN

PROCESS(CLK)

VARIABLE Q1,Q2: STD_LOGIC_VECTOR (3 DOWNTO 0);

BEGIN

IF CLK'EVENT AND CLK='1' THEN

Q1:=Q1+1;

IF Q1>9 THEN Q1:="0000";Q2:=Q2+1;

END;

3.1? ?24進(jìn)制計(jì)數(shù)器

library ieee;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY cnt24 IS

PORT(CLK:IN STD_LOGIC;

CQ1,CQ2:OUT STD_LOGIC_VECTOR (3 DOWNTO 0);

PROCESS(CLK)

VARIABLE Q1,Q2: STD_LOGIC_VECTOR (3 DOWNTO 0);

BEGIN

IF CLK'EVENT AND CLK='1' THEN

Q1:=Q1+1;

IF Q1>9 THEN Q1:="0000";Q2:=Q2+1;

END IF;

IF Q2=2? AND Q1=4 THEN Q1:="0000";Q2:="0000";COUT<='1';

ELSE COUT<='0';

END IF;

END IF;

CQ1<=Q1;CQ2<=Q2;

END PROCESS;

END;

3.2 天計(jì)數(shù)模塊

Library ieee;

USE IEEE.STD_LOGIC _UNSIGNED.ALL;

USE IEEE.STD_LOGIC _1164.all;

Entity day is

Port( clk : in std_logic;

a,b : in std_logic;

T1,T2 : out std_logic_vector(3 downto 0);

PROCESS(clk,a,b)

begin

IF CLK'EVENT AND CLK='1' THEN

Q1<=Q1+1;

IF Q1=9 THEN Q1<="0000";Q2<=Q2+1;

end if;

ab<=a&b;

case ab is

when"00"=>

if Q2=3 AND Q1=1 THEN

  • 有需要資料的可了解一下.docx

相關(guān)推薦

電子產(chǎn)業(yè)圖譜