⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dct_kc.uc

📁 H.264完整的C语言代码和DCT的代码
💻 UC
📖 第 1 页 / 共 5 页
字号:
    B:8 = RF:2:OUT:0:REG:0 VAR: hw_const#0 DATATYPE: ANYINT,
    U7:IN:0 = B:8 VAR: hw_const#0 DATATYPE: ANYINT,
    B:27 = U7:OUT:0 INSTR_LOG:1|COS_3#||0 VAR: COS_3 DATATYPE: HALF2,
    RF:13:IN:0:REG:8 = B:27 STAGE:-1 VAR: COS_3 DATATYPE: HALF2,
    RF:12:IN:0:REG:8 = B:27 STAGE:-1 VAR: COS_3 DATATYPE: HALF2,
    B:31 = U2:OUT:0 INSTR_LOG:2|uh2_almost_half#||0 VAR: uh2_almost_half DATATYPE: UHALF2,
    RF:6:IN:0:REG:1 = B:31 STAGE:-1 VAR: uh2_almost_half DATATYPE: UHALF2,
    RF:2:IN:0:REG:1 = B:31 STAGE:-1 VAR: uh2_almost_half DATATYPE: UHALF2,
    RF:10:IN:0:REG:1 = B:31 STAGE:-1 VAR: uh2_almost_half DATATYPE: UHALF2,
    B:35 = U4:OUT:1 INSTR_LOG:4|tmp#21#||1 VAR: tmp#21 DATATYPE: UHALF2,
    RF:3:IN:0:REG:1 = B:35 STAGE:-1 VAR: tmp#21 DATATYPE: UHALF2,
    B:33 = U3:OUT:1 INSTR_LOG:4|tmp#18#||1 VAR: tmp#18 DATATYPE: UHALF2,
    RF:5:IN:0:REG:1 = B:33 STAGE:-1 VAR: tmp#18 DATATYPE: UHALF2,
    //  IN:MC_0: ( ) = NLOOP( tmp#38 == UCONDRF_0[1] )
    // OUT:ADDER_0: ISUB32 => ( tmp#37 == UNITRF_0_3[1] )
    //  IN:COMM_SCHED_0: ( COS_3 ) = COMMUCDATA( hw_const#8 == PERMRF_0[0], hw_const#0 == UNITRF_0_1[0], uc_const#0x187e187e == UCRF_0[16] )
    // OUT:COMM_SCHED_0: COMMUCDATA => ( COS_3 == MULRF_1_1[8], COS_3 == MULRF_1_0[8] )
    // OUT:ADDER_2: ISUB16 => ( uh2_almost_half == UNITRF_1_0[1], uh2_almost_half == UNITRF_0_1[1], uh2_almost_half == MULRF_0_0[1] )
    // OUT:MULTIPLIER_1: UMULRND16 => ( tmp#21 == UNITRF_0_2[1] )
    // OUT:MULTIPLIER_0: UMULRND16 => ( tmp#18 == UNITRF_0_4[1] )
    DEAD_REGS: {  };
