NO CALCULATORS ARE ALLOWED IN THIS EXAM

Size: px
Start display at page:

Download "NO CALCULATORS ARE ALLOWED IN THIS EXAM"

Transcription

1 Department of Electrical and Computer Engineering, University of Calgary ENCM415 DECEMBER 18 th, HOURS NAME:- ID#:- PLEASE WRITE CLEARLY. USE AN HB GRADE OR SOFTER (DARKER) PENCIL! WHAT I CAN=T READ WILL MARKED WRONG. CLOSED BOOK EXAM DO NOT BRING ANY UNAUTHORIZED MATERIAL INTO THE EXAM ROOM The student is provided with a copy of the reference sheet, PI/T and SDS reference sheets as part of the exam handout. NO CALCULATORS ARE ALLOWED IN THIS EXAM Attempt all THREE questions from SECTION A and ANY TWO questions from SECTION B. All questions are approximated weighted equally in terms of marks, but not difficulty On the attached Performance Analysis sheet, estimate your performance on each question for bonus marks. Maximum bonus of 5 marks The attached Performance Analysis sheet shows the topics covered in each question. Use this information to plan which questions you should answer to maximize your mark during this exam. A hint of the time to spend on each part of a question is given by the relative number of marks associated with that question part. Answer the questions in the space provided on the exam sheet. The space and marks allocated are an indication of the depth of the answer expected. Make sure that you provide appropriate documentation of code and answers as marks are allocated for this documentation. Follow standard AC/C++@ conventions and recommended safe practices in your coding. Many of the concepts in this course are subjective meaning that there may be more than one valid answer. Make sure that you support your answer. If the question says which instruction is better MOVEQ.L or MOVE.L in this situation, then answering MOVEQ will give you no marks, even if true. Support why that answer is true, preferably with examples in point form As an engineer at work, you will be expected to answer questions by coming quickly to the point. The same is true in this exam. Many students spend an unnecessary amount of time writing an extremely lengthy answer when a short answer, preferable in point form, is what is required. If the question says Provide a short answer in no more than lines then follow the instructions! Think about the answer rather than using a shot-gun approach and just writing down EVERYTHING you know. PAGE 1 OF 15

2 FIG. 1 Assume that the register and memory values of a Motorola microprocessor have been configured to appear as shown in FIG 1 just as control is transferred to the subroutine starting at location 0x5000. (Alternatively the registers and memory look like this before instruction 0x5000 is executed) The following values are in the data registers D0 = 0x4500, D1 = 0x415, D2 = 0x5028 Q1. A) I wish to set a break point to cause the simulation to break at instruction MOVE.L (A0)+, D1. Make an X on the screen picture at the location where you must click to cause that breakpoint to be set. 1 mark Q1. B) The code sequence starting at location 0x5000 is now run. CarefuLLy determine the address and data bus activity during the execution of the instruction MOVE.L D2, (A7). Use CISCsim model 5 marks FETCH PHASE ADDRESS BUS DATA BUS DECODE PHASE EXECUTE PHASE WRITE PHASE Q1. C) With the simulation stopped at the breakpoint you set at the MOVE.L (A0)+, D1 instruction, what will be the value stored in the following registers D0 register 1 mark D2 register 1 mark Z-Flag in the status register. Explain how you calculated this value 2 marks THERE ARE 10 MARKS AVAILABLE ON THIS PAGE YOUR MARK ESTIMATE / 10 PAGE 2 OF 15

3 Fig. 1 Assume that the register and memory values of a Motorola microprocessor have been configured to appear as shown in FIG 1 above just as control is transferred to the subroutine starting at location 0x5000 (repeated from the previous page.) This means that this picture is valid when the subroutine is stopped at the first breakpoint (ADDA.L #4, SP). The following values are in the data registers D0 = 0x4500, D1 = 0x415, D2 = 0x5028 Q1. D) During the execution of which instruction in the code in Fig. 1, the value 0xD081 will appear on the processor s address bus during the FETCH phase of an instruction. Circle this instruction and label with a D on the screen picture. 1 mark Q1. E) When this subroutine has been called from another part of the program and stops at the first break point (ADDA.L #4, SP), a programmer familiar with debugging practices can determine the return address that should be used when this subroutine exits. How can the programmer determine this return address, and what will be the value of this return address? 3 marks Q1. F) Explain the difference between A DEFECT and AN ERROR when programming a subroutine. 2 marks Q1. G) Which typically takes longer to fix A DEFECT or AN ERROR? Why is this true? 2 marks Q1. H) There is a very nasty defect in the subroutine above. What is that defect and why DOES IT NOT cause the subroutine to malfunction? 2 marks THERE ARE 10 MARKS AVAILABLE ON THIS PAGE YOUR MARK ESTIMATE / 10 PAGE 3 OF 15

4 Q2 A) Three students have worked very late on an ENCM415 laboratory, but are now ready to come home. However it is very cold and one of the students must go out and warm up the car for the others. To decide who goes out to start the car, they write a program. The first student writes the function void main(void), placed in file main.s. The C -code design comments have been placed down the right side of the page. Translate this design into a documented 68K assembly language program following the coding standards established for this course. 10 marks // Random number generator prototype long int Random(long int value); // Prototype for a function to select a student based on // a random number // long int WhichPerson(long int value); // Prototype for a function to print out the student number // void PrintStudent(char *pt, long int value); // void main(void) { // long int person = 0; // long int number; // long int seed = 2500; // while (person = = 0) { // number = Random(seed); // person = WhichPerson(number); // } // PrintStudent( %d\n, person); // } THERE ARE 10 MARKS AVAILABLE ON THIS PAGE YOUR MARK ESTIMATE / 10 PAGE 4 OF 15

5 Q2 continued. The other students write two versions of the function long int WhichPerson(long int value) stored in files Version1.s and Version2.s. One version of the function is written using a switch statement. The other is written to impress and uses the Dr. Smith favourite the fast lookup table. The C -code design comments have been placed down the right side of the page. Translate these designs into documented 68K assembly language subroutines following the coding standards established for this course. Q2B Function stored in file Version1.s 5 Marks // long int WhichPerson( long int value) { // long int person; // value = value & 0x07; // switch (value) { // case 7: person = 1; break; // case 6: person = 2; break; // case 5: person = 3; break; // default: person = 0; // } // return (person); // } Q2C Function stored in file Version2.s 5 Marks // static long int choice[ ] = {0, 0, 0, 0, 0, 3, 2, 1}; // long int WhichPerson( long int value) { // long int person; // value = value & 0x07; // person = choice[value]; // return (person); // } THERE ARE 10 MARKS AVAILABLE ON THIS PAGE YOUR MARK ESTIMATE / 10 PAGE 5 OF 15

6 Q3.A) It is possible to set up the PI/T for either non-latched input or for double-buffered input. Explain the difference between these terms and the consequences of using the different types of input. 2 marks Q3. B) Write the Assembly subroutine void SetUpPIT(void) that will have the following functionality. PIT2 Port A is set up for double buffered input PIT2 Port B is set up for double buffered output H4 interrupt is activated for interrupts when it goes from high to low This interrupt is a level 4 interrupt which will call the C ISR Routine _DoThisNow( ) Set up the vector table to handle the H4 interrupt. Saves the old status register and enables the processor to recognize level 4 interrupts You have been provided with the manufacturer s data table for the PI/T device as part of the exam documentation. 8 marks RTS THERE ARE 10 MARKS AVAILABLE ON THIS PAGE YOUR MARK ESTIMATE / 10 PAGE 6 OF 15

