PSoC3應用于多通訊接口時的DMA設計
隨著上層應用軟件的日趨多樣化,現在的便攜式電子產品對嵌入式芯片的功能需求越來越高,單一或僅可以局部定制的傳統芯片已經不能滿足需要。因此數字系統和模擬系統都可以根據需要靈活定制成為芯片設計、開發的發展方向。Cypress為滿足業界需要繼PSoC1之后開發了PSoC3和PSoC5全新可編程模擬和數字嵌入式芯片。其中PSoC3使用基于單循環流水線的高性能8051內核(67MHz/33MIPS),PSoC5則是基于32位ARM Cortex-M3的內核(80MHz/100MIPS);兩者都內置閃存、SRAM,支持片外存儲器訪問,在8、16和32bit應用中同時實現了高集成度和高靈活性。本文重點講述了PSoC3在多通訊接口設計中的應用,以及如何使用多DMA技術提高通訊的速度和效率。
本文引用地址:http://www.104case.com/article/201706/347200.htm一、 Cypress PSoC3芯片介紹
Cypress PSoC3使用基于單循環流水線的高性能8051內核 (67MHz/33MIPS),提供業界廣泛采用的5.5V至0.5V電壓范圍和低至200nA的休眠電流,可以滿足極低功耗的應用場合。PSoC3的高性能模擬子系統和數字系統都擁有可編程通路,允許將任何模擬或數字信號(包括可編程時鐘)分配到任何通用I/O引腳,這為使用者提供了真正的“系統級”可編程能力。
Cypress PSoC3的芯片編號是CY8C38xx,該系列芯片依據功能模塊的不同包含多種芯片。表1是CY8C38xx系列的選型指南,除了表中列出的特性外,每個CY8C38xx芯片還包含:1.024V±0.1%的精密片上電壓參考源,帶PLL的1~66MHz±1%的精密可編程時鐘源,有ECC(錯誤校正碼)功能的Flash,DMA(直接存儲器訪問),4KB可調試跟蹤的RAM,JTAG/SWD編程/調試接口,支持片外存儲器訪問等。
Cypress PSoC3 內部采用CPLD的結構實現了完全的數字可編程電路。圖1顯示了CY8C38xx系列內部的可編程邏輯圖。從圖1中可以看出,外設和邏輯部分可以彼此互聯,也可以連接到任何引腳。數字可編程邏輯包括了以下部分。
UDB(Universal Digital Blocks)形成了可編程數字系統的核心功能,由PLD和Data path組成,可以創建各種通用外設和定制化功能。
UDB Array由多個UDB通過矩陣和可編程互聯組成,支持UDB和DSI(Digital System Interconnect)之間很靈活的擴展。
DSI是數字信號的集中互聯,包括UDB,固定功能外設,I/O,中斷,DMA和其它部分的數字信號。
強大的模擬資源以及靈活的模擬布線資源也是PSoC3的一大亮點之一。圖2是CY8C38系列芯片的片內模擬資源圖,通過這些可編程的模擬電路,可以構成標準的模擬信號處理模塊。并且這些模擬資源可以通過內部的模擬互連子系統進行連接,提供高度的模擬設計自由度以及IP資源的保護。模擬子系統有以下系統構成。
·有模擬全局和局部總線,模擬開關構成的高度可配置的結構。
·高精度的Delta-Sigma ADC.
·支持8位的電壓或者電流DAC.
·四路比較器并且可以有選擇性的互聯到LUT中.
·多達四個的SC/CT模塊可以構成OPAMP等模擬電路
·多達四個內部的OPAMP,可以連接到GPIO作為大電流輸出的緩沖器。
·CapSense子系統支持電容觸摸的檢測。
·內部高精度參考電壓源。
圖1 CY8C38系列芯片的片內可編程數字系統圖
除了模擬和數字可編程邏輯外,CY8C38 系列芯片都包含了一個專用于數字濾波的硬件加速器DFB(Digital Filter Block),它內部的專用乘法器和加速器可以在一個系統時鐘內計算一個24 位數與24 位數的乘法。使用DFB 可以方便的實現FIR 和IIR 數字濾波器,而且幾乎不占用MCU 的資源。在實現濾波器之外,DFB 還可以作為PSoC3 的算法加速器,可以很方便快捷的實現各種數字算法,而且不需要占用PSoC3 的CPU 資源。
評論