久久99精品久久久久久琪琪,久久人人爽人人爽人人片亞洲,熟妇人妻无码中文字幕,亚洲精品无码久久久久久久

FPGA教學大綱(最終5篇)

時間:2019-05-15 01:53:52下載本文作者:會員上傳
簡介:寫寫幫文庫小編為你整理了多篇相關(guān)的《FPGA教學大綱》,但愿對你工作學習有幫助,當然你在寫寫幫文庫還可以找到更多《FPGA教學大綱》。

第一篇:FPGA教學大綱

四 川 大 學 錦 城 學 院

本科課程《現(xiàn)場可編程邏輯門陣列FPGA》

電子類專業(yè)教學大綱

一、課程基本信息

課程名稱(中、英文):《現(xiàn)場可編程邏輯門陣列FPGA》, Field Programmable Gate Array 課程類別:必修專業(yè)課

學時:

學分:2

二、預前知識

數(shù)字電子技術(shù)基礎(chǔ)

三、課程目的及要求

1.了解FPGA的應用場合、發(fā)展歷程、主要廠家。2.熟悉典型FPGA的基本結(jié)構(gòu)。

3.掌握FPGA設(shè)計流程及其中涉及到的重要概念與工具軟件。4.熟練掌握可綜合的Verilog語法語句。

5.掌握常用的基本電路結(jié)構(gòu),并能用Verilog語言進行描述。

四、教學內(nèi)容及進度

第1章 課程簡介(本章2課時)

掌握FPGA的概念、用途及生產(chǎn)廠家,掌握FPGA的學習方法。重點:FPGA的學習方法 難點:芯片可編程的理解 1.什么是FPGA 2.FPGA有何用途 3.為什么要學習FPGA 4.如何學習FPGA 第二章 可編程邏輯器件基礎(chǔ)(本章2課時)

掌握與或陣列及查找表用于實現(xiàn)邏輯函數(shù)的方法,了解基于與或陣列結(jié)構(gòu)可編程邏輯器件的發(fā)展歷程,掌握典型FPGA的基本結(jié)構(gòu)及使用上的特點,了解FPGA的發(fā)展趨勢。

重點:與或陣列及查找表用于實現(xiàn)邏輯函數(shù) 難點:典型FPGA的基本結(jié)構(gòu) 1.知識準備:與或陣列、查找表 2.可編程邏輯器件結(jié)構(gòu)發(fā)展歷程 3.FPGA結(jié)構(gòu)介紹

第3章 硬件描述語言基礎(chǔ)(本章2課時)

掌握硬件描述的思想,了解常用的硬件描述語言及Verilog的歷史,掌握可綜合的概念及對應的設(shè)計思路,掌握數(shù)字芯片系統(tǒng)結(jié)構(gòu)及自頂向下分層設(shè)計的方法,掌握Verilog描述程序的基本結(jié)構(gòu)及Verilog基本語法。

重點:數(shù)字芯片系統(tǒng)結(jié)構(gòu)及Verilog基本語法 難點:可綜合的理解

1.硬件描述語言及Verilog簡介 2.可綜合簡介

3.自頂向下分層設(shè)計的思路 4.Verilog基本語法

第4章 Verilog基本描述語句(本章4課時)

掌握常用的可綜合Verilog描述語句:always過程語句;串行塊begin-end;連續(xù)賦值 assign;過程賦值 =、<=;條件語句if-else、case;循環(huán)語句for 重點:常用的可綜合Verilog描述語句

難點:阻塞賦值與非阻塞賦值的區(qū)別,順序執(zhí)行與并發(fā)執(zhí)行的區(qū)分 1.always過程語句 2.串行塊begin-end 3.連續(xù)賦值 assign 4.過程賦值 =、<= 5.條件語句if-else、case 6.循環(huán)語句for 第5章 運算符及表達式(本章4課時)

掌握Verilog中注釋的格式;掌握Verilog中整數(shù)常量的表示法;掌握Verilog中常用的可綜合運算符的使用:邏輯運算符、關(guān)系運算符、相等與全等運算符、位運算符、歸約(縮減)運算符、移位運算符、條件運算符、連接(位拼接)運算符、算術(shù)運算符 重點:常用的可綜合運算符的使用

難點:各運算符的優(yōu)先級別及對有符號數(shù)和無符號數(shù)處理的差別 1.注釋的格式 2.整數(shù)常量表示法 3.邏輯運算符 4.關(guān)系運算符 5.相等與全等運算符 6.位運算符

7.歸約(縮減)運算符 8.移位運算符 9.條件運算符

10.連接(位拼接)運算符 11.算術(shù)運算符

第6章 基本電路設(shè)計(本章2課時)

掌握電路描述方法,掌握按端口位置對應及按端口名稱對應的模塊例 化方式,掌握常用基本電路的結(jié)構(gòu)及描述方法 重點:常用基本電路的結(jié)構(gòu)及描述方法

難點:按端口位置對應及按端口名稱對應的模塊例化方式

1.電路描述方法,按端口位置對應及按端口名稱對應的模塊例化方式 2.2選1多路選擇器 3.優(yōu)先編碼器 4.多路選擇器 5.譯碼器 6.D觸發(fā)器 7.移位寄存器 8.上升沿檢測 9.下降沿檢測 10.計數(shù)器

11.兩級單時鐘使能計數(shù)器結(jié)構(gòu)

第7章 有限狀態(tài)機設(shè)計(本章2課時)

掌握狀態(tài)機設(shè)計及描述方法,掌握起始狀態(tài)、剩余狀態(tài)的處理,掌握各狀態(tài)編碼方式之間的差別及各自的優(yōu)缺點。重點:狀態(tài)機設(shè)計及描述方法