instr: 23
    MC: OP: UC_DATA_IN LINE:98 IMM:0x65432107 UCRF_RD:9 UCRF_WR:8 STAGES:-1,
    U1: OP: AND LINE:114 STAGE:-1, // D:\working\im_apps\h264\dct_kc.i:114
    U0: OP: SHIFT16 LINE:80 STAGE:-1, // D:\working\im_apps\h264\dct_kc.i:80
    U7: OP: COMMUCDATA LINE:-1 STAGE:-1, // D:\working\im_apps\h264\dct_kc.i:-1
    U2: OP: SHIFT16 LINE:78 STAGE:-1, // D:\working\im_apps\h264\dct_kc.i:78
    B:14 = RF:4:OUT:0:REG:1 VAR: tmp#37 DATATYPE: INT,
    U1:IN:0 = B:14 VAR: tmp#37 DATATYPE: INT,
    B:15 = RF:8:OUT:0:REG:3 VAR: const#7 DATATYPE: ANYINT,
    U1:IN:1 = B:15 VAR: const#7 DATATYPE: ANYINT,
    B:30 = U1:OUT:0 INSTR_LOG:1|idx7#||0 VAR: idx7 DATATYPE: INT,
    RF:17:IN:0:REG:7 = B:30 STAGE:-1 VAR: idx7 DATATYPE: INT,
    RF:16:IN:0:REG:7 = B:30 STAGE:-1 VAR: idx7 DATATYPE: INT,
    B:12 = RF:3:OUT:0:REG:1 VAR: tmp#21 DATATYPE: UHALF2,
    U0:IN:0 = B:12 VAR: tmp#21 DATATYPE: UHALF2,
    B:13 = RF:7:OUT:0:REG:3 VAR: const#-1 DATATYPE: ANYINT,
    U0:IN:1 = B:13 VAR: const#-1 DATATYPE: ANYINT,
    B:29 = U0:OUT:0 INSTR_LOG:1|quant#6#||0 VAR: quant#6 DATATYPE: HALF2,
    RF:13:IN:0:REG:9 = B:29 STAGE:-1 VAR: quant#6 DATATYPE: HALF2,
    B:9 = RF:15:OUT:0:REG:0 VAR: hw_const#8 DATATYPE: ANYINT,
    U7:IN:1 = B:9 VAR: hw_const#8 DATATYPE: ANYINT,
    B:8 = RF:2:OUT:0:REG:0 VAR: hw_const#0 DATATYPE: ANYINT,
    U7:IN:0 = B:8 VAR: hw_const#0 DATATYPE: ANYINT,
    B:27 = U7:OUT:0 INSTR_LOG:1|K#1#||0 VAR: K#1 DATATYPE: HALF2,
    RF:10:IN:0:REG:2 = B:27 STAGE:-1 VAR: K#1 DATATYPE: HALF2,
    B:16 = RF:5:OUT:0:REG:1 VAR: tmp#18 DATATYPE: UHALF2,
    U2:IN:0 = B:16 VAR: tmp#18 DATATYPE: UHALF2,
    B:17 = RF:9:OUT:0:REG:4 VAR: const#-1 DATATYPE: ANYINT,
    U2:IN:1 = B:17 VAR: const#-1 DATATYPE: ANYINT,
    B:31 = U2:OUT:0 INSTR_LOG:1|quant#5#||0 VAR: quant#5 DATATYPE: HALF2,
    RF:12:IN:0:REG:9 = B:31 STAGE:-1 VAR: quant#5 DATATYPE: HALF2,
    B:33 = U3:OUT:1 INSTR_LOG:4|tmp#24#||1 VAR: tmp#24 DATATYPE: UHALF2,
    RF:5:IN:0:REG:1 = B:33 STAGE:-1 VAR: tmp#24 DATATYPE: UHALF2,
    //  IN:ADDER_1: ( idx7 ) = AND( tmp#37 == UNITRF_0_3[1], const#7 == UNITRF_1_2[3] )
    // OUT:ADDER_1: AND => ( idx7 == SPIDXRF_1[7], idx7 == SPIDXRF_0[7] )
    // OUT:MC_0: UC_DATA_IN => ( perm_g == UCRF_0[8] )
    //  IN:ADDER_0: ( quant#6 ) = SHIFT16( tmp#21 == UNITRF_0_2[1], const#-1 == UNITRF_1_1[3] )
    // OUT:ADDER_0: SHIFT16 => ( quant#6 == MULRF_1_1[9] )
    //  IN:COMM_SCHED_0: ( K#1 ) = COMMUCDATA( hw_const#8 == PERMRF_0[0], hw_const#0 == UNITRF_0_1[0], uc_const#0x10501050 == UCRF_0[9] )
    // OUT:COMM_SCHED_0: COMMUCDATA => ( K#1 == MULRF_0_0[2] )
    //  IN:ADDER_2: ( quant#5 ) = SHIFT16( tmp#18 == UNITRF_0_4[1], const#-1 == UNITRF_1_3[4] )
    // OUT:ADDER_2: SHIFT16 => ( quant#5 == MULRF_1_0[9] )
    // OUT:MULTIPLIER_0: UMULRND16 => ( tmp#24 == UNITRF_0_4[1] )
    DEAD_REGS: {  };
