cpe229_lec20 - CPE 229 Course Notes Lecture 20 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 20 Copyright: 2005 Bryan Mealy Joe the Wanderer Finds His Way Back Home This represents the fourth set of notes regarding assembly language programming and PicoBlaze architecture. With the combination of lab, lecture, and homework examples, you’re hopefully getting a good feel for programming using PicoBlaze assembly language. At this point, you should have noticed that although there were not too many instructions in the PicoBlaze instruction set, you were still able to do some rather complicated tasks. Unlike programming in higher level language, programming in assembly language requires a special type of creativity and cleverness; it’s definitely not everyone’s cup of tea. The nice part about this requirement is that you must become intimately familiar with the both the instruction set and the underlying architecture (since they’re so closely related). Assembly language is special world: most people either love it or hate it. Having a good opinion of it now will help you out someday when you’re asked to do tasks such as using a microcontroller to control some function in an important circuit or optimized some portion of code written in a higher level language 1 . PicoBlaze is on the basic side as far as microcontrollers go. As the lectures slowly go by, you should be learning more and more about the basic functions of microcontrollers. You may be happy to know that you’ve almost reached the end of the microcontroller functionality that is available on PicoBlaze. This is not necessarily a good thing in that even the most basic microcontroller contains more standard features than PicoBlaze. You should know about these other features but we won’t mention them in this incarnation of CPE 229. In any case, there are only two more topics left to cover: Interrupts and Input/Output. This set of notes presents an introduction to the basics of interrupts. Figure 1(a) shows the black box diagram for PicoBlaze. Note that one of the inputs in this diagram is the interrupt input. In other words, the interrupt is a physical input to the PicoBlaze microcontroller. Figure 1(b) shows that the program flow control is generally a function of the interrupt. In short, a device that physically connects to PicoBlaze will somehow exert control over program flow. This set of notes lists the ins and outs of this flavor of control. (a) (b) Figure 1: PicoBlaze diagram (a) and Program Flow Control circuitry (b). Different Flavors of I/O The block diagram shown in Figure 2 represents another view of a basic computer system. As you probably remember from our discussion of the basic computer we designed, the MCU uses buses to communicate with the various functional blocks in a computer system. For today’s discussion, we are mainly interested 1 A standard software practice is to speed up the execution of programs by optimizing certain portions of the code. Compilers are arguably still not able to write more efficient code than humans. A profiler can be used to figure out
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.

Page1 / 9

cpe229_lec20 - CPE 229 Course Notes Lecture 20 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