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