Patent ID: 7818552

Claim:
An operation, compare, branch processor for realizing zero branch penalty, comprising: a program memory ( 1203 ) having a program memory map ( 1500 ) containing a plurality of OCB instructions ( 900 A, 900 B, 900 C) with each OCB instruction ( 900 ) of said plurality of OCB instructions having a memory address ( 905 ), an operation code field ( 901 ) having an op code ( 910 ) and an addressing mode ( 911 ), a comparison field ( 902 ), and a branch field ( 903 ); a first fetch circuit ( 1322 f ) directly connected to a second fetch circuit ( 1322 t ), said first and second fetch circuits receiving input from said program memory ( 1203 ); a third fetch circuit ( 1321 f ) connected to a fourth fetch circuit ( 1321 t ), said third and fourth fetch circuits sending output to said program memory ( 1203 ), decoding circuitry ( 1311 ); execution circuitry ( 1312 ) connected to said decoding circuitry; comparison circuitry ( 1316 ) connected to said execution circuitry; a latch circuit ( 1323 ) receiving input from said comparison circuitry ( 1316 ) and outputting to said third and fourth fetch circuits ( 1321 f , 1321 t ) and to said decoding circuitry ( 1311 ); a register file ( 1206 ) receiving input from said execution circuitry ( 1312 ), said register file ( 1206 ) outputting to said decoding circuitry ( 1311 ), to said execution circuitry ( 1312 ), to said third fetch circuit ( 1321 f ) and to said fourth fetch circuit ( 1321 t ); a data memory bank ( 1205 ) connected so as to receive from and output to said execution circuitry ( 1312 ); and wherein a first OCB instruction ( 900 A) is fetched by said first fetch circuit ( 1322 f ), said first OCB instruction ( 900 A) is a direct mode ( 903 BD) having two direct branch fields ( 903 DT, 903 DF), and wherein a second OCB instruction ( 900 C) is fetched by said second fetch circuit ( 1322 t ), said second OCB instruction ( 900 C) is an indirect mode ( 903 BI) having two indirect branchfields ( 903 IT, 903 IF).