購物比價找書網找車網
FindBook  
 有 1 項符合

Verilog 硬體描述語言數位電路:設計實務(五版)

的圖書
Verilog硬體描述語言數位電路設計實務 Verilog硬體描述語言數位電路設計實務

出版社:儒林
出版日期:2016-04-09
語言:繁體中文   規格:平裝 / 544頁 / 17 x 23 x 2.5 cm / 普通級/ 單色印刷 / 五版
圖書選購
型式價格供應商所屬目錄
 
$ 561
三民網路書店 三民網路書店
應用科學
圖書介紹 - 資料來源:博客來   評分:
圖書名稱:Verilog 硬體描述語言數位電路:設計實務(五版)

內容簡介

  本書深入淺出地介紹Verilog硬體描述語言的特性,以及電腦輔助設計工具(CAD)。

  Verilog語言是一種一般性的硬體描述語言,它的語法與C語言相似,易學易用。本書是以邏輯合成的方式寫成的,可讓剛開始使用Verilog來 設計數位電路的新手們,用起來很上手。

  本書目的在於藉由學習Verilog語言的過程中去瞭解硬體描述語言的設計概念,進而完成設計數位晶片的最終目標。最新版本中新增UDP,且增強Verilog 2001特色。
 

目錄

軟硬體版權聲明
前言
作者序

第一章 數位電路的設計觀念
1.1    數位系統的實作方法    1-2
1.2    典型的「半訂製」(Semi Customize)IC設計流程    1-9

第二章 Verilog硬體描述語言簡介
2.1    硬體描述語言(Hardware Description Language,HDL)和傳統
    數位電路設計的優缺點比較    2-2
2.2    Verilog硬體描述語言(VHDL)的特性    2-4
2.3    電腦輔助設計工具(CAD)-Xilinx Vivado的介紹    2-4
2.4    Primitive Cell    2-6
2.5    Verilog模組整合與模擬的流程(Synthesis and Simulation Flow)
    -使用Xilinx Vivado    2-9
    2.5.1    Verilog電路描述設計流程使用Xilinx Vivado……………. 2-9
2.6    VHDL電路模擬軟體-ModelSim的介紹    2-37
2.7    VHDL電路設計與模擬的流程(VHDL design in and simulation flow)
    -使用ModelSim    2-39
2.7.1    編譯Verliog電路描述    2-39
2.7.2    VHDL電路的模擬    2-41
2.8    Verilog模組合成與模擬的流程(Synthesis and Simulation Flow)
    -使用Synopsys的Designer Analyzer    2-45

第三章 Verilog的模組與架構
3.1    Verilog的輸出入埠敘述    3-2
3.1.1    Verilog的模組架構    3-2
3.1.2    input(輸入埠)敘述    3-3
3.1.3    output(輸入埠)敘述    3-3
3.1.4    inout(雙向埠)敘述    3-3
3.1.5    輸出入埠的連接規定    3-6
3.2    Verilog資料型態(Data Types)    3-7
3.2.1    四種數值位準(Four Value Level)    3-7
3.2.2    wire(接線)敘述    3-8
3.2.3    wand(Wired-AND型接線)、wor(Wired-OR型接線)敘述     3-9
3.2.4    reg(暫存器)敘述    3-13
3.2.5    選用wire(接線)或reg(暫存器)的敘述的時機    3-14
3.2.6    向量(Vectors)表示法    3-15
3.2.7    陣列(Arrays)表示法    3-15
3.2.8    記憶體(Memory)表示法    3-15
3.2.9    位元選擇(Bit-Selects)與部份選擇(Part-Selects)    3-16
3.3    Verilog的時間控制(Timing Control)    3-17
3.4    Verilog的四大模型(Model)    3-19
3.5    Verilog的模組(Module)    3-22
3.6    Verilog的語法協定    3-26
3.7    階層式設計(Hierarchy Design)的觀念    3-31
3.7.1    由低至高與由高至低的設計方式    3-31
3.7.2    埠對應(Port Mapping)連接的方式    3-33