7 Q3.C) Consider the ISR code sequence given in the picture above. Complete the table below to show the processor bus activity during the execution of the instruction starting at location 0x1048. Label the instruction phases. Mark unknown if no known changes are occurring on the bus (e.g. during the EXECUTE PHASE) 1 mark PHASE ADDRESS BUS DATA BUS Q3 D) Show the timing relationship between the valid/invalid address bus values, valid/invalid data bus values, the Address Strobe AS*, the Data Strobe DS* and the cycle clock phases (S0 to S7) during the FETCH phase of the instruction starting at location 0x marks ADDRESS BUS DATA BUS ADDRESS STROBE (AS*) DATA STROBE (DS*) S1 S3 S5 S7 S0 S2 S4 S6 S0 NOTE THE RELATIONSHIP BETWEEN THE SIGNALS OF YOUR TIMING DIAGRAM COUNTS Q3.E) Consider the instruction MOVE.L 0x5000.L, 0x4000.L in the ISR code sequence given in the picture above. Complete the table below to detail the number of memory read and write operations that are occurring during each phase of the instruction. 3 marks PHASE FETCH DECODE EXECUTE WRITEBACK READ NONE OPERATIONS WRITE OPERATIONS Q3. F) Basing your answer on the information given in the picture at the top of this page, provide the hexadecimal codes that would be stored in memory to form the following instructions. MOVEQ.L #6, D1 1 mark MOVE.L #0x , 0x415.L 1 mark THERE ARE 10 MARKS AVAILABLE ON THIS PAGE YOUR MARK ESTIMATE / 10 PAGE 7 OF 15

8 SECTION B ATTEMPT ANY 2 QUESTIONS FROM THIS SECTION THE QUESTIONS IN THIS SECTION ARE INTENDED TO BE MORE DIFFICULT THAN THOSE FROM SECTION A These are open-ended questions and you may be required to make some educated, engineering relevant, design decisions. Since these are open-ended questions then make sure that you don t spend an unreasonable amount of time answering the questions. Q4 A) How many bits can be carried on the data bus at the same time? How many write operations are needed to store a LONG value to the data memory 2 marks Q4B) The instruction MOVE.B 0x500.W, 0x L is a perfectly valid, if unusual instruction. What does this instruction do, and how come it involves all three types of extensions.b,.w and.l? 4 marks Q4C) Translate the following C code segment into a valid assembly language segment following the coding conventions established for this course. Determine the integer value stored in variable C. Integer stored in variable C is static char A = 39; static char B = 120; static char C; C = A + B; 4 marks THERE ARE 10 MARKS AVAILABLE ON THIS PAGE YOUR MARK ESTIMATE / 10 PAGE 8 OF 15

9 Q4D) A key element in writing interrupt service routines is code speed. You want to spend as little time in the ISR routine as possible. Consider the basic for-loop constructs used in the example below Example_ISR: LOOP: ENDLOOP: SUB.L #16, SP MOVEM.L D0-D1/A0-A1, (SP) START TIMING HERE MOVE.L #0, D0 CMP.L #1000, D0 BGE END_LOOP JSR SomeCode // Assume this subroutine (including JSR) executes in 200 clock ticks ADD.L #1, D0 JMP LOOP FINISH TIMING HERE MOVEM.L (SP), D0-D1/A0-A1 ADD.L #16, SP RTE How long will it take (in clock ticks) for the code between the two timing markers to execute? You will need to show your calculations to receive full marks for this question. Remember no calculators are allowed in this exam. 4 marks Changing the style in which the code is written could speed up the operation of the for-loop. Describe and demonstrate several coding practices that could be used to speed up this code. After rewriting the code using the techniques you describe, what percentage increase has been achieved in the speed of this ISR routine? 6 marks THERE ARE 10 MARKS AVAILABLE ON THIS PAGE YOUR MARK ESTIMATE / 10 PAGE 9 of 15

10 Q5) As I said in lectures, the Analog Devices TMP04 is a simple, neat digital thermometer chip that I plan to use in 2002 Lab 2 for ENCM415. As can be seen from the picture below, the TMP04 has just three pins, V+ (which needs 5V and only 1.3mA), GND (needs 0V) and the output signal Dout. With the device powered up (V+ and GND connected to a power source), the Dout signal is a serial stream of bits that represents the digital temperature of the device. The bit patterns in the digital stream will change with the temperature as you warm up, or cool down, the device and. By counting the high-to-low transitions of the bit stream signal, we can build a temperature sensitive clock whose signal pulses change in frequency as a function of temperature. In this question we are going to review basic ideas about bit streams. Then we are going to hook up the TMP04 to the PI/T from Lab. 2 and write the code necessary to produce the temperature sensitive clock. BACKGROUND INFORMATION The hexadecimal temperature 0x60 is represented by the bit pattern % When a hexadecimal temperature is transmitted over a serial line, its bit pattern is transmitted with a starting 1 (start bit) and two trailing 1 s (stop bits). Thus the temperature 0x64 = % is transmitted as the signal % If the stream of bits from the TMP04 device is read via a PI/T pin, the stream of bits will look like 2 clock pulses one clock pulse formed from the transition in bits 10, another clock pulse from the transition in the bits The final bits 11 will join up with the start bit 1 of the next serial stream so the bits will not form a third clock pulse Q5A) What is the bit pattern associated with the higher hexadecimal temperature 0xAA? How will the bit pattern from the higher temperature 0xAA be transmitted over the serial line? How many clock pulses are formed by the serial stream of bits that represent the temperature 0xAA? 3 marks Q5 B) The schematic below shows the Laboratory PI/T interface, a 20 khz clock pulse generator together with the TMP04 device. Pin A7 is to be hooked to V+ to provide power. Pin A0 is to be hooked up to GND. Pin A1 is to be hooked up to the Dout signal. Pin A5 is to be hooked up to the pulse generator. Pin A3 is an output clock signal that will be generated by software. Show how the devices should be connected to perform the task described above. Use arrows on the connection lines to indicate whether the PI/T pins are hooked up for use as input or output signal. Mark unconnected pins by a line terminating with an X (don t care) 2 marks LSB * * * * PI/2 * PORTA * * MSB * 20 khz Pulse Generator V+ Analog GND Devices D out TP04 H2 * Q5C) Develop, document and completely code a documented 68K assembly language subroutine void ResetDevice(void) that has the following functionality Configures the PI/T for non-latched input, single buffered output on the appropriate pins to handle the task described above Provides the necessary signals to power up the TMP04 device and make it start working providing a serial stream whose high-to-low transitions will occur at a rate that changes as the device temperature changes 5 marks THERE ARE 10 MARKS AVAILABLE ON THIS PAGE YOUR MARK ESTIMATE / 10 PAGE 10 OF 15

11 Q5.D) Write a documented 68K assembly language routine void MakeClockSignal( long int whichclock, short int how_many_pulses) which functions as follows. Using the subroutine call MakeClockSignal(0, 100) would mean that the subroutine would start by setting the A3 clock pin HIGH. Then the pulses coming from the pulse generator (whichclock = = 0) are counted. After 100 pulses (how_many_pulses = = 100), the A3 clock pin is set LOW and the subroutine exits. Using the subroutine call MakeClockSignal(1, 200) would mean that the subroutine would start by setting the A3 clock pin HIGH.. Then the pulses coming from the TMP04 chip (whichclock = = 1) are counted. After 200 pulses (how_many_pulses = = 200), the A3 clock pin is set LOW and the subroutine exits You must make a call to the function void ResetDevice(void) (from Q5C) inside MakeClockSignal ( ) in order to initialize the PI/T and start up thetmp04 chip. 10 marks for this question. You may make 2 basic errors without penalty THERE ARE 10 MARKS AVAILABLE ON THIS PAGE YOUR MARK ESTIMATE / 10 PAGE 11 OF 15

