TOP
0
0
【簡體曬書區】 單本79折,5本7折,活動好評延長至5/31,趕緊把握這一波!
Vivado/Tcl零基礎入門與案例實戰(簡體書)
滿額折

Vivado/Tcl零基礎入門與案例實戰(簡體書)

人民幣定價:79 元
定  價:NT$ 474 元
優惠價:87412
領券後再享88折
海外經銷商無庫存,到貨日平均30天至45天
可得紅利積點:12 點
相關商品
商品簡介
作者簡介
名人/編輯推薦
目次

商品簡介

本書既是一本有關Tcl語言編程的書籍,又是一本對在Vivado中應用Tcl的實踐經驗總結的書籍。全書分為兩部分:第一部分為基礎部分,以Tcl基礎知識為主,包括第1~9章,重在理論;第二部分為應用部分,以Tcl在Vivado中的應用為主,包括第10~14章,重在實踐。同時,本書給出了354個Tcl腳本的代碼示例,結合49個表格、171張圖片幫助讀者深入理解知識點。無論Tcl初學者,還是已掌握Tcl精髓的工程師,只要想將Tcl得心應手地應用於Vivado設計與開發,都會從本書中受益。本書可供電子工程領域內的本科高年級學生和研究生參考,也可供FPGA工程師和自學者參考。

作者簡介

高亞軍,電路與系統專業碩士,FPGA技術分享者,設計優化、時序收斂專家,Vivado工具使用專家,Xilinx資深戰略應用工程師。多年來使用Xilinx FPGA實現數字信號處理算法,對Xilinx FPGA器件架構、開發工具Vivado/Vitis HLS/System Generator有著深厚的理論基礎和實戰經驗。主要著作:2011年出版圖書《基於FPGA的數字信號處理》2012年發布網絡視頻課程:Vivado入門與提高2015年出版圖書《基於FPGA的數字信號處理(第2版)》2016年出版圖書《Vivado從此開始》2016年發布網絡視頻課程:跟Xilinx SAE學HLS2020年出版圖書《Vivado從此開始(進階篇)》自2018年創建FPGA技術分享公眾號:TeacherGaoFPGAHub後,每周更新兩篇原創文章,累計發表原創文章280余篇,獲得大量粉絲的認可和贊譽。

名人/編輯推薦

內容翔實全面:既有Tcl編程知識,又有Vivado應用案例

講解深入淺出:結合大量案例,幫助讀者加強對基本概念的理解

描述圖文並茂:給出具體操作步驟,易於快速動手實踐


盡管Tcl腳本自20世紀80年代初誕生以來已有30多年的歷史了,但仍然經久不衰,在IC領域被廣泛使用,很多EDA工具都將其集成其中。Vivado也不例外,在2012年正式發布時,我們就看到了Tcl的身影。這使得Vivado如虎添翼,功能愈發強大。能在圖形界面下執行的操作幾乎都有相應的Tcl命令。反過來,很多操作只能借助Tcl腳本完成而無法在圖形界面下操作。借助Tcl腳本,工程師可以對設計進行深入分析,及時發現更深層次的問題。不得不說,Tcl儼然成為設計分析的利器。

遺憾的是,目前市面上鮮有Tcl方面的學習書籍,網絡上的各種學習資源魚目混珠、良莠不齊,且只注重語法或單一的常規命令,沒有與Vivado結合起來講解工程應用。在工作中,我遇到過很多FPGA工程師,他們迫切希望掌握這一利器,卻因找不到合適的學習資源而深感無奈,或者已掌握Tcl基本語法知識,了解了一些基本命令,但卻因不知在Vivado中如何應用而束手無策。這一現狀深深地觸動了我,促使我決定寫一本與Tcl、Vivado都緊密相關的書。

早在Xilinx前一代開發工具ISE中出現Tcl時,我就開始關注Tcl,而當Vivado正式發布時,我就決定深入學習Tcl。隨著時間的流逝,一晃8年過去了,可以不夸張地說,Tcl幾乎成為我每天工作中必用的語言之一。借助Tcl腳本,我可以實現從設計輸入到生成位流文件的全流程操作,不僅可以對網表進行編輯和深入分析,還可以掃描布局布線策略並生成相關報告。但Tcl能做的還遠不止這些。讓我感受最深的是我可以並行工作,例如掃描策略時,可以同時分析設計的其他網表文件,從而大大提高了工作效率。

