基于CPLD的DSP微處理器與CAN控制器接口設(shè)計
3.2 TSM320F206的I/O時序分析
TMS320F206的讀寫時序[2]如圖3和圖4所示。I/O的讀或?qū)懝ぷ髦芷谝话阍趦蓚€機器周期內(nèi)完成,在此期間,IS信號地址信號一直保持有效;閘門信號STRB發(fā)生在第一個機器周期有效后并保持一個機器周期以上;RE和WE有效時,數(shù)據(jù)有效。在兩次連續(xù)的寫操作(如圖4所示),WE的有效間隔時間tw(WH)最小為(2H-4)ns,而兩次連續(xù)的讀訪問(如圖3所示),RE的有效間隔時間tw(RDH)為(H-4)ns-H ns,其中H為0.5倍的機器時鐘周期,可見連續(xù)的讀、寫操作時,RE,WE的有效間隔不同,在設(shè)計電路時,應(yīng)注意此細節(jié)。在連續(xù)的讀或?qū)懖僮鲿r,IS信號一直為有效電平'0',無法以此信號作為產(chǎn)生SJAl000的ALE、讀、寫信號起始基準,而在寫周期時,STRB與WE的變化始終保持一致,因此在產(chǎn)生SJAl000寫周期時,可以用STRB作為ALE、寫信號WR產(chǎn)生的起始基準信號。但是TSM320F206在連續(xù)的讀操作時,STRB一直保持為低電平,可見在產(chǎn)生SJAl000讀、寫操作周期時,無法單獨以他作為ALE,RD信號產(chǎn)生的起始基準,需與IS,WE,RE進行邏輯組合作為SJAl000讀、寫操作周期的起始基準
信號。
4 CPLD實現(xiàn)轉(zhuǎn)換橋設(shè)計方法
此轉(zhuǎn)換橋如果用中規(guī)模集成電路(74系列)實現(xiàn)比較復(fù)雜,工作頻率又較高,布線時稍不合理,易引起干擾,使得電路工作不穩(wěn)定,因此采用高可靠性的復(fù)雜可編程邏輯器件CPLD,用硬件描述語言VHDL來實現(xiàn)。
4.1轉(zhuǎn)換橋引腳信號定義
圖5為轉(zhuǎn)換橋的時序仿真結(jié)果,其中轉(zhuǎn)換橋的各引腳信號與TMS320F206和SJAl0001引腳信號對應(yīng)為:fabl7接A0~A7;fdb7接DO~D7;fds接IS;fstrb接STRB;fwe接WE;frd接RE;fcp接CLKOUT1;ale接ALE;adb7接AD7~AD0;wr接WR;rd接RD。
4.2 SJA1000的讀、寫周期的使能信號和起始基準確定
轉(zhuǎn)換橋的基準時鐘fcp為TMS320F206的機器時鐘輸出信號CLKOUT1。fcp為20 MHz的方波信號。因為TMS320F206的讀或?qū)懝ぷ髦芷谝话銥?~2個機器周期,此時基準時鐘fcp最多含有4個邊沿狀態(tài),無法完成非多路復(fù)用到多路復(fù)用的轉(zhuǎn)換,所以通過軟件等待設(shè)置[4],使TMS320F206對外部總線操作時,由原來所用的1個機器時鐘周期,延長到4個機器時鐘周期,邊沿狀態(tài)個數(shù)增加了4倍,另外fcp的脈寬為25 ns,這樣可以保證轉(zhuǎn)換橋輸出的多路復(fù)用總線時序的時間參數(shù)滿足SJAl000的時序要求。從上面時序分析中可以確定出,SJAl000的讀、寫周期的使能信號(IS)和起始基準信號(STRB,WE,RE)邏輯組合。IS作為轉(zhuǎn)換橋的片選信號,當(dāng)IS為'0',轉(zhuǎn)換橋工作,否則轉(zhuǎn)換橋的各輸出信號被懸掛。當(dāng)IS為'0',STRB為'0',WE為'0',RE為'1'時,DSP開始對外部I/O進行寫操作,在后面緊跟的4個DSP機器周期產(chǎn)生出1個SJAl000的寫周期;當(dāng)IS為'0',STRB為'0',WE為'1',RE為'1'時,DSP開始對外部I/O進行讀操作,同樣在后面緊跟的4個DSP機器周期產(chǎn)生出1個SJAl000的讀周期。
4.3讀操作轉(zhuǎn)換過程
通過軟件等待設(shè)置,使DSP的I/O讀、寫操作需4個機器時鐘周期。第一個時鐘周期的上升沿產(chǎn)生ale信號(脈寬為O.5倍的機器時鐘周期),同時將DSP輸入的低8位地址fab17鎖存并送到地址數(shù)據(jù)復(fù)用總線adb7,并保持直到第二個時鐘周期的上升沿為止,此時adb7為高阻狀態(tài)。第三、第四個時鐘周期DSP的讀信號。frd有效,將此信號直接送到rd引腳,此時adb7引腳的數(shù)據(jù)直接送給fdb7引腳,讀操作結(jié)束。
4.4寫操作轉(zhuǎn)換過程
在寫操作的4個時鐘周期中,第一個時鐘周期的上升沿產(chǎn)生ale信號(脈寬為一個機器時鐘周期),同時將DSP輸入的低八位地址fabl7引腳的信號送到adb7上,并保持到第三個時鐘周期結(jié)束。第四個時鐘周期的上升沿產(chǎn)生寫信號wr(寬度為一個時鐘周期),在DSP。寫信號few的上升沿處鎖存數(shù)據(jù)線fdb7來的信號,并將其送到adb7引腳上,延時到第五個時鐘周期把adb7變?yōu)楦咦锠顟B(tài),寫操作結(jié)束。
5 結(jié) 語
本文提出的非多路復(fù)用總線到多路復(fù)用總線轉(zhuǎn)換橋采用了Xilinx公司的CPLD芯片X(295144-15-PQl00,并使用該公司開發(fā)集成環(huán)境Fundation F3.1i,將其集成為一塊專用芯片。實現(xiàn)了DSP微處理器TM320F206與CAN控制器SJAl000連接,通過大量的實驗測試,此轉(zhuǎn)換橋工作非常穩(wěn)定,現(xiàn)已應(yīng)用到電力網(wǎng)絡(luò)饋線遠程終端裝置(FTU)中。
評論