已閱讀5頁,還剩7頁未讀, 繼續(xù)免費閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
sopc課程設(shè)計(論文)用紙摘 要 時鐘, 自從它發(fā)明的那天起,就成為人類的朋友,但隨著時間的推移,人們對它的功能又提出了新的要求,怎樣讓時鐘更好的為人民服務,怎樣讓我們的老朋友煥發(fā)青春呢?這就要求人們不斷設(shè)計出新型時鐘。本人設(shè)計的產(chǎn)品為24小時制的多功能數(shù)字鐘,具有時鐘時間設(shè)置、鬧鐘時間設(shè)置、鬧鐘開、鬧鐘關(guān)等功能,數(shù)字顯示小時、分鐘、秒,鬧鐘就緒燈,蜂鳴器。 本論文針對上述情況,在設(shè)計中采用eda自動化設(shè)計技術(shù)。以計算機為基本平臺,以硬件描述語言為系統(tǒng)邏輯描述表達方式,以eda工具作為開發(fā)環(huán)境,以大規(guī)??删幊踢壿嬈骷樵O(shè)計載體,以專用集成電路asic為目標器件,以電子系統(tǒng)設(shè)計為應用方向的電子產(chǎn)品自動化設(shè)計過程。這樣的設(shè)計方法,大大的縮短了設(shè)計的周期,降低了設(shè)計成本。設(shè)計出來的數(shù)字鐘具有功能多、體積小、功耗低的特點。在論文中主要涉及的內(nèi)容有: 1、 介紹verilog hdl語言。2、 介紹在quartusii軟件上對數(shù)字鐘的設(shè)計。3、 介紹系統(tǒng)仿真結(jié)果和硬件驗證與分析。4、 對整個設(shè)計系統(tǒng)進行總結(jié)。 關(guān)鍵詞: 電子設(shè)計自動化 verilog hdl 可編程邏輯器件目 錄摘 要i第1章 緒 論3第2章 verilog hdl語言521 verilog hdl語言簡介522 verilog hdl主要特點523 verilog hdl語言開發(fā)軟件-quartus6第3章 數(shù)字鐘verilog hdl的設(shè)計731設(shè)計方案及工作原理73.1.1數(shù)字鐘設(shè)計原理73.1.2 數(shù)字鐘功能732 數(shù)字鐘鐘控定時器的基本組成83.2.1 d觸發(fā)器的設(shè)計83.2.2數(shù)據(jù)選擇器的設(shè)計93.2.3 計數(shù)器的設(shè)計103.2.4 數(shù)據(jù)分配器123.2.5譯碼器133.2.6分頻器153.2.7鬧時器163.2.8 報時器1733 數(shù)字鐘原理圖19第4章 軟件調(diào)試20結(jié)論21參考文獻22附錄23 26sopc課程設(shè)計(論文)用紙第1章 緒 論sopc課程設(shè)計(論文)用紙 中國是世界上最早發(fā)明計時儀器的國家。有史料記載,漢武帝太初年間(紀元前104-101年)由落下閎創(chuàng)造了我國最早的表示天體運行的儀器渾天儀。東漢時期(公元130年)張衡創(chuàng)造了水運渾天儀,為世界上最早的以水為動力的觀測天象的機械計時器,是世界機械天文鐘的先驅(qū)。盛唐時代,公元725年張遂(又稱一行)和梁令瓚等人創(chuàng)制了水運渾天銅儀,它不但能演示天球和日、月的運動,而且立了兩個木人,按時擊鼓,按時打鐘。第一個機械鐘的靈魂擒縱器用于計時器,這是中國科學家對人類計時科學的偉大貢獻。它比十四世紀歐洲出現(xiàn)的機械鐘先行了六個世紀。第一只石英鐘出現(xiàn)在二十世紀二十年代,從三十年代開始得到了推廣,從六十年代開始,由于應用半導體技術(shù),成功地解決了制造日用石英鐘問題,石英電子技術(shù)在計時領(lǐng)域得到了廣泛的應用。并取代機械鐘做了更精確的時間標準。早在1880年,法國人皮埃爾居里和保羅雅克居里就發(fā)現(xiàn)了石英晶體有壓電的特性,這是制造鐘表“心臟”的良好材料??茖W家以石英晶體制成的振蕩計時器和電子鐘組合制成了石英鐘。經(jīng)過測試,一只高精度的石英鐘表,每年的誤差僅為3-5秒。1942年,著名的英國格林尼治天文臺也開始采用了石英鐘作為計時工具。在許多場合,它還經(jīng)常被列為頻率的基本標準,用于日常測量與檢測。大約在 1970 年前后,石英鐘表開始進入市場,風靡全球。隨著科學的進步,精密的電子元件不斷涌現(xiàn),石英鐘表也開始變得小巧精致,它既是實用品,也是裝飾品。它為人們的生活提供方便,更為人們的生活增添了新的色彩。 在現(xiàn)行情況下根據(jù)簡單實用強的、走時準確進行設(shè)計。而實驗證明,鐘表的振蕩部分采用石英晶體作為時基信號源時,走時更精確、調(diào)整更方便。鐘是一種計時的器具,它的出現(xiàn)開拓了時間計量的新里程。提起時鐘大家都很熟悉,它是給我們指明時間的一種計時器,并且我們每天都要用到它。二十世紀八十年代中國的鐘表業(yè)經(jīng)歷了一場翻天覆地的大轉(zhuǎn)折。其表現(xiàn)在三個方面:(1)從生產(chǎn)機械表轉(zhuǎn)為石英電子表;(2)曾占據(jù)中國消費市場四十多年的大型國有企業(yè)突然被剛剛冒起的“組業(yè)”所取代,鐘表生產(chǎn)中心轉(zhuǎn)向中國南方沿海一帶; 這場轉(zhuǎn)折以迅雷不及掩耳的速度,沖擊著傳統(tǒng)的中國鐘表工業(yè)。中國的鐘表業(yè)從技術(shù)簡單、零件少的石英鐘機芯制造入手。最初石英鐘機芯全靠從日本、德國進口,1989年開始完全自己生產(chǎn),包括模具的制造加工。近十余年,逐漸提高機芯質(zhì)量的穩(wěn)定性,同時轉(zhuǎn)向?qū)κ直頇C芯研制與開發(fā)。目前石英鐘表機芯生產(chǎn)主要在福建省福州、廣東東莞、番禺;機械鐘表機芯在上海、山東等地?,F(xiàn)在我國的電子業(yè)發(fā)展非??焖?,電子業(yè)的發(fā)展有利于鐘表業(yè)的發(fā)展。在中國鐘表發(fā)展史上,國產(chǎn)機芯研制的失敗已經(jīng)成為過去,“組裝業(yè)”作為新興鐘表工業(yè)的起步階段也已成為過去。一支新的充滿智慧的鐘表精英在成長。我們相信在科技高速發(fā)展的今天,鐘表業(yè)運用當今材料工業(yè)、電子工業(yè)和其他領(lǐng)域的最新技術(shù),一定會生產(chǎn)出代表中國科學水平的產(chǎn)品。我們希望鐘表業(yè)的精英們在提高制造技術(shù)水平中不斷創(chuàng)新,培育出擁有自主知識產(chǎn)權(quán)的品牌。這正是中國鐘表業(yè)發(fā)展的希望。數(shù)字鐘被廣泛用于個人家庭,車站, 碼頭、辦公室等公共場所,成為人們?nèi)粘I钪械谋匦杵?。由于?shù)字集成電路的發(fā)展和石英晶體振蕩器的廣泛應用,使得數(shù)字鐘的精度,運用超過老式鐘表, 鐘表的數(shù)字化給人們生產(chǎn)生活帶來了極大的方便,而且大大地擴展了鐘表原先的報時功能。諸如定時自動報警、按時自動打鈴、時間程序自動控制、定時廣播、自動起閉路燈、定時開關(guān)烘箱、通斷動力設(shè)備、甚至各種定時電氣的自動啟用等,所有這些,都是以鐘表數(shù)字化為基礎(chǔ)的。因此,研究數(shù)字鐘及擴大其應用,有著非?,F(xiàn)實的意義。 sopc課程設(shè)計(論文)用紙第2章 verilog hdl語言21 verilog hdl語言簡介verilog vhdl(簡稱verilog)是一種應用廣泛的硬件描述語言,是以文本形式來描述數(shù)字系統(tǒng)硬件的結(jié)構(gòu)和行為的語言,可用于從算法級、門級到開關(guān)級的多種抽象層次的數(shù)字系統(tǒng)設(shè)計。它可以表示邏輯電路圖、邏輯表達式,還可以表示數(shù)字邏輯系統(tǒng)所完成的邏輯功能。verilog hdl的產(chǎn)生和應用可追溯到20世界80年代,1984年gda(gateway design automation)公司陸續(xù)開發(fā)了verilog hdl及其仿真器,1989年cadence收購了該公司,1990年cadence公開發(fā)表了verilog hdl,1995年成為ieee標準,即ieee std.1364-1995或 verilog hdl 1364-1995。22 verilog hdl主要特點1) 既能進行面向綜合的電路設(shè)計,又可用于電路的模擬仿真。2) 能夠在多個層次上對所設(shè)計的系統(tǒng)加以描述,從開關(guān)級、門級、寄存器傳輸級(rtl)到行為級等,都可以勝任;設(shè)計的規(guī)模是任意的,語言不對設(shè)計的規(guī)模施加任何限制。3) 靈活多樣的描述風格,可進行行為描述,也可時行結(jié)構(gòu)描述或數(shù)據(jù)流描述;支持混合建模,在一個設(shè)計中各個模塊可以在不同的設(shè)計層次上建模和描述。4) verilog hdl的行為描述語句,如條件語句、賦值語句和循環(huán)語句等,類似于軟件高級語言,便于學習和使用。5) 內(nèi)置各種基本邏輯門,如and、or和nand等,可方便地進行門級結(jié)構(gòu)描述;內(nèi)置各種開關(guān)級元件,如pmos、nmos和cmos等,可進行開關(guān)級的建模。6) 用戶定義原語(udp)創(chuàng)建的靈活性。用戶定義的原語既可以是組合邏輯;可通過編程語言接口(pli)機制進一步擴展verilog hdl語言的描述能力。pli是允許外部函數(shù)訪問verilog hdl模塊內(nèi)信息,允許設(shè)計者與模擬器交互的例程集合。23 verilog hdl語言開發(fā)軟件-quartusverilog hdl是一種硬件描述語言(hdl:hardware discription language),常用的verilog hdl語言開發(fā)軟件有altera公司的max+plus ii,quartus ii和xilinx公司的foundation ise。本文主要是利用軟件quartus ii的文本輸入設(shè)計方式來進行設(shè)計的。quartus ii是altera公司推出的新一代開發(fā)軟件,適合于大規(guī)模邏輯電路設(shè)計。quartus ii軟件的設(shè)計流程概括為設(shè)計輸入、設(shè)計編譯、設(shè)計仿真和設(shè)計下載等過程。quartus ii軟件支持多種編輯輸入法,包括圖形編輯輸入法、vhdl、verilog hdl的文本輸入法、符合編輯輸入法,以及內(nèi)存編輯輸入法。第3章 數(shù)字鐘verilog hdl的設(shè)計31設(shè)計方案及工作原理 3.1.1數(shù)字鐘設(shè)計原理 數(shù)字鐘的示意如下圖所示。它由石英晶體振蕩器、分頻器、計數(shù)器、譯碼器顯示器和校時電路組成。振蕩器產(chǎn)生穩(wěn)定的高頻脈沖信號,作為數(shù)字鐘的時間基準,然后經(jīng)過分頻器輸出標準秒脈沖。秒計數(shù)器滿60后向分計數(shù)器進位,分計數(shù)器滿60后向小時計數(shù)器進位,小時計數(shù)器按照“24翻1”規(guī)律計數(shù)。計數(shù)器的輸出分別經(jīng)譯碼器送顯示器顯示。計時出現(xiàn)誤差時,可以用校時電路校時、校分。產(chǎn)生鬧鈴和報時音校時時、分、秒計時時間顯示數(shù)字鐘示意圖如上圖所示312 數(shù)字鐘功能1) 具有正確的時、分、秒計時功能。2) 計時結(jié)果要用數(shù)碼管分別顯示進、分、秒的十位和個位。3) 有校時功能。當s鍵按下時,分計數(shù)器以秒脈沖的速度遞增,并按60min循環(huán),即計數(shù)到期59min后再回到00。當工a鍵按下時,時計數(shù)器以秒脈沖的速度遞增,并按24h循環(huán),即計數(shù)到23h后再回00。4) 利用揚聲器整點報時。當計時到達59分59秒時開始報時,在59分50秒、52秒、54秒、56秒、58秒時鳴叫,鳴叫聲頻為500hz;到達59分60秒時為最后一聲整點報時,頻率為1khz。32 數(shù)字鐘鐘控定時器的基本組成 數(shù)字鐘鐘控定時器由:計數(shù)器、d觸發(fā)器、數(shù)據(jù)選擇器、數(shù)據(jù)分配器、譯碼器、報時器、鬧時器組、分頻器和一個或非門這九大模塊構(gòu)成。計數(shù)器主要分為24進制計數(shù)器和60進制計數(shù)器,24進制計數(shù)器對數(shù)字鐘的小時位計行計數(shù),60進制對數(shù)字鐘的分和秒進行計數(shù)。d觸發(fā)器主要是用在對數(shù)字進行校準時的按鍵消抖作用,以免在校時的時候產(chǎn)生抖動信號。數(shù)據(jù)分配器的作用是在動態(tài)譯碼時選擇輸出數(shù)據(jù)。譯碼器對輸出信號進行譯碼在數(shù)碼管上顯示出來,讓大家數(shù)字鐘的表示直觀。報時電路是使時鐘在整點有報時功能而設(shè)計的。鬧時器是對時鐘進行比較產(chǎn)生鬧時電信號的電路。3.2.1 d觸發(fā)器的設(shè)計在本設(shè)計中運用到了3個d觸發(fā)器,它主要是用在對數(shù)字進行校準時的按鍵消抖作用,以免在校時的時候產(chǎn)生抖動信號。在電路中用到了d觸發(fā)器74ls74,74ls74的管腳圖如圖3-1。d2q5q6clk341preclra74ls74圖3-1 74ls74管腳圖觸發(fā)器,它是由門電路構(gòu)成的邏輯電路,它的輸出具有兩個穩(wěn)定的物理狀態(tài)(高電平和低電平),所以它能記憶一位二進制代碼。觸發(fā)器是存放在二進制信息的最基本的單元。按其功能可為基本rs觸發(fā)器觸、jk觸發(fā)器、d觸發(fā)器和t觸發(fā)器。這幾種觸發(fā)器都有集成電路產(chǎn)品。其中應用最廣泛的當數(shù)jk觸發(fā)器和d觸發(fā)器。不過,深刻理解rs觸發(fā)器對全面掌握觸發(fā)器的工作方式或動作特點是至關(guān)重要的。事實上,jk觸發(fā)器和d觸發(fā)器是rs觸發(fā)器的改進型,其中jk觸發(fā)器保留了兩個數(shù)據(jù)輸入端,而d觸發(fā)器只保留了一個數(shù)據(jù)輸入端。d觸發(fā)器有邊沿d觸發(fā)器和高電平d觸發(fā)器。74ls74為一個電平d觸發(fā)器。3.2.2數(shù)據(jù)選擇器的設(shè)計 在多路數(shù)據(jù)傳送過程中,能夠根據(jù)需要將其中任意一路選出來的電路,叫做數(shù)據(jù)選擇器,也稱多路選擇器或多路開關(guān)。數(shù)據(jù)選擇器(mux)的邏輯功能是在地址選擇信號的控制下,從多路數(shù)據(jù)中選擇一路數(shù)據(jù)作為輸出信號。通過quartusii軟件進行編譯后,仿真結(jié)果如圖3-2所示,圖3-2 2選一數(shù)據(jù)選擇器仿真結(jié)果打包后成元器件如圖3-3所示;圖3-3 2選一數(shù)據(jù)選擇器3.2.3 計數(shù)器的設(shè)計計數(shù)器是一種計算輸入脈沖的時序邏輯網(wǎng)絡(luò),被計數(shù)的輸入信號就是時序網(wǎng)絡(luò)的時鐘脈沖,它不僅可以計數(shù)而且還可以用來完成其他特定的邏輯功能,如測量、定時控制、數(shù)字運算等等。數(shù)字鐘的計數(shù)電路是用兩個六十進制計數(shù)電路和“24進制”計數(shù)電路實現(xiàn)的。數(shù)字鐘的計數(shù)電路的設(shè)計可以用反饋清零法。當計數(shù)器正常計數(shù)時,反饋門不起作用,只有當進位脈沖到來時,反饋信號將計數(shù)電路清零,實現(xiàn)相應模的循環(huán)計數(shù)。以六十進制為例,當計數(shù)器從00,01,02,59計數(shù)時,反饋門不起作用,只有當?shù)?0個秒脈沖到來時,反饋信號隨即將計數(shù)電路清零,實現(xiàn)模為60的循環(huán)計數(shù)。下面是用verilog hdl語言編寫的24進制、60進制計數(shù)器的程序代碼:1)24進制計數(shù)器程序代碼;module count24(ten,one,clk);output3:0 ten,one;input clk;reg3:0 ten,one;always (posedge clk)beginif(ten3:0=2&one3:0=3)beginten3:0=0;one3:0=0;endelse if(one3:0=9)beginone3:0=0;ten3:0=ten3:0+1;endelseone3:0=one3:0+1;endendmodule通過quartusii軟件進行編譯后,仿真結(jié)果如圖3-4所示,圖3-4 24進制計數(shù)器仿真結(jié)果打包后成元器件如圖3-5所示;圖3-5 24進制計數(shù)器2)60進制計數(shù)器程序代碼;module count60(cout,ten,one,clk);output3:0 ten,one;output cout;input clk;reg3:0 ten,one;always (posedge clk)beginif(one3:0=9)beginone3:0=0;if(ten3:0=5)ten3:0=0;elseten3:0=ten3:0+1;endelseone3:0=one3:0+1;endassign cout=(ten3:0=0&one3:0=0)?1:0;endmodule通過quartusii軟件進行編譯后,仿真結(jié)果如圖3-6所示;圖3-6 60進制計數(shù)器仿真結(jié)果打包后成元器件如圖3-7所示;圖3-7 60進制計數(shù)器3.2.4 數(shù)據(jù)分配器能夠?qū)?個輸入數(shù)據(jù),根據(jù)需要傳送到m個輸出端的任何一個輸出端的電路,叫做數(shù)據(jù)分配器,又稱為多路分配器,其邏輯功能正好與數(shù)據(jù)選擇器相反。電路結(jié)構(gòu):由與門組成的陣列。分類:1路-4路數(shù)據(jù)分配器(如74ls139)、1路-8路數(shù)據(jù)分配器(74ls138)等。由于譯碼器和數(shù)據(jù)分配器的功能非常接近,所以譯碼器一個很重要的應用就是構(gòu)成數(shù)據(jù)分配器。 也正因為如此,市場上沒有集成數(shù)據(jù)分配器產(chǎn)品,只有集成譯碼器產(chǎn)品。 通過quartusii軟件進行編譯后,仿真結(jié)果如圖3-8所示;圖3-8 數(shù)據(jù)分配器仿真結(jié)果打包后成元器件如圖3-9所示;圖3-9 數(shù)據(jù)分配器3.2.5譯碼器 譯碼器是一個多輸入、多輸出的組合邏輯電路。它的工作是把給定的代碼進行“翻譯”,變成相應的狀態(tài),使輸出通道中相應的一路有信號輸出。譯碼器在數(shù)字系統(tǒng)中有廣泛的用途,不僅用于代碼的轉(zhuǎn)換、終端的數(shù)字顯示,還用于數(shù)字分配,存儲器尋址和組合控制信號等。譯碼器可以分為通用譯碼器和顯示譯碼器兩大類。在電路中用的譯碼器是共陰極譯碼器74ls48,用74ls48把輸入的8421bcd碼abcd譯成七段輸出a-g,再由七段數(shù)碼管顯示相應的數(shù)。 通過quartusii軟件進行編譯后,仿真結(jié)果如圖3-11所示;圖3-11 譯碼器仿真結(jié)果3.2.6分頻器分頻器的作用是將由石英晶體產(chǎn)生的高頻信號分頻成基時鐘脈沖信號和擴展部分所需的頻率。在此電路中,分頻器的功能主要有兩個:一是產(chǎn)生標準脈沖信號;二是功能擴展電路所需的信號,如仿電臺用的1khz的高頻信號和500hz的低頻信號等.可以組成二分頻電路和四分頻電路和十六分頻器。打包后成元器件如圖3-12所示; 圖3-12 2分頻、4分頻、16分頻分頻器3.2.7鬧時器數(shù)字鐘在指定的時刻發(fā)出信號,或驅(qū)動音響電路“鬧時”;或?qū)δ逞b置的電源進行接通或斷開“控制”。不管是鬧時還是控制,都要求時間準確,即信號的開始時刻與持續(xù)時間必須滿足規(guī)定的要求。在這里將舉例來說明它的工作原理。要求上午7時59分發(fā)出鬧時信號,持續(xù)1分鐘。設(shè)計如下:7時59分對應數(shù)字鐘的時時個位計數(shù)器的狀態(tài)為,分十位計數(shù)器的狀態(tài)為,分個位計數(shù)器的狀態(tài)為,若將上述計數(shù)器輸出為“1”的所有輸出端經(jīng)過與門電路去控制音響電路,就可以使音響電路正好在7點59分響,持續(xù)1分鐘后(即8點)停響。所以鬧時控制信號z的表達式為式中,m為上午的信號輸出,要求m=1。如果用與非門實現(xiàn)的邏輯表達式為:在電路圖中用到了4輸入二與非門74ls20,集電極開路的2輸入四與非門74ls03,因oc門的輸出端可以進行“線與”,使用時在它們的輸出端與電源+5v端之間應接一電阻rl。rl的值由下式?jīng)Q定: =0.4v,=0.4ma,=2.4v,=50ua,=8ma,=100ua;m為負載門輸入端總個數(shù)。取rl=3.3k。如果控制1khz高音和驅(qū)動音響電路的兩極與非門也采用oc門,則rl的值應該重新計算。由電路圖可以看見,上午7點59分,音響電路的晶體管導通,則揚聲器發(fā)出1khz的聲音。持續(xù)1分鐘到8點整晶體管因為輸入端為“0”而截止,電路停鬧。 鬧時器程序代碼;module nsdl(out,m1,m2,h1,h2,tenh,oneh,tenm,onem,clk1k,cin);output out;input3:0 m1,m2,h1,h2,tenh,tenm,oneh,onem;input cin, clk1k;reg out;always (m1 or m2 or h1 or h2 or tenh or tenm or oneh or onem or cin) beginif(cin) out=0;else if(cin=0)beginif(tenh=h1&oneh=h2&tenm=m1&onem=m2) out=clk1k;elseout=0;endendendmodule打包后成元器件如圖3-13所示;圖3-13 鬧時器328 報時器(一)功能要求報時的功能要求是:每當數(shù)字鐘計時快要到正點時,通常按照4低音1高音的順序發(fā)出間斷聲響,以最后一聲高音結(jié)束的時刻為正點時刻。(二)該電路的工作原理電路圖的工作原理舉例來說明;例如設(shè)4聲低音(約500hz)分別 在59分51秒、53秒、55秒及57秒,最后一聲高音(約1000hz)發(fā)生在59秒,它們的持續(xù)時間為1秒。只有當分十進位的,分個位的,秒十位的及秒個位的時,音響電路才能工作。(三)對該電路中使用的元件的介紹因為在該電路中所用的元件主要是74ls00、74ls04及74ls20這些元件在前面的電路中已經(jīng)介紹.這里就不再介紹它了報時器程序代碼;module baoshi(tenm,onem,tens,ones,q500,q1k,a,b);input a,b;input 3:0tenm,onem,tens,ones;output q500,q1k;reg q500,q1k;always (tenm or onem or tens or ones)beginif (tenm,onem=8h59&tens,ones=8h50|tenm,onem=8h59&tens,ones=8h52|tenm,onem=8h59&tens,ones=8h54|tenm,onem=8h59&tens,ones=8h56|tenm,onem=8h59&tens,ones=8h58)q500=a;else q500=0;endalways (tenm or onem or tens or ones)beginif (tenm3:0=0000&onem3:0=0000)&(tens3:0=0000&ones3:0=0000)q1k=b;else q1k=0;endendmodule打包后成元器件如圖3-14所示;圖3-14 報時器33 數(shù)字鐘原理圖將各模塊組合一起構(gòu)成如圖3-15所示:sopc課程設(shè)計(論文)用紙 第4章 軟件調(diào)試軟件調(diào)試的過程據(jù)功能的增加分為幾步:首先,根據(jù)原來的100進制顯示程序的基礎(chǔ)上編寫成時分秒六位顯示的主程序。該程序?qū)r分秒分成個位和十位分別計算,所以將60進制和24進制變成10進制、6進制和2進制。又因為如果時十位為2的話,不能大于3,所以在分十位向時個位進位時得判斷時十位是否為2,在組員的幫助下經(jīng)過不斷試驗和修改終于完成。過程比較順利。該電子鐘使用一個鍵來調(diào)時,利用長按來選擇所要調(diào)的位,用短暫按下來對位進行加1,前提是時鐘暫停,這個功能也是通過長按來實現(xiàn)的。選位是從秒個位到時十位依次選取,但到時十位以后就回不到秒個位了,就是不會循環(huán)。所以就得對選的位進行檢查,如果到了時十位再按取位鍵就重新賦給秒個位地址。這樣就可以循環(huán)選位了。但在后來的測試中又有了新的問題,如果該位到了9,對一個位進行加1調(diào)整就會顯示亂碼。時分秒的十位都會調(diào)到9!對于這個問題費看一些周折。起先構(gòu)思再加一個減一的鍵,但不但沒有解決這個亂碼問題而且減到了0一下很可能也會出現(xiàn)亂碼。所以就轉(zhuǎn)而尋求程序解決。調(diào)時的時候讓它也像正常運行的時候進位?沒見過這樣的。繼而決定在進行加1調(diào)時的時候檢測該位是否到10或6或3。所以就產(chǎn)生了所謂的調(diào)時比較子程序,就是在調(diào)時的時候?qū)⒃撐桓?0或6或3比較。最后,調(diào)試的時候卻總是出現(xiàn)這樣的情況:所調(diào)的位超過了9或5或2就變成亂碼。比原來進步的地方就是時分秒的十位不用超過9就變成亂碼。這說明雖然還沒成功,但還是有前展的。就繼續(xù)調(diào)試。 結(jié)論我們對sopc課程設(shè)計這門課的學習主要是理論學習和實驗實踐兩個部分。通過對其理論知識的學習,我對硬件描述語言有了初步的認識,學會利用硬件描述語言完成相應功能系統(tǒng)的設(shè)計。在實驗中,我們可以通過自己的實際操作,找出問題,改正錯誤,提出改進之法,大膽創(chuàng)新,使自己的能力在實踐中成長起來。經(jīng)過這幾周的實驗,我基本了解了實驗設(shè)計過程。雖然有些實驗很簡單,但是他們體現(xiàn)了eda設(shè)計的大概流程 。通過這么多次的試驗我將一些在課堂上了解了的知識的運用到了實驗中,經(jīng)過實驗課之后,我對于vhdl語言的理解更加深刻了,本來有些不理解的理論知識,都能通過實驗得到一定解答。在實驗的過程中,有時遇到難題的時候,我們上網(wǎng)或去圖書館查找資料,或者向老師和同學們討論,在這個過程中我學習到了一些我們在課堂上學不到的知識。通過這次課程設(shè)計使我更加深刻的懂得了理論與實際相結(jié)合的重要性!只有理論知識無法實現(xiàn)相關(guān)的設(shè)計和實際操作,當把所學的理論知識與實踐相結(jié)合起來,從理論中得出結(jié)論,這樣才能把所學的理論知識更加鞏固至掌握住,才能提高自己的實際動手能力和獨立思考能力。參考文獻1 李東生.電子設(shè)計自動化與ic設(shè)計.北京:高等教育出版社,20042 蔡明生.電子設(shè)計.北京:高等教育出版社,20043 齊洪喜,陸穎.vhdl電路設(shè)計使用教程.北京:清華大學出版社,20044 雷伏容.vhdl電路設(shè)計.北京:清華大學出版社,20065 黃仁欣.eda技術(shù)實用教程.北京:清華大學出版社,20066 路而紅.電子設(shè)計自動化應用技術(shù).北京:高等教育出版社,20047 陳有卿.實用555時基電路300例.北京:中國電力出版社,20048 晶體管技術(shù)編輯部.電子技術(shù)原理.制作.實驗.北京:科學出版社,20059 張亦華,延明.數(shù)字電路eda入門vhdl程序?qū)嵗?北京:北京郵電大學出版社,200310 王延才,趙德申.電子技術(shù)實訓.北京:高等教育出版社,2003附錄 下面是用verilog hdl語言編寫的2選一數(shù)據(jù)選擇器的程序代碼:module mux2(out,a,b,sel);output out;input a,b,sel;reg out;always (a or b or sel)beginif(sel=1)out=a;else out=b;endendmodule下面是用verilog hdl語言編寫的24進制、60進制計數(shù)器的程序代碼:1)24進制計數(shù)器程序代碼;module count24(ten,one,clk);output3:0 ten,one;input clk;reg3:0 ten,one;always (posedge clk)beginif(ten3:0=2&one3:0=3)beginten3:0=0;one3:0=0;endelse if(one3:0=9)beginone3:0=0;ten3:0=ten3:0+1;endelseone3:0=one3:0+1;endendmodule2)60進制計數(shù)器程序代碼;module count60(cout,ten,one,clk);output3:0 ten,one;output cout;input clk;reg3:0 ten,one;always (posedge clk)beginif(one3:0=9)beginone3:0=0;if(ten3:0=5)ten3:0=0;elseten3:0=ten3:0+1;endelseone3:0=one3:0+1;endassign cout=(ten3:0=0&one3:0=0)?1:0;endmodule數(shù)據(jù)分配器程序代碼:module x(q,l,hten,hone,mten,mone,sten,sone,clk);output3:0 q;output5:0 l;input 3:0 hten,hone,mten,mone,sten,sone;input clk;reg3:0 q,rel;reg5:0 l;always (posedge clk)beginif(rel3:0=5) rel3:0=0;elserel3:0=rel3:0+1;endalways (rel )beginif(rel3:0=0) begin q3:0=sone3:0; l5:0=6b111110;endelse if(rel3:0=1) begin q3:0=sten3:0;l5:0=6b111101;endelse if(rel3:0=2) begin q3:0=mone3:0;l5:0=6b111011;endelse if(rel3:0=3) begin q3:0=mten3:0; l5:0=6b110111;endelse if(rel3:0=4) begin q3:0=hone3:0; l5:0=6b101111;endelse begin q3:0=hten3:0;l5:0=6b011111;endendendmodule譯碼器程序代碼;module yima308(out,in);output7:0 out;input3:0 in;reg7:0 out;always (in) begin case(in)4d0:out=8b00000010;4d1:out=8b10011110;4d2:out=8b00100100;4d3:out=8b00001100;4d4:out=8b10011000;4d5:out=8b01001000;4d6:out=8b01000000;4d7:out=
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 食品安全追溯消費者信任反饋建立
- 專業(yè)基礎(chǔ)-房地產(chǎn)經(jīng)紀人《專業(yè)基礎(chǔ)》真題匯編3
- 農(nóng)場半年度工作匯報
- 統(tǒng)編版五年級語文上冊寒假作業(yè)(十三)有答案
- 二零二五版共有產(chǎn)權(quán)房轉(zhuǎn)讓協(xié)議書3篇
- 二零二五年智能大棚土地承包合作協(xié)議范本3篇
- 宿州航空職業(yè)學院《英語專業(yè)前沿課程》2023-2024學年第一學期期末試卷
- 二零二五版公共安全防范承包合同3篇
- 二零二五年食品包裝設(shè)計及委托加工合同
- 蘇教版初一英語試卷單選題100道及答案
- 春季餐飲營銷策劃
- 企業(yè)會計機構(gòu)的職責(2篇)
- 《疥瘡的防治及治療》課件
- Unit4 What can you do Part B read and write (說課稿)-2024-2025學年人教PEP版英語五年級上冊
- 2025年MEMS傳感器行業(yè)深度分析報告
- 《線控底盤技術(shù)》2024年課程標準(含課程思政設(shè)計)
- 學校對口幫扶計劃
- 倉庫倉儲安全管理培訓課件模板
- 風力發(fā)電場運行維護手冊
- 河道旅游開發(fā)合同
- 情人合同范例
評論
0/150
提交評論