99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

開發(fā)加速程序前如何正確設(shè)計程序架構(gòu)?

YCqV_FPGA_EETre ? 來源:XILINX開發(fā)者社區(qū) ? 作者:賽靈思開發(fā)者 ? 2021-06-11 16:28 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在開發(fā)一個加速程序的之前,有一個很重要的步驟:正確設(shè)計程序架構(gòu)。開發(fā)人員需要明確軟件應(yīng)用程序中哪一部分是需要硬件加速的,并且它多少的并行量,以保證硬件加速器件(FPGA)能完美發(fā)揮其作用。

本文將分為5個步驟來介紹:

1. 基準(zhǔn)和建立目標(biāo)

2. 確定加速部分

3. 確定FPGA硬件加速并行量

4. 確定軟件部分并行量

5. 微調(diào)架構(gòu)細(xì)節(jié)。

1.

基準(zhǔn)和建立目標(biāo)

首先要測試應(yīng)用程序的運行時間和吞吐量,來確定當(dāng)前應(yīng)用程序在現(xiàn)有平臺的的基準(zhǔn)性能。這些數(shù)據(jù)應(yīng)涵蓋整個應(yīng)用程序(起始到結(jié)束)的性能和各個主要函數(shù)的性能。通常使用valgrind,callgrind和GNU gprof這些測試軟件來獲得應(yīng)用程序的性能數(shù)據(jù),它們會顯示應(yīng)用程序中所有的函數(shù)數(shù)量以及各個函數(shù)的執(zhí)行時間。通過這些數(shù)據(jù),我們可以找到耗時最長的部分,然后放到FPGA上進(jìn)行加速。

評估運行時間

測試運行時間是軟件開發(fā)的基本流程,可以使用一些常用的測試軟件,或者插入計時器和性能計數(shù)器來完成此項操作。

評估吞吐量

這里的吞吐量是指數(shù)據(jù)被處理的速率。對于計算給定函數(shù)的吞吐量,具體公式為函數(shù)處理的數(shù)據(jù)除以函數(shù)處理的時間,如下:

TSW= max (VINPUT, VOUTPUT) / Running Time

如果是處理固定的數(shù)據(jù)量,只要簡單的檢查代碼就能知道吞吐量的大小。但在一些情況下,數(shù)據(jù)是可變的,那么插入計數(shù)器來測量吞吐量的大小是比較實用的。

確定最大可實現(xiàn)的吞吐量

在大多數(shù)加速系統(tǒng)中,最大可實現(xiàn)吞吐量受PCIe總線的限制。PCIe總線受很多因素的影響,例如母板,驅(qū)動,目標(biāo)板卡和發(fā)送數(shù)據(jù)大小等等。運行DMA測試能夠測試PCIe發(fā)送的有效吞吐量,從而確定加速性能潛力的上限。在安裝Alveo板卡后,我們可以使用xbutil dmatest命令來測試板卡的PCIe性能。

建立總體加速目標(biāo)

在開發(fā)過程中盡早確定加速目標(biāo)是非常有必要的,基于基準(zhǔn)性能的加速目標(biāo)會決定分析和決策的走向。加速目標(biāo)可以是硬性的也可以是軟性的。例如,實時視頻應(yīng)用程序有每秒處理60幀的嚴(yán)格硬性目標(biāo),而數(shù)據(jù)科學(xué)應(yīng)用程序的軟性目標(biāo)是比其他可代替實現(xiàn)方法快10倍。所以無論哪種方式,領(lǐng)域?qū)I(yè)知識對于設(shè)置可實現(xiàn)的加速目標(biāo)都很重要。

2.

確定加速部分

評估基準(zhǔn)性能后,下一步就是確定哪一個函數(shù)需要在FPGA上加速。當(dāng)選擇哪個函數(shù)用于加速時,有兩個方面需要考慮到:

性能瓶頸:應(yīng)用程序中有哪些函數(shù)需要著重關(guān)注

加速潛力:這些函數(shù)是否有加速的潛力

確定性能瓶頸

在一個純粹的順序進(jìn)行的應(yīng)用程序中,可以通過解析報告很容易甄別到性能瓶頸。然而,大多數(shù)現(xiàn)實中的應(yīng)用程序都是多進(jìn)程,因此在尋找性能瓶頸的時候考慮并行性很重要。一個很簡單的例子:

204adcd0-ca4e-11eb-9e57-12bb97331649.png

如上圖中是一個應(yīng)用程序中兩條并行的路徑,長度表示它們運行消耗時間。從這里我們看出,僅僅加速A,B進(jìn)程的某一個并不能提高應(yīng)用程序的整體性能。即使你將A2加速100倍,該應(yīng)用程序的性能還是被A1和B進(jìn)程鉗制。所以考慮加速對象時,要考慮整個應(yīng)用程序的性能,而不是單個函數(shù)的性能。

確定加速潛力

作為軟件程序中的瓶頸函數(shù)不一定具有加速的潛力,通常需要進(jìn)行詳細(xì)分析才能準(zhǔn)確判斷給定函數(shù)的實際加速潛力。但是,有時候一些簡單的指導(dǎo)方法也能確定一個函數(shù)是否有加速潛力:

1. 選擇運算復(fù)雜度比較大的,相比于順序計算來說,它可以在FPGA上可以使用并行,流水線來提高效率。

2. 相對于輸入輸出來說的,選擇運算強(qiáng)度比較大的,因為這樣數(shù)據(jù)搬移時間開銷占用整個加速時間比率來說會低一些。

3. 選擇那些能夠數(shù)據(jù)重用,對內(nèi)存訪問比較少的,因為這可以是數(shù)據(jù)更容易在加速器中緩存,減少對全局內(nèi)存的訪問。

4. 對比函數(shù)吞吐量和FPGA吞吐量的比值,以確定最大可加速的倍數(shù)。

3.

確定FPGA硬件加速并行量

在前面的步驟中確定哪個函數(shù)用于加速之后,接下來就要確定使用多少的并行量來達(dá)到這一目標(biāo)。內(nèi)核(kernel)的并行性可以分為大致兩種,一種是流水線形式,即是輸入和處理數(shù)據(jù)同時進(jìn)行;另一種是同時處理多個任務(wù),即是擁有多個輸入,多個任務(wù)并行處理。

評估硬件吞吐量(非并行)

沒有進(jìn)行并行化的內(nèi)核(kernel)吞吐量可以近似為:

THW = Frequency(頻率) / Computational Intensity(計算強(qiáng)度) = Frequency * max(VINPUT,VOUTPUT) / VOPS

頻率就是kernel的時鐘頻率。這個值是由特定的平臺決定,比如,Alveo U200的最大kernel時鐘是300Mhz。VINPUT,VOUTPUT是輸入輸出數(shù)據(jù),VOPS是操作總數(shù)。由此可以看出,大量的操作數(shù)和少量的數(shù)據(jù)的函數(shù)更適合加速。

確定所需的并行量

經(jīng)過上述計算后,可以估算出初始的HW/SW性能比:

Speed-up = THW/TSW = Fmax * Running Time /VOPS

沒有使用并行運算,則初始的加速(speed-up)通常會小于1。

接下來就要計算多少并行量可以滿足性能目標(biāo):

Parallelism Needed = TGoal / THW = TGoal * Vops / (Fmax * max(VINPUT, VOUTPUT))

并行方式可以通過多種方式實現(xiàn):拓展數(shù)據(jù)路徑,使用多個計算引擎,使用多個kernel實例,開發(fā)人員應(yīng)根據(jù)他們的需求和應(yīng)用程序的特點確定最佳組合方式。

確定數(shù)據(jù)路徑應(yīng)并行處理多少個樣本

一種可能性是通過創(chuàng)建更寬的數(shù)據(jù)路徑(數(shù)據(jù)的輸入和輸出的過程)然后并行處理更多數(shù)據(jù)以便加快計算速度。有些算法很適合這種方法,而有些則不適用。重要的是要了解這個算法的本質(zhì),確定這種方法是否可運用。如果可運用,那么并行處理多少數(shù)據(jù)才能滿足性能目標(biāo)也是需要考慮的。

運用更寬的數(shù)據(jù)路徑、并行處理更多數(shù)據(jù)這些方法,本質(zhì)是通過減少加速函數(shù)等待時間(運行時間)來實現(xiàn)提高性能的。

確定在FPGA中可以(應(yīng)該)實例化多少個kernel

