close

【PC】老主機板 Z77 支援 NVMe SSD

自從 SSD 這玩意被發明出來之後,使用過的人只有一句話:「回不去了」,是大幅優化電腦體驗的首選。我的黑蘋果二號電腦也在組建後不久,開始全面改用 SSD 。然而 SSD 以替代傳統機械硬碟為目標,所以最初使用傳統硬碟的 SATA 匯流排介面,這麼做的好處是用戶只需替換原來的 SATA 機械硬碟即可,但壞處是傳輸速度一下子就頂到 SATA 的肺,也就是實際上 SATA 3 每秒最高約 550 MB 的資料速率。為了突破這個限制,市面上開始有 PCIe 介面的 SSD 產品,但印象中價格也相當驚人,一般庶民根本就買不起。

當時為了想突破 SATA 資料速率瓶頸,我另外購入 HighPoint Rocket 644L 磁碟陣列卡(文章),以搭建兩顆 SATA SSD 作 RAID 0 陣列為方案,可惜實際使用時最高速度也只來到每秒 660/600 MB,並未達到兩倍的理想值,據說和這張 RAID 卡使用的 Marvell 88SE92xx 晶片等級太低有關,也這樣用了很多年。

過了一段時間,市場上開始有支援 NVMe 協議,使用 M.2 介面接口的 SSD 產品,並且從 Intel 9 系列主機板開始內建。隨著時間推進,NVMe SSD 價格越來越低,速度也越來越快,主機板內建 M.2 插槽也逐漸變成標準配置,但是對於相對老舊的 Intel  6/7/8 系列沒有內建 M.2 插槽的主機板來說,NVMe SSD 有如過眼雲煙,如夢幻泡影,即便有 M.2 轉 PCIe 轉接卡產品出現,也因為主機板沒有支援 NVMe 協議,看得到卻吃不到。

後來有神人研究出,可將 NVMe 協議加入 Intel 6/7/8 系列 UEFI BIOS 內,讓老舊的 6/7/8 系列主機板支援 NVMe SSD,不過這些老板子大多沒有 M.2 插槽,所以需要插上 PCIe 轉 M.2 轉接卡,就能使用 NVMe SSD。 

日前無意間看到了相關技術文章後心裡暗癢無比,再做了點功課,砸了三張小朋友購入 SSD 與 M.2 轉 PCIe 轉卡,按圖索驥之後,最終也成功了。

說真的一點都不難,只要小心別買錯東西即可。家裡有 Intel 6/7/8 系列的老電腦,有意花點小錢裝上便宜、高速、又大容量的 NVMe SSD 再多活幾年的話,本文的方法值得一試。

硬體部分

為了避免買到錯誤的硬體,所以先做了點功課,彌補一下知識斷層。查了一下 WIKI,M.2 又名 NGFF(Next Generation Form Factor),其實只是個介面的外觀接口,有一大堆介面都在用,為了怕發生悲劇,所以在這個接口上針對不同介面設計不同的物理防呆設計(在端子處不同的位置上製造缺口),常見由左到右(公座朝上,PIN 腳位從左到右遞增)為 A Key、B Key、E Key、M Key 等。M.2 SSD 常見的是 B Key 或 M Key,其中又大概分為 SATA 協議常用的的 B Key,NVMe 協議大多用的是 M Key。然而也有 M.2 SSD 使用的是 B + M Key,並不表示這類產品一定能在 M Key 母板上運作(如下圖),這就是容易造成混淆的部分。有關 B Key 與 M Key 的 SSD,可查閱這篇文章有比較清楚的說明。

【PC】老主機板 Z77 支援 NVMe SSD

所以了,硬體的部分一律鎖定「M.2 的 M Key」 、「NVMe」 這兩個關鍵字就不會出錯,購買清單如下,一共是 2,938 元,三張小朋友有找:

軟體部分

(1) NVMe 模塊檔案:

