📄 source5.uci
字号:
>>ROT7 "SHIFT_CNTL/LEFT_ROT, SHIFT_AMT/7"
>>ROT8 "SHIFT_CNTL/LEFT_ROT, SHIFT_AMT/8"
>>ROT9 "SHIFT_CNTL/LEFT_ROT, SHIFT_AMT/9"
>>ROT00 "SHIFT_CNTL/LEFT_ROT, SHIFT_AMT/0"
>>ROT01 "SHIFT_CNTL/LEFT_ROT, SHIFT_AMT/1"
>>ROT02 "SHIFT_CNTL/LEFT_ROT, SHIFT_AMT/2"
>>ROT03 "SHIFT_CNTL/LEFT_ROT, SHIFT_AMT/3"
>>ROT04 "SHIFT_CNTL/LEFT_ROT, SHIFT_AMT/4"
>>ROT05 "SHIFT_CNTL/LEFT_ROT, SHIFT_AMT/5"
>>ROT06 "SHIFT_CNTL/LEFT_ROT, SHIFT_AMT/6"
>>ROT07 "SHIFT_CNTL/LEFT_ROT, SHIFT_AMT/7"
>>ROT08 "SHIFT_CNTL/LEFT_ROT, SHIFT_AMT/8"
>>ROT09 "SHIFT_CNTL/LEFT_ROT, SHIFT_AMT/9"
>>ROT10 "SHIFT_CNTL/LEFT_ROT, SHIFT_AMT/10"
>>ROT11 "SHIFT_CNTL/LEFT_ROT, SHIFT_AMT/11"
>>ROT12 "SHIFT_CNTL/LEFT_ROT, SHIFT_AMT/12"
>>ROT13 "SHIFT_CNTL/LEFT_ROT, SHIFT_AMT/13"
>>ROT14 "SHIFT_CNTL/LEFT_ROT, SHIFT_AMT/14"
>>ROT15 "SHIFT_CNTL/LEFT_ROT, SHIFT_AMT/15"
>>ROT16 "SHIFT_CNTL/LEFT_ROT, SHIFT_AMT/16"
>>ROT17 "SHIFT_CNTL/LEFT_ROT, SHIFT_AMT/17"
>>ROT18 "SHIFT_CNTL/LEFT_ROT, SHIFT_AMT/18"
>>ROT19 "SHIFT_CNTL/LEFT_ROT, SHIFT_AMT/19"
>>ROT20 "SHIFT_CNTL/LEFT_ROT, SHIFT_AMT/20"
>>ROT21 "SHIFT_CNTL/LEFT_ROT, SHIFT_AMT/21"
>>ROT22 "SHIFT_CNTL/LEFT_ROT, SHIFT_AMT/22"
>>ROT23 "SHIFT_CNTL/LEFT_ROT, SHIFT_AMT/23"
>>ROT24 "SHIFT_CNTL/LEFT_ROT, SHIFT_AMT/24"
>>ROT25 "SHIFT_CNTL/LEFT_ROT, SHIFT_AMT/25"
>>ROT26 "SHIFT_CNTL/LEFT_ROT, SHIFT_AMT/26"
>>ROT27 "SHIFT_CNTL/LEFT_ROT, SHIFT_AMT/27"
>>ROT28 "SHIFT_CNTL/LEFT_ROT, SHIFT_AMT/28"
>>ROT29 "SHIFT_CNTL/LEFT_ROT, SHIFT_AMT/29"
>>ROT30 "SHIFT_CNTL/LEFT_ROT, SHIFT_AMT/30"
>>ROT31 "SHIFT_CNTL/LEFT_ROT, SHIFT_AMT/31"
; DBL_SHF formats
DBL_SHF[,,,] "UW_TYPE1/ALU_SHIFT, REL_DEST/@1, REL_A_OP/@2, ALU_OP/B, REL_B_OP/@3, DBL_SHF:@4, ALU_SHF_OP_SWAP/TRUE"
DBL_SHF_[,,,] "UW_TYPE1/ALU_SHIFT, REL_DEST/@1, REL_B_OP/@2, ALU_OP/B, REL_A_OP/@3, DBL_SHF:@4, ALU_SHF_OP_SWAP/FALSE"
DBL_SHF_LI[,,,] "UW_TYPE1/ALU_SHIFT, REL_DEST/@1, REL_A_OP/@2, ALU_OP/B, REL_B_OP/@3, IMMED_OP/TRUE, AB_IMMED/A, DBL_SHF:@4,
ALU_SHF_OP_SWAP/TRUE"
DBL_SHF_RI[,,,] "UW_TYPE1/ALU_SHIFT, REL_DEST/@1, REL_A_OP/@2, ALU_OP/B, REL_B_OP/@3, IMMED_OP/TRUE, AB_IMMED/B, DBL_SHF:@4,
ALU_SHF_OP_SWAP/TRUE"
DBL_SHF_RI_[,,,] "UW_TYPE1/ALU_SHIFT, REL_DEST/@1, REL_B_OP/@2, ALU_OP/B, REL_A_OP/@3, IMMED_OP/TRUE, AB_IMMED/A, DBL_SHF:@4,
ALU_SHF_OP_SWAP/FALSE"
DBL_SHF_LI_[,,,] "UW_TYPE1/ALU_SHIFT, REL_DEST/@1, REL_B_OP/@2, ALU_OP/B, REL_A_OP/@3, IMMED_OP/TRUE, AB_IMMED/B, DBL_SHF:@4,
ALU_SHF_OP_SWAP/FALSE"
; LD_FIELD formats
LD_FIELD_B[,,,] "UW_TYPE/EXT_2_SRC, EXT_2_OP_CMD1/LD_FIELD, REL_A_OP/@1, BYTE_MASK/@2, REL_B_OP/@3, :@4, LD_FIELD_OP_SWAP/FALSE"
LD_FIELD_A[,,,] "UW_TYPE/EXT_2_SRC, EXT_2_OP_CMD1/LD_FIELD, REL_B_OP/@1, BYTE_MASK/@2, REL_A_OP/@3, :@4, LD_FIELD_OP_SWAP/TRUE"
LD_FIELD_W_CLR_B[,,,] "UW_TYPE/EXT_2_SRC, EXT_2_OP_CMD1/LD_FIELD, REL_A_OP/@1, BYTE_MASK/@2, REL_B_OP/@3, :@4, LD_FIELD_OP_SWAP/FALSE,
LD_INTO_ZEROS/TRUE"
LD_FIELD_W_CLR_A[,,,] "UW_TYPE/EXT_2_SRC, EXT_2_OP_CMD1/LD_FIELD, REL_B_OP/@1, BYTE_MASK/@2, REL_A_OP/@3, :@4, LD_FIELD_OP_SWAP/TRUE,
LD_INTO_ZEROS/TRUE"
; _B or _A refers to side that would contain the mask...not the field to be tested
FIND_BSET_A[,] "UW_TYPE/EXT_2_SRC, EXT_2_OP_CMD1/FIND_BSET, REL_A_OP/--, REL_B_OP/@1, :@2, LD_FIELD_OP_SWAP/FALSE"
FIND_BSET_B[,] "UW_TYPE/EXT_2_SRC, EXT_2_OP_CMD1/FIND_BSET, REL_A_OP/@1, REL_B_OP/--, :@2, LD_FIELD_OP_SWAP/TRUE"
FIND_BSET_WITH_MASK_A[,,] "UW_TYPE/EXT_2_SRC, EXT_2_OP_CMD1/FIND_BSET, REL_A_OP/@1, REL_B_OP/@2, :@3, BSET_MASK/TRUE, LD_FIELD_OP_SWAP/FALSE"
FIND_BSET_WITH_MASK_B[,,] "UW_TYPE/EXT_2_SRC, EXT_2_OP_CMD1/FIND_BSET, REL_A_OP/@2, REL_B_OP/@1, :@3, BSET_MASK/TRUE, LD_FIELD_OP_SWAP/TRUE"
FIND_BSET_WITH_MASK_AI[,,] "UW_TYPE/EXT_2_SRC, EXT_2_OP_CMD1/FIND_BSET, REL_A_OP/@1, REL_B_OP/@2, :@3, IMMED_OP/TRUE, AB_IMMED/A,
BSET_MASK/TRUE, LD_FIELD_OP_SWAP/FALSE"
FIND_BSET_WITH_MASK_BI[,,] "UW_TYPE/EXT_2_SRC, EXT_2_OP_CMD1/FIND_BSET, REL_A_OP/@2, REL_B_OP/@1, :@3, IMMED_OP/TRUE, AB_IMMED/B,
BSET_MASK/TRUE, LD_FIELD_OP_SWAP/TRUE"
; _B ==> result immediate data loaded on B side (destination is on A side)
LOAD_BSET_RESULT1_B[] "UW_TYPE/EXT_2_SRC, EXT_2_OP_CMD1/FIND_BSET, REL_A_OP/@1, REL_B_OP/--, IMMED_OP/TRUE, AB_IMMED/B,
BSET_RES1/TRUE, LD_FIELD_OP_SWAP/FALSE, <<0"
LOAD_BSET_RESULT1_A[] "UW_TYPE/EXT_2_SRC, EXT_2_OP_CMD1/FIND_BSET, REL_A_OP/--, REL_B_OP/@1, IMMED_OP/TRUE, AB_IMMED/A,
BSET_RES1/TRUE, LD_FIELD_OP_SWAP/TRUE, <<0"
LOAD_BSET_RESULT2_B[] "UW_TYPE/EXT_2_SRC, EXT_2_OP_CMD1/FIND_BSET, REL_A_OP/@1, REL_B_OP/--, IMMED_OP/TRUE, AB_IMMED/B,
BSET_RES2/TRUE, LD_FIELD_OP_SWAP/FALSE, <<0"
LOAD_BSET_RESULT2_A[] "UW_TYPE/EXT_2_SRC, EXT_2_OP_CMD1/FIND_BSET, REL_A_OP/--, REL_B_OP/@1, IMMED_OP/TRUE, AB_IMMED/A,
BSET_RES2/TRUE, LD_FIELD_OP_SWAP/TRUE, <<0"
CLR_RESULTS "BSET_CLR_RESULT/TRUE"
LOCAL_CSR_RD[] "UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/FBOX_CSR, FBOX_CSR_ADDRESS/@1, FBOX_CSR_OP/RD, FBOX_CSR_ZERO/FALSE"
LOCAL_CSR_WR[,] "UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/FBOX_CSR, FBOX_CSR_ADDRESS/@1, AB_REL_SRC/@2, FBOX_CSR_OP/WR, FBOX_CSR_ZERO/FALSE"
LOCAL_CSR_WR_Z[,] "UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/FBOX_CSR, FBOX_CSR_ADDRESS/@1, AB_REL_SRC/@2, FBOX_CSR_OP/WR, FBOX_CSR_ZERO/TRUE"
; reference issuing formats
SRAM[,,,,] "SRAM UW_TYPE/EXT_2_SRC, EXT_2_OP_CMD2/@1, XFER_REG/@2, REL_A_OP/@3, REL_B_OP/@4, REF_CNT/@5"
SRAM_AI[,,,,] "SRAM UW_TYPE/EXT_2_SRC, EXT_2_OP_CMD2/@1, XFER_REG/@2, REL_A_OP/@3, REL_B_OP/@4, REF_CNT/@5, IMMED_OP/TRUE, AB_IMMED/A"
SRAM_BI[,,,,] "SRAM UW_TYPE/EXT_2_SRC, EXT_2_OP_CMD2/@1, XFER_REG/@2, REL_A_OP/@3, REL_B_OP/@4, REF_CNT/@5, IMMED_OP/TRUE, AB_IMMED/B"
SCRATCH[,,,,] "SRAM UW_TYPE/EXT_2_SRC, EXT_2_OP_CMD2/@1, XFER_REG/@2, REL_A_OP/@3, REL_B_OP/@4, REF_CNT/@5, SCRATCH_PAD/TRUE"
SCRATCH_AI[,,,,] "SRAM UW_TYPE/EXT_2_SRC, EXT_2_OP_CMD2/@1, XFER_REG/@2, REL_A_OP/@3, REL_B_OP/@4, REF_CNT/@5, IMMED_OP/TRUE,
AB_IMMED/A, SCRATCH_PAD/TRUE"
SCRATCH_BI[,,,,] "SRAM UW_TYPE/EXT_2_SRC, EXT_2_OP_CMD2/@1, XFER_REG/@2, REL_A_OP/@3, REL_B_OP/@4, REF_CNT/@5, IMMED_OP/TRUE,
AB_IMMED/B, SCRATCH_PAD/TRUE"
SDRAM[,,,,] "SDRAM UW_TYPE/EXT_2_SRC, EXT_2_OP_CMD1/@1, XFER_REG/@2, REL_A_OP/@3, REL_B_OP/@4, REF_CNT/@5"
SDRAM_AI[,,,,] "SDRAM UW_TYPE/EXT_2_SRC, EXT_2_OP_CMD1/@1, XFER_REG/@2, REL_A_OP/@3, REL_B_OP/@4, REF_CNT/@5, IMMED_OP/TRUE, AB_IMMED/A"
SDRAM_BI[,,,,] "SDRAM UW_TYPE/EXT_2_SRC, EXT_2_OP_CMD1/@1, XFER_REG/@2, REL_A_OP/@3, REL_B_OP/@4, REF_CNT/@5, IMMED_OP/TRUE, AB_IMMED/B"
PCI_DMA[,,] "SDRAM UW_TYPE/EXT_2_SRC, EXT_2_OP_CMD1/WRITE, XFER_REG/--, REL_A_OP/@1, REL_B_OP/@2, REF_CNT/@3, PRIORITY_QUEUE/PRIORITY, ORDER_QUEUE/ORDERED"
PCI_DMA_AI[,,] "SDRAM UW_TYPE/EXT_2_SRC, EXT_2_OP_CMD1/WRITE, XFER_REG/--, REL_A_OP/@1, REL_B_OP/@2, REF_CNT/@3, PRIORITY_QUEUE/PRIORITY, ORDER_QUEUE/ORDERED, IMMED_OP/TRUE, AB_IMMED/A"
PCI_DMA_BI[,,] "SDRAM UW_TYPE/EXT_2_SRC, EXT_2_OP_CMD1/WRITE, XFER_REG/--, REL_A_OP/@1, REL_B_OP/@2, REF_CNT/@3, PRIORITY_QUEUE/PRIORITY, ORDER_QUEUE/ORDERED, IMMED_OP/TRUE, AB_IMMED/B"
R_FIFO_RD[,,,] "SRAM UW_TYPE/EXT_2_SRC, EXT_2_OP_CMD1/RD_RFIFO, XFER_REG/@1, REL_A_OP/@2, REL_B_OP/@3, REF_CNT/@4"
R_FIFO_RD_AI[,,,] "SRAM UW_TYPE/EXT_2_SRC, EXT_2_OP_CMD1/RD_RFIFO, XFER_REG/@1, REL_A_OP/@2, REL_B_OP/@3, REF_CNT/@4, IMMED_OP/TRUE, AB_IMMED/A"
R_FIFO_RD_BI[,,,] "SRAM UW_TYPE/EXT_2_SRC, EXT_2_OP_CMD1/RD_RFIFO, XFER_REG/@1, REL_A_OP/@2, REL_B_OP/@3, REF_CNT/@4, IMMED_OP/TRUE, AB_IMMED/B"
;R_FIFO_RD[,] "R_FIFO_RD UW_TYPE/EXT_2_SRC, EXT_2_OP_CMD1/RD_RFIFO, XFER_REG/@1, REF_CNT/@2"
;R_FIFO_RD_AI[,] "UW_TYPE/EXT_2_SRC, EXT_2_OP_CMD1/RD_RFIFO, XFER_REG/@1, REL_A_OP/@2, REL_B_OP/@3, REF_CNT/@2, IMMED_OP/TRUE, AB_IMMED/A"
;R_FIFO_RD_BI[,] "UW_TYPE/EXT_2_SRC, EXT_2_OP_CMD1/RD_RFIFO, XFER_REG/@1, REL_A_OP/@2, REL_B_OP/@3, REF_CNT/@2, IMMED_OP/TRUE, AB_IMMED/B"
T_FIFO_WR[,,,] "SRAM UW_TYPE/EXT_2_SRC, EXT_2_OP_CMD1/WR_TFIFO, XFER_REG/@1, REL_A_OP/@2, REL_B_OP/@3, REF_CNT/@4"
T_FIFO_WR_AI[,,,] "SRAM UW_TYPE/EXT_2_SRC, EXT_2_OP_CMD1/WR_TFIFO, XFER_REG/@1, REL_A_OP/@2, REL_B_OP/@3, REF_CNT/@4, IMMED_OP/TRUE, AB_IMMED/A"
T_FIFO_WR_BI[,,,] "SRAM UW_TYPE/EXT_2_SRC, EXT_2_OP_CMD1/WR_TFIFO, XFER_REG/@1, REL_A_OP/@2, REL_B_OP/@3, REF_CNT/@4, IMMED_OP/TRUE, AB_IMMED/B"
;T_FIFO_WR[,] "T_FIFO_WR UW_TYPE/EXT_2_SRC, EXT_2_OP_CMD1/WR_TFIFO, XFER_REG/@1, REF_CNT/@2"
;T_FIFO_WR_AI[,] "UW_TYPE/EXT_2_SRC, EXT_2_OP_CMD1/WR_TFIFO, XFER_REG/@1, REL_A_OP/@2, REL_B_OP/@3, REF_CNT/@4, IMMED_OP/TRUE, AB_IMMED/A"
;T_FIFO_WR_BI[,] "UW_TYPE/EXT_2_SRC, EXT_2_OP_CMD1/WR_TFIFO, XFER_REG/@1, REL_A_OP/@2, REL_B_OP/@3, REF_CNT/@4, IMMED_OP/TRUE, AB_IMMED/B"
CSR[,,,def] "CSR UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/CSR, EXT_1_OP_CMD_QUAL/@1, XFER_REG/@2, CSR_ADDRESS/@3, REF_CNT/@4"
FAST_WR[,] "UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/FAST_WR, FAST_WR_DATA/@1, FAST_WR_ADDRESS/@2"
;HASH_LD_MULT_48[] "CSR UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/CSR, EXT_1_OP_CMD_QUAL/WRITE, XFER_REG/@1, CSR_ADDRESS/HASH_MULTIPLIER_48_LO,
; REF_CNT/WORD_CNT_2"
;HASH_LD_MULT_64[] "CSR UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/CSR, EXT_1_OP_CMD_QUAL/WRITE, XFER_REG/@1, CSR_ADDRESS/HASH_MULTIPLIER_64_LO,
; REF_CNT/WORD_CNT_2"
HASH1_48[] "CSR UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/CSR, EXT_1_OP_CMD_QUAL/WRITE, XFER_REG/@1, CSR_ADDRESS/HASH_48,
REF_CNT/WORD_CNT_2"
HASH2_48[] "CSR UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/CSR, EXT_1_OP_CMD_QUAL/WRITE, XFER_REG/@1, CSR_ADDRESS/HASH_48,
REF_CNT/WORD_CNT_4"
HASH3_48[] "CSR UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/CSR, EXT_1_OP_CMD_QUAL/WRITE, XFER_REG/@1, CSR_ADDRESS/HASH_48,
REF_CNT/WORD_CNT_6"
HASH1_64[] "CSR UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/CSR, EXT_1_OP_CMD_QUAL/WRITE, XFER_REG/@1, CSR_ADDRESS/HASH_64,
REF_CNT/WORD_CNT_2"
HASH2_64[] "CSR UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/CSR, EXT_1_OP_CMD_QUAL/WRITE, XFER_REG/@1, CSR_ADDRESS/HASH_64,
REF_CNT/WORD_CNT_4"
HASH3_64[] "CSR UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/CSR, EXT_1_OP_CMD_QUAL/WRITE, XFER_REG/@1, CSR_ADDRESS/HASH_64,
REF_CNT/WORD_CNT_6"
INDIRECT_REF "INDIRECT_REF/TRUE"
CTX_SWAP "CTX_SWAP/SWAP, VOLUNTARY_SWAP/FALSE"
VOLUNTARY_SWAP "CTX_SWAP/SWAP, VOLUNTARY_SWAP/TRUE"
SIG_DONE "SIG_DONE/SIG_DONE"
CHAIN_REF "CHAIN_REF/TRUE"
ORDERED "ORDER_QUEUE/ORDERED"
OPTIMIZE_MEM "ORDER_QUEUE/UNORDERED"
PRIORITY "PRIORITY_QUEUE/PRIORITY, ORDER_QUEUE/UNORDERED"
NO_OPTION ""
NO_SIGNAL ""
LOAD_CC "LOAD_CC/TRUE"
; LOAD IMMEDIATE format
IMMED[,,def] "UW_TYPE/IMMED, ABS_DEST/@1, IMMED_DATA_16_BIT/@2, IMMED_SHF/@3, LOAD_WORD/FALSE, LOAD_BYTE/FALSE, INVERT/FALSE"
IMMED_NEG[,,def] "UW_TYPE/IMMED, ABS_DEST/@1, IMMED_DATA_16_BIT/@2, IMMED_SHF/@3, LOAD_WORD/FALSE, LOAD_BYTE/FALSE, INVERT/TRUE"
;IMMED_[,,def] "UW_TYPE/IMMED, ABS_DEST/@1, IMMED_DATA/@2, IMMED_SHF/@3, LOAD_AMT/32, INVERT/FALSE, OP_SWAP/TRUE"
;IMMED_NEG_[,,def] "UW_TYPE/IMMED, ABS_DEST/@1, IMMED_DATA/@2, IMMED_SHF/@3, LOAD_AMT/32, INVERT/TRUE, OP_SWAP/TRUE"
;0011 "IMMED16 IMMED_SHF/0"
;0110 "IMMED16 IMMED_SHF/<<rot8"
;1100 "IMMED16 IMMED_SHF/<<rot16"
;1001 "IMMED16 IMMED_SHF/<<rot24"
IMMED_W0[,] "UW_TYPE/IMMED, ABS_DEST/@1, IMMED_DATA_16_BIT/@2, LOAD_WORD/TRUE, INVERT/FALSE, IMMED_SHF/<<0"
IMMED_W1[,] "UW_TYPE/IMMED, ABS_DEST/@1, IMMED_DATA_16_BIT/@2, LOAD_WORD/TRUE, INVERT/FALSE, IMMED_SHF/<<16"
IMMED_B0[,] "UW_TYPE/IMMED, ABS_DEST/@1, IMMED_DATA_16_BIT/@2, LOAD_BYTE/TRUE, INVERT/FALSE, IMMED_SHF/<<0"
IMMED_B1[,] "UW_TYPE/IMMED, ABS_DEST/@1, IMMED_DATA_16_BIT/@2, LOAD_BYTE/TRUE, INVERT/FALSE, IMMED_SHF/<<8"
IMMED_B2[,] "UW_TYPE/IMMED, ABS_DEST/@1, IMMED_DATA_16_BIT/@2, LOAD_BYTE/TRUE, INVERT/FALSE, IMMED_SHF/<<16"
IMMED_B3[,] "UW_TYPE/IMMED, ABS_DEST/@1, IMMED_DATA_16_BIT/@2, LOAD_BYTE/TRUE, INVERT/FALSE, IMMED_SHF/<<24"
; LOAD_ADDR format (form of load immediate)
LOAD_ADDR[,] "UW_TYPE/IMMED, ABS_DEST/@1, IMMED_ADDR_FIELD/@2, IMMED_SHF/0, INVERT/FALSE"
; BRANCHES
BR[] "UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/BRANCH, BRANCH_TYPE/UNCOND, BRANCH_FIELD/@1"
BR<0[] "UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/BRANCH, BRANCH_TYPE/LESZ, BRANCH_FIELD/@1"
BR<0_[] "UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/BRANCH, BRANCH_TYPE/LESZ, BRANCH_FIELD/@1, BRANCH_PIPE/2"
BR<0__[] "UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/BRANCH, BRANCH_TYPE/LESZ, BRANCH_FIELD/@1, BRANCH_PIPE/3"
BR<=0[] "UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/BRANCH, BRANCH_TYPE/LEQZ, BRANCH_FIELD/@1"
BR<=0_[] "UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/BRANCH, BRANCH_TYPE/LEQZ, BRANCH_FIELD/@1, BRANCH_PIPE/2"
BR<=0__[] "UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/BRANCH, BRANCH_TYPE/LEQZ, BRANCH_FIELD/@1, BRANCH_PIPE/3"
BR>0[] "UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/BRANCH, BRANCH_TYPE/GTRZ, BRANCH_FIELD/@1"
BR>0_[] "UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/BRANCH, BRANCH_TYPE/GTRZ, BRANCH_FIELD/@1, BRANCH_PIPE/2"
BR>0__[] "UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/BRANCH, BRANCH_TYPE/GTRZ, BRANCH_FIELD/@1, BRANCH_PIPE/3"
BR>=0[] "UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/BRANCH, BRANCH_TYPE/GEQZ, BRANCH_FIELD/@1"
BR>=0_[] "UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/BRANCH, BRANCH_TYPE/GEQZ, BRANCH_FIELD/@1, BRANCH_PIPE/2"
BR>=0__[] "UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/BRANCH, BRANCH_TYPE/GEQZ, BRANCH_FIELD/@1, BRANCH_PIPE/3"
BR=0[] "UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/BRANCH, BRANCH_TYPE/EQSZ, BRANCH_FIELD/@1"
BR=0_[] "UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/BRANCH, BRANCH_TYPE/EQSZ, BRANCH_FIELD/@1, BRANCH_PIPE/2"
BR=0__[] "UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/BRANCH, BRANCH_TYPE/EQSZ, BRANCH_FIELD/@1, BRANCH_PIPE/3"
BR!=0[] "UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/BRANCH, BRANCH_TYPE/NEQZ, BRANCH_FIELD/@1"
BR!=0_[] "UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/BRANCH, BRANCH_TYPE/NEQZ, BRANCH_FIELD/@1, BRANCH_PIPE/2"
BR!=0__[] "UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/BRANCH, BRANCH_TYPE/NEQZ, BRANCH_FIELD/@1, BRANCH_PIPE/3"
BR=COUT[] "UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/BRANCH, BRANCH_TYPE/COUT, BRANCH_FIELD/@1"
BR=COUT_[] "UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/BRANCH, BRANCH_TYPE/COUT, BRANCH_FIELD/@1, BRANCH_PIPE/2"
BR=COUT__[] "UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/BRANCH, BRANCH_TYPE/COUT, BRANCH_FIELD/@1, BRANCH_PIPE/3"
BR!=COUT[] "UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/BRANCH, BRANCH_TYPE/NOT_COUT, BRANCH_FIELD/@1"
BR!=COUT_[] "UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/BRANCH, BRANCH_TYPE/NOT_COUT, BRANCH_FIELD/@1, BRANCH_PIPE/2"
BR!=COUT__[] "UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/BRANCH, BRANCH_TYPE/NOT_COUT, BRANCH_FIELD/@1, BRANCH_PIPE/3"
BR_MEM_LOCK[] "UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/BRANCH, BRANCH_TYPE/MEMLOCK, BRANCH_FIELD/@1"
BR=CTX[,] "UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/BRANCH, BRANCH_TYPE/CTX, BRANCH_FIELD/@2, BRANCH_CTX_MASK/@1"
BR!=CTX[,] "UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/BRANCH, BRANCH_TYPE/NOT_CTX, BRANCH_FIELD/@2, BRANCH_CTX_MASK/@1"
BR_!SIGNAL[,] "UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/BRANCH, BRANCH_TYPE/EXTENDED, EXT_BRANCH_TYPE/@1, BRANCH_FIELD/@2, BRANCH_PIPE/3"
BR_INP_STATE[,] "UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/BRANCH, BRANCH_TYPE/EXTENDED, EXT_BRANCH_TYPE/@1, BRANCH_FIELD/@2, BRANCH_PIPE/3"
DEFER[] "DEFER_BRANCH/@1"
DEFER[] "SRAM MEM_DEFER/@1"
DEFER[] "SRAM_AI MEM_DEFER/@1"
DEFER[] "SRAM_BI MEM_DEFER/@1"
DEFER[] "SDRAM MEM_DEFER/@1"
DEFER[] "SDRAM_AI MEM_DEFER/@1"
DEFER[] "SDRAM_BI MEM_DEFER/@1"
DEFER[] "SCRATCH MEM_DEFER/@1"
DEFER[] "SCRATCH_AI MEM_DEFER/@1"
DEFER[] "SCRATCH_BI MEM_DEFER/@1"
DEFER[] "CTX_ARB MEM_DEFER/@1"
DEFER[] "CSR MEM_DEFER/@1"
DEFER[] "R_FIFO_RD MEM_DEFER/@1"
DEFER[] "R_FIFO_RD_AI MEM_DEFER/@1"
DEFER[] "R_FIFO_RD_BI MEM_DEFER/@1"
DEFER[] "T_FIFO_WR MEM_DEFER/@1"
DEFER[] "T_FIFO_WR_AI MEM_DEFER/@1"
DEFER[] "T_FIFO_WR_BI MEM_DEFER/@1"
DEFER[] "HASH1_48 MEM_DEFER/@1"
DEFER[] "HASH2_48 MEM_DEFER/@1"
DEFER[] "HASH3_48 MEM_DEFER/@1"
DEFER[] "HASH1_64 MEM_DEFER/@1"
DEFER[] "HASH2_64 MEM_DEFER/@1"
DEFER[] "HASH3_64 MEM_DEFER/@1"
GUESS_BRANCH "GUESS_BRANCH/TAKEN"
GUESS_BRANCH_NOT_TAKEN "GUESS_BRANCH/NOT_TAKEN"
; BRANCH ON BIT format
BR_BSET[,,] "UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/BRANCH_BIT, AB_REL_SRC/@1, BBS_SHIFT/@2, BRANCH_FIELD/@3, BBS_BIT_VAL/1"
BR_BCLR[,,] "UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/BRANCH_BIT, AB_REL_SRC/@1, BBS_SHIFT/@2, BRANCH_FIELD/@3, BBS_BIT_VAL/0"
BR=BYTE[,,,] "UW_TYPE/BR_BYTE, AB_REL_SRC/@1, BYTE_SPEC/@2, BR_BYTE_IMMED/@3, BRANCH_FIELD/@4,
BR_BYTE_SENSE/EQL"
BR!=BYTE[,,,] "UW_TYPE/BR_BYTE, AB_REL_SRC/@1, BYTE_SPEC/@2, BR_BYTE_IMMED/@3, BRANCH_FIELD/@4,
BR_BYTE_SENSE/NEQ"
; ALU_BRANCH format
JUMP[,] "UW_TYPE/BR_ALU, BRANCH_FIELD/@2, ABS_DEST/@1"
RTN[] "UW_TYPE/BR_ALU, ZERO_BASE_FIELD/ZERO, ABS_DEST/@1"
; context management formats
CTX_ARB[] "UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/CONTEXT, SIGNAL_EVENT/@1, CTX_SWAP/SWAP,
VOLUNTARY_SWAP/FALSE"
LD_USTORE_WR_ADDR[] "UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/USTORE, USTORE_ADDR/TRUE, ABS_DEST/@1"
WR_USTORE[] "UW_TYPE/EXT_1_SRC, EXT_1_OP_CMD/USTORE, USTORE_ADDR/FALSE, ABS_DEST/@1"
TARGETS "DUMMY/DUMMY"
;
; Register Allocation:
; A-Bank, relative GPRs (01)
; 00 reg
; A-Bank, absolute GPRs (00)
; B-Bank, relative GPRs (00)
; B-Bank, absolute GPRs (00)
;
;
; Static Uword Distribution:
;
; alu: 0 ( 0.00%)
; alu_shf: 0 ( 0.00%)
; dbl_shf: 0 ( 0.00%)
; ld_field: 0 ( 0.00%)
; sram: 0 ( 0.00%)
; scratch: 0 ( 0.00%)
; sdram: 0 ( 0.00%)
; pci_dma: 0 ( 0.00%)
; t_fifo_wr: 0 ( 0.00%)
; r_fifo_rd: 0 ( 0.00%)
; hash: 0 ( 0.00%)
; csr: 0 ( 0.00%)
; fast_wr: 0 ( 0.00%)
; branch: 1 (50.00%)
; br_bit: 0 ( 0.00%)
; br?=byte: 0 ( 0.00%)
; jump: 0 ( 0.00%)
; rtn: 0 ( 0.00%)
; ctx_arb: 0 ( 0.00%)
; load_addr: 1 (50.00%)
; find_bset: 0 ( 0.00%)
; load_bset_resultx: 0 ( 0.00%)
; immed: 0 ( 0.00%)
; local_csr_rd: 0 ( 0.00%)
; local_csr_wr: 0 ( 0.00%)
; nop: 0 ( 0.00%)
; alu: 0 (100.00%)
;
; total: 2
;
; Number of exposed branch latency bubbles: 1 (100.00%)
;
;
; Number of branch latency slots filled by optimizer: 0
;
.PAGE "Microcode Listing"
.import_var __chip_id __chip_revision __uengine_id
.%line 4 "D:\yxp\ixp1200\讲座\Intel IXP1200开发指南\开发指南2之demo工程\开发指南(2)之demo工程\demo5\Source5.uc" 1
;Local Register Instructions
;TA
;三、 load_addr______________________________________________________________________________________
load_addr[reg,self#]
.%line 5 "D:\yxp\ixp1200\讲座\Intel IXP1200开发指南\开发指南2之demo工程\开发指南(2)之demo工程\demo5\Source5.uc" 1
self#:
.%line 6 "D:\yxp\ixp1200\讲座\Intel IXP1200开发指南\开发指南2之demo工程\开发指南(2)之demo工程\demo5\Source5.uc" 1
br[self#];pc=1
; THE FOLLOWING WARNING MESSAGES WERE GENERATED BY THE PRE-PROCESSOR
; WARNING: GPR, "reg", was assigned to but never referenced.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -