DSP的高速串行外設(shè)接口設(shè)計
1 引言
本文引用地址:http://www.ex-cimer.com/article/257455.htmDSP(數(shù)字信號處理)的優(yōu)勢除了處理復(fù)雜的運(yùn)算,特別適用于數(shù)字濾波、語音、視頻、圖象處理、通信以及高速實時測控系統(tǒng)中已成為現(xiàn)代信息處理技術(shù)的重要器件,極大地促進(jìn)了信號處理和測控各個領(lǐng)域的學(xué)術(shù)研究、產(chǎn)品開發(fā)及應(yīng)用。TI公司TMS320LF2407是一種專用定點DSP芯片,與以往的產(chǎn)品相比.最大不同就是有豐富的外設(shè).像SCI、SPI、EV等等.在處理數(shù)據(jù)優(yōu)勢上添加了事務(wù)管理能力。
其中串行外設(shè)接口(Serial Peripheral Interface)是Motorola公司提出的一種同步串行外圍接口協(xié)議.主要應(yīng)用在EEPROM、FLASH、實時時鐘、AD轉(zhuǎn)換器.還有數(shù)字處理和數(shù)字解碼器之間。包括主/從2種模式,具有I/O資源占用少、協(xié)議實現(xiàn)簡單、傳輸速度快、能夠同時收發(fā)信息、支持絕大部分處理器芯片等優(yōu)點,是一種高速的全雙工、同步的通信總線,并且在芯片的管腳上只占用四根線,節(jié)約了芯片的管腳.同時為PCB的布局上節(jié)約了空間,提供了方便,正是出于這種簡單易用的特性,TMS320LF2407芯片也集成了這種通信協(xié)議。
2 SPI接口結(jié)構(gòu)和設(shè)計原理
2.1 SPI接口結(jié)構(gòu)
該SPI設(shè)計主要有兩大部分組成:微控制器接口和SPI控制接口。通過控制線、數(shù)據(jù)線、和地址線三大總線把微控制接口與SPI控制接口連接在一起,如果外部有更多的SPI接口模塊??梢杂蒘PI控制接口運(yùn)用軟件編程與設(shè)置,實現(xiàn)擴(kuò)展具有SPI接口的外部設(shè)備。
TMS320LF2407中采用的主從控制器連接通信。主控制器通過輸出SPICLK信號來啟動數(shù)據(jù)傳送。對主控制器和從控制器.?dāng)?shù)據(jù)都是在SPICLK的一個邊沿移出移位寄存器,并在相對的另一個邊沿鎖存到移位寄存器。如果CLOCK PHASE位是1.?dāng)?shù)據(jù)的發(fā)送和傳輸就要在SPICLK跳變之前的半個周期發(fā)生。主控制器可以在任一時刻啟動數(shù)據(jù)發(fā)送.因為它控制著SPICLK信號。由軟件決定了主控制器如何檢測從控制器何時準(zhǔn)備發(fā)送數(shù)據(jù),以啟動SPI傳送數(shù)據(jù)。
圖1 SPI內(nèi)部結(jié)構(gòu)
2.2 SPI設(shè)計原理
SPI接口是同步串行總線的一種,在同步時鐘信號SCK下,能夠高速、可靠的傳送數(shù)據(jù)。它分為主從(MASTER/SLAVER)兩種傳輸模式。主模式下的發(fā)送總線即是從模式的接收總線:與之對應(yīng)的是從模式下的發(fā)送總線即是主模式的接收總線。它們可以同時接收和發(fā)送數(shù)據(jù).而且發(fā)送和接收操作可以通過中斷或者查詢方法來完成。
2.2.1工作時鐘
時鐘極性CPOL和時鐘相位CPHA控制著時鐘信號引腳上4中不同的時鐘方式。在設(shè)備被使能激活后.還未進(jìn)行數(shù)據(jù)傳輸時或兩個字節(jié)數(shù)據(jù)間歇期間,SCK處于空閑電平,通過時鐘極性控制位可以選擇此空閑電平的電平時0還是1:時鐘相位控制位用來選擇數(shù)據(jù)接收端設(shè)備的采樣時刻。在該采樣時刻,線上數(shù)據(jù)必須同時滿足建立時間和保持時間兩個參數(shù),因此數(shù)據(jù)發(fā)送端設(shè)備應(yīng)提前將數(shù)據(jù)移出到數(shù)據(jù)線上。
4種不同的時鐘方式能根據(jù)外設(shè)需要,能夠提供相對應(yīng)的傳輸協(xié)議來完成數(shù)據(jù)的傳輸工作。它們之間沒有優(yōu)先級.SPI線上的主從設(shè)備必須根據(jù)具體情況設(shè)置匹配的傳輸時序模式.時序只有匹配擻據(jù)傳輸才能正常進(jìn)行。如果設(shè)置的不匹配.可能導(dǎo)致數(shù)據(jù)接收方和發(fā)送方在同一個時鐘沿作用.導(dǎo)致數(shù)據(jù)輸出失敗。
圖2是CPHA=0時的數(shù)據(jù)傳輸時序.它同時包含了CPOL=0和CPOL=1的情況,當(dāng)CPOL=O時,要傳輸?shù)臄?shù)據(jù)在時鐘信號沒有延時且上升沿出發(fā)送,在時鐘信號下降沿處接收數(shù)據(jù)。當(dāng)CPOL=1時,同樣在沒有延時的情況下傳輸,不同的是下降沿發(fā)送數(shù)據(jù),上升沿接收。圖3是CPHA=1時數(shù)據(jù)傳輸時序。與圖2相似,但采樣時刻延遲了半個周期。
圖2 CPHA=0是SPI總線數(shù)據(jù)傳輸時序
圖3 CPHA=1時SPI總線數(shù)據(jù)傳輸時序
評論