sync_first修改合入
This commit is contained in:
parent
f6b074e58e
commit
6b43c76e3f
@ -15,8 +15,8 @@
|
|||||||
//=======================================================================
|
//=======================================================================
|
||||||
//微码配置空间长度定义,单位为word(4Byte)
|
//微码配置空间长度定义,单位为word(4Byte)
|
||||||
#define RECEIVER_SYNC_FIRST_ConfigByteCopy_CFG1_LENGTH (0x0030)
|
#define RECEIVER_SYNC_FIRST_ConfigByteCopy_CFG1_LENGTH (0x0030)
|
||||||
#define RECEIVER_SYNC_FIRST_ConfigSlidingCorrelation_CFG2_LENGTH (0x00a0)
|
#define RECEIVER_SYNC_FIRST_ConfigSlidingCorrelation_CFG2_LENGTH (0x0070)
|
||||||
#define RECEIVER_SYNC_FIRST_ConfigSlidingCorrelationSecond_CFG3_LENGTH (0x0080)
|
#define RECEIVER_SYNC_FIRST_ConfigSlidingCorrelationSecond_CFG3_LENGTH (0x0070)
|
||||||
#define RECEIVER_SYNC_FIRST_ConfigSyncVer_CFG4_LENGTH (0x00a0)
|
#define RECEIVER_SYNC_FIRST_ConfigSyncVer_CFG4_LENGTH (0x00a0)
|
||||||
|
|
||||||
//SPU查找表各字段长度定义,单位为word(4Byte)
|
//SPU查找表各字段长度定义,单位为word(4Byte)
|
||||||
|
@ -178,7 +178,7 @@ void Receiver_First_Sync_Proc(receiver_sync2first_sync_t* msg_ptr, uint32_t msg_
|
|||||||
uint32_t maxPosition = 0;
|
uint32_t maxPosition = 0;
|
||||||
uint32_t maxsum;
|
uint32_t maxsum;
|
||||||
volatile uint16_t dbg_time0, dbg_time1;
|
volatile uint16_t dbg_time0, dbg_time1;
|
||||||
|
volatile uint32_t time1 = Time_offset(0);
|
||||||
//Proc的DM空间申请
|
//Proc的DM空间申请
|
||||||
Receiver_Sync_First_Memory_Alloc();
|
Receiver_Sync_First_Memory_Alloc();
|
||||||
TRACE(TRACE_RECEIVER_SYNC_FIRST_ADDR, 3, 1);
|
TRACE(TRACE_RECEIVER_SYNC_FIRST_ADDR, 3, 1);
|
||||||
@ -209,12 +209,6 @@ void Receiver_First_Sync_Proc(receiver_sync2first_sync_t* msg_ptr, uint32_t msg_
|
|||||||
(61440)<<2,
|
(61440)<<2,
|
||||||
DMA_TAG_G2G,
|
DMA_TAG_G2G,
|
||||||
1);
|
1);
|
||||||
volatile uint32_t time1 = Time_offset(0);
|
|
||||||
while(time1 < 500000)
|
|
||||||
{
|
|
||||||
time1 = Time_offset(0);
|
|
||||||
}
|
|
||||||
|
|
||||||
ape_csu_dma_1D_G2L_ch2ch3_transfer((uint64_t)(src_addr1),
|
ape_csu_dma_1D_G2L_ch2ch3_transfer((uint64_t)(src_addr1),
|
||||||
(uint64_t)JESD_NRFDD_RX_SLOT_SRC1_DATA_ADDR,//第一次固定搬移到dm0
|
(uint64_t)JESD_NRFDD_RX_SLOT_SRC1_DATA_ADDR,//第一次固定搬移到dm0
|
||||||
(2048)<<2,
|
(2048)<<2,
|
||||||
@ -295,15 +289,17 @@ void Receiver_First_Sync_Proc(receiver_sync2first_sync_t* msg_ptr, uint32_t msg_
|
|||||||
|
|
||||||
TRACE(TRACE_RECEIVER_SYNC_FIRST_ADDR, 12, maxPosition);
|
TRACE(TRACE_RECEIVER_SYNC_FIRST_ADDR, 12, maxPosition);
|
||||||
TRACE(TRACE_RECEIVER_SYNC_FIRST_ADDR, 13, maxsum);
|
TRACE(TRACE_RECEIVER_SYNC_FIRST_ADDR, 13, maxsum);
|
||||||
TRACE(TRACE_RECEIVER_SYNC_FIRST_ADDR, 14, receiver_sync_first_temp_dm3_ptr[2]);
|
ape_csu_dma_1D_G2L_ch0ch1_transfer((uint64_t)(src_addr0 + ((sample_per_csu-1024)<<2)),
|
||||||
TRACE(TRACE_RECEIVER_SYNC_FIRST_ADDR, 15, receiver_sync_first_temp_dm3_ptr[3]);
|
|
||||||
ape_csu_dma_1D_G2L_ch0ch1_transfer((uint64_t)(src_addr0 + (sample_per_csu<<2)),
|
|
||||||
(uint64_t)DM_TO_CSU_ADDR(receiver_sync_first_temp_dm0_ptr),//
|
(uint64_t)DM_TO_CSU_ADDR(receiver_sync_first_temp_dm0_ptr),//
|
||||||
(61440 - sample_per_csu)<<2,
|
(61440 - sample_per_csu+1024)<<2,
|
||||||
DMA_TAG_G2L,
|
DMA_TAG_G2L,
|
||||||
0);
|
0);
|
||||||
|
while(time1 < 500000)
|
||||||
|
{
|
||||||
|
time1 = Time_offset(0);
|
||||||
|
}
|
||||||
ape_csu_dma_1D_G2L_ch2ch3_transfer((uint64_t)(src_addr1),
|
ape_csu_dma_1D_G2L_ch2ch3_transfer((uint64_t)(src_addr1),
|
||||||
(uint64_t)DM_TO_CSU_ADDR(receiver_sync_first_temp_dm0_ptr + (61440 - sample_per_csu)),//
|
(uint64_t)DM_TO_CSU_ADDR(receiver_sync_first_temp_dm0_ptr + (61440 - sample_per_csu+1024)),//
|
||||||
(2048)<<2,
|
(2048)<<2,
|
||||||
DMA_TAG_G2L,
|
DMA_TAG_G2L,
|
||||||
0);
|
0);
|
||||||
@ -316,7 +312,7 @@ void Receiver_First_Sync_Proc(receiver_sync2first_sync_t* msg_ptr, uint32_t msg_
|
|||||||
ByteCopy((int)cfg_addr,
|
ByteCopy((int)cfg_addr,
|
||||||
MPU_ADDR(receiver_sync_first_temp_dm0_ptr + 1024),//数据之间相差1024
|
MPU_ADDR(receiver_sync_first_temp_dm0_ptr + 1024),//数据之间相差1024
|
||||||
MPU_ADDR(receiver_sync_first_temp_dm1_ptr),
|
MPU_ADDR(receiver_sync_first_temp_dm1_ptr),
|
||||||
((sample_per_csu)<<2));
|
((sample_per_csu+1024)<<2));
|
||||||
|
|
||||||
|
|
||||||
WAIT_MPU_STOP;
|
WAIT_MPU_STOP;
|
||||||
@ -353,9 +349,11 @@ void Receiver_First_Sync_Proc(receiver_sync2first_sync_t* msg_ptr, uint32_t msg_
|
|||||||
|
|
||||||
TRACE(TRACE_RECEIVER_SYNC_FIRST_ADDR, 3, 7);
|
TRACE(TRACE_RECEIVER_SYNC_FIRST_ADDR, 3, 7);
|
||||||
LOG_ERROR_S("2 maxPosition:%d maxsum:%d\n",0xffff & receiver_sync_first_temp_dm3_ptr[0], receiver_sync_first_temp_dm3_ptr[1]);
|
LOG_ERROR_S("2 maxPosition:%d maxsum:%d\n",0xffff & receiver_sync_first_temp_dm3_ptr[0], receiver_sync_first_temp_dm3_ptr[1]);
|
||||||
|
TRACE(TRACE_RECEIVER_SYNC_FIRST_ADDR, 14, maxPosition);
|
||||||
|
TRACE(TRACE_RECEIVER_SYNC_FIRST_ADDR, 15, maxsum);
|
||||||
if(maxsum < receiver_sync_first_temp_dm3_ptr[1])
|
if(maxsum < receiver_sync_first_temp_dm3_ptr[1])
|
||||||
{
|
{
|
||||||
maxPosition = 0xffff & receiver_sync_first_temp_dm3_ptr[0];
|
maxPosition = 0xffff & receiver_sync_first_temp_dm3_ptr[0]+30208;
|
||||||
maxsum = receiver_sync_first_temp_dm3_ptr[1];
|
maxsum = receiver_sync_first_temp_dm3_ptr[1];
|
||||||
}
|
}
|
||||||
LOG_ERROR_S("3 maxPosition:%d maxsum:%d\n",maxPosition, maxsum);
|
LOG_ERROR_S("3 maxPosition:%d maxsum:%d\n",maxPosition, maxsum);
|
||||||
|
@ -130,22 +130,6 @@
|
|||||||
0x00000000,
|
0x00000000,
|
||||||
0x00000000,
|
0x00000000,
|
||||||
0x00000000,
|
0x00000000,
|
||||||
0x00001000,
|
|
||||||
0x00000004,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00020002,
|
|
||||||
0xf000f000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x003fffff,
|
|
||||||
0x0000000e,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000004,
|
0x00000004,
|
||||||
0x00000000,
|
0x00000000,
|
||||||
0x00000000,
|
0x00000000,
|
||||||
@ -174,38 +158,6 @@
|
|||||||
0x00000000,
|
0x00000000,
|
||||||
0x00000000,
|
0x00000000,
|
||||||
0x00000000,
|
0x00000000,
|
||||||
0x02434241,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x02424140,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000200,
|
0x00000200,
|
||||||
0x00000207,
|
0x00000207,
|
||||||
0x00000207,
|
0x00000207,
|
||||||
@ -226,6 +178,38 @@
|
|||||||
0x00000000,
|
0x00000000,
|
||||||
0x00000000,
|
0x00000000,
|
||||||
0x00000000,
|
0x00000000,
|
||||||
|
0x00000004,
|
||||||
|
0x00000000,
|
||||||
|
0x00000000,
|
||||||
|
0x00000000,
|
||||||
|
0xffffffff,
|
||||||
|
0x00000000,
|
||||||
|
0x00000000,
|
||||||
|
0x00000000,
|
||||||
|
0x003fffff,
|
||||||
|
0x0000000e,
|
||||||
|
0x00000000,
|
||||||
|
0x00000000,
|
||||||
|
0x00000000,
|
||||||
|
0x00000000,
|
||||||
|
0x00000000,
|
||||||
|
0x00000000,
|
||||||
|
0x00000004,
|
||||||
|
0x00000000,
|
||||||
|
0x00000000,
|
||||||
|
0x00000000,
|
||||||
|
0xffffffff,
|
||||||
|
0x00000000,
|
||||||
|
0x00000000,
|
||||||
|
0x00000000,
|
||||||
|
0x003fffff,
|
||||||
|
0x0000000e,
|
||||||
|
0x00000000,
|
||||||
|
0x00000000,
|
||||||
|
0x00000000,
|
||||||
|
0x00000000,
|
||||||
|
0x00000000,
|
||||||
|
0x00000000,
|
||||||
0x00001000,
|
0x00001000,
|
||||||
0x00000004,
|
0x00000004,
|
||||||
0x00000000,
|
0x00000000,
|
||||||
@ -270,23 +254,7 @@
|
|||||||
0x0000000e,
|
0x0000000e,
|
||||||
0x00000000,
|
0x00000000,
|
||||||
0x00000000,
|
0x00000000,
|
||||||
0x00000000,
|
0x00000400,
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000004,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0xffffffff,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x003fffff,
|
|
||||||
0x0000000e,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000295,
|
|
||||||
0x00000400,
|
0x00000400,
|
||||||
0x00007a00,
|
0x00007a00,
|
||||||
0x00000000,
|
0x00000000,
|
||||||
@ -302,38 +270,6 @@
|
|||||||
0x00000000,
|
0x00000000,
|
||||||
0x00000000,
|
0x00000000,
|
||||||
0x00000000,
|
0x00000000,
|
||||||
0x02434241,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x02424140,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000200,
|
0x00000200,
|
||||||
0x00000207,
|
0x00000207,
|
||||||
0x00000207,
|
0x00000207,
|
||||||
|
@ -59,7 +59,7 @@
|
|||||||
0x00000000,
|
0x00000000,
|
||||||
0x00000000,
|
0x00000000,
|
||||||
0x00020002,
|
0x00020002,
|
||||||
0xf000f000,
|
0xffffffff,
|
||||||
0x00000000,
|
0x00000000,
|
||||||
0x00000000,
|
0x00000000,
|
||||||
0x003fffff,
|
0x003fffff,
|
||||||
@ -76,25 +76,7 @@
|
|||||||
0x00000000,
|
0x00000000,
|
||||||
0x00000000,
|
0x00000000,
|
||||||
0x00020002,
|
0x00020002,
|
||||||
0xf000f000,
|
0xffffffff,
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x003fffff,
|
|
||||||
0x0000000e,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
|
|
||||||
//Output2 useless
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00001000,
|
|
||||||
0x00000004,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00020002,
|
|
||||||
0xf000f000,
|
|
||||||
0x00000000,
|
0x00000000,
|
||||||
0x00000000,
|
0x00000000,
|
||||||
0x003fffff,
|
0x003fffff,
|
||||||
@ -137,39 +119,3 @@
|
|||||||
0x00000000,
|
0x00000000,
|
||||||
0x00000000,
|
0x00000000,
|
||||||
0x00000000,
|
0x00000000,
|
||||||
|
|
||||||
//index1
|
|
||||||
0x02434241,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
|
|
||||||
//index2
|
|
||||||
0x02424140,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
@ -15,44 +15,7 @@
|
|||||||
0x00000207,
|
0x00000207,
|
||||||
0x00000207,
|
0x00000207,
|
||||||
0x00000207,
|
0x00000207,
|
||||||
|
//InputA
|
||||||
//InputA2
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00001000,
|
|
||||||
0x00000004,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00020002,
|
|
||||||
0xf000f000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x003fffff,
|
|
||||||
0x0000000e,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
|
|
||||||
//InputB2
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00001000,
|
|
||||||
0x00000004,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00020002,
|
|
||||||
0xf000f000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x003fffff,
|
|
||||||
0x0000000e,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
|
|
||||||
//Maxdata read
|
|
||||||
0x00000000,
|
0x00000000,
|
||||||
0x00000000,
|
0x00000000,
|
||||||
0x00000000,
|
0x00000000,
|
||||||
@ -69,8 +32,59 @@
|
|||||||
0x0000000e,
|
0x0000000e,
|
||||||
0x00000000,
|
0x00000000,
|
||||||
0x00000000,
|
0x00000000,
|
||||||
|
//InputB
|
||||||
|
0x00000000,
|
||||||
|
0x00000000,
|
||||||
|
0x00000000,
|
||||||
|
0x00000000,
|
||||||
|
0x00000004,
|
||||||
|
0x00000000,
|
||||||
|
0x00000000,
|
||||||
|
0x00000000,
|
||||||
|
0xffffffff,
|
||||||
|
0x00000000,
|
||||||
|
0x00000000,
|
||||||
|
0x00000000,
|
||||||
|
0x003fffff,
|
||||||
|
0x0000000e,
|
||||||
|
0x00000000,
|
||||||
|
0x00000000,
|
||||||
|
//InputA2
|
||||||
|
0x00000000,
|
||||||
|
0x00000000,
|
||||||
|
0x00000000,
|
||||||
|
0x00000000,
|
||||||
|
0x00001000,
|
||||||
|
0x00000004,
|
||||||
|
0x00000000,
|
||||||
|
0x00000000,
|
||||||
|
0x00020002,
|
||||||
|
0xffffffff,
|
||||||
|
0x00000000,
|
||||||
|
0x00000000,
|
||||||
|
0x003fffff,
|
||||||
|
0x0000000e,
|
||||||
|
0x00000000,
|
||||||
|
0x00000000,
|
||||||
|
//InputB2
|
||||||
|
0x00000000,
|
||||||
|
0x00000000,
|
||||||
|
0x00000000,
|
||||||
|
0x00000000,
|
||||||
|
0x00001000,
|
||||||
|
0x00000004,
|
||||||
|
0x00000000,
|
||||||
|
0x00000000,
|
||||||
|
0x00020002,
|
||||||
|
0xffffffff,
|
||||||
|
0x00000000,
|
||||||
|
0x00000000,
|
||||||
|
0x003fffff,
|
||||||
|
0x0000000e,
|
||||||
|
0x00000000,
|
||||||
|
0x00000000,
|
||||||
|
|
||||||
//Maxdata write
|
//Maxdata
|
||||||
0x00000000,
|
0x00000000,
|
||||||
0x00000000,
|
0x00000000,
|
||||||
0x00000000,
|
0x00000000,
|
||||||
@ -89,7 +103,7 @@
|
|||||||
0x00000000,
|
0x00000000,
|
||||||
|
|
||||||
//KI0
|
//KI0
|
||||||
0x00000295,
|
0x00000400,
|
||||||
0x00000400,
|
0x00000400,
|
||||||
0x00007600,
|
0x00007600,
|
||||||
0x00000000,
|
0x00000000,
|
||||||
@ -105,39 +119,3 @@
|
|||||||
0x00000000,
|
0x00000000,
|
||||||
0x00000000,
|
0x00000000,
|
||||||
0x00000000,
|
0x00000000,
|
||||||
|
|
||||||
//index1
|
|
||||||
0x02434241,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
|
|
||||||
//index2
|
|
||||||
0x02424140,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
||||||
0x00000000,
|
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -14,11 +14,11 @@
|
|||||||
BIU1:Load(T0)(A++) -> M[2](Mode0);//InputB
|
BIU1:Load(T0)(A++) -> M[2](Mode0);//InputB
|
||||||
BIU1:Load(T0)(A++) -> M[3](Mode0);//InputA2
|
BIU1:Load(T0)(A++) -> M[3](Mode0);//InputA2
|
||||||
BIU1:Load(T0)(A++) -> M[4](Mode0);//InputB2
|
BIU1:Load(T0)(A++) -> M[4](Mode0);//InputB2
|
||||||
BIU1:Load(T0)(A++) -> M[5](Mode0);//useless
|
//BIU1:Load(T0)(A++) -> M[5](Mode0);//useless
|
||||||
BIU1:Load(T0)(A++) -> M[6](Mode0);//Maxdata
|
BIU1:Load(T0)(A++) -> M[6](Mode0);//Maxdata
|
||||||
BIU1:Load(T0)(A++) -> M[63](Mode0);//KI0
|
BIU1:Load(T0)(A++) -> M[63](Mode0);//KI0
|
||||||
BIU1:Load(T0)(A++) -> SHU0.T0(Mode0);//index1
|
//BIU1:Load(T0)(A++) -> SHU0.T0(Mode0);//index1
|
||||||
BIU1:Load(T0)(A++) -> SHU0.T4(Mode0);//index2
|
//BIU1:Load(T0)(A++) -> SHU0.T4(Mode0);//index2
|
||||||
NOP;
|
NOP;
|
||||||
NOP;
|
NOP;
|
||||||
NOP;
|
NOP;
|
||||||
@ -75,24 +75,6 @@ Sum_1024:
|
|||||||
IMA3:V(1) -> IMA3.T1;
|
IMA3:V(1) -> IMA3.T1;
|
||||||
IMA3:V(0) -> IMA3.T0;
|
IMA3:V(0) -> IMA3.T0;
|
||||||
IMA1:V(0) -> IMA1.T0;
|
IMA1:V(0) -> IMA1.T0;
|
||||||
/*IMA0:ReadMR(L)-> SHU0.T1(Mode0);
|
|
||||||
IMA0:ReadMR(O1)-> SHU0.T2(Mode0);
|
|
||||||
IMA0:ReadMR(O1)-> IMA2.T2(Mode0);
|
|
||||||
R0:M[3] -> BIU0.T0(Mode0);
|
|
||||||
R3:M[4] -> BIU3.T0(Mode0);
|
|
||||||
IMA1:0+0*0(ShiftMode0)(C)(B)(SSS)(T) -> IMA1.MR(Mode0);
|
|
||||||
IMA3:V(1) -> IMA3.T1;
|
|
||||||
IMA3:V(0) -> IMA3.T0;
|
|
||||||
IMA1:V(0) -> IMA1.T0;
|
|
||||||
SHU0:Index(T1,T0)(Mode0);
|
|
||||||
SHU0:Index(T2,T0)->IMA2.T1(Mode0);
|
|
||||||
IMA2:T2 >> 2 (W) (U) -> SHU0.T2;
|
|
||||||
NOP;
|
|
||||||
IMA2:T1 >> 2 (W) (U) -> SHU0.T1;
|
|
||||||
NOP;
|
|
||||||
NOP;
|
|
||||||
SHU0:Index(T1,T4)(Mode0);
|
|
||||||
SHU0:Index(T2,T4)->IMA1.T3(Mode0);*/
|
|
||||||
MFetch:LPTO %Slide_Win @(KI2 - 0);
|
MFetch:LPTO %Slide_Win @(KI2 - 0);
|
||||||
BIU0:Load(T0)(A++) -> IMA0.T0(Mode0)||BIU3:Load(T0)(A++) -> IMA0.T1(Mode0);
|
BIU0:Load(T0)(A++) -> IMA0.T0(Mode0)||BIU3:Load(T0)(A++) -> IMA0.T1(Mode0);
|
||||||
BIU0:Load(T0)(A++) -> IMA0.T2(Mode0)||BIU3:Load(T0)(A++) -> IMA0.T3(Mode0);
|
BIU0:Load(T0)(A++) -> IMA0.T2(Mode0)||BIU3:Load(T0)(A++) -> IMA0.T3(Mode0);
|
||||||
@ -145,21 +127,11 @@ Slide_Win:
|
|||||||
NOP;
|
NOP;
|
||||||
BIU2:Store(T1,T0)(Mode0)(A++);
|
BIU2:Store(T1,T0)(Mode0)(A++);
|
||||||
BIU2:Store(T2,T0)(Mode0)(A++);
|
BIU2:Store(T2,T0)(Mode0)(A++);
|
||||||
BIU2:Store(T3,T0)(Mode0)(A++);
|
//BIU2:Store(T3,T0)(Mode0)(A++);
|
||||||
NOP;
|
NOP;
|
||||||
NOP;
|
NOP;
|
||||||
NOP;
|
NOP;
|
||||||
NOP;
|
NOP;
|
||||||
IMA0:ReadMR(L)-> BIU2.T1(Mode0);
|
|
||||||
IMA0:ReadMR(O1)-> BIU2.T2(Mode0);
|
|
||||||
NOP;
|
|
||||||
NOP;
|
|
||||||
NOP;
|
|
||||||
NOP;
|
|
||||||
NOP;
|
|
||||||
BIU2:Store(T1,T0)(Mode0)(A++);
|
|
||||||
BIU2:Store(T2,T0)(Mode0)(A++);
|
|
||||||
NOP;
|
|
||||||
NOP;
|
NOP;
|
||||||
NOP;
|
NOP;
|
||||||
NOP;
|
NOP;
|
||||||
|
@ -10,13 +10,13 @@
|
|||||||
NOP;
|
NOP;
|
||||||
NOP;
|
NOP;
|
||||||
BIU1:Load(T0)(A++) -> M[0](Mode0);
|
BIU1:Load(T0)(A++) -> M[0](Mode0);
|
||||||
BIU1:Load(T0)(A++) -> M[1](Mode0);//InputA2
|
BIU1:Load(T0)(A++) -> M[1](Mode0);//InputA
|
||||||
BIU1:Load(T0)(A++) -> M[2](Mode0);//InputB2
|
BIU1:Load(T0)(A++) -> M[2](Mode0);//InputB
|
||||||
BIU1:Load(T0)(A++) -> M[3](Mode0);//Maxdata read
|
BIU1:Load(T0)(A++) -> M[3](Mode0);//InputA2
|
||||||
BIU1:Load(T0)(A++) -> M[4](Mode0);//Maxdata write
|
BIU1:Load(T0)(A++) -> M[4](Mode0);//InputB2
|
||||||
|
//BIU1:Load(T0)(A++) -> M[5](Mode0);//useless
|
||||||
|
BIU1:Load(T0)(A++) -> M[6](Mode0);//Maxdata
|
||||||
BIU1:Load(T0)(A++) -> M[63](Mode0);//KI0
|
BIU1:Load(T0)(A++) -> M[63](Mode0);//KI0
|
||||||
BIU1:Load(T0)(A++) -> SHU0.T0(Mode0);//index1
|
|
||||||
BIU1:Load(T0)(A++) -> SHU0.T4(Mode0);//index2
|
|
||||||
NOP;
|
NOP;
|
||||||
NOP;
|
NOP;
|
||||||
NOP;
|
NOP;
|
||||||
@ -25,17 +25,20 @@
|
|||||||
R0:M[0] -> IMA0.T0(Mode0);
|
R0:M[0] -> IMA0.T0(Mode0);
|
||||||
R0:M[1] -> BIU0.T0(Mode0) || R1:M[0] -> IMA1.T0(Mode0);
|
R0:M[1] -> BIU0.T0(Mode0) || R1:M[0] -> IMA1.T0(Mode0);
|
||||||
R3:M[2] -> BIU3.T0(Mode0) || R2:M[0] -> IMA2.T0(Mode0);
|
R3:M[2] -> BIU3.T0(Mode0) || R2:M[0] -> IMA2.T0(Mode0);
|
||||||
R2:M[3] -> BIU2.T0(Mode0) || R3:M[0] -> IMA3.T0(Mode0);
|
R3:M[0] -> IMA3.T0(Mode0);
|
||||||
R2:M[4] -> BIU2.T1(Mode0);
|
|
||||||
R5:PreConfig(M[63])(Mode0);
|
R5:PreConfig(M[63])(Mode0);
|
||||||
R5:WriteConf(Mfetch)->KI[0-3](Mode0)||IMA0:SetShiftMode(T0) -> SHIFTMODE0(Mode0);
|
R5:WriteConf(Mfetch)->KI[0-3](Mode0)||IMA0:SetShiftMode(T0) -> SHIFTMODE0(Mode0);
|
||||||
R5:WriteConf(Mfetch)->KI[4-7](Mode0)||IMA1:SetShiftMode(T0) -> SHIFTMODE0(Mode0);
|
R5:WriteConf(Mfetch)->KI[4-7](Mode0)||IMA1:SetShiftMode(T0) -> SHIFTMODE0(Mode0);
|
||||||
IMA2:SetShiftMode(T0) -> SHIFTMODE0(Mode0)||R2:M[6]->BIU2.T0(Mode0);
|
IMA2:SetShiftMode(T0) -> SHIFTMODE0(Mode0)||R2:M[6]->BIU2.T0(Mode0);
|
||||||
IMA0:0+0*0(ShiftMode0)(C)(B)(SSS)(T) -> IMA0.MR(Mode0);
|
IMA0:0+0*0(ShiftMode0)(C)(B)(SSS)(T) -> IMA0.MR(Mode0);
|
||||||
BIU2:Load(T0)(A++) -> IMA1.T0(Mode0);
|
NOP;
|
||||||
BIU2:Load(T0)(A++) -> IMA1.T3(Mode0);
|
NOP;
|
||||||
BIU2:Load(T0)(A++) -> IMA0.T1(Mode0);
|
NOP;
|
||||||
BIU2:Load(T0)(A++) -> IMA0.T2(Mode0);
|
NOP;
|
||||||
|
NOP;
|
||||||
|
NOP;
|
||||||
|
MFetch:LPTO %Sum_1024 @(KI0 - 0);
|
||||||
|
BIU0:Load(T0)(A++) -> IMA0.T1(Mode0)||BIU3:Load(T0)(A++) -> IMA0.T2(Mode0);
|
||||||
NOP;
|
NOP;
|
||||||
NOP;
|
NOP;
|
||||||
NOP;
|
NOP;
|
||||||
@ -46,11 +49,31 @@
|
|||||||
NOP;
|
NOP;
|
||||||
NOP;
|
NOP;
|
||||||
NOP;
|
NOP;
|
||||||
IMA0:SetMR(T1)(O1) (Mode0);
|
IMA0: MR+T1*T2(ShiftMode0)(C)(S)(SSS)(T) -> IMA0.MR(Mode0);
|
||||||
IMA0:SetMR(T2)(L) (Mode0);
|
NOP;
|
||||||
|
NOP;
|
||||||
|
NOP;
|
||||||
|
//IMA0:SetMR(0)(H)(Mode0);
|
||||||
|
Sum_1024:
|
||||||
|
//IMA0: MR + 0*0(ShiftMode0)(C)(S)(SSS)(T) -> IMA0.T3(Mode0);
|
||||||
|
R0:M[3] -> BIU0.T0(Mode0);
|
||||||
|
R3:M[4] -> BIU3.T0(Mode0);
|
||||||
|
IMA0:ReadMR(L)->IMA2.T0;//real
|
||||||
|
IMA0:ReadMR(O1)->IMA2.T2;//overflow real
|
||||||
|
NOP;
|
||||||
|
NOP;
|
||||||
|
NOP;
|
||||||
|
NOP;
|
||||||
|
IMA2:T0>>10(W)(U)->T0;
|
||||||
|
NOP;
|
||||||
|
NOP;
|
||||||
|
IMA2:T2>>16(W)(U)->T2;
|
||||||
|
IMA2:Ttmp<<22(W)(T)->IMA2.T2;
|
||||||
|
IMA2:T0+Ttmp(W)(U)->IMA1.T3;
|
||||||
IMA3:V(1) -> IMA3.T1;
|
IMA3:V(1) -> IMA3.T1;
|
||||||
IMA3:V(0) -> IMA3.T0;
|
IMA3:V(0) -> IMA3.T0;
|
||||||
IMA1:V(0) -> IMA1.T0;
|
IMA1:V(0) -> IMA1.T0;
|
||||||
|
|
||||||
MFetch:LPTO %Slide_Win @(KI2 - 0);
|
MFetch:LPTO %Slide_Win @(KI2 - 0);
|
||||||
BIU0:Load(T0)(A++) -> IMA0.T0(Mode0)||BIU3:Load(T0)(A++) -> IMA0.T1(Mode0);
|
BIU0:Load(T0)(A++) -> IMA0.T0(Mode0)||BIU3:Load(T0)(A++) -> IMA0.T1(Mode0);
|
||||||
BIU0:Load(T0)(A++) -> IMA0.T2(Mode0)||BIU3:Load(T0)(A++) -> IMA0.T3(Mode0);
|
BIU0:Load(T0)(A++) -> IMA0.T2(Mode0)||BIU3:Load(T0)(A++) -> IMA0.T3(Mode0);
|
||||||
@ -94,13 +117,19 @@ Slide_Win:
|
|||||||
NOP;
|
NOP;
|
||||||
NOP;
|
NOP;
|
||||||
NOP;
|
NOP;
|
||||||
IMA1:T0 -> BIU2.T2;
|
IMA1:T0 -> BIU2.T1;
|
||||||
IMA1:T3 -> BIU2.T3;
|
IMA1:T3 -> BIU2.T2;
|
||||||
|
NOP;
|
||||||
|
NOP;
|
||||||
|
NOP;
|
||||||
|
NOP;
|
||||||
|
NOP;
|
||||||
|
BIU2:Store(T1,T0)(Mode0)(A++);
|
||||||
|
BIU2:Store(T2,T0)(Mode0)(A++);
|
||||||
|
//BIU2:Store(T3,T0)(Mode0)(A++);
|
||||||
NOP;
|
NOP;
|
||||||
NOP;
|
NOP;
|
||||||
NOP;
|
NOP;
|
||||||
BIU2:Store(T2,T1)(Mode0)(A++);
|
|
||||||
BIU2:Store(T3,T1)(Mode0)(A++);
|
|
||||||
NOP;
|
NOP;
|
||||||
NOP;
|
NOP;
|
||||||
NOP;
|
NOP;
|
||||||
@ -109,4 +138,3 @@ Slide_Win:
|
|||||||
NOP;
|
NOP;
|
||||||
MFetch:REPEAT @(10);
|
MFetch:REPEAT @(10);
|
||||||
MFetch:MPU.STOP;
|
MFetch:MPU.STOP;
|
||||||
|
|
||||||
|
@ -9,5 +9,5 @@ void SlidingCorrelation(int ConfigAddr, int InAddr1, int InAddr2, int MaxAddr) {
|
|||||||
Para[16*3+1] = InAddr1;
|
Para[16*3+1] = InAddr1;
|
||||||
Para[16*4+0] = InAddr2;
|
Para[16*4+0] = InAddr2;
|
||||||
Para[16*4+1] = InAddr2;
|
Para[16*4+1] = InAddr2;
|
||||||
Para[16*6+0] = MaxAddr;
|
Para[16*5+0] = MaxAddr;
|
||||||
}
|
}
|
||||||
|
@ -4,10 +4,11 @@ void SlidingCorrelationSecond(int ConfigAddr, int InAddr1, int InAddr2, int MaxA
|
|||||||
volatile unsigned int *Para = (volatile unsigned int *)ConfigAddr;
|
volatile unsigned int *Para = (volatile unsigned int *)ConfigAddr;
|
||||||
|
|
||||||
Para[16*1+0] = InAddr1;
|
Para[16*1+0] = InAddr1;
|
||||||
Para[16*1+1] = InAddr1;
|
|
||||||
Para[16*2+0] = InAddr2;
|
Para[16*2+0] = InAddr2;
|
||||||
Para[16*2+1] = InAddr2;
|
Para[16*3+0] = InAddr1;
|
||||||
Para[16*3+0] = MaxAddr;
|
Para[16*3+1] = InAddr1;
|
||||||
Para[16*4+0] = MaxAddr;
|
Para[16*4+0] = InAddr2;
|
||||||
|
Para[16*4+1] = InAddr2;
|
||||||
|
Para[16*5+0] = MaxAddr;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -39,8 +39,8 @@ __DM3 int ConfigMatrix2[] = {
|
|||||||
|
|
||||||
__DM1 int slice1[1055]; // 用于存储Input1切片数据
|
__DM1 int slice1[1055]; // 用于存储Input1切片数据
|
||||||
__DM2 int slice2[1055]; // 用于存储Input2切片数据
|
__DM2 int slice2[1055]; // 用于存储Input2切片数据
|
||||||
__DM5 int MaxData[4];//bestposition maxsum lastsum
|
__DM5 int MaxData[2];//bestposition maxsum lastsum
|
||||||
__DM5 int MaxData2[4];//bestposition maxsum
|
__DM5 int MaxData2[2];//bestposition maxsum
|
||||||
__DM0 int result[2]; // 存储SyncVer微码模块的计算结果
|
__DM0 int result[2]; // 存储SyncVer微码模块的计算结果
|
||||||
|
|
||||||
__DM4 int OutputData2[1055];
|
__DM4 int OutputData2[1055];
|
||||||
@ -78,10 +78,10 @@ int main(void) {
|
|||||||
SlidingCorrelationAsm(SVRReg);
|
SlidingCorrelationAsm(SVRReg);
|
||||||
a = __ucps2_getStatB();
|
a = __ucps2_getStatB();
|
||||||
__ucps2_delay();
|
__ucps2_delay();
|
||||||
MaxData2[0] = MaxData[0];
|
maxPosition = MaxData[0]&0x0000ffff;
|
||||||
MaxData2[1] = MaxData[1];
|
maxsum = MaxData[1];
|
||||||
MaxData2[2] = MaxData[2];
|
printf("初步同步位置:%d\n", maxPosition);
|
||||||
MaxData2[3] = MaxData[3];
|
printf("maxsum:%d\n", maxsum);
|
||||||
//second part
|
//second part
|
||||||
SlidingCorrelationSecond((int)ConfigMatrix2, MPU_ADDR(Input1_part2), MPU_ADDR(Input2_part2), MPU_ADDR(MaxData2));
|
SlidingCorrelationSecond((int)ConfigMatrix2, MPU_ADDR(Input1_part2), MPU_ADDR(Input2_part2), MPU_ADDR(MaxData2));
|
||||||
SVRReg[0] = MPU_ADDR(ConfigMatrix2);
|
SVRReg[0] = MPU_ADDR(ConfigMatrix2);
|
||||||
@ -89,7 +89,8 @@ int main(void) {
|
|||||||
a = __ucps2_getStatB();
|
a = __ucps2_getStatB();
|
||||||
__ucps2_delay();
|
__ucps2_delay();
|
||||||
uint32_t time1 = tick();
|
uint32_t time1 = tick();
|
||||||
if(0==MaxData2[0])
|
|
||||||
|
/*if(0==MaxData2[0])
|
||||||
{
|
{
|
||||||
if(MaxData[1]==MaxData2[1])
|
if(MaxData[1]==MaxData2[1])
|
||||||
{
|
{
|
||||||
@ -104,13 +105,14 @@ int main(void) {
|
|||||||
{
|
{
|
||||||
maxPosition = MaxData2[0]&0x0000ffff+DATA_SIZE/2-1;
|
maxPosition = MaxData2[0]&0x0000ffff+DATA_SIZE/2-1;
|
||||||
maxsum = MaxData2[1];
|
maxsum = MaxData2[1];
|
||||||
};
|
};*/
|
||||||
// 设置同步标志
|
// 设置同步标志
|
||||||
is_synced = 1;
|
is_synced = 1;
|
||||||
|
|
||||||
|
maxPosition = MaxData2[0]&0x0000ffff;
|
||||||
|
maxsum = MaxData2[1];
|
||||||
printf("初步同步位置:%d\n", maxPosition);
|
printf("初步同步位置:%d\n", maxPosition);
|
||||||
printf("maxsum:%d\n", maxsum);
|
printf("maxsum:%d\n", maxsum);
|
||||||
printf("time:%d\n", time1-time0);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*// 同步后,执行精确同步位置计算
|
/*// 同步后,执行精确同步位置计算
|
||||||
|
Loading…
x
Reference in New Issue
Block a user