12 Q6. A) The C standard defines the strncat() function as follows char *strncat(char *s1, char *s2, long n) The strncat() function appends not more than n characters (a null character and characters that follow it are not appended) from the array pointed to by s2 to the end of the string pointed to by s1. The initial character of s2 overwrites the null character at the end of s1. A terminating null character is always appended to the result. (The maximum number of characters in the final array pointed to by s1 is strlen(s1)+n+1. The strncat( ) function return the value of s1. Example:- char first[20] = head ; char second[20] = tail ; char *pt; pt = strncat(first, second, 2); putsln(first); Output is headta Write a documented assembly language version of the function strncat() that is compatible with C stack conventions. HINT carefully read the functionality of the function to avoid missing key elements and introducing defects into your code (10 marks). THERE ARE 10 MARKS AVAILABLE ON THIS PAGE YOUR MARK ESTIMATE / 10 PAGE 12 OF 15

13 Q6B) Provide a labelled schematic of the resources of a typical MICRO-CONTROLLER SYSTEM in use to control a Peripheral Interface/Timer device. The schematic should show both internal and external resources processor resources. There should be sufficient detail so that you would be able to use the diagram to explain, using a register transfer language (RTL), how these resources interact to enable the instruction MOVE.B #4, 0x41B010 to operate to place the value 5 into one of the PI/T registers. (5 marks) Q6C Referring to the diagram in Q6B, use a register transfer language (RTL), how these resources interact to enable the WRITEBACK phase of the instruction MOVE.B #4, 0x41B010 to operate to place the value 5 into one of the PI/T registers. (5 marks) THERE ARE 10 MARKS AVAILABLE ON THIS PAGE YOUR MARK ESTIMATE / 10 PAGE 13 of 15

14 Q7) -- Don t you just hate it when you have done research beyond the course content because that area interested you you have heavily reviewed one area you thought the instructor kept on deliberately emphasizing and then the examiner does not ask any questions in that area! As promised, here is a chance to overcome that problem. Make up a question related to this course AND answer it. (20 marks) TO RECEIVE FULL MARKS the question should satisfy the following criteria Be at a difficulty level appropriate for a final exam question in the 3rd year of an Electrical and Computer Engineering program. Quick test -- Would it be suitable for next year s final? The question should NOT be equivalent to any exam question already asked in this course or the current exam. Questions and answers that are a simple regurgitation of a concept handled in class will receive a D grade (around marks). Questions and answers that give a new insight into a concept handled in class will receive a C or a B grade (11 14 marks). Questions that, under different circumstances, would present A CHALLENGE FOR YOU to answer in either Section A or Section B of a final exam will receive B or A grade (14 and up), if answered correctly. A good mark on this question would be 15 or 16 marks out of 20 Students who have spend time ahead of the exam planning questions that lead to answers that are clear and concise are more likely to receive higher marks. This means I don t like marking long-winded answers that look like they have been thought up on the spur of the moment. Please bring the questions and answers into the exam in your head as no additional materials are allowed in this exam! Marking exams is normally as much fun as watching paint dry. Questions that entertain me and leave me thinking that s clever and well thought out or leave me wanting to boast to other instructors about what you suggested -- are more likely to receive higher marks. Page 14 of 15

15 Page 15 of 15

16 EXTRA PAGE ---- IN-CASE YOU NEED IT FOR A LONG ANSWER

17 Performance Analysis Sheet Maximum Bonus Marks 5% FINAL EXAM FOR ENCM415, 18 th December, 2001 NAME:- ID#:- Good software engineers keep track of their progress and can estimate their success. In the table below, indicate questions attempted and your estimate of how well you have answered the question. For each estimate that matches the mark you actually receive, you will receive a bonus mark to make up for the time lost answering this section -- Maximum bonus 5 marks MAXIMUM YOUR ESTIMATE OF YOUR PERFORMANCE MARK ATTEMPT ALL QUESTIONS FROM SECTION A SECTION A Q1 20 Circle your expected mark on this question A > 15 > B > 13 > C > 11 > D > 8 > F SECTION A Q2 20 Circle your expected mark on this question A > 15 > B > 13 > C > 11 > D > 8 > F SECTION A Q3 20 Circle your expected mark on this question Bus Activity General Knowledge Translation of C/C++ to 68K assembly code Design -- PI/T with interrupts General Knowledge A > 15 > B > 13 > C > 11 > D > 8 > F ATTEMPT ANY TWO QUESTIONS FROM SECTION B IF YOU ATTEMPT THREE, THE THIRD WILL BE IGNORED SECTION B QUESTIONS ARE INTENDED TO BE SIGNIFICANTLY MORE DIFFICULT THAN SECTION A QUESTIONS SECTION B Q4 20 Circle your expected mark on this question A > 15 > B > 13 > C > 11 > D > 8 > F SECTION B Q5 20 Circle your expected mark on this question A > 15 > B > 13 > C > 11 > D > 8 > F SECTION B Q6 20 Circle your expected mark on this question A > 15 > B > 13 > C > 11 > D > 8 > F SECTION B Q7 20 Circle your expected mark on this question A > 15 > B > 13 > C > 11 > D > 8 > F General Knowledge Code Optimization techniques Design Question Lab. 2 for ENCM415 in 2002 String array handling Microprocessor internals/rtl Write your own question and answer it YOUR ESTIMATE OF YOUR FINAL MARK -- OUT OF 100 / 100 Process management component of the exam 1 Mark bonus if prediction of mark on a question is accurate to +-1 (estimates of unanswered questions excluded) 2 Mark bonus if prediction of final mark on quiz is accurate to +-3 Maximum of 5 Bonus marks To give you an idea of what I would consider the relative difficulties of the questions, here are my expected Class Averages if everybody in the class attempted a particular question SECTION A Q1 -- B- / B Q2 B+ / B Q3 C / C+ (Higher marks available IF you apply your PSP process) SECTION B Q4 -- C / C+ Q5 C- / C Q6 C / C+ Q7 C+ / B- Planned exam mark average in the range 65% -- 68% (C / C+). Add to this the Bonus marks gained (average 3) for knowing what questions you did well and what questions you did poorly will give you 69% -- 71% (C+/ B- / B ) for the final exam EXTRA PAGE

Department of Electrical and Computer Engineering, University of Calgary ENCM415 FINAL EXAM, DECEMBER 17 th, 2002

Department of Electrical and Computer Engineering, University of Calgary ENCM415 FINAL EXAM, DECEMBER 17 th, 2002 Department of Electrical and Computer Engineering, University of Calgary ENCM415 FINAL EXAM, DECEMBER 17 th, 2002 3 HOURS PLEASE WRITE CLEARLY. USE AN HB GRADE OR SOFTER (DARKER) PENCIL! WHAT CAN T BE

More information

IMASK FIO_FLAG_S FIO_DIR SIC_IMASK FIO_EDGE FIO_POLAR ILAT FIO_BOTH TCOUNT FIO_FLAG_D FIO_ENEN PF_STATUS_D

