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

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

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

JEDEC定義了一種串行復(fù)位協(xié)議,用以取代專用復(fù)位引腳

NJ90_gh_bee81f8 ? 來源:面包板社區(qū) ? 2019-12-08 09:19 ? 次閱讀

行業(yè)標(biāo)準(zhǔn)組織JEDEC定義了一種串行復(fù)位協(xié)議,用以取代專用復(fù)位引腳。

今天的嵌入式系統(tǒng),例如智能設(shè)備和物聯(lián)網(wǎng)終端,通常都要求在實現(xiàn)高性能與低功耗的同時提供實時啟動功能。所有電子系統(tǒng)還要具備從瞬態(tài)故障引起的狀況中恢復(fù)的能力。這些故障通常與信號完整性密切相關(guān),這使得當(dāng)今的高速系統(tǒng)設(shè)計更具挑戰(zhàn)性。

從運行時出現(xiàn)的故障中恢復(fù)通常需要能夠?qū)ο到y(tǒng)的全部或部分進(jìn)行受控復(fù)位。極端情況下,若尚未提供軟復(fù)位功能,此時就可能會提示需要重新啟動設(shè)備。而對于遠(yuǎn)程的物聯(lián)網(wǎng)終端來說,重啟可能存在困難而且成本高昂。這只是說明嵌入式設(shè)計中復(fù)位功能重要性的一個示例。

串行外設(shè)接口(SPI)廣泛應(yīng)用于將外設(shè)和存儲器連接到嵌入式系統(tǒng)中的微控制器處理器中。復(fù)位串行閃存是初始化或恢復(fù)的重要部分。為使主機處理器能夠更容易地重置SPI存儲器,行業(yè)標(biāo)準(zhǔn)組織JEDEC定義了一種串行復(fù)位協(xié)議,替代了使用專用復(fù)位引腳來進(jìn)行復(fù)位。本文介紹了該復(fù)位協(xié)議及其用法,特別參考了擴展SPI(xSPI)和串行非易失性存儲器的執(zhí)行代碼。

SPI閃存的作用

串行接口相對于并行總線的主要優(yōu)點是減少了所需信號數(shù)量。在大多數(shù)情況下,較少的信號和I/O引腳可降低元件成本與功耗,因為驅(qū)動片外信號所需的功率是總功率消耗的主力軍。

最初的SPI規(guī)范包括四種信號:一個串行時鐘(SCLK)信號,用于同步數(shù)據(jù)傳輸;一個或多個芯片選擇(SS)信號用于實現(xiàn)尋址多個目標(biāo);以及兩個數(shù)據(jù)信號(MOSI和MISO),用于在每個方向上傳輸數(shù)據(jù)。該標(biāo)準(zhǔn)目前已經(jīng)以各種方式進(jìn)行了擴展以實現(xiàn)更高的性能,現(xiàn)在更拓展了通過SPI接口執(zhí)行軟復(fù)位的功能。


串行外設(shè)接口(SPI)(來源:Adesto Technologies)

SPI接口不斷演變和發(fā)展以擴大帶寬,其變體現(xiàn)在包括dual SPI(雙線SPI),它使用半雙工配置中的兩個數(shù)據(jù)引腳在每時鐘周期內(nèi)發(fā)送兩個bit的數(shù)據(jù);還有quad SPI(四線SPI)和octal SPI(八線SPI),它們增加了更多數(shù)據(jù)線,使得每個時鐘周期可以傳輸更多位數(shù)。此外,這些SPI都可在雙倍數(shù)據(jù)速率(DDR)模式下使用,且支持在兩個時鐘邊緣傳輸數(shù)據(jù)。

Quad和Octal SPI接口由JEDEC的擴展SPI(xSPI)標(biāo)準(zhǔn)JESD251定義,該標(biāo)準(zhǔn)提供的硬件指導(dǎo)可以實現(xiàn)系統(tǒng)中高吞吐量xSPI器件的無故障集成。