第四章 能否用於電路合成的Verilog語法
4.1    不能用於電路合成的Verilog語法    4-2
4.1.1    不能用於電路合成的「敘述」    4-2
4.1.2    不能用於電路合成的「運算子」    4-2
4.1.3    不能用於電路合成的「邏輯閘型態」    4-3
4.1.4    其他不能用於電路合成的建構方式    4-6
4.2    能用於電路合成的Verilog語法    4-7
4.2.1    能用於電路合成的「敘述」    4-7
4.2.2    能用於電路合成的「運算子」    4-8
4.2.3    能用於電路合成的「邏輯閘」    4-32
4.2.4    用可以電路合成的「邏輯閘」設計出電路圖(Schematic)    4-34

第五章 Verilog的敘述
5.1    Verilog常用的敘述    5-2
5.2    assign敘述    5-3
5.3    always敘述    5-5
5.4    if敘述    5-7
5.5    if…else…敘述    5-9
5.6    case敘述    5-10
5.7    casex敘述    5-14
5.8    casez敘述    5-17
5.9    if與case這二大類敘述的使用時機    5-22
5.10    for敘述    5-23
5.11    function敘述    5-24
5.12    task敘述    5-28
5.13    function與task敘述的差異    5-30

第六章 Verilog電路設計的基本觀念
6.1    訊號(signal)與變數(variable)    6-2
6.1.1    訊號(signal)    6-3
6.1.2    把數值/運算式指定給訊號(signal)或變數(variable)    6-7
6.1.3    變數(variable)    6-8
6.2    always中的訊號(signal)與變數(variable)    6-9
6.2.1    訊號與變數,範例1    6-10
6.2.2    訊號與變數,範例2    6-12
6.2.3    訊號與變數,範例3    6-15
6.3    使用括弧來描述複雜的電路結構    6-18
6.4    運算元的位用寬度(operator bitwidth)    6-20
6.5    重置(Reset)訊號與預設(Preset)訊號的重要性    6-21

第七章 算術運算
7.1    『數字系統』基本介紹    7-2
7.2    『乘法』的基本觀念    7-4
7.3    『除法』的基本觀念    7-4
7.4    『無號數整數』的運算    7-5
7.4.1    無號數整數的『加法運算』    7-6
7.4.2    無號數整數的『減法運算』    7-6
7.4.3    無號數整數的『乘法運算』    7-8
7.4.4    無號數整數的『除法運算』    7-9
7.4.5    如何計算1.5倍的A、3倍的A呢?    7-10
7.4.6    如何計算A除以9?    7-10
7.4.7    四捨五入的方式    7-11
7.5    『有號數整數』的運算    7-12
7.5.1    有號數整數的『加法運算』    7-12
7.5.2    有號數整數的『減法運算』    7-13
7.5.3    有號數整數的『乘法運算』    7-14
7.5.4    無號數整數的『除法運算』    7-15
7.6    『無號數小數』的運算    7-16
7.6.1    無號數小數的『加法運算』    7-17
7.6.2    無號數小數的『減法運算』    7-18
7.6.3    無號數小數的『乘法運算』    7-18
7.6.4    無號數小數的『除法運算』    7-20
7.7    『有號數小數』的運算    7-21
7.7.1    有號數小數的『加法運算』    7-21
7.7.2    有號數小數的『減法運算』    7-22
7.7.3    有號數小數的『乘法運算』    7-23
7.7.4    有號數小數的『除法運算』    7-25

第八章 組合邏輯電路與簡易的算術邏輯運算
8.1    組合邏輯(Combination Logic)電路    8-2
8.1.1    布林方程式之實作(implementation of Boolean Equation)    8-2
8.1.2    編碼器(Encoder)    8-4
8.1.3    解碼器(Decoder)    8-9
8.1.4    多工器(Multiplexier)    8-12
8.1.5    解多工器(DeMultiplexier)    8-20
8.1.6    比較器(Comparator)    8-29
8.1.7    累加器(Accumulator)    8-31
8.1.8    乘加器(Multipler and Accumulator)    8-32
8.1.9    三態閘(Three State)    8-34
8.1.10    雙向埠(Bidirectional Port,使用inout敘述)    8-36
8.2    簡易的算術邏輯運算單元(ALU)的設計    8-37