難點:格雷碼及“one-hot”狀態(tài)值編碼 1.有限狀態(tài)機介紹及其優(yōu)點 2.狀態(tài)機設(shè)計思路 3.起始狀態(tài)處理 4.狀態(tài)編碼方式 5.剩余狀態(tài)與容錯技術(shù)

第8章 雙向端口及存儲器(本章2課時)

掌握雙向端口的定義及使用,掌握使用D觸發(fā)器組及調(diào)用庫單元實現(xiàn) 存儲器的描述方式。重點:存儲器的描述 難點:雙向端口的使用 1.雙向端口的定義及使用 2.存儲器描述方式

第9章 設(shè)計方法與技巧(本章4課時)

掌握可編程邏輯設(shè)計的基本原則,掌握可編程邏輯設(shè)計常用設(shè)計思想和技巧,掌握良好的編碼風格。重點:時鐘的最小周期定義 難點:流水線、寄存器配平1.可編程邏輯設(shè)計的基本原則 2.可編程邏輯設(shè)計常用設(shè)計思想和技巧 3.Altera公司推薦的編碼風格 4.面積優(yōu)化 5.速度優(yōu)化

五、教材

《CPLD/FPGA與ASIC設(shè)計實踐教程》 主編:陳 賾

編著:朱如琪、羅 杰、王建明、魯 放 出版社:科學出版社 出版日期:2005-8 書號:ISBN-978-7-03-016036-2/TP.332.1

六、主要參考資料

[1] 陳云洽,CPLD應用技術(shù)與數(shù)字系統(tǒng)設(shè)計,北京:電子工業(yè)出版社,2003 [2] 黃智偉,F(xiàn)PGA系統(tǒng)設(shè)計與實踐,北京:電子工業(yè)出版社,2005 [3] 李國麗,EDA與數(shù)字系統(tǒng)設(shè)計,北京:機械工業(yè)出版社,2004 [4] 王金明,數(shù)字系統(tǒng)設(shè)計與Verilog HDL,北京:電子工業(yè)出版社,2002

七、成績評定

學科成績總分100分:

期末閉卷考試,考查學生對基本理論、能力的掌握程度,100分,占70%

平時成績100分(包括考勤,課堂提問,作業(yè))占

30%

第二篇:教學大綱-FPGA及硬件描述語言

《FPGA與硬件描述語言》教學大綱

課程名稱:FPGA與硬件描述語言

英文名稱: FPGA and hardware description language 課程類別:實踐教學課 課程編號: 學

分: 4

時:68 課程簡介:

FPGA與硬件描述語言該課程主要講授數(shù)字邏輯電路的基本知識、基本理論和基本分析、設(shè)計方法,并利用現(xiàn)代EDA技術(shù)的verilog和Multisim進行數(shù)字邏輯電路分析與設(shè)計,它起到由專業(yè)基礎(chǔ)課向?qū)I(yè)課過渡的承上啟下的作用。本課程的教學任務是通過本課程的理論學習,使學生掌握有關(guān)數(shù)字邏輯的基本理論,熟悉數(shù)字邏輯電路基本器件的電路結(jié)構(gòu)、功能和使用方法,掌握數(shù)字邏輯電路的分析方法和設(shè)計方法。通過課堂教學演示環(huán)節(jié)及課程設(shè)計,使學生掌握利用Verilog和EDA工具進行數(shù)字邏輯電路設(shè)計的方法.課程內(nèi)容:

1.概論:EDA設(shè)計方法以及FPGA/CPLD特點 2.層次建模的概念 3.基本概念 4.模塊和端口 5.門級建模 6.數(shù)據(jù)流建模 7.行為級建模 8.任務與函數(shù) 9.實用建模技術(shù) 10.時序和延遲 11.開關(guān)級建模 12.用戶自定義原語 先修課程:《C語言程序設(shè)計》、《數(shù)字邏輯電路》 適用專業(yè):電子信息技術(shù)

教材(暫定):《Verilog HDL 數(shù)字設(shè)計與綜合》 作者:(美)Sanir Palnitkar,譯者: 夏宇聞 胡燕祥 刁嵐松

電子工業(yè)出版社

參考教材:

1、《Verilog HDL數(shù)字設(shè)計與綜合(第二版)》,電子工業(yè)出版社

夏宇聞

2、《電子工程師創(chuàng)新設(shè)計必備寶典系列之FPGA開發(fā)全攻略》,張國斌

3、《Verilong數(shù)字系統(tǒng)設(shè)計教程 》,北航出版社

夏宇聞

開課學院:信息技術(shù)學院

具體課程內(nèi)容與安排

第一章 概述

第一節(jié) 課程介紹

第二節(jié) 學習重點及學習方法

第三節(jié) EDA技術(shù)及發(fā)展與實現(xiàn)目標 第四節(jié) 硬件描述語言及IEEE標準 第五節(jié) EDA設(shè)計流程及優(yōu)點 第六節(jié) 常用EDA工具

第七節(jié) 電子設(shè)計自動化系統(tǒng)軟件與器件

第八節(jié) 數(shù)字系統(tǒng)設(shè)計方法

第九節(jié) 九節(jié) FPGA/CPLD的特點及發(fā)展

(一)采用多媒體,講解與演示相結(jié)合

