VHDL 硬體描述語言 數位電路設計實務 第二章 VHDL 硬體描述語言簡介.

Slides:



Advertisements
Similar presentations
如何學好數學? 黃駿耀老師
Advertisements

辅助核算 3.5.
10 郑和远航.
三个偶像的故事和功绩 ——第12课 明清时期的反侵略斗争 董飞燕.
捣蛋鬼历险记 初一四班 孙嘉佑小组.
中國歷史 明代之患禍及民變.
10 郑和远航 郑和 郑和,1371年生于云南昆阳州(今昆明晋宁县)一个信奉伊斯兰教的回族家庭,原名马和,小字三宝,十一岁时在明太祖朱元璋发动的统一云南的战争中被俘进宫,后当朱元璋四子燕王朱棣的近侍。1403年朱棣登基,史称明成祖。次年正月初一,朱棣念他有勇有谋,屡立奇功,便赐姓“郑”,改称郑和,并提拔为内宫太监,于永乐三年(1405年7月11日)率领庞大船队首次出使西洋。自1405年到1433年,漫长的28年间,郑和船队历经亚非三十余国,涉十万余里,与各国建立了政治,经济,文化的联系,完成了七下西洋的伟
明清 抗击外国侵略的英勇斗争 雅克萨反击战(俄) 戚继光抗倭(日) 郑成功收复台湾(荷兰) 荷兰 俄 罗 斯 日 本 台湾 沙 俄 入 侵
戚继光抗倭.
刑事訴訟法 授課人:林俊益副教授 時間:95.9.~96.6..
妩媚人生 云 计 算 与 大规模数据并行处理技术 黄 宜 华 南 京 大 学 计算机科学与技术系 软件新技术国家重点实验室 妩媚人生 妩媚人生
第16 课 中外的交往与冲突 授课人:鲍婷.
历史上的中日关系.
云南外事外语职业学院 入党积极分子培训 赵田甜.
第四章 清代臺灣的社會文化變遷 第一節 移墾社會的形成
認識食品中毒 一、什麼是食品中毒? 二人或二人以上攝取相同的食品而發生相似的症狀,並且自可疑的食餘檢體及患者糞便、嘔吐物、血液等人體檢體,或者其它有關環境檢體(如空氣、水、土壤等)中分離出相同類型(如血清型、噬菌 體型)的致病原因,則稱為一件“食品中毒”。 但如因攝食肉毒桿菌毒素或急性化學性中毒而引起死亡,即使只有一人,也視為一件“食品中毒”。
題目:四大古文明 班級:六年八 班 組員:賴宣光.游家齊.陳羿文 吳佳芬.許淑婷.許芳瑜..
食 物 中 毒.
琦君 《髻》 S 康倩瑜.
眼乾乾唔使慌.
滑膜皱襞综合征.
“公平”是最热的关键词 1、胡锦涛首次进行“总动员”,提出“在促进发展的同时,把维护社会公平放到更加突出的位置” 。
贵州省公务员面试 备考指导 中公教育 面试讲师 刘运龙.
外 套 各式領型與變化 武 玫 莉 製 作.
第4节 人体对食物的消化吸收.
陈冤之魅,心鬼之泪 ——雾里探花 《东方快车谋杀案》 By第二小组.
高考作文等级评分标准/发展等级10分 深刻 丰富 有文采 有创意 ①透过现象 深入本质 ②揭示问题 产生的原因 ③观点具有 启发作用
文明礼仪在我心 文明礼仪在我心.
第10课 社会生活的变迁.
故事会 盘古开天劈地 在很久很久以前,天地可不象我们现在看到的这样————天高高的在上面,地在我们的脚下,中间隔着几千几万米远。那个时候的天地就象是一个包在大黑壳里的鸡蛋,混混沌沌的,什么也看不清。人们走路都得弯着腰,耕田打猎都很不方便,因为一不小心抬个头,就会碰到天,惹它生气,接着就会招来狂风暴雨。因此所有的植物也都长不高,所以结的粮食和果实都很少,根本就不够大家吃。还经常会发生饿死人的事情。
面向三农,拓宽信息渠道 辐射千村,服务百万农民
三招 让孩子爱上阅读 主讲人:芝莺妈妈 2012年10月19日.
FUZHUANGZHITUYANGBANZHIZUO
如何挑選吳郭魚 嗨~ 餐旅二乙 4a2m0105 白妤潔 4a2m0122 何姿瑩.
学校春季呼吸道传染病预防知识 连云港市疾病预防控制中心
服裝整理概論.
印染纺织类艺术.
创业计划书的编写.
创业计划书撰写.
第九章 进行充分调研 选择自主创业.
香溢饺子馆创业计划书.
第三章 中国的民族民俗 第一节 概论 第二节 汉族 第三节 满族 蒙古族 维吾尔族 回族 朝鲜族 第四节 壮族 土家族 苗族 黎族
第 4 章 投资银行: 基于资本市场的主业架构.
创业数字图书馆.
中国管理科学发展探索 成思危 2006年8月18日于上海复旦大学.
“四文”交融,虚实并举,打造具有鲜明职教特色的校园文化 ——江苏省扬州商务高等职业学校校园文化建设汇报
103年度高職優質化輔助方案計畫申辦及輔導訪視說明會
“十二五”科技发展思路 与科技计划管理 科技部发展计划司 刘敏 2012年9月.
社区妇幼保健工作 江东区妇幼保健院 胡波瑛.
人生不要太圓滿 ◎ 張忠謀.
导致羊水过少的五大因素.
胎教.
怎样进行一次宣讲 何惠玲.
第三课 中国共产党的历程.
[聚會時,請將傳呼機和手提電話關掉,多謝合作]
规范母婴保健服务 努力降低孕产妇死亡率 市卫生局基妇科 朱静.
中国地质科学院矿产资源研究所 财务报账培训
白天的月亮 想與日爭輝 人生不要太圓滿 文字取自於:張忠謀 攝於陽明山 阿道的攝影工作坊.
第十章(上) 实现中华民族的伟大复兴.
营养要均衡.
ㄩ.
高中新课程历史必修(Ⅰ) 教材比较研究 四川师范大学历史文化学院教授 陈 辉 教育部2009普通高中历史课改远程研修资料.
十年职业生涯规划 —— 年 姓名:刘娟 学号:.
主考官眼中的面试 ——面试主考官教你备战2016年国考面试 主讲老师:李海鹏.
国内知名高校 医学院(部、中心) 院系及附属医院设置情况 调研报告
財務報表分析 授課教師:陳依婷.
第六章 可供出售金融资产 一、可供出售金融资产的概念和特征 二、可供出售金融资产的核算.
主讲人:刘文波 (四会国税 政策法规股) 2014年4月
智慧宁波 智慧财税 . 宁波市地方税务局.
第六模块礼仪文书写作 第一节求职信、应聘信 QIUZHIXINYINGPINXIN.
Presentation transcript:

VHDL 硬體描述語言 數位電路設計實務 第二章 VHDL 硬體描述語言簡介

2-1硬體描述語言 (Hardware Description Language, HDL) 和傳統數位電路設計的優缺點比較 設計者可以不需要考慮實際製造晶片所用的製程技術,邏輯合成工具可以將您的設計相對於不同的製程作不同的轉換、並作最佳化的處理。 在硬體描述語言的設計中、功能的驗證可以在較高的層次 (例如:暫存器轉移層次) 就執行並作修正以符合要求。大部份的錯誤在暫存器轉移層次就可以被修正,和更低層次與實際電路佈置時所會發生的機率比較起來就相對地小多了。

用硬體描述語言設計電路就好比撰寫電腦程式一樣,因為硬體描述語言就像電腦程式語言一樣、同樣具有結構化程式某些特性:選擇 (if … else … 敘述、case 敘述 … 等等),以及與迴圈的語法 (for 敘述、while 敘述);也可以在電路的描述中加入註解的部份來說明電路的詳細情形,讓人更容易了解,以利於電路的除錯與發展。相較之下、一個以邏輯閘設計出來的電路,尤於過於複雜、要讓人了解電路的實際情況是相當困難,甚至是無法理解的。 由於使用硬體描述語言可以很快地描述出所需要設計的電路,因此數位系統設計人員及數位電路工程師很快地就可以作:邏輯模擬、邏輯合成以及驗證的工作,因此可以很快地開發出所要的數位系統。