大致上分成以下兩種,一種是 3 個檔案(Nvme.ffs / NvmeSmm.ffs / NVMEINT13.ffs),另一種是 1 個檔案(NVMeExpressDxE.ffs) ,兩種者擇一即可。附上 MD5 與 SHA 編碼供比對。

  • Nvme.ffs - MD5: 8CD0A569E6FEB5CEB70C580344BBAFA6 。SHA-1: 4821043E861419B38E8BA9BFE69EA29EFA8948F8
  • NvmeSmm.ffs - MD5: 102D886C595CA21FD73433752992E1E6 ,SHA-1: A82E7EC560B90D3B783DEA3CCBEED0334197A850  
  • NVMEINT13.ffs - MD5: E090C39D2139A06FD8A6A8C4433DB180 ,SHA-1: BD865D5414EDBC2654CB56D7C5E0FA78F66F131C

  • NVMeExpressDxE.ffs - MD5: 563E9FB4F4EFD87ACAEA6B527985CC7F SHA-1: E20889F0A142AC4EA5252E03D1603DE2C954E3AE

坦白說上面的 .ffs 網路上不太好找,不過第一種(3 個 .ffs 檔案)可以在 Intel 9 系列以後的主機板 BIOS 中提取出來。如果網路上真的找不到,就到主機板廠商網站下載 BIOS 檔案之後從中提取,文章後段會補充這個作法。

(2) UEFI BIOS 修改工具(對應 Windows 7/8/10):底下二種工具,擇一即可。

  • MMTool Aptio 5.02.0024 Mod (下載)

(3) 主機板的 UEFI BIOS 檔案。以我的黑蘋果二號 GIGABYTE GA-Z77X-UP4 TH 為例,從這裡下載 F10b 版。

將 NVMe 模塊插入 UEFI BIOS

上述提到的二擇一,我以 Nvme.ffs/NvmeSmm.ffs/NVMEINT13.ffs + UEFITool (0.26.0) 為例:

一、啟動 UEFITool 0.26.0

功能表 File -> Open image file... ->選擇主機板的 BIOS 檔案(Z77XUP4TH.10b)。

【PC】老主機板 Z77 支援 NVMe SSD

選擇濾鏡改為 All Files

【PC】老主機板 Z77 支援 NVMe SSD

【PC】老主機板 Z77 支援 NVMe SSD

二、利用搜尋功能找出 DXE driver 區塊位置

功能表 File -> Search -> 切換到 Text ,Unicode 要打勾,搜尋 DXE 字串

【PC】老主機板 Z77 支援 NVMe SSD

【PC】老主機板 Z77 支援 NVMe SSD

搜尋結果顯示在下方

【PC】老主機板 Z77 支援 NVMe SSD

三、找出 DXE driver 區塊的最下方位置

(1) 點擊下方最後一筆結果(下圖最下方的紅框),上面會顯示結果的位置(下圖中間的紅框)。然後向上找出位置的 UUID 根節點(下圖藍色框內的三角形位置)。

影像_2019_12_8_下午1_15.png

(2) 滑鼠點擊上圖藍色框的三角形,將節點內容收合。

【PC】老主機板 Z77 支援 NVMe SSD

在緊鄰「Volume free space | Free space」(上圖藍框)上方的最後一個 「DXE driver」節點位置(上圖紅框),就是 DXE driver 區塊的最後位置。

四、在 DXE 區塊的最後位置,依序插入三個 NVMe 模塊:

按右鍵 -> Insert After

影像_2019_12_8_下午1_25.png

選擇 Nvme.ffs

【PC】老主機板 Z77 支援 NVMe SSD

然後在插入的 Nvme 模塊後繼續依序插入 NvmeSmm.ffs 與 NVMEINT13.ffs 模塊(意即在插入 NvmeSmm.ffs 之後,在 NvmeSmm.ffs 項目 Insert after 插入 NVMEINT13.ffs )

影像_2019_12_8_下午1_30.png

【PC】老主機板 Z77 支援 NVMe SSD

[省略插入 NVMEINT13.ffs 的操作圖。]

在依序插入三個模塊之後,最後得到的 BIOS 結構圖如下(下圖紅框的部分就是插入的 Nvme.ffs、NvmeSmm.ffs、NVMEINT13.ffs 三個模塊):

