探究MPC82XX的UPM方式應用
引 言
本文引用地址:http://www.ex-cimer.com/article/149887.htmMPC82XX是Freescale公司繼MPC860之后推出的一系列高性能通信處理器中性能價格比十分出色的一款,它具有獨立的64位數(shù)據(jù)總線和32位地址總線,獨立的32位PCI2.2總線接口,豐富的外設接口(MII、I2C、SP、USB、UART等),足夠的用戶可自定義的GPI0。MPC82XX的這些技術特點使它非常適合于應用在某些既具有多樣通信接口又具有一定計算和控制功能的自動化智能設備中。新型涉及能方便的嵌入到其它裝置中的帶控制功能的低壓電力載波通訊處理器,提供了與外界聯(lián)系的信號采集接口、控制輸出接口、通訊接口等多種接口,自身就可以完成對外部信號的采集、計量、控制、通訊轉發(fā)等功能,既可以是一個獨立的用低壓電力線作通訊信道的數(shù)據(jù)采集、計量、控制、通訊轉發(fā)產(chǎn)品,又可以作為電力載波通訊調制解調單元嵌入到其它產(chǎn)品中,線路簡單,性能穩(wěn)定,抗干擾能力強,信息傳輸精確,沒有可調元件,易于批量生產(chǎn)。
在此類自動化智能設備的開發(fā)設計過程中經(jīng)常遇到的一個問題是總線器件的擴展。對于地址總線和數(shù)據(jù)總線分開的器件,例如常見的STl6C554、NOR Flash等,MPC82XX提供了8路用戶可自定義地址區(qū)間的片選信號,采用GPCM(General—Purpose Chip—Select Machine)模式可以非常方便地進行掛接。
總線(Bus)是計算機各種功能部件之間傳送信息的公共通信干線,它是由導線組成的傳輸線束, 按照計算機所傳輸?shù)男畔⒎N類,計算機的總線可以劃分為數(shù)據(jù)總線、地址總線和控制總線,分別用來傳輸數(shù)據(jù)、數(shù)據(jù)地址和控制信號??偩€是一種內部結構,它是CPU、內存、輸入、輸出設備傳遞信息的公用通道,主機的各個部件通過總線相連接,外部設備通過相應的接口電路再與總線相連接,從而形成了計算機硬件系統(tǒng)。在計算機系統(tǒng)中,各個部件之間傳送信息的公共通路叫總線,微型計算機是以總線結構來連接各個功能部件的。當總線空閑(其他器件都以高阻態(tài)形式連接在總線上)且一個器件要與目的器件通信時,發(fā)起通信的器件驅動總線,發(fā)出地址和數(shù)據(jù)。其他以高阻態(tài)形式連接在總線上的器件如果收到(或能夠收到)與自己相符的地址信息后,即接收總線上的數(shù)據(jù)。發(fā)送器件完成通信,將總線讓出(輸出變?yōu)楦咦钁B(tài))。
但是當遇到某些數(shù)據(jù)總線與地址總線復用的器件,如CAN總線驅動器SJAl000等,或者某些控制時序比較特殊的器件,在這些情況下一般的做法是通過增加CPLD進行數(shù)據(jù)總線、地址總線和控制總線的時序和邏輯轉換,以滿足特定的要求。但是它的缺點也是顯然的:首先,增加了CPLD這種占PCB面積較大的芯片,同時還需要提供燒寫CPLD的JTAG接口;其次,增加了CPLD軟件的開發(fā)和維護工作。
1 UPM的特點
1.1 接口信號及時序控制
MPC82XX的UPM接口信號線如表1所列。
其中,GPLx、CSx的時序用戶可以自定義,它們最小可調整時序間隔為1/4個總線時鐘周期。同時地址總線和數(shù)據(jù)總線的時序也可作一定程度的修改,以適應各種不同的應用場合。
MPC82XX具有3個UPM,GPLx信號為各UPM所共用,每一個UPM對應一個由64個字(32位)組成的RAM陣列,RAM陣列中每個字對應一個時鐘周期內總線上各信號的狀態(tài),同時可以通過設置LOOP位或者RE—D0位進行時間上的擴展,以適應某些慢速設備。UPM每個狀態(tài)序列的結束由LAST位確定。
1.2 劃分基本操作
根據(jù)要掛接的芯片的基本操作,對UPM的RAM陣列進行分割,即在適當?shù)奈恢迷O置LAST位,以形成幾個基本微操作,如讀寫等。每次需要UPM進行某項操作時,先將該操作在RAM陣列中的起始地址寫入UPM控制寄存器MxMR,RAM(隨機存取存儲器)RAM -random access memory 隨機存儲器。存儲單元的內容可按需隨意取出或存入,且存取的速度與存儲單元的位置無關的存儲器。這種存儲器在斷電時將丟失其存儲內容,故主要用于存儲短時間使用的程序。 按照存儲信息的不同,隨機存儲器又分為靜態(tài)隨機存儲器(Static RAM,SRAM)和動態(tài)隨機存儲器(Dynamic RAM,DRAM)。接下來的操作對于用戶來說相當于是透明的,只需要進行簡單的賦值操作即可,總線時序將由UPM來控制。
下文將以利用UPM掛接兩種常見的芯片為例進行詳細說明。
2 擴展CAN總線驅動器
在工業(yè)控制領域,CAN總線應用相當廣泛,SJAl000是最常見的CAN總線驅動器,利于MPC827X的UPM模式可以很好的掛接總線復用的SJAl000芯片。
2.1 硬件連接
MPC82XX利用UPM掛接SJAl000的連接如圖l所示。
在該應用實例中,SJAl000的讀寫信號和地址有效信號均由GPL提供,74LVC245用于完成5 V邏輯和3.3 V邏輯的轉換。
2.2 設計要點
對SJAl000的操作可以分為讀數(shù)據(jù)和寫數(shù)據(jù)兩個基本操作,同時SJAl000是總線復用器件,待讀寫數(shù)據(jù)的地址必須先行給出,還需加上一個寫地址的操作,因此可以將微操作定義為三個。不論是數(shù)據(jù)還是地址,都由MPC82XX的數(shù)據(jù)總線給出,通過分別使能ALE、RD和WR信號以區(qū)分以上三類操作,ALE、RD和WR功能由UPM的GPL信號線來模擬實現(xiàn)。
3 擴展NAND Flash存儲器
閃存(Flash Memory)是一種長壽命的非易失性(在斷電情況下仍能保持所存儲的數(shù)據(jù)信息)的存儲器,數(shù)據(jù)刪除不是以單個的字節(jié)為單位而是以固定的區(qū)塊為單位(注意:NOR Flash 為字節(jié)存儲。),區(qū)塊大小一般為256KB到20MB。閃存是電子可擦除只讀存儲器(EEPROM)的變種,EEPROM與閃存不同的是,它能在字節(jié)水平上進行刪除和重寫而不是整個芯片擦寫,這樣閃存就比EEPROM的更新速度快。由于其斷電時仍能保存數(shù)據(jù),閃存通常被用來保存設置信息,如在電腦的BIOS(基本輸入輸出程序)、PDA(個人數(shù)字助理)、數(shù)碼相機中保存資料等。閃存存取比較快速,無噪音,散熱小。你買的話其實可以不考慮那么多,同樣存儲空間買閃存。如果硬盤空間大就買硬盤,也可以滿足你應用的需求。
3.1 硬件連接
該應用中,NAND Flash的讀寫信號、地址有效信號、命令有效信號均由GPL提供,NAND Flash的Ready/Busyr信號則由MPC82XX的通用I/O引腳讀取。
3.2 設計要點
NAND Flash的操作具有以下特點:其一,地址是通過I/0口串行寫入的,即一次寫入8位或者16位(視具體芯片IO總線寬度而定);其二,F(xiàn)lash在非空白區(qū)寫入時需先進行擦除操作,擦除和寫入的速度相對于CPU的速度來說是比較長的,因此CPU需等待一個操作完成后才能進行下一步操作;其三,對NAND Flash的讀寫操作之前必須先寫入相應的命令字。
值得注意的是,寫入了地址的最后一個字段后不能立即進行數(shù)據(jù)操作,必須等待幾μs的時間,這個等待時間可以通過設置UPM的LOOP和REDO實現(xiàn)。經(jīng)測試,該方案讀數(shù)據(jù)的速度達到2 MB/s,寫數(shù)據(jù)的速度達到1.5MB/s,可以滿足應用需求。
結 語
PowerPC UPM方式配置靈活,適應力強,能有效地減少應用系統(tǒng)軟硬件的復雜程度,提高系統(tǒng)可靠性,降低設備的研發(fā)成本和制造成本,使得PowerPC更加適合用在空間、成本等方面有諸多限制而接口要求又豐富多樣的嵌入式應用系統(tǒng)中。
評論