第二章_VHDL硬体描述语言简介.ppt

  1. 1、本文档共84页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第二章_VHDL硬体描述语言简介

VHDL 硬體描述語言 數位電路設計實務;2-1硬體描述語言 (Hardware Description Language, HDL) 和傳統數位電路設計的優缺點比較 ;用硬體描述語言設計電路就好比撰寫電腦程式一樣,因為硬體描述語言就像電腦程式語言一樣、同樣具有結構化程式某些特性:選擇 (if … else … 敘述、case 敘述 … 等等),以及與迴圈的語法 (for 敘述、while 敘述);也可以在電路的描述中加入註解的部份來說明電路的詳細情形,讓人更容易了解,以利於電路的除錯與發展。相較之下、一個以邏輯閘設計出來的電路,尤於過於複雜、要讓人了解電路的實際情況是相當困難,甚至是無法理解的。 由於使用硬體描述語言可以很快地描述出所需要設計的電路,因此數位系統設計人員及數位電路工程師很快地就可以作:邏輯模擬、邏輯合成以及驗證的工作,因此可以很快地開發出所要的數位系統。 ;相較於傳統以人工畫圖 (Fully Customize Design) 的設計方式、硬體描述語言的缺點 ;2-2 VHDL 的源由 ;2-3 VHDL 的特色 ;2-4 VHDL 硬體描述語言的特性 ;2-5 VHDL / Verilog 電腦輔助設計工具 --- Quick Logic 的介紹;2-6 VHDL 電路設計、模擬與燒錄的流程 (VHDL design in、 simulation and program flow) --- 使用 QuickLogic;執行 QuickLogic 群組中的 SpDE ;以一個位元的全加器電路作為 ModelSim 電路模擬的整個流程 ;一個位元全加器電路的 VHDL 電路描述檔 (vhdl 檔案之二) ;architecture arc of Full_Adder is begin Do_Full_Adder: process( in1, in2, carryin ) variable result : std_logic_vector( 1 downto 0); begin result := 0in1 + in2 + carryin; carryout = result(1); sum = result(0); end process Do_Full_Adder; end arc;;步驟二:電路合成語法檢查;如果您設計的任何一個 .vhd 檔案中用到了 VHDL’93 的敘述或語法,則點選 Turbo Writer 功能表 HDL ? Options… 點選 VHDL’93,Turbo Writer 就會允許您在這個 VHDL 檔案中使用 VHDL’93 的敘述或語法。;2-6.2 VHDL 電路的模擬;“電路測試碼”的檔案 (.tb 檔案) 包含了:測試元件的輸出入介面、給定輸入訊號、輸入訊號維持多久時間換成新的訊號值以及測試的元件 … 等等。 您必需自行將一個位元全加器的輸入訊號 in1、in2 以及 carryin 在什麼時間給什麼樣的測試訊號,產生一個完整的“電路測試碼”的檔案 (.tb 檔案),如下粗體字的部份。;library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; ENTITY Full_Adder_tb IS END Full_Adder_tb; ARCHITECTURE HTWTestBench OF Full_Adder_tb IS COMPONENT Full_Adder PORT ( in1 : in std_logic; in2 : in std_logic; carryin : in std_logic; sum : out std_logic; carryout : out std_logic ); END COMPONENT; ;SIGNAL in1 : std_logic; SIGNAL in2 : std_logic; SIGNAL carryin : std_logic; SIGNAL sum : std_logic; SIGNAL carryout : std_logic; BEGIN U1 : Full_Adder PORT MAP (in1 = in1, in2 = in2, carryin = carryin, sum =

文档评论(0)

youbika + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档