IMASK FIO_FLAG_S FIO_DIR SIC_IMASK FIO_EDGE FIO_POLAR ILAT FIO_BOTH TCOUNT FIO_FLAG_D FIO_ENEN PF_STATUS_D SECTION B -- ATTEMPT NO MORE THAN 2 QUESTIONS These are open-ended questions and you may be required to make some educated, engineering relevant, design decisions. Only the first two answers to questions

More information

ENCM 369 Winter 2017 Lab 3 for the Week of January 30

ENCM 369 Winter 2017 Lab 3 for the Week of January 30 page 1 of 11 ENCM 369 Winter 2017 Lab 3 for the Week of January 30 Steve Norman Department of Electrical & Computer Engineering University of Calgary January 2017 Lab instructions and other documents for

More information

Laboratory 1 Manual V1.2 1 st September 2007 Developing a Blackfin GPIO interface using an automated embedded testing environment

Laboratory 1 Manual V1.2 1 st September 2007 Developing a Blackfin GPIO interface using an automated embedded testing environment Laboratory 1 Manual V1.2 1 st September 2007 Developing a Blackfin GPIO interface using an automated embedded testing environment These pages are cut-and-paste from the Lab. 1 web-pages. I have not spent

More information

CPE/EE 421 Microcomputers

CPE/EE 421 Microcomputers CPE/EE 421 Microcomputers Instructor: Dr Aleksandar Milenkovic Lecture Note S06 *Material used is in part developed by Dr. D. Raskovic and Dr. E. Jovanov CPE/EE 421/521 Microcomputers 1 Course Administration

More information

CPE/EE 421 Microcomputers

CPE/EE 421 Microcomputers CPE/EE 421 Microcomputers Instructor: Dr Aleksandar Milenkovic Lecture Note S07 Outline Stack and Local Variables C Programs 68K Examples Performance *Material used is in part developed by Dr. D. Raskovic

More information

Computer Architecture and Engineering. CS152 Quiz #1. February 19th, Professor Krste Asanovic. Name:

Computer Architecture and Engineering. CS152 Quiz #1. February 19th, Professor Krste Asanovic. Name: Computer Architecture and Engineering CS152 Quiz #1 February 19th, 2008 Professor Krste Asanovic Name: Notes: This is a closed book, closed notes exam. 80 Minutes 10 Pages Not all questions are of equal

More information

EECS 140 Laboratory Exercise 4 3-to-11 Counter Implementation

EECS 140 Laboratory Exercise 4 3-to-11 Counter Implementation EECS 140 Laboratory Exercise 4 3-to-11 Counter Implementation 1. Objectives A. To apply knowledge of combinatorial design. B. Gain expertise in designing and building a simple combinatorial circuit This

More information

EXPERIMENT #7 PARALLEL INTERFACING USING THE PERIPHERAL INTERFACE ADAPTER (PIA)

EXPERIMENT #7 PARALLEL INTERFACING USING THE PERIPHERAL INTERFACE ADAPTER (PIA) EXPERIMENT #7 PARALLEL INTERFACING USING THE PERIPHERAL INTERFACE ADAPTER (PIA) 1.0 Procedure The purpose of this experiment is to introduce the student to the following topics: the Peripheral Interface

More information

Alex Milenkovich 1. CPE/EE 421 Microcomputers: Motorola 68000: Assembly Language and C. Outline

Alex Milenkovich 1. CPE/EE 421 Microcomputers: Motorola 68000: Assembly Language and C. Outline Outline CPE/EE 421 Microcomputers: Motorola 68: Assembly Language and C Instructor: Dr Aleksandar Milenkovic Lecture Notes ACIA Example: Pseudo-code + Assembly Passing parameters In registers Passing by

More information

Chapter Operation Pinout Operation 35

Chapter Operation Pinout Operation 35 68000 Operation 35 Chapter 6 68000 Operation 6-1. 68000 Pinout We will do no construction in this chapter; instead, we will take a detailed look at the individual pins of the 68000 and what they do. Fig.

More information

C Calling Conventions

C Calling Conventions C Calling Conventions 1. parameters are passed on the run-time or system stack, SP (or A7) 2. parameters pushed on stack in right to left order of call A6 used as the stack frame pointer local variables

More information

CSC 258 lab notes, Fall 2003

CSC 258 lab notes, Fall 2003 CSC 258 lab notes, Fall 2003 Instructor: E. R. C. Hehner Lab demonstrators: Nicolas Kokkalis, Andrés Lagar Cavilla Successful completion of the three graded labs in this course involves a significant amount

More information

These three counters can be programmed for either binary or BCD count.

These three counters can be programmed for either binary or BCD count. S5 KTU 1 PROGRAMMABLE TIMER 8254/8253 The Intel 8253 and 8254 are Programmable Interval Timers (PTIs) designed for microprocessors to perform timing and counting functions using three 16-bit registers.

More information

Computer Architecture and Engineering CS152 Quiz #3 March 22nd, 2012 Professor Krste Asanović

Computer Architecture and Engineering CS152 Quiz #3 March 22nd, 2012 Professor Krste Asanović Computer Architecture and Engineering CS52 Quiz #3 March 22nd, 202 Professor Krste Asanović Name: This is a closed book, closed notes exam. 80 Minutes 0 Pages Notes: Not all questions are

More information

8086 Interrupts and Interrupt Responses:

8086 Interrupts and Interrupt Responses: UNIT-III PART -A INTERRUPTS AND PROGRAMMABLE INTERRUPT CONTROLLERS Contents at a glance: 8086 Interrupts and Interrupt Responses Introduction to DOS and BIOS interrupts 8259A Priority Interrupt Controller

More information

MICROPROCESSOR AND MICROCONTROLLER BASED SYSTEMS

MICROPROCESSOR AND MICROCONTROLLER BASED SYSTEMS MICROPROCESSOR AND MICROCONTROLLER BASED SYSTEMS UNIT I INTRODUCTION TO 8085 8085 Microprocessor - Architecture and its operation, Concept of instruction execution and timing diagrams, fundamentals of

More information

Building a COFFEE POT simulation on CCESS for Blackfin BF533

Building a COFFEE POT simulation on CCESS for Blackfin BF533 Building a COFFEE POT simulation on CCESS 2.6.0 for Blackfin BF533 Last lecture covered some detailed ideas Let step back and do something simpler to get an introduction of ideas needed for Lab0 and Assignment

More information

Magic 8 Ball. Student's name & ID (1): Partner's name & ID (2): Your Section number & TA's name

Magic 8 Ball. Student's name & ID (1): Partner's name & ID (2): Your Section number & TA's name MPS Magic 8 Ball Lab Exercise Magic 8 Ball Student's name & ID (1): Partner's name & ID (2): Your Section number & TA's name Notes: You must work on this assignment with your partner. Hand in a printer

More information

Microprocessor or Microcontroller Not just a case of you say tomarto and I say tomayto

Microprocessor or Microcontroller Not just a case of you say tomarto and I say tomayto Microprocessor or Microcontroller Not just a case of you say tomarto and I say tomayto Discussion of the capabilities of the Analog Devices ADSP-5333 Evaluation Board used in this course M. Smith, ECE

More information

University of Toronto Faculty of Applied Science and Engineering

University of Toronto Faculty of Applied Science and Engineering Print: First Name:............................. Last Name:............................. Student Number:............................................... University of Toronto Faculty of Applied Science and

More information

Programming Project 4: COOL Code Generation

