2023年eda時(shí)鐘設(shè)計(jì)(5篇)_第1頁(yè)
2023年eda時(shí)鐘設(shè)計(jì)(5篇)_第2頁(yè)
2023年eda時(shí)鐘設(shè)計(jì)(5篇)_第3頁(yè)
2023年eda時(shí)鐘設(shè)計(jì)(5篇)_第4頁(yè)
2023年eda時(shí)鐘設(shè)計(jì)(5篇)_第5頁(yè)
已閱讀5頁(yè),還剩12頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

本文格式為Word版,下載可任意編輯——2023年eda時(shí)鐘設(shè)計(jì)(5篇)在日常的學(xué)習(xí)、工作、生活中,確定對(duì)各類(lèi)范文都很熟悉吧。寫(xiě)范文的時(shí)候需要注意什么呢?有哪些格式需要注意呢?接下來(lái)我就給大家介紹一下優(yōu)秀的范文該怎么寫(xiě),我們一起來(lái)看一看吧。

eda時(shí)鐘設(shè)計(jì)篇一

:instd_logic;數(shù)碼管使能

clk

:instd_logic;時(shí)鐘信號(hào)

rst

:instd_logic;復(fù)位信號(hào)

sec_1

:outstd_logic_vector(3downto0);秒高位

sec_01:outstd_logic_vector(3downto0);秒低位

min_1

:outstd_logic_vector(3downto0);分高位

min_01:outstd_logic_vector(3downto0);分低位

hou_1

:outstd_logic_vector(3downto0);時(shí)高位

hou_01:outstd_logic_vector(3downto0);時(shí)低位

bee

:outstd_logic);endclock;

architecturebehoviorofclockissignalsec_high:std_logic_vector(3downto0);

signalsec_low

:std_logic_vector(3downto0);signalmin_high:std_logic_vector(3downto0);

signalmin_low:std_logic_vector(3downto0);signalhou_high:std_logic_vector(3downto0);

signalhou_low

:std_logic_vector(3downto0);

signalcy_min

:std_logic;分進(jìn)位

signalcy_hou

:std_logic;時(shí)進(jìn)位

signallogo_1

:std_logic;標(biāo)志

signallogo_2

:std_logic;

signallogo_3

:std_logic;

beginmiaolow:process(clk,rst,en)

begin

if(rst='0')

then

sec_low=“1000〞;附給秒低位為8