相較於傳統以人工畫圖 (Fully Customize Design) 的設計方式、硬體描述語言的缺點 由於電路的合成完全仰賴於電腦輔助設計工具 (CAD),然而合成出來的電路未必皆能得到很好的電路設計。也就是電腦輔助設計工具的在合成時所作的最佳化處理仍待加強。其中的一個原因在於:硬體描述語言提供了數種不同的描述方式來設計一個數位電路。功能同樣的電路、由不同人員所描述 (設計) 出來的硬體描述語言,經由電路合成之後、所得到的邏輯閘電路 (Gate-Level) 未必會是相同的。這種問題和寫程式一樣,二個人寫的程式未必會相同、如果是相同的話那很可能是互相抄襲的。 因為使用人工的方式,數位系統設計人員及數位電路工程師可以針對:電路的速度、面積以及功率的消耗 … 等方向作最佳的考量與設計,調校出所希望的電路設計。然而電腦輔助設計工具 (CAD) 並未能對這些方面作全盤性的考量。

2-2 VHDL 的源由 1983 年七月,由 Intermetrics、IBM 以及德州儀器 (Texas Instruments) 發展出來的。 1985年八月,在美國政府的合約之下形成了 VHDL 7.2 版。 1987年十一月,VHDL 成為IEEE 1076-1987 標準。 1988 年,VHDL 成為 ANSI標準。 1993年九月,VHDL 重新標準化以及增強 VHDL。 VHDL 迄今已被國際電工協會 (IEC) 認定為國際標準。

2-3 VHDL 的特色 提供多種不同的設計方法 (design methodology)。 不同的製程特性 (technology independence) 也不用考量。 可以用來設計各式各樣的數位電路。 它是一種硬體描述語言的標準,設計人員可以用它來交換設計的心得。 由 VHDL 衍生出來的標準語言,像是:WAVES、VITAL 以及 Analog VHDL。

2-4 VHDL 硬體描述語言的特性 VHDL 硬體描述語言(VHDL)的特性、如下列各點: VHDL 為一般性的硬體描述語言、易學易用。 VHDL 的語法與 C 語言相似。 VHDL 允許在同一個模組中有不同層次的表示法共同存在,設計者可以在同一個模組中混合使用:電晶體層次 (Transistor Model)、邏輯閘層次模型 (Gate level Model)、暫存器轉移層次 (Register Transfer Level)、資料流模式 (Data Flow Mode),以及行為模型 (Behavioral Model) 等各種不同層次的表示法來描述所設計的電路。 一般的邏輯合成工具普遍都支援 VHDL。 許多的製造商也都有提供 VHDL 的函數庫。

2-5 VHDL / Verilog 電腦輔助設計工具 --- Quick Logic 的介紹 由 QuickLogic™ 公司所設計出來的 QuickWorks 這套電腦輔助設計工具 (CAD)。 可以安裝在個人電腦的 Windows 各種版本視窗作業系統。 具有VHDL / Verilog 電路編譯以及模擬 … 等等功能,作為本書中所有的 VHDL 電路的編譯以及模擬流程 (Compile and Simulation Flow) 。

2-6 VHDL 電路設計、模擬與燒錄的流程 (VHDL design in、 simulation and program flow) --- 使用 QuickLogic 使用 QuickLogic 來實作 VHDL 電路設計、模擬、合成、佈侷 (Placement) 與繞線 (Routing) 與燒錄的流程,包括下列數個步驟: 編輯 VHDL 電路描述 VHDL 電路描述之合成語法檢查 (Synthesizer Syntax Check) 編輯測試碼檔案 (Test Bench File) 測試碼檔案 (Test Bench File) 之模擬語法檢查 (Simulator Syntax Check) 電路的模擬 (Simulation) 電路的佈侷 (Placement) 與繞線 (Routing) 電路的時序分析 (Timing Analysis) 電路的驗證 (Verify) 電路的燒錄 (Program)

執行 QuickLogic 群組中的 SpDE 點選在桌面上有一個 QuickLogic 的資料夾圖示 (Icon),接著點選 QuickLogic 群組中的 SpDE (SpDE 9.4.1 Release Build Eval Copyright © 1993-2003 QuickLogic)。

以一個位元的全加器電路作為 ModelSim 電路模擬的整個流程 步驟一:設計一個位元全加器電路的 vhdl 檔案 一個位元全加器電路的 VHDL 套件 (vhdl 檔案之一) -- pkg_Full_Adder.vhd 一個位元全加器的 VHDL套件 library ieee; use ieee.std_logic_1164.all;   package pkg_Full_Adder 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; end pkg_Full_Adder;