Programming Project 4: COOL Code Generation CS 331 Compilers Fall 2017 Programming Project 4: COOL Code Generation Prof. Szajda Due Tuesday, December 5, 11:59:59 pm NOTE: There will be no extensions whatsoever given for this project! So, begin it

More information

Working with the Compute Block

Working with the Compute Block Tackled today Working with the Compute Block M. R. Smith, ECE University of Calgary Canada Problems with using I-ALU as an integer processor TigerSHARC processor architecture What features are available

More information

Computer Architecture and Engineering CS152 Quiz #2 March 7th, 2016 Professor George Michelogiannakis Name: <ANSWER KEY>

Computer Architecture and Engineering CS152 Quiz #2 March 7th, 2016 Professor George Michelogiannakis Name: <ANSWER KEY> Computer Architecture and Engineering CS152 Quiz #2 March 7th, 2016 Professor George Michelogiannakis Name: This is a closed book, closed notes exam. 80 Minutes. 15 pages Notes: Not all questions

More information

ENCM 335 Fall 2018 Lab 2 for the Week of September 24

ENCM 335 Fall 2018 Lab 2 for the Week of September 24 page 1 of 8 ENCM 335 Fall 2018 Lab 2 for the Week of September 24 Steve Norman Department of Electrical & Computer Engineering University of Calgary September 2018 Lab instructions and other documents

More information

ENCM 369 Winter 2019 Lab 6 for the Week of February 25

ENCM 369 Winter 2019 Lab 6 for the Week of February 25 page of ENCM 369 Winter 29 Lab 6 for the Week of February 25 Steve Norman Department of Electrical & Computer Engineering University of Calgary February 29 Lab instructions and other documents for ENCM

More information

ECE251: Thursday September 27

ECE251: Thursday September 27 ECE251: Thursday September 27 Exceptions: Interrupts and Resets Chapter in text and Lab #6. READ ALL this material! This will NOT be on the mid-term exam. Lab Practical Exam #1 Homework # due today at

More information

A look at interrupts Dispatch_Tasks ( )

A look at interrupts Dispatch_Tasks ( ) SHOWS WHERE S FIT IN A look at interrupts Dispatch_Tasks ( ) What are interrupts and why are they needed in an embedded system? Equally as important how are these ideas handled on the Blackfin Assignment

More information

EEL 4744C: Microprocessor Applications. Lecture 7. Part 1. Interrupt. Dr. Tao Li 1

EEL 4744C: Microprocessor Applications. Lecture 7. Part 1. Interrupt. Dr. Tao Li 1 EEL 4744C: Microprocessor Applications Lecture 7 Part 1 Interrupt Dr. Tao Li 1 M&M: Chapter 8 Or Reading Assignment Software and Hardware Engineering (new version): Chapter 12 Dr. Tao Li 2 Interrupt An

More information

Reading Assignment. Interrupt. Interrupt. Interrupt. EEL 4744C: Microprocessor Applications. Lecture 7. Part 1

Reading Assignment. Interrupt. Interrupt. Interrupt. EEL 4744C: Microprocessor Applications. Lecture 7. Part 1 Reading Assignment EEL 4744C: Microprocessor Applications Lecture 7 M&M: Chapter 8 Or Software and Hardware Engineering (new version): Chapter 12 Part 1 Interrupt Dr. Tao Li 1 Dr. Tao Li 2 Interrupt An

More information

Introduction to Embedded Systems

Introduction to Embedded Systems Stefan Kowalewski, 4. November 25 Introduction to Embedded Systems Part 2: Microcontrollers. Basics 2. Structure/elements 3. Digital I/O 4. Interrupts 5. Timers/Counters Introduction to Embedded Systems

More information

University of Florida EEL 3744 Spring 2018 Dr. Eric M. Schwartz. Good luck!

University of Florida EEL 3744 Spring 2018 Dr. Eric M. Schwartz. Good luck! Page 1/13 Exam 2 Relax! Go Gators! Good luck! First Name Instructions: Turn off all cell phones and other noise making devices and put away all electronics. Show all work on the front of the test papers.

More information

UNIMPLEMENTED INSTRUCTIONS

UNIMPLEMENTED INSTRUCTIONS UNIMPLEMENTED INSTRUCTIONS OVERVIEW: This Programming Assignment will take the sine computation program you wrote for Programming Assignment #4 and implement it as a 68000 assembly language instruction.

More information

Tips from the experts: How to waste a lot of time on this assignment

Tips from the experts: How to waste a lot of time on this assignment Com S 227 Spring 2018 Assignment 1 100 points Due Date: Friday, September 14, 11:59 pm (midnight) Late deadline (25% penalty): Monday, September 17, 11:59 pm General information This assignment is to be

More information

Chapter 14 - Processor Structure and Function

Chapter 14 - Processor Structure and Function Chapter 14 - Processor Structure and Function Luis Tarrataca luis.tarrataca@gmail.com CEFET-RJ L. Tarrataca Chapter 14 - Processor Structure and Function 1 / 94 Table of Contents I 1 Processor Organization

More information

Project Final Report Configurable Temperature Logger

Project Final Report Configurable Temperature Logger Project Final Report Configurable Temperature Logger 04/26/2012 Shilin Gan Project Abstract The project I did is called Configurable Temperature Logger. Instead of creating and purchasing new hardware,

More information

Welcome to Lab! Feel free to get started until we start talking! The lab document is located on the course website:

Welcome to Lab! Feel free to get started until we start talking! The lab document is located on the course website: Welcome to Lab! Feel free to get started until we start talking! The lab document is located on the course website: https://users.wpi.edu/~sjarvis/ece2049_smj/ece2049_labs.html You do not need to keep

More information

Final exam. Scores. Fall term 2012 KAIST EE209 Programming Structures for EE. Thursday Dec 20, Student's name: Student ID:

Final exam. Scores. Fall term 2012 KAIST EE209 Programming Structures for EE. Thursday Dec 20, Student's name: Student ID: Fall term 2012 KAIST EE209 Programming Structures for EE Final exam Thursday Dec 20, 2012 Student's name: Student ID: The exam is closed book and notes. Read the questions carefully and focus your answers

More information

Microcontroller Not just a case of you say tomarto and I say tomayto

Microcontroller Not just a case of you say tomarto and I say tomayto Microprocessor or Microcontroller Not just a case of you say tomarto and I say tomayto M. Smith, ECE University of Calgary, Canada Information taken from Analog Devices On-line Manuals with permission

More information

TOPIC: Digital System Design (ENEL453) Q.1 (parts a-c on following pages) Reset. Clock SREG1 SI SEN LSB RST CLK. Serial Adder. Sum.

TOPIC: Digital System Design (ENEL453) Q.1 (parts a-c on following pages) Reset. Clock SREG1 SI SEN LSB RST CLK. Serial Adder. Sum. TOPIC: Digital System Design (ENEL453) Q.1 (parts a-c on following pages) Consider the serial adder below. Two shift registers SREG1 and SREG2 are used to hold the four bit numbers to be added. Each register

More information

CIS 371 Spring 2015 Computer Organization and Design 7 May 2015 Final Exam

CIS 371 Spring 2015 Computer Organization and Design 7 May 2015 Final Exam CIS 371 Spring 2015 Computer Organization and Design 7 May 2015 Final Exam Name: Recitation # (e.g., 201): Pennkey (e.g., eeaton): My signature below certifies that I have complied with the University

More information

