[心得] PCIe & NVME Protocol Study

看板 Tech_Job
作者 Caramel715 (焦糖)
時間 2022-04-11 14:00:18
留言 154 ( 142推 0噓 12→ )
回文 3則
大家好,我目前任職於某家SSD韌體,主要是負責NVMe Front-end的部分,Front-end主要 負責PCIe和NVMe protocol的firmware porting,所以必須study這兩份spec。由於spec 的內容過於龐大,所以我習慣會用網誌做筆記,一方便怕自己忘記,一方面也可以在遇到 問題的時候快速查詢,當然我所寫的都是我對於spec的理解,所以希望有這方面的專家, 可以討論不同的見解,也歡迎大家討論與指教。 PCIE: ■原理PCI Express - LTSSM Equalization狀態機推演 由於PCIe通道傳輸的特性,會有所謂的碼間干擾(Inter-Symbol Interference,ISI),而 導致資料無法被辨識,且隨著PCIe頻率越來越高,這個問題會更加明顯,因此必須透過 Equalizer來調整彼此間的訊號,得到比較好的眼圖,搭建起溝通的橋樑,此篇為EQ LTSSM的推演。 https://reurl.cc/VjGMzb ■原理PCI Express - LTSSM 狀態機推演 "Detect -> Polling -> Configuration -> L0" PCIe為point-to-point interconnects(點對點的連接),所以就算系統上由多層PCIe bus 所構成,每個component只要負責與他對面的component之間的link negotiation就可以了 ,這篇文章主要會推演兩個端點之間的LTSSM是如何從Detect state演進到L0。 https://reurl.cc/akpd4D ■簡介PCI Express: Link Training and Status State Machine( LTSSM 狀態機 ) 由於工作上很容易會遇到PCIe Link上的問題或者我們需要驗證LTSSM state transition 有沒有符合預期 ,常常需要透過Protocol Analyzer錄製PCIe Trace來進一步分析。此篇 主要會介紹Traning Sequence,和各個LTSSM state主要目的為何。 https://reurl.cc/9Od37x ■原理PCI Express: Advanced Error Reporting(AER) Advanced Error Report(簡稱AER)為PCIe 較為強健的錯誤回報機制,在PCI Express? Base Specification Revision 3.0 的6.2節"Error Signaling and Logging"章節有詳細 的介紹整個AER的logging與repoting機制,由於工作上常常遇到Linux Kernel log中,出 現AER error訊息,所以又把spec拿出來翻一翻,藉此寫一篇關於AER的機制,方便以後查 詢。 https://reurl.cc/veyva1 NVME: ■原理NVM Express - NVMe Submission Queue & Completion Queue (SQ & CQ) NVMe最基本的communicate架構主要是建立在Submission Queue和Completion Queue, Host Software透過Submission Queue來提交command讓NVMe Controller執行, Controller會透過Completion Queue來回報command執行狀況為何。此篇主要介紹NVMe基 本架構。 https://reurl.cc/bkZYVd -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 125.227.10.151 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Tech_Job/M.1649656821.A.283.html

回文

[心得] PCIe & NVME Protocol Study
142 154 tech_job Caramel715
2022-04-11 14:00:18
Re: [心得] PCIe & NVME Protocol Study
3 8 tech_job flysonics
2022-04-12 01:19:09
Re: [心得] PCIe & NVME Protocol Study
48 51 tech_job Caramel715
2023-10-12 03:06:06

留言

