ARM.SoC.Architecture

Where alternative mnemonics are shown in the same row

Info iconThis preview shows page 1. Sign up to view the full content.

View Full Document Right Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: h the exception of 'always', since 'never' should not be used). Therefore whenever if...then... can be implemented with conditional instructions, ...else... can be added using instructions with the opposite condition. Alternative mnemonics Branch and Branch with Link (B, BL) 113 Table 5.3 ARM condition codes. Opcode [31:28] 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 Mnemonic extension EQ NE CS/HS CC/LO Ml PL VS Interpretation Equal / equals zero Not equal Carry set / unsigned higher or same Carry clear / unsigned lower Minus / negative Plus / positive or zero Overflow No overflow Unsigned higher Unsigned lower or same Signed greater than or equal Signed less than Signed greater than Signed less than or equal Always Never (do not use!) Status flag state for execution Zset Z clear Cset C clear Nset N clear Vset V clear C set and Z clear C clear or Z set N equals V N is not equal to V Z clear and N equals V Z set or N is not equal to V any none vc HI LS GE LT GT LEAL NV 11 11 5.4 Branch and Branch with Link (B, BL) Branch and Branch with Link instructions are the standard way to cause a switch in the sequence of instruction execution. The ARM normally executes instructions from sequential word addresses in memory, using conditional execution to skip over individual instructions where required. Whenever the program must deviate from sequential execution a control flow instruction is used to modify the program counter. Although there are several ways to achieve this in special circumstances, Branch and Branch with Link instructions are the standard way. Binary encoding Figure 5.3 Branch and Branch with Link binary encoding. 114 The ARM Instruction Set Description Branch and Branch with Link instructions cause the processor to begin executing instructions from an address computed by sign extending the 24-bit offset specified in the instruction, shifting it left two places to form a word offset, then adding it to the program counter which contains the address of the branch instruction plus ei...
View Full Document

This document was uploaded on 10/30/2011 for the course CSE 378 380 at SUNY Buffalo.

Ask a homework question - tutors are online