版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、基于nios技術的系統(tǒng)設計與實現(xiàn)- 流水燈led顯示基于nios技術的系統(tǒng)設計與實現(xiàn)- 流水燈led顯示內(nèi)容提要:隨著電子技術的不斷發(fā)展,電子產(chǎn)品向體積越來越小、設計時間越來越短、集成度越來越精密、產(chǎn)品周期越來越短、成本越來越低、功能越來越強大等方向發(fā)展。使用nios處理器的用戶可以根據(jù)他們的需要調嵌入式系統(tǒng)的特性、性能以及成本,快速使得產(chǎn)品推向市場,擴展產(chǎn)品的生命周期,并且避免處理器的更新?lián)Q代。本論文結合eda技術、c語言、nios技術、計算機技術等多種技術實現(xiàn)基于nios的系統(tǒng)設計。并用led流水燈顯示來檢驗我設計的nios技術的系統(tǒng)功能。同時也為其他相關項目的設計提供了參考。關鍵詞:ed
2、a技術 sopc技術 nios處理器 嵌入式技術 led顯示nios technology-based systems design and implementation of- led light water showabstract:with the continuous development of electronic technology, electronic products to the size is getting smaller and smaller, shorter and shorter design time, more and more sophisticate
3、d integration, product life cycle is becoming shorter and shorter, more and more low-cost, more and more powerful features, such as direction. the use of nios processor users based on their need to transfer the characteristics of embedded systems, performance and cost of making products to market qu
4、ickly, expand the products life cycle and to avoid the replacement of the processor.this thesis eda combination of technology, c language, nios technology, computer technology and other technology-based nios system design. and the led light water show designed to test my nios technology system. at t
5、he same time as other related projects designed to provide a referencekey words: eda technology sopc technology nios processor technology embedded led display目 錄一、前言二、總體方案(一) 方案比較(二) 方案論證與選擇 三、所用技術和器件的介紹(一)基本器件的介紹1、eda的介紹2、cpld和fpga的介紹3、quartus的介紹(二)特殊器件介紹1、sopc builder開發(fā)工具介紹2、nios的使用說明3、cyclone ep1
6、c12q240c8開發(fā)板的介紹四、系統(tǒng)設計(一)、硬件設計1.新建工程2.用sopc builder 定制nios處理器及其外設3.在quartus 工程中添加上述nios系統(tǒng)4.添加其他元件模塊5.定義管腳6.編譯工程7.下載編輯代碼到fpga(二)、軟件設計1.設計該工程軟件2.編譯設置3.編譯五、系統(tǒng)調試1.調試2.編譯并下載到實驗板上面六、系統(tǒng)功能、指標參數(shù)七、總結與體會八、辭謝附錄 參考文獻 基于nios技術的系統(tǒng)設計與實現(xiàn)一、前言(緒論)隨著微電子技術的發(fā)展,促使集成電路向高速、高集成度、低工耗的系統(tǒng)集成方向發(fā)展,sopc(system on a programmable chip
7、、片上可編程系統(tǒng))是現(xiàn)代電子技術和電子系統(tǒng)設計的匯聚點和發(fā)展方向。它將傳統(tǒng)的eda技術、計算機系統(tǒng)、嵌入式系統(tǒng)、數(shù)字信號處理技術、數(shù)字通訊系統(tǒng)以及自動控制系統(tǒng)等融為一體,在結構上凝為一片sopc綜合了sopc和pld、fpga各自的優(yōu)點,集成了硬核和軟核cpu、dsp、存儲器、外圍i/o可編程模塊,用戶可以利用sopc平臺自行設計高速、高性能的dsp處理器或特定功能的cpu處理器,從而是電子系統(tǒng)設計進入一個全新的模式目前隨著集成電路工藝技術的不斷發(fā)展和集成度的大幅度提高,嵌入式系統(tǒng)由板級向芯片級過渡,即片上系統(tǒng)-soc(system on chip)。soc通常是指在單一芯片上實現(xiàn)的數(shù)字計算系
8、統(tǒng),其核心技術是重用技術和嵌入式技術。當前嵌入式系統(tǒng)迅速發(fā)展起來,基于nios ii的嵌入式系統(tǒng)以其自己的優(yōu)點被廣泛應用。本文基于nios ii的嵌入式系統(tǒng)設計,利用sopc技術在fpga芯片上,實現(xiàn)系統(tǒng)設計,完成led流水燈設計。首先介紹了eda知識、quartus的簡單介紹,fpga器件,然后介紹了sopc技術、sopc builder、nios ii ide,通過這些知識的詳細介紹,了解了整個設計的方法和流程,最后闡述了自己的設計,由于前面的知識介紹已經(jīng)很詳細,在闡述自己的設計中就少了一些細節(jié)的東西。在本設計過程中,采用sopc嵌入式設計方法,分嵌入式硬件和軟件兩部分進行設計。整個設計的
9、兩個部分分別在sopc builder和nios ii ide中進行,在sopc builder添加組件構建系統(tǒng),系統(tǒng)生成后在quartus ii中進行例化和引腳分配,最后進行編譯,成功后下載到de2開發(fā)板。在nios ii ide中編寫程序,實現(xiàn)功能控制,編譯并運行。 嵌入式軟硬件成功編譯可以看出,本文所設計的nios ii處理器能實現(xiàn)led流水燈的設計,所設計的led流水燈能按照指定的設置,循環(huán)像流水一樣顯示。與傳統(tǒng)設計方法相比,本文是基于nios ii的嵌入式系統(tǒng)設計,設計靈活,是電子設計的新方向。二、總體方案設計。(一) 方案比較。1、基于單片機實現(xiàn)。、電路構成。流水燈方式彩燈控制電路
10、由以下三個部分組成:主電路、觸發(fā)電路和觸發(fā)電路電源電路。主電路包括vs1vs4四只電子開關以及h1h4四只彩燈等。觸發(fā)電路包括用電源路ms54c61,電阻器r1r6,電容器c2、c3以及選擇開關sb1、sb2等。觸發(fā)電路用電源電路包括整流二極管vd1vd4,降壓電阻器r1,降壓二極管vd5和濾波電容器c1等。如圖1所示。ms51c61的主要技術參數(shù)如下;直流電路電壓:vdd=1.55.0v,典型型為3v;靜態(tài)電流:10ua;最大電流:300ua;震蕩頻率:4khz.圖1 流水燈方式彩燈控制電路、電路工作原理。交流電壓經(jīng)vd1vd4組成的橋式整流電路bug整流輸出直流電壓,再經(jīng)r1降壓、vd5穩(wěn)
11、壓和c1濾波后,供給ms51c16集成電路使用。集成電路ms51c61是單片大規(guī)模cmos芯片,其內(nèi)電路和外接電阻器r2、電容器c3組成振蕩器,在邏輯電路的控制下,有4路(8、9、10、11腳)輸出控制,可產(chǎn)生8種流水燈方式,具有手動/自動控制功能。、自動工作方式電路得電后,如果按下sb2使3腳對地短路,則電路由手動工作方式轉為自動工作方式。所有彩燈點亮約15s,檢查燈泡的好壞,然后進入方式的狀態(tài),并自動執(zhí)行種流水方式。每種方式進行12min后,即進入下一種方式。、手動工作方式。通過按鍵sb1進行人工設定,每按動一次開關,改變一種循環(huán)閃亮方式。8種顯示效果是*向前、向后流水,流水速度可變;*一
12、直亮;*前、向后流水,時間為80ms*前、向后流水,時間為160ms;*向前流水,時間為80ms;*向前流水,時間為160ms*向前流水,時間為300ms*向前流水,時間為600ms2、基于nios處理器實現(xiàn)、電路結構。如圖2所示。圖2 電路結構、實現(xiàn)步驟。、在quartus ii 中新建一個工程(硬件)。、在sopc builder 中根據(jù)自己的需要加入cpu、ram、pio、pll等ip核。、利用sopc builder 產(chǎn)生quartus ii 能夠識別的文件。、在中新建的工程中加入)中生成的文件。、加入輸入、輸出以及雙向端口,并根據(jù)需要對其命名。、對中命名的輸入、輸出核雙向端口根據(jù)選定
13、的fpga 進行引腳分配。、編譯工程。、下載編輯代碼到fpga。、利用nios ii ide 新建另一個工程(軟件)。、根據(jù)中的資源,編寫項目需要的代碼。*、 編譯、下載并調試,查看運行結果,直到正確。*、 如果需要,將*中生成的代碼下載到代碼flash 中(二) 方案論證與選擇三、單元模塊設計(一)各單元模塊功能介紹及電路設計1、eda的介紹?,F(xiàn)代電子設計技術的核心是eda(electronic design automation)技術。eda技術就是依賴功能強大的計算機,在eda工具軟件平臺上,對以硬件描述語言hdl(hardware description language)為系統(tǒng)邏輯描
14、述手段完成的設計文件,自動地完成邏輯編譯、邏輯化簡、邏輯分割、邏輯綜合、結構綜合(布局布線),以及邏輯優(yōu)化和仿真測試,直至實現(xiàn)既定的電子線路系統(tǒng)功能。eda技術使得設計者的工作僅限于利用軟件的方式,即利用硬件描述語言和eda軟件來完成對系統(tǒng)硬件功能的實現(xiàn)。eda技術在硬件實現(xiàn)方面融合了大規(guī)模集成電路制造技術、ic板圖設計技術、asic測試和封裝技術、fpga/cpld編程下載技術、自動測試技術等;在計算機輔助工程方面融合了計算機輔助設計(cad)、計算機輔助制造(cam)、計算機輔助測試(cat)、計算機輔助工程(cae)技術以及多種計算機語言的設計概念;而在現(xiàn)代電子學方面則容納了更多的內(nèi)容,
15、如電子線路設計理論=數(shù)字信號處理技術、數(shù)字系統(tǒng)建模、和優(yōu)化技術及長線技術理論等。因此,eda技術為現(xiàn)代電子理論和設計的表達與實現(xiàn)提供了可能性。在現(xiàn)代技術的所有領域中,得以飛速發(fā)展的科學技術多為計算機輔助設計,而非自動化設計。顯然,最早進入設計自動化的技術領域之一是電子技術,這就是為什么電子技術始終處于所有學科發(fā)展最前列的原因之一。不難理解,eda技術已不是某一學科的分支,或某種新的技能技術,它應該是一門綜合性學科。它融合多學科于一體,又滲透于各學科之中,打破了軟件和硬件間的壁壘,使計算機的軟件技術與硬件實現(xiàn)、設計效率和產(chǎn)品性能和二為一,它代表了電子設計和應用技術的發(fā)展方向。正因為eda技術豐富
16、的內(nèi)容以及與電子技術各學科領域的相關性,其發(fā)展的歷程同大規(guī)模集成電路設計技術、計算機輔助工程、可編程邏輯器件,以及電子設計技術和工藝的發(fā)展是同步的,經(jīng)過進三十年電子技術的發(fā)展歷程,eda技術到了21世紀后,得到了更大的發(fā)展,突出表現(xiàn)在以下幾個方面:(1)使電子設計成果以自主知識產(chǎn)權的方式得以明確表達和確認成為可能。(2)在仿真和設計兩方面支持標準硬件描述語言的功能強大的eda軟件不斷推出。(3)電子技術全方位進入eda領域,除了日益成熟的數(shù)字技術外,傳統(tǒng)的電路系統(tǒng)設計建模理念發(fā)生了重大的變化;軟件無線電技術的崛起,模擬電路系統(tǒng)硬件描述語言的表達和設計的標準化,系統(tǒng)可編程模擬器件的出現(xiàn),數(shù)字信號
17、處理和圖像處理的全硬件實現(xiàn)方案的普遍接受,軟硬件技術的進一步融合等。(4)eda使得電子技術領域各學科的界限更加模糊,更加互為包容:模擬與數(shù)字、軟件與硬件、系統(tǒng)與器件、asic與fpga、行為與結構等。(5)更大規(guī)模的fpga和cpld器件的不斷推出。(6)基于eda工具、用語asic設計的標準單元已涵蓋大規(guī)模電子系統(tǒng)及復雜ip核模塊(ip即intellectual property,即知識產(chǎn)權的簡稱)。(7)軟硬件ip核在電子行業(yè)的產(chǎn)業(yè)領域、技術領域和設計應用領域得到進一步確認。(8)soc高效低成本設計技術的成熟。(9)系統(tǒng)級、行為驗征級硬件描述語言(如system c)的出現(xiàn),使復雜電子
18、的設計和驗證趨于簡單。在eda技術中一般采用的設計方法為“自頂向下”設計方法,其步驟是采用可完全獨立于目標器件芯片物理結構的硬件描述語言,在系統(tǒng)的基本功能或行為級上對設計的產(chǎn)品進行行為描述和定義,結合多層次的仿真技術,在確保設計的可行性與正確性的前提下完成功能確認。然后利用eda工具的邏輯綜合功能,把功能描述轉換為某一具體目標芯片的網(wǎng)表文件,經(jīng)編程器下載到可編程目標芯片中(如fpga/cpld芯片),使該芯片能夠實現(xiàn)設計要求的功能。這樣,一塊芯片就是一個數(shù)字電路系統(tǒng)。使電路系統(tǒng)體積大大減小,可靠性得到提高。在集成電路的每個層次上,大致都有描述、模擬驗證、綜合三種類型的工作,所以這三個領域也成為
19、eda工具開發(fā)所主要針對的領域。 硬件描述語言(hdl)硬件描述語言(hardware description language 或 hdl)是設計者和eda工具的界面,設計者通過硬件描述語言描述自己的描述對象。eda工具所支持和采納的硬件描述語言有圖形的,也有文本化的;有經(jīng)過國際組織標準化的通用的硬件描述語言,如vhdl,也有eda工具開發(fā)商為工具制定的專用的硬件描述語言,如altera公司的ahdl等。 模擬驗證所謂模擬驗證,是指對實際數(shù)字系統(tǒng)加以抽象,提取其模型,然后將外部激勵信號施加于此模型,通過觀察模型在外部激勵信號作用下的反應,判斷該數(shù)字系統(tǒng)是否實現(xiàn)了預期的功能。因為一個設計表示的
20、方法有多種層次,所以對一個設計進行驗證的模擬過程也有不同的層次。模擬過程一般涉及寄存器傳輸級模擬、邏輯級(門級)模擬、電路級模擬3個層次.(3)綜合綜合(synthesis),就其字面含義應該是:把抽象的實體結合成單個或統(tǒng)一的實體。因此,綜合就是把某些東西結合到一起,把設計抽象層次中的一種表達轉化成另一種表達過程。在電子設計領域中綜合可以表示為:將用行為和功能層次表達的電子系統(tǒng)轉化為低層次的便于具體實現(xiàn)的模塊組合裝配的過程。具體設計流程如圖1-1-1所示。圖3-1-1自頂向下的設計流程2、cpld和fpga的介紹。(1)、cpld的介紹。cpld(complex programmable lo
21、gic device)是complex pld的簡稱,一種較pld為復雜的邏輯元件。cpld是一種用戶根據(jù)各自需要而自行構造邏輯功能的數(shù)字集成電路。其基本設計方法是借助集成開發(fā)軟件平臺,用原理圖、硬件描述語言等方法,生成相應的目標文件,通過下載電纜(“在系統(tǒng)”編程)將代碼傳送到目標芯片中,實現(xiàn)設計的數(shù)字系統(tǒng)。20世紀70年代,最早的可編程邏輯器件-pld誕生了。其輸出結構是可編程的邏輯宏單元,因為它的硬件結構設計可由軟件完成(相當于房子蓋好后人工設計局部室內(nèi)結構),因而它的設計比純硬件的數(shù)字電路具有很強的靈活性,但其過于簡單的結構也使它們只能實現(xiàn)規(guī)模較小的電路。為彌補pld只能設計小規(guī)模電路這
22、一缺陷,20世紀80年代中期,推出了復雜可編程邏輯器件-cpld。目前應用已深入網(wǎng)絡、儀器儀表、汽車電子、數(shù)控機床、航天測控設備等方面。 它具有編程靈活、集成度高、設計開發(fā)周期短、適用范圍寬、開發(fā)工具先進、設計制造成本低、對設計者的硬件經(jīng)驗要求低、標準產(chǎn)品無需測試、保密性強、價格大眾化等特點,可實現(xiàn)較大規(guī)模的電路設計,因此被廣泛應用于產(chǎn)品的原型設計和產(chǎn)品生產(chǎn)(一般在10,000件以下)之中。幾乎所有應用中小規(guī)模通用數(shù)字集成電路的場合均可應用cpld器件。cpld器件已成為電子產(chǎn)品不可缺少的組成部分,它的設計和應用成為電子工程師必備的一種技能。 cpld是一種用戶根據(jù)各自需要而自行構造邏輯功能的
23、數(shù)字集成電路。其基本設計方法是借助集成開發(fā)軟件平臺,用原理圖、硬件描述語言等方法,生成相應的目標文件,通過下載電纜(“在系統(tǒng)”編程)將代碼傳送到目標芯片中,實現(xiàn)設計的數(shù)字系統(tǒng)。這里以搶答器為例講一下它的設計(裝修)過程,即芯片的設計流程。cpld的工作大部分是在電腦上完成的。打開集成開發(fā)軟件(altera公司 max+plux ii)畫原理圖、寫硬件描述語言(vhdl,verilog)編譯給出邏輯電路的輸入激勵信號,進行仿真,查看邏輯輸出結果是否正確進行管腳輸入、輸出鎖定(7128的64個輸入、輸出管腳可根據(jù)需要設定)生成代碼通過下載電纜將代碼傳送并存儲在cpld芯片中。7128這塊芯片各管腳
24、已引出,將數(shù)碼管、搶答開關、指示燈、蜂鳴器通過導線分別接到芯片板上,通電測試,當搶答開關按下,對應位的指示燈應當亮,答對以后,裁判給加分后,看此時數(shù)碼顯示加分結果是否正確,如發(fā)現(xiàn)有問題,可重新修改原理圖或硬件描述語言,完善設計。設計好后,如批量生產(chǎn),可直接復制其他cpld芯片,即寫入代碼即可。如果要對芯片進行其它設計,比如進行交通燈設計,要重新畫原理圖、或寫硬件描述語言,重復以上工作過程,完成設計。這種修改設計相當于將房屋進行了重新裝修,這種裝修對cpld來說可進行上萬次。(2)、fpga的介紹。fpga是英文field programmable gate array的縮寫,即現(xiàn)場可編程門陣列
25、,它是在pal、gal、pld等可編程器件的基礎上進一步發(fā)展的產(chǎn)物。它是作為專用集成電路(asic)領域中的一種半定制電路而出現(xiàn)的,既解決了定制電路的不足,又克服了原有可編程器件門電路數(shù)有限的缺點。 fpga采用了邏輯單元陣列l(wèi)ca(logic cell array)這樣一個新概念,內(nèi)部包括可配置邏輯模塊clb(configurable logic block)、輸出輸入模塊iob(input output block)和內(nèi)部連線(interconnect)三個部分。fpga的基本特點主要有: 采用fpga設計asic電路,用戶不需要投片生產(chǎn),就能得到合用的芯片。 fpga可做其它全定制或半定
26、制asic電路的中試樣片。 fpga內(nèi)部有豐富的觸發(fā)器和io引腳。 fpga是asic電路中設計周期最短、開發(fā)費用最低、風險最小的器件之一。 fpga采用高速chmos工藝,功耗低,可以與cmos、ttl電平兼容。可以說,fpga芯片是小批量系統(tǒng)提高系統(tǒng)集成度、可靠性的最佳選擇之一。目前fpga的品種很多,有xilinx的xc系列、ti公司的tpc系列、altera公司的fiex系列等。 fpga是由存放在片內(nèi)ram中的程序來設置其工作狀態(tài)的,因此,工作時需要對片內(nèi)的ram進行編程。用戶可以根據(jù)不同的配置模式,采用不同的編程方式。加電時,fpga芯片將eprom中數(shù)據(jù)讀入片內(nèi)編程ram中,配置
27、完成后,fpga進入工作狀態(tài)。掉電后,fpga恢復成白片,內(nèi)部邏輯關系消失,因此,fpga能夠反復使用。fpga的編程無須專用的fpga編程器,只須用通用的eprom、prom編程器即可。當需要修改fpga功能時,只需換一片eprom即可。這樣,同一片fpga,不同的編程數(shù)據(jù),可以產(chǎn)生不同的電路功能。因此,fpga的使用非常靈活。fpga有多種配置模式:并行主模式為一片fpga加一片eprom的方式;主從模式可以支持一片prom編程多片fpga;串行模式可以采用串行prom編程fpga;外設模式可以將fpga作為微處理器的外設,由微處理器對其編程。3、quartus的介紹。altera公司的q
28、uartus軟件就是eda設計的最優(yōu)秀的軟件之一,使用它不僅可以靈活地設計電子系統(tǒng),而且還可以對設計方案進行模擬仿真,及早發(fā)現(xiàn)錯誤和缺陷。本次設計我用的是quartusii5.0。*使用quartus 設計流程圖:如圖1-5-1和1-5-2所示。圖3-5-1使用quartus 的基本設計流程圖3-5-2使用quartus 的簡化設計流程*quartus軟件的介紹:quartus設計軟件是altera公司推出的cpld/fpga開發(fā)工具,是適合單芯片可編程系統(tǒng) (sopc) 的最全面的設計環(huán)境。quartus 提供了完全集成且與電路結構無關的開發(fā)包環(huán)境,具有數(shù)字邏輯設計的全部特性,包括:(1)、
29、可利用原理圖、結構框圖、verilog hdl、ahdl和vhdl完成電路描述,并將其保存為設計實體文件;(2)、芯片(電路)平面布局連線編輯;(3)、logic lock增量設計方法,用戶可建立并優(yōu)化系統(tǒng),然后添加對原始系統(tǒng)的性能影響較小或無影響的后續(xù)模塊;(4)、功能強大的邏輯綜合工具;(5)、完備的電路功能仿真與時序邏輯仿真工具;(6)、定時/時序分析與關鍵路徑延時分析;(7)、可使用signal tapii邏輯分析工具進行嵌入式的邏輯分析;(8)、支持軟件源文件的添加和創(chuàng)建,并將它們鏈接起來生成編程文件;(9)、使用組合編譯方式可一次完成整體設計流程;(10)、自動定位編譯錯誤;(11
30、)、高效的期間編程與驗證工具;(12)、可讀入標準的edif網(wǎng)表文件、vhdl網(wǎng)表文件和verilog網(wǎng)表文件;(13)、能生成第三方eda軟件使用的vhdl網(wǎng)表文件和verilog網(wǎng)表文件。*quartus 圖形用戶界面的基本設計流程:(1)、使用new project wizard (file 菜單)建立新工程并指定目標器件或器件系列。(2)、使用text editor(文本編輯器)建立verilog hdl、vhdl或altera硬件描述語言 (ahdl)設計。 您可以使用 block editor(原理圖編輯器)建立流程圖或原理圖。流程圖中可以包含代表其它設計文件的符號。還可以使用me
31、ga wizard plug-in manager 生成宏功能模塊和ip內(nèi)核的自定義變量,在設計中將它們實例化。(3)、(可選)使用assignment editor、pin planner、settings對話框(assignments 菜單)、floorplan editor、design partitions窗口、 logic lock功能指定初始設計的約束條件。(4)、(可選)進行early tining estimate,在完成fitter之前生成時序結果的早期估算。(5)、(可選)使用 sopc builder或dsp builder 建立系統(tǒng)級設計。(6)、(可選)使用 soft
32、ware builder 為 excalibur 器件處理器或 nios 嵌入式處理器建立軟件和編程文件。(7)、(可選)使用analysis & synthesis對設計進行綜合。(8)、 (可選)如果設計含有分區(qū),而沒有進行完整編譯,則需要采用partition merge合并分區(qū)。(9)、通過使用simulator和generate functional simulation netlist ,命令在設計中執(zhí)行仿真功能。(10)、使用fitter對設計執(zhí)行布局布線。在對源代碼進行少量更改之后,還可以使用增量布局布線。(11)、使用powerplay power analyzer 進行功耗
33、估算和分析。(12)、使用timing analyzer對設計進行時序分析。(13)、使用simulator仿真器對設計進行時序仿真。(14)、(可選)使用物理綜合、timing closure平面布局圖、logic lock功能、settings對話框和 assignment editor改進時序,達到時序逼近。(15)、使用assembler為設計建立編程文件。(16)、使用編程文件、programmer和altera硬件編程器對器件進行編程;或將編程文件轉換為其它文件格式以供嵌入式處理器等其它系統(tǒng)使用。(17)、(可選)使用 signal tap ii logic analyzer、si
34、gnalprobe 功能或 chip editor 對設計進行調試。(18)、 (可選)使用 chip editor、resource property editor 和 change manager 進行工程更改管理*如何建立工程。new project wizard (file 菜單)將工程信息存儲在quartus工程配置文件(.quartus)中,如圖 3-5-3所示。它包含有關quartus工程的所有信息,包括設計文件、波形文件、signal tap文件、內(nèi)存初始化文件以及構成工程的編譯器、仿真器和軟件構件設置??梢允褂胣ew project wizard (file 菜單)。使用ne
35、w project wizard 如圖 3-5-4所示。可以為工程指定工作目錄、分配工程名稱以及指定最高層設計實體的名稱。還可以指定要在工程中使用的設計文件、其他源文件、用戶庫和eda工具,以及目標器件系列和器件(也可以讓quartus軟件自動選擇器件)。建立工程后,可以使用settings對話框(assignments菜單)的add/remove頁在工程中添加和刪除設計和其他文件。圖 3-5-3 quartus工程文件圖 3-5-4 建立工程(1.新建工程向導 2.選擇工程路徑、名、頂層模塊名 3.添加設計文件 4.選擇目標器件(fpga型號) 5.選擇eda綜合、仿真、時序分析工具 6.總
36、結)*如何建立設計??梢允褂胵uartus軟件在quartus block editor中建立設計,或使用quartus text editor通過ahdl、veriloghdl或vhdl設計語言建立設計。quartus軟件還支持采用eda設計輸入和綜合工具生成的edif輸入文件(.edf)或vqm文件(.vqm)建立的設計。還可以在eda設計輸入工具中建立veriloghdl或vhdl設計,以及生成的edif輸入文件和vqm文件,或在quartus工程中直接使用veriloghdl或vhdl設計文件??梢允褂靡韵略O計文件類型在quartus軟件或eda設計輸入工具中建立設計。支持的設計類型如
37、圖3-5-4所示。圖3-5-4 quartus工程所支持的文件格式(二)特殊器件介紹1、sopc builder開發(fā)工具介紹。sopc即system on a programmable chip是指用可編程邏輯器件把整個系統(tǒng)放到一塊硅片上。一方面它是片上系統(tǒng)即由單個芯片完成整個系統(tǒng)的主要邏輯功能;另一方面,它是可編程系統(tǒng),具有靈活的設計方式,可裁減、擴充、升級,并具備軟硬件在系統(tǒng)可編程的功能。這項技術將eda、計算機設計、嵌入式系統(tǒng)、工業(yè)自動控制系統(tǒng)、dsp及數(shù)字通訊系統(tǒng)融為一體。一個最小系統(tǒng)應該包括中央處理單元(cpu)、隨機存儲器(ram)和flash rom(存儲代碼、數(shù)據(jù)等),稍微復雜
38、點的系統(tǒng)至少應該包括uart、dma、timer、中斷管理模塊以及gpio 等。(1)、sopc builder簡介。sopc builder是altera公司推出的一種可加快在pld內(nèi)實現(xiàn)嵌入式處理器相關設計的工具,其功能與pc應用程序中的引導模板(wizard)類似,旨在提高設計者可確定需要的處理器和參數(shù),并根據(jù)此創(chuàng)建一個處理器的完整存儲器映射,設計者還可以選擇所需要的ip外圍電路,如存儲控制器,i/o控制器和定時器等模塊。sopc builder庫中已有的組建包括:*處理器:包括片內(nèi)處理器和片外處理器接口*ip及外設:包括通用的微控制器外設、通訊外設,多種接口(存儲器接口、橋接口、ass
39、p、asic),dsp ip和硬件加速外設。(2)、sopc builder用戶界面。打開quartus的一個項目,選擇quartus工具欄(tool菜單)中的sopc builder 選項,就啟動了sopc builder。sopc builder 的用戶界面包括系統(tǒng)元件(system contents)頁。系統(tǒng)設置(more cpu setting)頁和系統(tǒng)生成頁。*、系統(tǒng)元件頁。用戶在系統(tǒng)元件頁中定義所需的系統(tǒng)。在它的模塊池中包括了用戶可獲得的所有元件列表。在模塊表中列出的是用戶已添加到系統(tǒng)的模塊。當用戶用sopc builder 生成系統(tǒng)時,它就生成了一個系統(tǒng)模塊,這個模塊包括了用戶所
40、有元件和接口以及自動生成的總線(互聯(lián))邏輯。模塊表中列出的是用戶添加到用戶所設計的系統(tǒng)中的模塊,包括橋、總線接口、cpu、存儲器接口、外圍設備等。此外,用戶可以用模塊表來描述以下一些項目:連接的主從特性系統(tǒng)的地址映射系統(tǒng)中斷請求分配控制共享從元件的優(yōu)先權系統(tǒng)元件還包括以下一些附加選項: 器件系列(device family):由用戶從器件列表中選擇用戶的目標器件。這項設置非常重要,因為sopc builder是利用所選器件的結構優(yōu)勢來生成系統(tǒng)邏輯的。 系統(tǒng)的時鐘頻率:外圍設備利用系統(tǒng)時鐘來產(chǎn)生時鐘分頻或波特率等。sopc builder 的 builder-in testbench 發(fā)生器還利
41、用這項設置來生成用戶所要求的頻率。*系統(tǒng)的設置項。當用戶向所設計的系統(tǒng)中添加元件時,比如一個nios嵌入式處理器,在sopc builder 中就會出現(xiàn)一個系統(tǒng)設置(more cpu setting)的附加頁。這個附加頁可以讓用戶用來設置一些附加的參數(shù)或者與系統(tǒng)中其他元件的相連關系。比如,用戶可以定義cpu和存儲器元件之間的相關聯(lián)關系指明哪一個用來做程序存儲器,哪一個用來做數(shù)據(jù)存儲器的對于用到的系統(tǒng)設置頁的元件,sopc builder 會對用戶添加到系統(tǒng)中的這個元件的每種情況都生成一個系統(tǒng)設置頁。另外,處理器元件可能會有相關的軟件組成,并且會在這一頁中顯示出來 altera在開發(fā)工具包中提供
42、了多種軟件組成,比如tcp/ip庫。*系統(tǒng)生成頁系統(tǒng)生成頁是用來生成系統(tǒng)的。它包含一些選項,用戶可以通過設置來控制生成的過程,比如,可以指定生成仿真工程。如圖1-6-1所示:系統(tǒng)生成頁點擊generated按鈕來生成所設計的系統(tǒng)。sopc builder 會生成一些項目:sdk(sofeware development kid)軟件開發(fā)工具包,只有nios系統(tǒng)中產(chǎn)生,nios不會生成此文件系統(tǒng)中的每一個元件的hdl文件指定生成模塊的hdl文件仿真工程文件日志(.log)文件圖 3-6-1系統(tǒng)生成頁2、nios的使用說明。(1)、nios介紹。nios是一個用戶可配置的通用risc嵌入式處理器。
43、altera推出的nios系列嵌入式處理器擴展了目前世界上最流行的軟核嵌入式處理器的性能,把nios嵌入到altera的所有fpga中,例如stratix、stratix、cyclone、cyclone、apex、acex和 hardcopy系列器件中,用戶可獲得超過200dmips的性能,用戶可以從三種處理器以及超過60個ip核中選擇所需要的,nios系統(tǒng)為用戶提供了最基本的多功能性,設計師可以以次來創(chuàng)建一個最適合他們需要的嵌入式系統(tǒng)。 nios處理器的優(yōu)點和特性:使用nios處理器的用戶可以根據(jù)他們的需要來調整嵌入式系統(tǒng)的特性、性呢感以及成本,快速使得產(chǎn)品推向市場,擴展產(chǎn)品的生命周期,可以
44、避免處理器的更新?lián)Q代。*提高系統(tǒng)性能。 一系列的處理器核可供選擇,其中包括了超過200dmips性能的核; 實現(xiàn)任何數(shù)量的處理器或將不同的處理器核組合在一起; 增加了已有的處理器,在fpga中添加一個或更多的nios軟核處理器。*更低的系統(tǒng)成本。 通過將處理器、外設、存儲器和i/o接口集成到一個單一的fpga中。從而降低了系統(tǒng)成本、復雜性和功耗。通過將nios處理器嵌入到低成本的fpga只需花費10-20元人民幣。*應對產(chǎn)品的生命周期。 提供易用的設計工具從而加速將產(chǎn)品推向市場。 提供永久的、免費的許可從而使基于nios處理器的產(chǎn)品避免了處理器的更新?lián)Q代而帶來的損失。*功能強大、易用的開發(fā)工具
45、。 通過使用nios集成開發(fā)環(huán)境(ide),從而加速了軟件的開發(fā)。 利用altera的強大的sopc builder系統(tǒng)開發(fā)工具和quartus設計軟件可以在幾分鐘內(nèi)設計一個系統(tǒng)。*使用完全功能的開發(fā)包。 使用易用的nios開發(fā)包開始一個設計。 可以選擇具有低成本特性的cyclone fpga開發(fā)套件,或高性能的stratix fpga開發(fā)套件。(2)、nios設計流程。nios是用nioside集成開發(fā)環(huán)境來完成整個軟件工程的編輯、編譯、調試和下載。圖1-7-1 表示了典型nios系統(tǒng)的硬件組成。圖3-7-1 nios系統(tǒng)的硬件組成開發(fā)工作流程: 初期開發(fā)工作:需要軟硬件結合處理,對系統(tǒng)進行
46、需求分析。比如:cpu是否需要一個硬件加速乘法器,設計中所需要的外圍器件及數(shù)量,是否需要dma通道釋放cpu在進行拷貝時所占用的資源; 硬件開發(fā):用sopc builder 定義nios處理器系統(tǒng),用quartus軟件定義器件、分配管腳并編譯; 軟件開發(fā):c/c+程序開發(fā),開發(fā)鼎峙硬件的驅動程序,定義硬件平臺為目標進行編譯連接; 下載到開發(fā)板上進行驗證; 成功完成nios系統(tǒng)設計。*硬件開發(fā)流程用sopc builder 來選擇合適的cpu、存儲器以及外圍器件,比如 片內(nèi)存儲器、pio、uart和片外存儲器接口。用quartus軟件選取具體的器件,并對sopc builder 生成hdl設計文
47、件進行布局布線;再根據(jù)開發(fā)板分配i/o管腳。編譯完后生成適合目標器件的網(wǎng)表??梢允褂孟螺d電纜將配置文件下載到開發(fā)板上。當校驗硬件或時鐘完畢時軟件開發(fā)工作就可以開始了*軟件開發(fā)流程系統(tǒng)軟件設計具體工作如下:在用sopc builder 系統(tǒng)集成軟件進行硬件設計同時,就可以開始編寫c/c+軟件,比如算法或控制程序。用戶可以使用現(xiàn)成的軟件庫和開放的操作系統(tǒng)內(nèi)核加快開發(fā)過程;在nioside中建立新的軟件工程時,ide會根據(jù)sopc builder 對系統(tǒng)的硬件配置自動定制hal(硬件抽象層)系統(tǒng)庫,這個系統(tǒng)庫可以為程序和底層硬件的通訊提供接口驅動程序;使用nioside編譯調試軟件;硬件已下載到板上
48、的基礎下將軟件下載到開發(fā)板上并在硬件上運行。3、開發(fā)板芯片cyclone ep1c12q240c8的介紹.開發(fā)實驗板采用pci-e x1接口,為方便用戶進行自主開發(fā),提供了80個可用的fpga io輸入輸出,用戶可以自行設計應用接插板,如外部a/d數(shù)據(jù)采集,圖象數(shù)據(jù)處理等系統(tǒng)應用,而不需要對pci-e接口有過多的了解. pci-e接口芯片采用了plx公司的plx8111bb66bc,完全支持pci-e 1.0a協(xié)議,外部接口最高支持66m的工作頻率,32位總線的寬度,支持最大266m字節(jié)/秒的突發(fā)峰值傳送速度.核心fpga芯片采用altera公司的新型cyclone fpga系列,ep1c12
49、q240c8,容量分別為12000個邏輯宏單元,等效于標準30萬邏輯門電路,速度為-8,編譯后系統(tǒng)速度可以達到100mhz,可以支持altera 公司的sopc內(nèi)核nios2系統(tǒng)的開發(fā),nios2開發(fā)環(huán)境編譯后的可執(zhí)行文件可以通過pci接口下載到開發(fā)板上的flash中去,如圖所示。性能參數(shù): fpga的外部總線接口支持8、16、32,64位數(shù)據(jù)總線,可以直接和cpu、sdram、fifo、sram、外部接口芯片等設備直接相連.以下是fpga開發(fā)板內(nèi)部ip核接口:pci總線2.3標準,32位總線,完全vhdl源代碼設計提供;支持pci 66m總線工作頻率標準;支持pci總線配置讀、配置寫;支持p
50、ci總線io讀、io寫;支持pci總線bus master 讀、bus master 寫;支持內(nèi)部dma中斷和外部總線輸入中斷產(chǎn)生;支持一個pci io空間,大小為256字節(jié);支持一個pci內(nèi)存空間,大小為4m字節(jié);支持pci突發(fā)訪問方式,突發(fā)長度為8至128個雙字長度;用戶可自己定義設備id和制造商id;1個fpga內(nèi)部16c450串口,完全vhdl內(nèi)核提供;1組4mx32位sdram,容量最高支持到64mx32位的sdram接口,完全vhdl內(nèi)核sdram接口源代碼提供;1組16位flash(29lv800bb),1m字節(jié),可以擴充至32位,最高16m字節(jié)flash,完全vhdl源代碼設計
51、提供;4通道開關量輸出,集電極開路輸出,500ma驅動電流,可擴展至64路開關量輸出;4通道開關量輸入,可擴展至64路輸入;4個led狀態(tài)指示燈輸出,提供調試和測試使用,完全vhdl內(nèi)核源代碼提供;外擴標準32位數(shù)據(jù)總線,提供dma數(shù)據(jù)傳送能力;通過2.54mm 100針接插件,提供80個gpio輸入輸出,用戶可以自行設計各種a/d板等插在開發(fā)平臺上,外部總線接口的工作頻率可以達到66mhz;圖 fpga開發(fā)板四、系統(tǒng)設計。(一).硬件設置。1.新建工程。.在【開始】菜單中,打開quartus ii 5.0。界面如圖所示。圖quartus ii 5.0軟件界面.建立工程文件。新建一個工程目錄“
52、sopc_led”,在次目錄下建立一個名為“sopc_led”的quartus工程。如圖所示。圖 5-1-2 建立工程文件.新建頂層圖文件。如圖 5-1-3 所示。圖 5-1-3 建立頂層圖文件2.用sopc builder 定制nios處理器及其外設。打開tool sopc builder 要求指定系統(tǒng)名稱,本論文中輸入nios_cpu如圖 5-2-1所示。如圖 5-2-1 打開sopc 并命名按ok進入定制界面。選擇target,本論文選擇unspecified board ;選擇時鐘頻率,clock(mhz);本論文選50.0;選擇目標器件系列,target device family:
53、本論文選擇cyclone。如圖 5-2-2 所示。在sopc定制界面的左邊,我們可以看到有許多功能模塊,這些功能模塊用戶可以按照需要添加到所設計的系統(tǒng)中。圖 5-2-2 sopc定制界面.添加cpu模塊。我們需要一個cpu。雙擊nios processor altera corporation 彈出altea nios對話框,我們選擇一個中等的cpu核,即nios/s,如圖5-2-3所示。圖 5-2-3 選擇cpu核點擊cachestightly coupled memories,把instruction cache改為1kbytes 如圖 所示。圖 選擇caches點擊jtag debug module,選擇level 2。如圖所示。圖5-2-4 level 2點擊finish完成nios cpu 的配制工作。項目中會添加一個nios處理器,名字為cpu_0,為了簡便起見,沒有將它改名。改名的方法是:右鍵rename,輸入名字后回車。如圖 5-2-5 所示。圖5-2-5 完成cpu配制.添加jtag uart模塊。雙擊jtag uart,(在avalon modules - co
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年福建福州市大數(shù)據(jù)產(chǎn)業(yè)基地開發(fā)有限責任公司招聘筆試參考題庫附帶答案詳解
- 2025年四川雅安市石棉縣晟豐農(nóng)業(yè)發(fā)展有限責任公司招聘筆試參考題庫附帶答案詳解
- 2025年江西兄弟醫(yī)藥有限公司招聘筆試參考題庫含答案解析
- 2025年江西各地供電服務公司招聘筆試參考題庫含答案解析
- 2025年中通客車股份有限公司招聘筆試參考題庫含答案解析
- 二零二五年度生態(tài)修復工程承包經(jīng)營權轉讓合同范本3篇
- 二零二五年度江蘇地區(qū)二手車置換及銷售服務合同2篇
- 二零二五年度智慧農(nóng)業(yè)項目工程合同外包方案3篇
- 二零二五年度電力設備二手變壓器銷售及售后服務合同3篇
- 2024版智能醫(yī)療設備研發(fā)與供應合同
- 幼兒園一日常規(guī)安全管理
- 考研心理學專業(yè)基礎(312)研究生考試試題及解答參考(2025年)
- 2024-2025學年人教版生物學七年級上冊期末復習練習題(含答案)
- 《AIGC應用實戰(zhàn)(慕課版)》-課程標準
- 《安全生產(chǎn)治本攻堅三年行動方案(2024-2026年)》子方案合集
- 2024-2025學年遼寧省小學五年級上學期期末英語試題及解答參考
- 機器人機構學基礎 部分習題及答案(于靖軍 )
- 中建橋面系及橋梁附屬專項施工方案
- 永威置業(yè)項目交付前風險排查表
- 《儲能材料與器件》課程教學大綱(新能源材料與器件專業(yè))
- 2024年海南省公務員考試《行測》真題及答案解析
評論
0/150
提交評論