YOU WILL NOT BE ALLOWED INTO YOUR LAB SECTION WITHOUT THE REQUIRED PRE-LAB.

YOU WILL NOT BE ALLOWED INTO YOUR LAB SECTION WITHOUT THE REQUIRED PRE-LAB. Page 1/5 Revision 3 OBJECTIVES Explore and understand microprocessor interrupts. In part A of this lab, you will use XMEGA external interrupt system. Learn how to utilize asynchronous serial communication.

More information

C0MP1921/2011/2091 SAMPLE Final Exam Data Structures and Algorithms/Data Organisation/Computing 2

C0MP1921/2011/2091 SAMPLE Final Exam Data Structures and Algorithms/Data Organisation/Computing 2 Family Name: Other Names: Signature: Student Number: This PAPER is NOT to be retained by the STUDENT The University Of New South Wales C0MP1921/2011/2091 SAMPLE Final Exam Data Structures and Algorithms/Data

More information

Tutorial 1 Microcomputer Fundamentals

Tutorial 1 Microcomputer Fundamentals Tutorial 1 Microcomputer Fundamentals Question 1 What do these acronyms mean? (a) CPU? (b) ROM? (c) EPROM? (d) RWM? (e) RAM? (f) I/O? What role does the CPU play in a computer system? Why is ROM an essential

More information

Lab Overview. Lab Details. ECEN 4613/5613 Embedded System Design Week #7 Fall 2006 Lab #3 10/08/2006

Lab Overview. Lab Details. ECEN 4613/5613 Embedded System Design Week #7 Fall 2006 Lab #3 10/08/2006 ECEN 4613/5613 Embedded System Design Week #7 Fall 2006 Lab #3 10/08/2006 Lab Overview In this lab assignment, you will do the following: Add SRAM and RS-232 communication to the hardware developed in

More information

Getting the O in I/O to work on a typical microcontroller

Getting the O in I/O to work on a typical microcontroller Getting the O in I/O to work on a typical microcontroller Ideas of how to send output signals to the radio controlled car. The theory behind the LED controller used in the Familiarization Lab Agenda Processors

More information

740: Computer Architecture, Fall 2013 Midterm I

740: Computer Architecture, Fall 2013 Midterm I Instructions: Full Name: Andrew ID (print clearly!): 740: Computer Architecture, Fall 2013 Midterm I October 23, 2013 Make sure that your exam has 17 pages and is not missing any sheets, then write your

More information

Slide Set 9. for ENCM 369 Winter 2018 Section 01. Steve Norman, PhD, PEng

Slide Set 9. for ENCM 369 Winter 2018 Section 01. Steve Norman, PhD, PEng Slide Set 9 for ENCM 369 Winter 2018 Section 01 Steve Norman, PhD, PEng Electrical & Computer Engineering Schulich School of Engineering University of Calgary March 2018 ENCM 369 Winter 2018 Section 01

More information

Embedded Systems and Software

Embedded Systems and Software Embedded Systems and Software Serial Communication Serial Communication, Slide 1 Lab 5 Administrative Students should start working on this LCD issues Caution on using Reset Line on AVR Project Posted

More information

Final Exam. Date: May 12, 2017

Final Exam. Date: May 12, 2017 Final Exam Date: May 12, 2017 UT EID: Printed Name: Last, First Your signature is your promise that you have not cheated and will not cheat on this exam, nor will you help others to cheat on this exam:

More information

MACHINE CONTROL INSTRUCTIONS: 1. EI

MACHINE CONTROL INSTRUCTIONS: 1. EI Lecture-33 MACHINE CONTROL INSTRUCTIONS: 1. EI (Enable interrupts): The interrupt system is disabled just after RESET operation. There is an internal INTE F/F (Interrupt enable flipflop) which is reset

More information

History and Basic Processor Architecture

History and Basic Processor Architecture History and Basic Processor Architecture History of Computers Module 1 Section 1 What Is a Computer? An electronic machine, operating under the control of instructions stored in its own memory, that can

More information

Microprocessor or Microcontroller Not just a case of you say tomarto and I say tomayto

Microprocessor or Microcontroller Not just a case of you say tomarto and I say tomayto Microprocessor or Microcontroller Not just a case of you say tomarto and I say tomayto Discussion of the capabilities of the Analog Devices ADSP-5333 Evaluation Board used in this course M. Smith, ECE

More information

16. Linked Structures and Miscellaneous

16. Linked Structures and Miscellaneous 16. Linked Structures and Miscellaneous The main purpose of this section is to look at the cool topic of linked data structures. This is where we use one object to point to the next object in a structure

More information

Wawrzynek & Weaver CS 61C. Sp 2018 Great Ideas in Computer Architecture MT 1. Print your name:,

Wawrzynek & Weaver CS 61C. Sp 2018 Great Ideas in Computer Architecture MT 1. Print your name:, Wawrzynek & Weaver CS 61C Sp 2018 Great Ideas in Computer Architecture MT 1 Print your name:, (last) (first) I am aware of the Berkeley Campus Code of Student Conduct and acknowledge that any academic

More information

Winter 2003 MID-SESSION TEST Monday, March 10 6:30 to 8:00pm

Winter 2003 MID-SESSION TEST Monday, March 10 6:30 to 8:00pm University of Calgary Department of Electrical and Computer Engineering ENCM 369: Computer Organization Instructors: Dr. S. A. Norman (L01) and Dr. S. Yanushkevich (L02) Winter 2003 MID-SESSION TEST Monday,

More information

EE475 Lab #3 Fall Memory Placement and Interrupts

EE475 Lab #3 Fall Memory Placement and Interrupts EE475 Lab #3 Fall 2005 Memory Placement and Interrupts In this lab you will investigate the way in which the CodeWarrior compiler and linker interact to place your compiled code and data in the memory

More information

ECE2049 Homework #2 The MSP430 Architecture & Basic Digital IO (DUE Friday 9/8/17 at 4 pm in class)

ECE2049 Homework #2 The MSP430 Architecture & Basic Digital IO (DUE Friday 9/8/17 at 4 pm in class) ECE2049 Homework #2 The MSP430 Architecture & Basic Digital IO (DUE Friday 9/8/17 at 4 pm in class) Your homework should be neat and professional looking. You will loose points if your HW is not properly

More information

Computer Architecture and Engineering CS152 Quiz #5 April 27th, 2016 Professor George Michelogiannakis Name: <ANSWER KEY>

Computer Architecture and Engineering CS152 Quiz #5 April 27th, 2016 Professor George Michelogiannakis Name: <ANSWER KEY> Computer Architecture and Engineering CS152 Quiz #5 April 27th, 2016 Professor George Michelogiannakis Name: This is a closed book, closed notes exam. 80 Minutes 19 pages Notes: Not all questions

More information

University of Florida EEL 4744 Spring 2014 Dr. Eric M. Schwartz Department of Electrical & Computer Engineering 1 April Apr-14 9:03 AM

University of Florida EEL 4744 Spring 2014 Dr. Eric M. Schwartz Department of Electrical & Computer Engineering 1 April Apr-14 9:03 AM Page 1/15 Exam 2 Instructions: Turn off cell phones beepers and other noise making devices. BEAT UCONN! Show all work on the front of the test papers. If you need more room make a clearly indicated note

More information

Mechatronics Laboratory Assignment 4 Parallel Communication Glue Logic, Hardware Interrupts, Analog to Digital Conversions, and Board Fab

