最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

淺談CPU和硬件加速器接口 1

2022-02-26 22:02 作者:LeonardTX  | 我要投稿

隨著狹義摩爾定律的終結(jié),單純依靠CPU這種通用算力完成特定領(lǐng)域計(jì)算任務(wù)已經(jīng)越來越不可行,面向特定領(lǐng)域完成專用ASIC設(shè)計(jì)是芯片設(shè)計(jì)過程中的一項(xiàng)主要任務(wù)。一名合格的ASIC架構(gòu)師,接到一項(xiàng)新的工作任務(wù)時(shí),一般需要首先考慮如下四個(gè)問題:


1. 決定軟硬件分工


更準(zhǔn)確的說,是決定ASIC承接哪些feature,又把哪些feature交還給軟件。


-) 一般而言,固定的大規(guī)模計(jì)算(譬如加解密和編解碼)和數(shù)據(jù)流的搬移是ASIC一定要承接的任務(wù)

-) 可以靈活實(shí)現(xiàn)的復(fù)雜控制和演進(jìn)過程中的計(jì)算則需要交還給CPU/DSP(說白了就是軟件實(shí)現(xiàn))

-) 對于實(shí)時(shí)性要求高且又需要一定靈活編程能力的控制可以選擇軟件定義硬件(SDH, Software Defined Hardware)來實(shí)現(xiàn)


2. 梳理control flow和data flow


確定HWA(Hardware Accelerator)需要實(shí)現(xiàn)的功能后,接下來就需要完成control flow和data flow的整理,通俗的講,是確定以下內(nèi)容:

-) HWA的上游是什么,HWA or SW

-) HWA的下游是什么,HWA or SW

-) 控制信息是如何輸入的,又該怎么把狀態(tài)結(jié)果輸出給下游

-) 數(shù)據(jù)是如何流入的,又怎么供給到下游使用


做好控制流和數(shù)據(jù)流的梳理,確定控制和數(shù)據(jù)的流動模型,是做好HWA架構(gòu)的前提。在架構(gòu)設(shè)計(jì)時(shí),一般需要考慮如下兩個(gè)方面,做好架構(gòu)層面的trade-off

-) 高效的完成控制流和數(shù)據(jù)流的輸入和輸出,減少軟件MIPS消耗

-) 保持適度的靈活性,保留靈活配置能力、調(diào)試能力、工程打補(bǔ)丁能力和后續(xù)升級能力


聽起來似乎是相互矛盾的,這就是芯片設(shè)計(jì)的現(xiàn)實(shí),沒有完美的解決方案,只有根據(jù)自己根據(jù)需求理解和工作經(jīng)驗(yàn)進(jìn)行的trade off,需要找到的永遠(yuǎn)是最合適的解決方案,而不是最好的解決方案或者某個(gè)維度最優(yōu)的解決方案


3. 定義軟硬件接口


作為干過HWA和SOC、Modem和AP、硬加速和SDR的人,有時(shí)候比較驚訝的發(fā)現(xiàn)自己和很多兄弟對軟硬件接口設(shè)計(jì)的理解是如此不同的,這也是我寫這篇文章的主要目的,好好講講我理解的軟硬件接口。


于我而言,軟硬件接口設(shè)計(jì)是否合適,是芯片設(shè)計(jì)是否成功的關(guān)鍵因素。一般來說,軟硬件接口的設(shè)計(jì)原則如下:

-) 極致的PPA并不是最優(yōu)的追求,特別是最優(yōu)的area和power,往往意味著普通的performance和極度緊繃的彈性。以成本為目標(biāo)的設(shè)計(jì),是工程師最偷懶的考量,很直接也很明確卻往往不是本質(zhì)。

-) 保留適當(dāng)?shù)撵`活度,是軟硬件接口的更高原則。首先,合適的靈活接口設(shè)計(jì)和HWA硬對接設(shè)計(jì)的PPA整體在相同的量級;其次,靈活設(shè)計(jì)帶來的time2market能力和軟件work around能力,是更重要的事情。“軟件能繞開的事情,不管多么復(fù)雜,都不能算ASIC bug”


常見的軟硬件接口有4種,后續(xù)再詳細(xì)介紹

-) “單步”

-) “pingpong”

-) “批處理”

-) “B&Q MAN”


4. 定義外部接口、block劃分和block之間的接口


解耦,解耦,解耦,關(guān)鍵的問題要說三遍。一個(gè)不懂的解耦的工程師,不管年紀(jì)多大,永遠(yuǎn)是Junior Engineer。實(shí)際上從芯片級到RTL代碼級,都需要很明確的思考清楚如何做好解耦,功能解耦、電源域解耦、時(shí)鐘域解耦、幾十行的寄存器級代碼解耦。遺憾的是,這一兩年來發(fā)現(xiàn)外面似乎并不理解如何解耦,所以這種模塊劃分甚至端口定義的工作,都成了架構(gòu)設(shè)計(jì)的一部分


淺談CPU和硬件加速器接口 1的評論 (共 條)

分享到微博請遵守國家法律
双流县| 措美县| 富平县| 古田县| 汶川县| 伊宁市| 房产| 长寿区| 冕宁县| 和平县| 璧山县| 河东区| 临西县| 思南县| 安新县| 新沂市| 穆棱市| 黑河市| 南昌市| 麻阳| 同德县| 宁安市| 湖州市| 湾仔区| 肥城市| 临武县| 新建县| 莎车县| 邓州市| 沈阳市| 临城县| 基隆市| 蒲城县| 丁青县| 富民县| 甘孜| 云和县| 邵武市| 监利县| 嘉禾县| 松潘县|