轉瞬即逝:
目錄 第1章可編程邏輯設計指導原則1 1.1可編程邏輯基本設計原則1 1.1.1面積和速度的平衡與互換原則1 1.1.2硬件原則11 1.1.3系統原則13 1.1.4同步設計原則17 1.2可編程邏輯常用設計思想與技巧19 1.2.1乒乓操作19 1.2.2串并轉換21 1.2.3流水線操作22 1.2.4異步時鐘域數據同步23 1.3Altera推薦的CodingStyle27 1.3.1CodingStyle的含義27 1.3.2結構層次化編碼(HierarchicalCoding)27 1.3.3模塊劃分的技巧(DesignPartitioning)29 1.3.4組合邏輯的注意事項30 1.3.5時鐘設計的注意事項33 1.3.6全局異步復位資源39 1.3.7判斷比較語句case和if...else的優先級39 1.3.8使用Pipelining技術優化時序40 .1.3.9模塊復用與ResourceSharing40 1.3.10邏輯復制42 1.3.11香農擴展運算44 1.3.12信號敏感表46 1.3.13狀態機設計的一般原則47 1.3.14AlteraMegafunction資源的使用49 1.3.15三態信號的設計49 1.3.16加法樹的設計50 1.4小結52 1.5問題與思考52 第2章Altera器件高級特性與應用53 2.1時鐘管理53 2.1.1時序問題53 2.1.2鎖相環應用60 2.2片內存儲器69 2.2.1RAM的普通用法69 2.2.2RAM用做移位寄存器73 2.2.3RAM實現固定系數乘法74 2.3數字信號處理75 2.3.1DSP塊資源75 2.3.2工具支持79 2.3.3典型應用79 2.4片外高速存儲器80 2.4.1存儲器簡介80 2.4.2ZBTSRAM接口設計83 2.4.3DDRSDRAM接口設計85 2.4.4QDRSRAM接口設計99 2.4.5DDR2、QDRII和RLDRAMII100 2.4.6軟件支持和應用實例100 2.5高速差分接口和DPA102 2.5.1高速差分接口的需求102 2.5.2器件的專用資源102 2.5.3動態相位調整電路(DPA)109 2.5.4軟件支持和應用實例112 2.6高速串行收發器115 2.7小結117 2.8問題與思考117 第3章LogicLock設計方法119 3.1LogicLock設計方法簡介119 3.1.1LogicLock設計方法的目標120 3.1.2LogicLock設計流程122 3.1.3LogicLock設計方法支持的器件族122 3.2LogicLock區域122 3.2.1Region的類型與常用屬性值123 3.2.2Region的創建方法124 3.2.3Region的層次結構129 3.2.4指定Region的邏輯內容130 3.3LogicLock的約束注意事項132 3.3.1約束優先級132 3.3.2規劃LogicLock區域133 3.3.3向LogicLock區域中布置器件特性133 3.3.4虛擬引腳(VirtualPins)134 3.4反標注布線信息135 3.4.1導出反標注布線信息136 3.4.2導入反標注布線信息138 3.5LogicLock設計方法支持的TclScripts138 3.6QuartusII基于模塊化的設計流程139 3.7小結149 3.8問題與思考149 第4章時序約束與時序分析151 4.1時序約束與時序分析基礎151 4.1.1周期與最高頻率152 4.1.2利用QuartusII工具分析設計154 4.1.3時鐘建立時間157 4.1.4時鐘保持時間158 4.1.5時鐘輸出延時158 4.1.6引腳到引腳的延遲159 4.1.7Slack159 4.1.8時鐘偏斜160 4.1.9QuartusII時序分析工具和優化向導160 4.2設置時序約束的常用方法161 4.2.1指定全局時序約束162 4.2.2指定個別時鐘約束166 4.3高級時序分析174 4.3.1時鐘偏斜174 4.3.2多時鐘域176 4.3.3多周期約束176 4.3.4偽路徑183 4.3.5修正保持時間違例185 4.3.6異步時鐘域時序分析186 4.4最小化時序分析187 4.5使用Tcl工具進行高級時序分析188 4.6小結189 4.7問題與思考189 第5章設計優化191 5.1解讀設計191 5.1.1內部時鐘域192 5.1.2多周期路徑和偽路徑193 5.1.3I/O接口的時序要求194 5.1.4平衡資源的使用194 5.2設計優化的基本流程和首次編譯195 5.2.1設計優化基本流程195 5.2.2首次編譯的約束和設置196 5.2.3查看編譯報告198 5.3資源利用優化200 5.3.1設計代碼優化201 5.3.2資源重新分配201 5.3.3解決互連資源緊張的問題203 5.3.4邏輯綜合面積優化203 5.3.5網表面積優化207 5.3.6寄存器打包209 5.3.7QuartusII中的資源優化顧問211 5.4I/O時序優化211 5.4.1執行時序驅動的編譯211 5.4.2使用IOE中的觸發器212 5.4.3可編程輸入輸出延時215 5.4.4使用鎖相環對時鐘移相217 5.4.5其他I/O時序優化方法218 5.5最高時鐘頻率優化219 5.5.1設計代碼優化219 5.5.2邏輯綜合速度優化225 5.5.3布局布線器設置227 5.5.4網表優化和物理綜合228 5.5.5使用LogicLock對局部進行優化233 5.5.6位置約束、手動布局和反標注234 5.5.7QuartusII中的時序優化顧問235 5.6使用DSE工具優化設計236 5.6.1為什么需要DSE236 5.6.2什么是DSE,如何使用236 5.7如何減少編譯時間238 5.8設計優化實例239 5.9小結242 5.10問題與思考243 第6章Altera其他高級工具245 6.1命令行與Tcl腳本245 6.1.1命令行腳本246 6.1.2Tcl腳本250 6.1.3使用命令行和Tcl腳本254 6.2HardCopy流程255 6.2.1結構化ASIC255 6.2.2HardCopy器件258 6.2.3HardCopy設計流程260 6.3基于NiosII處理器的嵌入式系統設計263 6.3.1NiosII處理器系統263 6.3.2Avalon交換結構266 6.3.3使用SOPCBuilder構建系統硬件269 6.3.4NiosIIIDE集成開發環境272 6.3.5NiosII系統典型應用278 6.4DSPBuilder工具281 6.4.1DSPBuilder設計流程281 6.4.2與SOPCBuilder一起構建系統284 6.5小結285 6.6問題與思考285 第7章FPGA系統級設計技術287 7.1信號完整性及常用I/O電平標準287 7.1.1信號完整性287 7.1.2單端標準292 7.1.3差分標準296 7.1.4偽差分標準299 7.1.5片上終端電阻299 7.2電源完整性設計300 7.2.1電源完整性300 7.2.2同步翻轉噪聲301 7.2.3非理想回路304 7.2.4低阻抗電源分配系統307 7.3功耗分析和熱設計311 7.3.1功耗的挑戰311 7.3.2FPGA的功耗311 7.3.3熱設計313 7.4SERDES與高速系統設計315 7.4.1SERDES的基本概念316 7.4.2AlteraStratixGX和StratixII中SERDES的基本結構319 7.4.3典型高速系統應用框圖舉例324 7.4.4高速PCB設計注意事項329 7.5小結331 7.6問題與思考331