最近,JEDEC還定義并發(fā)布了一個標(biāo)準(zhǔn),規(guī)定了通過串行接口重置設(shè)備。該復(fù)位協(xié)議在JEDEC標(biāo)準(zhǔn)JESD252中定義,它取消了在串行閃存中使用專用復(fù)位引腳來進(jìn)行復(fù)位的需求。

該標(biāo)準(zhǔn)定義了芯片選擇信號、時鐘信號和輸入數(shù)據(jù)信號需要遵循的特定順序,以使器件執(zhí)行硬件復(fù)位。使用該模式使得由串行數(shù)據(jù)線上的噪聲引起的偽轉(zhuǎn)換不會導(dǎo)致意外復(fù)位。在復(fù)位期間,時鐘信號保持低電平,進(jìn)一步確保了引腳轉(zhuǎn)換不會被解釋為數(shù)據(jù)傳輸,而芯片選擇引腳則用于確保僅復(fù)位特定的器件。


復(fù)位協(xié)議(來源:Adesto Technologies)

SPI閃存被廣泛應(yīng)用于嵌入式產(chǎn)品,特別是用于其代碼。這使得它對系統(tǒng)整體功能而言顯得至關(guān)重要,因此必須保持可靠的運行,包括具備必要時發(fā)起復(fù)位的能力。

利用復(fù)位進(jìn)行初始化和恢復(fù)

系統(tǒng)通常在通電時使用復(fù)位功能來確保系統(tǒng)中所有器件都以已知狀態(tài)啟動。復(fù)位還可用于在運行期間從可能由硬件問題引起的嚴(yán)重故障中恢復(fù),其中包括信號完整性問題和時序問題、電磁干擾或由背景輻射引起的隨機存儲器損壞(另請參見《MiTIgating Metastability》這篇文章);還可用于由軟件錯誤可能導(dǎo)致的程序崩潰和無響應(yīng)。

這些偶發(fā)的錯誤對于消費者可能是僅僅造成不便,但對于具有數(shù)千個節(jié)點需要高可用性的物聯(lián)網(wǎng)而言,卻是一個嚴(yán)重的問題。在越來越多的情況下,手動復(fù)位或重啟這些物聯(lián)網(wǎng)設(shè)備變得越來越不可能。嵌入式系統(tǒng)通常使用看門狗定時器和其它自檢機制來檢測故障并采取糾正措施。這就可能意味著執(zhí)行“軟”復(fù)位,其中只有必要的子系統(tǒng)在處理器的控制下被復(fù)位。

SPI接口是有狀態(tài)的(stateful)。例如,在接收到命令之后,閃存將期望有一定數(shù)量的地址或數(shù)據(jù)傳輸。導(dǎo)致主機和內(nèi)存之間失去同步的任何錯誤都將引起不可預(yù)測的行為。要從中恢復(fù),主機需要能夠通過執(zhí)行軟復(fù)位將串行存儲器重置為已知狀態(tài)。這種復(fù)位有助于保持系統(tǒng)穩(wěn)定,而且是在沒有看到任何外部故障指示的情況下進(jìn)行的。也因為如此,軟復(fù)位現(xiàn)在被認(rèn)為是嵌入式系統(tǒng)操作的一個標(biāo)準(zhǔn)特性。

有些串行閃存可能有一個專用的復(fù)位引腳;但另一些則使用多路復(fù)用以減少引腳數(shù),此時,復(fù)位引腳同時也是一個I/O引腳;但有時候,制造商可能根本不提供復(fù)位功能。即使有復(fù)位引腳,專門指定微控制器的一個輸出去控制它也不實際。

JESD252規(guī)范的產(chǎn)生使得串行閃存設(shè)備無需專用或物理復(fù)位引腳仍然可以支持復(fù)位功能。除了故障恢復(fù)之外,還可以在上電啟動時使用串行復(fù)位機制,以確保電源穩(wěn)定后串行存儲器也能正確啟動。

芯片內(nèi)執(zhí)行(XiP)