(二)內(nèi)容及基本要求 主要內(nèi)容: 【重點掌握】:FPGA/CPLD的優(yōu)缺點,采用硬件描述語言(Verilog HDL)的設(shè)計流程。【掌握】:EDA設(shè)計流程方法及數(shù)字系統(tǒng)設(shè)計方法的比較和優(yōu)點,自頂向下的設(shè)計方法; 【了解】:EDA工具的發(fā)展以及特點,【一般了解】:EDA技術(shù)及發(fā)展

第二章 層次建模的概念

第一節(jié) 自底向上和自頂向下設(shè)計方法 第二節(jié) 模塊的基本概念 第三節(jié) 四種不同的描述方式 第四節(jié) 邏輯仿真的構(gòu)成

(一)采用多媒體,講解與演示相結(jié)合

(二)內(nèi)容及基本要求 主要內(nèi)容: 【重點掌握】:數(shù)字電路自頂向下設(shè)計方法以及模塊相關(guān)內(nèi)容的學習; 【難點】:自頂向下以及自底向上的設(shè)計思路;

第三章 verilog基本概念

第一節(jié) 模塊的結(jié)構(gòu) 第二節(jié) 數(shù)據(jù)類型及其常量和變量 第三節(jié) 運算符及表達式

(一)采用多媒體,講解與演示相結(jié)合

(二)內(nèi)容及基本要求

主要內(nèi)容:verilog基本語法和結(jié)構(gòu) 【重點掌握】:基本語法和概念以及詞法約定 【掌握】:各種數(shù)據(jù)類型 【了解】:系統(tǒng)任務和編譯指令 【一般了解】: 【難點】:各類寄存器數(shù)據(jù)類型

第四章 模塊和端口

第四節(jié)

模塊 第五節(jié)

端口列表 第六節(jié)

端口聲明

第四節(jié) 端口連接規(guī)則 第七節(jié)

端口與外部信號的連接 第八節(jié)

層次命名

(一)采用多媒體,講解與實驗相結(jié)合

(二)內(nèi)容及基本要求

主要內(nèi)容:verilog的模塊定義、組成部分以及端口列表以及聲明和端口連接。

【了解】:verilog標示符的層次引用 【重點掌握】:模塊各部分的定義和應用 【難點】:端口連接的命名規(guī)則

第五章 門級建模

第一節(jié)

門的類型 第二節(jié) 門延遲

(一)采用多媒體,講解與實驗相結(jié)合

(二)內(nèi)容及基本要求

主要內(nèi)容:verilog如何用門級對實際電路做硬件電路建模 【重點掌握】:門的類型與延遲,門級建模的具體設(shè)計電路 【掌握】: 上升、下降和關(guān)斷延遲 以及最小/典型/最大延遲 【難點】:門級建模的具體電路實現(xiàn)

第六章 數(shù)據(jù)流建模

第一節(jié) 連續(xù)賦值語句assign 第二節(jié) 延遲

第三節(jié) 表達式、操作符和操作數(shù) 第四節(jié) 操作符類型

(一)采用多媒體,講解與演示相結(jié)合

(二)內(nèi)容及基本要求

主要內(nèi)容:連續(xù)賦值語句以及使用數(shù)據(jù)流結(jié)構(gòu)對實際電路的數(shù)字電路建模?!局攸c掌握】:連續(xù)賦值的定義及應用;操作符的類型 【掌握】: 延遲的概念和應用 【難點】:用數(shù)據(jù)流語句設(shè)計電路,掌握門級建模與數(shù)據(jù)流建模的區(qū)別

第七章 行為級建模

第一節(jié) 結(jié)構(gòu)化過程語句 第二節(jié) 過程賦值語句 第三節(jié) 條件語句 第四節(jié) 多路分支語句

第五節(jié) 循環(huán)語句

第六節(jié) 順序塊和并行塊 第七節(jié) 生成塊

(一)采用多媒體,講解與實驗相結(jié)合

(二)內(nèi)容及基本要求

主要內(nèi)容:行為級建模的語法以及結(jié)構(gòu) 【重點掌握】: 在實際電路中進行行為級建模以及時序控制機制 【掌握】:行為級建模的語法和語句,always、initial,阻塞和非阻塞以及 4 過程性賦值語句。

【難點】:行為級建模的具體實現(xiàn)

第八章 結(jié)構(gòu)語句、系統(tǒng)任務、函數(shù)語句和顯示系統(tǒng)任務

第一節(jié) 結(jié)構(gòu)說明語句 第二節(jié) 任務和函數(shù)語句 第三節(jié) 其他任務和函數(shù)語句

(一)采用多媒體,講解與演示相結(jié)合

(二)內(nèi)容及基本要求

主要內(nèi)容:任務與函數(shù)的定義 區(qū)別以及應用 【重點掌握】:任務和函數(shù)語句的使用 【掌握】: 模塊、任務、函數(shù)和命名塊定義和聯(lián)系,任務與函數(shù)所需要的條件。

【難點】:任務和函數(shù)語句的使用

第九章 實用建模技術(shù)

第一節(jié) 過程連續(xù)賦值 第二節(jié) 改寫(覆蓋)參數(shù)

第三節(jié) 條件編譯和執(zhí)行 第四節(jié) 時間尺度

第五節(jié) 常用的系統(tǒng)任務

(一)采用多媒體,講解與演示相結(jié)合

(二)內(nèi)容及基本要求 主要內(nèi)容: 【重點掌握】:assign deassign force 和release的定義和使用 【掌握】:在模塊調(diào)用時用defparam語句重新定義參數(shù)值 【了解】:認識和理解系統(tǒng)任務,如文件輸出、顯示層次、選通顯示、隨機數(shù)生成、存儲器初始化和值變轉(zhuǎn)儲等系統(tǒng)任務 【一般了解】: 【難點】: 條件編譯和verilog描述部件的執(zhí)行。

