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