《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 高速DSP串行外設接口設計
高速DSP串行外設接口設計
摘要: 其中串行外設接口(Serial Peripheral InteRFace)是Motorola公司提出的一種同步串行外圍接口協(xié)議.主要應用在EEPROM、FLASH,、實時時鐘,、AD轉(zhuǎn)換器.還有數(shù)字處理和數(shù)字解碼器之間。包括主/從2種模式,,具有I/O資源占用少,、協(xié)議實現(xiàn)簡單、傳輸速度快,、能夠同時收發(fā)信息,、支持絕大部分處理器芯片等優(yōu)點,是一種高速的全雙工,、同步的通信總線,,并且在芯片的管腳上只占用四根線,節(jié)約了芯片的管腳.同時為PCB的布局上節(jié)約了空間,,提供了方便,,正是出于這種簡單易用的特性,TMS320LF2407芯片也集成了這種通信協(xié)議,。
Abstract:
Key words :

 

 1 引言
  DSP(數(shù)字信號處理)的優(yōu)勢除了處理復雜的運算,,特別適用于數(shù)字濾波,、語音、視頻、圖象處理,、通信以及高速實時測控系統(tǒng)中已成為現(xiàn)代信息處理技術的重要器件,,極大地促進了信號處理和測控各個領域的學術研究,、產(chǎn)品開發(fā)及應用,。TI公司TMS320LF2407是一種專用定點DSP芯片,與以往的產(chǎn)品相比.最大不同就是有豐富的外設.像SCI,、SPI,、EV等等.在處理數(shù)據(jù)優(yōu)勢上添加了事務管理能力。
  其中串行外設接口(Serial Peripheral InteRFace)是Motorola公司提出的一種同步串行外圍接口協(xié)議.主要應用在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)和設計原理
  2.1 SPI接口結(jié)構(gòu)
  該SPI設計主要有兩大部分組成:微控制器接口和SPI控制接口,。通過控制線、數(shù)據(jù)線,、和地址線三大總線把微控制接口與SPI控制接口連接在一起,,如果外部有更多的SPI接口模塊??梢杂蒘PI控制接口運用軟件編程與設置,,實現(xiàn)擴展具有SPI接口的外部設備。
  TMS320LF2407中采用的主從控制器連接通信,。主控制器通過輸出SPICLK信號來啟動數(shù)據(jù)傳送,。對主控制器和從控制器.數(shù)據(jù)都是在SPICLK的一個邊沿移出移位寄存器,并在相對的另一個邊沿鎖存到移位寄存器,。如果CLOCK PHASE位是1.數(shù)據(jù)的發(fā)送和傳輸就要在SPICLK跳變之前的半個周期發(fā)生。主控制器可以在任一時刻啟動數(shù)據(jù)發(fā)送.因為它控制著SPICLK信號,。由軟件決定了主控制器如何檢測從控制器何時準備發(fā)送數(shù)據(jù),,以啟動SPI傳送數(shù)據(jù)。
圖1 SPI內(nèi)部結(jié)構(gòu)
  2.2  SPI設計原理
  SPI接口是同步串行總線的一種,,在同步時鐘信號SCK下,,能夠高速、可靠的傳送數(shù)據(jù),。它分為主從(MASTER/SLAVER)兩種傳輸模式,。主模式下的發(fā)送總線即是從模式的接收總線:與之對應的是從模式下的發(fā)送總線即是主模式的接收總線。它們可以同時接收和發(fā)送數(shù)據(jù).而且發(fā)送和接收操作可以通過中斷或者查詢方法來完成,。
  2.2.1 工作時鐘
  時鐘極性CPOL和時鐘相位CPHA控制著時鐘信號引腳上4中不同的時鐘方式,。在設備被使能激活后.還未進行數(shù)據(jù)傳輸時或兩個字節(jié)數(shù)據(jù)間歇期間,SCK處于空閑電平,,通過時鐘極性控制位可以選擇此空閑電平的電平時0還是1:時鐘相位控制位用來選擇數(shù)據(jù)接收端設備的采樣時刻,。在該采樣時刻,線上數(shù)據(jù)必須同時滿足建立時間和保持時間兩個參數(shù),,因此數(shù)據(jù)發(fā)送端設備應提前將數(shù)據(jù)移出到數(shù)據(jù)線上,。
  4種不同的時鐘方式能根據(jù)外設需要,能夠提供相對應的傳輸協(xié)議來完成數(shù)據(jù)的傳輸工作,。它們之間沒有優(yōu)先級.SPI線上的主從設備必須根據(jù)具體情況設置匹配的傳輸時序模式.時序只有匹配擻據(jù)傳輸才能正常進行,。如果設置的不匹配.可能導致數(shù)據(jù)接收方和發(fā)送方在同一個時鐘沿作用.導致數(shù)據(jù)輸出失敗。
  圖2是CPHA=0時的數(shù)據(jù)傳輸時序.它同時包含了CPOL=0和CPOL=1的情況,,當CPOL=O時,,要傳輸?shù)臄?shù)據(jù)在時鐘信號沒有延時且上升沿出發(fā)送,在時鐘信號下降沿處接收數(shù)據(jù),。當CPOL=1時,,同樣在沒有延時的情況下傳輸,,不同的是下降沿發(fā)送數(shù)據(jù),上升沿接收,。圖3是CPHA=1時數(shù)據(jù)傳輸時序,。與圖2相似,但采樣時刻延遲了半個周期,。