傳統(tǒng)的串行閃存通過低速SPI連接,這意味著如果這些器件用于存儲程序存儲器,則處理器在執(zhí)行代碼之前必須先將代碼復(fù)制到片上SRAM中。而芯片內(nèi)執(zhí)行,即XiP,是通過提供更快更寬的接口省去了代碼復(fù)制步驟的串行閃存。反過來,這減少了對片上SRAM的需求,從而降低了主機微控制器或處理器的價格。

與其他八通道器件相比,Adesto的EcoXiP采用octal SPI接口,具有高性能和極低功耗,并且具有比quad-SPI存儲器高得多的性能。


Execution modes (Source: Adesto Technologies)
執(zhí)行模式 (來源: Adesto Technologies)

對于現(xiàn)代嵌入式設(shè)備來說,XiP的開發(fā)極具價值,不僅僅是因為片上閃存的昂貴和尺寸上的限制。微控制器通常最多具有1 MB的內(nèi)存,但現(xiàn)代物聯(lián)網(wǎng)節(jié)點通常需要更多的代碼空間用于通信堆棧、無線接口、音頻處理、機器視覺和應(yīng)用軟件等功能。利用XiP的外部閃存可以實現(xiàn)更大的代碼存儲空間。而且由于減去了代碼傳輸階段,啟動時間也縮短了。

XiP的使用使得SRAM無需存儲代碼而是僅用于存儲數(shù)據(jù),從而減少了所需的SRAM數(shù)量。因為削減了對外部SRAM的需求或允許微控制器使用較少的片上SRAM,系統(tǒng)成本也相應(yīng)降低。由于NOR閃存(非易失性閃存)允許隨機訪問,而微控制器需要將串行接口映射到其自己的存儲空間,因此它被視為另一個存儲區(qū)域,從而支持XiP。為了進(jìn)一步提高性能,EcoXiP還針對代碼執(zhí)行進(jìn)行了優(yōu)化。

標(biāo)準(zhǔn)SPI接口設(shè)計都支持隨機訪問;每次讀取都包含命令、地址和返回的數(shù)據(jù)。數(shù)據(jù)返回后,才可以進(jìn)行再次請求。但是,指令通常從連續(xù)地址中獲取。EcoXiP接口充分利用了這一點,為每個讀取請求提供連續(xù)字節(jié),直到具有新地址的命令被發(fā)送為止。這使得總線吞吐量加倍,因為消除了為每次提取發(fā)送新地址的延遲。

EcoXiP可以持續(xù)以156MB/s(峰值速率為266 MB/s)的速率發(fā)送指令。

傳統(tǒng)NOR閃存的另一個問題是寫入比讀取慢幾個數(shù)量級。這意味著當(dāng)代碼在閃存中執(zhí)行時無法將數(shù)據(jù)寫入閃存,因為這樣會對性能產(chǎn)生重大影響。EcoXiP通過靈活地將存儲器劃分為獨立的存儲體來支持并發(fā)讀寫。這使得采用XiP可以在執(zhí)行代碼的同時,將數(shù)據(jù)保存到存儲器并執(zhí)行(Over-the-AIr,OTA)空中更新。

對JEDEC標(biāo)準(zhǔn)的支持,包括遠(yuǎn)程復(fù)位的支持,使業(yè)界采用XiP串行閃存變得更加簡單。

結(jié)論

在主處理器的控制下能夠復(fù)位串行閃存是嵌入式系統(tǒng)的重要需求。JEDEC JESD252串行復(fù)位協(xié)議可實現(xiàn)該功能,而無需存儲器上的復(fù)位引腳或來自微控制器或主機處理器的專門信號。

盡管使用串行復(fù)位和XiP會影響主機和存儲器的設(shè)計,還是有越來越多的微控制器正在增加對這些標(biāo)準(zhǔn)的支持。Adesto是第一家提供串行NOR閃存的制造商,其產(chǎn)品支持串行閃存復(fù)位信令協(xié)議和xSPI標(biāo)準(zhǔn)。EcoXiP可在提供所需執(zhí)行能力的同時降低系統(tǒng)功耗與成本。它還兼容串行閃存發(fā)現(xiàn)標(biāo)準(zhǔn),并具有改善能效和安全的其它特性。