第十章 時序和延遲

第一節(jié) 延遲模型 第二節(jié) 路徑延遲建模 第三節(jié) 時序檢查

第四節(jié) 延遲反標注

(一)采用多媒體,講解與演示相結(jié)合

(二)內(nèi)容及基本要求 主要內(nèi)容: 【重點掌握】:如何在仿真過程中用specify塊設(shè)置路徑延遲 【掌握】:延遲模型的類型和定義 【了解】:時序檢查定義系統(tǒng)任務 【一般了解】: 延遲反標注 【難點】: 路徑延遲建模的連接

第十一章 開關(guān)級建模

第一節(jié):開關(guān)級建模元件

主要內(nèi)容:開關(guān)級建模的基本知識 【一般了解】:僅作大概了解 【難點】:

第十二章 用戶自定義原語

第一節(jié):UDP的基本知識 第二節(jié):表示組合邏輯的UDP 第三節(jié):表示時序邏輯的UDP 第四節(jié):UDP表中的縮寫符號 第五節(jié):UDP設(shè)計指南 主要內(nèi)容:

【重點掌握】編寫時序和組合邏輯UDP: 【難點】:UDP設(shè)計的原則以及與門級建模的區(qū)別

第十三章 編程語言接口 第一節(jié):PLI的使用

第二節(jié):PLI任務的連接和調(diào)用 第三節(jié):內(nèi)部數(shù)據(jù)表示 第四節(jié):PLI庫子程序 主要內(nèi)容: 【重點掌握】:如何在仿真中使用任務和函數(shù) 【難點】:用戶如何創(chuàng)建自定義系統(tǒng)任務和函數(shù),6 第十四章 使用vrilog進行邏輯綜合

第一節(jié):什么是邏輯綜合

第二節(jié):邏輯綜合對數(shù)字設(shè)計行業(yè)的影響 第三節(jié):verilogHDL綜合 第四節(jié):邏輯綜合流程 第五節(jié):門級網(wǎng)表的驗證 第六節(jié):邏輯綜合建模技巧 第七節(jié):時序電路綜合舉例

主要內(nèi)容:了解邏輯綜合的方法和問題。【了解】:邏輯綜合編寫RTL的技巧 【一般了解】: 邏輯綜合的概念和優(yōu)點 【重點掌握】:可綜合的結(jié)構(gòu)和操作符以及邏輯綜合的最佳門級網(wǎng)表分隔技術(shù) 【難點】:使用邏輯綜合進行組合電路和時序電路的設(shè)計

三、課程考核

(一)基本要求及比例:考試是對學生掌握知識水平的檢驗,重點掌握內(nèi)容占考試內(nèi)容的70%、掌握內(nèi)容占20%、了解及一般了解內(nèi)容占10%。

(二)成績構(gòu)成與說明: 總評成績 =平時學習表現(xiàn)(10%)+上機實驗(20%)+實訓項目(20%)+期末考試成績(50%)

期末考試:

考試形式:上機閉卷考試 時間長度(120分鐘)

制定人:賈政亞

審定人:

批準人:

期: 2014年10月1日

第三篇:FPGA學習心得

回想起自己學FPGA,已經(jīng)有一段時間了,從開始的茫然,到后來的瘋狂看書,設(shè)計開發(fā)板,調(diào)電路,練習各種FPGA實例,到最后能獨立完成項目,一路走來,感受頗多,拿出來和大家分享,順便介紹下自己的一點經(jīng)驗所得,希望對初學者有所幫助。

廢話不說了,下面進入正題,學習FPGA我主要經(jīng)歷了這么幾個階段:

①、Verilog語言的學習,熟悉Verilog語言的各種語法。

②、FPGA的學習,熟悉QuartusII軟件的各種功能,各種邏輯算法設(shè)計,接口模塊(RS232,LCD,VGA,SPI,I2c等)的設(shè)計,時序分析,硬件優(yōu)化等,自己開始設(shè)計簡單的FPGA板子。

③、NiosII的學習,熟悉NiosII的開發(fā)流程,熟悉開發(fā)軟件(SOPC,NiosII IDE),了解NiosII的基本結(jié)構(gòu),設(shè)計NiosII開發(fā)板,編寫NiosII C語言程序,調(diào)試板子各模塊功能。

先來說說第一個階段,現(xiàn)在主要的硬件描述語言有VHDL,Verilog兩種,在本科時老師一般教VHDL,不過現(xiàn)在

Verilog用的人越來越多,其更容易上手(與C語言語法比較類似),也更靈活,現(xiàn)在的IC設(shè)計基本都用Verilog。像systemC,systemVerilog之類的應該還在萌芽階段,以后可能會有較大發(fā)展。鑒于以上原因我選擇了Verilog作為我學習的硬件描述語言。

其實有C語言的基礎(chǔ),學起Verilog的語言很簡單,關(guān)鍵要有并行的概念,所有的module,assign,always都是并行的,這一點與軟件語言有明顯不同。這里推薦幾本評價比較好的學習Verilog的書籍:

①、《verilog 數(shù)字系統(tǒng)設(shè)計教程》,這本書對于入門是一本很好的書,通俗易懂,讓人很快上手,它里面的例子也不錯。但本書對于資源優(yōu)化方面的編程沒有多少涉及到。

②、《設(shè)計與驗證Verilog HDL》,這本書雖然比較薄,但是相當精辟,講解的也很深入,很多概念看了這本書有種豁然開朗的感覺,呵呵。

