




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第一章hkiv型eda實(shí)驗(yàn)系統(tǒng)特點(diǎn)介紹該系統(tǒng)由實(shí)驗(yàn)機(jī)結(jié)合可編程技術(shù)開(kāi)發(fā)而成。適用于altera、lattice、xilinx等多種芯片教學(xué)實(shí)驗(yàn)??墒褂胿hdl、verilog、ahdl、原理圖、狀態(tài)圖等多種方式設(shè)計(jì)。主系統(tǒng)僅用一根下載電纜,無(wú)需增加任何適配板即可對(duì)lattice、xilinx、aitera、vantis、atmel和cypress等公司的不同芯核電壓的fpga/cpld器件進(jìn)行在系統(tǒng)編程。為了適應(yīng)將來(lái)市場(chǎng)發(fā)展要求,可以進(jìn)行軟件升級(jí)以適應(yīng)更多型號(hào)的fpga/cpld。系統(tǒng)可配置多個(gè)公司不同邏輯資源、封裝的適配板,且系統(tǒng)主板功能及通用下載電路asic的硬件具備可升級(jí)性。(1) 系統(tǒng)
2、含標(biāo)準(zhǔn)5v、3v、2.5v、1.8v混合工作電壓功率輸出電路模塊,以便可對(duì)適配板上不同芯核電壓的fpga/cpld器件進(jìn)行實(shí)驗(yàn)和開(kāi)發(fā)。(2) 系統(tǒng)含標(biāo)準(zhǔn)低壓(3.3v、2.5v、1.8v),下載口可用于對(duì)外部不同芯核電壓的fpga和cpld器件進(jìn)行編程下載。(3) 含典型eda實(shí)驗(yàn)必配的標(biāo)準(zhǔn)vga彩顯接口,可用于顯卡或工控設(shè)備開(kāi)發(fā)(可提供vhdl應(yīng)用演示實(shí)例)。(4) 含典型eda實(shí)驗(yàn)必配的ps/2鼠標(biāo)、鍵盤接口(可提供vhdl應(yīng)用演示實(shí)例)。(5) 含典型eda實(shí)驗(yàn)必配的rs232串行接口,同可于硬件串行通信電路開(kāi)發(fā)、編碼模塊開(kāi)發(fā)等(提供vhdl演示實(shí)例)。(6) 含典型eda實(shí)驗(yàn)必配的單片
3、機(jī)總線接口及與cpld/fpga至pc機(jī)雙向通信接口(可提供vhdl演示實(shí)例)。此實(shí)驗(yàn)為學(xué)生提供mcs51匯編語(yǔ)言、vhdl語(yǔ)言、c語(yǔ)言綜合應(yīng)用設(shè)計(jì)方面的全面鍛煉,為學(xué)生在電子設(shè)計(jì)方面的充分發(fā)揮提供了可行的平臺(tái)。(7) 含led、數(shù)碼管、揚(yáng)聲器(通過(guò)頻率控制可奏樂(lè),提供vhdl演示實(shí)例)等。(8) 含8個(gè)按鍵、16個(gè)開(kāi)關(guān),供硬件加法器、乘法器、序列檢測(cè)器、編碼器、音樂(lè)演奏、脈寬調(diào)制、a/d高速采樣等設(shè)計(jì)實(shí)驗(yàn)用(提供vhdl演示實(shí)例)。(9) 含1hz5omhz標(biāo)準(zhǔn)時(shí)鐘信號(hào)源,是完成ps/2、vga、rs232通信、音樂(lè)演奏、脈寬調(diào)制、a/d高速采樣等典型eda項(xiàng)目必備之高頻時(shí)鐘,也是發(fā)揮fpg
4、a/cpld高速特性的可靠保證。(10) 含a/d器件adco809及其接口,供fpga控制的模數(shù)轉(zhuǎn)換實(shí)驗(yàn)用(提供vhdl演示實(shí)例)。(11) 含d/a器件dac0832及其接口,用于數(shù)模轉(zhuǎn)換實(shí)驗(yàn)(提供vhdl演示實(shí)例)。(12) 含器件ad574的接口。(13) 可進(jìn)行任何譯碼顯示方式(直通非譯碼、bcd譯碼、16進(jìn)制譯碼、掃描)的智能譯碼電路模塊。(14) 含串行e2prom 93cxx系列器件接口電路,適用開(kāi)發(fā)基于fpga/cpld的工業(yè)智能儀表。(15) 含串行e2prom 24cxx系列器件接口電路,適用開(kāi)發(fā)基于fpga/cpld的ic總線電路結(jié)構(gòu)的工業(yè)智能儀表。(16) 含ti公司
5、串行d/a器件tlc5620接口,單5v電壓供電,適用基于fpga數(shù)字信號(hào)處理電路設(shè)計(jì)。(17) 含ti公司串行a/d器件tlc549接口,單5v電壓供電,適用基于fpga/cpld的汽車電子設(shè)備、數(shù)字伺服系統(tǒng)設(shè)計(jì)等。(18) 含ti公司串行高速a/d器件adco8031接口,單5v電壓供電,適用基于fpga的過(guò)程控制和圖像傳感器信號(hào)處理(19) 含tl公司串行超高速a/d器件tlv1572接口,單5v電壓供電,適用于數(shù)字信號(hào)處理和數(shù)字圖像處理。(20) 含專用工作電源和內(nèi)置電源以及rs232通信電纜、通用下載電纜、在系統(tǒng)開(kāi)發(fā)用的下載電纜線。(21) 含適用于多媒體教學(xué)的所有配套相關(guān)內(nèi)容的ca
6、i軟件。(22) 系統(tǒng)可配置模擬電子線路與信號(hào)系統(tǒng)的eda實(shí)驗(yàn)板。該實(shí)驗(yàn)板對(duì)模擬器件和數(shù)字器件都有良好的在系統(tǒng)編程功能,可完成諸如四路加/減法器、信號(hào)放大/衰減器、butterworth、chebyshev、elliptical、gaussian、bessel、legendre及雙二階濾波器、電橋平衡測(cè)試儀、1.5/2.5/3v參考電壓輸出、壓控振蕩器、電壓監(jiān)控器、溫度監(jiān)控器、模/數(shù)綜合系統(tǒng)設(shè)計(jì)等設(shè)計(jì)實(shí)驗(yàn)。該實(shí)驗(yàn)板可對(duì)isppaclo、isppac20、isppac80進(jìn)行各類純模擬電子線路方面的eda實(shí)驗(yàn)與開(kāi)發(fā)。第二章 maxplus的使用2.1 maxplus概述maxplus是alter
7、a提供的fpga/cpld開(kāi)發(fā)集成環(huán)境,altera是世界最大可編程邏輯器件供應(yīng)商之一。maxplus ii的界面友好,使用便捷,被譽(yù)為業(yè)界最易用易學(xué)的eda軟件。在maxplus上可完成fpga/cpld設(shè)計(jì)的整個(gè)流程,它提供了一種與結(jié)構(gòu)無(wú)關(guān)的設(shè)計(jì)環(huán)境,使設(shè)計(jì)者能方便地進(jìn)行設(shè)計(jì)輸入、快速處理和器件編程。數(shù)據(jù)庫(kù)的建立編譯網(wǎng)表提取邏輯綜合邏輯分割適配延時(shí)網(wǎng)表提取編程文件匯編圖形或hdl編輯器編程器設(shè)計(jì)輸入綜合或編譯適配器件下載仿真圖2.1 maxplus編譯設(shè)計(jì)主控界面圖2.1上方是maxplus編譯設(shè)計(jì)主控界面,它顯示了maxplus自動(dòng)設(shè)計(jì)的各主要處理環(huán)節(jié)和設(shè)計(jì)流程。包括設(shè)計(jì)輸入編輯、編譯網(wǎng)
8、表提取、數(shù)據(jù)庫(kù)建立、邏輯綜合、邏輯分割、適配、延時(shí)網(wǎng)表提取、編程文件匯編(裝配)以及編程下載9個(gè)步驟。圖中下方的流程框圖是與上面maxplus設(shè)計(jì)流程相對(duì)照的標(biāo)準(zhǔn)的eda開(kāi)發(fā)流程。maxplus編譯器支持的硬件描述語(yǔ)言有vhdl(支持87及97標(biāo)準(zhǔn))、verilog hdl及ahdl(altera hdl)。前兩種為ieee標(biāo)準(zhǔn)支持的硬件描述語(yǔ)言,最后一種ahdl是aatera公司自己設(shè)計(jì)、制定的硬件描述語(yǔ)言,是一種以結(jié)構(gòu)描述方式為主的硬件描述語(yǔ)言。maxplus允許來(lái)自第三方的edif文件輸入,這可以與其他eda工具進(jìn)行接口。maxplus支持層次化設(shè)計(jì),可以在一個(gè)新的編輯輸入環(huán)境中對(duì)使用不
9、同輸入設(shè)計(jì)方式完成的工程模塊(元件)進(jìn)行調(diào)用,從而解決了原理圖與hdl混合輸入設(shè)計(jì)的問(wèn)題。在設(shè)計(jì)輸入之后,maxplus的編譯器將給出設(shè)計(jì)輸入的錯(cuò)誤報(bào)告。maxplus擁有性能良好的設(shè)計(jì)錯(cuò)誤定位器,用于確定文本或圖形設(shè)計(jì)中的錯(cuò)誤。在進(jìn)入編譯網(wǎng)表功能塊后,maxplus將從適配文件中提取snf時(shí)序仿真文件simulation netlist(仿真網(wǎng)表文件)。snf文件詳細(xì)記錄了當(dāng)前適配的延時(shí)和邏輯功能信息,可用于對(duì)設(shè)計(jì)進(jìn)行時(shí)序仿真。在仿真前,需要利用波形編輯器編輯一個(gè)波形激勵(lì)文件。編譯和仿真經(jīng)檢測(cè)無(wú)誤后,便可以將下載信息通過(guò)maxplus提供的編程器下載到目標(biāo)器件中。2.2 原理圖的輸入原理圖輸
10、入的操作步驟如下:進(jìn)入windows后,啟動(dòng)maxplus軟件,進(jìn)入主界面。圖2.2 建立新項(xiàng)目的屏幕(1) 首先建立(或指定)項(xiàng)目文件(工程文件),如圖2.2所示,鼠標(biāo)左鍵單擊file選項(xiàng),選擇projectname選項(xiàng)。圖2.3指定項(xiàng)目名的屏幕(2) 在project name的輸入編輯框中鍵入dff后在圖2.2中單擊file菜單后,單擊new選項(xiàng),屏幕如圖2.3所示圖2.4 選取文件類型屏幕(3)在圖2.4中選擇graphic editor file,單擊ok按鈕,便進(jìn)入到maxplusii的圖形編輯器。如圖2.5所示: 圖2.5 空白的圖形編輯器輯器(4)在圖2.5空白處雙擊,屏幕如圖
11、2.6所示圖2.6 選擇元件符號(hào)的屏幕(5)在圖2.6的symbol name輸入編輯框中鍵入dff后,單擊ok按鈕。此時(shí)可看到光標(biāo)上粘著被選的符號(hào),將其移到合適的位置(參考2.7)單擊鼠標(biāo)左鍵,使其固定:圖2.7 放置所有元件符號(hào)的屏幕(6)重復(fù)(4)、(5)步驟,給圖中含義個(gè)input、not、output符號(hào),如圖2.7所示:(7)在圖2.7中,將光標(biāo)移到右側(cè)input右側(cè)待連線處單擊鼠標(biāo)左鍵后,再移動(dòng)到d觸發(fā)器的左側(cè)單擊鼠標(biāo)左鍵,即可看到在input和d觸發(fā)器之間有一條線生成;(8)重復(fù)(7)的方法將dff和output連起來(lái),完成所有連線電路如圖1.8所示;(9)在圖2.7中,雙擊i
12、nput_name使其襯底變黑后,再鍵入clk,及命名該輸入信號(hào)為clk,用相同方法將輸出信號(hào)定義成q;圖 2.8完成所有連線的屏幕(10)在圖2.8中單擊保存按鈕,屏幕如圖2.9所示:圖2.9 欲保存文件前的屏幕(11)在圖2.9中,檢查file name的文本編輯框?yàn)閐ff.gdf(因?yàn)轫?xiàng)目名為dff,故在缺省情況下,均是項(xiàng)目名下加不同的擴(kuò)展名);(12)在圖2.9中單擊ok按鈕,屏幕如圖2.8所示;(13)在圖2.8中,單擊編譯器快捷方式按鈕,屏幕如圖2.10所示;(14)在圖2.10中,單擊processing菜單,檢查timing snf extractor選項(xiàng),使其被選中(即該行前
13、有對(duì)號(hào)),處理完后,再次回到圖2.10的環(huán)境下;(15)在圖2.10中,單擊assigndevice菜單,屏幕如圖2.11所示;(16)完成如圖2.11所示的選擇后,單擊ok按鈕,再次回到圖2.10的環(huán)境下;圖2.10 編譯器屏幕(17)在圖2.10中,單擊start按鈕后,計(jì)算機(jī)開(kāi)始處理數(shù)據(jù),其進(jìn)度情況有一水平紅線表示,結(jié)束后屏幕如圖2.12(18)在圖2.12中,如果有“0 errors”和“0 warnings”字符出現(xiàn),則表示編譯完全通過(guò),單擊ok按鈕后,屏幕顯示如圖2.10所示圖2.11 選擇待編程芯片的屏幕多倫多隨風(fēng)倒撒;分但是;弗蘭克適當(dāng)分;是打發(fā)的固定法固定法嘎東方宮東方宮地方
14、攻打法圖2.12 完成編譯后的屏幕圖2.13 下載對(duì)話框下載對(duì)話框(21)在圖2.13中點(diǎn)擊“configure”即可進(jìn)行下載,如需要進(jìn)行引腳分配,可以參照附錄提供的引腳分配圖。(附錄一)2.3 文本編輯(vhdl)文本編輯(vhdl)的操作如下:圖2.14 指定項(xiàng)目名的屏幕(1) 建立我們的abc項(xiàng)目如圖2.14:(2)圖2.15中單擊file菜單后,單擊new選項(xiàng),選擇text editor file選項(xiàng)如圖:圖2.15 選取文件類型屏幕圖2.16 完成編譯后的屏幕(3)單擊ok進(jìn)入空白的文本編輯區(qū)進(jìn)行文本編輯,本節(jié)向同學(xué)們列舉了一個(gè)d觸發(fā)器的例子,其完成后的屏幕如圖2.16 (4)完成編
15、輯后的步驟同完成原理圖編輯的步驟,請(qǐng)參考2.2節(jié)有關(guān)內(nèi)容。2.3 波形編輯波形編輯的操作步驟如下:進(jìn)入windows后,雙擊maxplusii圖標(biāo):圖2.17 建立新項(xiàng)目的屏幕(1) 建立我們的cnt10項(xiàng)目,單擊圖2.17的file菜單,將鼠標(biāo)移到project選項(xiàng)后,單擊name選項(xiàng),屏幕如圖2.21所示。在project name的輸入編輯框中鍵入cnt10后,單擊ok按鈕: 圖2.18 指定項(xiàng)目名的屏幕(2) 單擊file菜單后,單擊new選項(xiàng),屏幕如圖2.19所示:圖2.20 空白的波形編輯文本編輯器圖2.19 選取文件類型屏幕圖2.19 選取文件類型屏幕(3) 在圖2.19中選擇w
16、aveform editor file,并單擊其右邊的小黑箭頭,在下拉選項(xiàng)中“.wdf”,單擊ok按鈕后,便進(jìn)入maxplusii的波形編輯器,如圖2.20所示(4) 在圖2.20中,雙擊name域的空白處,出現(xiàn)如圖2.21所示屏幕:圖2.21 輸入信號(hào)名clk的屏幕(5) 在node name的文本編輯框中輸入喜好名clk,noe type單選框中選中pin input,單擊ok按鈕后,如圖2.22所示:圖2.22 信號(hào)名clk輸入完成后的屏幕圖2.23 輸入信號(hào)名q0的屏幕幕(6) 在圖2.22中,雙擊name域的空白處,出現(xiàn)圖2.23所示屏幕:(7) 在node name的文本編輯框中輸
17、入信號(hào)名q0,node type單選框中選中registered,在secondary input欄單擊clock右邊的小黑箭頭,在下拉選項(xiàng)中選擇clk,單擊ok按鈕后,完成q0的輸入;圖2.24 所有信號(hào)名輸入完成后的屏幕(8) 重復(fù)(6),(7)兩步操作,分別輸入信號(hào)名q1,q2和q3,完成后,屏幕如圖2.24所示: (9) 在圖2.24中,單擊信號(hào)clk端子,使其整行變黑,并單擊垂直工具條上的時(shí)鐘按鈕,圖2.25 信號(hào)clk編輯完成后的屏幕屏幕如圖2.25所示:(10) 在圖2.25中,將光標(biāo)移到信號(hào)q0行上,按下鼠標(biāo)左鍵向右拖到第二個(gè)周期結(jié)束處釋放鼠標(biāo)左鍵,此時(shí)可以看到信號(hào)q0行上有小
18、黑長(zhǎng)方形如圖2.26所示;(11) 在圖2.26中,單擊垂直工具條上的高電平按鈕;(12) 用相同方法順次向右再做4個(gè)寬度為1個(gè)clk周期的高電平信號(hào),完成后屏幕如圖2.27,所示;(13) 用相同的方法分別做出q1,q2和q3的波形,完成后屏幕如圖2.28所示:(14) 在圖2.28中,將光標(biāo)移到q0波形的起始處按下鼠標(biāo)左鍵向下方拖動(dòng)。屏幕如圖2.29所示相同后,釋放左鍵;(15) 單擊主菜單條的edit,在下拉菜單中單擊copy;(16) 單擊主菜單條的edit,在下拉菜單中單擊repeat,在彈出的對(duì)話框中輸入重復(fù)次數(shù)1000后,單擊ok按鈕,完成后屏幕如圖2.30所示;圖2.26 編輯
19、信號(hào)q0為一個(gè)clk周期寬度的高電平的屏幕圖2.27 完成信號(hào)q0波形編輯的屏幕圖2.29 選中一個(gè)計(jì)數(shù)周期的屏幕圖2.28 完成一個(gè)計(jì)數(shù)周期所有波形編輯的屏幕圖2.30 完成所有信號(hào)編輯的屏幕(17) 在圖2.30中,單擊存文件按鈕,屏幕如圖2.31所示:(18) 在圖2.31中,檢查file name的文本編輯框時(shí)候?yàn)閏nt10.wdf;(19) 在圖2.31中,單擊ok按鈕,屏幕如圖2.30所示:圖2.31 欲保存文件的屏幕(20) 在圖2.30中,單擊按鈕,屏幕如圖2.32所示:(21) 在圖2.32中,單擊processing菜單,查看timing snf ectractor選項(xiàng),使
20、其不被選中。處理完后,再次回到圖2.32的環(huán)境中;(22) 在圖2.32中,單擊assign菜單,屏幕如圖2.33所示:(23) 完成如圖2.33所示的選擇后,單擊ok按鈕,再次回到圖2.32的環(huán)境下;(24) 在圖2.32中,單擊start按鈕后,計(jì)算機(jī)開(kāi)始處理數(shù)據(jù),其進(jìn)度情況用一水平線表示,結(jié)束后屏幕如圖2.34所示;(25) 在圖2.34中,如果有“o errors”和“o warnings”字符出現(xiàn),則表示編譯完全通過(guò),單擊確定ok按鈕后,屏幕如圖1.32所示;圖2.33 芯片配置的屏幕圖2.32 編輯文件的屏幕(26) 退出編譯窗口,即在圖2.32中單擊“x”,屏幕如圖2.30所示;
21、圖2.35 待編程的屏幕圖2.34 完成編譯后的屏幕(27)在圖2.30中單擊下載快捷鍵按鈕,屏幕如圖2.35所示。若與圖2.35所示不同,單擊jtag菜單,使所有選項(xiàng)前均無(wú)對(duì)號(hào)后,單擊option菜單,進(jìn)入hardware setup選項(xiàng)中作適當(dāng)設(shè)置(一般默認(rèn)情況下,選擇“byteblaster(mv)”);單擊ok按鈕后,關(guān)閉編程窗口,即單擊“x”,屏幕如圖2.30所示“圖2.36 層次結(jié)構(gòu)屏幕(28)在圖2.30中單擊按鈕,屏幕如圖2.36所示:圖2.37 引腳配置屏幕(29)在圖2.36中,單擊fit圖標(biāo),并適當(dāng)調(diào)整垂直滾動(dòng)條,屏幕如圖2.37所示:(30)在圖2.37中可以看到信號(hào)“
22、clk“被自動(dòng)分配為83腳,信號(hào) “q0”,“q1”,“q2”,“q3”分別被自動(dòng)分配為76,75,73,74腳;(31)給芯片的83腳接入1khz方波信號(hào),用示波器觀察83,76,75,73,74腳的波形。第三章 操作實(shí)驗(yàn)實(shí)驗(yàn)操作注意事項(xiàng)一. 使用其他廠家的cpld時(shí)在配置適配板時(shí)需軟件升級(jí)。二. 實(shí)驗(yàn)板長(zhǎng)期不用時(shí),應(yīng)將插頭拔出。三. 實(shí)驗(yàn)板上clkl到clk5頻率源上不能同時(shí)插上兩個(gè)短路帽,50mhz頻率源不使用時(shí)應(yīng)該將短路帽上插。3.1 實(shí)驗(yàn)一 彩燈實(shí)驗(yàn)一. 實(shí)驗(yàn)?zāi)康? 通過(guò)實(shí)驗(yàn)初步了解eda的作用2 初步了解vhdl語(yǔ)言在硬件設(shè)汁中的使用過(guò)程二. 實(shí)驗(yàn)跳線1 實(shí)驗(yàn)板正中上方,彩燈jpl
23、edl短路帽右插,jpled短路帽全部上插2 實(shí)驗(yàn)板右下端頻率源clk中clk5短路帽接1hz三. 實(shí)驗(yàn)項(xiàng)目添加(說(shuō)明:本軟件已經(jīng)完成以下1-一11步驟的工作)現(xiàn)將步驟作如下說(shuō)明1 打開(kāi)max+plusii軟件,如下順序點(diǎn)擊:菜單中“fileprojectname”出現(xiàn)如下對(duì)話框(圖3.1)圖3.1打開(kāi)light文件夾,在對(duì)話框左端選擇項(xiàng)目light,點(diǎn)擊ok即可;2 接著在菜單欄中選擇“maxplusiifileopenlight.vhd”出現(xiàn)如下對(duì)話框(圖3.2)圖3.23 打開(kāi)該文件即可看到源文件library ieee;use ieee.std_logic_1164.all;use i
24、eee.std_logic_unsigned.all;entity light isport(clk1:instd_logic; 時(shí)鐘信號(hào) light:bufferstd_logic_vector(7 downto 0); 輸出end light;architecture behv of light isconstant len:integer:=7;signalbanner:std_logic:=0; 定義信號(hào)banner 為兩種節(jié)拍轉(zhuǎn)換信號(hào)signalclk,clk2:std_logic; 信號(hào)clk1,clk2作為輔助時(shí)鐘beginclk=(clk1 and banner) or (cl
25、k2 and not banner);process(clk1)beginif clk1event and clk1=1 then clk1二分頻得clk2clk2=not clk2;end if;end process;-process(clk1,clk2,banner)process(clk)variableflag:bit_vector(2 downto 0):=000;begin-clk=(clk1 and banner) or (clk2 and not banner);if clkevent and clk=1 thenif flag=000 thenlight=1 & light
26、(len downto 1); 順序循環(huán)移位if light(1)=1 then 依次點(diǎn)亮flag:=001;end if;elsif flag=001 thenlight=light(len-1 downto 0) & 0;if light(6)=0 thenflag:=010;end if;elsif flag=010 thenlight(len downto 4)=light(len-1 downto 4)&1; 從中間向兩邊點(diǎn)light(len-4 downto 0)=1&light(len-4 downto 1);if light(1)=1 thenflag:=011;end if;
27、elsif flag=011 thenlight(len downto 4)=0&light(len downto 5); 奇、偶位循環(huán)點(diǎn)亮light(len-4 downto 0)=light(len-5 downto 0)&0;if light(2)=0 thenflag:=100;end if;elsif flag=100 then light(len downto 4)=1&light(len downto 5);light(len-4 downto 0)=1&light(len-4 downto 1);if light(1)=1 thenflag:=101;end if;elsif
28、flag=101 then 全部熄滅light=00000000;flag:=110; 重新開(kāi)始elsif flag=110 thenbanner=not banner; banner信號(hào)轉(zhuǎn)換,實(shí)現(xiàn)第二種節(jié)拍flag:=000;end if;end if;end process;end behv;4 選擇器件:點(diǎn)擊“assign-device”然后選擇10k1084-4;如圖3.3所示:圖3.35 點(diǎn)擊編譯按鈕,如圖所示:(圖3.4)圖3.4按start開(kāi)始編譯,編譯成功如圖3.5圖3.56 編譯成功后,進(jìn)行引腳分配:(圖3.6)圖3.6引腳按照實(shí)驗(yàn)平臺(tái)所附圖紙進(jìn)行分配如該實(shí)驗(yàn):clk1接第一
29、腳,(注意clk只能接第一腳)燈按下圖順序來(lái)接:light0p24,light1p23,light2p22,light3p21,light4p19,light5p18,light6p17,light7p16說(shuō)明:可以根據(jù)需要將light0light7重新分配,但要按管腳與芯片引腳對(duì)應(yīng)表圖3.77 然后再編譯一次;8 菜單欄中點(diǎn)“maxplusiiprogrammer”出現(xiàn)programmer對(duì)話框(圖3.2);9再出現(xiàn)programmer對(duì)話框后,選擇菜單欄中“jtagmultidevicejtag chain setup”如果有文件存在,在右端點(diǎn)delet刪除(圖3.8);圖3.810 隨后
30、在jtag對(duì)話框“select programmer file”(圖3.9)圖3.9雙擊light.sof點(diǎn)ok。把文件添加到“multidevicejtag chain setup”對(duì)話框中,點(diǎn)add。即完成添加項(xiàng)目。11 回到“programmer”對(duì)話框(圖3.10)圖3.10點(diǎn)configire即開(kāi)始下載。說(shuō)明:本軟件已經(jīng)完成以上工作,學(xué)生只須按如下兩個(gè)步驟完成下載:1 打開(kāi)maxplusii軟件,點(diǎn)擊“fileprojectname”出現(xiàn)如下對(duì)話框(圖3.11)圖3.11點(diǎn)對(duì)話框左端得light點(diǎn)擊ok;2 點(diǎn)“maxplusiiprogrammer”后再點(diǎn)“jtagmultidev
31、icejtag chain setup”出現(xiàn)如下對(duì)話框(圖3.12)圖3.12將light.sof項(xiàng)目添加到“multidevicejtag chain setup”對(duì)話框中,點(diǎn)add?;氐健皃rogrammer”對(duì)話框,點(diǎn)configire即開(kāi)始下載。四實(shí)驗(yàn)現(xiàn)象彩燈右端八個(gè)依次循環(huán)點(diǎn)亮。五實(shí)驗(yàn)說(shuō)明1 選擇頻率源clkjp153(1hz到46hz)能使彩燈點(diǎn)亮速度加快,注意其余的頻率不能選。2 同一個(gè)頻率源中注意不能插兩個(gè)短路帽。3.2 實(shí)驗(yàn)二 單片機(jī)實(shí)驗(yàn)一. 實(shí)驗(yàn)?zāi)康? 了解單片機(jī)與eda接口電路2 學(xué)會(huì)使用單片機(jī)的總線方式與eda通信二. 實(shí)驗(yàn)跳線1 用排線將正申間altera下載板上jc
32、103和實(shí)驗(yàn)板中部下端ide一cs51用二十針排線連接2 將單片機(jī)插在實(shí)驗(yàn)板插座 (注意方向:1腳、40腳在上端)3 選擇頻率源clk jp155中 1024hz插上短路帽三. 實(shí)驗(yàn)項(xiàng)目添加 (方式同實(shí)驗(yàn)一)說(shuō)明:現(xiàn)只針對(duì)如何下載文件1 打開(kāi)max+plusii軟件,點(diǎn)擊“fileprojectname”出現(xiàn)如下對(duì)話框(圖3.13)圖3.13點(diǎn)左端51display,點(diǎn)ok即可;2 點(diǎn)“maxplusiiprogrammer”后再點(diǎn)“jtagmultidevicejtag chain setup”出現(xiàn)如下對(duì)話框(圖3.14)圖3.14將51display.sof項(xiàng)目添加到“multidevic
33、e jtag chain setup”對(duì)話框(圖3.14),點(diǎn)add 回到“programmer”對(duì)話框,點(diǎn)“configure”即可下載?,F(xiàn)將 mcs51.vhd源程序作如下說(shuō)明:library ieee;use ieee.std_logic_1164.all; -mcs51單片機(jī)與fpga的通信讀寫(xiě)電路entity mcs51 isport(-與8031接口的各端口定義;p0:inoutstd_logic_vector(7 downto 0); -雙向地址/數(shù)據(jù)口p2:instd_logic_vector(7 downto 0); -高8位地址線; rd,wr :instd_logic;
34、-讀寫(xiě)信號(hào)ale:instd_logic; -地址瑣存ready :instd_logic; -待讀入數(shù)據(jù)準(zhǔn)備就緒標(biāo)志位 ad_cs:outstd_logic; -a/d器件片選信號(hào); datain1:instd_logic_vector(7 downto 0); -單片機(jī)待讀回信號(hào); latch1:instd_logic; -讀回信號(hào)鎖存; datout1:outstd_logic_vector(7 downto 0); -鎖存輸出數(shù)據(jù)1 datout2:outstd_logic_vector(7 downto 0); -鎖存輸出數(shù)據(jù)2;end mcs51;architecture behv
35、 of mcs51 is -定義各信號(hào)signallatch_addres:std_logic_vector(7 downto 0);signallatch_out1:std_logic_vector(7 downto 0);signal latch_out2:std_logic_vector(7 downto 0);signallatch_in1:std_logic_vector(7 downto 0);signalwr_enable1:std_logic;signalwr_enable2:std_logic;begin-*-low 8 bits latchprocess(ale) -低8位
36、地址鎖存進(jìn)程beginif aleevent and ale=0 thenlatch_addres=p0;-ale的下降沿將p0口的底8位地址鎖存到鎖存器latch_addres中end if;end process;-*-mcs51 write data into cpld when dptr=#6ff5h-當(dāng)dptr=#6ff5h時(shí)將mcs51寫(xiě)數(shù)據(jù)到cpldprocess(p2,latch_addres) wr寫(xiě)信號(hào)進(jìn)程1beginif (latch_addres=11110101) and (p2=01101111) thenwr_enable1=wr; -寫(xiě)允許elsewr_enab
37、le1=1; -寫(xiě)禁止end if;end process;process(wr_enable1) -數(shù)據(jù)寫(xiě)入寄存器1beginif wr_enable1event and wr_enable1=1 thenlatch_out1=p0;end if;end process;-*-mcs51 write data into cpld when dptr=#1ff3h-當(dāng)dptr=#1ff3h 時(shí)寫(xiě)入數(shù)據(jù)process(p2,latch_addres) -wr寫(xiě)信號(hào)進(jìn)程2beginif(latch_addres=11110011) and (p2=00011111) thenwr_enable2=
38、wr;elsewr_enable2=1;end if;end process;process(wr_enable2) -數(shù)據(jù)寫(xiě)入寄存器2中beginif wr_enable2event and wr_enable2=1 thenlatch_out2=p0;end if;end process;-*-mcs51 read data from cpld when dptr=#9f7ehprocess(latch1) -外部數(shù)據(jù)進(jìn)入cpld進(jìn)程beginif latch1event and latch1 =1 thenlatch_in1=datain1;end if;end process;proc
39、ess(p2,latch_addres,ready,rd) -8031對(duì)cpld中數(shù)據(jù)讀入進(jìn)程beginif(latch_addres=01111110) and (p2=10011111) and (ready=1) and (rd=0) then p0=latch_in1; -寄存器中的數(shù)據(jù)讀入p0口elsep0=zzzzzzzz; -禁止讀數(shù),po口呈高阻態(tài)end if;end process;-*-ad start working when dptr=#1ehprocess(latch_addres) -a/d工作控制片選信號(hào)輸出進(jìn)程beginif (latch_addres=0001
40、1110) thenad_cs=0; -允許a/d工作else -禁止a/d工作ad_cs=1;end if;end process;-*datout1=latch_out1; -信號(hào)數(shù)據(jù)輸出到給個(gè)端口datout2=latch_out2;end behv;四. 實(shí)驗(yàn)現(xiàn)象 數(shù)碼管后兩位從00開(kāi)始計(jì)數(shù),其余顯示fffff,計(jì)數(shù)結(jié)束后數(shù)碼管全部顯示ffffffff。五. 實(shí)驗(yàn)說(shuō)明 數(shù)碼管后兩位數(shù)也有可能不從00開(kāi)始記數(shù)。如果全部顯示ffffffff,此時(shí)讓關(guān)閉實(shí)驗(yàn)板電源使altera芯片掉電,重新下載。 3.3 實(shí)驗(yàn)三 頻率計(jì)一. 實(shí)驗(yàn)?zāi)康? 進(jìn)一步了解eda語(yǔ)言功能2 了解eda在高頻工作下的優(yōu)
41、勢(shì),這是單片機(jī)無(wú)法比擬的二. 實(shí)驗(yàn)連線1 實(shí)驗(yàn)板右下方頻率源 clk jp153 中1hz接上短路冒,clk jp155中1024hz接上短路冒.2 從實(shí)驗(yàn)板中部管腳接線區(qū)第60腳引出線,另一頭接到實(shí)驗(yàn)板右上方clk1、clk2、clk3、clk4、clk5任何一個(gè)管腳接線區(qū)三. 實(shí)驗(yàn)項(xiàng)目添加(方式同實(shí)驗(yàn)一)1 在max+plus軟件中,按如下順序點(diǎn)擊“fileprojectname”出現(xiàn)如下對(duì)話框(圖3.15)圖3.15打開(kāi)cpld/freq文件夾,在對(duì)話框左端選擇項(xiàng)目endfreq,點(diǎn)擊ok。2點(diǎn)“max+plus-programmer”后再點(diǎn)”jiag-multi-device jtag
42、 chain setup”出現(xiàn)如下對(duì)話框(圖3.16)圖3.16將cpld/freq/endfreq.sof項(xiàng)目添加到“multi-device jtag chain setup, 點(diǎn) add 回到“programmer“對(duì)話框 , 點(diǎn)”configure”即下載。 現(xiàn)將原程序如下說(shuō)明:-打開(kāi)cnt10.vhd 原文件library ieee;useieee.std_logic_1164.all; -有時(shí)鐘使能的十進(jìn)制計(jì)數(shù)器use ieee.std_logic_unsigned.all;entity cnt10 isport(clk:instd_logic; -計(jì)數(shù)器時(shí)鐘信號(hào) clr:inst
43、d_logic; -清零信號(hào) ena:instd_logic; -計(jì)數(shù)器使能信號(hào) cq:outstd_logic_vector(3 downto 0); -4位計(jì)數(shù)結(jié)果輸出 carry_out:outstd_logic); -計(jì)數(shù)進(jìn)位end cnt10;architecture behv of cnt10 issignal cqi:std_logic_vector(3 downto 0);beginprocess(clk,clr,ena)beginif clr=1 thencqi0); -計(jì)數(shù)器異步清零elsif clkevent and clk=1 thenif ena=1 thenif c
44、qi9 thencqi=cqi+1;elsecqi0); -等于9,則計(jì)數(shù)器清零end if;end if;end if;end process;process(cqi)beginif cqi=9 thencarry_out=1; -進(jìn)位輸出 elsecarry_out=0;end if;end process;cq=cqi;end behv;-打開(kāi) reg32b.vhd原文件ibrary ieee; -32位寄存器use ieee.std_logic_1164.all;entity reg32b isport(load:instd_logic; din:instd_logic_vector(
45、31 downto 0); dout:outstd_logic_vector(31 downto 0);end reg32b;architecture behv of reg32b isbeginprocess(load,din)beginif loadevent and load=1 then -鎖存輸入數(shù)據(jù)dout=din;end if;end process;end behv;同樣在(3-2)對(duì)話框左端 點(diǎn) testct.vhd打開(kāi) testct.vhdlibrary ieee; -測(cè)頻控制信號(hào)發(fā)生器use ieee.std_logic_1164.all;use ieee.std_log
46、ic_unsigned.all;entity testctl isport(clk:instd_logic; -1hz測(cè)頻控制時(shí)鐘 tsten:outstd_logic; -計(jì)數(shù)器時(shí)鐘使能 clr_cnt:outstd_logic; -計(jì)數(shù)器清零 load:outstd_logic); -輸出鎖存信號(hào)end testctl;architecture behv of testctl issignaldiv2clk:std_logic;beginprocess(clk)beginif clkevent and clk =1 then -1hz時(shí)鐘二分頻div2clk=not div2clk;end if;end process;process(clk,div2clk)beginif clk=0 and div2clk=0 thenclr_cnt=1; -產(chǎn)生計(jì)數(shù)器清零信號(hào)elseclr_cnt=0;end if;end process;load=not div2clk;tstenclk,tsten=tsten
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 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ì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- GB/T 29479.1-2025移動(dòng)實(shí)驗(yàn)室第1部分:通則
- 2025-2026學(xué)年甘肅省平?jīng)鍪徐o寧縣數(shù)學(xué)三年級(jí)第一學(xué)期期末監(jiān)測(cè)試題含解析
- 2025-2026學(xué)年福建省泉州市惠安縣數(shù)學(xué)三年級(jí)第一學(xué)期期末復(fù)習(xí)檢測(cè)模擬試題含解析
- 2024年溫泉縣三年級(jí)數(shù)學(xué)第一學(xué)期期末質(zhì)量跟蹤監(jiān)視試題含解析
- 護(hù)理學(xué)的創(chuàng)新思維與試題及答案
- 2025年執(zhí)業(yè)藥師考試必考知識(shí)試題及答案
- 執(zhí)業(yè)醫(yī)師考試學(xué)習(xí)策略監(jiān)控與調(diào)整試題及答案
- 常用抗生素知識(shí)點(diǎn)回顧試題及答案
- 備考2025年中國(guó)文化概論行政管理考試的必修試題及答案
- 自考行政管理考核機(jī)制試題及答案
- 門窗銷售勞動(dòng)合同
- 《中央空調(diào)系統(tǒng)培訓(xùn)資料》課件
- 山東省城市園林綠化鄉(xiāng)土適生植物名錄2024
- 抖音簽約金牌主播合同范例
- 2025年云南省廣播電視局直屬事業(yè)單位招聘62人管理單位筆試遴選500模擬題附帶答案詳解
- 空氣動(dòng)力學(xué)領(lǐng)域大模型研究思考與展望
- 【MOOC】美在民間-南京農(nóng)業(yè)大學(xué) 中國(guó)大學(xué)慕課MOOC答案
- 透析器產(chǎn)業(yè)規(guī)劃專項(xiàng)研究報(bào)告
- 鼻咽癌放射治療技術(shù)
- 航空發(fā)動(dòng)機(jī)部件快速修復(fù)技術(shù)
- GB/T 44713-2024節(jié)地生態(tài)安葬服務(wù)指南
評(píng)論
0/150
提交評(píng)論