iamala 推推 04/11 14:02 1F
lolpklol0975 群聯 推 04/11 14:05 2F
gn01216674 04/11 14:06 3F
s869225 04/11 14:07 4F
legendary02 推推 04/11 14:09 5F
kuyfd456 04/11 14:13 6F
andyw7612162 04/11 14:14 7F
bnd0327 推推 04/11 14:17 8F
Eligor41 04/11 14:17 9F
tim82518 04/11 14:19 10F
djboy 謝謝分享 04/11 14:19 11F
fakon 先推一個 04/11 14:19 12F
※ 編輯: Caramel715 (125.227.10.151 臺灣), 04/11/2022 14:22:14
benson01 04/11 14:21 13F
loveabc 04/11 14:29 14F
roy19991013 04/11 14:30 15F
lohas1019 知識 推! 04/11 14:30 16F
andrew82465 推推 動畫清楚明瞭 04/11 14:31 17F
sabar 謝分享 04/11 14:31 18F
gugeegee 推推 真的看到都會背章節了XD 04/11 14:32 19F
cjw0716 推,謝謝學長 04/11 14:33 20F
ulovebaby smi 無私讚讚讚 04/11 14:33 21F
ja5566412 推!最近也在study Front end 的spec,這些資料讓 04/11 14:34 22F
ja5566412 我收益良多。 04/11 14:34 23F
aika472405 04/11 14:35 24F
b0117 請問原po是在p還是s高就? 04/11 14:39 25F
Lhmstu 推,感謝分享 04/11 14:41 26F
e80276 推推 04/11 14:42 27F
leojojo 推推 04/11 14:44 28F
basterds 和我想的差不多 (茶) 04/11 15:04 29F
matthewka 04/11 15:33 30F
chiro1982 我記得ssd fan有好幾篇對FE介紹的也蠻詳細的 04/11 15:36 31F
其實我就是看到大陸很多這種技術文章, 但在台灣很少看到, 因為大陸有些用語我看得不太習慣, 所以我就自己寫了
sustr55 04/11 15:38 32F
tech1140 感謝分享 04/11 15:38 33F
yugi2567 想也知道群聯 04/11 15:40 34F
hihihihsuan 感謝分享! 04/11 15:42 35F
a9101214 04/11 15:45 36F
※ 編輯: Caramel715 (125.227.10.151 臺灣), 04/11/2022 16:08:19
lplay good 04/11 15:49 37F
ShangLai 04/11 15:52 38F
stevenwin 04/11 15:54 39F
dear82000 感謝高手分享 04/11 16:02 40F
shoushing 推 剛拜讀完大大的AER 04/11 16:03 41F
bloodpiece 只能推了 04/11 16:06 42F
kjay 感謝分享 造福雜魚我 04/11 16:09 43F
ckpetercheng 好文推推 台灣沒有這種技術社群真的可惜 04/11 16:11 44F
jupei 04/11 16:21 45F
xoy232 04/11 16:45 46F
kolipjum1 推大神 04/11 16:48 47F
s89029 推推 04/11 17:01 48F
ninja4great 04/11 17:02 49F
la8day 04/11 17:03 50F
yorkeram 推分享 很多技術文章都簡體居多 04/11 17:05 51F
sheepxo 04/11 17:05 52F
samluna 04/11 17:24 53F
jacky31232 04/11 17:37 54F
pilodee 04/11 17:42 55F
spirit 好用心 04/11 17:43 56F
zzztrees 推推 04/11 17:47 57F
happy410489 04/11 17:49 58F
hankower 04/11 18:09 59F
cityioio 04/11 18:11 60F
Helloyu 好心人推推 04/11 18:13 61F
ohohohya 有沒有講程式的 我想看pci enumuration 04/11 18:17 62F
印象中這個可能要講到BIOS, 因為BIOS會define MMIO base address位置, BIOS就依據這個base, 從bus number 0~255、dev 0~32、func 0~8, 三個for迴圈全部掃過一遍, 如果VendorID和DeviceID有值代表device存在
assassinzero 推推,感謝分享 04/11 18:21 63F
jerry012188 04/11 18:22 64F
maxumin 希望分享nvme2.0b,pcie5.0 04/11 18:27 65F
longandersen 04/11 18:28 66F
Dracarys 好奇這specs都幾頁啊? 04/11 18:39 67F
omnmnmnm 04/11 18:45 68F
AaronWang 04/11 18:58 69F
jasonwung 04/11 19:00 70F
aaron70221 04/11 19:01 71F
GenesisXD 優文! 04/11 19:01 72F
q10293847 推推 04/11 19:09 73F
※ 編輯: Caramel715 (125.227.10.151 臺灣), 04/11/2022 19:20:11
aspirev3 04/11 19:28 74F
BingLing 04/11 19:32 75F
god4yoo 04/11 19:46 76F
meokay 推好心 04/11 19:49 77F
hold5566 push 04/11 19:49 78F
goldie push 04/11 20:07 79F
GuoJing18 04/11 20:33 80F
a901601 04/11 20:53 81F
dildoe 伸手的連picsig會員都沒吧 XD 04/11 20:57 82F
k798976869 04/11 21:04 83F
sitting 感謝分享 04/11 21:10 84F
roy415012 推推 好文章 04/11 21:38 85F
A1ch3mi5t 04/11 21:46 86F
rockrock1127 優質文章 推! 04/11 22:07 87F
woulin 對岸csdn很多這類文章 04/11 22:13 88F
沒錯,我很多PCIe知識也都從那邊獲得
※ 編輯: Caramel715 (1.169.193.191 臺灣), 04/11/2022 22:16:10
anewlife 推推 04/11 22:19 89F
jarjar3215 04/11 22:19 90F
rosty 04/11 22:36 91F
qoo69600 好文一起推 04/11 22:37 92F
dnweimin 04/11 23:04 93F
lplpkkk 04/11 23:15 94F
caeserhaha 有沒有人要寫FTL的 04/11 23:36 95F
其實我也很想看,不然我都不知道back-end在做什麼 XD
ho83leo 不錯 04/11 23:37 96F
※ 編輯: Caramel715 (1.169.193.191 臺灣), 04/11/2022 23:39:36
gR7P4zXH o.o 04/12 00:16 97F
TWkobe Haha 我想寫FTL 的筆記但感覺會牽涉機密,一般常見 04/12 00:26 98F
TWkobe 的感覺看論文就好 04/12 00:26 99F
有道理,其實FTL的精隨就是如何去操作NAND, 現在為了省錢好像都使用TLC,但TLC的缺點就是P/E值較低 所以演算法非常重要,因為要延長NAND的壽命 演算法就是公司的Know-how了吧
※ 編輯: Caramel715 (1.169.193.191 臺灣), 04/12/2022 00:39:24
tim32338519 推 感謝分享 04/12 00:50 100F
rizman28 好人好事 04/12 01:06 101F
BlueToast 好人 04/12 01:14 102F
apple5811 用心好文 推推 04/12 01:31 103F
a830606 04/12 02:08 104F
Jiraya 04/12 02:22 105F
jason911665 推推之前就有看過大大的文章 非常實用 04/12 02:41 106F
poem5566 高手推 04/12 03:08 107F
EinArthur 厲害 推 04/12 05:06 108F
mikemike1021 我們可以來建立台灣的技術社群 04/12 05:18 109F
mikemike1021 個人有建立了 forum.community.tw 04/12 05:19 110F
mikemike1021 能使用markdown跟自動為程式碼上色等,也能當一些靜 04/12 05:19 111F
mikemike1021 態部落格的留言系統或者用rss轉貼(經作者同意)。 04/12 05:19 112F
mikemike1021 歡迎大家來試試 04/12 05:19 113F
ppony 慧榮? 04/12 06:37 114F
ppony 04/12 06:47 115F
neil908413 推 用心 04/12 08:11 116F
iori305 04/12 08:29 117F
Padparacha 我的天啊我在bios海載浮載沉的時候就是你的網誌救了 04/12 08:42 118F
Padparacha 我一命QQ 04/12 08:42 119F
qq155266 04/12 10:30 120F
southwind 大推! 04/12 11:15 121F
koka813 讚喔 04/12 11:24 122F
loge400 推! 這太讚了 04/12 11:46 123F
tuner123 04/12 11:52 124F
albert7530 FTL一定有known how, 不用想了 04/12 12:20 125F
albert7530 我建議可以朝flash access下手,例如分析讀data ret 04/12 12:22 126F
albert7530 ension nand scaled, read refrence 這就無關機密了 04/12 12:22 127F
ipieee 推一個 04/12 12:50 128F
freezeblue 好文推~ 04/12 13:17 129F
bloodmoon16 04/12 13:26 130F
Leo930057 推爆 04/12 13:27 131F
SMInice 學長推 04/12 14:02 132F
elesterknigh 推 分享 04/12 14:16 133F
warcraft354 推!! 04/12 15:04 134F
panrong 推! 要不要在動畫裡放國旗XD 以防... 04/12 17:59 135F
有道理,以防被偷,以後加個浮水印好了
u9412038 04/12 18:39 136F
※ 編輯: Caramel715 (125.227.10.151 臺灣), 04/12/2022 19:13:56
goldie 04/12 19:15 137F
shibin 推,NVMe台灣的文章真的不多 04/12 21:24 138F
NotForever 推 感謝你~ 04/13 00:26 139F
apnsd2y 04/13 01:17 140F
sef96121 04/13 08:41 141F
nic0935 04/13 09:29 142F
hh440977 04/13 09:34 143F
heaviest 04/13 10:17 144F
peterlin0224 04/13 11:57 145F
nomorex6 04/13 16:58 146F
※ 編輯: Caramel715 (1.169.224.116 臺灣), 04/13/2022 19:29:20
pudin0116 04/13 23:11 147F
yhaoo666 讚,寫的很棒,受用無窮 04/14 00:44 148F
Milesians 04/14 18:55 149F
a910184 必須推 04/15 08:23 150F
craigwang push 04/17 00:08 151F
cherry0712 推好心 04/18 23:23 152F
xx5236294roy 我推 04/19 22:48 153F
stwart 推推認真文 10/13 17:15 154F