一個位元全加器電路的 VHDL 電路描述檔 (vhdl 檔案之二) -- Full_Adder.vhd 一個位元全加器的 VHDL電路描述檔 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; use work.pkg_Full_Adder.all;   entity Full_Adder is port( in1 : in std_logic; in2 : in std_logic; carryin : in std_logic; sum : out std_logic; carryout : out std_logic ); end Full_Adder;

architecture arc of Full_Adder is begin Do_Full_Adder: process( in1, in2, carryin ) variable result : std_logic_vector( 1 downto 0); result := '0'&in1 + in2 + carryin; carryout <= result(1); sum <= result(0); end process Do_Full_Adder; end arc;

步驟二:電路合成語法檢查 編輯完成之後,點選 Turbo Writer 功能表 HDL  Synthesizer Syntax Check 做電路合成語法檢查。因為有些 VHDL 的語法是不能用於電路合成的,請參考各章節中註明不能用於電路合成語法的說明。 如果有語意上的錯誤,則出現錯誤的訊息、錯誤訊息包括錯在那個檔案的第幾行以及可能的錯誤原因。例如將 pkg_Full_Adder.vhd 第10行 sum : out std_logic; 故意打錯改成 sum : out std_logic 少打個 ; 號,那麼錯誤的訊息如下:@E: “pkg_Full_Adder.vhd(23)” : 10:8:10:10|Expecting closing) for interface list 告訴您在第10行的語法有錯誤。 如果都沒有問題的話,它會告訴您 VHDL syntax check successful!

如果您設計的任何一個 .vhd 檔案中用到了 VHDL’93 的敘述或語法,則點選 Turbo Writer 功能表 HDL  Options… 點選 VHDL’93,Turbo Writer 就會允許您在這個 VHDL 檔案中使用 VHDL’93 的敘述或語法。

2-6.2 VHDL 電路的模擬 步驟三:準備“電路測試碼”的檔案 (.vhd檔案) 點選 Turbo Writer 功能表 HDL  Generate Test Bench 來撰寫“電路測試碼”的檔案 (.vhd 檔案)。 Turbo Writer 會自動幫我們產生“電路測試碼”的檔案 (.tb 檔案) 的底下部份:

“電路測試碼”的檔案 (.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 => sum, carryout => carryout); process begin

-- 時間為 0 ns in1 <= '0'; in2 <= '0'; carryin <= '0'; wait for 20 ns; -- 時間為 20 ns in1 <= '0'; in2 <= '0'; carryin <= '1'; wait for 20 ns; -- 時間為 40 ns in1 <= '0'; in2 <= '1'; carryin <= '0'; wait for 20 ns; -- 時間為 60 ns in1 <= '0'; in2 <= '1'; carryin <= '1'; wait for 20 ns; -- 時間為 80 ns in1 <= '1'; in2 <= '0'; carryin <= '0'; wait for 20 ns; -- 時間為 100 ns in1 <= '1'; in2 <= '0'; carryin <= '1'; wait for 20 ns;

-- 時間為 120 ns in1 <= '1'; in2 <= '1'; carryin <= '0'; wait for 20 ns; -- 時間為 140 ns in1 <= '1'; in2 <= '1'; carryin <= '1'; wait for 20 ns; -- 時間為 160 ns assert false report " End of Simulation" severity failure; end process; END HTWTestBench;

編輯完成之後,點選 Turbo Writer 功能表 HDL  Simulator Syntax Check 做電路模擬語法檢查。 如果有語意上的錯誤則出現錯誤的訊息,如果都沒有問題的話,它會告訴您 VHDL syntax check successful!   最後點選 Turbo Writer 功能表 File  Save As,儲存“電路測試碼”的檔案成為 tb_xxx.vhd 檔名,例如:tb_Full_Adder.vhd。

步驟四:執行 開始  程式集 中的 Active-HDL 6.2

Add existing resource files

File  New  Waveform

Add Signals…

variable (變數)

步驟五:讓 Active-HDL 6.2 為您做電路的模擬