Mechatronics Laboratory Assignment 4 Parallel Communication Glue Logic, Hardware Interrupts, Analog to Digital Conversions, and Board Fab Mechatronics Laboratory Assignment 4 Parallel Communication Glue Logic, Hardware Interrupts, Analog to Digital Conversions, and Board Fab Goals for this Lab Assignment: 1. Gain a better understanding of

More information

University of Toronto Mississauga. Flip to the back cover and write down your name and student number.

University of Toronto Mississauga. Flip to the back cover and write down your name and student number. University of Toronto Mississauga Midterm Test Course: CSC258H5 Winter 2016 Instructor: Larry Zhang Duration: 50 minutes Aids allowed: None Last Name: Given Name: Flip to the back cover and write down

More information

Major and Minor States

Major and Minor States Major and Minor States We now consider the micro operations and control signals associated with the execution of each instruction in the ISA. The execution of each instruction is divided into three phases.

More information

administrivia final hour exam next Wednesday covers assembly language like hw and worksheets

administrivia final hour exam next Wednesday covers assembly language like hw and worksheets administrivia final hour exam next Wednesday covers assembly language like hw and worksheets today last worksheet start looking at more details on hardware not covered on ANY exam probably won t finish

More information

If we can just send 1 signal correctly over the SPI MOSI line, then Lab 4 will work!!!

If we can just send 1 signal correctly over the SPI MOSI line, then Lab 4 will work!!! If we can just send 1 signal correctly over the SPI MOSI line, then Lab 4 will work!!! Design and implementation details on the way to a valid SPI-LCD interface driver Slides 3 to 13 are old versions of

More information

Laboratory 2: Programming Basics and Variables. Lecture notes: 1. A quick review of hello_comment.c 2. Some useful information

Laboratory 2: Programming Basics and Variables. Lecture notes: 1. A quick review of hello_comment.c 2. Some useful information Laboratory 2: Programming Basics and Variables Lecture notes: 1. A quick review of hello_comment.c 2. Some useful information 3. Comment: a. name your program with extension.c b. use o option to specify

More information

ENGR 3950U / CSCI 3020U (Operating Systems) Simulated UNIX File System Project Instructor: Dr. Kamran Sartipi

ENGR 3950U / CSCI 3020U (Operating Systems) Simulated UNIX File System Project Instructor: Dr. Kamran Sartipi ENGR 3950U / CSCI 3020U (Operating Systems) Simulated UNIX File System Project Instructor: Dr. Kamran Sartipi Your project is to implement a simple file system using C language. The final version of your

More information

Lecture-50 Intel 8255A: Programming and Operating Modes

Lecture-50 Intel 8255A: Programming and Operating Modes Lecture-50 Intel 8255A: Programming and Operating Modes Operation Description: There are three basic modes of operation that can be selected by the system software. Mode 0: Basic Input/output Mode 1: Strobes

More information

Familiarity with data types, data structures, as well as standard program design, development, and debugging techniques.

Familiarity with data types, data structures, as well as standard program design, development, and debugging techniques. EE 472 Lab 1 (Individual) Introduction to C and the Lab Environment University of Washington - Department of Electrical Engineering Introduction: This lab has two main purposes. The first is to introduce

More information

CSE351 Winter 2016, Final Examination March 16, 2016

CSE351 Winter 2016, Final Examination March 16, 2016 CSE351 Winter 2016, Final Examination March 16, 2016 Please do not turn the page until 2:30. Rules: The exam is closed-book, closed-note, etc. Please stop promptly at 4:20. There are 125 (not 100) points,

More information

The Purpose of Interrupt

The Purpose of Interrupt Interrupts 3 Introduction In this chapter, the coverage of basic I/O and programmable peripheral interfaces is expanded by examining a technique called interrupt-processed I/O. An interrupt is a hardware-initiated

More information

UNIVERSITY OF CONNECTICUT. ECE 3411 Microprocessor Application Lab: Fall Quiz IV

UNIVERSITY OF CONNECTICUT. ECE 3411 Microprocessor Application Lab: Fall Quiz IV Department of Electrical and Computing Engineering UNIVERSITY OF CONNECTICUT ECE 3411 Microprocessor Application Lab: Fall 2015 Quiz IV There is 1 questions in this quiz. There are 15 pages in this quiz

More information

Introduction to Lab. 3

Introduction to Lab. 3 Solving a Lab 1 Issue Introduction to Lab. 3 Also includes Solving a Lab. 1 issues Using the graphics LCD with your assignment 1 Rediscuss the Watchdog timer for Assignment 2 Many people have said My Enable

More information

real-time kernel documentation

real-time kernel documentation version 1.1 real-time kernel documentation Introduction This document explains the inner workings of the Helium real-time kernel. It is not meant to be a user s guide. Instead, this document explains overall

More information

2. (2 pts) If an external clock is used, which pin of the 8051 should it be connected to?

2. (2 pts) If an external clock is used, which pin of the 8051 should it be connected to? ECE3710 Exam 2. Name _ Spring 2013. 5 pages. 102 points, but scored out of 100. You may use any non-living resource to complete this exam. Any hint of cheating will result in a 0. Part 1 Short Answer 1.

More information

EXAM 1 SOLUTIONS. Midterm Exam. ECE 741 Advanced Computer Architecture, Spring Instructor: Onur Mutlu

EXAM 1 SOLUTIONS. Midterm Exam. ECE 741 Advanced Computer Architecture, Spring Instructor: Onur Mutlu Midterm Exam ECE 741 Advanced Computer Architecture, Spring 2009 Instructor: Onur Mutlu TAs: Michael Papamichael, Theodoros Strigkos, Evangelos Vlachos February 25, 2009 EXAM 1 SOLUTIONS Problem Points

More information

CS311 Lecture: The Architecture of a Simple Computer

CS311 Lecture: The Architecture of a Simple Computer CS311 Lecture: The Architecture of a Simple Computer Objectives: July 30, 2003 1. To introduce the MARIE architecture developed in Null ch. 4 2. To introduce writing programs in assembly language Materials:

More information

ENGR 2031 Digital Design Laboratory Lab 7 Background

ENGR 2031 Digital Design Laboratory Lab 7 Background ENGR 2031 Digital Design Laboratory Lab 7 Background What we will cover Overview of the Simple Computer (scomp) Architecture Register Flow Diagrams VHDL Implementation of scomp Lab 7 scomp Architecture

More information

Lab Overview. Lab Details. ECEN 4613/5613 Embedded System Design Week #7 Spring 2005 Lab #4 2/23/2005

Lab Overview. Lab Details. ECEN 4613/5613 Embedded System Design Week #7 Spring 2005 Lab #4 2/23/2005 ECEN 4613/5613 Embedded System Design Week #7 Spring 2005 Lab #4 2/23/2005 Lab Overview In this lab assignment, you will do the following: Add a serial EEPROM and an LCD to the hardware developed in Labs

More information

Student # (In case pages get detached) The Edward S. Rogers Sr. Department of Electrical and Computer Engineering

Student # (In case pages get detached) The Edward S. Rogers Sr. Department of Electrical and Computer Engineering ECE 243S - Computer Organization The Edward S. Rogers Sr. Department of Electrical and Computer Engineering Mid-term Examination, March 2005 Name Student # Please circle your lecture section for exam return

More information

UNIVERSITY OF CONNECTICUT. ECE 3411 Microprocessor Application Lab: Fall Quiz III