學習Verilog其實不用看很多書,基本的語法部分大家都一樣,關(guān)鍵是要自己會靈活應用,多做練習。

Verilog語言學了一段時間,感覺自己可以編點東西,希望自己編的程序在板子上運行看看結(jié)果,下面就介紹我學習的第二個階段。

剛開始我拿了實驗室一塊CPLD的開發(fā)板做練習,熟悉QuartusII的各種功能,比如IP的調(diào)用,各種約束設(shè)置,時序分析,Logiclock設(shè)計方法等,不過做到后面發(fā)現(xiàn)CPLD的資源不太夠(沒有內(nèi)嵌的RAM、不能用SignalTapII,LE太少等),而實驗室沒有FPGA開發(fā)板,所以就萌生了自己做FPGA開發(fā)板的意圖,剛好Cadence我也學的差不多了,就花了幾天時間主要研究了FPGA配置電路的設(shè)計,在板子上做了Jtag和AS下載口,在做了幾個用戶按鍵和LED,其他的口全部引出作為IO口,電路比較簡單,板子焊好后一調(diào)就通了(心里那個爽啊...)。我選的FPGA是cycloneII系列的EP2C5,資源比以前的FPGA多了好幾倍,還有PLL,內(nèi)嵌的RAM,可以試試SignalTapII,用內(nèi)嵌的邏輯分析儀測試引腳波形,對于FPGA的調(diào)試,邏輯分析儀是至關(guān)重要的。利用這塊板子我完成了項目中的幾個主要功能:RS232通信,指令譯碼,配置DDS,AD數(shù)據(jù)高速緩存,電子開關(guān)狀態(tài)設(shè)置等,在實踐中學習起來真的比平時快很多,用到什么學什么動力更大。這個時候我主要看的數(shù)據(jù)有這幾本感覺比較好:

①、《Altera FPGA/CPLD 設(shè)計(基礎(chǔ)篇)》:講解一些基本的FPGA設(shè)計技術(shù),以及QuartusII中各個工具的用法(IP,RTL,SignalProbe,SignalTapII,Timing Closure Floorplan,chip Editor等),對于入門非常好。

②、《Altera FPGA/CPLD 設(shè)計(高級篇)》:講解了一些高級工具的應用,LogicLock,時序約束很分析,設(shè)計優(yōu)化,也講述了一些硬件編程的思想,作為提高用。

③、《FPGA設(shè)計指南--器件,工具和流程》:這本書看了他的目錄忍不住就買了,這本書講述了FPGA設(shè)計的各個方面,雖然每個方面都是點到為止,但能讓你有個整體的概念,了解FPGA的所有設(shè)計功能,了解FPGA開發(fā)的整個流程。

④、在這里也推薦幾個學習FPGA比較好的論壇

http://www.tmdps.cnt信號控制著w_fifo_rden、aes_ready等信號,是該模塊的關(guān)鍵信號,通過將它們之間的時序關(guān)系通過時序圖反應出來,寫代碼時就可以做到胸有成竹,減少出現(xiàn)邏輯混亂的情況。

聽起來似乎很簡單,但是執(zhí)行起來卻不容易,因為畫波形圖是一件很煩鎖的事(有一次一個模塊因為操作比較多我畫了8張時序圖)。但是請相信我,如果不這樣做,因為時序關(guān)系沒有處理好引起設(shè)計多次迭代所花的時間遠多于畫波形圖的時間。

時序設(shè)計好之后,模塊內(nèi)部各個信號之間的關(guān)系就理得差不多了,之后就是將它翻譯成代碼了,這個過程以體力勞動為主,我就不多說了。

補充一下,畫波形圖推薦用TimingDesigner這個軟件,如果有更好的,請告訴我,我也不喜歡TimingDesigner:)。

另一個就是約束。

這里的約束是針對綜合軟件和布局布線軟件而言的。

為什么會有約束這個東西出現(xiàn)呢?主要原因是EDA軟件比較笨,難以明白我們的心思,如果我們不把更詳細的信息告訴它的話它就干不好活,比如需要將輸出寄存器放的與輸出管腳近一點,如果不加約束,EDA軟件可能布通之后就不管了,導致Tco狂大,一點也不善解人意。所以我們需要約束這個東西,告訴EDA軟件要怎么干活,工程驗收的標準又是什么。

在加約束之前,我們首先要定義一些術(shù)語好告訴EDA軟件我們想干什么,這些術(shù)語便是Fmax、Tsu、Tco等等這些東西。這些東西的含義這里就不多說了,網(wǎng)上的討論已經(jīng)很多了。

有了術(shù)語,還要有一種通信方式與EDA軟件通信,腳本語言充當了這一角色。不過現(xiàn)在像quartus這類軟件做的比較智能化了,提供了圖形化界面,但是這背后支撐的還是些腳本語言,大家可以用UltraEdit打加*.qsf文件去看看我們加的約束用腳本語言是怎么寫的。在加了約束之后,EDA工具就可以更好地按照我們的意愿去干活了,比較我們加了Fmax的約束,它就會盡可能地將關(guān)鍵路徑放的靠近一些,以提高電路工作頻率。當然,這是有代價的,尋找路徑是需要時間的,要求越苛刻,時間花的越多,因此加約束的原則的適用就行。如果約束加的過高,就相當于讓EDA工具去做一件不可能完成的事,找更短的路徑的時候說不定找著找著就掉下懸崖了,效果反而更差。