elsif(clk'eventandclk='1'anden='1')then檢測(cè)時(shí)鐘上升沿及數(shù)碼管使能端

if(sec_low=“1001〞)then

sec_low=“0000〞;

else

sec_low=sec_low+“0001〞;加一

endif;

endif;

endprocessmiaolow;

logo_1=sec_low(3)andsec_low(0);

sec_01=sec_low;秒個(gè)位放8

miaohigh:process(clk,rst)

begin

if(rst='0')

then

sec_high=“0101〞;

elsif(clk'eventandclk='1')then檢測(cè)時(shí)鐘上升沿

if(logo_1='1')then

if(sec_high=“0101〞)then

sec_high=“0000〞;

cy_min='1';

else

sec_high=sec_high+“0001〞;加一

cy_min='0';

endif;

endif;

endif;

endprocessmiaohigh;

sec_1=sec_high;秒十位放5

fenlow:process(cy_min,rst,en)

begin

if(rst='0')

then若復(fù)位位為0

min_low=“1000〞;則分個(gè)位為8

elsif(cy_min'eventandcy_min='1'anden='1')then檢測(cè)時(shí)鐘上升沿及數(shù)碼管使能端

if(min_low=“1001〞)then

min_low=“0000〞;

else

min_low=min_low+“0001〞;加一

endif;

endif;

endprocessfenlow;

logo_2=min_low(3)andmin_low(0);

min_01=min_low;分個(gè)位放8

fenhigh:process(cy_min,rst)

begin

if(rst='0')

then

min_high=“0101〞;

elsif(cy_min'eventandcy_min='1')then檢測(cè)分進(jìn)位上升沿

if(logo_2='1')then

if(min_high=“0101〞)then若分十位為5

min_high=“0000〞;

cy_hou='1';時(shí)進(jìn)位為1

else

min_high=min_high+“0001〞;加一

cy_hou='0';

endif;

endif;

endif;

endprocessfenhigh;

min_1=min_high;分十位放5

shilow:process(cy_hou,rst,en)

begin

if(rst='0')

then

hou_low=“1001〞;

elsif(cy_hou'eventandcy_hou='1'

anden='1')then檢測(cè)時(shí)進(jìn)位上升沿及數(shù)碼管使能端

if(hou_low=“1001〞)then若時(shí)低位為9

hou_low=“0000〞;

elsif(hou_high=“0010〞andhou_low=“0011〞)then若時(shí)十位為2,個(gè)位為3

hou_low=“0000〞;

else

hou_low=hou_low+“0001〞;加一

endif;

endif;

endprocessshilow;

logo_3=hou_low(3)andhou_low(0);

hou_01=hou_low;時(shí)個(gè)位放3

shihigh:process(cy_hou,rst)

begin

if(rst='0')

then

hou_high=“0001〞;

elsif(cy_hou'eventandcy_hou='1')then檢測(cè)時(shí)進(jìn)位上升沿

if(hou_high=“0010〞andhou_low=“0011〞)then若時(shí)十位為2,時(shí)個(gè)位為3

hou_high=“0000〞;

elsif(logo_3='1')then

hou_high=hou_high+“0001〞;加一

endif;

endif;

endprocessshihigh;

bee_clock:process(clk)

begin

if(clk'eventandclk='1')then檢測(cè)時(shí)鐘上升沿

if(sec_high=“0101〞andsec_low=“1001〞

andmin_high=“0101〞andmin_low=“1001〞)then

bee='1';

else

bee='0';

endif;

endif;

endprocessbee_clock;

hou_1=hou_high;時(shí)十位放2

endbehovior;

libraryieee;use;use;use;entityclock1isport(en

:instd_logic;

clk

:instd_logic;

rst

:instd_logic;sec_1

:outstd_logic_vector(3downto0);

sec_01:outstd_logic_vector(3downto0);min_1

:outstd_logic_vector(3downto0);

min_01:outstd_logic_vector(3downto0);hou_1

:outstd_logic_vector(3downto0);

hou_01:outstd_logic_vector(3downto0);

bee

:outstd_logic);endclock1;

architecturebehoviorofclock1issignalsec_high:std_logic_vector(3downto0);

signalsec_low

:std_logic_vector(3downto0);signalmin_high:std_logic_vector(3downto0);

signalmin_low:std_logic_vector(3downto0);signalhou_high:std_logic_vector(3downto0);

signalhou_low

:std_logic_vector(3downto0);

signalcy_min

:std_logic;

signalcy_hou

:std_logic;signallogo_1

:std_logic;

signallogo_2

:std_logic;

signallogo_3

:std_logic;

beginmiaolow:process(clk,rst,en)

begin

if(rst='0')

then

sec_low=“1000〞;

elsif(clk'eventandclk='1'anden='1')then

if(sec_low=“1001〞)then

sec_low=“0000〞;

else

sec_low=sec_low+“0001〞;

endif;

endif;

endprocessmiaolow;

logo_1=sec_low(3)andsec_low(0);

sec_01=sec_low;

miaohigh:process(clk,rst)

begin

if(rst='0')

then

sec_high=“0101〞;

elsif(clk'eventandclk='1')then

if(logo_1='1')then

if(sec_high=“0101〞)then

sec_high=“0000〞;

cy_min='1';

else

sec_high=sec_high+“0001〞;

cy_min='0';

endif;

endif;

endif;

endprocessmiaohigh;

sec_1=sec_high;fenlow:process(cy_min,rst,en)

begin

if(rst='0')

then

min_low=“1000〞;

elsif(cy_min'eventandcy_min='1'anden='1')then

if(min_low=“1001〞)then

min_low=“0000〞;

else

min_low=min_low+“0001〞;

endif;

endif;

endprocessfenlow;

logo_2=min_low(3)andmin_low(0);

min_01=min_low;

fenhigh:process(cy_min,rst)

begin

if(rst='0')

then

min_high=“0101〞;

elsif(cy_min'eventandcy_min='1')then

if(logo_2='1')then

if(min_high=“0101〞)then

min_high=“0000〞;

cy_hou='1';

else

min_high=min_high+“0001〞;

cy_hou='0';

endif;

endif;

endif;

endprocessfenhigh;

min_1=min_high;shilow:process(cy_hou,rst,en)

begin

if(rst='0')

then

hou_low=“1001〞;

elsif(cy_hou'eventandcy_hou='1'anden='1')then

if(hou_low=“1001〞)then

hou_low=“0000〞;

elsif(hou_high=“0010〞andhou_low=“0011〞)then

hou_low=“0000〞;

else

hou_low=hou_low+“0001〞;

endif;

endif;

endprocessshilow;

logo_3=hou_low(3)andhou_low(0);

hou_01=hou_low;

shihigh:process(cy_hou,rst)

begin

if(rst='0')

then

hou_high=“0001〞;

elsif(cy_hou'eventandcy_hou='1')then

if(hou_high=“0010〞andhou_low=“0011〞)then

hou_high=“0000〞;

elsif(logo_3='1')then

hou_high=hou_high+“0001〞;

endif;

endif;

endprocessshihigh;

bee_clock:process(clk)

begin

if(clk'eventandclk='1')then

if(sec_high=“0101〞andsec_low=“1001〞

andmin_high=“0101〞andmin_low=“1001〞)then

bee='1';

else

bee='0';

endif;

endif;

endprocessbee_clock;

hou_1=hou_high;

endbehovior;

eda時(shí)鐘設(shè)計(jì)篇二

eda實(shí)現(xiàn)多功能數(shù)字鐘

實(shí)

驗(yàn)報(bào)告

專(zhuān)業(yè)班級(jí):

學(xué)生姓名:

學(xué)生學(xué)號(hào):

目錄

一、內(nèi)容摘要

二、試驗(yàn)要求

三、各底層模塊設(shè)計(jì)

四、總體方案

五、心得體會(huì)

一、試驗(yàn)內(nèi)容

利用quartusii軟件,結(jié)合所學(xué)的數(shù)字電路的知識(shí)設(shè)計(jì)一個(gè)24時(shí)多功能數(shù)字鐘,具有正常分、秒計(jì)時(shí),動(dòng)態(tài)顯示的功能。分析整個(gè)電路的工作原理,分別說(shuō)明各子模塊的設(shè)計(jì)原理和調(diào)試、仿真、編程的過(guò)程。

二、試驗(yàn)任務(wù):

用fpga器件和eda技術(shù)實(shí)現(xiàn)多功能數(shù)字鐘的設(shè)計(jì)

已知條件:

1、max+plus軟件

2、fpga試驗(yàn)開(kāi)發(fā)裝置

基本功能:

1、以數(shù)字形式顯示時(shí)、分、秒的時(shí)間;

2、小時(shí)計(jì)數(shù)器為24進(jìn)制;

3、分、秒計(jì)數(shù)器為60進(jìn)制。

三、底層模塊設(shè)計(jì)(電路原理圖及仿真)

1、小時(shí)計(jì)數(shù)器為24進(jìn)制電路原理圖

仿真圖

封裝圖

2、分、秒計(jì)時(shí)器都為60進(jìn)制電路原理圖

仿真圖

封裝圖

四、總體方案

依照上述試驗(yàn)要求,本次電子數(shù)字時(shí)鐘試驗(yàn),通過(guò)兩個(gè)模60計(jì)數(shù)器及一個(gè)模24計(jì)數(shù)器級(jí)聯(lián)既可以實(shí)現(xiàn)計(jì)時(shí)模塊。

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論