步驟六:觀察波型的變化是否與預期的結果一樣 觀察波型是否與預期的結果一樣?如果一樣,那麼恭禧您,您所撰寫的電路描述功能算是成功地完成了。 如果不一樣就得回到步驟一:設計一個位元全加器電路的 .vhd 檔案,去檢查 VHDL 程式碼在那裡有寫錯了。 也有可能是步驟三:準備“電路測試碼”的檔案 (tb_xxx.vhd 檔案) 的 VHDL 檔案中的測試碼時間給的不好,造成電路沒有作相對應的動作。

Full_Adder.vhd 的模擬結果

放大右上方波型的部份來看

Display 頁次設定訊號高度、顏色、粗體與否以及是否為類比 Analog 訊號表示的設定。

步驟七:可以將觀察訊號存成 .awf 檔, 方便下次叫用 點選功能表 File  Save 給定 .awf 的檔案名稱, 例如:Waveform_ Full_Adder.awf 下次只要開啟 Waveform_Full_Adder.awf,就可以將上次觀察的訊號回復回來。

2-6.3 VHDL 電路的合成 (Synthesis)、佈侷 (Placement) 與繞線 (Routing) 電路模擬結果的波型變化與預期的結果一樣之後,請回到 SpDE,接著要讀入 VHDL 檔案,請點選主選單中的 File  Import  VHDL...  找到 Full_Adder.vhd 接著會自動啟動 Synplify-Lite, Synplify-Lite for QuickLogic 7.2.1 Built: Dec 4 2002, Copyright © 1994-2002 Synplicity, Inc. All Rights Reserved. VHDL and Verilog Synthesis for QuickLogic FPGAs. 專門對 VHDL / Verilog 電路描述作編譯、合成 (Synthesis)、佈侷 (Placement) 與繞線 (Routing) 的功能。

選擇 Synplify-Lite 的功能表 Options 功能表裡頭的 Configure VHDL Compiler…

選擇 SpDE 的功能表 Tools 功能表中的 Options…,可作細項設定 其中的 Logic Optimizer 頁中的 Type 群組,可供您決定合成出來的電路是以電路的速度 (Speed) 為主要的考量對象或者是電路的面積 (Area)。

其中的 Placer/Router 頁中有 Placer Mode、Placer Speed、Router Speed,以及 Placer Type 等四個群組,可以讓您設定 SpDE 為您的 VHDL 作電路合成時元件的佈置與繞線處理過程考慮的因素。

執行 Tools 功能表中的 Run Selected Tools… (也可以按Ctrl + R) 請全部勾選Auto Place & Route、Post-Layout Tools 以及 Pre-Programming Tools 群組中所選擇的功能,接著按 Run 按鈕開始執行。

由底下這個視窗可以看出:使用 FPGA 元件來合成出來的函數電路只佔了整個 FPGA 元件的一小部份,是因為全加器模組蠻小的。

選擇功能表中的 View  Zoom In 作侷部放大觀看使用 FPGA 元件來合成出來的函數電路。

2-6.4 IC 的 Pin 腳指定 (Pin Assignment) 回到 SpDE 9.4.1,執行 View 功能表中的 Package View,就會看到 SpDE 為您合成出來的電路相對於整顆 IC 頂視圖中相對的 Pin 腳位置指定 (Pin Assignment) 關係。

執行View  Zoom In, 點選右上角作侷部的放大檢視

2-6.5 電路的路徑分析 (Path Analyzer)

2-6.6 電源消秏分析 (Power Calculator) 在 SpDE 9.4.1 中,執行 Tools 功能表中的 Power Calculator:電源消秏分析,它的功能在於讓您知道您電路在那一顆 IC (Part)、輸出負載 (Output loading) 是多少 pF、那一種工作電壓 (Volts) 以及多快的工作頻率 (System Frequency,多少 MHz) 之下,總電源消秏是多少 mW。 其中 Part:、Vcc:、Output loading: 以及 System Freq: 的部份您都是可以手動去更改它的,更改了之後馬上就會幫您算出總電源消秏是多少 mW。

2-6.7 燒錄 (Program) 您辛苦設計的 IC

關於燒錄器的選購 透過電腦和燒錄器的連接就可以將您辛苦設計的 VHDL 硬體描述語言程式碼經由“電路的“模擬”、“編譯”、“合成”、“佈侷” 與 ”繞線” 燒錄到 QuickLogic IC。 QuickLogic 燒錄器必須配合不同的 IC 包裝而選擇不同的轉接頭,不同的轉接頭有不同的價格,您可以直接與 Quicklogic 代理商“大傳企業”洽詢,“大傳企業”的聯絡方式:電話 (02)2555-9676,網站 www.teconet.com.tw。