最新文章

[交易] 7-11滿250-25抵用券4張
e-coupon five8080
2024-11-07 07:22:31
[交易] 馬辣點數5點
e-coupon bravejessie
2024-11-07 07:07:29
[問題] 可以帶入海關的食物
russian manman0324
2024-11-07 07:05:50
[贈送] 全國包包
give a93a626
2024-11-07 06:55:15
[交易] 7-11滿250-25抵用券
e-coupon wz999
2024-11-07 06:54:27
[贈送] 全國 女生上衣
give cristin
2024-11-07 06:37:33
[問題] 時常搭機跟在國外生活
creditcard manman0324
2024-11-07 06:31:24
[閒聊] 2024/11/07 盤中閒聊
option csir
2024-11-07 06:27:45
[桃竹] 南一書局誠徵教科書業務
job suewen
2024-11-07 06:09:46
[討論] Line Point 1點
2 2 lifeismoney tyw0316
2024-11-07 04:33:19
Re: [問題] 低里程,適合選油電CC嗎?
car luckystrike5
2024-11-07 04:31:18
[徵求] 博客來 100 折價券*2
e-coupon itravel
2024-11-07 03:50:22
[交易] 玉山e point 100點
e-coupon daily76
2024-11-07 03:37:58
Fw: [公告] 新板主上任 joem
l_lifeplan jasome
2024-11-07 03:35:04
[公告] 新板主上任 joem
3 3 lifeismoney jasome
2024-11-07 03:34:49