SI,PI課程
EMC課程
站長早期CAD課程
Home > QuartusII教學 > QuartusII教學
可程式邏輯元件(Programmable Logic Device, PLD),是指一種可讓使用者組成邏輯功能的數位積體電路,這跟過去的TTL /CMOS標準晶片只能提供固定電路功能大不同,其可協助邏輯IC設計與驗證,有效縮短產品開發時間;FPGA(Field Programmable Gate Array)、CPLDs (Complex Programmable Logic Devices)即是大規模的PLD。在內部聯結方式上可分為連續式連結(continuous interconnect),及片段式聯結(segment interconnect)。
PLD、FPGA、CPLD有何不同?
-- 學術上較正式的說法是:CPLD是由PLA (AND/OR array) block所組成,而FPGA是以Logic block組成,需要外部download RAM,且FPGA容量比CPLD大許多
-- 維基百科對FPGA、CPLD的解釋
2.1 Altera Device
早期Altera稱呼其所有的可程式邏輯元件為CPLDs,並採用連續式之聯結方式以提供可預測之邏輯延遲時間、更快的操作速度及晶片效益。APEXTM 20K(Advanced Programmable Element MatriX)系列,同時結合了FLEXTM系列Look-Up Table logic、MAXTM系列Product-Term logic的優點,並且內含Embedded memory,即所謂MultiCore Architecture,硬體架構完全不同以往,因此必需搭配新的軟體QuartusTM使用。(MAX+PlusII只能支援FLEX、MAX device)
目前Altera官網只有Stratix、Cyclone(FPGA)、MAX(CPLD)、HardCopy(ASIC)的訊息,拿掉了APEX與FLEX:Altera Device Overview。(但QuartusII內的Device選項還是有APEX、FLEX)
High-End FPGA:StratixIV、StratixIII、StratixII、Stratix
Midrange FPGA:Arria
Low-Cost FPGA:CycloneIII、CycloneII、Cyclone
Low-Cost CPLD:MAXII、MAX
HardCopy ASIC:HardCopyIV、HardCopyIII、HardCopyII、HardCopy
MAX、MAXII,後者多了8Kbit On-chip Flash memory,並且是TSMC 0.18um製程,比MAX low-power
從Stratix、StratixII、StratixIII到最新的StratixIV,FPGA容量分別是79K、179K、338K、681K (LEs),呈等比級數增加。Altera還特別把StratixIV與對手Xilinx的Virtex-5做個比較,結論是35 percent higher performance、50 percent lower power,真是有夠嗆的。單就FPGA容量來看,StratixIII與Virtex-5同樣是330K(前者稱logic elements,後者稱logic cells)。
LEs (Logic Elements)與實際設計gate-count的換算,沒有精確的公式,但使用經驗上,LEs大約是gate-count數的1/5。以StratixIII EP3SL200 (199K LEs)為例,大約可實現100萬 gate-count的設計。
ref. Why did Altera stop providing equivalent gate counts for its APEXII and newer devices?2.1.1 Basic Building Block of Logic
MAX、Cyclone系列device的邏輯基本單元是Logic Element (LE),以Look-Up Table (LUT)為基礎。Stratix系列device的邏輯基本單元是Adaptive Logic Module (ALM),對於有組合邏輯的設計有較好的performance。
2.1.2 命名原則
Device型號最尾端的數字,表示LEs數目;StratixII EP2S180=179K LEs、StratixIII EP3SL340=338K LEs
-- 2S表示StratixII、3S表示StratixIII,3C表示CycloneIII,M表示MAX或MAXII
-- L表示balance logic, memory, and multiplier,E表示Enhanced more memory and multipliers- 字尾有加GX的,表示with clock data recovery、multigigabit transceiver;如StratixII GX、StratixIII GX
2.2 Altera Software -- QuartusII
QuartusII 與 MAX+PlusII 都是Altera專為其產品(hardware device),所提供的EDA Tool。它可以執行HDL的編輯(Editor and syntax check) -->模擬(Simulator) -->合成(Synthesis) -->FPGA佈局 -->Netlist download to CPLD / FPGA。
由於QuartusII (MAX+PlusII) 的simulator只能接受自己所編輯的waveform作為觸發輸入(test pattern),而不能接受一般HDL所撰寫的test-bench,所以筆者通常不用QuartusII的simulator來做模擬,而用ModelSim或Verilog-XL。此外,QuartusII的合成器對於一些HDL的語法也不支援,所以建議用Synopsys Design-Analyzer合成完所產生的gate_level.v或是.edf (netlist file),作為QuartusII的輸入,只由QuartusII執行 "FPGA佈局 -->Netlist download to CPLD / FPGA" 這部份的工作就好。
Quartus不支援的合成語法:二維(含)以上的陣列memory宣告 ...一開始Quartus ~ QuartusII 1.0只能支援APEX系列,而不支援FLEX、MAX系列(需用MAX+PlusII軟體);與MAX+PlusII相較,Quartus在做繞線最佳化與時間分析,功能較強。QuartusII在Compiler時間比Quartus提升25~40%,fmax則好約20%。
截至2008.11為止,最新的版本為QuartusII 8.1,且官網建議MAX+PlusII只用來維護舊有產品。
可以網路下載QuartusII Web Edition,而QuartusII Web Edition與QuartusII Subscription Edition Software的比較請參閱此處。
本文主要針對QuartusII 8.0 的使用做介紹,也可善用"Help \ Tutorial \ "官方所提供的互動式影音教學(Interactive Tutorial)。
Design Partitions
4.2 Constraint Entry
Assignment Editor -- node and entity-level setting
Optimization -- logic options and netlist optimization options (global setting in )
4.3 Planner
Chip Planner -- check place & route and do ECO (Engineer Change Order)
Design Partition Planner
4.4 Viewer
RTL Viewer -- 用來看階層關係,決定怎麼partition
State Machine Viewer
Technology Map Viewer -- check synthesis and netlist,用來trace critical timing path
4.5 Debug Tool
SignalTap II -- 以incremental compilation避免影響原本的P&R, 不需要邏輯分析儀(LA)
SignalProbe -- incremental routing, 不改變已有的P&R, 但需要邏輯分析儀
Logic Analyzer Interface --
4.6 MegaWizard Plug-In Manager
-
QuartusII 官方使用手冊(英)(簡)(繁)
Introduction to Quartus II Manual (ver 10.0)
Introduction to Quartus II (Simplified Chinese) (ver 6.0)
Introduction to Quartus II (Traditional Chinese) (ver 6.0)
QuartusII Handbook (ver 8.1, 2008)
分享使用心得是希望能讓更多兩岸從事IC設計的工程師或使用Altera做研究的學生,在初次接觸這套軟體時,儘快熟悉。真正的know-how是無法寫成文件的,那是一種靈活運用的能力與其中內涵的創新特質,故我相信與其擔心分享技術經驗會樹立競爭對手,不如把心力放在持續不斷的前進。現在不是單打獨鬥或是強調英雄主義的時代,唯有以宏觀的視野與胸襟,才有機會創造更大的成就規模。