基于USB協(xié)議的DSP高速上位機(jī)接口設(shè)計(jì)
3 USB傳輸設(shè)計(jì)
3.1 傳輸方式的確定
CY7C68013A芯片具有GPIF模式和從屬FIFO(Slave FIFO)模式兩種接口工作模式。在本設(shè)計(jì)中,USB數(shù)據(jù)傳輸存儲(chǔ)模塊負(fù)責(zé)完成存儲(chǔ)算法產(chǎn)生的大量數(shù)據(jù)的高速傳輸,由于不涉及到對(duì)外部電路的控制,所以不選用GPIF模式,而選擇Slave FIFO模式進(jìn)行連接。在數(shù)據(jù)傳輸時(shí),用Slave FIFO接口模式,批量傳輸,自動(dòng)輸入(AUTOIN)方式,使用EP6端口作為上行輸入緩沖區(qū)。CY7C68013A的,Slave FIFO接口模式如圖6所示。本文引用地址:http://www.ex-cimer.com/article/150316.htm
3.2 EZ-USB FX2時(shí)序設(shè)計(jì)
在本設(shè)計(jì)的FPGA中,設(shè)計(jì)了如圖6的外部主控制器的功能邏輯。由于DSP端Linkport口數(shù)據(jù)傳輸速率很高,而在USB端的速率可能無(wú)法跟Linkport口的數(shù)據(jù)率相匹配,故在FPGA中開(kāi)辟一個(gè)2KB的FIFO,經(jīng)由Linkport上傳的數(shù)據(jù)首先傳送到FIFO中,之后再經(jīng)由USB口上傳至主機(jī)。為了保證數(shù)據(jù)傳輸?shù)耐暾?,設(shè)計(jì)USB的數(shù)據(jù)傳輸速率為DSP Link口的1/8。在此,對(duì)FPGA邏輯應(yīng)用Modelsim軟件進(jìn)行了仿真,仿真結(jié)果如圖7所示。
圖7中,在LxCLKIN時(shí)鐘的上升沿和下降沿將DSP_Data中的數(shù)據(jù)寫(xiě)入到FPGA的FIFO中,然后再把FIFO中的數(shù)據(jù)從數(shù)據(jù)線(xiàn)USB_Data中輸出給EZ-USB FX2的FD數(shù)據(jù)線(xiàn),最后經(jīng)由USB傳送給主機(jī)。圖中USB_Data的數(shù)據(jù)率明顯只有DSP_Data數(shù)據(jù)率的1/8,是符合設(shè)計(jì)要求的。
在上傳傳輸時(shí),采用異步自動(dòng)輸入方式。EZ-USB FX2芯片F(xiàn)IFO異步寫(xiě)時(shí)序如圖8所示。根據(jù)此時(shí)序,在本設(shè)計(jì)中,F(xiàn)PGA輸出的USB_Data信號(hào)提供給USB的FD數(shù)據(jù)線(xiàn),F(xiàn)PGA輸出的USB_SLWR提供給USB的SLWR,USB端便能在SLWR的下降沿把數(shù)據(jù)線(xiàn)FD中的數(shù)據(jù)寫(xiě)入到FX2芯片F(xiàn)IFO中,并由USB傳送給主機(jī)。
4 結(jié)語(yǔ)
本文重點(diǎn)對(duì)DSP擴(kuò)展USB接口的數(shù)據(jù)上行通道的硬件設(shè)計(jì)進(jìn)行了詳細(xì)論述。本系統(tǒng)經(jīng)測(cè)試驗(yàn)證,通過(guò)該擴(kuò)展USB接口,配合定制的上位機(jī)軟件,DSP數(shù)據(jù)上傳PC機(jī)的速率平均達(dá)到8 MB/s以上,連接可靠穩(wěn)定,滿(mǎn)足對(duì)DSP變量實(shí)時(shí)監(jiān)測(cè)的數(shù)據(jù)率需求,同時(shí)可通過(guò)此接口完成程序的加載與燒寫(xiě)功能。僅需一臺(tái)帶USB接口的PC機(jī),就能完成彈載DSP系統(tǒng)的實(shí)時(shí)測(cè)試與在線(xiàn)程序加載,簡(jiǎn)捷、通用、方便,具有顯著的工程實(shí)用價(jià)值。
評(píng)論