cpe229_lec18 - CPE 229 Course Notes: Lecture 18 Copyright:...

Info iconThis preview shows pages 1–2. Sign up to view the full content.

View Full Document Right Arrow Icon
CPE 229 Course Notes: Lecture 18 Copyright: 2005 Bryan Mealy Assembly Stuff Stepping up from RTL descriptions of circuits to assembly language and microcontrollers represents the next logical step in your digital learning evolution. While RTL descriptions of circuits represented a nice overview of the circuit’s operations, it is somewhat limiting in the context of making your circuit do something useful. RTL could in this context be considered a precursor to making the circuit useful on a higher level. Moving up the digital circuit hierarchy leaves us interacting with computers at the assembly language level. As you will see, working with assembly languages and microcontrollers presents the ultimate “efficiency” in digital circuit design. In this context, the word efficiency refers to the fact that we can implement many different designs using a single hardware platform. More specifically, with a single piece of hardware, we can implement the different designs by altering the effective functioning of the circuit by simply changing the firmware (as opposed to changing the hardware). This means that the number of possible designs presented by a single piece of hardware is infinite and is only limited by the imagination of the programmer. The last set of notes hopefully gave you a taste of assembly language programming. The approach taken in the previous set of notes was to power out some of the basic commands in order to prepare you for Experiment 7. Today, we’ll somewhat review the topics presented in the previous set of notes but we’ll also go into it in a little more depth. With a slightly more in-depth discussion of some of the topics, hopefully the ideas presented as well as some of the underlying theory will make a lasting impression. Keep in mind that the knowledge and skills you attain working with PicoBlaze transfer nicely to other assembly languages and hardware platforms. This is because the operation of most processors and most microcontrollers follow the basic tenets we’ll be discussing in this next few sets of notes. Another Overview The Programming Model and the instruction set are what define any computer that we plan on programming on the assembly language level. The programming model provides a quick reference to the hardware that the instructions in the instruction set can modify. In other words, the instruction set dictates exactly how data in the underlying registers can be modified. For reference, the PicoBlaze programming model is shown once again in Figure 1. Figure 1: PicoBlaze Programming Model. While in programming model is highly interesting, we need to drop down a few levels in order to explain the main topic presented in this set of notes: program flow control . In this context, program control refers to how programs are executed. In normal computer operation, the instructions are executed in a sequential manner. But if programs were constrained to only operating in this manner, the program would end once
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Image of page 2
This is the end of the preview. Sign up to access the rest of the document.

This note was uploaded on 03/27/2009 for the course CPE 229 taught by Professor Smith during the Spring '09 term at Cal Poly.

Page1 / 14

cpe229_lec18 - CPE 229 Course Notes: Lecture 18 Copyright:...

This preview shows document pages 1 - 2. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online