戰(zhàn)指南)
1. 為什么 Cyclone IV 老工程還要折騰最新版 Quartus先說結(jié)論如果你手上還壓著一堆 Cyclone IV 的板子或者老工程Quartus Prime Lite 25.1 依然是目前最省心的免費(fèi)方案。Lite 版本對 Cyclone IV E、Cyclone IV GX 這些器件的支持一直沒砍而且 25.1 在 Windows 上的安裝器做了不少體驗(yàn)優(yōu)化驅(qū)動簽名、許可獲取這兩塊比早年的 13.0sp1、17.1 版本順暢太多。我自己手頭有一塊跑了七八年的 Cyclone IV E EP4CE6 核心板之前一直掛在 Quartus 13.0sp1 上那個(gè)版本在 Win10 上裝 USB-Blaster 驅(qū)動要手動禁用驅(qū)動簽名每次換電腦都得折騰一遍。這次趁著 25.1 出來把整條鏈路重新走了一遍下載、安裝、驅(qū)動、許可、建工程、編譯、下載到板子。整個(gè)過程實(shí)測下來真正卡人的其實(shí)就兩個(gè)點(diǎn)——USB-Blaster 驅(qū)動和許可文件。把這兩步解決掉剩下的就是常規(guī)操作。這篇內(nèi)容適合三類人看一是剛接觸 FPGA、手里有 Cyclone IV 開發(fā)板的學(xué)生二是需要維護(hù)老工程、被迫在新系統(tǒng)上重裝環(huán)境的工程師三是想從老版本遷移到 25.1、但擔(dān)心兼容性的朋友。我會把每一步的意圖、參數(shù)選擇理由、踩過的坑都講清楚你照著做基本能一次過。提示Quartus Prime Lite 是免費(fèi)版本不需要付費(fèi)許可但需要申請一個(gè)免費(fèi)的許可文件License File這一步很多人會卡住后面會詳細(xì)講。2. 安裝前的準(zhǔn)備工作與版本選擇邏輯2.1 版本、器件與系統(tǒng)三者的匹配關(guān)系很多人一上來就下載安裝器結(jié)果裝完發(fā)現(xiàn)器件庫不全或者系統(tǒng)不兼容。這里先把匹配關(guān)系理清楚。Quartus Prime 目前分三個(gè)檔次Lite、Standard、Pro。Lite 免費(fèi)支持中小規(guī)模器件包括 Cyclone IV、Cyclone V、MAX 10 等Standard 和 Pro 面向大器件和高端器件需要付費(fèi)許可。Cyclone IV 屬于老器件只在 Lite 里支持所以選 Lite 是唯一正確選項(xiàng)。系統(tǒng)方面25.1 官方支持 Windows 10 和 Windows 11 的 64 位版本。我實(shí)測在 Win11 23H2 上跑沒問題。內(nèi)存建議 16GB 起步Cyclone IV 的工程編譯對內(nèi)存要求不算高8GB 也能跑但如果你同時(shí)開 ModelSim 仿真16GB 會舒服很多。硬盤預(yù)留 30GB 以上安裝器本體加上器件庫裝完大概 20GB 出頭。項(xiàng)目建議配置說明操作系統(tǒng)Windows 10/11 64位不支持 32 位系統(tǒng)內(nèi)存16GB 及以上8GB 可跑仿真吃緊硬盤30GB 可用空間含器件庫器件系列Cyclone IV E/GXLite 版本支持許可類型免費(fèi) License官網(wǎng)申請2.2 下載渠道與安裝包組成安裝包從官方渠道獲取通常是一個(gè)幾 GB 的 exe 安裝器。25.1 的安裝器支持在線下載器件庫也就是說你下載的初始安裝器體積不大安裝過程中它會根據(jù)你勾選的器件系列去拉取對應(yīng)的庫文件。這一點(diǎn)和早期版本不同早期版本是分開發(fā)布完整包和單獨(dú)器件包的。這里有個(gè)實(shí)操心得如果你網(wǎng)絡(luò)環(huán)境不穩(wěn)定建議在安裝時(shí)一次性把 Cyclone IV、Cyclone V、MAX 10 都勾上因?yàn)楹罄m(xù)再補(bǔ)裝器件庫要重新走一遍安裝流程比較麻煩。當(dāng)然如果你確定只用 Cyclone IV那只勾 Cyclone IV 系列即可能省幾個(gè) GB 的空間。注意安裝路徑不要帶中文和空格。我見過有人裝在D:\我的軟件\Quartus下面結(jié)果編譯時(shí)報(bào)路徑解析錯(cuò)誤。老老實(shí)實(shí)用D:\intelFPGA_lite\25.1這種純英文路徑。2.3 安裝前的系統(tǒng)清理在裝之前建議先把系統(tǒng)里可能沖突的東西處理掉。如果你之前裝過老版本 Quartus比如 13.0sp1 或 17.1最好先卸載干凈尤其是 USB-Blaster 驅(qū)動殘留的舊驅(qū)動會導(dǎo)致新驅(qū)動裝不上。具體做法打開設(shè)備管理器找到“通用串行總線控制器”下面有沒有帶 Altera 或 Intel 字樣的設(shè)備有的話右鍵卸載勾選“刪除此設(shè)備的驅(qū)動程序軟件”。然后到控制面板卸載舊版 Quartus。做完這一步再開始裝 25.1能避免很多莫名其妙的驅(qū)動沖突。3. 三步走安裝、驅(qū)動、許可的完整實(shí)操3.1 第一步安裝器運(yùn)行與器件庫勾選雙擊安裝器前面幾步是常規(guī)的歡迎界面和許可協(xié)議直接下一步。到了組件選擇界面這里要仔細(xì)看。安裝器會列出幾個(gè)大類Quartus Prime主程序、器件庫Devices、ModelSim仿真、其他工具。主程序必選器件庫按需勾選。Cyclone IV 在器件列表里通常顯示為 “Cyclone IV E/GX/GT”勾上它。這里有個(gè)細(xì)節(jié)25.1 的安裝器把 “USB-Blaster” 驅(qū)動單獨(dú)列出來了默認(rèn)是勾選的別取消。這個(gè)驅(qū)動就是后面下載器識別的關(guān)鍵。安裝過程大概 20 到 40 分鐘取決于硬盤速度和網(wǎng)絡(luò)。裝完之后不要急著啟動 Quartus先把驅(qū)動和許可搞定。3.2 第二步USB-Blaster 驅(qū)動的正確安裝姿勢這是第一個(gè)大坑。很多人裝完 Quartus插上 USB-Blaster 下載器設(shè)備管理器里顯示一個(gè)帶黃色感嘆號的未知設(shè)備Quartus 里也找不到硬件。原因在于Windows 10/11 對驅(qū)動簽名有強(qiáng)制要求而 USB-Blaster 的驅(qū)動雖然 Intel 做了簽名但有時(shí)候系統(tǒng)不會自動匹配。正確做法是手動指定驅(qū)動路徑。操作步驟插上 USB-Blaster 下載器打開設(shè)備管理器。找到帶感嘆號的設(shè)備右鍵“更新驅(qū)動程序”。選擇“瀏覽我的電腦以查找驅(qū)動程序”。路徑指向D:\intelFPGA_lite\25.1\quartus\drivers\usb-blaster根據(jù)你的實(shí)際安裝路徑調(diào)整。勾選“包括子文件夾”下一步系統(tǒng)會安裝驅(qū)動。裝完之后設(shè)備管理器里應(yīng)該出現(xiàn) “Altera USB-Blaster” 字樣沒有感嘆號。這時(shí)候打開 Quartus在 Programmer 里點(diǎn) “Hardware Setup”就能看到 USB-Blaster 了。提示如果手動指定路徑后仍然裝不上試試先把下載器拔掉重啟電腦再插上重新走一遍。我遇到過一次是舊驅(qū)動殘留導(dǎo)致的清理后就好了。另外補(bǔ)充一個(gè)常見情況有些板子用的是 FT232 或 CP2102 做 USB 轉(zhuǎn)串口這兩個(gè)驅(qū)動和 USB-Blaster 是兩碼事。FT232 需要裝 FTDI 官方驅(qū)動CP2102 需要裝 Silicon Labs 的驅(qū)動。如果你板子上既有 JTAG 又有串口兩個(gè)驅(qū)動都要裝。設(shè)備管理器里能區(qū)分USB-Blaster 顯示為 Altera USB-Blaster串口顯示為 USB Serial Port。3.3 第三步免費(fèi)許可文件的申請與配置這是第二個(gè)大坑。Quartus Prime Lite 雖然免費(fèi)但需要申請一個(gè) License 文件才能正常編譯。不裝許可的話編譯到一半會報(bào)錯(cuò)提示找不到有效的許可。申請流程到 Intel 官網(wǎng)的許可申請頁面搜 “Quartus Prime Lite License” 就能找到。填寫基本信息包括你的網(wǎng)卡 MAC 地址。MAC 地址獲取方法命令行輸入ipconfig /all找到當(dāng)前使用的網(wǎng)卡看 “物理地址” 那一行。提交后許可文件會發(fā)到你填的郵箱通常是一個(gè).dat文件。把.dat文件放到一個(gè)固定路徑比如D:\intelFPGA_lite\license\Quartus_Lite.dat。打開 Quartus菜單 Tools - License Setup在 “License file” 一欄填入這個(gè)路徑。配置完成后重啟 Quartus在 License Setup 里應(yīng)該能看到許可狀態(tài)是有效的。這里有個(gè)經(jīng)驗(yàn)MAC 地址一定要填對。如果你有多個(gè)網(wǎng)卡比如有線、無線、虛擬網(wǎng)卡填錯(cuò)了會導(dǎo)致許可無效。最穩(wěn)妥的辦法是只保留一個(gè)活躍網(wǎng)卡或者用ipconfig /all仔細(xì)核對。另外許可文件和 MAC 綁定換電腦或者換網(wǎng)卡需要重新申請。步驟操作關(guān)鍵點(diǎn)申請官網(wǎng)填 MAC 地址核對網(wǎng)卡物理地址存放放到固定英文路徑不要放中文目錄配置Tools - License Setup填入 .dat 文件路徑驗(yàn)證重啟后查看狀態(tài)顯示有效即可4. Cyclone IV 工程實(shí)測從建工程到下載4.1 新建工程與器件選擇驅(qū)動和許可搞定后建一個(gè) Cyclone IV 的工程驗(yàn)證整條鏈路。File - New Project Wizard跟著向?qū)ё?。關(guān)鍵在器件選擇那一步Family 選 “Cyclone IV E”具體型號根據(jù)你的板子選。我手上這塊是 EP4CE6E22C8就選這個(gè)。如果你不確定型號看芯片表面的絲印EP4CE 開頭的那串就是。工程建好后加一個(gè)最簡單的 Verilog 文件比如一個(gè)分頻器或者流水燈用來驗(yàn)證編譯和下載。代碼不用復(fù)雜目的是跑通流程。4.2 編譯與引腳分配編譯之前要先分配引腳。Assignment - Pin Planner把代碼里的端口和實(shí)際芯片引腳對應(yīng)起來。這一步根據(jù)你的板子原理圖來LED 接哪個(gè)引腳、時(shí)鐘接哪個(gè)引腳都要對上。引腳分配完點(diǎn) Processing - Start Compilation。Cyclone IV 的工程編譯很快一個(gè)流水燈大概幾十秒到一兩分鐘。編譯成功后輸出窗口會顯示 “Full Compilation was successful”。注意如果編譯報(bào)錯(cuò)提示找不到器件或者許可問題先回頭檢查 License Setup 里的狀態(tài)。許可沒配好的話編譯會在 Fitter 階段失敗。4.3 下載到板子與硬件驗(yàn)證編譯通過后打開 Programmer。Hardware Setup 里確認(rèn) USB-Blaster 已識別然后 Add File 選擇生成的.sof文件勾選 Program/Configure點(diǎn) Start。如果一切正常進(jìn)度條走完板子上的 LED 應(yīng)該開始按預(yù)期閃爍。到這一步整條鏈路就通了。我實(shí)測下來25.1 對 Cyclone IV 的編譯結(jié)果和 13.0sp1 基本一致時(shí)序報(bào)告也正常。唯一需要注意的是25.1 默認(rèn)的優(yōu)化設(shè)置可能和老版本略有不同如果老工程遷移過來時(shí)序不滿足可以在 Settings - Compiler Settings 里調(diào)整優(yōu)化策略。5. 常見問題排查與避坑經(jīng)驗(yàn)5.1 驅(qū)動類問題速查現(xiàn)象可能原因解決方法設(shè)備管理器黃色感嘆號驅(qū)動未正確安裝手動指定驅(qū)動路徑Quartus 找不到硬件USB-Blaster 未識別檢查設(shè)備管理器重裝驅(qū)動串口無法通信FT232/CP2102 驅(qū)動缺失裝對應(yīng)廠商驅(qū)動驅(qū)動裝完仍無效舊驅(qū)動殘留卸載舊驅(qū)動后重裝5.2 許可類問題速查現(xiàn)象可能原因解決方法編譯報(bào)許可錯(cuò)誤未配置 LicenseTools - License Setup 配置許可無效MAC 地址填錯(cuò)核對網(wǎng)卡物理地址重新申請換電腦后失效許可與 MAC 綁定重新申請?jiān)S可路徑報(bào)錯(cuò)許可文件路徑含中文移到純英文路徑5.3 幾個(gè)容易忽略的細(xì)節(jié)第一個(gè)細(xì)節(jié)安裝路徑和工程路徑都不要帶中文。這個(gè)問題在 Windows 上特別常見中文路徑會導(dǎo)致編譯工具鏈解析失敗報(bào)一些看不懂的錯(cuò)誤。第二個(gè)細(xì)節(jié)USB-Blaster 的驅(qū)動路徑在安裝目錄下的quartus\drivers\usb-blaster不是根目錄。有些人找錯(cuò)路徑自然裝不上。第三個(gè)細(xì)節(jié)許可文件申請時(shí)填的郵箱要能正常收信有些郵箱會把許可郵件當(dāng)垃圾郵件。如果提交后沒收到先翻垃圾箱。第四個(gè)細(xì)節(jié)如果你用的是筆記本注意網(wǎng)卡切換。筆記本同時(shí)有有線和無線網(wǎng)卡MAC 地址不一樣。申請?jiān)S可時(shí)用的是哪個(gè)網(wǎng)卡的 MAC使用時(shí)就保持那個(gè)網(wǎng)卡活躍否則許可會失效。6. 老工程遷移與新版本適配的實(shí)操建議6.1 從 13.0sp1 遷移到 25.1 的注意事項(xiàng)如果你有老工程要遷移直接打開.qpf文件25.1 會提示是否轉(zhuǎn)換。轉(zhuǎn)換過程一般沒問題但有幾個(gè)點(diǎn)要留意。一是引腳分配文件.qsf的格式可能有細(xì)微差異轉(zhuǎn)換后建議打開 Pin Planner 核對一遍引腳。二是時(shí)序約束文件.sdc的語法在新版本里更嚴(yán)格如果有不規(guī)范的寫法可能會報(bào) warning建議逐條檢查。三是編譯優(yōu)化設(shè)置老版本的默認(rèn)設(shè)置和新版本不同遷移后建議重新跑一次時(shí)序分析確認(rèn)滿足要求。6.2 工程目錄結(jié)構(gòu)的整理建議我自己的習(xí)慣是把工程目錄整理成固定的結(jié)構(gòu)src放源碼constraints放 sdc 和 qsfoutput放編譯輸出doc放原理圖和說明。這樣遷移和備份都方便。25.1 對工程目錄的層級沒有特殊要求但保持整潔能省很多事。6.3 備份與版本管理老工程遷移前一定要備份。我一般會把整個(gè)工程目錄復(fù)制一份改個(gè)名字加_backup然后再用新版本打開。這樣萬一轉(zhuǎn)換出問題還能回退到老版本。另外如果你用 Git 管理工程記得把編譯輸出目錄加到.gitignore里那些.sof、.rbf、db目錄下的文件不需要納入版本管理否則倉庫會變得很大。7. 我個(gè)人的幾條實(shí)操體會裝 Quartus 這件事說難不難說簡單也不簡單。真正卡人的從來不是主程序安裝而是驅(qū)動和許可這兩個(gè)“外圍”環(huán)節(jié)。我的建議是先把驅(qū)動和許可搞定再動工程。很多人急著建工程寫代碼結(jié)果編譯報(bào)錯(cuò)、下載找不到硬件回頭再折騰驅(qū)動反而更費(fèi)時(shí)間。另外25.1 相比老版本在 Windows 上的兼容性確實(shí)好了不少USB-Blaster 驅(qū)動基本能做到一次裝好許可申請流程也簡化了。如果你還在用 13.0sp1 那種老版本并且經(jīng)常需要在不同電腦上切換升級到 25.1 是值得的。最后分享一個(gè)小技巧把許可文件、驅(qū)動安裝包、常用器件的引腳定義整理到一個(gè) U 盤或者云盤里換電腦的時(shí)候直接拿來用不用每次重新找。這個(gè)習(xí)慣幫我省了很多重復(fù)勞動。