instr: 24
    MC: OP: NONE LINE:-1 UCRF_RD:10 END:,
    U4: OP: NSELECT LINE:-1 STAGE:-1, // D:\working\im_apps\h264\dct_kc.i:-1
    U5: OP: SELECT LINE:-1 STAGE:-1, // D:\working\im_apps\h264\dct_kc.i:-1
    U2: OP: SHIFT16 LINE:82 STAGE:-1, // D:\working\im_apps\h264\dct_kc.i:82
    U7: OP: COMMUCDATA LINE:-1 STAGE:-1, // D:\working\im_apps\h264\dct_kc.i:-1
    U3: OP: NSELECT LINE:-1 STAGE:-1, // D:\working\im_apps\h264\dct_kc.i:-1
    B:44 = RF:18:OUT:7:REG:0 VAR: hw_const#0 DATATYPE: ANYINT,
    U4:IN:2 = B:44 VAR: hw_const#0 DATATYPE: ANYINT,
    B:20 = RF:11:OUT:0:REG:0 VAR: hw_const#0 DATATYPE: ANYINT,
    U4:IN:0 = B:20 VAR: hw_const#0 DATATYPE: ANYINT,
    B:35 = U4:OUT:1 INSTR_LOG:1|const#0#||1 VAR: const#0 DATATYPE: ANYINT,
    RF:8:IN:0:REG:3 = B:35 STAGE:-1 VAR: const#0 DATATYPE: ANYINT,
    RF:9:IN:0:REG:3 = B:35 STAGE:-1 VAR: const#0 DATATYPE: ANYINT,
    B:39 = RF:18:OUT:2:REG:0 VAR: hw_const#0 DATATYPE: ANYINT,
    U5:IN:2 = B:39 VAR: hw_const#0 DATATYPE: ANYINT,
    B:11 = RF:14:OUT:0:REG:0 VAR: cluster#id DATATYPE: ANYINT,
    U5:IN:1 = B:11 VAR: cluster#id DATATYPE: ANYINT,
    B:28 = U5:OUT:0 INSTR_LOG:1|cluster#id#||0 VAR: cluster#id DATATYPE: ANYINT,
    RF:16:IN:0:REG:8 = B:28 STAGE:-1 VAR: cluster#id DATATYPE: ANYINT,
    RF:17:IN:0:REG:8 = B:28 STAGE:-1 VAR: cluster#id DATATYPE: ANYINT,
    B:16 = RF:5:OUT:0:REG:1 VAR: tmp#24 DATATYPE: UHALF2,
    U2:IN:0 = B:16 VAR: tmp#24 DATATYPE: UHALF2,
    B:17 = RF:9:OUT:0:REG:4 VAR: const#-1 DATATYPE: ANYINT,
    U2:IN:1 = B:17 VAR: const#-1 DATATYPE: ANYINT,
    B:31 = U2:OUT:0 INSTR_LOG:1|quant#7#||0 VAR: quant#7 DATATYPE: HALF2,
    RF:13:IN:0:REG:10 = B:31 STAGE:-1 VAR: quant#7 DATATYPE: HALF2,
    B:9 = RF:15:OUT:0:REG:0 VAR: hw_const#8 DATATYPE: ANYINT,
    U7:IN:1 = B:9 VAR: hw_const#8 DATATYPE: ANYINT,
    B:8 = RF:2:OUT:0:REG:0 VAR: hw_const#0 DATATYPE: ANYINT,
    U7:IN:0 = B:8 VAR: hw_const#0 DATATYPE: ANYINT,
    B:27 = U7:OUT:0 INSTR_LOG:1|COS_2#||0 VAR: COS_2 DATATYPE: HALF2,
    RF:12:IN:0:REG:10 = B:27 STAGE:-1 VAR: COS_2 DATATYPE: HALF2,
    B:43 = RF:18:OUT:6:REG:0 VAR: hw_const#0 DATATYPE: ANYINT,
    U3:IN:2 = B:43 VAR: hw_const#0 DATATYPE: ANYINT,
    B:18 = RF:10:OUT:0:REG:3 VAR: tmp#30 DATATYPE: UHALF2,
    U3:IN:0 = B:18 VAR: tmp#30 DATATYPE: UHALF2,
    B:33 = U3:OUT:1 INSTR_LOG:1|tmp#30#||1 VAR: tmp#30 DATATYPE: UHALF2,
    RF:7:IN:0:REG:2 = B:33 STAGE:-1 VAR: tmp#30 DATATYPE: UHALF2,
    //  IN:MULTIPLIER_1: ( const#0 ) = NSELECT( hw_const#0 == CCRF_0[0], hw_const#0 == MULRF_0_1[0] )
    // OUT:MULTIPLIER_1: NSELECT => ( const#0 == UNITRF_1_2[3], const#0 == UNITRF_1_3[3] )
    //  IN:DIVIDER_0: ( cluster#id ) = SELECT( hw_const#0 == CCRF_0[0], cluster#id == UNITRF_CID_0[0] )
    // OUT:DIVIDER_0: SELECT => ( cluster#id == SPIDXRF_0[8], cluster#id == SPIDXRF_1[8] )
    //  IN:ADDER_2: ( quant#7 ) = SHIFT16( tmp#24 == UNITRF_0_4[1], const#-1 == UNITRF_1_3[4] )
    // OUT:ADDER_2: SHIFT16 => ( quant#7 == MULRF_1_1[10] )
    //  IN:COMM_SCHED_0: ( COS_2 ) = COMMUCDATA( hw_const#8 == PERMRF_0[0], hw_const#0 == UNITRF_0_1[0], uc_const#0x2d412d41 == UCRF_0[10] )
    // OUT:COMM_SCHED_0: COMMUCDATA => ( COS_2 == MULRF_1_0[10] )
    //  IN:MULTIPLIER_0: ( tmp#30 ) = NSELECT( hw_const#0 == CCRF_0[0], tmp#30 == MULRF_0_0[3] )
    // OUT:MULTIPLIER_0: NSELECT => ( tmp#30 == UNITRF_1_1[2] )
    DEAD_REGS: {  };