圖2 CPHA="0是SPI總線數(shù)據(jù)傳輸時序"
圖3 CPHA="1時SPI總線數(shù)據(jù)傳輸時序"
 3 SPI硬件設計
  寄存器在SPI中起著決定性的作用.無論是在微控制器接口,,還是SPI控制接口,寄存器在數(shù)據(jù)傳輸和控制方面都是主要的組成部分,。而寄存器最基本最重要的單元是觸發(fā)器.只有改善觸發(fā)器的結(jié)構(gòu),,才能提高整個SPI接口的性能。
  有的串行接口設計中采用B結(jié)構(gòu)的觸發(fā)器設計,,這些結(jié)構(gòu)里應用的是一種簡單的MOS管做開關.雖然MOS管做開關有功耗低,,占面積小的優(yōu)點。但要提高它的電路工作頻率.開關速度,,制作丁藝卻是越來越困難,。而且如果輸入信號不強.就很可能出現(xiàn)信號倒流,這就需要一個較高電壓來控制開關,。這也不利于數(shù)據(jù)傳輸和降低功耗等等,。
  為了解決由MOS管做開關時引起的種種難題.來實現(xiàn)在TMS320LF2407串行接口中的信息傳遞的高速率。本設計綜合考慮速度,、工作電壓,、噪聲容限等因素的影響.采用了一種新穎的觸發(fā)器結(jié)構(gòu)(圖4A部分),本文接口電路中大都采用了該觸發(fā)器的電路設計,,工作電壓降低到3.3V,,大大降低了整體功耗;在開關方面采用了三態(tài)門,,有效的防止了信號倒流,,實現(xiàn)了信號傳輸?shù)姆€(wěn)定;添加了一個反饋信號,,在需要的時候.能夠把所需反饋信號再次輸入,;同時加快r開關速率,帶負載的能力也增強,。
圖4 A,、B兩種觸發(fā)器比較
  4 RTL級設計
  隨著數(shù)字系統(tǒng)設計的復雜性不斷增加,在設計初期指定有效的設計策略對于整個設計是至關重要的,。行為描述方式是對系統(tǒng)數(shù)學模型的描述,。它包括RTL、算法級、系統(tǒng)級的描述,。RTL是指通過描述寄存器之間數(shù)據(jù)流動來描述數(shù)字電路系統(tǒng),,是一個數(shù)據(jù)流的概念.寄存器與寄存器之間的數(shù)據(jù)處理由組合邏輯完成。RTL級是Verilog較高抽象層次,,在這個抽象層次上,,模塊可以根據(jù)設計的算法來實現(xiàn).而不用考慮具體的實現(xiàn)細節(jié)。
  4.1寄存器整體電路設計
  下面是部分Verilog HDL源代碼.描述了數(shù)據(jù)傳輸時相關寄存器的功能設置:先是對復位時各個寄存器的初始值,,接下來是對寄存器進行功能設計.和數(shù)據(jù)傳輸時候產(chǎn)生的中斷使能和標志位的設計,。
  4.2整體時序仿真
  將上述Verilog代碼編譯,再寫上對應測試代碼進行驗證,。圖5是寄存器的寫操作的整體時序仿真波形圖.驗證了上述代碼正確可行,。
圖5寫操作整體時序仿真
  5 結(jié)論
  本文作者的創(chuàng)新點是改進了硬件觸發(fā)器的結(jié)構(gòu).用三態(tài)門和傳輸門取代那種單一MOS管的結(jié)構(gòu)。首次應用到TMS320LF2407芯片串行外設接口上,,降低工作電壓到3.3V,,加快數(shù)據(jù)傳輸,而且還有相應的反饋信號,,進一步完善了觸發(fā)器結(jié)構(gòu),。同時有很好的可移植性好。具有充分的可裁剪性,,本設計運行可靠,達到預期的效果,。
此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權禁止轉(zhuǎn)載。