第九章 循序邏輯電路
9.1    記憶元件設計    9-2
9.1.1    D型閂鎖(Latch)    9-2
9.1.2    D型正反器(D type Filp-Flop)    9-4
9.1.3    JK型正反器(JK type Filp-Flop)    9-11
9.1.4    T型正反器(T type Filp-Flop)    9-13
9.1.5    暫存器(Register)    9-14
9.2    移位暫存器(Shift Register)    9-20
9.2.1    串進串出(Serial In Serial Out)移位暫存器    9-20
9.2.2    串進並出(Serial In Parallel Out)移位暫存器    9-22
9.2.3    並進串出(Parallel In Serial Out)移位暫存器    9-24
9.2.4    並進並出(Parallel In Parallel Out)移位暫存器    9-25
9.3    計數器電路(Counter)    9-27
9.3.1    上數計數器(Count Up Counter)    9-28
9.3.2    下數計數器(Count Down Counter)    9-28
9.3.3    上數/下數計數器(Up/Down Counter)    9-28
9.4    除頻電路(Frequency Divider)    9-38

第十章 有限狀態機器
10.1    循序電路的基本模式    10-2
10.2    同步(Synchronous)與非同步(Asynchronous)循序電路    10-4
10.3    有限的狀態機器(Finite State Machine,FSMs)的簡介    10-8
10.3.1    有限狀態機的種類    10-8
10.3.2    有限狀態機的表示方式    10-9
10.3.3    完全指定狀態(Completely Specified)與不完全指定狀態(Incompletely Specified)    10-16
10.3.4    有限狀態機的編碼方式(State Assignment或State Encoding)   10-21
10.4    有限狀態機器的設計實例    10-29

第十一章 進階設計概念
11.1    資源共用(Resource Sharing)    11-2
11.2    Verilog的編譯命令(Compiler Directives)    11-5
11.2.1    `include編譯命令    11-5
11.2.2    `define編譯命令    11-6
11.3    易於調整的設計方式(Scalable Design)    11-7
11.3.1    使用defparam敘述去取代(overriding)paramete值    11-8
11.3.2    使用'#'敘述去取代(overriding)parameter值    11-8
11.4    撰寫經濟實用的HDL程式碼之原則    11-9
11.4.1    使用括弧來描述複雜的電路結構    11-9
11.4.2    將「組合指定」敘述和「循序指定」敘述的部份描述區分開來   11-11
11.4.3    善用「常數」(Constant)    11-11
11.4.4    運算元的位用寬度(Operator Bit-Width)    11-15
11.5    除彈跳電路(DeBounce circuit)與單一脈波電路(Mono pulse  circuit)    11-16
11.5.1    用and閘對輸入pulse做分析(DeBounce by and)    11-17
11.5.2    用有限狀態機(FSM)對輸入pulse做分析(DeBounce by FSM)    11-18
11.6    非同步Reset    11-21
11.7    節省電力的基本方法    11-22

第十二章 記憶體設計與應用
12.1    隨機存取記憶體(Random Access Memory,RAM)    12-2
12.2    隨機存取記憶體(RAM)的擴充    12-4
12.2.1    隨機存取記憶體之位元組(Bits)的擴充方式    12-4
12.2.2    隨機存取記憶體之字組(Words)的擴充方式    12-8
12.3    隨機存取記憶體(RAM)的應用    12-12
12.3.1    堆疊(Stack)的運作:使用隨機存取記憶體來模擬    12-13
12.3.2    佇列(Queue)的運作:使用隨機存取記憶體來模擬    12-17
12.4    唯讀記憶體(Read Only Memory,ROM)    12-24
12.5    唯讀記憶體(ROM)的擴充    12-26
12.5.1    唯讀記憶體之位元組(Bits)的擴充方式    12-26
12.5.2    唯讀記憶體之字組(Words)的擴充方式    12-29
12.6    唯讀記憶體(ROM)的應用    12-34
12.6.1    指令唯讀記憶體(Instruction ROM)    12-34
12.6.2    資料唯讀記憶體(Data ROM)    12-35
12.6.3    使用一顆指令ROM與一顆資料ROM來推動特定功能的ALU    12-35

