1. 仲裁含義
“仲裁”漢字的意思是一個(gè)人站在中立的位置來裁定,保證正常的秩序。因此,涉及裁定,肯定存在資源分配的矛盾,本來就一個(gè)東西卻有2方甚至多方爭占。在生活中有仲裁,同樣在架構(gòu)中也有仲裁。
而在嵌入式處理器架構(gòu)中,主要涉及運(yùn)算和數(shù)據(jù)傳輸?shù)拿苄枰俨?,來保證系統(tǒng)的正常運(yùn)行。因此,可以通過仲裁的角度將各個(gè)處理器架構(gòu)做一個(gè)串聯(lián),便于我們學(xué)習(xí)和理解,文中只是本人自己學(xué)習(xí)處理器架構(gòu)的筆記總結(jié),僅供學(xué)習(xí)參考。
2. 各類處理器中的仲裁
微型控制器的核心是不斷的從存儲(chǔ)器中讀取指令和數(shù)據(jù)送入運(yùn)算單元運(yùn)算后將結(jié)果寫入數(shù)據(jù)存儲(chǔ)器或者輸出,在這個(gè)過程中就涉及存儲(chǔ)器和讀寫操作的資源的有限,就會(huì)涉及到仲裁處理方式,就出現(xiàn)了2種架構(gòu):
1. 馮諾依曼架構(gòu)的分時(shí)復(fù)用,分時(shí)在一個(gè)總線上去訪問同一存儲(chǔ)器來避免沖突矛盾;
2. 哈佛架構(gòu)的并行處理,2路讀寫總線和2個(gè)獨(dú)立的存儲(chǔ)器,就不存在沖突矛盾。
當(dāng)然,當(dāng)有突發(fā)情況出現(xiàn)的時(shí)候,MCU必須優(yōu)先處理該突發(fā)情況,這里就涉及到仲裁的另一種處理方式:
3. 這里采用的方式就是我們常說的中斷,可以理解為被突發(fā)需優(yōu)先處理的事打斷,優(yōu)先處理中斷時(shí)間,把手頭的事臨時(shí)入庫,待中斷時(shí)間處理完后接著出庫處理,這里的入庫出庫即入棧出棧。
PC CPU是針對通用而設(shè)計(jì)的處理器,就是我們辦公用的電腦,仲裁的處理方式和MCU類似,只是更加復(fù)雜:
1. 使用了操作系統(tǒng)來處理各個(gè)資源的沖突問題;
2. 使用了線程進(jìn)程的概念來處理資源的沖突問題。
ARM可理解為是介入MCU和PC間的嵌入式處理器:
1. 比MCU復(fù)雜,一般帶微型操作系統(tǒng)實(shí)現(xiàn)仲裁處理;
2. 比PC靈活,可剪裁,仲裁的處理沒有PC的復(fù)雜;
3.在指令集上深耕數(shù)年,使用精簡的指令集,廣泛用于嵌入式行業(yè),可以理解從指令集角度來處理各種操作的矛盾提高效率。
DSP即數(shù)字信號處理專用處理器,DSP的沖突更多的是數(shù)據(jù)的運(yùn)算和處理能力,原有的MCU架構(gòu)的仲裁處理方式無法滿足,因此:
1. 增加計(jì)算處理能力,有更加豐富的數(shù)學(xué)運(yùn)算IP核,如三角函數(shù)等高等運(yùn)算;
2. 增加更多的系統(tǒng)總線架構(gòu),來減少指令、數(shù)據(jù)傳輸間的沖突問題。
GPU起源是用于圖像處理的專用處理器,而圖像的特點(diǎn)就是數(shù)據(jù)量大,計(jì)算量大,后面經(jīng)過需求的不斷推動(dòng),出現(xiàn)了顯卡,而再一波AI潮流,讓GPU大放異彩,用一句話來概括GPU的話就是:N個(gè)計(jì)算核心下超位寬存儲(chǔ)單元的處理器。
1. N個(gè)計(jì)算核心,GPU擁有數(shù)千個(gè)可完成復(fù)雜運(yùn)算的計(jì)算核心,可以同時(shí)完成數(shù)千個(gè)計(jì)算;
2. 超位寬,一般處理器的外部存儲(chǔ)器DDR受頻率位寬的影響數(shù)據(jù)傳輸能力有限,那怕有好的仲裁機(jī)制也不行,而GPU的DDR位寬是一般處理器的幾十倍,自然數(shù)據(jù)傳輸上強(qiáng)幾十倍。
FPGA計(jì)算和數(shù)據(jù)傳輸均可定制,但面臨需要仲裁的問題和處理方式同其它類似:
1. 數(shù)據(jù)計(jì)算單元并行化,并行處理大量數(shù)據(jù)時(shí),涉及數(shù)據(jù)的加載、暫存和輸出;
2. 多路總線仲裁數(shù)據(jù)的傳輸,AXI4等總線標(biāo)準(zhǔn)的互聯(lián)IP核,實(shí)現(xiàn)更大帶寬的數(shù)據(jù)傳輸,內(nèi)部數(shù)據(jù)傳輸受資源的限制,外部受DDR存儲(chǔ)器理論帶寬和DDR仲裁利用率的限制。
3. 總結(jié)
FPGA要實(shí)現(xiàn)高性能的定制功能,也就重點(diǎn)在你的仲裁處理能力,常用的有:
堆資源,用好幾片F(xiàn)PGA處理器;
使用優(yōu)質(zhì)的仲裁架構(gòu),讓數(shù)據(jù)傳輸間效率最優(yōu)化。
隨著FPGA成本下降,5G的崛起,它會(huì)越來越用于傳統(tǒng)行業(yè),也就不再是高端的代名詞,會(huì)更多的用于消費(fèi)對成本敏感的市場,那時(shí)候或許更好的FPGA定制會(huì)產(chǎn)生更大的市場競爭力,帶來更大的利潤。
例如:用EDA軟件提高的AXI總線互聯(lián)IP訪問DDR資源大效率低,而用自己編寫的AXI仲裁代碼只用十分之一的資源而帶來接近雙倍的效率,自然在消費(fèi)成本敏感市場中占主導(dǎo)地位,或許覺得編寫這樣的AXI仲裁的代價(jià)太大,但需求和市場的推動(dòng)讓我已經(jīng)在深度學(xué)習(xí)中編寫實(shí)現(xiàn)了這樣的代碼并封裝為IP。
審核編輯 :李倩
-
處理器
+關(guān)注
關(guān)注
68文章
19381瀏覽量
230454 -
嵌入式
+關(guān)注
關(guān)注
5087文章
19152瀏覽量
306391 -
微型控制器
+關(guān)注
關(guān)注
0文章
6瀏覽量
5279
原文標(biāo)題:仲裁角度淺談各類處理器架構(gòu)
文章出處:【微信號:zhuyandz,微信公眾號:FPGA之家】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論