同時,我開發了基於Tcl腳本的Vivado自動化策略掃描,並開發了基於Tcl腳本的自動化設計分析。這兩個腳本被很多工程師使用,廣受好評。工程師普遍認為這些腳本可以極大地縮短設計迭代和分析時間,有效提高工作效率,減輕壓力和負擔。我相信通過本書的學習,讀者也可以開發出自己想要的帶有特定功能的Tcl腳本。

2020年初,我開始著手撰寫本書,在內容安排上,要求既包含Tcl相關知識,又包含如何在Vivado中使用Tcl。首先,本書是一本與編程語言相關的書籍,少不了大量的代碼,為此,在代碼排版上花費了一些工夫,保證讀者能夠體會到代碼的美感;其次,本書又不是一本單純講解編程的書籍,重點是工程應用,我結合自己的工程實踐總結出了大量的常規應用,並分門別類地加以講解。讀者要掌握Tcl腳本並將其應用在Vivado工程中,仍需大量的實踐。希望本書能起到拋磚引玉的功效。

與很多EDA工具一樣,Vivado將Tcl集成其中後,極大地豐富並增強了Vivado的功能。因此,若想把Vivado用好,掌握Tcl勢在必行。著眼於此,本書分為兩部分:第一部分為基礎部分,以Tcl基礎知識為主;第二部分為應用部分,以Tcl在Vivado中的應用為主。

就第一部分而言,涵蓋了Tcl的三類置換(包括變量置換、命令置換和反斜槓置換)、表達式和數學運算、經典數據類型(包括字符串、列表和數組)、流程控制命令、過程、命名空間及文件操作等,分布在第1~9章,盡可能地涵蓋常見命令,並給出具體代碼示例,講解使用方法。

就第二部分而言,涵蓋了Tcl在Vivado中的典型應用,包括設計流程管理、設計資源管理、設計分析,並給出了具體的應用案例,例如,如何通過Tcl腳本實現從設計輸入到生成位流文件的自動化操作;如何借助Tcl腳本實現策略掃描;如何應用Tcl腳本發現設計的潛在問題。這些內容分布在第10~13章。同時,我結合工作實踐,給出了Tcl在Vivado中的其他應用,並在第14章中進行了詳細闡述。


如何閱讀本書


對於只想學習Tcl腳本的初學者而言,可以只閱讀第一部分內容,也就是第1~9章。對於已掌握Tcl基礎知識,並想進一步了解如何在Vivado中應用Tcl的讀者而言,可越過第一部分,直接閱讀第二部分內容,也就是第10~14章。本書給出了豐富的代碼示例。每個示例都有行號標記,便於快速找到書中提到的位置。第1行為文件名,讀者可根據需要找到相應的文件直接使用或二次編輯相應腳本。以“=>”開頭的行表示該行為上一行命令的返回值,並且該行以斜體字表示。若在“=>”後緊跟“@”,則表示上一行命令的使用不合法,該行為相應的錯誤信息。由於本書是一本偏向應用的書籍,故文中的變量與實際代碼一致,不再區分正斜體。

本書所有代碼均在Vivado 2020.1版本中驗證。讀者不需下載安裝其他Tcl編譯器,可直接使用Vivado Tcl Shell或在Vivado Tcl Console中使用Tcl。


獲取代碼示例


如果需要獲取代碼示例,關注我的微信公眾號TeacherGaoFPGAHub,回復關鍵字“Tcl”(沒有引號)即可。

Tcl/Vivado已經成為一個整體,Vivado因Tcl而熠熠生輝,Tcl因Vivado而歷久彌新。願此書能幫助廣大FPGA工程師順利踏上征服Tcl的旅程!


高亞軍

2020年12月27日


目次

