1. 程式人生 > >【奔跑的FPGA】part four 我的第一個FPGA工程

【奔跑的FPGA】part four 我的第一個FPGA工程

前段時間做了很多前期的工作,終於成功在板子上運行了自己的第一個FPGA工程,用一個10位的變數控制板載10位小燈按照二進位制每次加一閃亮。週期是1S。

下面將步驟以及遇到的問題貼出來給同樣初學FPGA的同學一點參考。

1,新建一個工程,名稱叫做conuter_leds,選擇儲存路徑,一班路徑不要帶空格,不要帶中文字元,我的在C盤,選擇相應的器件,其他預設設定就可以。

2,新建一個Verilog HDL file,conuter.v檔案,注意檔名不能與工程名稱一致,因為如果這個檔案只是工程的一部分,如果這個檔案與工程名一致的話編譯的時候就會認為整個工程是以這個檔案為中心的,會出錯。鍵入以下程式碼:

module counter(clock,out);
input          clock;
output   [9:0]out;
reg      [9:0]out;
integer i;
[email protected]
(posedge clock) begin if(i==50_000_000) begin out<=out+1; i <=0; end else begin i <= i+1; end end endmodule
這段程式碼的目的是對輸入的時鐘進行計數,當計數到5M時輸出+1,由於系統時鐘是5M,這樣的話輸出的頻率技術1Hz。

3,把上一步編寫的VerilogHDL程式碼變成BSF檔案,這就相當於封裝成一個函式啦。點選File/Create/Update/Create Symbols from Current File,這樣就把剛才編輯的檔案建立了一個counter.bsf檔案備用啦,儲存路徑就在工程根目錄。

4,新建一個BDF檔案File/New/Block Diagram/Schematic File,在這個檔案空白處右鍵Insert/Symbol...,在Liberty框裡找到project,選中counter,這就是咱們剛才生成的BSF檔案啦,拖放到合適位置,然後再建立一個PLL核。

5,建立PLL核:空白處右鍵Insert/Symbol...,點選左下角的MegaWizard Plog-in Manager,點選Next,在搜尋框搜尋PLL,選擇Altera PLL V13.1,選擇右邊輸出檔案型別(VerilogHDL),在路徑後面鍵入名字pll.v(注意也不可以和工程名稱一致),PLL核的設定如圖:


6,插入部件,包括輸入輸出埠和一個非門。方法右鍵/insert/Symbol../在窗口裡面找到primitives/pin,分別放置input和output,非門在logic裡面。

最後效果如圖:


7,輸入和輸出引腳改名以及連線:改名直接在引腳上右鍵proprties就可以了。連線也很簡單。

8,BDF檔案儲存,命名為counter_leds。這時候必須和工程名一致,因為這就是整個工程。

9,引腳匹配:Processing > Start > Start Analysis & Elaboration ,成功以後點選Assignments > PinPlanner,按照下圖或者參照板子的使用者手冊進行引腳匹配(在Location一欄雙擊選擇對應的引腳)



10,點選工具欄的箭頭或者Processing/Starrt Complication進行全編譯,完成以後就可以下載進板子啦,下載步驟請參見上一個部落格。

效果:10個LED燈按照二進位制加一依次點亮,頻率1S。

【作業系統】Win8/64bit

【開發環境】Quartus ii13.1 Web edition

【開發板】DE1-SOC

【晶片】Cyclone V/5CSEMA5F31C6

【我是一輛59】

相關推薦

奔跑FPGApart four 一個FPGA工程

前段時間做了很多前期的工作,終於成功在板子上運行了自己的第一個FPGA工程,用一個10位的變數控制板載10位小燈按照二進位制每次加一閃亮。週期是1S。 下面將步驟以及遇到的問題貼出來給同樣初學FPGA的同學一點參考。 1,新建一個工程,名稱叫做conuter_leds,選擇

spring Boot1.創建一個springBoot項目

web項目 conf star pen sin ocs frame parent mave 入手springBoot,搭建第一個springBoot項目。 看官方文檔還是有點別扭。 https://docs.spring.io/spring-boot/docs/curren

密碼技術Part 4 SSL/TLS

font tls協議 流程 密碼 img nbsp AR mage info 01 SSL/TLS基本概念 02 TLS協議流程圖 【密碼技術】Part 4 SSL/TLS

F3簡介一張圖看懂FPGA-F3實例

安全摘要: 阿裏雲宣布全新一代FPGA雲服務器F3正式上線,並且開通邀測!近期,阿裏雲宣布全新一代FPGA雲服務器F3正式上線,並且開通邀測。實現雲上 FPGA 加速業務的快速研發、安全分發、一鍵部署和彈性伸縮能力。為人工智能產業、圖片視頻轉碼、基因計算提供強有力的加速服務。在FPGA Shell架構上,F3

修煉C++基礎知識筆記-7章 類