雖然有約束這個好東西,不過提醒一下,在項目之前千萬對它抱有太多的幻想,把希望寄托在別人的身上并不是每一次都很可靠的,出了問題還是要麻煩自己,加約束只能做一些錦上添花的事情。所以,我們在做方案的時候就需要對關(guān)鍵路徑進行預估,要通過設(shè)計而不是約束解決這些問題。

第四篇:FPGA學習心得

回想起自己學FPGA,已經(jīng)有一段時間了,從開始的茫然,到后來的瘋狂看書,設(shè)計開發(fā)板,調(diào)電路,練習各種FPGA實例,到最后能獨立完成項目,一路走來,感受頗多,拿出來和大家分享,順便介紹下自己的一點經(jīng)驗所得,希望對初學者有所幫助。

廢話不說了,下面進入正題,學習FPGA我主要經(jīng)歷了這么幾個階段:

①、Verilog語言的學習,熟悉Verilog語言的各種語法。

②、FPGA的學習,熟悉QuartusII軟件的各種功能,各種邏輯算法設(shè)計,接口模塊(RS232,LCD,VGA,SPI,I2c等)的設(shè)計,時序分析,硬件優(yōu)化等,自己開始設(shè)計簡單的FPGA板子。

③、NiosII的學習,熟悉NiosII的開發(fā)流程,熟悉開發(fā)軟件(SOPC,NiosII IDE),了解NiosII的基本結(jié)構(gòu),設(shè)計NiosII開發(fā)板,編寫NiosII C語言程序,調(diào)試板子各模塊功能。

先來說說第一個階段,現(xiàn)在主要的硬件描述語言有VHDL,Verilog兩種,在本科時老師一般教VHDL,不過現(xiàn)在Verilog用的人越來越多,其更容易上手(與C語言語法比較類似),也更靈活,現(xiàn)在的IC設(shè)計基本都用Verilog。像systemC,systemVerilog之類的應該還在萌芽階段,以后可能會有較大發(fā)展。鑒于以上原因我選擇了Verilog作為我學習的硬件描述語言。

其實有C語言的基礎(chǔ),學起Verilog的語言很簡單,關(guān)鍵要有并行的概念,所有的module,assign,always都是并行的,這一點與軟件語言有明顯不同。這里推薦幾本評價比較好的學習Verilog的書籍:

①、《verilog 數(shù)字系統(tǒng)設(shè)計教程》,這本書對于入門是一本很好的書,通俗易懂,讓人很快上手,它里面的例子也不錯。但本書對于資源優(yōu)化方面的編程沒有多少涉及到。

②、《設(shè)計與驗證Verilog HDL》,這本書雖然比較薄,但是相當精辟,講解的也很深入,很多概念看了這本書有種豁然開朗的感覺,呵呵。

學習Verilog其實不用看很多書,基本的語法部分大家都一樣,關(guān)鍵是要自己會靈活應用,多做練習。

Verilog語言學了一段時間,感覺自己可以編點東西,希望自己編的程序在板子上運行看看結(jié)果,下面就介紹我學習的第二個階段。

剛開始我拿了實驗室一塊CPLD的開發(fā)板做練習,熟悉QuartusII的各種功能,比如IP的調(diào)用,各種約束設(shè)置,時序分析,Logiclock設(shè)計方法等,不過做到后面發(fā)現(xiàn)CPLD的資源不太夠(沒有內(nèi)嵌的RAM、不能用SignalTapII,LE太少等),而實驗室沒有FPGA開發(fā)板,所以就萌生了自己做FPGA開發(fā)板的意圖,剛好Cadence我也學的差不多了,就花了幾天時間主要研究了FPGA配置電路的設(shè)計,在板子上做了Jtag和AS下載口,在做了幾個用戶按鍵和LED,其他的口全部引出作為IO口,電路比較簡單,板子焊好后一調(diào)就通了(心里那個爽啊...)。我選的FPGA是cycloneII系列的EP2C5,資源比以前的FPGA多了好幾倍,還有PLL,內(nèi)嵌的RAM,可以試試SignalTapII,用內(nèi)嵌的邏輯分析儀測試引腳波形,對于FPGA的調(diào)試,邏輯分析儀是至關(guān)重要的。利用這塊板子我完成了項目中的幾個主要功能:RS232通信,指令譯碼,配置DDS,AD數(shù)據(jù)高速緩存,電子開關(guān)狀態(tài)設(shè)置等,在實踐中學習起來真的比平時快很多,用到什么學什么動力更大。這個時候我主要看的數(shù)據(jù)有這幾本感覺比較好:

①、《Altera FPGA/CPLD 設(shè)計(基礎(chǔ)篇)》:講解一些基本的FPGA設(shè)計技術(shù),以及QuartusII中各個工具的用法(IP,RTL,SignalProbe,SignalTapII,Timing Closure Floorplan,chip Editor等),對于入門非常好。

②、《Altera FPGA/CPLD 設(shè)計(高級篇)》:講解了一些高級工具的應用,LogicLock,時序約束很分析,設(shè)計優(yōu)化,也講述了一些硬件編程的思想,作為提高用。

③、《FPGA設(shè)計指南--器件,工具和流程》:這本書看了他的目錄忍不住就買了,這本書講述了FPGA設(shè)計的各個方面,雖然每個方面都是點到為止,但能讓你有個整體的概念,了解FPGA的所有設(shè)計功能,了解FPGA開發(fā)的整個流程。

④、在這里也推薦幾個學習FPGA比較好的論壇

