久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4641|回復: 1
打印 上一主題 下一主題
收起左側

FPGA可編程數字邏輯電路入門實驗分享給大家

[復制鏈接]
跳轉到指定樓層
樓主
ID:611768 發表于 2019-9-15 20:53 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式

課程名稱:數字邏輯電路實驗A

第二次試驗

實驗名稱:可編程數字邏輯設計基礎

院系:電子科學與工程學院

專業:電子科學與技術(類)

  • 實驗準備:

目的和要求:

  •      了解可編程數字系統設計的流程
  •      掌握Quartus軟件的使用方法
  •      掌握競爭和冒險的基本概念和電路的時延分析方法
  • 實驗原理及實現方案:

    實驗原理:

  •      觀察并記錄實驗箱上的FPGA型號,新建一個Project,器件選用實驗箱上的FPGA;

       由于硬木課堂上的FPGA型號為”Cyclone Ⅳ”,而實驗所采用的版本Quartus9.1不支持此型號,所以在新建project時,在Assignment中選擇Device,選擇其中的Family下拉框,點擊“CycloneⅢ”,Available devices列表中選擇EP3C5E144C8,點擊“OK”即可。

  •      用“AND2”和“XOR”器件設計一個1位半加器,并用功能仿真進行驗證;

         設計方案:①AND2為一個二輸入與門,XOR為二輸入異或門,因為一位半加器無進位輸入量,所以設輸入變量為A與B,輸出變量為S和C,S為結果,C為進位輸出量。

②根據一位半加器的要求列出真值表如下表所示:

輸入變量

輸出變量

A

B

S

C

0

0

0

0

0

1

1

0

1

0

1

0

1

1

0

1

③因為輸入量個數較少,直接根據真值表可得S=A’B+AB’,即為A與B的異或;

C=AB,所以據此得到此二輸出的邏輯函數:S=A’B+AB’,C=AB;

④點擊File中的New項,將出現新建文件對話框,選擇“Design File/Block Diagram/Schematic File”項,點擊“OK”即可打開”Block Editor”,雙擊原理圖空白部分,在name欄中分別搜索imput,output,XOR和AND2得到所需元件,然后利用左側繪圖工具建立原理圖,保存在Project的相同文件夾中。如下圖所示:

⑤功能驗證:

首先點擊Project Navigator/files/Device Design Files,選中要編譯的“yiweibanjiaqi.bdf”文件,右鍵將其“Set as Top-level Entity”,先不分配管腳,下面建立輸入激勵波形文件,按照New/Verification/Debugging Files/Vector Waveform File建立文件后雙擊Name空白處,按照Insert Node or Bus/Node Finder/list/”>>”的順序,利用左圖的工具將激勵波形完成后將其“Save”到Project的文件夾中,注意在完善激勵波形的時候用Edit/End time.Grid size設置好截止時間以方便設置周期及后面的時延分析。然后按照“Processing/Simulator Tool/Functional”,然后在Simulator input中指定之前所保存的波形激勵文件,按照“Generate Functional Simulator Netlist”生成功能仿真網表文件,點擊“Start”進行仿真計算,完成后點擊“Report”打開仿真結果波形。仿真結果波形如下:

由上面的輸入輸出波形與真值表相比對輸出結果完全正確,功能驗證完成。

  •      點擊“File”?“Create/Update”“Create Symbol File for Current File”菜單項,將1位半加器封裝成元件。新建一個原理圖文件,調用2個半加器實現一個1位全加器并用功能仿真進行驗證;

接著上面的功能仿真結束后,直接在當前工程下按照“File/Create/Update/Create Symbol File for Current File”的順序將一位半加器封裝成元件命名為“shiyan2yiweibanjiaqi”,封裝即完成.

設計方案:設計一個一位全加器需要三個輸入量,此處定義為A,B,C,其中A,B為加數與被加數,C為輸入進位量,輸出量為S與C0,S為和,C0為輸出進位,先根據一位全加器的定義列出真值表如下表所示:

輸入量

輸出量

A

B

C

S

C0

0

0

0

0

0

0

0

1

1

0

0

1

0

1

0

0

1

1

0

1

1

0

0

1

0

1

0

1

0

1

1

1

0

0

1

1

1

1

1

1

根據以上真值表列出卡諾圖如下圖所示:

①對S:

BC

00

01

11

10

A

0

0

1

0

1

1

1

0

1

0


根據卡諾圖化簡后所得的關于輸出量S的邏輯函數表達式為:S=A⊕B⊕C;

①對C0:

BC

00

01

11

10

A

0

0

0

1

0

1

0

1

1

1

根據卡諾圖化簡后所得的關于輸出量C0的邏輯函數表達式為:C0=AB+AC;

由上面的邏輯函數表達式確定原理圖的繪制過程如下:然后按照之前建立原理圖的順序,即點擊File中的New項,將出現新建文件對話框,選擇“Design File/Block Diagram/Schematic File”項,點擊“OK”即可打開”Block Editor”,雙擊原理圖空白部分,在name欄中搜索”yiweibanjiaqi”即可調出剛剛封裝的一位半加器元件,繼續搜索相應的“output/input/7432(或門)”,按照上述邏輯函數進行原理圖的繪制,繪制后的原理圖如下所示:

首先點擊Project Navigator/files/Device Design Files,選中要編譯的“yiweibanjiaqi.bdf”文件,右鍵將其“Set as Top-level Entity”,先不分配管腳,下面建立輸入激勵波形文件,按照New/Verification/Debugging Files/Vector Waveform File建立文件后雙擊Name空白處,按照Insert Node or Bus/Node Finder/list/”>>”的順序,利用左圖的工具將激勵波形完成后將其“Save”到Project的文件夾中,注意在完善激勵波形的時候用Edit/End time.Grid size設置好截止時間以方便設置周期及后面的時延分析。然后按照“Processing/Simulator Tool/Functional”,然后在Simulator input中指定之前所保存的波形激勵文件,按照“Generate Functional Simulator Netlist”生成功能仿真網表文件,點擊“Start”進行仿真計算,完成后點擊“Report”打開仿真結果波形。仿真結果波形如下:

將仿真的結果波形與真值表相比較,結果一致,功能驗證成功完成。

  •      將 1 位全加器封裝成元件,新建原理圖文件,調用 4 個全加器實現一個 4 位行波加法器,用功能仿真進 行驗證,用“Tools”“Netlist Viewers”“RTL Viewer”查看電路綜合結果;

接著上面的功能仿真結束后,直接在當前工程下按照“File/Create/Update/Create Symbol File for Current File”的順序將一位全加器封裝成元件命名為“yiweiquanjiaqi”,封裝即完成.

設計方案:設計一個四位行波加法器需要九個輸入量,用C-1,A3,A2,A1,A0,B3,B2,B1,B0來表示,其中C-1為低位位進位,此處置零。設計行波加法器采用并行相加串行進位的方式,低位全加器的進位進到高一位的加法器,由于四位行波加法器的情況較多,我們只從原理的角度進行分析,此處不再列出真值表,根據四位行波加法器的工作原理可畫出下面的原理圖:

然后按照之前建立原理圖的順序,即點擊File中的New項,將出現新建文件對話框,選擇“Design File/Block Diagram/Schematic File”項,點擊“OK”即可打開”Block Editor”,雙擊原理圖空白部分,在name欄中搜索”yiweiquanjiaqi”即可調出剛剛封裝的一位全加器元件,繼續搜索相應的“output/input”,按照上述工作原理進行原理圖的繪制,繪制后的原理圖如下所示:

建立保存原理圖之后,首先點擊Project Navigator/files/Device Design Files,選中要編譯的“yiweiquanjiaqi.bdf”文件,右鍵將其“Set as Top-level Entity”,先不分配管腳,下面建立輸入激勵波形文件,按照New/Verification/Debugging Files/Vector Waveform File建立文件后雙擊Name空白處,按照Insert Node or Bus/Node Finder/list/”>>”的順序,利用左圖的工具將激勵波形完成后將其“Save”到Project的文件夾中,注意在完善激勵波形的時候用Edit/End time.Grid size設置好截止時間以方便設置周期及后面的時延分析。然后按照“Processing/Simulator Tool/Functional”,然后在Simulator input中指定之前所保存的波形激勵文件,按照“Generate Functional Simulator Netlist”生成功能仿真網表文件,點擊“Start”進行仿真計算,完成后點擊“Report”打開仿真結果波形。仿真結果波形如下:

功能驗證結果與邏輯值一致,功能驗證完成。

接著按照題干要求提示查看電路綜合效果,結果如下:

  •      適配編譯,用“Tools”“Netlist Viewers”“Technology Map Viewer”查看電路 Map 結果;用 “Tools”?“Chip Planner”查看器件適配結果;

         按照題干查看電路Map結果,效果如下:

        按照題干查看器件適配結果,效果如下:

6.將 4 位全加器下載到實驗箱,連接邏輯電平開關進行功能驗證(課內驗收);

   硬木課堂上的FPGA為Cyclone Ⅳ,但是Quartus9.1版本的Device中最新版本FPGA只包含Cyclone Ⅲ,故將FPGA先與電腦連接然后打開電腦設備管理器選擇“通用串行總線控制器”,選擇其中的“Altera USB-Blaster”,右鍵選擇“更新驅動程序”,根據向導點擊“瀏覽我的計算機以查找驅動程序軟件”,找到Quartus安裝包中的”drivers”,勾選“包括子文件夾”進行驅動設備的更新即可。

新建project時,在Assignment中選擇Device,選擇其中的Family下拉框,點擊“Cyclone Ⅳ E”,Available devices列表中選擇EP4CE6F17C7,點擊“OK”即可。按照FPGA上面的管腳參數給四位行波加法器分配引腳,將C-1引腳分配至KEY0處,其余用邏輯電平SW0~SW7控制輸入量,輸出利用LED0~LED4的亮與不亮來顯示輸出量,管腳分配完成后,點擊“Programmer”,添加硬件為USB-Blaster,點擊start,開始邏輯電平的功能驗證,已通過課內驗收。

  • 對 1 位半加器,進行時序仿真,并做時延分析,可參考預備知識相關內容;

     首先點擊Project Navigator/files/Device Design Files,選中要編譯的“yiweibanjiaqi.bdf”文件,右鍵將其“Set as Top-level Entity”,然后按照“Processing/Simulator Tool”進入仿真頁面,Simulator mode下拉框中選擇“Timing”,激勵波形文件選擇之前建立的“shiyan2yiweibanjiaqi.vmf”文件,start之后選擇Report可以查看仿真結果波形。

在查看仿真結果波形之前,我們先查看電路的時延信息,時延信息如下表所示:

其中RR,RF,FR,FF分別表示輸入信息變化與輸出做出反應之間的時間差,即時延,下面我們查看仿真結果波形,如下圖所示:

然后通過兩個TimeBar來確定時延信息,如圖中所示:當B從0變成1時,C也從0變成1,此時時間差為4.766ns,即為B對C的RR,與上表中比較誤差為4.766-4.759=0.007ns,誤差較小。同理可知,B對S的RF為4.67ns,與表中時延數據相差為0.014ns,誤差較小,B對S的RR=4.746ns,與表格中基本一致,說明時間延遲與表中數據基本一致。可直接按照表中時延數據進行電路的分析。

  • 對 1 位全加器,進行時序仿真,并做時延分析,要求:a) 測量A第1~4個上升沿到對應的的S輸出之間的延遲時間;b) 對輸出S的毛刺進行測量和分析;c) 對輸出C的毛刺進行測量和分析;d) 對測得的時延結果進行分析

時延信息如下表所示:

a

第一個:時延9.569ns;

第二個:時延9.57ns;

第三個:時延9.569ns;

第四個:時延 9.57ns;

b                                                                                                  

此處的輸出毛刺為1.531ns,此處ABC對應的電平為110,S對應的輸出應當為零,但是出現了短暫的毛刺,說明此處存在由于電路延時而出現的競爭冒險情況。

  •   

  C0的輸出如圖所示,并未出現明顯的毛刺現象。

  •     電路中由于輸入與輸出之間的延時會導致電路出現競爭冒險情況,即在同一時刻,輸入與輸出的情況不對應,就會導致所設計的產品出現工作不穩定的情況,可以通過邏輯函數的化簡來消除競爭冒險情況。
  • 對 4 位全加器,進行時序仿真,并做時延分析,要求: a) 測量 Cin=“0”,B=“0111”,A 從“0000”?“0001” 所對應輸出 S3的時延; b) 測量 Cin=“0”,B=“0110”,A 從“0000”?“0010” 所對應輸出 S3的時延; c) 測量 Cin=“0”,B=“0100”,A 從“0000”?“0100” 所對應輸出 S3的時延; d) 測量 Cin=“0”,B=“0000”,A 從“0000”?“1000” 所對應輸出 S3的時延; e) 測量 Cin=“1”,B=“0000”,A 從“0000”?“0111” 所對應輸出 S3的時延; f) 測量 Cin=“0”,B=“1111”,A 從“0000”?“0001” 所對應輸出 Cout的時延; g) 測量 Cin=“0”,B=“1110”,A 從“0000”?“0010” 所對應輸出 Cout的時延; h) 測量 Cin=“0”,B=“1100”,A 從“0000”?“0100” 所對應輸出 Cout的時延; i) 測量 Cin=“0”,B=“1000”,A 從“0000”?“1000” 所對應輸出 Cout的時延; j) 測量 Cin=“1”,B=“1000”,A 從“0000”?“0111” 所對應輸出 Cout的時延; k) 對測得的時延結果進行分析
  •      

時延為10.785ns;

  •      

時延為10.354ns;

  •      

時延為9.491ns;

  •      

時延為8.8ns;

  •       

時延為10.526ns;

  •       

時延為10.526ns;

  •      

時延為10.008ns;

  •      

時延為9.146ns;

  •       

時延為8.628ns;

  •       

時延為10.354ns;


完整的Word格式文檔51黑下載地址:

大學時期的數電入門實驗.docx (365.78 KB, 下載次數: 29)

評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:631994 發表于 2019-10-29 13:21 | 只看該作者
好東西,正好需要
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 成人在线中文 | 成人不卡 | 久久精品国产一区二区电影 | 国产欧美性成人精品午夜 | 久久久久久久久精 | 午夜网址 | 国产 亚洲 网红 主播 | 视频二区 | 伊人久久一区二区 | 日本精品一区二区三区四区 | 亚洲三级视频 | 超碰97免费观看 | 最新高清无码专区 | 狠狠av | 亚洲视频免费在线观看 | 99re视频| 综合激情网 | 丝袜美腿一区二区三区动态图 | 免费v片 | 欧美久久久电影 | 黄色av网站在线免费观看 | 日韩中文字幕在线观看 | 中文字幕一区二区三区精彩视频 | 精品1区| 91看片网站 | 亚洲第一天堂无码专区 | 久久伊人精品一区二区三区 | 午夜婷婷激情 | 亚洲综合资源 | 国产精品久久久久久吹潮 | 国产精品国产精品国产专区不片 | 国产精品区二区三区日本 | 欧美国产一区二区三区 | 激情综合五月天 | 蜜桃视频在线观看免费视频网站www | 国产精品日韩高清伦字幕搜索 | 国产丝袜一区二区三区免费视频 | www.色综合 | 免费国产视频在线观看 | 午夜精品久久久久久不卡欧美一级 | 欧美日韩一 |