如果不知道華為快閃記憶體造假的請自行搜索。
別著急, 慢慢看完你就會明白了。
咱們先說說eMMC和UFS的區別你就懂了。
eMMC 和 UFS 都是面向移動端 Flash 的標準, 區別在於, 二者的介面技術大相徑庭。
eMMC 是一個起源較早的技術, 全稱叫 embedded MultiMedia Card, 為什麼單單e是小寫呢? 因為先有的MMC啊。 所謂MMC, 大家可能沒聽過但肯定都見過, 通俗來說就是所謂的記憶體卡。
MMC前面加了個embedded, 主要就是為了突出現在這個設備是embedded在電路板上。
eMMC 和 MMC一樣, 沿用了 8 bit 的平行介面。 在傳輸速率不高的時代, 這個介面夠用了。 但隨著設備對介面的頻寬要求越來越高, 想把平行介面速率提高也越來越難。
eMMC 的最新 5.1標準理論最高值最高可以達到400 MB/s, 再往上提高頻率也不是不行, 但就未必划算了。
這幾年介面序列化大潮轟轟烈烈。
所謂介面序列化, 簡單來說就是工程師們發現:與其用一個比較寬的平行介面以較低的速率傳輸,
所以這個時候 UFS 應運而生, 用高速序列介面取代了平行介面, 而且還是全雙工的, 也就是可以讀寫同時進行。 所以相比 eMMC, UFS的理論性能提高不少, 甚至可以達到一些SSD的水準。 可以在下圖直觀感受一下, 藍色的是UFS, 紅色的是eMMC, 當然是越高越好。
大家可能比較關心的一個問題:我設計好了一個使用UFS的系統, 然後悲傷地發現沒有UFS可以用了, 那能不能直接換成eMMC呢?
答案是不行的, 因為 UFS 和 eMMC 介面完全不相容, 控制器也不可通用。 下面兩個示意圖分別是eMMC和UFS的介面(圖片引自[2][3] JEDEC標準)。
即使是示意圖, 也能看出兩者的明顯差別。
eMMC有兩條匯流排, 分別傳輸指令資料登錄和輸出, 而且因為是平行匯流排還要有額外的data strobe。
UFS則是有兩條差分的資料lane, 指令和資料都是以packet的形式發送的。
就更不要提二者的信號線的電氣特性也有很大差別了,
所以一個系統的SoC以及電路板一定要經過重新設計, 才能把 UFS 替換成 eMMC, 這不是在生產線上換個 Flash 晶片那麼簡單的事兒, 還得經過比較長時間的設計和測試才行。
否則想要快速拿出替代方案的話, 恐怕從一開始就要設計相容兩套方案了。