如果數(shù)據(jù)路徑無法并行化(或不夠充分),則請考慮添加更多kernel實例,這通常被稱為使用多個計算單元(CU)。添加更多的kernel實例的本質(zhì)是允許加速函數(shù)更多的調(diào)用,從而提高應(yīng)用程序的性能,如下所示。多個數(shù)據(jù)集由不同的實例并發(fā)處理。只要主機(jī)應(yīng)用程序可以保持kernel繁忙,應(yīng)用程序的性能就會隨著實例數(shù)的增加而線性增加。

在Vitis中,很容易通過添加額外的kernel實例來提高加速性能,不需要過多的代碼調(diào)整。在這一點上,開發(fā)人員應(yīng)該充分了解硬件中滿足性能目標(biāo)所需的并行度,結(jié)合數(shù)據(jù)路徑寬度和kernel實例來達(dá)到預(yù)期的目標(biāo)。

4.

確定軟件部分并行量

雖然FPGA及其kernel旨在提供潛在的并行性,但是必須對軟件應(yīng)用程序進(jìn)行設(shè)計以便利用這種潛在的并行性。

軟件應(yīng)用程序中的并行性主要是以下幾方面:

?最大限度地減少空閑時間,并在kernel運行時執(zhí)行其他任務(wù)。

?保持kernel處于活動狀態(tài),以便盡早并經(jīng)常執(zhí)行新的計算。

?優(yōu)化與FPGA之間的數(shù)據(jù)傳輸。

host程序總是處于繁忙狀態(tài)并且計劃執(zhí)行下一步的操作,而kernel端是處理當(dāng)前的任務(wù)。所以,host程序必須統(tǒng)籌與kernel的數(shù)據(jù)傳輸,并且向kernel端發(fā)送請求,不然再多的kernel也是沒有效果的。

在kernel運行時最大程度地減少CPU空閑時間

FPGA加速是將某些計算從主機(jī)處理器轉(zhuǎn)移到FPGA的kernel中,在純順序模型中,應(yīng)用程序?qū)㈤e置地等待結(jié)果,準(zhǔn)備并回復(fù)處理。設(shè)計軟件應(yīng)用程序以避免此類空閑周期,首先是確定不依賴kernel結(jié)果的應(yīng)用程序部分,然后重新設(shè)計,以便這些函數(shù)可以在主機(jī)處理器上與FPGA中運行的kernel同時運行處理。

保持kernel利用率

Kernel是在FPGA中的,僅在應(yīng)用程序請求它們時才運行。為了最大程度地提高性能,應(yīng)使kernel一致處于繁忙(工作)狀態(tài)。從概念上講,這是通過在當(dāng)前請求完成之前發(fā)出下一個請求來實現(xiàn)的。這可以實現(xiàn)流水線式執(zhí)行和重復(fù)執(zhí)行,使kernel得到最佳利用。

原始的應(yīng)用程序重復(fù)的調(diào)用 func1,func2和func3。針對這個應(yīng)用程序?qū)?yīng)創(chuàng)建了三個kernel是K1,K2和K3。最平庸的實現(xiàn)是將三個kernel按順序運行,就像原始的應(yīng)用程序一樣。但是,這意味著每個kernel只有三分之一的時間處于工作狀態(tài)。更好的方法是重構(gòu)軟件應(yīng)用程序,以便它可以向kernel發(fā)出流水線請求。這允許K1在K2處理K1的輸出的同時開始處理新的數(shù)據(jù)集。通過這個方法,三個kernel以最大化的利用率不斷運行。

優(yōu)化與FPGA之間的數(shù)據(jù)傳輸

在加速的應(yīng)用程序中,必須將數(shù)據(jù)從主機(jī)傳輸?shù)紽PGA,尤其是基于PCIe的應(yīng)用程序中。這就引入了延遲,對于應(yīng)用程序的整體性能而言,可能是非常昂貴的。數(shù)據(jù)需要在正確的時間被傳輸,如果kernel的運行需要等待數(shù)據(jù),那么應(yīng)用程序的性能會收到負(fù)面影響。因此,重要的是在kernel需要數(shù)據(jù)時提前傳輸數(shù)據(jù)。這可以通過重復(fù)數(shù)據(jù)傳輸、kernel執(zhí)行來實現(xiàn),這可以隱藏數(shù)據(jù)傳輸?shù)牡却龝r間開銷,并避免kernel等待數(shù)據(jù)的情況。

優(yōu)化數(shù)據(jù)傳輸?shù)牧硪环N方法是傳輸最佳大小的緩沖區(qū)。如下圖所示,有效的PCIe吞吐量根據(jù)傳輸?shù)木彌_區(qū)大小而有很大的差異。緩沖區(qū)越大,吞吐量越好,從而確保加速器始終具有可操作的數(shù)據(jù)而不會浪費時間。通常來說,最好進(jìn)行1MB或更大的數(shù)據(jù)傳輸。預(yù)先運行DMA測試對于找到最佳緩沖區(qū)大小可能很有用。同樣,在確定最佳緩沖區(qū)大小時,請考慮大緩沖區(qū)對資源利用率和傳輸延遲的影響。

Xilinx建議在一個公共緩沖區(qū)內(nèi)對多組數(shù)據(jù)進(jìn)行分組,以實現(xiàn)最大可能的吞吐量。

概念化應(yīng)用程序時間線

開發(fā)人員現(xiàn)在應(yīng)該對哪些函數(shù)需要加速,需要什么并行性才能達(dá)到性能目標(biāo)以及如何交付應(yīng)用程序有很好的了解。在這一點上,以應(yīng)用程序時間表的形式總結(jié)信息是非常有用的。應(yīng)用程序時間軸序列(例如“保持Kernels使用率”中所示的序列)是應(yīng)用程序在運行時表現(xiàn)性能和并行化非常有效的方法。它們可以展示應(yīng)用程序如何調(diào)動體系結(jié)構(gòu)中潛在的并行性。

Vitis軟件平臺會從實際應(yīng)用程序運行中生成時間軸視圖。如果開發(fā)人員設(shè)計了預(yù)期的時間表,則可以將其與實際結(jié)果進(jìn)行比較,從而確定潛在的問題,然后迭代并收斂到最佳結(jié)果,如上圖所示。

5.

微調(diào)架構(gòu)細(xì)節(jié)

在正式編寫應(yīng)用程序及其kernel之前,還有最后一步:從頂層決策中細(xì)化和提煉次級體系架構(gòu)的細(xì)節(jié)。

確定最終kernel邊界

之前已經(jīng)有過討論,通過創(chuàng)建多個kernel的示例可以提高性能。然而,增加CU(compute unit)會對IO端口,帶寬和資源有額外地消耗。

在Vitis軟件平臺流程中,kernel端口的最大寬度為512,并且FPGA在資源方面也具有固定的成本,并不是無限消耗。重要的是,目標(biāo)平臺也對可使用的最大端口設(shè)置了限制。所以我們要注意這些限制,以最佳方式充分使用這些端口及其帶寬。

使用多個CU進(jìn)行擴(kuò)展的另一種方法是通過在內(nèi)核中添加多個引擎(engine)進(jìn)行擴(kuò)展。與添加更多CU的方式來提高性能一樣,此方法就是用在內(nèi)核中的不同engine同時處理多個數(shù)據(jù)集。

將多個engine放置在同一kernel中可充分利用kernel I / O端口的帶寬。如果數(shù)據(jù)路徑engine不需要端口的全部寬度,則在kernel中添加其他engine比在其中創(chuàng)建具有單個engine的多個CU效率更高。

在kernel中放置多個engine還可以減少端口數(shù)量和事務(wù)數(shù)量到需要仲裁的全局內(nèi)存中,從而提高了有效帶寬。另一方面,采用這種方法需要在開發(fā)kernel時考慮I / O多路復(fù)用行為,盡可能地減少全局內(nèi)存的訪問。這是開發(fā)人員需要做出的權(quán)衡。

確定kernel的位置和連接性

確定kernel邊界后,開發(fā)人員要明確實例kernel的數(shù)量和連接到全局內(nèi)存資源的端口數(shù)量。在這一點上,了解目標(biāo)平臺的功能以及哪些全局內(nèi)存資源可用很重要。例如,AlveoU200數(shù)據(jù)中心加速卡具有分布在三個超級邏輯區(qū)域(SLR)中的4 x 16 GB DDR4存儲區(qū)和3 x 128 KB的PLRAM存儲區(qū)。有關(guān)更多信息,請參閱《 Vitis Software Platform Release Notes》。

如果kernel是工廠,則全局內(nèi)存是貨物往返工廠的倉庫。SLR就像獨特的工業(yè)區(qū),可以在其中建立倉庫和工廠。雖然可以將貨物從一個區(qū)域的倉庫轉(zhuǎn)移到另一個區(qū)域的工廠,但這會增加延遲和復(fù)雜性。

使用多個DDR有助于平衡數(shù)據(jù)傳輸負(fù)載并提高性能。但是,這也會帶來成本,因為每個DDR控制器都會消耗FPGA資源。在決定如何將kernel端口連接到內(nèi)存庫時,請均衡這些考慮因素。

在完善了這些架構(gòu)細(xì)節(jié)之后,開發(fā)人員就應(yīng)該已經(jīng)掌握kernel以及整個應(yīng)用程序所需的所有信息了。

原文標(biāo)題:開發(fā)者分享 | 如何確定一個硬件加速應(yīng)用

文章出處:【微信公眾號:FPGA開發(fā)圈】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

責(zé)任編輯:haq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1645

    文章

    22046

    瀏覽量

    618293
  • 硬件
    +關(guān)注

    關(guān)注

    11

    文章

    3483

    瀏覽量

    67486

原文標(biāo)題:開發(fā)者分享 | 如何確定一個硬件加速應(yīng)用