1 this  任何對類成員的直接訪問都被看成this的隱式引用,this是一個常量指標 (class *const),不允許改變this中儲存的地址。 常量成員函式:在引數列表後面加一個const,表示this是一個指向常量的指標(const class *const thi

修煉C++基礎知識點筆記-6章 函式

1 當用實參初始化形參時會忽略掉頂層const。形參頂層const被忽略掉了,當形參有頂層const時,傳給它常量物件或者非常量物件都是可以的。 void fcn(const int i){} void fcn(int i )//錯誤:重複定義了fcn(int) 因為頂層const被忽

修煉C++基礎知識點筆記-4,5章 表示式&&語句

1、條件運算子滿足右結合律,意味著運算物件(一般)按照從右向左的順序組合。 //靠右邊的條件運算(比較成績是否小於60)構成了靠左邊的條件運算的:分支。 finalgrade = (grade > 90)?"high pass":(grade < 60) ? "fail":"pa

修煉C++基礎知識點筆記-3章 字串,向量和陣列

重新學習c++的東西,此為《C++ Primer》讀書筆記,主要記錄零碎的知識。另外所有的C++11新標準也會被列出。 1,位於標頭檔案的程式碼一般來說不應該使用using宣告。這是因為標頭檔案的內容會拷貝到所有引用它的檔案中。 2,拷貝 初始化,直接初始化。【???】 3,stri

修煉C++基礎知識點筆記-2章

重新學習c++的東西,此為《C++ Primer》讀書筆記,主要記錄零碎的知識。另外所有的C++11新標準也會被列出。 1,C++ 語言支援分離式編譯機制,該機制允許將程式分割為若干個檔案,每個檔案可以被獨立編譯。 2,名字的作用域:全域性作用域,塊作用域。 for(int val

備忘牛課演算法四期初級班與進階班視訊

├─初級 │      初級2.mp4 │      初級3.mp4 │      初級4-1.mp4 │      初級4-2.mp4 │      初級5.mp4 │      初級6.mp4 │      基礎7.mp4 │      基礎8.mp4 │      

小小妖怪這是的小小收臧夾

專欄達人 授予成功建立個人部落格專欄

HDU 1076寒假練習2_B N個生日

杭電的水題,求當前開始第n個閏年   Description INPUT OUTPUT SAMPLE INPUT SAMPLE OUTPUT #include<stdio.h&

Machine Learning九講異常檢測-- (二)建立一個異常檢測系統

一、Developing and Evaluating an Anomaly Detection System(異常檢測系統的衡量指標) 對於某一演算法,我們可以通過藉助某些數字指標來衡量演算法的好壞,仍舊以飛機引擎的例子來說: 假設有10000個正常的引擎,20個有瑕疵的引擎(異常)

牛!各大公司薪資待遇一覽,心動了

快消類: 聯合利華: MKT 9500+3000元安家費 普通職位 8KX12 聯合利華銷售代表:底薪加提成,總體一般,一般能拿到5K以上 寶潔:本8600、碩9700、博10500發14個月 --11年資料 歐萊雅 MKT:6.6K X 13 --11年資料 瑪氏中國 地

Servlet學習筆記-1使用Eclipse建立一個Servlet並在html頁面呼叫示例

說明:學習過程中參考了很多資料,但此文章主要在https://www.studytonight.com/servlet/creating-servlet-in-eclipse的基礎上調整完成,如果侵權請

自考筆記中國近現代史綱要 三章 辛亥革命

第三章 辛亥革命 導言 本章節為辛亥革命的歷史,重點在於瞭解辛亥革命的歷史意義、失敗原因及經驗教訓 第一節 舉近代民族民主革命的旗幟 辛亥革命爆發的歷史條件有哪些? 民族危機加深,社會矛盾激化 一方面,外國列強對中國的侵略日益擴大,民族危機加深(標誌是辛丑

Microsoft Azure Web Sites應用與實踐1—— 打造你的一個Microsoft Azure Website

Microsoft Azure Web Sites應用與實踐 系列: 打造你的第一個Microsoft Azure Website 想建立一個擁有自己域名的網站但是不想花太多時間在開發和部署上?Microsoft Azure Website可以幫忙做到。分分鐘建立完成,擁有自己的域名,不需

Android開發範例3-"同意"遊戲條款

實現遊戲開始介面中的我同意遊戲條款功能:不勾選“我同意”複選框,就不會出現“開始遊戲”的按鈕,勾選“我同意”複選框,出現“開始遊戲”的按鈕。效果圖如圖: 未點選"我同意"之前 點選“我同意”之後

教她寫程式碼使用Intellij建立一個Springboot程式

首先先介紹一下Springboot:Spring是Java開發中,十分著名的一個框架。但是該框架的使用必須結合大量的XML配置檔案,這一點讓開發人員痛苦無比。Springboot是Spring官方重新構造的一個框架,將Spring的配置簡化了很多。 著名IDE,Intellij介紹:老牌的Java程式碼I