⑤、其實最好的學習網(wǎng)站莫過于Altera的官方網(wǎng)站,不過很多人一看到英語就不想看,其實上面的英文很簡單,很多時候不敢看是因為對自己沒信心或心靜不下來看。不過官方網(wǎng)站上資料很多,剛開始可能會覺得資料安排的有點亂,不方便查找,以后有時間我列個資料的鏈接目錄,整理一下,方便大家查找。

到這里,自己最FPGA的學習有一段時間了,練習了很多實例,自己也編寫了不少程序,也有了一些項目經(jīng)驗,算是對FPGA有些了解了。在不斷的學習中發(fā)現(xiàn)FPGA不僅可以做邏輯設(shè)計,算法設(shè)計等,還能做嵌入式開發(fā),altera先后開發(fā)了Nios,NiosII兩款FPGA的嵌入式軟核,并有配套的軟件,剛開始看到這些我真是心中突然豁然開朗,學習真的是無止境,又一個全新的領(lǐng)域擺在我面前,我決定學習NiosII,要學就要學最好。

剛開始入門是很痛苦的,嵌入式設(shè)計需要從硬件到驅(qū)動到軟件全部熟悉,硬件系統(tǒng)問題還不是很大(以前做過單片機,DSP等MCU),處理器的架構(gòu)心里還有點數(shù),對于驅(qū)動和軟件工程,剛開始學習真的很頭痛。NiosII應該還算比較新的內(nèi)容(應該是2004年出的),國內(nèi)的書籍不算很多,網(wǎng)上這方面的資料也比較零碎,所以我就開始將Altera網(wǎng)站上這方面的資料系統(tǒng)的看一邊,這里推薦幾本網(wǎng)站上的handbook:

①、Embedded Design Handbook

②、Nios II Processor Reference Handbook

③、Nios II Software Developer's Handbook

④、Quartus II Handbook, Volume 4: SOPC Builder

⑤、Quartus II Handbook, Volume 5: Embedded Peripherals

看完這些handbook,總算基本明白整個架構(gòu),軟硬件設(shè)計方法,驅(qū)動的編寫等,感覺自己可以編一些嵌入式的程序了,不過雖然前面做的那塊ep2c5的板子支持NiosII系統(tǒng),不過對于嵌入式設(shè)計來說還是顯得單薄了一點,沒有SDRAM,F(xiàn)lash這兩個比較基本的模塊,Ep2C5內(nèi)嵌的RAM太小,程序?qū)懖淮?,而且每次總要絞盡腦汁優(yōu)化程序代碼大小,很多時候優(yōu)化了后函數(shù)功能會受到限制,不利于初學者,也不利于調(diào)試。所以到這里我有產(chǎn)生了自己做一塊Nios開發(fā)板的想法(直接買比較貴,自己做便宜,而且還能鍛煉自己,一舉兩得),通過借鑒其他開發(fā)板,選擇自己開發(fā)板上需要包含什么模塊,確定各個模塊使用什么芯片,閱讀各個芯片的datasheet,畫出原理圖并做出PCB圖,這塊板子我選的是

Ep2c8Q208,比上一塊資源又將近多了一倍,板子上還有以下模塊:SDRAM,F(xiàn)lash,EPCS4,RS232,USB,VGA,PS2,AD,DA,LCD等,滿足了一般開發(fā)板的配置要求。板子回來以后調(diào)試了四五天,(flash工作了,LCD顯示了,RS232通了,USB通了,AD,DA工作了,SDRAM正常了...),真是每天都有驚喜,每個模塊都編寫了NiosII軟件測試程序,調(diào)試硬件的時候?qū)浖倪\行也更熟悉了。在這次調(diào)試的過程中真的學到了很多,為此專門寫了好幾頁調(diào)試筆記,下次拿出來和大家一起分享?,F(xiàn)在硬件平臺有了,NiosII也了解的差不多了,終于可以自己編寫一些規(guī)模大一點的程序了。

以后的路還很長,不過也有很多驚喜在等著我們......

第五篇:FPGA常用術(shù)語

標題:FPGA常用術(shù)語

2010-05-13 11:16:29

FPGA常用術(shù)語

1:LCA(Logic Cell Array):邏輯單元陣列,內(nèi)部包括可配置邏輯模塊CLB(Configurable Logic Block)、輸出輸入模塊IOB(Input Output Block)和內(nèi)部連線(Interconnect)三個部分。

2: IOB(Input Output Block):可編程輸入輸出單元,為了便于管理和適應多種電器標準,F(xiàn)PGA的IOB被劃分為若干個組(bank),每個bank的接口標準由其接口電壓VCCO決定,一個bank只能有一種VCCO,但不同bank的VCCO可以不同。只有相同電氣標準的端口才能連接在一起,VCCO電壓相同是接口標準的基本條件。

3:CLB(Configurable Logic Block):可配置邏輯模塊,是FPGA內(nèi)的基本邏輯單元,每個CLB都包含一個可配置開關(guān)矩陣,此矩陣由4或6個輸入、一些選型電路(多路復用器等)和觸發(fā)器組成。在賽靈思公司公司的FPGA器件中,CLB由多個(一般為4個或2個)相同的Slice和附加邏輯構(gòu)成。

4:Slice:是賽靈思公司公司定義的基本邏輯單位,一個Slice由兩個4輸入的函數(shù)、進位邏輯、算術(shù)邏輯、存儲邏輯和函數(shù)復用器組成。

5:LUT(Look-Up-Table):查找表。本質(zhì)上就是一個RAM,目前FPGA中多使用4輸入的LUT,所以每一個LUT可以看成一個有4位地址線的 的RAM。

6:DCM(數(shù)字時鐘管理模塊):提供數(shù)字時鐘管理和相位環(huán)路鎖定。