第十三章 Verilog 2001增強特色
13.1    Configuration    13-3
13.2    generate    13-5
13.3    Constant function    13-9
13.4    Indexed vector part select    13-12
13.5    Multi-dimensional Array    13-14
13.6    Array Bit and Part Select    13-16
13.7    Signed Arithmetic Extension    13-18
13.8    Power Operator    13-26
13.9    Re-entrant Task and Recursive Function    13-29
13.10    Comma-separated Sensitivity List    13-30
13.11    Combinational Logic Sensitivity    13-32
13.12    Enhanced File I/O    13-35
13.13    Automatic Width Extension Past 32 bits    13-37
13.14    Default Net with Continuous Assign    13-38
13.15    Disable Default Net Declaration    13-41
13.16    Explicit In-line Parameter Passing    13-43
13.17    Combined Port/Data Type Declaration    13-45
13.18    ANSI-style Port List    13-47
13.19    Reg Declaration With Initialization    13-51
13.20    "Register" Changed To "Variable"    13-52
13.21    Enhanced PLA Modeling    13-52
13.22    Accurate BNF, with Subsection    13-52
13.23    Enhanced Conditional Compilation    13-53
13.24    File and Line Compiler Directive    13-56
13.25    Attribute    13-57
13.26    Standard Random Number Generator    13-60
13.27    Enhanced Invocation Option Test    13-61
13.28    On-detect Pulse Error Propagation    13-64
13.29    Negative Pulse Detection    13-66
13.30    New Timing Constraint Check    13-67
13.31    Negative Timing Constraint    13-67
13.32    Enhanced SDF support    13-68
13.33    Extended VCD File / PLI Enhancement    13-69
13.34    Verilog 2001新增的保留字、運算子、函數、compiler directive 以及token    13-71

第十四章 Verilog的檔案處理與除錯輔助功能
14.1    測試平台(TestBench)    14-2
14.2    Verilo的檔案處理    14-3
14.2.1    $fopen以及 $fclose    14-3
14.2.2    $readmemb以及 $readmemh    14-4
14.2.3    $display、$write、$fdisplay以及 $fwrite    14-7
14.3    Verilog的除錯輔助功能    14-12
14.3.1    $monitor以及 $fmonitor    14-12
14.3.2    $strobe以及 $fstrobe    14-14
14.4    Verilog的時間格式與精確度    14-16
14.4.1    $timeformat    14-16
14.4.2    $printtimescale    14-18
14.4.3    $time、$stime以及 $realtime    14-21
14.5    資料型態轉換    14-22
14.5.1    $realtobits以及 $bitstoreal    14-22
14.5.2    $rtoi以及 $itor    14-23
14.6    Verilog的系統任務    14-24

第十五章 User Defined PrimitiveS
15.1    User Defined PrimitiveS(UDPs)    15-2
15.1.1    UDP的特性    15-2
15.1.2    可用於UDP的邏輯值與Edge Trigger值    15-3
15.1.3    UDP的BNF表示法    15-3
15.2    組合邏輯UDP    15-4
15.3    循序邏輯UDP    15-7

附錄A Verilog的識別字(Keywords)
 

