【笔记】Altera - Quartus II使用方法——工程创建、Modelsim破解/仿真、Verilog编写、举例(待续)
生活随笔
收集整理的這篇文章主要介紹了
【笔记】Altera - Quartus II使用方法——工程创建、Modelsim破解/仿真、Verilog编写、举例(待续)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Altera - Quartus II食用方法
- @ 代碼 => 模塊原理圖
- [1/2]Processing => Start => Start Analysis & Elaboration
- [2/2] Tools => Netlist Viewers => RTL Viewers
- [效果] 模塊原理圖
- 開發板 - EP4CE10
- 開發板綜合測試
- FPGA簡介
- FPGA & ARM
- FPGA制造商
- FPGA優勢
- FPGA應用領域
- FPGA內部結構
- FPGA開發流程
- Quartus II
- 開發流程
- 0、工程路徑
- 1、打開軟件
- 2、新建工程
- 1/5 選擇路徑、工程名
- 2/5 添加已有的設計文件
- 3/5 芯片選型:EP4CE10
- 4/5 第三方工具,不使用
- 5/5 總結
- 3、設計輸入
- 1、雙擊,無設計文件時:**File** => **New** => **Verilog HDL File**
- 2、編寫設計文件
- 3、保存 設計文件
- 4、配置工程
- TAB 配置
- 雙用引腳,改為GPIO功能:
- 5、分析與綜合
- 6、引腳分配(Pin Planner)
- 7、編譯工程
- 8、下載程序
- 下載到**SRAM**,斷電丟失
- 生成FLASH文件
- 下載FLASH文件,重新上電后運行FLASH
- 擦除FLASH
- SignalTap II(信號竊聽)
- 1、打開
- 2、添加信號
- 3、配置信號時鐘(采樣頻率、采樣個數)
- 4、連接下載器
- 5、編譯工程
- 6、下載代碼
- 7、查看信號
- 8、使用后關閉SignalTap II,節約資源
- Modelsim仿真環境搭建——業界公認仿真最優秀
- Modelsim簡介
- ?前仿真FPGA(功能仿真)
- 后仿真設計(時序仿真,布局布線后仿真)
- Modelsim版本(功能最全的SE版)
- Modelsim安裝
- Modelsim破解
- 聯合仿真(自動仿真)
- 1、**Quartus II關聯ModelSim:**
- 3、生成Test Bench模板
- 4、打開生成的Test Bench文件
- 5、修改Test Bench激勵文件,保存
- 6、修改頂層文件的延遲時間,保存
- 7、Quartus II配置仿真功能
- 8、開始仿真
- 8.1、功能仿真`前仿真`
- 8.2、門級仿真/時序仿真,需要先編譯`后仿真`
- 手動仿真`前仿真`(修改代碼后不必重啟ModelSim)
- 1、新建項目,添加設計文件,新建激勵文件
- 2、編輯激勵文件
- 3、代碼檢查
- 4、啟動仿真
- 5、添加波形
- 6、觀察波形(同上)
- 7、修改設計文件
- 手動仿真`后仿真`
- 1、Quartus II重新編譯,生成編譯后文件
- 2、拷貝文件
- 3、ModelSim添加、編譯網表文件
- 4、開始仿真
- 5、添加到波形
- 6、觀察波形,與時鐘不對應,有延時
- Verilog簡介
- 1、什么是FPGA:可編程的集成電路
- 2、什么是HDL:硬件描述語言
- 3、Verilog簡介
- Verilog基礎語法
- 1、基礎知識
- 邏輯值:
- 數字進制格式:
- 標識符:
- 標識符推薦寫法:
- 2、數據類型
- 寄存器`reg: x`
- 線網`wire/tri: z`
- 參數`parameter`
- 3、運算符
- 1、算術
- 2、關系
- 3、邏輯
- 4、條件
- 5、位
- 6、移位
- 7、位拼接
- 運算符優先級
- Verilog程序框架
- 1、Verilog注釋
- 2、Verilog關鍵字
- 3、Verilog程序框架
- 4、模塊調用
- Verilog高級知識點
- 1、結構語句`initial,always`
- 2、賦值語句
- 3、條件語句`initial,always`
- case:
- 有限狀態機Finite State Machine
- 1、狀態機概念
- 2、狀態機模型
- 3、狀態機設計(4段論)
- 4、狀態機舉例
- 輸出寄存器作用:
@ 代碼 => 模塊原理圖
[1/2]Processing => Start => Start Analysis & Elaboration
[2/2] Tools => Netlist Viewers => RTL Viewers
[效果] 模塊原理圖
開發板 - EP4CE10
開發板綜合測試
FPGA-test
FPGA簡介
- FPGA(Field Programmable Gate Array)現場可編程門陣列。
- 半定制電路
ZYNQ:FPGA + ARM
FPGA & ARM
| 哈佛總線結構、馮諾依曼結構 | 查找表 |
| 串行執行 | 并行執行 |
| 軟件范疇 | 硬件范疇 |
| C、匯編編程 | Verilog HDL、VHDL硬件描述語言編程 |
FPGA制造商
- Xilinx(賽靈思):發明FPGA 50%
- Altera(阿爾特拉),現已被Intel收購 40%
- Lattice(萊迪思)
- Microsemi(美高森美)
FPGA優勢
- 運行速度快
- 引腳多(數百上千),適合大規模系統設計
- 并行執行,效率高
- 包含大量IP核,方便開發
- 設計靈活
FPGA應用領域
- 通信領域
- 算法實現
- 嵌入式
- 5G無線、自動駕駛、人工智能、云計算
FPGA內部結構
- **可編程IO單元:**可編程IO、上下拉電阻、驅動電流大小
- **可編程邏輯單元:**查找表(LUT)、寄存器
- **底層嵌入式功能:**鎖相環、DSP、。。。
- **塊RAM:**存儲器、RAM、ROM
- **布線資源:**影響驅動能力、傳輸速度
- 硬核:
FPGA開發流程
- 設計輸入最重要。
Quartus II
- Quartus II 是Altera公司為FPGA/CPLD芯片設計的集成開發軟件。
- 輸入形式:原理圖、VHDL、Verilog、HDL。
- 包含PFGA完整實際流程:設計輸入、綜合適配、仿真、下載。
開發流程
工程路徑 =>打開軟件 =>新建工程 =>設計輸入 =>配置工程 =>分析綜合 =>分配引腳 =>編譯工程sof =>下載程序
0、工程路徑
1、打開軟件
2、新建工程
1/5 選擇路徑、工程名
2/5 添加已有的設計文件
3/5 芯片選型:EP4CE10
4/5 第三方工具,不使用
5/5 總結
3、設計輸入
- 雙擊,可更改芯片型號
1、雙擊,無設計文件時:File => New => Verilog HDL File
2、編寫設計文件
3、保存 設計文件
- 保存到rtl文件夾中;
- 文件名與module名一致。
4、配置工程
TAB 配置
雙用引腳,改為GPIO功能:
5、分析與綜合
- 啟動:分析與綜合
- 分析與綜合結果
6、引腳分配(Pin Planner)
7、編譯工程
- 開始編譯
- 編譯結果
8、下載程序
下載到SRAM,斷電丟失
生成FLASH文件
下載FLASH文件,重新上電后運行FLASH
擦除FLASH
SignalTap II(信號竊聽)
- SignalTap II全稱SignalTap II Logic Analyzer
- 捕獲和顯示實時信號(類似示波器)
- FPGA片上調試軟件
- 消耗FPGA邏輯資源和RAM資源
1、打開
2、添加信號
3、配置信號時鐘(采樣頻率、采樣個數)
4、連接下載器
5、編譯工程
6、下載代碼
7、查看信號
8、使用后關閉SignalTap II,節約資源
Modelsim仿真環境搭建——業界公認仿真最優秀
Modelsim簡介
- Modelsim是Mentor公司的,業界最優秀的語言仿真工具;
- 支持Windows和Linux系統;
- 單一內核支持VHDL和Verilog混合仿真;
- 仿真速度快、代碼與平臺無關,便于保護IP核。
?前仿真FPGA(功能仿真)
-
功能仿真。
-
驗證電路是否符合設計功能。
-
不考慮電路門延遲、線延遲。
后仿真設計(時序仿真,布局布線后仿真)
- 綜合考慮門延遲、線延遲。
- 反映電路實際情況。
Modelsim版本(功能最全的SE版)
- SE(System Edition,系統版本):最高級版本
- PE(Personal Edition,個人版本)
- OEM(Original Equipment Manufacture,原始設備制造商)
Modelsim安裝
Modelsim破解
聯合仿真(自動仿真)
1、Quartus II關聯ModelSim:
2、Quartus II選擇ModelSim作為仿真軟件:
3、生成Test Bench模板
4、打開生成的Test Bench文件
5、修改Test Bench激勵文件,保存
6、修改頂層文件的延遲時間,保存
7、Quartus II配置仿真功能
8、開始仿真
8.1、功能仿真前仿真
顯示進制:
時間測量: 0-10,計11個數。11*20ns = 220ns
修改代碼,達到10個數,220ns.
8.2、門級仿真/時序仿真,需要先編譯后仿真
選擇內核:1.2V,85℃。直接點擊“Run”
手動仿真前仿真(修改代碼后不必重啟ModelSim)
1、新建項目,添加設計文件,新建激勵文件
2、編輯激勵文件
// 延時:單位/精度 `timescale 1ns/1nsmodule flow_led_tb;reg sys_clk; reg sys_rst_n;wire [3:0] led;initial beginsys_clk = 1'b0;sys_rst_n = 1'b0;#100sys_rst_n = 1'b1; endalways #(T/2) sys_clk = ~sys_clk;flow_led u_flow_led(.sys_clk (sys_clk),.sys_rst_n (sys_rst_n),.led (led) );endmodule3、代碼檢查
4、啟動仿真
5、添加波形
6、觀察波形(同上)
7、修改設計文件
也可以用命令進行重新仿真。
仿真波形運行5us:
手動仿真后仿真
1、Quartus II重新編譯,生成編譯后文件
2、拷貝文件
3、ModelSim添加、編譯網表文件
4、開始仿真
5、添加到波形
6、觀察波形,與時鐘不對應,有延時
Verilog簡介
1、什么是FPGA:可編程的集成電路
可編程邏輯器件:
-
早期集成電路邏輯功能 固定不變
-
允許用戶修改內部集成電路,可編程邏輯器件(Programmable Logic Device)
- PLD內部電路編程設置;
- PLD編程數據可擦寫。
常用的可編程邏輯器件:
-
CPLD:復雜可編程邏輯器件(Complex Programmable Logic Device);基于“乘積項”的編程設置;
-
FPGA:現場可編程門陣列(Field Programmable Gate Array);基于“查找表”的CLB陣列;
2、什么是HDL:硬件描述語言
3、Verilog簡介
FPGA設計語言:
- 原理圖輸入法:直觀、易于理解;難移植,復雜;
- Verilog:占絕對主導地位;
| Verilog | 硬件描述語言、編譯下載到FPGA之后,生成電路、并行運行 |
| :-----: | ------------------------------------------------------------ |
| C | **軟件編譯語言、存儲到存儲器中的指令、串行執行 ** |
Verilog基礎語法
1、基礎知識
邏輯值:
數字進制格式:
標識符:
標識符推薦寫法:
2、數據類型
寄存器reg: x
線網wire/tri: z
參數parameter
3、運算符
1、算術
2、關系
3、邏輯
4、條件
5、位
6、移位
7、位拼接
運算符優先級
Verilog程序框架
1、Verilog注釋
// 注釋內容 /*注釋內容 */2、Verilog關鍵字
常用關鍵字:
所有關鍵字:
3、Verilog程序框架
4、模塊調用
Verilog高級知識點
1、結構語句initial,always
2、賦值語句
3、條件語句initial,always
case:
有限狀態機Finite State Machine
1、狀態機概念
2、狀態機模型
3、狀態機設計(4段論)
4、狀態機舉例
輸出寄存器作用:
總結
以上是生活随笔為你收集整理的【笔记】Altera - Quartus II使用方法——工程创建、Modelsim破解/仿真、Verilog编写、举例(待续)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: AStar算法优化
- 下一篇: 电脑主机插入耳机无声音