執行用於燒錄 QuickLogic IC 的燒錄程式 點選在桌面上有一個 QuickPro 的資料夾圖示 (Icon),接著點選 QuickPro 群組中的 QuickPro (QuickPro 9.1 RC3f Copyright © 2002 QuickLogic)。

點選 Configuration 功能表中的 Communication Port,如下圖所示。用於設定您將 QuickLogic 燒錄器的連線接到電腦的 “COM Port” 是 COM1 還是 COM2,COM Port 也就是在印表機埠 (Printer Port) 旁的 RS-232 接頭,選擇完成之後按 OK。

點選 File 功能表中的 Open…,如下圖所示。找到您的 .CHP 或者是 .LOF 檔案的位置之後按 ”開啟舊檔”。

看到 “Report File” 這個對話盒時只要按 “OK” 就好了。

2-7 Primitive Cell 介紹 所謂的「Primitive Cell」是指:電腦輔助設計工具 (CAD) 在電路合成的步驟時,會將 Verilog 模組電路的描述、使用什麼樣的邏輯閘元件來合成出該模組電路的需求來。 QuickLogic 的 Primitive Cell 為:「FPGA」元件。 Synopsys 的 Design Analyzer 之 Primitive Cell 為:最基本的「邏輯閘」元件,以及 Synopsys 公司所提供的 Cells。

FPGA的 Primitive Cell 為:FPGA 元件 「現場可規劃邏輯閘陣列」(FPGA),是 Field Programmable Gate Array 的英文縮寫。FPGA 元件具有較「邏輯閘陣列」元件容易使用之優點,但其設計彈性也相對的比較低。 FPGA 元件的可規劃連接結構大致有下列三種: 靜態隨機存取記憶體 (Static RAM, SRAM) 電子抹除式可規劃唯讀記憶體 (EEPROM, Electric Erasable Programmable Read Only Memory) 反熔絲 (Anti Fuse) 基本的 FPGA 結構依其可規劃邏輯模組電路在晶片上的排列方式可分為下列兩大種結構: 矩陣型結構 列向量型結構

Synopsys 的 Design Analyzer 之 Primitive Cell 為:最基本的「邏輯閘」元件,以及 Synopsys 公司所提供的 Cells Synopsys 的 Design Analyzer 之 Primitive Cell 能夠合成出基本的組合電路 (Combinational circuit),再配合記憶體元件則能夠合成出基本的循序電路 (Sequential circuit)。 可合成的 (Synthesizable) VHDL primitives cells,包括下列的基本元件: not、and、nand、or、nor xor、xnor Synopsys 公司所提供的 Cells:包括很多種加法、減法、乘法 … 等等的元件。

2-8 VHDL 電路合成與模擬的流程 (Synthesis and Simulation Flow) --- 使用 Synopsys 的 Designer Analyzer 使用 Synopsys 的 Design Analyzer 來將 VHDL 元件實作電路合成與模擬的流程 (Synthesis and Simulation Flow)、如圖「VHDL 元件合成與模擬的流程 --- 使用 Synopsys 的 Designer Analyzer」所示,分成 : 「功能模擬」 (Functional Simulation) 階段 「邏輯閘層次模擬」 (Gate Level Simulation) 階段 「模擬結果」比較 (Simulation Output Comparison) 階段

「功能模擬」(Functional Simulation) 階段 1. VHDL 電路描述檔案 (*.vhd 檔) 我們將 VHDL 電路描述檔案 (*.vhd 檔) 作為設計的輸入。 6. 功能模擬 (Functional Simulation) 及 7. 電路的測試碼 (VHDL Test Driver) 「邏輯閘層次模擬」(Gate Level Simulation) 階段 2. VHDL 語法檢查 (Synopsys HDL Compiler) 3. VHDL 電路合成 (Synopsys Design Compiler) 4. 邏輯閘層次描述 (Gate Level Description) 5. 邏輯閘層次模擬 (Gate Level Simulation) 及 7. 電路的測試碼 (VHDL Test Driver) 「模擬結果比較」 (Simulation Output Comparison) 階段 8. 功能及時序模擬結果比較 (Compare Output)