作者序

  Verilog語言是一種一般性的硬體描述語言,它的語法與C語言相似,易學易用,而且能夠允許在同一個模組中有不同層次的表示法共同存在,設計者可以在同一個模組中混合使用:電晶體層次(Transistor Model)、邏輯閘層次模型(Gate Level Model)、暫存器轉移層次(Register Transfer Level),以及行為模型(Behavioral Model)等4種不同層次的表示法來描述所設計的電路。

  有鑒於市面上本介紹Verilog硬體描述語言的書籍,一般都普遍將電路描述的目標放在不同層次的仿真機制,能夠作為仿真的Verilog電路描述並不能代表著就能通過邏輯合成的步驟;也就是說有些Verilog的語法是專門用來作為電路仿真之用的,並不適用於邏輯合成的,因而讓一些剛開始使用Verilog來設計數位電路的新手們感到困惑,也因此釀成了筆者編寫此書的動機。

  本書是教導學習Verilog硬體描述語言的書籍,目的在於藉由學習Veri-log語言的過程中去瞭解硬體描述語言的設計概念,進而完成設計數位晶片的最終目標。筆者是由淺入深地介紹各種電路的設計方式,或是同一種功能的電路但使用不同的語法敘述來設計,並且也有在電路的運作效能及面積等方面作概略性地比較。

  本書使用Verilog硬體描述語言來實作出來,每個電路模組都是電腦輔助設計工具ModelSim之下,完成了模組電路作編譯、合成、仿真以及驗證…等等步驟,所以本書的各個模組都是可以實作得出來的。

  第一章主要是介紹數位電路的設計觀念,其中包括了:數位系統的實作方法,以及典型的「半訂制」(Semi Customize)IC設計流程。

  第二章主要是Verilog硬體描述語言簡介,主要內容包括:硬體描述語言(Hardware Description Language,HDL)和傳統數位電路設計的優缺點比較,Verilog硬體描述語言(VHDL)的特性、電腦輔助設計工具(CAD):Xilinx Vivado的介紹、Primitive Cell的介紹、ModelSim的介紹,以及Verilog模組整合與仿真的流程(Synthesis and Simulation Flow)-使用Xilinx Vivado。

  第三章主要是討論Verilog的模組與架構,主要內容是:Verilog的四大模型(Model)、模組(Module)、語法協定,Verilog的資料型態(Data Types)以及時間控制(Timing Control)方式,還有談到階層式設計(Hie-rarchy Design)的觀念。

  第四章介紹的是Verilog HDL編譯器能否用於電路合成的語法,目的在於:將Verilog的語法分成可以用於電路合成以及不能用於電路合成兩大類,並介紹其中可以用於電路合成的語法之說明,並以一些簡單的範例來作說明它們的使用方法。

  第五章主要是介紹的是Verilog常用的敘述。

  第六章介紹的是Verilog的訊號(signal)與變數(variable)觀念,使用括弧來描述複雜的電路結構,善用「常數」(Constant)、運算元的位用寬度(operator bitwidth)以及重置(Reset)訊號與預設(Preset)訊號的重要性。

  第七章介紹算術運算,包括:數字系統,二進位數值系統(Binary Num-bering System)中『無號數整數』、『有號數整數』、『無號數小數』和『有號數小數』的優缺點、可以表示的資料範圍,以及相對應的四則運算:『加法』、『減法』、『乘法』以及『除法』運算。

  第八章的內容則是將數位電路中的組合(Combination Logic)邏輯電路,從最簡單的布林方程式之實作(Implementation of Boolean Equa-tion)、編碼器、解碼器,到簡易的算術邏輯運算單元(ALU)的設計…等等。

  第九章的內容則是將數位電路中的循序邏輯電路,像是:存儲元件、移位元暫存器(Shift Register)、計數器電路(Counter)、除頻電路…等等。

  第十章的內容則是將數位電路中的有限狀態機器與簡易的CPU設計,例如:同步(Synchronous)與非同步(Asynchronous)循序電路、完全指定狀態(Completely Specified)與不完全指定狀態(Incompletely Speci-fied),以及三個特殊的控制電路…等等。

  第十一章是記憶體設計與應用,包括:基本的隨機存取記憶體設計、隨機存取記憶體的擴充方式設計、基本的唯讀記憶體設計、唯讀記憶體的擴充方式設計、唯讀記憶體的應用,以及用RAM來設計快取記憶體電路。

  第十二章是屬於進階課程,內容主要是將一些設計較大型的電路系統時,可以應用什麼樣的方式幫助我們讓硬體描述語言容易修改、調整,以及可以讓電路在效能或者是面積上可以得到較佳的設計。

  第十三章的內容是Verilog 2001增強特色,還有Verilog 2001新增的保留字、運算子、函數、compiler directive以及token。

  第十四章的內容是Verilog的檔案處理與除錯輔助功能。

  第十五章的內容是用來建立用於Verilog電路模擬的User Defined PrimitiveS(UDPs)。

  花了很大的心思及時間著手編寫這本書,除了當成自己手邊的參考書籍以外,更希望大家能夠馳騁於Verilog硬體描述語言的世界裡,設計出更多實用的晶片來。

  本書於編寫期間承蒙前中華大學資訊工程系所劉淳燁副教授的指導,另外也要感謝Synopsys的使用者參考手冊(HDL Compiler for Verilog Re-ference Manual)、行政院科學委員會‧國科會晶片設計製作中心(CIC,Chip Implementation Center)的訓練課程教學講義作為參考資料,以及3支由Synplicity公司設計的控制電路程式(程式碼前有註明Copyright (c) 1995 by Synplicity, Inc. You may distribute freely, as long as this header remains attached.),經由筆者修改後完成的有限狀態機範例,使得本書之編寫得以順利完成。

  本書幾經校對、更正與增修,如有任何疏漏與錯誤,請各位先進與前輩們給予指正,筆者由衷地感謝。