7:BRAM(嵌入式塊RAM):塊RAM可被配置為單端口RAM、雙端口RAM、內(nèi)容地址存儲器(CAM)以及FIFO等常用存儲結(jié)構(gòu)。單片塊RAM的容量為18k比特,即位寬為18比特、深度為1024,可以根據(jù)需要改變其位寬和深度,但要滿足兩個原則:首先,修改后的容量(位寬 深度)不能大于18k比特;其次,位寬最大不能超過36比特。當然,可以將多片塊RAM級聯(lián)起來形成更大的RAM,此時只受限于芯片內(nèi)塊RAM的數(shù)量,而不再受上面兩條原則約束。

下載FPGA教學大綱(最終5篇)word格式文檔
下載FPGA教學大綱(最終5篇).doc
將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。
點此處下載文檔

文檔為doc格式


聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻自行上傳,本網(wǎng)站不擁有所有權(quán),未作人工編輯處理,也不承擔相關(guān)法律責任。如果您發(fā)現(xiàn)有涉嫌版權(quán)的內(nèi)容,歡迎發(fā)送郵件至:645879355@qq.com 進行舉報,并提供相關(guān)證據(jù),工作人員會在5個工作日內(nèi)聯(lián)系你,一經(jīng)查實,本站將立刻刪除涉嫌侵權(quán)內(nèi)容。

相關(guān)范文推薦

    FPGA交通燈實驗報告

    交通燈實驗報告 一, 實驗目的 實現(xiàn)兩路信號燈交替亮起,并利用兩組數(shù)碼管分別對兩路信號進行倒計時。 兩路信號時間分別為: V:綠燈(30S) H:紅燈(35S) 黃燈(5s) 綠燈(30S) 紅燈(35S) 黃燈......

    FPGA秒表實驗報告

    課程設(shè)計報告 專業(yè)班級 課 程 題 目 秒表的設(shè)計 學 號 姓 名 同 組 人 成 績 2013年5月 一、設(shè)計目的 1.進一步熟悉七段碼譯碼器的硬件接口。 2.掌握用掃描方法驅(qū)動多個數(shù)碼......

    FPGA實驗報告5篇

    FPGA實驗報告 專業(yè):XXX 姓名:XXX 學號:XX 一:實驗目的 1.熟悉Modelsim和Quartus II軟件的運行環(huán)境和使用2.熟練使用Quartus II仿真軟件生成網(wǎng)表。3.熟悉FPGA前仿真和后仿真的......

    個人FPGA學習心得

    回想起自己學FPGA,已經(jīng)有一段時間了,從開始的茫然,到 后來的瘋狂看書,設(shè)計開發(fā)板,調(diào)電路,練習各種FPGA實例,到最后能獨立完成項目,一路走來,感受頗多,拿出來和大家分享,順便介紹下自己......

    淺談FPGA學習

    為什么大量的人會覺得FPGA難學?一位高人決心開貼來詳細講一下菜鳥覺得FPGA難學的幾大原因。 1、不熟悉FPGA的內(nèi)部結(jié)構(gòu),不了解可編程邏輯器件的基本原理。 FPGA為什么是可以編......

    FPGA學習概述

    FPGA學習 我常年擔任多個有關(guān)FPGA學習研討的QQ群管理員,長期以來很多新入群的菜鳥們總是在重復的問一些非常簡單但是又讓新手困惑不解的問題。作為管理員經(jīng)常要給這些菜鳥們......

    FPGA高手總結(jié)

    一個FPGA高手的總結(jié)很早之前就想對這幾個月工作經(jīng)歷寫的東西,一是作為自己的總結(jié),二是自己也很想將自己這段時間的一些經(jīng)歷和大家分享一下,希望對初學者而言能使得他們能少走一......

    FPGA程序總結(jié)

    1流水燈程序 module ww(clk,led,rst); input clk,rst; output [3:0]led; reg [3:0]led; reg [24:0] cnt; always@(posedge clk or negedge rst) begin if(!rst)cnt......

主站蜘蛛池模板: 最新在线精品国产福利| 成人乱码一区二区三区av| 天天躁日日躁狠狠躁日日躁| 国产午夜激无码av毛片不卡| 人妻美妇疯狂迎合| 日韩精品无码一区二区三区av| 美女大量吞精在线观看456| 2020精品国产自在现线官网| 久久99国产精一区二区三区| 欧美另类高清zo欧美| 久天啪天天久久99久孕妇| 无码专区人妻系列日韩精品少妇| 中文综合在线观| 色综合色国产热无码一| 人人爽人人爽人人爽| 2020国产在线拍揄自揄视频| 久久久久无码精品国产不卡| 人妻无码av中文系列| 无码a级毛片免费视频内谢5j| 精品麻豆丝袜高跟鞋av| 三级在线看中文字幕完整版| 99精品欧美一区二区三区| 国产乱子伦精品免费视频| 影音先锋亚洲成aⅴ人在| 亚洲精品av一二三区无码| 日本免费视频| 鲁鲁夜夜天天综合视频| 浪荡女天天不停挨cao日常视频| 国产人妻精品一区二区三区不卡| 99久久久无码国产精品古装| 真正免费毛片在线播放| 国产日韩欧美不卡在线二区| 国产精品久久人妻互换| 国产sm重味一区二区三区| 在线不卡av片免费观看| 99久久超碰中文字幕伊人| 国产精品进线69影院| 亚洲国产精品一区二区成人片不卡| 亚洲一区二区三区在线播放无码| 狠狠综合久久久久尤物| 国产亚洲精品久久久久久打不开|