文章出處:【微信號:FPGA-EETrend,微信公眾號:FPGA開發(fā)圈】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    Arm推出GitHub Copilot新擴(kuò)展程序,助力快速遷移至Arm架構(gòu)服務(wù)器

    者工具之一,此次推出的擴(kuò)展程序能讓數(shù)百萬Copilot用戶更容易地訪問Arm?架構(gòu)的技術(shù),并為開發(fā)者提供更友好的體驗。此外,此次發(fā)布亦首次為全球開發(fā)者免費提供了完整的
    的頭像 發(fā)表于 03-04 16:07 ?612次閱讀
    Arm推出GitHub Copilot新擴(kuò)展<b class='flag-5'>程序</b>,助力快速遷移至Arm<b class='flag-5'>架構(gòu)</b>服務(wù)器

    Arm推出GitHub Copilot新擴(kuò)展程序

    工智能 (AI) 開發(fā)者工具之一,此次推出的擴(kuò)展程序能讓數(shù)百萬 Copilot 用戶更容易地訪問 Arm 架構(gòu)的技術(shù),并為開發(fā)者提供更友好的體驗。此外,此次發(fā)布亦首次為全球
    的頭像 發(fā)表于 02-24 10:14 ?556次閱讀

    DAC7714總是在程序的最后一個通道才可以驅(qū)動,程序三個通道無法獲得正確的電壓,為什么?

    DAC7714四通道,用dsp的spi控制,245電平轉(zhuǎn)換,對四通道均進(jìn)行驅(qū)動,總是在程序的最后一個通道才可以驅(qū)動,程序三個通道無法獲得正確的電壓
    發(fā)表于 02-12 06:11

    基于HPM_SDK_ENV開發(fā)應(yīng)用程序的升級處理

    基于HPM_SDK_ENV開發(fā)應(yīng)用程序的方式HPM_SDK_ENV是先楫半導(dǎo)體MCU的Windows集成開發(fā)環(huán)境,其包含HPM_SDK,工具鏈,依賴工具(cmake,ninja,openocd等
    的頭像 發(fā)表于 02-08 13:38 ?1016次閱讀
    基于HPM_SDK_ENV<b class='flag-5'>開發(fā)</b>應(yīng)用<b class='flag-5'>程序</b>的升級處理

    JetBrains IDE上架開發(fā)微信小程序的官方插件

    一直以來,小程序開發(fā)者必須安裝第三方插件,才能在 JetBrains IDE 中進(jìn)行小程序開發(fā)。在 JetBrains Marketplace 上,有關(guān)插件已有約 50 萬下載量。 對
    的頭像 發(fā)表于 01-16 17:15 ?670次閱讀
    JetBrains IDE上架<b class='flag-5'>開發(fā)</b>微信小<b class='flag-5'>程序</b>的官方插件

    基于QT開發(fā)國產(chǎn)主板終端桌面程序 高效、穩(wěn)定、跨平臺的解決方案

    隨著國產(chǎn)化進(jìn)程的加速,越來越多的企業(yè)和開發(fā)者開始關(guān)注國產(chǎn)硬件平臺的應(yīng)用開發(fā)。國產(chǎn)主板作為硬件核心,其性能和穩(wěn)定性已經(jīng)得到了廣泛認(rèn)可。然而,如何在這些硬件平臺上開發(fā)高效、穩(wěn)定的終端桌面
    的頭像 發(fā)表于 01-08 15:34 ?860次閱讀

    開發(fā)第1個LVGL程序與實現(xiàn)按鍵操作

    開發(fā)第1個LVGL程序與實現(xiàn)按鍵操作
    的頭像 發(fā)表于 01-07 13:49 ?2926次閱讀
    <b class='flag-5'>開發(fā)</b>第1個LVGL<b class='flag-5'>程序</b>與實現(xiàn)按鍵操作

    程序和進(jìn)程的區(qū)別

    比如: 開發(fā)寫的代碼我們稱為程序,那么將開發(fā)的代碼運行起來。我們稱為進(jìn)程。
    的頭像 發(fā)表于 11-25 16:03 ?1232次閱讀
    <b class='flag-5'>程序</b>和進(jìn)程的區(qū)別

    好的PLC程序要達(dá)到這6個標(biāo)準(zhǔn)!

    下面我們就請前方專業(yè)的技術(shù)工程師來給我們介紹一下什么樣的PLC程序算是好的程序呢?好的PLC程序中有哪些特點呢?大體有如下幾個方面: 1、正確性(調(diào)試成本低) PLC
    的頭像 發(fā)表于 10-19 16:58 ?555次閱讀
    好的PLC<b class='flag-5'>程序</b>要達(dá)到這6個標(biāo)準(zhǔn)!

    TPS54120的設(shè)計程序

    電子發(fā)燒友網(wǎng)站提供《TPS54120的設(shè)計程序.pdf》資料免費下載
    發(fā)表于 10-10 10:52 ?0次下載
    TPS54120的設(shè)<b class='flag-5'>計程序</b>

    stm32單片機(jī)燒錄程序會擦除原來的程序

    的二進(jìn)制文件寫入單片機(jī),并在此過程中自動擦除原有的程序內(nèi)容。 具體來說,當(dāng)使用燒錄工具進(jìn)行燒錄時,用戶通常只需要選擇正確的芯片型號和連接方式,然后將待燒錄的程序文件加載到工具中。接下來,燒錄工具會自動執(zhí)行擦除和寫入操作。在這個過
    的頭像 發(fā)表于 09-02 09:42 ?4690次閱讀

    燒錄器可以讀出芯片程序

    燒錄器是一種用于將程序代碼寫入芯片的設(shè)備。它通常用于開發(fā)和測試階段,以確保程序能夠正確地運行在目標(biāo)硬件上。然而,燒錄器的功能并不僅限于寫入程序
    的頭像 發(fā)表于 08-22 09:22 ?5128次閱讀

    如何正確選用SCR架構(gòu)TVS以避免閂鎖效應(yīng)

    AMAZINGIC晶焱科技如何正確選用SCR架構(gòu)TVS以避免閂鎖效應(yīng)
    的頭像 發(fā)表于 08-12 18:31 ?1835次閱讀
    如何<b class='flag-5'>正確</b>選用SCR<b class='flag-5'>架構(gòu)</b>TVS以避免閂鎖效應(yīng)

    京東小程序數(shù)據(jù)中心架構(gòu)設(shè)計與最佳實踐

    一、京東小程序是什么 京東小程序平臺能夠提供開放、安全的產(chǎn)品,成為品牌開發(fā)者鏈接京東內(nèi)部核心產(chǎn)品的橋梁,致力于服務(wù)每一個信任我們的外部開發(fā)者,為不同
    的頭像 發(fā)表于 08-08 11:20 ?687次閱讀
    京東小<b class='flag-5'>程序</b>數(shù)據(jù)中心<b class='flag-5'>架構(gòu)</b>設(shè)計與最佳實踐

    plc程序丟失怎么恢復(fù)回來

    因為各種原因丟失,如硬件故障、軟件錯誤、人為操作失誤等。 1. 確定程序丟失的原因 在開始恢復(fù)程序之前,首先需要確定程序丟失的原因。這有助于采取正確的恢復(fù)措施,并防止類似問題再次發(fā)生。
    的頭像 發(fā)表于 07-25 10:08 ?4775次閱讀