UNIVERSITY OF CONNECTICUT. ECE 3411 Microprocessor Application Lab: Fall Quiz III Department of Electrical and Computing Engineering UNIVERSITY OF CONNECTICUT ECE 3411 Microprocessor Application Lab: Fall 2015 Quiz III There are 5 questions in this quiz. There are 11 pages in this quiz

More information

INTRODUCTION OF MICROPROCESSOR& INTERFACING DEVICES Introduction to Microprocessor Evolutions of Microprocessor

INTRODUCTION OF MICROPROCESSOR& INTERFACING DEVICES Introduction to Microprocessor Evolutions of Microprocessor Course Title Course Code MICROPROCESSOR & ASSEMBLY LANGUAGE PROGRAMMING DEC415 Lecture : Practical: 2 Course Credit Tutorial : 0 Total : 5 Course Learning Outcomes At end of the course, students will be

More information

Computer Architecture and Engineering. CS152 Quiz #2. March 3rd, Professor Krste Asanovic. Name:

Computer Architecture and Engineering. CS152 Quiz #2. March 3rd, Professor Krste Asanovic. Name: Computer Architecture and Engineering CS152 Quiz #2 March 3rd, 2009 Professor Krste Asanovic Name: Notes: This is a closed book, closed notes exam. 80 Minutes 10 Pages Not all questions are of equal difficulty,

More information

Renesas 78K/78K0R/RL78 Family In-Circuit Emulation

Renesas 78K/78K0R/RL78 Family In-Circuit Emulation _ Technical Notes V9.12.225 Renesas 78K/78K0R/RL78 Family In-Circuit Emulation This document is intended to be used together with the CPU reference manual provided by the silicon vendor. This document

More information

By the end of Class. Outline. Homework 5. C8051F020 Block Diagram (pg 18) Pseudo-code for Lab 1-2 due as part of prelab

By the end of Class. Outline. Homework 5. C8051F020 Block Diagram (pg 18) Pseudo-code for Lab 1-2 due as part of prelab By the end of Class Pseudo-code for Lab 1-2 due as part of prelab Homework #5 on website due before next class Outline Introduce Lab 1-2 Counting Timers on C8051 Interrupts Laboratory Worksheet #05 Copy

More information

McGill University Department of Electrical and Computer Engineering. Course ECSE-322A -- Computer Engineering. MidTerm Test Version 1 Solutions

McGill University Department of Electrical and Computer Engineering. Course ECSE-322A -- Computer Engineering. MidTerm Test Version 1 Solutions Signature: I.D. Number: Printed Name: McGill University Department of Electrical and Computer Engineering Course ECSE-322A -- Computer Engineering PLEASE NOTE CAREFULLY: MidTerm Test Version 1 Solutions

More information

A3 Computer Architecture

A3 Computer Architecture A3 Computer Architecture Engineering Science 3rd year A3 Lectures Prof David Murray david.murray@eng.ox.ac.uk www.robots.ox.ac.uk/ dwm/courses/3co Michaelmas 2000 1 / 1 2: Introduction to the CPU 3A3 Michaelmas

More information

Getting the O in I/O to work on a typical microcontroller

Getting the O in I/O to work on a typical microcontroller Getting the O in I/O to work on a typical microcontroller Ideas of how to send output signals to the radio controlled car. The theory behind the LED controller used in the Familiarization Lab Agenda Processors

More information

Programming Assignment IV Due Thursday, November 18th, 2010 at 11:59 PM

Programming Assignment IV Due Thursday, November 18th, 2010 at 11:59 PM Programming Assignment IV Due Thursday, November 18th, 2010 at 11:59 PM 1 Introduction In this assignment, you will implement a code generator for Cool. When successfully completed, you will have a fully

More information

Process Context & Interrupts. New process can mess up information in old process. (i.e. what if they both use the same register?)

Process Context & Interrupts. New process can mess up information in old process. (i.e. what if they both use the same register?) 1 Process Context 1.1 What is context? A process is sometimes called a task, subroutine or program. Process context is all the information that the process needs to keep track of its state. Registers Temporary

More information

United States Naval Academy Electrical and Computer Engineering Department EC310-6 Week Midterm Spring 2015

United States Naval Academy Electrical and Computer Engineering Department EC310-6 Week Midterm Spring 2015 United States Naval Academy Electrical and Computer Engineering Department EC310-6 Week Midterm Spring 2015 1. Do a page check: you should have 8 pages including this cover sheet. 2. You have 50 minutes

More information

1 Digital tools. 1.1 Introduction

1 Digital tools. 1.1 Introduction 1 Digital tools 1.1 Introduction In the past few years, enormous advances have been made in the cost, power, and ease of use of microcomputers and associated analog and digital circuits. It is now possible,

More information

Getting Started with the HCS12 IDE

Getting Started with the HCS12 IDE Getting Started with the HCS12 IDE B. Ackland June 2015 This document provides basic instructions for installing and using the MiniIDE Integrated Development Environment and the Java based HCS12 simulator.

More information

Wawrzynek & Weaver CS 61C. Sp 2018 Great Ideas in Computer Architecture MT 1. Print your name:,

Wawrzynek & Weaver CS 61C. Sp 2018 Great Ideas in Computer Architecture MT 1. Print your name:, Wawrzynek & Weaver CS 61C Sp 2018 Great Ideas in Computer Architecture MT 1 Print your name:, (last) (first) I am aware of the Berkeley Campus Code of Student Conduct and acknowledge that any academic

More information

An Interrupt is either a Hardware generated CALL (externally derived from a hardware signal)

An Interrupt is either a Hardware generated CALL (externally derived from a hardware signal) An Interrupt is either a Hardware generated CALL (externally derived from a hardware signal) OR A Software-generated CALL (internally derived from the execution of an instruction or by some other internal

More information

4) In response to the the 8259A sets the highest priority ISR, bit and reset the corresponding IRR bit. The 8259A also places

4) In response to the the 8259A sets the highest priority ISR, bit and reset the corresponding IRR bit. The 8259A also places Lecture-52 Interrupt sequence: The powerful features of the 8259A in a system are its programmability and the interrupt routine address capability. It allows direct or indirect jumping to the specific

More information

Outline for Today. Lab Equipment & Procedures. Teaching Assistants. Announcements

Outline for Today. Lab Equipment & Procedures. Teaching Assistants. Announcements Announcements Homework #2 (due before class) submit file on LMS. Submit a soft copy using LMS, everybody individually. Log onto the course LMS site Online Assignments Homework 2 Upload your corrected HW2-vn.c

More information

EECS 373 Midterm Winter 2017

EECS 373 Midterm Winter 2017 EECS 373 Midterm Winter 2017 Name: unique name: Sign the following honor code pledge. I have neither given nor received aid on this exam nor observed anyone else doing so. Scores: Problem Points 1 /12

More information

Week 11 Programmable Interrupt Controller

Week 11 Programmable Interrupt Controller Week 11 Programmable Interrupt Controller 8259 Programmable Interrupt Controller The 8259 programmable interrupt controller (PIC) adds eight vectored priority encoded interrupts to the microprocessor.

More information

EC2304-MICROPROCESSOR AND MICROCONROLLERS 2 marks questions and answers UNIT-I

EC2304-MICROPROCESSOR AND MICROCONROLLERS 2 marks questions and answers UNIT-I EC2304-MICROPROCESSOR AND MICROCONROLLERS 2 marks questions and answers 1. Define microprocessors? UNIT-I A semiconductor device(integrated circuit) manufactured by using the LSI technique. It includes

More information