第1部分 基 礎 部 分
第1章 Tcl基礎知識 2
1.1 什麼是Tcl 2
1.2 Tcl腳本的構成 3
1.3 變量賦值 4
1.4 變量置換 6
1.5 命令置換 10
1.6 反斜線置換 11
1.7 深入理解Tcl中的置換 12
1.8 雙引號與花括號 13
1.9 注釋與續行 15
1.10 本章小結 18
第2章 表達式 19
2.1 表達式的構成要素 19
2.2 算術操作符 20
2.3 關係操作符 21
2.4 邏輯操作符 22
2.5 按位操作符 23
2.6 選擇操作符 24
2.7 數學函數 25
2.8 字符串操作 28
2.9 本章小結 29
第3章 字符串 30
3.1 字符串的表示 30
3.2 字符串的類型 31
3.3 字符串的長度與索引 32
3.4 字符的獲取 33
3.5 字符串的添加 34
3.6 字符的刪除 34
3.7 字符的替換 35
3.8 字符串的比較 36
3.9 字符串的簡單搜索 37
3.10 字符串的匹配 38
3.11 格式化輸出 40
3.12 與字符串相關的其他命令 44
3.13 本章小結 45
第4章 列表 47
4.1 創建列表 47
4.2 列表長度與列表索引 49
4.3 獲取列表元素 52
4.4 添加列表元素 54
4.5 刪除列表元素 56
4.6 替換列表元素 57
4.7 搜索列表元素 58
4.8 對列表元素排序 61
4.9 字符串和列表之間的轉換 62
4.10 in和ni操作符 63
4.11 foreach命令 65
4.12 本章小結 68
第5章 數組 69
5.1 創建數組 69
5.2 獲取數組中的元素 70
5.3 刪除數組中的元素 72
5.4 數組與列表之間的轉換 73
5.5 二維數組 74
5.6 本章小結 75
第6章 流程控制 76
6.1 if命令 76
6.2 switch命令 79
6.3 while命令 83
6.4 for命令 85
6.5 source命令 87
6.6 本章小結 88
第7章 過程 89
7.1 過程的構成 89
7.2 過程的參數名列表 90
7.3 過程的返回值 93
7.4 局部變量與全局變量 96
7.5 模擬引用 98
7.6 數組用作參數或返回值 99
7.7 upvar命令 102
7.8 本章小結 106
第8章 命名空間 107
8.1 創建命名空間 107
8.2 創建命名空間變量 111
8.3 命名空間變量的作用域 112
8.4 訪問命名空間變量 114
8.5 從命名空間導入和導出命令 116
8.6 創建集合命令 118
8.7 本章小結 119
第9章 訪問文件 120
9.1 操縱文件名和目錄名 120
9.2 當前工作目錄和目錄內容 121
9.3 處理磁盤上的文件 123
9.4 獲取文件信息 125
9.5 讀文件 127
9.6 寫文件 129
9.7 處理CSV文件 130
9.8 本章小結 134
第2部分 應用部分
第10章 Vivado設計流程管理 138
10.1 Vivado對Tcl的支持 138
10.2 理解Vivado的設計流程 141
10.3 理解Vivado的兩種工作模式 146
10.4 Project模式 147
10.5 Non-Project模式 154
10.6 掃描策略 164
10.7 本章小結 169
第11章 Vivado設計資源管理 170
11.1 管理資源要素 170
11.2 管理HDL代碼文件 171
11.3 管理約束文件 176
11.4 管理IP文件 179
11.5 本章小結 183
第12章 Vivado設計分析 184
12.1 FPGA芯片架構中的物件 184
12.2 網表中的物件 192
12.3 時鐘分析 204
12.4 時序分析 206
12.5 質量分析 212
12.6 資源利用率分析 221
12.7 邏輯級數分析 222
12.8 複雜度與擁塞分析 224
12.9 扇出分析 226
12.10 UFDM分析 229
12.11 跨時鐘域路徑分析 230
12.12 約束分析 232
12.13 本章小結 235
第13章 Vivado設計復用 236
13.1 增量編譯 236
13.2 復用關鍵寄存器位置信息 240
13.3 復用Block的位置信息 242
13.4 復用關鍵路徑的布局布線信息 245
13.5 本章小結 248
第14章 其他 249
14.1 模塊化綜合技術 249
14.2 反復執行物理優化 251
14.3 合理使用過約束 253
14.4 使用IOB寄存器 255
14.5 編輯網表 256
14.6 修改初始值 258
14.7 本章小結 260

您曾經瀏覽過的商品

購物須知

大陸出版品因裝訂品質及貨運條件與台灣出版品落差甚大,除封面破損、內頁脫落等較嚴重的狀態,其餘商品將正常出貨。

特別提醒:部分書籍附贈之內容(如音頻mp3或影片dvd等)已無實體光碟提供,需以QR CODE 連結至當地網站註冊“並通過驗證程序”,方可下載使用。

無現貨庫存之簡體書,將向海外調貨:
海外有庫存之書籍,等候約45個工作天;
海外無庫存之書籍,平均作業時間約60個工作天,然不保證確定可調到貨,尚請見諒。

為了保護您的權益,「三民網路書店」提供會員七日商品鑑賞期(收到商品為起始日)。

若要辦理退貨,請在商品鑑賞期內寄回,且商品必須是全新狀態與完整包裝(商品、附件、發票、隨貨贈品等)否則恕不接受退貨。

優惠價:87 412
海外經銷商無庫存,到貨日平均30天至45天

暢銷榜

客服中心

收藏

會員專區