Explanation of PIC 16F84A processor data sheet Part 2: More on the PIC
|
|
- Magdalen Willis
- 5 years ago
- Views:
Transcription
1 Explanation of PIC 16F84A processor data sheet Part 2: More on the PIC This is the second of the three part overview of the PIC processor. We will first discuss the timer module and prescalar. We will also review the hexadecimal representation. Then we will cover memory and IO. Timer Module and Prescalar Many applications of the PIC require that the processor fulfill timing requirements. For example, in the Blinking LED 2 example, the program required a 1 second delay function. This function was implemented by having it call another function, which had a 1ms delay. The millisecond delay function was written so that it uses approximately 1000 clock cycles. The problem with this approach is that the programmer must carefully count the number of machine instructions. An alternative approach is to use a timer circuit which indicates how much time has elapsed. The PIC has such a circuit called TIMER0. It is an 8 bit timer/counter, and in many cases can be accessed like a variable. It can be configured so that it will increment every clock cycle. Next is a naive example implementation of using TIMER0. It is a delay function for a 100 us delay. It just checks when TIMER0 has reached the value 100. void delaynaive( ) // A delay of (approximately) 100 clock cycles { TIMER0 = 0; while (TIMER0 < 100); } This will not work because we have not configured TIMER0 before accessing it. We will discuss the configuration process a bit later but for now let us discuss how to make this delay longer. Note that TIMER0 is limited by its size, which is 8 bits. If we want a longer delay, we must use the prescalar. The prescaler slows TIMER0 down by reducing the clock signal rate to TIMER0. The options of rates are 1:2, 1:4, 1:8,..., or 1:256. Note that the step down values are all powers of two. The next delay function delaynaive2 has a delay of approximately 10,000 clock cycles. First, we configure the prescalar to 1:256. Thus, the timer will increment every 256 clock cycles. The function will terminate when TIMER0 = 40, i.e., after 40 x 256 = 10,240 clock cycles. Thus, delaynaive2 has a delay of approximately 10,000 clock cycles. void delaynaive2( ) // A delay of (approximately) clock cycles { TIMER0 = 0; // Configuring the step down rate of the TIMER0 to 1:256. // Now we set the OPTION_REG so that TOCS, TOSE, PSA, and PS2-PS1 are 0. OPTION_REG = 0b ; while (TIMER0 < 40); } 1
2 The line OPTION_REG = 0b is the configuration of TIMER0. (Section 5 of the PIC processor datasheet describes the TIMER0 module and how to configure it.) The module has two modes: Timer or Counter Mode. We want Timer Mode which uses the PIC s own clock signal for synchronization. (Counter Mode uses an external clock signal.) The TIMER0 module is configured by setting the bits of the 8 bit register OPTION_REG, which is shown in Figure 1. The register has bits TOCS (bit 5): TOCS determines if TIMER0 is in Timer or Counter Mode, where TOCS = 0 means Timer Mode. PSA (bit 3): The prescalar can be assigned to TIMER0 or the watch dog timer. Clearing PSA to 0 will assign the prescalar to TIMER0. PSA = 1 assigns TIMER0 to the watch dog timer. We want PSA = 0 for our delay function. PS2 PS0 (bits 2 0): Determines the step down rate of the prescalar. PS2 PS0 = 111 means 1:256, while PS2 PS0 = 000 means 1:2. Figure 1. Table 5 1 from the data sheet for the PIC. The other bits of OPTION_REG are irrelevant for our purposes. (For example, TOSE (bit 4) is used when TIMER0 is in Counter Mode, but we use Timer Mode.) Whenever TIMER0 is written to by a machine instruction (e.g., CLRF) then the prescalar is cleared to 000. This is why we set OPTION_REG after clearing TIMER0. The function delaynaive2 may not work. The OPTION_REG = 0b will set the prescalar by having PS2 PS0 to 111, and it sets the bits TOCS and PSA to 0. But it also clears bits 7 and 6 of OPTION_REG. The next implementation will set bits 0 5 of OPTION_REG without changing bits 7 and 6. void delaynaive3( ) // A delay of (approximately) clock cycles { unsigned n; TIMER0 = 0; // Initialize TIMER0. This clears the prescalar. // Now we set the OPTION_REG so that TOCS, TOSE, and PSA are 0, and set // the prescalar to 256:1. The prefix 0b means the number is binary n = OPTION_REG & 0b ; // Clear TOCS, TOSE, and PSA n = n 0b ; // Set prescalar to 256:1 OPTION_REG = n; while (TIMER0 < 40); } 2
3 The operation n = OPTION_REG & 0b is a bit wise AND operation with the bit string , which is the mask. The mask will clear bits 3, 4, and 5 to 0. These are the TOCS, TOSE, and PSA bits. The next line n = n 0b is a bit wise ORing the variable n with the bit string , which is another mask. This sets bits 2 0 to the value 111, which in turn will set the prescaler to 256:1. Then the instruction OPTION_REG = n properly sets OPTION_REG. Figure 2 shows the schematic diagram of the TIMER0 module and prescalar. CLOCKOUT is the internal clock of the PIC. Notice how it is routed through two multiplexers, then the prescalar (which is an 8 bit counter), and the prescalar s output is then routed to the TIMER0 register. Note that the 8:1 multiplexer selects a bit out of the prescalar s output. Also notice how the PSA and TOCS bits are used to route the signals through the 2:1 multiplexers, and the PS2 PS0 bits are used to control the 8:1 multiplexer. Figure 2. TIMER0 and prescaler circuitry. This comes from Figure 5 2 of the datasheet of the PIC. Timer Module and Prescalar Next we will go over memory in the PIC architecture. Figure 3 has a block diagram of the PIC. The Program Memory in the upper left corner is flash technology which can store 1024 instruction words. Recall that C language will compile to a longer machine program. So the PIC may be limited to just a couple hundred C instruction lines. 3
4 Attached to the Program Memory is the Instruction Register. This has the current instruction that is being executed. Program Counter, which is a counter circuit that points to the next instruction to be executed. In the middle of the figure is the Arithmetic Logic Unit (ALU). The ALU is the calculator for the CPU. It does much of the arithmetic and the bit wise logic operations such as AND and OR. Notice that the output of the ALU is a register W. This register can be accessed by certain machine instructions. The lower right in Figure 3 has the TIMER0 and IO ports. The upper middle of the block diagram has the RAM memory. Figure 4 shows the register map of the PIC. These registers include TIMER0, PORTA, TRISA, and OPTION_REG. It also includes general purpose registers. These general purpose registers are stored in RAM. Note that the registers have numbers assigned to them for identification. For example, register TIMER0 has the number 01h. These numbers are called register numbers, addresses, or indices. The suffix h indicates that the number is in hexadecimal representation, which is discussed below. In decimal representation, 01h is plain old 1. Hexadecimal Number Representation Hexadecimal representation is similar to binary or decimal representation, so let us discuss these first. Decimal representation of a value is a string of digits. For example, 423 is a three digit representation of the value four hundred twenty three. The base of decimal representation is the value 10. The representation 423 is a representation the formula Notice that the digits are coefficients of powers of 10, which is the base. Each digit is a value ranging from 0 to 9 (10 possible values). Binary is similar except that the base is 2. The digits are called binary digits or bits. Each digit is a value ranging from 0 to 1 (2 possible values), and are coefficients of powers of 2, which is the base. Hexadecimal is another representation where the base is 16. Each digit is a value ranging from 0 to 15 (16 possible values). These digits are represented by the symbols: 0, 1, 2,... 9, A, B,..., F. Here, A represents the value 10, F represents the value 15, etc. Thus, the address 0Bh is hexadecimal for the value 11, and 82h is hexadecimal for the 1 0 value = 130. Hexadecimal is used because it is a convenient way to represent binary numbers. To convert a binary number to hexadecimal, you must break up the bit string into chunks of 4 bits starting from the right. For example, the binary number is broken up into Each chunk of 4 bits can be converted into a hexadecimal digit: 1001(=9) 0011(=3) 1100(=C) 1101(=D). The hexadecimal representation is 93CDh. This is much shorter and easier to recognize than the original bit string. To convert a hexadecimal number to binary, just convert each hexadecimal digit to its equivalent 4 bit binary representation. For the PIC, hexadecimal numbers are denoted by the suffix h. However, there are other ways to indicate hexadecimal. For example, the prefix 0x indicates hexadecimal, which we will use in lectures and homework. 4
5 Figure 3. Block diagram of the PIC. This is from Figure 1 1 in the datasheet for the PIC. 5
6 Figure 4. Register map. This is from Figure 2 2 of the data sheets. 6
7 Instruction Processing Cycle Like all computers, the PIC follows an instruction processing cycle, sometimes known as the Von Neumann processing cycle (named after a famous mathematician and computer scientist John Von Neumann). This cycle is basically what computers do continually. Figure 5 shows this cycle. It is a loop of: 1. Fetch instruction (from program memory). 2. Decode instruction (so that the CPU understands the instruction and what s to be done). 3. Execute instruction. Figure 6 has the portion of the block diagram of the PIC that is involved with fetch, decode, and execute instruction. To fetch the instruction, the CPU will use the Program Counter, which points to the next instruction to execute. This instruction is stored in Instruction Register. The output of the Instruction Register is connected to the circuitry called Instruction Decode and Control. This circuitry will first decode the instruction so that the CPU understands what the instruction is. Then given what the instruction is, the CPU will send control signals to the datapath of the computer to execute the instruction (note that the control lines are not shown, probably because it would make the diagram very messy to look at). Instruction Fetch Instruction Decode Instruction Execute Figure 5. Instruction Processing Cycle Figure 6. Portion of the PIC that has instruction fetch and decode. 7
Explanation of PIC 16F84A processor data sheet Part 1: overview of the basics
Explanation of PIC 16F84A processor data sheet Part 1: overview of the basics This report is the first of a three part series that discusses the features of the PIC 16F94A processor. The reports will refer
More information1 Introduction to Computers and Computer Terminology Programs Memory Processor Data Sheet Example Application...
Overview of the PIC 16F648A Processor: Part 1 EE 361L Lab 2.1 Last update: August 19, 2011 Abstract: This report is the first of a three part series that discusses the features of the PIC 16F684A processor,
More information1 Introduction to Computers and Computer Terminology Programs Memory Processor Data Sheet... 4
Overview of the PIC 16F648A Processor: Part 1 EE 361L Lab 2.1 Last update: August 1, 2016 Abstract: This report is the first of a three part series that discusses the features of the PIC 16F648A processor,
More informationCENG-336 Introduction to Embedded Systems Development. Timers
CENG-336 Introduction to Embedded Systems Development Timers Definitions A counter counts (possibly asynchronous) input pulses from an external signal A timer counts pulses of a fixed, known frequency
More informationwhich means that writing to a port implies that the port pins are first read, then this value is modified and then written to the port data latch.
Introduction to microprocessors Feisal Mohammed 3rd January 2001 Additional features 1 Input/Output Ports One of the features that differentiates a microcontroller from a microprocessor is the presence
More informationChapter 1 Microprocessor architecture ECE 3120 Dr. Mohamed Mahmoud http://iweb.tntech.edu/mmahmoud/ mmahmoud@tntech.edu Outline 1.1 Computer hardware organization 1.1.1 Number System 1.1.2 Computer hardware
More informationDec Hex Bin ORG ; ZERO. Introduction To Computing
Dec Hex Bin 0 0 00000000 ORG ; ZERO Introduction To Computing OBJECTIVES this chapter enables the student to: Convert any number from base 2, base 10, or base 16 to any of the other two bases. Add and
More informationComputer Organization and Levels of Abstraction
Computer Organization and Levels of Abstraction Announcements Today: PS 7 Lab 8: Sound Lab tonight bring machines and headphones! PA 7 Tomorrow: Lab 9 Friday: PS8 Today (Short) Floating point review Boolean
More informationIntroduction to Microcontrollers
Introduction to Microcontrollers Embedded Controller Simply an embedded controller is a controller that is embedded in a greater system. One can define an embedded controller as a controller (or computer)
More informationThe CPU and Memory. How does a computer work? How does a computer interact with data? How are instructions performed? Recall schematic diagram:
The CPU and Memory How does a computer work? How does a computer interact with data? How are instructions performed? Recall schematic diagram: 1 Registers A register is a permanent storage location within
More informationInformation Science 1
Information Science 1 -Basic Concepts of Computers: Opera4on, Architecture, Memory- Week 02 College of Information Science and Engineering Ritsumeikan University Today s lecture outline l Recall the previous
More informationCS 265. Computer Architecture. Wei Lu, Ph.D., P.Eng.
CS 265 Computer Architecture Wei Lu, Ph.D., P.Eng. Part 3: von Neumann Architecture von Neumann Architecture Our goal: understand the basics of von Neumann architecture, including memory, control unit
More informationChapter 1. Microprocessor architecture ECE Dr. Mohamed Mahmoud.
Chapter 1 Microprocessor architecture ECE 3130 Dr. Mohamed Mahmoud The slides are copyright protected. It is not permissible to use them without a permission from Dr Mahmoud http://www.cae.tntech.edu/~mmahmoud/
More informationCOMPUTER SYSTEM. COMPUTER SYSTEM IB DP Computer science Standard Level ICS3U. COMPUTER SYSTEM IB DP Computer science Standard Level ICS3U
C A N A D I A N I N T E R N A T I O N A L S C H O O L O F H O N G K O N G 5.1 Introduction 5.2 Components of a Computer System Algorithm The Von Neumann architecture is based on the following three characteristics:
More informationComputer Hardware Requirements for ERTSs: Microprocessors & Microcontrollers
Lecture (4) Computer Hardware Requirements for ERTSs: Microprocessors & Microcontrollers Prof. Kasim M. Al-Aubidy Philadelphia University-Jordan DERTS-MSc, 2015 Prof. Kasim Al-Aubidy 1 Lecture Outline:
More informationAS/A Level Computing Syllabus 2011
AS/A Level Computing Syllabus 2011 Section 3 - System Software Mechanisms - - Machine Architecture - - Database Theory - - Programming Paradigms - Chapter 3.3 Computer Architectures & Fetch-Execute Cycle
More informationvon Neumann Architecture Basic Computer System Early Computers Microprocessor Reading Assignment An Introduction to Computer Architecture
Reading Assignment EEL 4744C: Microprocessor Applications Lecture 1 Part 1 An Introduction to Computer Architecture Microcontrollers and Microcomputers: Chapter 1, Appendix A, Chapter 2 Software and Hardware
More informationBasic Computer System. von Neumann Architecture. Reading Assignment. An Introduction to Computer Architecture. EEL 4744C: Microprocessor Applications
Reading Assignment EEL 4744C: Microprocessor Applications Lecture 1 Part 1 An Introduction to Computer Architecture Microcontrollers and Microcomputers: Chapter 1, Appendix A, Chapter 2 Software and Hardware
More informationCSC 101: Lab Manual#9 Machine Language and the CPU (largely based on the work of Prof. William Turkett) Lab due date: 5:00pm, day after lab session
CSC 101: Lab Manual#9 Machine Language and the CPU (largely based on the work of Prof. William Turkett) Lab due date: 5:00pm, day after lab session Purpose: The purpose of this lab is to gain additional
More informationToday s lecture is all about the System Unit, the Motherboard, and the Central Processing Unit, Oh My!
Today s lecture is all about the System Unit, the Motherboard, and the Central Processing Unit, Oh My! Or what s happening inside the computer? Digital Data Representation Computers may seem smart, but
More informationLesson 14. Title of the Experiment: Introduction to Microcontroller (Activity number of the GCE Advanced Level practical Guide 27)
Lesson 14 Title of the Experiment: Introduction to Microcontroller (Activity number of the GCE Advanced Level practical Guide 27) Name and affiliation of the author: N W K Jayatissa Department of Physics,
More informationComputer Organization and Levels of Abstraction
Computer Organization and Levels of Abstraction Announcements PS8 Due today PS9 Due July 22 Sound Lab tonight bring machines and headphones! Binary Search Today Review of binary floating point notation
More informationUniversity of Jordan Faculty of Engineering and Technology Department of Computer Engineering Embedded Systems Laboratory
University of Jordan Faculty of Engineering and Technology Department of Computer Engineering Embedded Systems Laboratory 0907334 6 Experiment 6:Timers Objectives To become familiar with hardware timing
More informationThe Stored Program Computer
The Stored Program Computer 1 1945: John von Neumann Wrote a report on the stored program concept, known as the First Draft of a Report on EDVAC also Alan Turing Konrad Zuse Eckert & Mauchly The basic
More informationLecture Objectives. Introduction to Computing Chapter 0. Topics. Numbering Systems 04/09/2017
Lecture Objectives Introduction to Computing Chapter The AVR microcontroller and embedded systems using assembly and c Students should be able to: Convert between base and. Explain the difference between
More informationCMSC 313 COMPUTER ORGANIZATION & ASSEMBLY LANGUAGE PROGRAMMING LECTURE 01, SPRING 2013
CMSC 313 COMPUTER ORGANIZATION & ASSEMBLY LANGUAGE PROGRAMMING LECTURE 01, SPRING 2013 TOPICS TODAY Course overview Levels of machines Machine models: von Neumann & System Bus Fetch-Execute Cycle Base
More informationMICROCONTROLLERS 8051
MICROCONTROLLERS 8051 PART A Unit 1: Microprocessor and Microcontroller. Introduction, Microprocessor and Microcontrollers, A Microcontroller survey. RISC & CISC CPU Architectures, Harvard & Von Neumann
More informationInformation Science 1
Information Science 1 - Representa*on of Data in Memory- Week 03 College of Information Science and Engineering Ritsumeikan University Topics covered l Basic terms and concepts of The Structure of a Computer
More informationCS101 Lecture 25: The Machinery of Computation: Computer Architecture. John Magee 29 July 2013 Some material copyright Jones and Bartlett
CS101 Lecture 25: The Machinery of Computation: Computer Architecture John Magee 29 July 2013 Some material copyright Jones and Bartlett 1 Overview/Questions What did we do last time? Can we relate this
More informationCOSC 122 Computer Fluency. Computer Organization. Dr. Ramon Lawrence University of British Columbia Okanagan
COSC 122 Computer Fluency Computer Organization Dr. Ramon Lawrence University of British Columbia Okanagan ramon.lawrence@ubc.ca Key Points 1) The standard computer (von Neumann) architecture consists
More informationKnowledge Organiser. Computing. Year 10 Term 1 Hardware
Organiser Computing Year 10 Term 1 Hardware Enquiry Question How does a computer do everything it does? Big questions that will help you answer this enquiry question: 1. What is the purpose of the CPU?
More informationChapter 4. The Processor
Chapter 4 The Processor Introduction CPU performance factors Instruction count Determined by ISA and compiler CPI and Cycle time Determined by CPU hardware We will examine two MIPS implementations A simplified
More informationHow does the CPU execute programs? Nils Jansen December 5, 2017 (Based on slides by Jeroen Keiren and Niek Janssen)
How does the CPU execute programs? Nils Jansen December 5, 2017 (Based on slides by Jeroen Keiren and Niek Janssen) Overview 2 Overview So far Circuits Memory ALU 2 Overview So far Circuits Memory ALU
More informationSystems Architecture
Systems Architecture Lecture 15: A Simple Implementation of MIPS Jeremy R. Johnson Anatole D. Ruslanov William M. Mongan Some or all figures from Computer Organization and Design: The Hardware/Software
More informationCC411: Introduction To Microprocessors
CC411: Introduction To Microprocessors OBJECTIVES this chapter enables the student to: Use number { base 2, base 10, or base 16 }. Add and subtract binary/hex numbers. Represent any binary number in 2
More informationUNIT V MICRO CONTROLLER PROGRAMMING & APPLICATIONS TWO MARKS. 3.Give any two differences between microprocessor and micro controller.
UNIT V -8051 MICRO CONTROLLER PROGRAMMING & APPLICATIONS TWO MARKS 1. What is micro controller? Micro controller is a microprocessor with limited number of RAM, ROM, I/O ports and timer on a single chip
More informationChapter 2: Data Manipulation
Chapter 2 Data Manipulation Computer Science An Overview Tenth Edition by J. Glenn Brookshear Presentation files modified by Farn Wang Chapter 2 Data Manipulation 2.1 Computer Architecture 2.2 Machine
More informationCOMPUTER ORGANIZATION AND DESIGN. 5 th Edition. The Hardware/Software Interface. Chapter 4. The Processor
COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface 5 th Edition Chapter 4 The Processor Introduction CPU performance factors Instruction count Determined by ISA and compiler CPI and Cycle
More informationProblem Set 1 Solutions
CSE 260 Digital Computers: Organization and Logical Design Jon Turner Problem Set 1 Solutions 1. Give a brief definition of each of the following parts of a computer system: CPU, main memory, floating
More informationLaboratory: Introduction to Mechatronics. Instructor TA: Edgar Martinez Soberanes Lab 2. PIC and Programming
Laboratory: Introduction to Mechatronics Instructor TA: Edgar Martinez Soberanes (eem370@mail.usask.ca) 2015-01-12 Lab 2. PIC and Programming Lab Sessions Lab 1. Introduction Read manual and become familiar
More informationChapter 4. Instruction Execution. Introduction. CPU Overview. Multiplexers. Chapter 4 The Processor 1. The Processor.
COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface 5 th Edition COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface 5 th Edition Chapter 4 The Processor The Processor - Introduction
More informationCOMPUTER ORGANIZATION AND DESIGN. 5 th Edition. The Hardware/Software Interface. Chapter 4. The Processor
COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface 5 th Edition Chapter 4 The Processor COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface 5 th Edition The Processor - Introduction
More informationCPU ARCHITECTURE. QUESTION 1 Explain how the width of the data bus and system clock speed affect the performance of a computer system.
CPU ARCHITECTURE QUESTION 1 Explain how the width of the data bus and system clock speed affect the performance of a computer system. ANSWER 1 Data Bus Width the width of the data bus determines the number
More informationLet s put together a Manual Processor
Lecture 14 Let s put together a Manual Processor Hardware Lecture 14 Slide 1 The processor Inside every computer there is at least one processor which can take an instruction, some operands and produce
More informationArchitecture of 8085 microprocessor
Architecture of 8085 microprocessor 8085 consists of various units and each unit performs its own functions. The various units of a microprocessor are listed below Accumulator Arithmetic and logic Unit
More informationChapter 4. The Processor
Chapter 4 The Processor Introduction CPU performance factors Instruction count Determined by ISA and compiler CPI and Cycle time Determined by CPU hardware 4.1 Introduction We will examine two MIPS implementations
More informationME 515 Mechatronics. A microprocessor
ME 515 Mechatronics Microcontroller Based Control of Mechanical Systems Asanga Ratnaweera Department of Faculty of Engineering University of Peradeniya Tel: 081239 (3627) Email: asangar@pdn.ac.lk A microprocessor
More informationFig 1. Block diagram of a microcomputer
Computer: A computer is a multipurpose programmable machine that reads binary instructions from its memory, accepts binary data as input,processes the data according to those instructions and provides
More informationChapter 1 : Introduction
Chapter 1 Introduction 1.1 Introduction A Microprocessor is a multipurpose programmable, clock driven, register based electronic device that reads binary instructions from a storage device called memory,
More informationVon Neumann Architecture
Von Neumann Architecture Assist lecturer Donya A. Khalid Lecture 2 2/29/27 Computer Organization Introduction In 945, just after the World War, Jon Von Neumann proposed to build a more flexible computer.
More informationECE2049 E17 Lecture 4 MSP430 Architecture & Intro to Digital I/O
ECE2049-E17 Lecture 4 1 ECE2049 E17 Lecture 4 MSP430 Architecture & Intro to Digital I/O Administrivia Homework 1: Due today by 7pm o Either place in box in ECE office or give to me o Office hours tonight!
More informationComputer Architecture (part 2)
Computer Architecture (part 2) Topics: Machine Organization Machine Cycle Program Execution Machine Language Types of Memory & Access 2 Chapter 5 The Von Neumann Architecture 1 Arithmetic Logic Unit (ALU)
More informationComputer Architecture and Organization (CS-507)
Computer Architecture and Organization (CS-507) Muhammad Zeeshan Haider Ali Lecturer ISP. Multan ali.zeeshan04@gmail.com https://zeeshanaliatisp.wordpress.com/ Lecture 4 Basic Computer Function, Instruction
More informationComputer Architecture
Computer Architecture Topics: Machine Organization Machine Cycle Program Execution Machine Language Types of Memory & Access Von Neumann Design 1) Two key ideas 1) The stored program concept 1) instructions
More informationME 475 Lab2 Introduction of PIC and Programming. Instructor: Zhen Wang
ME 475 Lab2 Introduction of PIC and Programming Instructor: Zhen Wang 2013.1.25 Outline Lecture Introduction of PIC microcontroller Programming cycle Read CH5 Programming guidelines Read CH6 Sample program
More informationChapter 4. The Processor. Instruction count Determined by ISA and compiler. We will examine two MIPS implementations
Chapter 4 The Processor Part I Introduction CPU performance factors Instruction count Determined by ISA and compiler CPI and Cycle time Determined by CPU hardware We will examine two MIPS implementations
More informationSoftware and Hardware
Software and Hardware Numbers At the most fundamental level, a computer manipulates electricity according to specific rules To make those rules produce something useful, we need to associate the electrical
More informationCOMPUTER STRUCTURE AND ORGANIZATION
COMPUTER STRUCTURE AND ORGANIZATION Course titular: DUMITRAŞCU Eugen Chapter 4 COMPUTER ORGANIZATION FUNDAMENTAL CONCEPTS CONTENT The scheme of 5 units von Neumann principles Functioning of a von Neumann
More informationFinite State Machines (FSMs) and RAMs and CPUs. COS 116, Spring 2011 Sanjeev Arora
Finite State Machines (FSMs) and RAMs and CPUs COS 116, Spring 2011 Sanjeev Arora Recap Combinational logic circuits: no cycles, hence no memory Sequential circuits: cycles allowed; can have memory as
More informationQuestion 1: What criteria define Von Neumann architecture? Identify clearly and coherently. Solution
This webpage has designed and created to represent the solutions of course assignment-2 of ITEC 1000: Introduction to Information Technologies. Little Man Computer model is originally developed by Dr.
More informationTHE MICROPROCESSOR Von Neumann s Architecture Model
THE ICROPROCESSOR Von Neumann s Architecture odel Input/Output unit Provides instructions and data emory unit Stores both instructions and data Arithmetic and logic unit Processes everything Control unit
More informationTo design a 4-bit ALU To experimentally check the operation of the ALU
1 Experiment # 11 Design and Implementation of a 4 - bit ALU Objectives: The objectives of this lab are: To design a 4-bit ALU To experimentally check the operation of the ALU Overview An Arithmetic Logic
More informationMemory General R0 Registers R1 R2. Input Register 1. Input Register 2. Program Counter. Instruction Register
CPU Organisation Central Processing Unit (CPU) Memory General R0 Registers R1 R2 ALU R3 Output Register Input Register 1 Input Register 2 Internal Bus Address Bus Data Bus Addr. $ 000 001 002 Program Counter
More informationChapter 3 - Top Level View of Computer Function
Chapter 3 - Top Level View of Computer Function Luis Tarrataca luis.tarrataca@gmail.com CEFET-RJ L. Tarrataca Chapter 3 - Top Level View 1 / 127 Table of Contents I 1 Introduction 2 Computer Components
More informationLearning Objectives:
Topic 5.2.1 PIC microcontrollers Learning Objectives: At the end of this topic you will be able to; Recall the architecture of a PIC microcontroller, consisting of CPU, clock, data memory, program memory
More informationEmbedded Systems. PIC16F84A Internal Architecture. Eng. Anis Nazer First Semester
Embedded Systems PIC16F84A Internal Architecture Eng. Anis Nazer First Semester 2017-2018 Review Computer system basic components? CPU? Memory? I/O? buses? Instruction? Program? Instruction set? CISC,
More informationFACTFILE: GCE DIGITAL TECHNOLOGY
FACTFILE: GCE DIGITAL TECHNOLOGY AS2: FUNDAMENTALS OF DIGITAL TECHNOLOGY Hardware and Software Architecture 1 Learning Outcomes Students should be able to: describe the internal components of a computer
More informationChapter 6 (Lect 3) Counters Continued. Unused States Ring counter. Implementing with Registers Implementing with Counter and Decoder
Chapter 6 (Lect 3) Counters Continued Unused States Ring counter Implementing with Registers Implementing with Counter and Decoder Sequential Logic and Unused States Not all states need to be used Can
More informationCS1004: Intro to CS in Java, Spring 2005
CS1004: Intro to CS in Java, Spring 2005 Lecture #10: Computer architecture Janak J Parekh janak@cs.columbia.edu HW#2 due Tuesday Administrivia Mass Storage RAM is volatile Not useful for permanent storage,
More informationCHAPTER 1 - World of microcontrollers
CHAPTER 1 - World of microcontrollers One Time Programmable ROM (OTP ROM) One time programmable ROM enables you to download a program into it, but, as its name states, one time only. If an error is detected
More informationMicrocomputer Architecture and Programming
IUST-EE (Chapter 1) Microcomputer Architecture and Programming 1 Outline Basic Blocks of Microcomputer Typical Microcomputer Architecture The Single-Chip Microprocessor Microprocessor vs. Microcontroller
More informationWelcome to Computer Organization and Design Logic
Welcome to Computer Organization and Design Logic CS 64: Computer Organization and Design Logic Lecture #1 Fall 2018 Ziad Matni, Ph.D. Dept. of Computer Science, UCSB A Word About Registration for CS64
More informationUNIT - V MEMORY P.VIDYA SAGAR ( ASSOCIATE PROFESSOR) Department of Electronics and Communication Engineering, VBIT
UNIT - V MEMORY P.VIDYA SAGAR ( ASSOCIATE PROFESSOR) contents Memory: Introduction, Random-Access memory, Memory decoding, ROM, Programmable Logic Array, Programmable Array Logic, Sequential programmable
More informationOutline. elements and behavior executing programs. developing programs use as a calculator converting strings to numbers
Outline 1 The von Neumann Machine elements and behavior executing programs 2 Python Programming developing programs use as a calculator converting strings to numbers 3 Summary + Assignments MCS 260 Lecture
More informationMicroProcessor. MicroProcessor. MicroProcessor. MicroProcessor
1 2 A microprocessor is a single, very-large-scale-integration (VLSI) chip that contains many digital circuits that perform arithmetic, logic, communication, and control functions. When a microprocessor
More information1. Internal Architecture of 8085 Microprocessor
1. Internal Architecture of 8085 Microprocessor Control Unit Generates signals within up to carry out the instruction, which has been decoded. In reality causes certain connections between blocks of the
More informationLAB WORK 2. 1) Debugger-Select Tool-MPLAB SIM View-Program Memory Trace the program by F7 button. Lab Work
LAB WORK 1 We are studying with PIC16F84A Microcontroller. We are responsible for writing assembly codes for the microcontroller. For the code, we are using MPLAB IDE software. After opening the software,
More informationMicrocontrollers. Microcontroller
Microcontrollers Microcontroller A microprocessor on a single integrated circuit intended to operate as an embedded system. As well as a CPU, a microcontroller typically includes small amounts of RAM and
More informationPIC 16F84A programming (II)
Lecture (05) PIC 16F84A programming (II) Dr. Ahmed M. ElShafee ١ Introduction to 16F84 ٣ PIC16F84 belongs to a class of 8-bit microcontrollers of RISC architecture. Program memory (FLASH) EEPROM RAM PORTA
More informationPart A Questions 1. What is an ISP? ISP stands for Instruction Set Processor. This unit is simply called as processor which executes machine instruction and coordinates the activities of other units..
More informationThe von Neumann Architecture. IT 3123 Hardware and Software Concepts. The Instruction Cycle. Registers. LMC Executes a Store.
IT 3123 Hardware and Software Concepts February 11 and Memory II Copyright 2005 by Bob Brown The von Neumann Architecture 00 01 02 03 PC IR Control Unit Command Memory ALU 96 97 98 99 Notice: This session
More informationIB Computer Science Topic.2-
Topic.2- Computer Organization Designed by: Allan Lawson Sources: Online Materials, thanks for all Topic 2.1.1 Computer Architecture Outline the architecture of a central processing unit (CPU) and the
More informationLecture1: introduction. Outline: History overview Central processing unite Register set Special purpose address registers Datapath Control unit
Lecture1: introduction Outline: History overview Central processing unite Register set Special purpose address registers Datapath Control unit 1 1. History overview Computer systems have conventionally
More informationELCT708 MicroLab Session #1 Introduction to Embedded Systems and Microcontrollers. Eng. Salma Hesham
ELCT708 MicroLab Session #1 Introduction to Embedded Systems and Microcontrollers What is common between these systems? What is common between these systems? Each consists of an internal smart computer
More informationCSC 220: Computer Organization Unit 12 CPU programming
College of Computer and Information Sciences Department of Computer Science CSC 220: Computer Organization Unit 12 CPU programming 1 Instruction set architectures Last time we built a simple, but complete,
More informationA Review of Chapter 5 and. CSc 2010 Spring 2012 Instructor: Qian Hu
A Review of Chapter 5 and Chapter 6 Chapter 5 Computer Systems Organization Von Neumann Architecture 4 Components Memory Input/output ALU Control Unit Two major features Stored program concept Sequential
More informationIntermediate Programming & Design (C++) Notation
Notation Byte = 8 bits (a sequence of 0 s and 1 s) To indicate larger amounts of storage, some prefixes taken from the metric system are used One kilobyte (KB) = 2 10 bytes = 1024 bytes 10 3 bytes One
More informationThe Processor: Datapath and Control. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University
The Processor: Datapath and Control Jin-Soo Kim (jinsookim@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu Introduction CPU performance factors Instruction count Determined
More informationChapter. Computer Architecture
Chapter 4 Computer Architecture Figure 4.1 Input device Central processing unit Main memory Output device Bus Data flow Control Figure 4.2 Central processing unit () Status bits ( ) Accumulator ( ) Index
More informationWelcome to Computer Organization and Design Logic CS 64: Computer Organization and Design Logic Lecture #1 Winter 2018
Welcome to Computer Organization and Design Logic CS 64: Computer Organization and Design Logic Lecture #1 Winter 2018 Ziad Matni Dept. of Computer Science, UCSB A Word About Registration for CS64 FOR
More informationComputer Architecture 2/26/01 Lecture #
Computer Architecture 2/26/01 Lecture #9 16.070 On a previous lecture, we discussed the software development process and in particular, the development of a software architecture Recall the output of the
More informationIntroduction to MiniSim A Simple von Neumann Machine
Math 121: Introduction to Computing Handout #19 Introduction to MiniSim A Simple von Neumann Machine Programming languages like C, C++, Java, or even Karel are called high-level languages because they
More informationChapter 4. The Processor Designing the datapath
Chapter 4 The Processor Designing the datapath Introduction CPU performance determined by Instruction Count Clock Cycles per Instruction (CPI) and Cycle time Determined by Instruction Set Architecure (ISA)
More informationArab Open University. Computer Organization and Architecture - T103
Arab Open University Computer Organization and Architecture - T103 Reference Book: Linda Null, Julia Lobur, The essentials of Computer Organization and Architecture, Jones & Bartlett, Third Edition, 2012.
More informationControl Unit: The control unit provides the necessary timing and control Microprocessor resembles a CPU exactly.
Unit I 8085 and 8086 PROCESSOR Introduction to microprocessor A microprocessor is a clock-driven semiconductor device consisting of electronic logic circuits manufactured by using either a large-scale
More informationComputers in Engineering COMP 208. Computer Structure. Computer Architecture. Computer Structure Michael A. Hawker
Computers in Engineering COMP 208 Computer Structure Michael A. Hawker Computer Structure We will briefly look at the structure of a modern computer That will help us understand some of the concepts that
More information1. INTRODUCTION TO MICROPROCESSOR AND MICROCOMPUTER ARCHITECTURE:
1. INTRODUCTION TO MICROPROCESSOR AND MICROCOMPUTER ARCHITECTURE: A microprocessor is a programmable electronics chip that has computing and decision making capabilities similar to central processing unit
More informationTimer2 Interrupts. NDSU Timer2 Interrupts September 20, Background:
Background: Timer2 Interrupts The execution time for routines sometimes needs to be set. This chapter loops at several ways to set the sampling rate. Example: Write a routine which increments an 8-bit
More informationMidrange 8b PIC Microcontrollers. ECE Senior Design 14 February 2017
Midrange 8b PIC Microcontrollers ECE Senior Design 14 February 2017 Harvard vs. Von Neumann Harvard Architecture Program Memory 14-bit Bus CPU 8-bit Bus Data Memory Harvard architecture Separate busses
More informationAnupam Gupta, Braydon Hall, Eugene Oh, Savanna Yee. Steve Jobs custom Apple I and other historic machines are on display at Seattle museum
Computers CSE 120 Spring 2017 Instructor: Justin Hsia Teaching Assistants: Anupam Gupta, Braydon Hall, Eugene Oh, Savanna Yee Steve Jobs custom Apple I and other historic machines are on display at Seattle
More information