instr: 25
    MC: OP: NONE LINE:-1 UCRF_RD:8,
    U6: OP: SPWRITE LINE:184 SP_BASE:0 SP_STAGE:4:0:0 STAGE:4, // D:\working\im_apps\h264\dct_kc.i:184
    U7: OP: COMMUCPERM LINE:185 STAGE:4, // D:\working\im_apps\h264\dct_kc.i:185
    U2: OP: SHIFT16 LINE:153 STAGE:3, // D:\working\im_apps\h264\dct_kc.i:153
    U1: OP: IADD16 LINE:129 STAGE:3, // D:\working\im_apps\h264\dct_kc.i:129
    U3: OP: SELECT LINE:-1 STAGE:2, // D:\working\im_apps\h264\dct_kc.i:-1
    U5: OP: NSELECT LINE:-1 STAGE:2, // D:\working\im_apps\h264\dct_kc.i:-1
    U4: OP: SELECT LINE:-1 STAGE:2, // D:\working\im_apps\h264\dct_kc.i:-1
    B:7 = RF:17:OUT:0:REG:2 VAR: idx2 DATATYPE: INT,
    U6:IN:2 = B:7 VAR: idx2 DATATYPE: INT,
    B:6 = RF:1:OUT:0:REG:1 VAR: tmp#99 DATATYPE: UNDEFINED,
    U6:IN:1 = B:6 VAR: tmp#99 DATATYPE: UNDEFINED,
    B:8 = RF:2:OUT:0:REG:4 VAR: tmp#100 DATATYPE: HALF2,
    U7:IN:0 = B:8 VAR: tmp#100 DATATYPE: HALF2,
    B:27 = U7:OUT:0 INSTR_LOG:1|tmp#101#||0 VAR: tmp#101 DATATYPE: UNDEFINED,
    RF:1:IN:0:REG:1 = B:27 STAGE:4 VAR: tmp#101 DATATYPE: UNDEFINED,
    B:30 = U1:OUT:0 INSTR_LOG:2|tmp#47#||0 VAR: tmp#47 DATATYPE: HALF2,
    RF:3:IN:0:REG:4 = B:30 STAGE:3 VAR: tmp#47 DATATYPE: HALF2,
    B:29 = U0:OUT:0 INSTR_LOG:2|tmp#43#||0 VAR: tmp#43 DATATYPE: HALF2,
    RF:5:IN:0:REG:3 = B:29 STAGE:3 VAR: tmp#43 DATATYPE: HALF2,
    B:16 = RF:5:OUT:0:REG:4 VAR: sd16d07 DATATYPE: HALF2,
    U2:IN:0 = B:16 VAR: sd16d07 DATATYPE: HALF2,
    B:17 = RF:9:OUT:0:REG:1 VAR: const#2 DATATYPE: ANYINT,
    U2:IN:1 = B:17 VAR: const#2 DATATYPE: ANYINT,
    B:31 = U2:OUT:0 INSTR_LOG:1|tmp#51#||0 VAR: tmp#51 DATATYPE: HALF2,
    RF:11:IN:0:REG:6 = B:31 STAGE:3 VAR: tmp#51 DATATYPE: HALF2,
    B:14 = RF:4:OUT:0:REG:3 VAR: s07 DATATYPE: HALF2,
    U1:IN:0 = B:14 VAR: s07 DATATYPE: HALF2,
    B:15 = RF:8:OUT:0:REG:6 VAR: s34 DATATYPE: HALF2,
    U1:IN:1 = B:15 VAR: s34 DATATYPE: HALF2,
    B:43 = RF:18:OUT:6:REG:0 VAR: hw_const#0 DATATYPE: ANYINT,
    U3:IN:2 = B:43 VAR: hw_const#0 DATATYPE: ANYINT,
    B:19 = RF:12:OUT:0:REG:11 VAR: s16 DATATYPE: HALF2,
    U3:IN:1 = B:19 VAR: s16 DATATYPE: HALF2,
    B:33 = U3:OUT:1 INSTR_LOG:1|s16#||1 VAR: s16 DATATYPE: HALF2,
    RF:4:IN:0:REG:3 = B:33 STAGE:2 VAR: s16 DATATYPE: HALF2,
    B:39 = RF:18:OUT:2:REG:0 VAR: hw_const#0 DATATYPE: ANYINT,
    U5:IN:2 = B:39 VAR: hw_const#0 DATATYPE: ANYINT,
    B:10 = RF:6:OUT:0:REG:6 VAR: s25 DATATYPE: HALF2,
    U5:IN:0 = B:10 VAR: s25 DATATYPE: HALF2,
    B:28 = U5:OUT:0 INSTR_LOG:1|s25#||0 VAR: s25 DATATYPE: HALF2,
    RF:8:IN:0:REG:6 = B:28 STAGE:2 VAR: s25 DATATYPE: HALF2,
    B:44 = RF:18:OUT:7:REG:0 VAR: hw_const#0 DATATYPE: ANYINT,
    U4:IN:2 = B:44 VAR: hw_const#0 DATATYPE: ANYINT,
    B:21 = RF:13:OUT:0:REG:11 VAR: a2 DATATYPE: HALF2,
    U4:IN:1 = B:21 VAR: a2 DATATYPE: HALF2,
    B:35 = U4:OUT:1 INSTR_LOG:1|a2#||1 VAR: a2 DATATYPE: HALF2,
    RF:2:IN:0:REG:4 = B:35 STAGE:2 VAR: a2 DATATYPE: HALF2,
    //  IN:SP_SCHED_WRITE_0: ( buf2 ) = SPWRITE( idx2 == SPIDXRF_1[2], tmp#99 == UNITRF_0_0[1] )
    // OUT:SP_SCHED_WRITE_0: SPWRITE => ( buf2 == SP_SCHED_RF_0[0] )
    //  IN:COMM_SCHED_0: ( tmp#101 ) = COMMUCPERM( perm_g == UCRF_0[8], tmp#100 == UNITRF_0_1[4] )
    // OUT:COMM_SCHED_0: COMMUCPERM => ( tmp#101 == UNITRF_0_0[1] )
    // OUT:ADDER_1: ISUB16 => ( tmp#47 == UNITRF_0_2[4] )
    // OUT:ADDER_0: IADD16 => ( tmp#43 == UNITRF_0_4[3] )
    //  IN:ADDER_2: ( tmp#51 ) = SHIFT16( sd16d07 == UNITRF_0_4[4], const#2 == UNITRF_1_3[1] )
    // OUT:ADDER_2: SHIFT16 => ( tmp#51 == MULRF_0_1[6] )
    //  IN:ADDER_1: ( s0734 ) = IADD16( s07 == UNITRF_0_3[3], s34 == UNITRF_1_2[6] )
    //  IN:MULTIPLIER_0: ( s16 ) = SELECT( hw_const#0 == CCRF_0[0], s16 == MULRF_1_0[11] )
    // OUT:MULTIPLIER_0: SELECT => ( s16 == UNITRF_0_3[3] )
    //  IN:DIVIDER_0: ( s25 ) = NSELECT( hw_const#0 == CCRF_0[0], s25 == UNITRF_1_0[6] )
    // OUT:DIVIDER_0: NSELECT => ( s25 == UNITRF_1_2[6] )
    //  IN:MULTIPLIER_1: ( a2 ) = SELECT( hw_const#0 == CCRF_0[0], a2 == MULRF_1_1[11] )
    // OUT:MULTIPLIER_1: SELECT => ( a2 == UNITRF_0_1[4] )
    DEAD_REGS: {  };
