創龍工程師, 您好: 我購買TL138 EthEVM-A2 開發板, 目前用 demo code 雙核通訊都可正常運行, 經由DSP控制 EMIFA 使用CS2與外部FPGA做資料連結. 使用光碟所提供的 EMIFA_FPGA 代碼, 目前外部是空接用LA分析其 EMIF 發送的資料, 發現一個奇怪的問題! 1. 外部空接情況, 不論資料如何發送(0x0001 or 0x1ffff), 其D0 一直保持為低電壓; 2. D0外部上拉1K電阻後, 不論資料如何發送(0x0000), 其D0 一直保持為高電壓; J: l0 ~6 F" m7 q) [' a, [
其餘 bus (D15 ~ D1), CS2, R/W, WE... 可正常控制, 唯有D0 !?
- s+ F0 R( C- j! k3 f, t: r
因為是參考創龍提供的源碼, 也試過調整時序(write-setup, strobe,hold/ Read-setup, strobe, hold) 幫助不大; 回讀PLLDIV3(0x01E1A120) =0x8003, 表示EMIF Clock 為114MHz / l" f6 z6 u- |/ u% A' Z4 V# h: Q
void EMIFInit(void) { //配置EMIFA相關复用引腳 EMIFAPinMuxSetup(); //配置數據總線16bit EMIFAAsyncDevDataBusWidthSelect(SOC_EMIFA_0_REGS,EMIFA_CHIP_SELECT_2, EMIFA_DATA_BUSWITTH_16BIT); //選擇 Normal 模式 EMIFAAsyncDevOpModeSelect(SOC_EMIFA_0_REGS,EMIFA_CHIP_SELECT_2, EMIFA_ASYNC_INTERFACE_NORMAL_MODE); //禁止 WAIT 引腳 EMIFAExtendedWaitConfig(SOC_EMIFA_0_REGS,EMIFA_CHIP_SELECT_2, EMIFA_EXTENDED_WAIT_DISABLE); //配置 W_SETUP/R_SETUP W_STROBE/R_STROBE W_HOLD/R_HOLD TA 等參數 EMIFAWaitTimingConfig(SOC_EMIFA_0_REGS,EMIFA_CHIP_SELECT_2, EMIFA_ASYNC_WAITTIME_CONFIG(1, 2, 1, 1, 2, 1, 0 )); } ! g/ x" s/ `: V5 p2 }
; w2 k1 q; h# q8 k
1 s3 }: I6 m5 B: o+ @; P2 y" s
. N3 g c7 E8 k* r. U' Y6 r
|