擁有上述技術(shù),嵌入式工程師可以更好地應(yīng)對開發(fā)物聯(lián)網(wǎng)產(chǎn)品時所面臨的挑戰(zhàn)。

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

    關(guān)注

    41

    文章

    3551

    瀏覽量

    129106
  • SPI
    SPI
    +關(guān)注

    關(guān)注

    17

    文章

    1688

    瀏覽量

    91213
  • JEDEC
    +關(guān)注

    關(guān)注

    1

    文章

    36

    瀏覽量

    17414

原文標(biāo)題:JEDEC軟復(fù)位——嵌入式開發(fā)人員的福音

文章出處:【微信號:gh_bee81f890fc1,微信公眾號:面包板社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    復(fù)位電路的三方式 復(fù)位電路的原理和作用

    復(fù)位電路是一種電子電路,用于將微控制器或其他電子設(shè)備重置到其初始狀態(tài)。這種電路通常在設(shè)備啟動時或在需要清除當(dāng)前狀態(tài)以避免錯誤時使用。 1. 上電復(fù)位(Power-On Reset, POR
    的頭像 發(fā)表于 10-21 10:28 ?266次閱讀

    復(fù)位電路靜電整改案例分享()——交換機復(fù)位電路

    ? ?復(fù)位電路靜電整改案例分享()——交換機復(fù)位電路 、摘要 復(fù)位電路可確保電路在啟動時處于可控的狀態(tài),避免上電造成的未知問題。
    的頭像 發(fā)表于 10-19 14:56 ?235次閱讀
    <b class='flag-5'>復(fù)位</b>電路靜電整改案例分享(<b class='flag-5'>一</b>)——交換機<b class='flag-5'>復(fù)位</b>電路

    復(fù)位電路介紹 復(fù)位電路的原理及作用

    復(fù)位電路(Reset Circuit)是現(xiàn)代電子設(shè)備中常見的一種關(guān)鍵電路,它用于確保在正確的時間和條件下將系統(tǒng)恢復(fù)到初始狀態(tài)。復(fù)位電路的設(shè)計和應(yīng)用對于保障電子系統(tǒng)的穩(wěn)定性和可靠性至關(guān)重要。
    的頭像 發(fā)表于 10-18 16:44 ?574次閱讀

    STM32復(fù)位電路用復(fù)位芯片和阻容復(fù)位電路區(qū)別

    STM32是款廣泛使用的微控制器,其復(fù)位電路設(shè)計對于系統(tǒng)的穩(wěn)定性和可靠性至關(guān)重要。本文將詳細(xì)介紹STM32復(fù)位電路中使用復(fù)位芯片和阻容復(fù)位
    的頭像 發(fā)表于 08-06 10:26 ?957次閱讀

    雙管正激勵磁復(fù)位電路的作用

    雙管正激勵磁復(fù)位電路是一種廣泛應(yīng)用于電子設(shè)備中的電路,它具有多種功能和優(yōu)點。 、雙管正激勵磁復(fù)位電路的作用 雙管正激勵磁復(fù)位電路是
    的頭像 發(fā)表于 08-02 15:41 ?362次閱讀

    FPGA同步復(fù)位和異步復(fù)位

    FPGA(Field-Programmable Gate Array,現(xiàn)場可編程門陣列)中的復(fù)位操作是設(shè)計過程中不可或缺的環(huán),它負(fù)責(zé)將電路恢復(fù)到初始狀態(tài),以確保系統(tǒng)的正確啟動和穩(wěn)定運行。在FPGA設(shè)計中,復(fù)位方式主要分為同步
    的頭像 發(fā)表于 07-17 11:12 ?1229次閱讀

    ABB變頻器怎么復(fù)位 | 復(fù)位時可能會出現(xiàn)哪些問題?

    ABB變頻器是一種應(yīng)用廣泛的工業(yè)自動化設(shè)備,廣泛應(yīng)用于電機控制、電力傳輸、風(fēng)機控制和制造等領(lǐng)域。然而,在使用ABB變頻器的過程中,有時候我們可能需要對設(shè)備進(jìn)行復(fù)位,以達(dá)到重新設(shè)置和調(diào)整的目的。那么
    的頭像 發(fā)表于 02-21 10:50 ?6848次閱讀
    ABB變頻器怎么<b class='flag-5'>復(fù)位</b> | <b class='flag-5'>復(fù)位</b>時可能會出現(xiàn)哪些問題?

    如何排查GD32 MCU復(fù)位是由哪個復(fù)位源導(dǎo)致的?

    上期為大家講解了GD32 MCU復(fù)位包括電源復(fù)位和系統(tǒng)復(fù)位,其中系統(tǒng)復(fù)位還包括獨立看門狗復(fù)位、內(nèi)核軟復(fù)位
    的頭像 發(fā)表于 02-03 09:46 ?1623次閱讀
    如何排查GD32 MCU<b class='flag-5'>復(fù)位</b>是由哪個<b class='flag-5'>復(fù)位</b>源導(dǎo)致的?

    GD32 MCU電源復(fù)位和系統(tǒng)復(fù)位有什么區(qū)別

    GD32 MCU的復(fù)位分為電源復(fù)位和系統(tǒng)復(fù)位,電源復(fù)位又稱為冷復(fù)位,相較于系統(tǒng)復(fù)位,上電
    的頭像 發(fā)表于 02-02 09:37 ?1398次閱讀
    GD32 MCU電源<b class='flag-5'>復(fù)位</b>和系統(tǒng)<b class='flag-5'>復(fù)位</b>有什么區(qū)別

    同步復(fù)位和異步復(fù)位到底孰優(yōu)孰劣呢?

    同步復(fù)位和異步復(fù)位到底孰優(yōu)孰劣呢? 同步復(fù)位和異步復(fù)位是兩不同的復(fù)位方式,它們各自有優(yōu)勢和劣勢
    的頭像 發(fā)表于 01-16 16:25 ?1581次閱讀

    復(fù)位電路的復(fù)位條件和復(fù)位過程

    電源監(jiān)測芯片復(fù)位電路:這是最常見的復(fù)位電路類型,使用專用的電源監(jiān)測芯片來監(jiān)測電源電壓,并在電壓低于或高于預(yù)設(shè)閾值時觸發(fā)復(fù)位信號。
    的頭像 發(fā)表于 01-16 16:04 ?1159次閱讀

    stm32復(fù)位電容容值

    統(tǒng)電源穩(wěn)定、提供復(fù)位功能。 復(fù)位電容是連接在微控制器的復(fù)位引腳和地之間的電容器。在啟動或復(fù)位過程中,復(fù)位
    的頭像 發(fā)表于 01-05 17:39 ?1626次閱讀

    ht7044a復(fù)位原理

    HT7044A 是一種復(fù)位電路芯片,常用于電子設(shè)備中實現(xiàn)對系統(tǒng)的復(fù)位功能。復(fù)位項重要的功能,用于將整個系統(tǒng)恢復(fù)到初始狀態(tài),以確保系統(tǒng)在啟
    的頭像 發(fā)表于 01-04 11:24 ?1495次閱讀

    啟動轉(zhuǎn)換,需要給復(fù)位引腳復(fù)位信號嗎?

    圖中,可看到啟動轉(zhuǎn)換前送入復(fù)位信號,搞不清這個復(fù)位信號是內(nèi)部產(chǎn)生的,還是外部操作復(fù)位引腳產(chǎn)生的,因在手冊中數(shù)字
    發(fā)表于 12-11 06:15

    復(fù)位那些小事—系統(tǒng)解復(fù)位的特殊處理

    復(fù)位就是復(fù)位撤離,系統(tǒng)解復(fù)位就是復(fù)位結(jié)束系統(tǒng)準(zhǔn)備開始工作。
    的頭像 發(fā)表于 12-04 15:25 ?1521次閱讀
    <b class='flag-5'>復(fù)位</b>那些小事—系統(tǒng)解<b class='flag-5'>復(fù)位</b>的特殊處理