instr: 26
    MC: OP: NONE LINE:-1,
    U6: OP: SPREAD_WT LINE:190 SP_BASE:2 STAGE:4, // D:\working\im_apps\h264\dct_kc.i:190
    U6: OP: SPWRITE LINE:185 SP_BASE:0 SP_STAGE:4:0:0 STAGE:4, // D:\working\im_apps\h264\dct_kc.i:185
    U0: OP: SHIFT16 LINE:152 STAGE:3, // D:\working\im_apps\h264\dct_kc.i:152
    U2: OP: SHIFT16 LINE:151 STAGE:3, // D:\working\im_apps\h264\dct_kc.i:151
    U4: OP: IMULRND16 LINE:153 STAGE:3, // D:\working\im_apps\h264\dct_kc.i:153
    U3: OP: IMULRND16 LINE:150 STAGE:3, // D:\working\im_apps\h264\dct_kc.i:150
    U7: OP: NSELECT LINE:-1 STAGE:3, // D:\working\im_apps\h264\dct_kc.i:-1
    U1: OP: ISUB16 LINE:137 STAGE:2, // D:\working\im_apps\h264\dct_kc.i:137
    U5: OP: NSELECT LINE:-1 STAGE:1, // D:\working\im_apps\h264\dct_kc.i:-1
    B:5 = RF:16:OUT:0:REG:0 VAR: hw_const#0 DATATYPE: ANYINT,
    U6:IN:0 = B:5 VAR: hw_const#0 DATATYPE: ANYINT,
    B:7 = RF:17:OUT:0:REG:1 VAR: idx1 DATATYPE: INT,
    U6:IN:2 = B:7 VAR: idx1 DATATYPE: INT,
    B:6 = RF:1:OUT:0:REG:1 VAR: tmp#101 DATATYPE: UNDEFINED,
    U6:IN:1 = B:6 VAR: tmp#101 DATATYPE: UNDEFINED,
    B:12 = RF:3:OUT:0:REG:4 VAR: tmp#47 DATATYPE: HALF2,
    U0:IN:0 = B:12 VAR: tmp#47 DATATYPE: HALF2,
    B:13 = RF:7:OUT:0:REG:1 VAR: const#2 DATATYPE: ANYINT,
    U0:IN:1 = B:13 VAR: const#2 DATATYPE: ANYINT,
    B:29 = U0:OUT:0 INSTR_LOG:1|tmp#48#||0 VAR: tmp#48 DATATYPE: HALF2,
    RF:11:IN:0:REG:6 = B:29 STAGE:3 VAR: tmp#48 DATATYPE: HALF2,

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -