用DSP實現CPLD多方案現場可編程配置
發布時間:2007/8/15 0:00:00 訪問次數:609
在繼電保護測試裝置中, 既有復雜的算法, 又涉及多種檢測與控制方案。用DSP實現算法和多方案的配置,用CPLD進行實時檢測和控制,是一種較好的獨立運行模式。一般CPLD的配置依靠專用配置PROM或下載電纜來完成。本文介紹基于DSP的CPLD多方案現場可編程配置方法。
1 總體描述
系統中的DSP采用TI公司的定點數字信號處理器TMS320C5402。它采用4總線4級流水線的增強型哈佛結構,處理速度為100MIPS;具有片內4K×16位的ROM和16K×16位的DARAM, 2個多通道緩沖串行口(McBSP),1個直接存儲控制器(DMA)等片內外圍電路;外部可擴展至1M×16位存儲空間,芯片采用3.3V電源電壓。
TMS320C5402的多通道緩沖串行口(multi-channel buffercd scrial port)具備標準串行口的所有功能,可設定收發數據格式(8位~32位);在8位不擴展模式下,可選擇高位(MSB)先送或低位(LSB)先送。直接存儲控制器(DMA)可以實現數據在串行口McBSP和內部DARAM間的直接交換, 提高工作效率, 節省運行時間。
CPLD采用Altera公司FLEX10K系列的EPFl0KIOA7C144-1。可用資源有576個邏輯單元(LE)、72個邏輯陣列塊(LAB)、3個嵌入式陣列塊(EAB)和102個I/O引腳,電源電壓為3.3V。
FLEX1OK的配置由Altera的專用串行配置PROM(EPCI)或系統控制器提供的數據宋完成,也由編程硬件通過下載電纜(BytcBlastcrMV)進行在線配置。依據控制配置過程的器件不同, 可將配置分為主動配置和被動配置兩類;依據配置數據流的格式不同, 可將配置分為串行配置和并行配置兩類。本文采用的是在微處理器控制下的被動串行配置(passivc serial)模式。配置連接示意如圖1所示。
其中,DSP的XF作為輸出控制CPLD的nCONFIG,INTO和INT1作為輸入監控CPLD的nSTATUS和1NT DONE,緩沖串行口的BCLKX0和BDX0分別接CPLD的DCLK和DATA0,BCLKR0 作為輸入端檢測CONF DONE的信號。TMS320C5402和EPFl0KIOATC144-1都采用3.3V電源電壓。
2 配置數據的獲取和存儲
對CPLD的配置設計完成以后,MAX+PLUS II的編譯器在編譯過程中自動產生一個存儲器目標文件(*.sof)。它包括一個專用數據頭和二進制配置數據, 供下載電纜(BvtcBlastcrMV)對器件進行被動申行配置時使用。在存儲器目標文件(*.sof)的基礎上,可以生成其它類型配置文件。我們所用到的是十六進制文件(*.hex),是ASCII形式的配置數據文件。使用MAX+PLUSII生成十六進制文圖2十六進制文件(*.hex)的生成過程件(*hex)的過程,如圖2所示。
①完成編譯之后,從“FILE”菜單中選擇“ConvertSRAM Object Files|…”(圖中a);
②選擇相應的配置文件*.sof(圖中b);
③設定輸出文件格式為.hex(圖中c);
④選擇對應輸出文件·.hex(圖中d);
⑤點擊“OK”確認(圖中e)。
然后,在MAx+PLUSII環境下打開生成的十六進制文件(*.hex),便可獲取到ASCIl格式的配置數據。將配置數據通過DSP的開發軟件轉化成二進制數據,通過DSP存入其外部大容量數據存儲器(flash memory)中。
EPF10K10ATCl44_1的二進制配置數據大小約為120000位,即14.6KB。TMS320C5402的內部DARAM為16K×16位,外部存儲空間為lM×1 6位,故可存儲數十個配置文件。
3 對CPLD多方案現場可編程配置的實現
在DSP的控制下,將所需配置方案的配置數據,采用被動串行配置方式完成cPLD的配置。
3.1 引腳描述與配置時序
FLExlOK的引偶骯δ莧縵攏?BR> MSELO、MSEL1一配置方式選擇端;
nSTATus一器件的狀態輸出端,器件配置發生問題時被拉低,漏極開路;
nCONFIG一配置控制輸入端,低電平復位器件,上升沿跳變啟動配置,漏極開路;
CONF一DONE一狀態輸出端,配置時為低,配置數據接收完畢后釋放,漏極開路;
1NT—DONE一狀態指示端,配置時為低,配置數據初始化完成后釋放,漏極開路;
DCLK一配置時鐘信號端;
DATA0——配置數據輸入端。
被動串行配置(PS模式)的時序如圖3所示。
圖3中關鍵的時序參數如表1所列。
3.2配置過程描述
參照被動串行配置時序,DSP控制下CPLD現場配置的實現過程如下所述。
首先,DSP將一個方案的配置數據從外部數據存儲器中讀入內部DARAM。然后,在DCONFIG上產生一個由低到高的跳變,使CPLD進入配置狀態,等待CPLD釋放nSTATUS。nSTATuS變高之后,通過McBSP在時鐘(DCLK)上升沿將配置數據逐位送到DATA0上,時鐘(DCLK)頻率選為10MHz。因為配置要求每字節數據的最低位(LSB)先送出,故在初始化McB
在繼電保護測試裝置中, 既有復雜的算法, 又涉及多種檢測與控制方案。用DSP實現算法和多方案的配置,用CPLD進行實時檢測和控制,是一種較好的獨立運行模式。一般CPLD的配置依靠專用配置PROM或下載電纜來完成。本文介紹基于DSP的CPLD多方案現場可編程配置方法。
1 總體描述
系統中的DSP采用TI公司的定點數字信號處理器TMS320C5402。它采用4總線4級流水線的增強型哈佛結構,處理速度為100MIPS;具有片內4K×16位的ROM和16K×16位的DARAM, 2個多通道緩沖串行口(McBSP),1個直接存儲控制器(DMA)等片內外圍電路;外部可擴展至1M×16位存儲空間,芯片采用3.3V電源電壓。
TMS320C5402的多通道緩沖串行口(multi-channel buffercd scrial port)具備標準串行口的所有功能,可設定收發數據格式(8位~32位);在8位不擴展模式下,可選擇高位(MSB)先送或低位(LSB)先送。直接存儲控制器(DMA)可以實現數據在串行口McBSP和內部DARAM間的直接交換, 提高工作效率, 節省運行時間。
CPLD采用Altera公司FLEX10K系列的EPFl0KIOA7C144-1。可用資源有576個邏輯單元(LE)、72個邏輯陣列塊(LAB)、3個嵌入式陣列塊(EAB)和102個I/O引腳,電源電壓為3.3V。
FLEX1OK的配置由Altera的專用串行配置PROM(EPCI)或系統控制器提供的數據宋完成,也由編程硬件通過下載電纜(BytcBlastcrMV)進行在線配置。依據控制配置過程的器件不同, 可將配置分為主動配置和被動配置兩類;依據配置數據流的格式不同, 可將配置分為串行配置和并行配置兩類。本文采用的是在微處理器控制下的被動串行配置(passivc serial)模式。配置連接示意如圖1所示。
其中,DSP的XF作為輸出控制CPLD的nCONFIG,INTO和INT1作為輸入監控CPLD的nSTATUS和1NT DONE,緩沖串行口的BCLKX0和BDX0分別接CPLD的DCLK和DATA0,BCLKR0 作為輸入端檢測CONF DONE的信號。TMS320C5402和EPFl0KIOATC144-1都采用3.3V電源電壓。
2 配置數據的獲取和存儲
對CPLD的配置設計完成以后,MAX+PLUS II的編譯器在編譯過程中自動產生一個存儲器目標文件(*.sof)。它包括一個專用數據頭和二進制配置數據, 供下載電纜(BvtcBlastcrMV)對器件進行被動申行配置時使用。在存儲器目標文件(*.sof)的基礎上,可以生成其它類型配置文件。我們所用到的是十六進制文件(*.hex),是ASCII形式的配置數據文件。使用MAX+PLUSII生成十六進制文圖2十六進制文件(*.hex)的生成過程件(*hex)的過程,如圖2所示。
①完成編譯之后,從“FILE”菜單中選擇“ConvertSRAM Object Files|…”(圖中a);
②選擇相應的配置文件*.sof(圖中b);
③設定輸出文件格式為.hex(圖中c);
④選擇對應輸出文件·.hex(圖中d);
⑤點擊“OK”確認(圖中e)。
然后,在MAx+PLUSII環境下打開生成的十六進制文件(*.hex),便可獲取到ASCIl格式的配置數據。將配置數據通過DSP的開發軟件轉化成二進制數據,通過DSP存入其外部大容量數據存儲器(flash memory)中。
EPF10K10ATCl44_1的二進制配置數據大小約為120000位,即14.6KB。TMS320C5402的內部DARAM為16K×16位,外部存儲空間為lM×1 6位,故可存儲數十個配置文件。
3 對CPLD多方案現場可編程配置的實現
在DSP的控制下,將所需配置方案的配置數據,采用被動串行配置方式完成cPLD的配置。
3.1 引腳描述與配置時序
FLExlOK的引偶骯δ莧縵攏?BR> MSELO、MSEL1一配置方式選擇端;
nSTATus一器件的狀態輸出端,器件配置發生問題時被拉低,漏極開路;
nCONFIG一配置控制輸入端,低電平復位器件,上升沿跳變啟動配置,漏極開路;
CONF一DONE一狀態輸出端,配置時為低,配置數據接收完畢后釋放,漏極開路;
1NT—DONE一狀態指示端,配置時為低,配置數據初始化完成后釋放,漏極開路;
DCLK一配置時鐘信號端;
DATA0——配置數據輸入端。
被動串行配置(PS模式)的時序如圖3所示。
圖3中關鍵的時序參數如表1所列。
3.2配置過程描述
參照被動串行配置時序,DSP控制下CPLD現場配置的實現過程如下所述。
首先,DSP將一個方案的配置數據從外部數據存儲器中讀入內部DARAM。然后,在DCONFIG上產生一個由低到高的跳變,使CPLD進入配置狀態,等待CPLD釋放nSTATUS。nSTATuS變高之后,通過McBSP在時鐘(DCLK)上升沿將配置數據逐位送到DATA0上,時鐘(DCLK)頻率選為10MHz。因為配置要求每字節數據的最低位(LSB)先送出,故在初始化McB
上一篇:揚聲器零部件對照表