影像_2019_12_8_下午1_35.png

五、存檔:File -> Save image file。得到了支援 NVMe 的 UEFI BIOS檔案。

【PC】老主機板 Z77 支援 NVMe SSD

將最後得到的 UEFI BIOS 檔案寫入主機板即可。寫入的方法可參考各主機板的操作手冊。

如果成功了,開機的裝置清單就會顯示 NVMe SSD 裝置。

(相關文章:在 UEFI BIOS 加入 SLIC 2.1 資訊

見證老主機板運行 NVMe SSD 的實力

Windows 環境:

CrystalDiskInfo

【PC】老主機板 Z77 支援 NVMe SSD

AS SSD Benchmark

Samsung SSD 970EVO  2019.12.7 上午 04-36-09.png

macOS 環境:

【PC】老主機板 Z77 支援 NVMe SSD

【PC】老主機板 Z77 支援 NVMe SSD

Samsung 970 EVO NVMe SSD 500G 官方數據為讀寫 3400 MB / 2300 MB,在 Z77 老板子上似乎略有衰減,不過體驗提升還是很有感的。

心得與分享

其實在做功課與實作過程中還是有遇到一些問題,累積了不少經驗與心得,盡可能的寫在這裡,當作是筆記,也給有興趣的人當參考。

一、NVMe SSD 與 PCIe 轉 M.2 的採購

要搞懂 NVMe、PCIe、SATA、M.2 的 A/B/E/M key 這些規格術語,還有什麼 2280/2260/2242/2230 等等,說真的不太容易,還好有這篇文章寫得很清楚。

閱讀文章整理資訊抓出重點,只需確認是否為 NVMe M.2 M-key 的 SSD,以及是否為 PCIe x 4 轉 M.2 M-key 的轉接卡。當我在台南德源電腦一次購入這兩項時,店員也警覺的提醒我「電腦主機板要支援 NVMe」才能用。

再者是選擇 Samsung 970 EVO 的原因。

國外這篇文章中寫到某些 Macbook 機型可以透過轉卡使用某些市售型號的 NVMe SSD ,加上我也有一台 Macbook Air 2013,所以「可以給 Macbook Air 2013 使用」也成為採購標準。考量價格、品牌因素,再扣除使用 QLC 產品等,其實也所剩不多。以目前 970 EVO 500G 大約 3490 ~ 3790 的定價看來,活動打折到 2788 也相對容易剁手。 

(2020.01.03 補充:Macbook Air 2013 確實可用,讀寫速度是 1.4GB/1.4GB,比原廠的 TOSHIBA SSD 還快。)

二、效益

與原來使用 RAID 卡 + SSDx2 作比較:

  RAID 卡 + SSDx2 NVMe + M.2 轉接卡
容量 256GB(128GBx2) 500GB
速度(讀/寫) 660/600 MB 2.8/2.4 GB
PCIe 數量 1 1
電源線 2 0
訊號線 2 0
金額 6,334 2,938

Rocket 644L + Plextor M6S 128G x2 (組 RAID0):總費用 2512 + 1811x2 = 6,334 元(不計兩條 e-SATA 轉 SATA 線),

效益比較:一樣是佔用一個 PCIe x4 插槽,不過花費一半,容量多一倍,讀寫速度超過 4 倍,且大幅節省 2 條 SATA 電源線、2 條 SATA 線在機殼內部走線的糾纏,效益相當不錯。

三、補充說明

(3.1)主機板不支援 NVMe SSD,買來直接安裝的話會怎樣?

還是可以用,只是不能用來當開機的系統碟。沒有 NVMe 協議的主機板在開機時認不到 NVMe SSD,直到進了系統之後 NVMe SSD 才能被辨識出來,只能拿來儲存檔案。

(3.2)選擇插入 Nvme.ffs、NvmeSmm.ffs、NVMEINT13.ffs  三模塊,與選擇插入 NVMeExpressDxE.ffs 單一模塊有何差別?

選擇插入 Nvme.ffs、NvmeSmm.ffs、NVMEINT13.ffs 3 模塊,BIOS 可正常顯示 NVMe SSD 的裝置名稱。插入 NVMeExpressDxE.ffs 單一模塊只會顯示為硬碟,不會顯示裝置名稱。

【PC】老主機板 Z77 支援 NVMe SSD

(3.3)作業系統有限制嗎?

建議使用 Windows 10 ,黑蘋果用戶建議 macOS 10.15 +。據說 macOS 10.13/10.14 只支援極少數 NVMe SSD 廠牌,需手動修正才能使用他廠,比較麻煩。 

(3.4)網路上找不到 Nvme.ffs、NvmeSmm.ffs、NVMEINT13.ffs,如何自行製作生成?

以下示範如何從主機板廠商提供的 UEFI BIOS 提取這三個檔案。

(3.4.1)到技嘉官網下載任一款 Z97 的主機板 UEFI BIOS。建議可選擇功能等級或編號相近的機板。

技嘉 Z97 主機板列表

【PC】老主機板 Z77 支援 NVMe SSD

以黑蘋果的 GA-Z77X-UP4 TH 來說,選擇的 Z97 板子是 GA-Z97X-UD7 TH 這款,下載它的 UEFI BIOS,挑最後一版 F6

【PC】老主機板 Z77 支援 NVMe SSD

下載後解壓縮得到主機板 BIOS 檔案 Z97XU7TH.F6。

(3.4.2)  執行 UEFITool,載入 Z97XU7TH.F6。

【PC】老主機板 Z77 支援 NVMe SSD

File -> Search -> GUID,搜尋 「634E8DB5-C432-43BE-A653-9CA2922CC458」,項目選 Header Only。

【PC】老主機板 Z77 支援 NVMe SSD

點擊下方的搜尋結果(下圖紅框),程式會標定在節點位置上(下圖藍框)。

影像_2019_12_9_下午4_08.png

可以看到 Text 欄位中 Nvme、NvmeSmm、NVMEINT13 這三行。

影像_2019_12_9_下午4_09.png

這三行就是各自擷取 Nvme.ffs、NvmeSmm、NVMEINT13.ffs 的位置。

(3.4.3)各自在 Nvme、NvmeSmm、NVMEINT13 項目上按滑鼠右鍵,選擇 Extract as is ...,即可各自存成 Nvme.ffs、NvmeSmm.ffs、NVMEINT13.ffs。

影像_2019_12_9_下午4_19.png

 

(3.5)如何使用 MMTool 插入 NVMe 的 .ffs 模塊檔案?

(3.5.1)執行 MMTool Aptio 5.02.0024 Mod (MMTool.exe),左上方點擊「Load Image」載入老主機板 BIOS 檔案(Z77XUP4TH.10b)。

【PC】老主機板 Z77 支援 NVMe SSD

(3.5.2)依序操作 1.捲動尋找「CSMCORE」,找到之後點擊該筆資料。2. 程式會自動把 Vol Index 帶入欄位。3. 點擊 Browse,選擇要插入的 .ffs 模塊。4. 點擊 Insert。可以繼續再選其他 .ffs 模塊,重複操作 Insert 的動作, 

影像_2019_12_9_下午4_43.png

視情況 Insert FFS Option 可以選擇 Insert Compressed 以免發生空間不足的錯誤(上圖綠框)。

(3.5.3)插入完 .ffs 之後,點擊 Save Image As 即可另存檔案。

 

參考資料來源:

Autobuy - M.2 SSD 選購指南——SATA、PCIe/NVMe 掌握要訣

PCBeta - 老主板升级支持PCIE NVMe SSD攻略

OSSLab - 如何獲得對具有AMI UEFI BIOS的所有系統的全面NVMe支持

[Tool Guide+News] "UEFI BIOS Updater" (UBU)

 

arrow
arrow
    創作者介紹
    創作者 benjenq 的頭像
    benjenq

    -Ben's PHOTO-

    benjenq 發表在 痞客邦 留言(6) 人氣()