鄭信源
於新北市 2016.4.2
 

詳細資料

  • ISBN:9789574999804
  • 規格:平裝 / 544頁 / 17 x 23 x 2.5 cm / 普通級 / 單色印刷 / 五版
  • 出版地:台灣
贊助商廣告
 
金石堂 - 今日66折
周姚萍的小作家書房1:是誰惡作劇
作者:周姚萍
出版社:五南圖書出版股份有限公司
出版日期:2020-10-28
66折: $ 165 
金石堂 - 今日66折
艾菲爾鐵塔到底能縮多小:一部知識豐富、熱情洋溢的人類微縮文化史╳模型博物誌
作者:賽門.加菲爾
出版社:木馬文化事業有限公司
出版日期:2020-07-08
66折: $ 251 
博客來 - 今日66折
超人氣小雞幸福大書包:小雞逛超市+小雞逛遊樂園+小雞過生日+小雞過耶誕節+小雞去露營+小雞到外婆家
作者:工藤紀子 (Noriko Kudo)
出版社:小魯文化
出版日期:2021-11-10
66折: $ 1267 
 
金石堂 - 暢銷排行榜
神樂鉢 (首刷限定版) 03
作者:外薗健
出版社:東立出版社
出版日期:2024-11-04
$ 131 
金石堂 - 暢銷排行榜
素食者【亞洲首部榮獲國際曼布克獎作品】
作者:韓江
出版社:漫遊者
出版日期:2023-05-08
$ 300 
博客來 - 暢銷排行榜
學霸作文:建中臺大高材生,教你學測國寫拿A+
作者:詹佳鑫
出版社:遠流
出版日期:2024-09-27
$ 316 
Taaze 讀冊生活 - 暢銷排行榜
被討厭的勇氣:自我啟發之父「阿德勒」的教導
作者:岸見一郎、古賀史健
出版社:究竟出版
出版日期:2014-10-30
$ 237 
 
金石堂 - 新書排行榜
RIDE ON!放浪車床族(全)
作者:水平線
出版社:台灣角川股份有限公司
出版日期:2024-11-07
$ 111 
博客來 - 新書排行榜
穿越故宮大冒險10:掐絲琺瑯寶盒青龍劫(全臺限量作者簽名版)
出版日期:2024-11-07
$ 252 
金石堂 - 新書排行榜
艷事染惑
作者:越山弱衰
出版社:未來數位有限公司
出版日期:2024-11-13
$ 237 
 

©2024 FindBook.com.tw -  購物比價  找書網  找車網  服務條款  隱私權政策