<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > EDA/PCB > 設(shè)計(jì)應(yīng)用 > PSoC3內(nèi)部模擬布線和管腳選擇

          PSoC3內(nèi)部模擬布線和管腳選擇

          作者: 時(shí)間:2011-06-08 來(lái)源:網(wǎng)絡(luò) 收藏

          摘要:本文首先介紹了內(nèi)部的模擬總線分布,說(shuō)明了PSoC Creator的功能以及在設(shè)計(jì)中需要遵守的一些應(yīng)用規(guī)則,在模擬資源使用較多或?qū)δM性能要求較高的應(yīng)用中,設(shè)計(jì)者要遵照這些規(guī)則以達(dá)到高性能和高資源的使用。
          關(guān)鍵詞:

          本文引用地址:http://www.ex-cimer.com/article/191178.htm

          1,模擬總線介紹
          PSoC3內(nèi)部可以分為模擬和數(shù)字兩部分,模擬部分包括Delta-Sigma ADC、運(yùn)算放大器、比較器、DAC和SC/CT模塊。數(shù)字部分包括如CPU、RAM、ROM、DMA、UDBs、時(shí)鐘等等。

          模擬全局總線(AGs)和模擬多路復(fù)用總線(AMUXBUS)提供GPIO與內(nèi)部模擬模塊之間的連接,如圖1所示,PSoC3一共有16根AGs分別分布于4個(gè)象限,每個(gè)象限包括4根AGs總線(AGR[7:4], AGR[3:0], AGL[7:4], 和AGL[3:0]);AMUXBUS可用于任何GPIO和大部分模擬模塊輸入輸出之間的連接。這樣,AGs和AMUXBUS可在GPIO和模擬模塊之間提供高達(dá)18路的信號(hào)連接。

          對(duì)于內(nèi)部模擬模塊之間的互連,PSoC3采用模擬局部總線(ABUS)來(lái)完成,ABUS總線一共8根,其中4根ABUSL[3:0]位于芯片左邊,4根ABUSR[3:0]位于芯片右邊。

          另外在GPIO和模擬模塊之間還有大約20路的專用通道,這些專用通道可提供低阻抗連接,比如在PSoC3中的IDAC和運(yùn)算放大器Opamp,后面第3部分專門介紹。



          圖1,PSoC3 內(nèi)部模擬/數(shù)字部分分布

          2,PSoC3事例
          Cypress提供的軟件工具PSoC Creator可為用戶提供模擬布線,當(dāng)然用戶也可以自己手動(dòng)布線模擬器件以選擇更好的管腳和更優(yōu)的走線,下面以一個(gè)設(shè)計(jì)事例來(lái)說(shuō)明。

          若需要信號(hào)從P4[0]和P4[1]輸入,經(jīng)PGA1和PGA2放大,然后接入ADC的差分輸入以采集信號(hào),其在PSoC Creator中設(shè)計(jì)的原理圖如下圖2所示:



          圖2,PSoC Creator原理圖

          編譯后,PSoC Creator自動(dòng)布線,在PSoC3芯片中實(shí)際的走線如圖3所示:



          圖3,PSoC3實(shí)際走線圖

          從圖3可以看出,GPIO P4[0]和P4[1]是通過(guò)AGL[4]和AGL[5]連接到SC/CT模塊的。而PSoC3芯片中兩內(nèi)部模塊SC/CT和DSM ADC之間的連接是通過(guò)ABUSL1和ABUSL3實(shí)現(xiàn)的。

          3,GPIO直接連接布線
          如前所述,有些模塊可以不經(jīng)過(guò)AMUX/AGs或者ABUS而直接連接到指定的GPIO口上。對(duì)VIDAC而言,只有當(dāng)它配置為電流數(shù)-摸轉(zhuǎn)換器(IDAC)時(shí)才可以直連到GPIO口的,表1列出了每個(gè)DAC和GPIO口的對(duì)應(yīng)連接。


          表1,IDAC直接連接GPIO口

          運(yùn)放op-amp模塊同樣可直接連接到指定的GPIO上,如圖4所示。表2列出了可與Opamp輸入輸出直接連接的GPIO口。


          表2,Opamp直接連接GPIO口


          圖4,GPIO直接連接Opamp0和Opamp2示意圖

          從圖4可以看出,P0[1]和P0[0]是直接連接到OPamp0和OPamp2的輸出,當(dāng)然,你也可在PSoC Creator中設(shè)計(jì)為把OPamp2的輸出連接到其它管腳上,但此時(shí)P0[0]上依然有OPamp2的輸出。所以建議用指定的GPIO口與之相連。對(duì)如圖5所示正弦波輸出應(yīng)用事例,WaveDAC8_1的作用是產(chǎn)生正弦波,Opamp2配置成電壓跟隨器模式以提高正弦波的驅(qū)動(dòng)能力,VDAC8_1和Opamp_0用與提供參考電壓,Comp_1是比較器。如前所述我們應(yīng)將Opamp2的同向輸入SineSignal_1配置為P0[4],輸出Sinewave_1配置為P0[0]。



          圖5,正弦波輸出應(yīng)用事例

          4,模擬管腳的最佳選擇規(guī)則
          PSoC3系列中管腳最多資源最豐富的封裝是100Pin TQFP,它有7個(gè)完整的8-Pin I/O口,這56個(gè) GPIO均可用做模擬信號(hào)的輸入輸出。端口P0、P3和P4位于芯片的上半部,并且有模擬全局總線AGL[7:4]和AGR[7:4]與之相連,對(duì)于那些低于16bit模擬性能要求的應(yīng)用,任何GPIO口都可使用并且性能都一樣,但對(duì)需要高性能低躁聲的應(yīng)用,最好選擇P0、P3和P4作為其輸入輸出管腳。

          因此,對(duì)于模擬管腳的選擇,應(yīng)遵守下列步驟:
          1)對(duì)于給定的應(yīng)用需要多少個(gè)模擬管腳I/O
          2)決定哪些信號(hào)需要特定的GPIO口作為其輸入輸出,把這些GPIO口優(yōu)先分配
          3)然后依次從P0、P3和P4對(duì)其他模擬輸入輸出口分配管腳
          4)在模擬GPIO管腳與設(shè)計(jì)所需要的其他管腳之間畫(huà)條線
          5)注意保持所有的模擬管腳在所畫(huà)線的一側(cè),而所有的數(shù)字管腳在線的另一側(cè)。

          經(jīng)過(guò)上述步驟就可簡(jiǎn)單的在芯片和電路板上把模擬和數(shù)字信號(hào)隔離。如下圖6所示:



          圖6,理想的模擬數(shù)字信號(hào)隔離

          有時(shí)應(yīng)用設(shè)計(jì)需要多種信號(hào)的混合,比如精確的模擬信號(hào)、低分辨率的模擬信號(hào)、低速度的數(shù)字信號(hào)和高速的數(shù)字信號(hào),這時(shí)可以用低精度和低速的數(shù)字信號(hào)來(lái)隔離高精度的模擬信號(hào)和高速數(shù)字信號(hào),如下圖7所示。



          圖7,三種信號(hào)的混合分布

          5,結(jié)束語(yǔ)
          本文是對(duì)PSoC3內(nèi)部模擬布線和的一個(gè)簡(jiǎn)單介紹,對(duì)PSoC3芯片設(shè)計(jì)規(guī)定的IDAC和Opamp直接連接到GPIO做了詳細(xì)的說(shuō)明,但沒(méi)有涉及太多太深的模擬信號(hào)知識(shí)。如果有用戶覺(jué)得不夠詳細(xì)或者在使用PSoC3過(guò)程中碰到什么問(wèn)題可參考PSoC3的技術(shù)操作手冊(cè)。



          關(guān)鍵詞: PSoC3 模擬布線 管腳選擇

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();