第一篇:任務書11-數字鐘設計
天津城市建設學院
課程設計任務書
2012 —2013 學年第 1 學期
專業班級 課程設計名稱:EDA技術及應用
設計題目:數字鐘設計
完成期限:自 2013 年 1月 31 日至2013年2月7日共 1周一.課程設計依據
在掌握常用數字電路原理和技術的基礎上,根據EDA技術及應用課程所學知識,利用硬件描述語言(VHDL或VerilogHDL),EDA軟件(QuartusⅡ)和硬件開發平臺(達盛試驗箱CycloneⅡFPGA)進行初步數字系統設計。
二.課程設計內容
設計一個數字鐘,要求用數碼管分別顯示時、分、秒的計數,同時可以進行時間設置,并且設置的時間要求閃爍。
三.課程設計要求
1.要求獨立完成設計任務。
2.課程設計說明書封面格式要求見《天津城市建設學院課程設計教學工作規范》附表1
3.課程設計的說明書要求簡潔、通順,計算正確,圖紙表達內容完整、清楚、規范。
4.測試要求:根據題目的特點,采用相應的時序仿真或者在實驗系統上觀察結果。
5.課設說明書要求:
1)說明題目的設計原理和思路、采用方法及設計流程。
2)系統框圖、VHDL語言設計清單或原理圖。
3)對各子模塊的功能以及各子模塊之間的關系作較詳細的描述。
4)詳細說明調試方法和調試過程。
5)說明測試結果:仿真時序圖和結果顯示圖。并對其進行說明和分析。
指導教師(簽字):
教研室主任(簽字):
批準日期:2013年1 月 28日
第二篇:簡易數字鐘-任務書(精選)
鄭州科技學院
數字電子技術課程設計任務書
專業11通信工程班級 2班學號 201151050姓名 XXX
一、設計題目數字電子時鐘設計
二、設計任務與要求
1.顯示時、分、秒,可以24小時制,具有記憶功能。
2.具有校時功能,分別對小時和分鐘單獨校時,對分鐘校時的時候,最大分鐘不向小時進位;
3.為了保證計時準確,由晶體振蕩器提供標準時間的基準信號。
三、參考文獻
[1] 閻石.數字電子技術基礎[M].北京:高等教育出版社,2006
[2] 陳先龍.電子技術基礎實驗[M].北京:國防工業出版社,2006
[3] 陳光明.電子技術課程設計與綜合實訓[M].北京:北京航空航天大學出版社,2007
[4] 謝自美.電子線路設計·實驗·測試[M].武漢:華中科技大學出版社,2006
四、設計時間至年月日
指導教師簽名:
年月日
第三篇:數字鐘課設任務書
課程設計任務書
一、設計課題
數字鐘
二、設計時間
2011年 6 月 20日至2011年 6 月 24日
三、設計內容及要求
1、設計要求
1)時間以24小時為一個周期; 2)能顯示時、分、秒,24小時制;
3)有校時功能,可以分別對時及分進行單獨校時,使其校正到標準時間; 4)計時過程具有報時功能,當時間到達整點前5秒進行蜂鳴報時; 5)為了保證計時的穩定及準確須由晶體振蕩器提供表針時間基準信號。6)在完成上述設計內容的基礎上,可以自行設計一些附加功能。注意:硬件資源的節約,否則器件內資源會枯竭。
2、工作任務與要求
1)搜集有關資料,進行方案設計,畫出總體設計框圖,說明搶答器由哪些相對獨立的功能模塊組成,標出各個模塊之間互相聯系,并以文字對原理作輔助說明。
2)進行電路參數分析、論證,以及電路可靠性分析。3)設計各個功能模塊的電路圖,加上原理說明。
4)在驗證各個功能模塊基礎上,對整個電路的元器件和布線,進行合理布局,畫出總體電路圖。
3、設計報告正文內容要求
1)設計目的。2)設計指標。3)設計方案及論證。
4)畫出設計的原理框圖,并要求說明該框圖的工作過程及每個模塊的功能。5)畫出各功能模塊的電路圖,加上原理說明(例如搶答門及控制電路,鎖存器及譯碼顯示原理等)。
6)畫出總布局接線圖(集成塊按實際布局位置畫,關鍵的連接應單獨畫出,集成塊的引腳須按實際位置畫,并注明名稱。)
7)元器件清單。
胡靜波
第四篇:EDA數字鐘設計
數字鐘
一、實驗目的
1、掌握多位計數器相連的設計方法。
2、掌握十進制,六進制,二十四進制計數器的設計方法。
3、掌握揚聲器的驅動及報時的設計。
4、LED燈的花樣顯示。
5、掌握CPLD技術的層次化設計方法。
二、實驗器材
1、主芯片Altera EPF10K10LC84-4。2、8個LED燈。
3、揚聲器。4、4位數碼顯示管。5、8個按鍵開關(清零,調小時,調分鐘)。
三、實驗內容
根據電路特點,運用層次設計概念設計。將此設計任務分成若干模塊,規定每一模塊的功能和各模塊之間的接口。
1、時計時程序: library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;
entity hour is
port(reset,clk : in std_logic;
daout : out std_logic_vector(7 downto 0));end hour;
architecture behav of hour is
signal count : std_logic_vector(3 downto 0);signal counter : std_logic_vector(3 downto 0);begin
p1: process(reset,clk)
begin
if reset='0' then
count<=“0000”;
counter<=“0000”;
elsif(clk'event and clk='1')then
if(counter<2)then
if(count=9)then
count<=“0000”;
counter<=counter + 1;
else
count<=count+1;
end if;
else
if(count=3)
then
counter<=“0000”;
else
count<=count+1;
count<=“0000”;
end if;
end if;
end if;
end process;
daout(7 downto 4)<=counter;daout(3 downto 0)<=count;
end behav;
2、分計時程序: library ieee;
use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;
entity minute is
port(reset,clk,sethour: in std_logic;
daout : out std_logic_vector(7 downto 0);
enhour : out std_logic);end minute;
architecture behav of minute is
signal count : std_logic_vector(3 downto 0);signal counter : std_logic_vector(3 downto 0);signal carry_out1 : std_logic;signal carry_out2 : std_logic;begin
p1: process(reset,clk)begin
if reset='0' then
count<=“0000”;
counter<=“0000”;
elsif(clk'event and clk='1')then
if(counter<5)then
if(count=9)then
count<=“0000”;
counter<=counter + 1;
else
count<=count+1;
end if;
carry_out1<='0';
else
if(count=9)then
count<=“0000”;
counter<=“0000”;
carry_out1<='1';
else
count<=count+1;
carry_out1<='0';
end if;
end if;end if;end process;
p2: process(clk)begin
if(clk'event and clk='0')then
if(counter=0)then
if(count=0)then
carry_out2<='0';
end if;
else
carry_out2<='1';
end if;end if;end process;
daout(7 downto 4)<=counter;daout(3 downto 0)<=count;enhour<=(carry_out1 and carry_out2)or sethour;end behav;
3、秒計時程序: library ieee;
use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;
entity second is
port(reset,clk,setmin : in std_logic;
daout : out std_logic_vector(7 downto 0);
enmin : out std_logic);end second;
architecture behav of second is
signal count : std_logic_vector(3 downto 0);signal counter : std_logic_vector(3 downto 0);signal carry_out1 : std_logic;signal carry_out2 : std_logic;begin
p1: process(reset,clk)begin
if reset='0' then
count<=“0000”;
counter<=“0000”;
elsif(clk'event and clk='1')then
if(counter<5)
then
if
(count=9)
then
count<=“0000”;
counter<=counter + 1;
else
count<=count+1;
end if;
carry_out1<='0';
else
if(count=9)
then
count<=“0000”;
counter<=“0000”;
carry_out1<='1';
else
count<=count+1;
carry_out1<='0';
end if;
end if;end if;end process;daout(7 downto
4)<=counter;
daout(3
downto
0)<=count;enmin<=carry_out1 or setmin;end behav;6
4、alert程序: library ieee;
use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;
entity alert is port(clkspk : in std_logic;
second : in std_logic_vector(7 downto 0);
minute : in std_logic_vector(7 downto 0);
speak : out std_logic;
lamp : out std_logic_vector(8 downto 0));end alert;
architecture behav of alert is signal divclkspk2 : std_logic;begin p1: process(clkspk)begin
if(clkspk'event and clkspk='1')then
divclkspk2<=not divclkspk2;
end if;end process;p2: process(second,minute)begin if(minute=“01011001”)then case second is
when “01010001”=>lamp<=“000000001”;speak<=divclkspk2;when “01010010”=>lamp<=“000000010”;speak<='0';when “01010011”=>lamp<=“000000100”;speak<=divclkspk2;when “01010100”=>lamp<=“000001000”;speak<='0';when “01010101”=>lamp<=“000010000”;speak<=divclkspk2;when “01010110”=>lamp<=“000100000”;speak<='0';when “01010111”=>lamp<=“001000000”;speak<=divclkspk2;when “01011000”=>lamp<=“010000000”;speak<='0';when “01011001”=>lamp<=“100000000”;speak<=clkspk;when others=>lamp<=“000000000”;end case;end if;end process;end behav;8
5、seltime程序 library ieee;
use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;
entity seltime is port(ckdsp : in std_logic;
reset : in std_logic;
second : in std_logic_vector(7 downto 0);
minute : in std_logic_vector(7 downto 0);
hour : in std_logic_vector(7 downto 0);
daout : out std_logic_vector(3 downto 0);
sel : out std_logic_vector(2 downto 0));end seltime;
architecture behav of seltime is signal sec : std_logic_vector(2 downto 0);begin
process(reset,ckdsp)begin
if(reset='0')then sec<=“000”;
elsif(ckdsp'event and ckdsp='1')then
sec<=“000”;else
sec<=sec+1;end if;end if;end process;
process(sec,second,minute,hour)begin case sec is
when “000”=>daout<=second(3 downto 0);when “001”=>daout<=second(7 downto 4);when “011”=>daout<=minute(3 downto 0);when “100”=>daout<=minute(7 downto 4);when “110”=>daout<=hour(3 downto 0);when “111”=>daout<=hour(7 downto 4);when others=>daout<=“1111”;end case;end process;
if(sec=“111”)then
sel<=sec;end behav;
6、deled程序: LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;use ieee.std_logic_unsigned.all;
ENTITY deled IS PORT(S: IN STD_LOGIC_VECTOR(3 DOWNTO 0);
A,B,C,D,E,F,G,H: OUT STD_LOGIC);END deled;
ARCHITECTURE BEHAV OF deled IS
SIGNAL DATA:STD_LOGIC_VECTOR(3 DOWNTO 0);SIGNAL DOUT:STD_LOGIC_VECTOR(7 DOWNTO 0);BEGIN DATA<=S;PROCESS(DATA)BEGIN
CASE DATA IS
WHEN “0000”=>DOUT<=“00111111”;WHEN “0001”=>DOUT<=“00000110”;WHEN “0010”=>DOUT<=“01011011”;WHEN “0011”=>DOUT<=“01001111”;WHEN “0100”=>DOUT<=“01100110”;WHEN “0101”=>DOUT<=“01101101”;WHEN “0110”=>DOUT<=“01111101”;WHEN “0111”=>DOUT<=“00000111”;WHEN “1000”=>DOUT<=“01111111”;WHEN “1001”=>DOUT<=“01101111”;WHEN “1010”=>DOUT<=“01110111”;WHEN “1011”=>DOUT<=“01111100”;WHEN “1100”=>DOUT<=“00111001”;WHEN “1101”=>DOUT<=“01011110”;WHEN “1110”=>DOUT<=“01111001”;WHEN “1111”=>DOUT<=“01000000”;WHEN OTHERS=>DOUT<=“00000000”;END CASE;END PROCESS;H<=DOUT(7);
G<=DOUT(6);
F<=DOUT(5);
E<=DOUT(4);D<=DOUT(3);C<=DOUT(2);B<=DOUT(1);A<=DOUT(0);END BEHAV;
7、頂層原理圖:
四、實驗結果 頂層原理圖仿真波形:
五、心得體會
1、系統設計進要行充分的方案論證,不可盲目就動手去做;
2、實驗中對每一個細節部分都要全面思考,要對特殊情況進行處理;
3、對于數字系統,要考慮同步、異步問題;
4、數字電路的理論分析要結合時序圖;
5、遇到問題,要順藤摸瓜,分析清楚,不可胡亂改動,每做一次改變都要有充分的理由;
6、模塊化設計方法的優點在于其簡潔性,但是在實驗設計中也發現,在實驗最終電路確定之前,要盡量減少模塊重疊嵌套,因為在總的電路敲定之前,電路還不成熟,很多地方需要改進,如果在開始時就進行多層模塊化,里層模塊電路的修改將影響其外層的全部電路,這樣就是牽一發動全身,很顯然,這樣將導致電 數字鐘課程設計 電路設計的低效,所以在設計過程中,一定要盡量減少超過兩層的模塊;
7、遇到問題花了很長時間沒有解決掉,要學會想他人請教,別人的不經意一點,可能就能把自己帶出思維死區。
第五篇:多功能數字鐘設計
課程設計任務書
課程設計名稱學生姓名專業班級設計題目多功能數字鐘設計
一、課程設計目的1、綜合運用EDA技術,獨立完成一個課題的設計,考察運用所學知識,解決實際問題的能力;
2、結合理論知識,考察閱讀參考資料、文獻、手冊的能力;
3、進一步熟悉EDA技術的開發流程,掌握文件編輯、編譯、仿真、下載驗證等環節的實現方法和
應用技巧;
4、鍛煉撰寫研究報告、研究論文的能力;
5、通過本實踐環節,培養科學和嚴謹的工作作風。
二、設計內容、技術條件和要求
l、能進行正常的時、分、秒計時功能,分別由6個數碼顯示24小時、60分鐘的計數器顯示。
2、能利用實驗系統上的按鈕實現“校時”、“校分”功能;
(1)按下“SA”鍵時,計時器迅速遞增,并按24小時循環;
(2)按下“SB”鍵時,計時器迅速遞增,并按59分鐘循環,并向“時”進位;
(3)按下“SC”鍵時,秒清零;抖動的,必須對其消抖處理。
3、能利用揚聲器做整點報時:
(1)當計時到達59’50”時開始報時,頻率可為500Hz;
計滿23小時后回零;計滿59分鐘后回零。
(2)到達59’59”時為最后一聲整點報時,整點報時的頻率可定為lKHz。
4定時鬧鐘功能
5、用層次化設計方法設計該電路,用硬件描述語言編寫各個功能模塊。
6、報時功能。報時功能用功能仿真的仿真驗證,可通過觀察有關波形確認電路設計是否正確。
三、時間進度安排
1周:(1)完成設計準備,確定實施方案;(2)完成電路文件的輸入和編譯;(4)完成功能仿真。
2周:(1)完成文件至器件的下載,并進行硬件驗證;(2)撰寫設計說明書。
四、主要參考文獻
(1)譚會生、瞿遂春,《EDA技術綜合應用實例與分析》,西安電子科技大學出版社,2004
(2)曹昕燕、周鳳臣等,《EDA技術實驗與課程設計》,清華大學出版社,2006
指導教師簽字:2012年9月1日