[ 收藏 ] [ 繁体中文 ]  
臺灣貨到付款、ATM、超商、信用卡PAYPAL付款,4-7個工作日送達,999元臺幣免運費   在線留言 商品價格為新臺幣 
首頁 電影 連續劇 音樂 圖書 女裝 男裝 童裝 內衣 百貨家居 包包 女鞋 男鞋 童鞋 計算機周邊

商品搜索

 类 别:
 关键字:
    

商品分类

  •  管理

     一般管理学
     市场/营销
     会计
     金融/投资
     经管音像
     电子商务
     创业企业与企业家
     生产与运作管理
     商务沟通
     战略管理
     商业史传
     MBA
     管理信息系统
     工具书
     外文原版/影印版
     管理类职称考试
     WTO
     英文原版书-管理
  •  投资理财

     证券/股票
     投资指南
     理财技巧
     女性理财
     期货
     基金
     黄金投资
     外汇
     彩票
     保险
     购房置业
     纳税
     英文原版书-投资理财
  •  经济

     经济学理论
     经济通俗读物
     中国经济
     国际经济
     各部门经济
     经济史
     财政税收
     区域经济
     统计 审计
     贸易政策
     保险
     经济数学
     各流派经济学说
     经济法
     工具书
     通货膨胀
     财税外贸保险类考试
     英文原版书-经济
  •  社会科学

     语言文字
     社会学
     文化人类学/人口学
     新闻传播出版
     社会科学总论
     图书馆学/档案学
     经典名家作品集
     教育
     英文原版书-社会科学
  •  哲学

     哲学知识读物
     中国古代哲学
     世界哲学
     哲学与人生
     周易
     哲学理论
     伦理学
     哲学史
     美学
     中国近现代哲学
     逻辑学
     儒家
     道家
     思维科学
     马克思主义哲学
     经典作品及研究
     科学哲学
     教育哲学
     语言哲学
     比较哲学
  •  宗教

  •  心理学

  •  古籍

     经部  史类  子部  集部  古籍管理  古籍工具书  四库全书  古籍善本影音本  中国藏书
  •  文化

     文化评述  文化随笔  文化理论  传统文化  世界各国文化  文化史  地域文化  神秘文化  文化研究  民俗文化  文化产业  民族文化  书的起源/书店  非物质文化遗产  文化事业  文化交流  比较文化学
  •  历史

     历史普及读物
     中国史
     世界史
     文物考古
     史家名著
     历史地理
     史料典籍
     历史随笔
     逸闻野史
     地方史志
     史学理论
     民族史
     专业史
     英文原版书-历史
     口述史
  •  传记

  •  文学

  •  艺术

     摄影
     绘画
     小人书/连环画
     书法/篆刻
     艺术设计
     影视/媒体艺术
     音乐
     艺术理论
     收藏/鉴赏
     建筑艺术
     工艺美术
     世界各国艺术概况
     民间艺术
     雕塑
     戏剧艺术/舞台艺术
     艺术舞蹈
     艺术类考试
     人体艺术
     英文原版书-艺术
  •  青春文学

  •  文学

     中国现当代随笔
     文集
     中国古诗词
     外国随笔
     文学理论
     纪实文学
     文学评论与鉴赏
     中国现当代诗歌
     外国诗歌
     名家作品
     民间文学
     戏剧
     中国古代随笔
     文学类考试
     英文原版书-文学
  •  法律

     小说
     世界名著
     作品集
     中国古典小说
     四大名著
     中国当代小说
     外国小说
     科幻小说
     侦探/悬疑/推理
     情感
     魔幻小说
     社会
     武侠
     惊悚/恐怖
     历史
     影视小说
     官场小说
     职场小说
     中国近现代小说
     财经
     军事
  •  童书

  •  成功/励志

  •  政治

  •  军事

  •  科普读物

  •  计算机/网络

     程序设计
     移动开发
     人工智能
     办公软件
     数据库
     操作系统/系统开发
     网络与数据通信
     CAD CAM CAE
     计算机理论
     行业软件及应用
     项目管理 IT人文
     计算机考试认证
     图形处理 图形图像多媒体
     信息安全
     硬件
     项目管理IT人文
     网络与数据通信
     软件工程
     家庭与办公室用书
  •  建筑

     执业资格考试用书  室内设计/装潢装修  标准/规范  建筑科学  建筑外观设计  建筑施工与监理  城乡规划/市政工程  园林景观/环境艺术  工程经济与管理  建筑史与建筑文化  建筑教材/教辅  英文原版书-建筑
  •  医学

     中医
     内科学
     其他临床医学
     外科学
     药学
     医技学
     妇产科学
     临床医学理论
     护理学
     基础医学
     预防医学/卫生学
     儿科学
     医学/药学考试
     医院管理
     其他医学读物
     医学工具书
  •  自然科学

     数学
     生物科学
     物理学
     天文学
     地球科学
     力学
     科技史
     化学
     总论
     自然科学类考试
     英文原版书-自然科学
  •  工业技术

     环境科学
     电子通信
     机械/仪表工业
     汽车与交通运输
     电工技术
     轻工业/手工业
     化学工业
     能源与动力工程
     航空/航天
     水利工程
     金属学与金属工艺
     一般工业技术
     原子能技术
     安全科学
     冶金工业
     矿业工程
     工具书/标准
     石油/天然气工业
     原版书
     武器工业
     英文原版书-工业技
  •  农业/林业

     园艺  植物保护  畜牧/狩猎/蚕/蜂  林业  动物医学  农作物  农学(农艺学)  水产/渔业  农业工程  农业基础科学  农林音像
  •  外语

  •  考试

  •  教材

  •  工具书

  •  中小学用书

  •  中小学教科书

  •  动漫/幽默

  •  烹饪/美食

  •  时尚/美妆

  •  旅游/地图

  •  家庭/家居

  •  亲子/家教

  •  两性关系

  •  育儿/早教

  •  保健/养生

  •  体育/运动

  •  手工/DIY

  •  休闲/爱好

  •  英文原版书

  •  港台图书

  •  研究生
     工学
     公共课
     经济管理
     理学
     农学
     文法类
     医学

  •  音乐
     音乐理论

     声乐  通俗音乐  音乐欣赏  钢琴  二胡  小提琴
  • FPGA設計——從電路到繫統(電子設計與嵌入式開發實踐叢書)
    該商品所屬分類:工業技術 -> 電子通信
    【市場價】
    651-944
    【優惠價】
    407-590
    【作者】 蔡述庭 等編著 
    【所屬類別】 圖書  計算機/網絡  行業軟件及應用圖書  工業技術  電子通信  基本電子電路 
    【出版社】清華大學出版社 
    【ISBN】9787302372110
    【折扣說明】一次購物滿999元台幣免運費+贈品
    一次購物滿2000元台幣95折+免運費+贈品
    一次購物滿3000元台幣92折+免運費+贈品
    一次購物滿4000元台幣88折+免運費+贈品
    【本期贈品】①優質無紡布環保袋,做工棒!②品牌簽字筆 ③品牌手帕紙巾
    版本正版全新電子版PDF檔
    您已选择: 正版全新
    溫馨提示:如果有多種選項,請先選擇再點擊加入購物車。
    *. 電子圖書價格是0.69折,例如了得網價格是100元,電子書pdf的價格則是69元。
    *. 購買電子書不支持貨到付款,購買時選擇atm或者超商、PayPal付款。付款後1-24小時內通過郵件傳輸給您。
    *. 如果收到的電子書不滿意,可以聯絡我們退款。謝謝。
    內容介紹



    開本:16開
    紙張:膠版紙
    包裝:平裝

    是否套裝:否
    國際標準書號ISBN:9787302372110
    叢書名:電子設計與嵌入式開發實踐叢書

    作者:蔡述庭等編著
    出版社:清華大學出版社
    出版時間:2014年10月 


        
        
    "

    編輯推薦
    基於實際教學和項目經歷,按照“從電路到繫統”的思路,介紹FPGA開發的方方面面!

    深入淺出,注重實踐,47個實例,11個綜合實驗,讓您輕松應對FPGA開發! 
    內容簡介


    《FPGA設計——從電路到繫統》描述了從電路到繫統的FPGA設計方法、流程、技巧以及工具使用,內容涵蓋了FPGA設計流程、硬件描述語言VerilogHDL、基礎電路設計、邏輯綜合、Synplify與DC工具使用、測試平臺的撰寫以及ModelSim的使用;並對CORDIC算法、CPRI協議及數字直放站的FPGA實現進行了闡述;隨後通過一個電機控制實例來描述FPGA繫統級的設計過程;接著介紹了DO-254標準在FPGA設計中的應用。為了便於讀者實踐操作,書中給出了豐富的FPGA設計實驗,包括基礎實驗和基於Qsys、SOPC的綜合實驗,同時介紹了VivadoHLS工具的使用。本書實例豐富,且貼近實際開發,書中給出的源代碼都經過了實際項目的檢驗,讀者可在清華大學出版社網站下載相關的源代碼。

    《FPGA設計——從電路到繫統》可作為電子、通信、自動化、計算機科學與技術等相關專業的高年級本科生及研究生的教學用書,也可作為從事FPGA設計工作的工程師的參考圖書。

    目錄
    第1章  FPGA設計概論
    1.1 FPGA芯片結構與特點
    1.2 FPGA工作原理
    1.3 FPGA主要器件
    1.3.1 Xilinx
    1.3.2 Altera
    1.4 FPGA設計流程
    1.5 FPGA開發工具
    1.6 FPGA應用
    第2章 硬件描述語言Verilog HDL
    2.1 Verilog HDL的基本規範
    2.1.1 標識符
    2.1.2 轉義標識符
    2.1.3 空白符
    2.1.4 注釋
    2.2 數據類型
    2.2.1 邏輯值
    2.2.2 線網
    2.2.3 寄存器
    2.2.4 數字的表示
    2.2.5 向量
    2.2.6 數組
    2.2.7 參數
    2.2.8 字符串
    2.3 運算符
    2.4 模塊
    2.4.1 模塊的基本概念
    2.4.2 模塊的例化
    2.4.3 模塊的測試
    2.5 過程語句
    2.5.1 兩個過程
    2.5.2 寄存器變量的過程賦值
    2.5.3 線網變量的連續賦值
    2.5.4 時序控制
    2.5.5 順序代碼塊與並行代碼塊
    2.6 條件語句
    2.7 任務和函數
    2.8 繫統任務
    2.9 編譯指令
    2.10 阻塞賦值與非阻塞
    第3章 FPGA基礎電路設計
    3.1 組合電路
    3.2 時序電路
    3.3 數據通路
    3.3.1 加法器基礎理論
    3.3.2 常用數據通路設計
    第4章 邏輯綜合
    4.1 邏輯綜合目的
    4.2 Design Compiler綜合
    4.2.1 準備Design Compiler啟動腳本文件
    4.2.2 約束文件
    4.2.3 報告分析
    4.2.4 優化的參數選擇
    4.2.5 綜合結果
    4.3 Synplify的綜合設計
    4.4 HDL的可綜合性設計
    4.4.1 狀態機設計
    4.4.2 實例化資源
    4.4.3 綜合選項
    第5章 Testbench與ModelSim仿真
    5.1 Testbench實例
    5.1.1 產生時鐘信號
    5.1.2 提供激勵信號
    5.1.3 顯示結果
    5.1.4 Verilog HDL Testbench實例
    5.1.5 自動驗證
    5.1.6 自我檢查Testbench
    5.1.7 編寫Testbench的準則
    5.2 仿真工具ModelSim
    第6章 CORDIC算法及通信調制技術
    6.1 CORDIC算法
    6.2 FPGA實現
    6.3 基於CORDIC算法的通信調制技術
    6.4 ISE中CORDIC IP核的使用
    第7章 FPGA通信協議設計
    7.1 CPRI協議
    7.1.1 協議範圍
    7.1.2 幀結構
    7.1.3 CPRI在FPGA中實現
    7.2 IR協議簡介
    7.2.1 Ir接口物理層
    7.2.2 Ir協議傳輸幀時序結構
    7.2.3 C&M通道
    7.2.4 物理層控制字定義
    7.2.5 Ir協議中的時延測量
    7.2.6 FPGA實現Ir協議
    第8章 數字直放站的FPGA設計
    8.1 直放站FPGA繫統設計
    8.2 數據接口
    8.2.1 ADC接口
    8.2.2 DAC接口
    8.2.3 SPI接口
    8.3 信號處理部分
    8.3.1 數據的抽取和內插
    8.3.2 信號的上變頻和下變頻
    第9章 永磁同步電機矢量控制繫統的FPGA實現
    9.1 永磁同步電機矢量控制繫統簡介
    9.2 繫統硬件平臺
    9.3 軟件開發平臺
    9.4 FPGA片上電路設計
    9.5 實驗驗證
    第10章 可靠性設計——DO-254
    10.1 DO-254
    10.2 FPGA與DO-254
    10.2.1 DO-254基本情況
    10.2.2 DO-254硬件的生命周期
    10.2.3 規劃
    10.2.4 硬件安全性評價
    10.2.5 硬件設計流程
    10.2.6 支持流程
    10.2.7 文檔和組織
    10.3 DO-254標準和美國聯邦航空局
    10.4 DO-254項目的FPGA工具流程
    10.5 FPGA設計的工具流程
    10.6 結論
    第11章 FPGA設計實驗
    11.1 實驗一:LED燈控制
    11.2 實驗二:基於IP核設計的數碼管顯示
    11.3 實驗三:基於Verilog HDL設計的數碼管顯示
    11.4 實驗四:基於DSP Builder設計的clark坐標變換模塊
    11.5 實驗五:分別基於SOPC Builder和Qsys工具控制LED燈
    11.5.1 實驗內容
    11.5.2 SOPC Builder工具設計流程
    11.5.3 Qsys工具設計流程
    11.5.4 實驗小結
    11.6 實驗六:基於Nios Ⅱ定時中斷控制LED閃爍
    11.7 實驗七:Nios Ⅱ與LabVIEW的串口通信
    11.8 實驗八:程序燒寫
    11.9 實驗九:DE2上的μClinux移植
    11.9.1 任務要求
    11.9.2 Nios Ⅱ硬件定制
    11.9.3 頂層文件
    11.9.4 編譯繫統
    11.9.5 內核結構
    11.9.6 文件格式
    11.9.7 進程調度
    11.9.8 文件繫統
    11.9.9 移植層次與代碼結構
    11.9.10 源碼獲取
    11.9.11 內核剪裁和編譯
    11.9.12 映像生成
    11.9.13 鏡像下載
    11.9.14 終端調試
    11.9.15 執行TCP/IP網絡命令
    11.10 實驗十:VGA視頻顯示繫統的SOPC設計
    11.10.1 Nios Ⅱ的硬件開發
    11.10.2 生成Nios Ⅱ硬件繫統
    11.10.3 繫統的軟件設計
    11.10.4 VGA視頻顯示繫統的Nios Ⅱ IDE調試
    11.11 實驗十一:Vivado HLS設計流程實驗
    參考文獻
    前言



    現場可編程邏輯陣列(Field
    Programmable Gate Array,FPGA)器件廣泛應用於汽車電子、多媒體廣播、計算機和存儲、消費電子、工業、醫療、軍事、航空航天、通信、測量等領域。FPGA既廣泛使用在通信基站、大型路由器等高端網絡設備中,也使用在顯示器(電視)、投影儀等日常家用電器裡,FPGA已經從早的隻應用於輔助功能和膠合邏輯(連接各種功能塊以及集成電路的邏輯電路)的簡單器件,發展到現今成為眾多產品的核心器件。使用FPGA器件,可以使開發時間縮短1/2~1/3,因此FPGA成為實現“少量多品種”和“產品周期短”市場中不可缺少的器件之一。



    針對FPGA器件的使用和開發離不開EDA工具的支持,因此,一般FPGA器件廠商也會提供相應的EDA開發工具,比如Altera公司的Quartus Ⅱ/Qsys開發平臺、Xilinx公司的ISE/Vivado開發平臺。其他公司器件都有自己的開發工具,但開發流程基本保持一致。熟悉這些工具對FPGA的開發無疑是基礎和重要的,因此本書的結尾部分主要側重於通過一些實驗來讓大家了解和熟悉Quartus與Vivado工具的使用。

    一般而言,使用FPGA有兩個層次: 電路級和繫統級。簡單來說,電路級側重於在FPGA上實現某些功能電路,或者實現信號處理算法,如FFT、CORDIC、OFDM,或者實現通信繫統中部分通信協議,如基站與射頻覆蓋設備中用得廣泛的通用公眾無線接口協議(CPRI)。繫統級這裡主要是指FPGA中使用CPU,如Nios Ⅱ、MicroBlaze、ARM、PowerPC等軟核、硬核,構成一個比較大的SoC繫統,在此基礎上可以進一步進行軟件應用開發。



    因此,本書的編寫也主要遵從這個思路,繫統描述了從電路到繫統的FPGA設計方法、流程、技巧以及工具使用。



    第1章簡要介紹了FPGA設計概論。



    第2章對硬件描述語言Verilog
    HDL進行了簡單介紹。



    第3章對使用Verilog
    HDL對包括加法器在內的基礎電路設計進行了概述。



    第4章主要介紹了邏輯綜合的概念以及Synplify、DC工具。



    第5章主要介紹了測試平臺的撰寫以及行為級仿真工具ModelSim的使用。



    第6章描述了在通信調制中使用較多的CORDIC算法。



    第7章對無線通信繫統中的CPRI等協議進行了闡述,並詳述了其FPGA實現。



    第8章描述了通信繫統直放站中數字接口電路部分的FPGA設計。



    第9章通過一個電機控制實例來描述FPGA繫統級的設計過程,以Nios Ⅱ為核心處理器來搭建一個SoC繫統。



    由於FPGA器件的廣泛應用,對於FPGA器件組成的繫統的測試與認證也成了非常重要的一個課題,故第10章介紹了航空航天領域的一個硬件繫統設計標準DO254,側重介紹其適應於FPGA器件的流程與準則。



    為了便於讀者實踐操作,第11章給出了豐富的FPGA設計實驗,包括基礎實驗和基於Qsys、SOPC的綜合實驗,如μClinux在Nios Ⅱ上的移植; 還特別介紹了Vivado
    HLS工具的使用。HLS作為一種目前商業化的高層次綜合工具,對繫統級設計人員及算法設計人員都具有非常大的吸引力。書中給出的源代碼都經過了實際項目的檢驗,讀者可在清華大學出版社網站下載相關的源代碼。



    本書可作為電子、通信、自動化、計算機科學與技術等相關專業的高年級本科生及研究生的教學用書,也可作為從事FPGA設計工作的工程師的參考圖書。



    在編寫本書的過程中,引用了大量參考文獻,對此表示感謝。書中不少資料來自Altera和Xilinx公司,Altera大學計劃負責人陳衛中博士和Xilinx大學計劃負責人謝凱年博士均為本書的編寫提供了大量資料與幫助,對兩位致以謝意。感謝清華大學出版社的工作人員為本書順利出版所付出的辛勤勞動。本科生張駿盛對Vivado
    HLS實驗進行了驗證,研究生李靜園、林卓勝為本書提供了相關協助,謝志纔、林燕雲同學對本書亦有貢獻,一並表示感謝。



    由於作者水平有限,書中難免會有紕漏之處,敬請專家和讀者批評指正。



    蔡述庭

    2014年5月


    媒體評論




    在線試讀
    第5章 Testbench與ModelSim仿真
    通常Testbench用工業標準的VHDL或Verilog HDL硬件描述語言來編寫。Testbench調用待測功能設計,然後進行仿真。復雜的Testbench完成一些附加的功能,例如包含一些邏輯來產生合適的設計激勵或對實際結果和預期結果進行比較。
    5.1Testbench實例
    下面通過一個例子來熟悉Testbench的結構。
    LIBRARY ieee;
    BEGIN
    上述代碼存為MLU.VHD文件,為被測對像,其RTL視圖如圖5.1所示。


    圖5.2MLU仿真波形
    所有Testbench包含了如表5.1所示的基本程序段。除此之外,Testbench通常包含附加功能,如在終端上可視的結果和內建的錯誤檢測。
    表5.1Testbench的基本程序段

    Verilog HDL
    Module聲明
    信號聲明


    第5章 Testbench與ModelSim仿真



    由於設計的規模越來越大,也越來越復雜,數字設計的驗證已經成為一個日益困難和繁瑣的任務。驗證工程師們依靠一些驗證工具和方法來應對這個挑戰。對於幾百萬門的大型設計,工程師們一般使用一套形式驗證(formal verification)工具。然而對於一些小型的設計,用Testbench就可以很好地進行驗證。

    通常Testbench用工業標準的VHDL或Verilog HDL硬件描述語言來編寫。Testbench調用待測功能設計,然後進行仿真。復雜的Testbench完成一些附加的功能,例如包含一些邏輯來產生合適的設計激勵或對實際結果和預期結果進行比較。

    5.1Testbench實例

    下面通過一個例子來熟悉Testbench的結構。



    【例51】被測試電路。





    LIBRARY ieee;



    USE ieee.std_logic_1164.all;



    ENTITY mlu IS



    PORT(



    NEG_A : IN STD_LOGIC;



    NEG_B : IN STD_LOGIC;



    NEG_Y : IN STD_LOGIC;



    A : IN STD_LOGIC;



    B : IN STD_LOGIC;



    L1 : IN STD_LOGIC;



    L0 : IN STD_LOGIC;



    Y : OUT STD_LOGIC



    );



    END mlu;



    ARCHITECTURE mlu_dataflow OF mlu IS



    SIGNAL A1 : STD_LOGIC;



    SIGNAL B1 : STD_LOGIC;



    SIGNAL Y1 : STD_LOGIC;



    SIGNAL MUX_0 : STD_LOGIC;



    SIGNAL MUX_1 : STD_LOGIC;



    SIGNAL MUX_2 : STD_LOGIC;



    SIGNAL MUX_3 : STD_LOGIC;



    SIGNAL L: STD_LOGIC_VECTOR(1 DOWNTO 0);





    BEGIN



    A1<= NOT A WHEN (NEG_A='1') ELSE A;



    B1<= NOT B WHEN (NEG_B='1') ELSE B;



    Y <= NOT Y1 WHEN (NEG_Y='1') ELSE Y1;



    MUX_0 <= A1 AND B1;



    MUX_1 <= A1 OR B1;



    MUX_2 <= A1 XOR B1;



    MUX_3 <= A1 XNOR B1;



    L <= L1 & L0;



    with (L) select



    Y1 <= MUX_0 WHEN "00",



    MUX_1 WHEN "01",



    MUX_2 WHEN "10",



    MUX_3 WHEN OTHERS;



    END mlu_dataflow;





    上述代碼存為MLU.VHD文件,為被測對像,其RTL視圖如圖5.1所示。







    圖5.1RTL視圖







    【例52】Testbench實例。



    library ieee;



    use ieee.std_logic_1164.all;



    use ieee.std_logic_unsigned.all;



    entity MLU_TB is



    end MLU_TB;



    architecture MLU_TB_ARCHITECTURE of MLU_TB is



    component mlu



    port(



    NEG_A : in std_logic;



    NEG_B : in std_logic;



    NEG_Y : in std_logic;



    A : in std_logic;



    B : in std_logic;



    L1 : in std_logic;



    L0 : in std_logic;



    Y : out std_logic);



    end component;



    激勵信號: 映射到被測對像的輸入和輸入/輸出端口



    signal TEST_NEG_A : std_logic;



    signal TEST_NEG_B : std_logic;



    signal TEST_NEG_Y : std_logic;



    觀測信號: 映射到被測對像的輸出端口



    signal TEST_Y : std_logic;



    signal TEST_AB: std_logic_vector(1 downto 0);



    signal TEST_SEL: std_logic_vector(1 downto 0);



    的端口映射



    Begin



    UUT : mlu



    port map (



    NEG_A => TEST_NEG_A,



    NEG_B => TEST_NEG_B,



    NEG_Y => TEST_NEG_Y,



    A => TEST_AB(1),



    B => TEST_AB(0),



    L1 => TEST_SEL(1),



    L0 => TEST_SEL(0),



    Y => TEST_Y);



    TESTING: process



    begin



    TEST_NEG_A<='0';



    TEST_NEG_B<='0';



    TEST_NEG_Y<='0';



    TEST_AB<="00";



    TEST_SEL<="00";



    for I in 0 to 3 loop



    for J in 0 to 3 loop



    wait for 10 ns;



    TEST_AB<=TEST_AB+"01";



    end loop;



    TEST_SEL<=TEST_SEL+"01";



    end loop;



    TEST_NEG_A<='1';



    TEST_NEG_B<='1';



    TEST_NEG_Y<='0';



    TEST_AB<="00";



    TEST_SEL<="00";



    for I in 0 to 3 loop



    for J in 0 to 3 loop



    wait for 10 ns;



    TEST_AB<=TEST_AB+"01";



    end loop;



    TEST_SEL<=TEST_SEL+"01";



    end loop;



    end process TESTING;



    end MLU_TB_ARCHITECTURE;







    上述代碼存為MLU_tb.VHD文件,作為Testbench文件。運行後得到的仿真波形如圖5.2所示。









    圖5.2MLU仿真波形





    所有Testbench包含了如表5.1所示的基本程序段。除此之外,Testbench通常包含附加功能,如在終端上可視的結果和內建的錯誤檢測。





    表5.1Testbench的基本程序段







    VHDL

    Verilog HDL



    entity和architecture聲明

    Module聲明

    信號聲明

    信號聲明

    實例化頂層設計

    實例化頂層設計

    提供激勵

    提供激勵





    簡單來說,VHDL的Testbench的基本格式為:





    library ieee;



    use ieee.std_logic_1164.all;



    entity test_bench is測試平臺文件的空實體(不需要端口定義)



    end test_bench;



    architecture tb_behavior of test_bench is



    component entity_under_test 件的聲明



    port(



    listofportstheritypesandmodes



    );



    end component;



    begin



    instantiation:entity_under_test port map



    (



    portassociations



    );



    process() 產生時鐘信號






    end process;



    process() 產生激勵源






    end process;



    end tb_behavior;





    而Verilog HDL的Testbench相對而言更為簡潔:



    `timescale 1 ns / 1 ps //時間精度和刻度



    module test_bench;



    DUT輸入信號定義; //DUT輸入信號一般定義為reg類型



    DUT輸出信號定義; //DUT輸出信號一般定義為wire類型






    待測模塊 dut(端口映射); //待測module實例化






    initial begin



    //定義相關信號初始值或者定義時鐘復位等控制信號



    //監測、添加約束等



    end






    always //處理相關需要變化的值






    endmodule



    以下從生成時鐘、激勵信號、顯示輸出、自動驗證等方面對Testbench進行闡述。



    5.1.1產生時鐘信號

    使用繫統時鐘的時序邏輯設計時必須要產生時鐘信號。時鐘信號在VHDL或Verilog HDL中可以很容易地實現。以下是VHDL和Verilog HDL的時鐘發生示例。



    VHDL:



    聲明時鐘周期常量



    Constant ClockPeriod : TIME := 10ns;



    時鐘生成方法1:



    Clock <= not Clock after ClockPeriod / 2;



    時鐘生成方法2:



    GENERATE CLOCK: process



    begin



    wait for (ClockPeriod / 2)



    Clock <= '1';



    wait for (ClockPeriod / 2)



    Clock <= '0';



    end process;



    Verilog:



    //聲明時鐘周期常量



    Parameter ClockPeriod = 10;



    //Clock Generation method 1: 時鐘生成方法1



    initial begin



    Clock = 0;



    forever Clock = #(ClockPeriod / 2) ~ Clock;



    end



    //時鐘生成方法2



    always #(ClockPeriod / 2) Clock = ~Clock;







    5.1.2提供激勵信號

    為了獲得Testbench的驗證結果,激勵必須作用於DUT。在Testbench中使用並行激勵模塊提供必要的激勵。激勵的產生可以采用兩個方法: 時間激勵和相對時間激勵。時間激勵依據相對仿真時間開始點的設定延時來執行語句。而相對時間激勵先提供初始值,然後等待一個事件來重新觸發激勵,具體延時是不確定的。根據設計者的需要,兩種方法可以在Testbench中同時使用。





    【例53】時間激勵實例。



    initial begin



    reset = 1;



    load = 0;



    cout_updn = 0;



    #100 reset = 0;



    #20 load = 1;



    #20 count_updn = 1;



    end







    【例54】相對時間激勵實例。



    always @(posedge clock)



    tb_count <= tb_count + 1;







    initial begin



    if(tb_count <= 5)



    begin



    reset = 1;



    load = 0;



    count_updn = 0;



    end



    else



    begin



    reset = 0;



    load = 1;



    count_updn = 1;



    end



    end



    initial begin



    if(count = 1100) begin



    count_updn <= 0;



    $display(“Terminal count Reached,now counting down”);



    end



    end





    Verilog HDL的initial塊與文件中的其他initial塊是同時執行。然而,在每一個initial塊中,事件是按照書寫的順序執行的,這說明在每一個並行塊中的激勵序列從時序仿真時間零點開始。為了代碼有更好的可讀性和更方便的可維護性,應采用多個塊來分割復雜的測試激勵。





    書摘插畫
    插圖
    插圖

    插圖


     
    網友評論  我們期待著您對此商品發表評論
     
    相關商品
    在線留言 商品價格為新臺幣
    關於我們 送貨時間 安全付款 會員登入 加入會員 我的帳戶 網站聯盟
    DVD 連續劇 Copyright © 2024, Digital 了得網 Co., Ltd.
    返回頂部