產品分類

      當前位置: 首頁 > 工業電子產品 > 半導體產品 > 存儲器

      類型分類:
      科普知識
      數據分類:
      存儲器

      利用 HyperBus 擴展微型物聯網和可穿戴式設計中的存儲器以節省空間和成本

      發布日期:2022-10-09 點擊率:167

      隨著物聯網節點和可穿戴設備不斷縮小,設計人員需要最大限度地利用微控制器的板載存儲器來盡量節省電路板空間、功耗和成本。但是,存儲器擴展有時是無法避免的。設計人員應考慮用 HyperBus 代替默認的 32 位控制器的總線結構;HyperBus 是一種高速、333 Mbps、8 位雙倍數據速率 (DDR) 接口,可支持地址和數據處理。

      盡管設計人員試圖避免擴展,但在開發過程中由于存儲器需求增加,常常有必要加以擴展。或者,為使設計在未來不會落伍,開發人員會預測未來的擴展需求。

      借助 HyperBus,微控制器能夠在同一總線上支持外部閃存和 RAM,而不像典型的 32 位接口那樣使用 16 位數據總線和 16 位地址總線以及相關的控制引腳。它適用于任何具有 HyperBus 接口端口的存儲器件,并且是一種高效易用的接口,支持空間受限的應用使用很少的引腳來擴展存儲器。

      雖然該總線的操作對固件是透明的,但新接觸 HyperBus 的開發人員必須熟悉高速總線信號的操作以確保設計穩健。本文首先說明 HyperBus 的操作,然后介紹包含該接口的微控制器,并向用戶展示如何有效地加以應用并測試其設計。

      HyperBus 說明

      如上所述,HyperBus 使用高速 8 位 DDR 接口來處理地址和數據。此外,每個存儲器件都有相應的差分時鐘、讀/寫鎖存信號和片選。HyperBus 可在同一總線上支持外部閃存和 RAM,并且可配合任何具有 HyperBus 兼容外設接口的微控制器使用。

      HyperBus 可設置成主/從接口,其中一個主機可以連接至總線上的一個或多個從存儲器件。HyperBus 閃存器件稱為 HyperFlash?,HyperBus DRAM 存儲器件稱為 HyperRAM?。

      總線使用差分時鐘,信號指定為 CK 和 CK#。由于 HyperBus 是 DDR 接口,數據在時鐘的上升沿和下降沿都會傳輸。時鐘僅由主器件驅動,其頻率不得超過總線上最慢 HyperBus 存儲器的額定時鐘頻率。

      雙向 8 位總線指定為 DQ[0-7],并在主從器件之間傳輸地址、數據和命令。雙向讀/寫數據選通信號(指定為 RWDS)用于鎖存數據。RWDS 由讀取數據的器件控制,如果微控制器主機正在向 HyperRAM 寫入數據,則 HyperRAM 控制 RWDS 信號。DQ[0-7] 上讀取的數據與時鐘的兩個邊沿對齊。

      各從器件的選擇是利用一個低電平有效片選信號(指定為 CS0#、CS1#、CS2# 等)。任何時候只有一個片選信號有效。所有總線事務都是由指定的片選信號從高電平變為低電平而啟動。所有總線事務都是由指定的片選信號從低電平變為高電平而終止。開發人員必須確保任何時候只有一個片選信號處于有效狀態。若非如此,可能會導致多個 HyperBus 從器件同時驅動 RWDS,這樣會造成數據損壞。

      低電平有效硬件復位信號(指定為 RESET#)由主器件驅動。拉低時,它會復位任何連接到該信號的外部 HyperBus 存儲器件的狀態,包括復位該存儲器件的內部配置寄存器。但是,它不會影響 HyperBus 存儲器件的內部存儲器的狀態。對于大多數 HyperBus 主微控制器接口,RESET# 不是 HyperBus 外設的一部分,而是一個通用 I/O 引腳。HyperBus 從器件的 RESET# 引腳上有一個弱上拉電阻,因此當浮空時,它會被拉至高電平狀態。

      微控制器上任何與 HyperBus 兼容的外設都必須符合 HyperBus 規格。一個很好的兼容 HyperBus 的微控制器例子是 STMicroelectronics 的 STM32L4R9 Arm? Cortex?-M4F(圖 1)。STM32L4R9 具有 2 MB 內部閃存和 640 KB SRAM。它有多種外設,包括兩個可配置為 HyperBus 接口的 OctoSPI 接口。

      STMicroelectro<em></em>nics STM32F4L9 微控制器示意圖(點擊放大)

      圖 1:STMicroelectronics STM32F4L9 微控制器基于帶 FPU 的 Arm? Cortex?-M4 內核,具有兩個兼容 HyperBus 的接口,此處以橙色突出顯示。(圖片來源:STMicroelectronics)

      STM32L4R9 訪問 HyperBus 外部存儲器地址,將其作為映射到微控制器 AHB 總線地址空間的存儲器,因此內核對外部存儲器的讀寫操作與內部存儲器相同。一旦配置好外部存儲器件,HyperBus 的操作對內核便是透明的。

      HyperBus 存儲器全部是 16 位寬存儲器,因此 STM32L4R9 的所有訪問都必須在 16 位存儲器邊界上。STM32L4R9 主器件的數據訪問可以是 16 位或 32 位,也必須在對齊的邊界上。

      HyperBus 上的典型讀或寫事務包括一系列連續的 16 位、一個時鐘周期的數據傳輸,通過兩個相應的 8 位寬、半時鐘周期的數據傳輸實現,每個單端時鐘沿或差分時鐘交叉完成一個。讀寫事務總是傳輸完整的 16 位字數據。讀數據字總是包含兩個有效字節。寫數據字的一個或兩個字節可以屏蔽起來,以防止在寫猝發期間寫入個別字節。HyperBus 協議不支持字節傳輸,也不支持位分段等位操作。

      STM32L4R9 上的每個 HyperBus 兼容端口都有一個專用 256 MB 存儲器映射地址空間,映射如下:

      HyperBus1 (OctoSPI1) 0x90000000 至 0x9FFFFFFF
      HyperBus2 (OctoSPI2) 0x70000000 至 0x7FFFFFFF

      對于要訪問的 HyperFlash 或 HyperRAM 存儲器件的內部地址,相對于上述位置的基本存儲器地址發生偏移。例如,若 STM32F4L9 讀取存儲器位置 0x90000047,它將讀回在 HyperBus1 上存儲器位置 0x0047 訪問的存儲器件中存儲的值。

      Cypress Semiconductor 制定了 HyperBus 規格,而且還擁有 HyperBus 存儲器產品線。Cypress S26KS512SDPBHI020 64 MB x 8 HyperFlash 存儲器可以輕松連接到其中一個 OctoSPI 端口。它支持對最多 32 個 16 位字進行封裝猝發訪問。鑒于最大時鐘速率為 166.6 MHz,S26KS512 HyperFlash 支持 333 MB/s 的最高持續讀取速率。在 OctoSPI 的最大 60 MHz 時鐘速率下,STM32L4R9 可以最高 120 MB/s 的速率讀取任何外部 HyperBus 存儲器。

      如果通過 Cortex-M4 系統總線訪問 HyperFlash,則 STM32L4R9 可以直接從該閃存執行代碼。當用于代碼存儲器時,OctoSPI 支持集成預取緩沖器的 eXecute In Place (XIP),其從外部存儲器加載下一存儲器地址。

      Cypress Semiconductor S27KS0641DPBHI020 8 MB x 8 HyperRAM 存儲器是一款自刷新式 DRAM,可擴展 STM32L4R9 數據存儲器。它支持對最多 64 個 16 位字進行封裝猝發訪問。S27KS0641 HyperRAM 還支持高達 333 MB/s 的持續讀取速率,并且 STM32L4R9 可以最大 120 MB/s 的速率讀取該存儲器。

      與 HyperBus 存儲器接口

      STM32L4R9 有兩個 HyperBus 兼容端口,每個端口都可以單獨連接到 HyperRAM 和 HyperFlash 外部存儲器件(圖 2)。RESET# 信號是可選的,因此圖中沒有顯示。借助 Cypress HyperFlash 和 HyperRAM,STM32L4R9 可以輕松擴展內部存儲器,同時對印刷電路板尺寸和設計復雜性的影響極小。

      帶兩個 HyperBus 兼容端口的 STMicroelectro<em></em>nics STM32L4R9 圖片

      圖 2:STM32L4R9 有兩個 HyperBus 兼容端口,每個端口都可以單獨連接到 HyperRAM 和 HyperFlash 外部存儲器件。(圖片來源:STMicroelectronics)

      對布局布線來說,最重要的信號是 DQ[0-7] 和 RWDS。為獲得最佳性能,這些信號在印刷電路板的微控制器和存儲器之間的長度應盡可能短。

      差分時鐘信號 CK 和 CK# 應彼此相鄰,并且對于信號全長,其間的間距應保持不變。如果可能,應使用 VSS 防護走線屏蔽 CK 和 CK#,以最大限度地降低 EMI。為了盡量減少阻抗不匹配,應使用下方的實心 VSS 層分接印刷電路板頂層上的所有信號。

      HyperBus 開發新手最好添加探頭測試點。對于 DQ[0-7] 和 RWDS,測試點應位于 STM32L4R9 微控制器和存儲器件上。當 STM32L4R9 正在寫入時,最好檢查離存儲器件最近的測試點。當 STM32L4R9 正在讀取時,應檢查離 STM32L4R9 最近的測試點。對于 CK、CK# 和 CS,應將測試點放在更靠近存儲器件的位置。

      由于 DDR 接口涉及高時鐘頻率,STM32L4R9 和存儲器件的電壓源必須盡可能無噪聲。高噪聲電源會影響信號時序并導致總線傳輸錯誤,因此建議使用去耦電容。HyperBus 存儲器件為 I/O 引腳提供了單獨的電源和接地,并且 I/O 電源 VCCQ 應增加 1 微法 (μF) 和 0.1 μF 電容(位于頂層或底層上)。

      固件訪問 HyperBus

      HyperBus 存儲器件具有片載寄存器,可用于設置器件的選項和時序。HyperBus 將這些寄存器稱為配置寄存器 (CR)。所有 HyperRAM 器件都有內部 CR,允許設置某些操作特性。對于 HyperRAM S27KS0641,固件可以通過外部 8 位數據總線配置其低功耗模式、封裝猝發長度、封裝猝發類型、R/W 時序參數和輸出驅動強度。

      HyperFlash 雖然沒有 CR,但有狀態寄存器。S26KS512 HyperFlash 有三個狀態寄存器。它支持使用內部糾錯碼 (ECC) 驗證寫操作,并具有 ECC 狀態寄存器以指示寫錯誤。另一個寄存器包含任何 ECC 錯誤的地址。第三個寄存器計數 ECC 糾錯數和無法糾正的錯誤。所有這些寄存器都是只讀寄存器。

      HyperBus 事務支持兩類存儲器操作。第一類是讀取或寫入外部存儲器。第二類是讀取或寫入 CR 或讀取狀態寄存器。

      將 STM32L4L9 OctoSPI 配置為 HyperBus 端口后,內核便可訪問存儲器,像任何其他存儲器映射位置一樣。在存儲器映射的 HyperBus 空間中,每次讀或寫操作都會啟動微控制器和外部存儲器之間的事務處理。每個 HyperBus 事務的開始都是微控制器通過命令/地址指令向外部存儲器件發送三個 16 位字。命令/地址序列告訴外部存儲器件操作是讀還是寫,是否正在尋址存儲器空間或配置寄存器,事務是封裝式還是線性猝發事務,并提供目標地址行和列。雖然這對帶操作固件的微控制器都是透明的,但在調試期間,命令/地址序列很重要。

      HyperBus 入門

      開發人員了解 HyperBus 協議之后,建議利用評估板執行一些實驗性編程,特別是新接觸該接口的開發人員。適用于 STM32L4R9 微控制器的 STMicroelectronics STM32L4R9I-eval 評估板是一個很好的出發點(圖 3)。HyperRAM 存儲器件位于紅圈中,器件的測試點位于右側的針座連接器上。

      STMicroelectro<em></em>nics STM32L4R9I-e<em></em>val 圖片

      圖 3:STMicroelectronics STM32L4R9I-eval 可用于評估 STM32L4R9 微控制器。HyperRAM 存儲器件位于紅圈中,器件的測試點位于右側的針座連接器上。(圖片來源:STMicroelectronics)

      STM32L4R9I-eval 具有豐富的特性,包括相機接口、兩個 MEMS 麥克風、一個操縱桿和一個 4.3 英寸、480 x 272 像素彩色 TFT LCD 顯示屏。該評估板支持 OctoSPI 接口,并有一個 ISSI 的 IS66WVH8M8BLL 64 Mb HyperRAM 器件焊接到印刷電路板。

      總結

      HyperBus 協議是一種合適且易用的接口,只需很少的引腳便可擴展空間受限應用的存儲器。雖然該總線的操作對固件是透明的,但新接觸 HyperBus 的開發人員必須熟悉高速總線信號的操作以確保設計穩健

      下一篇: 斷路器、隔離開關、接

      上一篇: 索爾維全系列Solef?PV

      推薦產品

      更多
      主站蜘蛛池模板: 日韩免费一区二区三区| 国产精品视频一区二区三区无码 | 日本在线视频一区二区| 人妻av综合天堂一区| 亚洲日韩国产欧美一区二区三区| 国产在线乱子伦一区二区| 国产Av一区二区精品久久| 日韩AV无码一区二区三区不卡| 在线|一区二区三区| 一区二区三区免费在线视频| www.亚洲一区| 一区二区三区观看免费中文视频在线播放| 无码欧精品亚洲日韩一区| 久久久老熟女一区二区三区| 国产高清一区二区三区| 日本精品一区二区三本中文| av在线亚洲欧洲日产一区二区| 国产在线无码视频一区二区三区| 中文字幕在线看视频一区二区三区| 无码人妻一区二区三区免费| 精品视频午夜一区二区| 国产无线乱码一区二三区| 国产SUV精品一区二区四 | 亚洲bt加勒比一区二区| 久久精品一区二区三区中文字幕| 国产精品特级毛片一区二区三区| 国产对白精品刺激一区二区| 视频一区视频二区在线观看| 久久99热狠狠色精品一区| 国产成人久久一区二区不卡三区| 东京热无码一区二区三区av| 3D动漫精品一区二区三区| 亚洲中文字幕丝袜制服一区 | 免费av一区二区三区| 久久蜜桃精品一区二区三区| 国产精品 一区 在线| 日韩精品人妻一区二区三区四区| 一区二区福利视频| 亚洲一区二区三区久久| 精品一区二区三区免费观看| 无码国产精品一区二区免费I6|