Analysis of Hardware and Software Approaches to Embedded In-Circuit Emulation of Microprocessors

Size: px
Start display at page:

Download "Analysis of Hardware and Software Approaches to Embedded In-Circuit Emulation of Microprocessors"

Transcription

1 Analysis of Hardware and Software Approaches to Embedded In-Circuit Emulation of Microprocessors Hsin-Ming Chen, Chung-Fu Kao and Ing-Jer Huang Dept. of Computer Science and Engineering National Sun Yat-Sen University Kaohsiung, Taiwan Abstract This paper investigates various approaches to embed the functionality of in-circuit emulation (ICE) into microprocessor cores in SoC (System-On-Chip) chips. Three styles of ICE s (hardware-oriented, software-oriented and hybrid) are defined and implemented. They are integrated with a synthesizable ARM7 microprocessor core and synthesized to gate level to quantitatively analyze and compare their performance, cost and debugging features. 1. Introduction An in-circuit emulator (ICE) is an important tool for the development of microprocessor-based systems. For the past years, approaches such as external ICE boxes with probing sockets or ROM Monitors (a small monitoring software residing in ROM) are commonly used. External ICE boxes are complex and expensive piece of hardware so their use is usually limited to the debugging phase of the microprocessor-based systems that involve hardware/software integration or investigation of real time I/O or bus events. On the other hand, a ROM monitor is a software-oriented approach and is less expensive, but provides less observability for the microprocessor s operations. In either case, the design practice of the ICE devices is usually independent to the design task of the microprocessor itself. The performance and cost of the ICE devices are not relevant to the microprocessors since they are two different entities. The ICE s are used only during the development/debugging of the microprocessor-based systems by substituting the original microprocessor on the socket with the ICE. The ICE is unplugged after debugging and the original microprocessor is placed back into the socket for normal operations of the microprocessor-based systems. Therefore, the performance and cost of the ICE s do not impact these of the microprocessor-based systems because the ICE s do not exist in the system during normal operations. However, in the era of system-on-chip (SoC), the considerations of the ICE s and the microprocessors are no longer irrelevant. In an SoC implementation of a microprocessor-based system, the in-circuit emulator has to be integrated with the microprocessor core early in the design stage, and it permanently reside in the SoC chip, during both the development phase and the normal operation phase of the SoC chip. There is no way to remove it out of the SoC chip. Therefore, the architecture and implementation of the ICE deeply impact the performance and cost of the SoC chip. In this paper we investigate the possible approaches to embedding an ICE into a microprocessor in the SoC chip. We then define three feasible solutions (software, hardware and hybrid) and integrate them with a synthesizable ARM7 microprocessor core. The microprocessors with the embedded ICE s are synthesized and simulated to analyze and compare the corresponding hardware/software performance and cost and the debugging features of these approaches Background The purpose of in-circuit emulation is to emulate the behavior of a microprocessor to support the development of embedded software and hardware (Apply Microsystems). It can accept run-control commands to execute debugging functions, such as loading, forcing stop or executing the user program, reading or writing registers/memory, single stepping, setting breakpoints. The development system diagram is shown in Fig.1. Host Computer Dump Register or Memory Edit, Complier and Link Downloader Debug Software Debug Status Control Command (Go,Stop,Step,Breakpoint) Protocol Converter Set Breakpoint Download Program Target System in-circuit emulation Target Processor Copyright 2002, Australian Computer Society, Inc. This paper appeared at the Seventh Asia-Pacific Computer Systems Architecture Conference (ACSAC 2002), Melbourne, Australia. Conferences in Research and Practice in Information Technology, Vol. 6. Feipei Lai and John Morris, Eds. Reproduction for academic, not-for-profit purposes permitted provided this text is included. Fig. 1 Microprocessor based development system

2 2. Classification of In-Circuit Emulation Approaches 2.1. The Classification Methodology We can divide the operations of in-circuit emulation into two operation modes i. ForeGround Debug Mode (FGDM) In this mode, the in-circuit emulator has full control of the target processor. It accepts commands from the host to control the execution of the target processor or access its internal information. We can use hardware or software methods to implement the FGDM mode. In the software approach, the in-circuit emulation is a software code executed by the target processor. It needs a passive communication device, such as UART, driven by the target processor to communication with the host computer. In the hardware approach, the in-circuit emulation has a set of logic circuitry to generate control signals, which can halt or release the execution of the target processor and has an active communication device which can communication with host or emulator to execute other debug function when processor is halted. ii. BackGround Debug Mode (BGDM) In this mode, the target processor is executing the normal user program and the in-circuit emulator is monitoring the system status in the background. If system status matches the event value that is previously defined by the user in the FGDM, the in-circuit emulator will switch the operation mode back to FGDM. The BGDM operation mode can also be implemented with either software or hardware methods. In the software approach, there are two types of approaches software monitor and instruction patching. The software monitor uses software to check the execution result of each user instruction. It requires the processor to provide the single-step exception for automatic checking. On the other hand, the approach of instruction patching is to insert special instructions at specific locations of the user program. When the patched instruction is executed, the debug mode will switch into FGDM. In the hardware approach, it usually has a hardware comparator to monitor address, data, and some control signals. iii. Debug mode switching If the debug operation is switched from FGDM to BGDM, the user application program will resume its normal execution as if nothing happens. If the debug operation is switched from BGDM to FGDM, the execution of user application program is interrupted and the control will be changed to FGDM. At this time, the importance task is to save the system status for further investigation. iv. The classification of emulation approaches Emulation approaches can be classified into Software Emulation, Hardware Emulation, or Hybrid Emulation. The classification is shown in Table1. In the following sections, we define the approaches with corresponding industrial examples. Software Emulation Hardware Emulation Hybrid Emulation FGDM BGDM Examples BUFFLO Monitor Program HW HW ARM7TDMI HW HW Intel x86 Debug Register Motorola s Background Debug Mode (BDM) Table1 The classification of emulation approaches 2.2. Software Emulation The software emulation means that both FGDM and BGDM are implemented using the software approach. The Table 2 list the comparison of Intel x86 Debugging and BUFFLO Monitor Program. Processor Patching code (Breakpoint) Single-Step Intel x86 Debugging Intel 386,486,Pentium 0CCh (INT 3) Set TF flag enable. (Single- Step trap) BUFFLO Monitor Program Motorola 68HC11 EVB I Set OC5timer counter value to cause an interrupt after a prescribed number of clock cycles. Table 2 The comparison of two software approaches i. Intel x86 DEBUGGING Intel s X86 processor has three debug functions for the BGDM. The following mechanisms are used for the software approach Breakpoint Instruction and Single- Step Trap (INTEL Ltd. 1994). Breakpoint Instruction The breakpoint trap is caused by executing the INT3 instruction. Typically, a debugger prepares a breakpoint to replace the opcode byte of the INT3 for the breakpoint. Single-Step Trap The trap occurs if the TF flag isset before each instruction is executed. This trap will call the INT1 interrupt handle. ii. THE BUFFALO MONITOR PROGRAM The Buffalo monitor is part of the 68HC11 evaluation board (JOSEPH D. G. and WILLIAM C. W. 1988). The

3 debug routines usually include several utility functions. When this monitor program is included in the system, it must reside at the top of memory. The RESET vector directs the processor to start executing the initialization routine. It then enters the command loop and wait for input command from the keyboard. When we set breakpoints, the breakpoint routines temporarily insert a SoftWareInterrupt (I) instruction to replace user program instruction. When program run up to the I instruction, the I service routine displays the contents of the processor registers, and returns to the debug command loop. Memory and registers can be examined to see if they contain the user expected data Hardware Emulation The Hardware Emulation means that both FGDM and BGDM are implemented with hardware. This kind of BGDM uses a hardware comparator to detect breakpoint events, and active debug circuitry to control the execution of the processor. Many modern hardware emulators are built upon the IEEE JTAG port, which is a specification for boundary-scan testing at chip or board level (TOM WILLIAMS 2000, ING-JER HUANG AND TAI-AN LU 1999, P. C. CHING, Y. H. CHENG and M. H. KO 1994). It consists of scan chains that provide test access by allowing data to be shifted in or out of the chain in a serial fashion. Although JTAG is not originally intended for software debugging, it can be used for this purpose by inserting appropriate command or opcode into the internal register and control the processor execution. The disadvantage of the JTAG-based debugging because of the length of the chain and the operations require that the scan chain be traversed multiple times. The advantage of debugging via the JTAG port is that it used processor pins that are already dedicated and therefore does not require any additional pins. For example, the D and I of ARM7TDMI is the optional facility of on-chip debugging supported by ARM Ltd. The D is Debug Interface, which is based on JTAG IEEE Std and extended allow the core to be halted by ICEBreaker or debug-request signal. The I of ARM7TDMI is ICEBreaker, which is a comparator. It can store breakpoint value form Debug interface (STEVE FURBER, 2000). Another example is AMDebug interface, which included on the ÉlanSC520 microcontroller and provides the product design team with two different communication paths. The Serial AMDebug technology uses a serial connection based on an enhanced JTAG protocol. The Parallel AMDebug technology uses a 25-pin parallel debug port to exchange commands and data between the ÉlanSC520 microcontroller and the host (Advanced Micro Devices Inc. 1999). processors use hardware comparators for BGDM and using software approach for FGDM. The notable feature is the hardware comparator would cause an exception when the matching event occurs and then processor executes the exception handle to switch into FGDM. There are some examples. i. Intel x86 DEBUG REGISTER This is the third on-chip debugging function provided by x86 processor (INTEL Ltd. 1994). There are six registers for control debugging accessed with forms of the MOV instruction. The debug registers are privileged resources. The MOV instructions that access them can be executed only at privilege level 0. There are four debug address registers (DR0-DR3). Each of these registers holds the linear address for one of the four breakpoints, which means that breakpoint comparisons are made before physical address translation occurs. Each breakpoint condition is specified further by the contents of the debug control register (DR7). ii. Motorola MCF5407 Real-Time Debug Support The ColdFire Family provides support to debug real-time applications. For these types of embedded systems, the processor must continue to operate during debug. Debug interrupts let real-time systems execute a interrupt routine, which can quickly save the contents of key registers and variables and program execution resume. 3. Case Study Implementations for the software, hardware and hybrid approaches with a synthesizable ARM7 microprocessor core In this section, we use a synthesizable ARM7 processor to implement three emulation approaches. We will present the algorithm of software approach and the architecture of hardware approach. We will also illustrate how co-work by software and hardware in the Hybrid Emulation Software Emulation We design the FGDM using software approach. The FGDM of software approaches we called SoftFGDM, which reside in Undefined exception handle. When the processor is in the FGDM, the debug program receives and executes commands debug function. The command description is shown as Table Hybrid Emulation The Hybrid Emulation means that FGDM is implemented with different approaches. Most of

4 Command syntax GO Operation description Resume user program execution BP0 <address> This is first breakpoint of Breakpoint Table BP1 <address> This is second breakpoint of Breakpoint Table ST <In/Over> REG MEM <lowbound> <upbound> Single-Step Display register content Display memory content. The display range is from <low-bound> to <up-bound>. Table 3 The system commands of Software FGDM We have to allocate a memory space to store the contents of the register file, breakpoint table, debug status, and command receiver. The memory map is shown in Fig. 2. To enter FGDM, the primary job is to the register file by saving them into registers preserve area. When we input REG command into the debug program, the debug program will display the memory content in registers preserve area. In the breakpoint table, we can set four breakpoints. We assume there have a passive communication device that can communicate via output buffer and input buffer field. program execute the Undefined code, the processor will enter the FGDM and restore the instruction code replaced. When the processor wants exit FGDM, it needs to execute the main program from the restored instruction. This kind of BGDM can only set breakpoint event according the address of instruction code. The patching procedure diagram is shown in Fig. 3. If we want to implement the single-step function, we can treat the single-step as consecutive breakpoints. When we want to run single-step function from the current breakpoint, we need know where the next instruction is. First, we need to know if the breakpoint instruction is a branch instruction and the condition code is matched. If it is a branch operation, we need to calculate the destination address, or otherwise just increment the breakpoint instruction address to patch target instruction. Receive Augrment find breakpoint instruction Is it "B"? No Is it "BL" No Want Step-Into? software emulation (Foreground debug mode) registers preserve breakpoint table Take offset field Is it negtive? Extend sign bit Add in address No Increase the address output buffer input buffer Host Patch in target instruction ExitFGDM Fig. 2 Software Emulation of memory map diagram Fig. 4 The single-step algorism diagram Store Breakpoint Address = 0x458 Breakpoint Table 0x Search 0x400 0xe Store 0x458 Undefined Code =0xe Replace Main Program 0xe SUB R3,R3,#1 Another case is to run step-into function, which will execute single-step in the subroutine. This operation, such as branch instruction, need to calculate the subroutine entry location. The algorism diagram is shown as Fig. 4. Fig. 3 The diagram of patching procedure We use the patching code approach to implement BGDM. When we input BP0 or BP1 command, the debug program will scan the user program to find breakpoint location. It then saves the original instruction at the location and replaces it with the breakpoint code, the Undefined code in the ARM7 processor. When user

5 3.2. Hardware Emulation In the hardware emulation (STEVE FURBER 2000), we adopt the Debug Interface and ICEBreaker of ARM7TDMI. There are three major modules FGDM Controller, Hardware Monitor and Debug Mode Switching Control. The Hardware Emulation architecture is shown in Figure 5. nopc nrw MAS[10] ntrans A[310] DOUT[310] DIN[310] Hardware Monitor Scan Chain 0 TAP controller TCK TMS ntrst TDI TDO ARM7TM_Like Scan Chain 1 Fig. 5 The Hardware Emulation Architecture All Other Signal s The FGDM Controller is a TAP controller, shown as Fig. 6. It consists of standard TAP functions, such as BYPASS, INTEST and EXTEST, and several additional functions for debugging, such as BKPT and RESTART. The command description is shown as Table 4. It uses IEEE JTAG test mechanism to communicate with the host and receives command to run debug operation in FGDM. TDI TRST TCK TMS IR Decoder IR register IR control TAP control Bk_en IR tdo Bypass register INTEST EXTEST CHAN0_en CHAN1_en restart bypass Breakpoint register DR control Bk_tdo Bypass tdo TDO selecter (To Scan Chain) (To control DBGACK) (To Hardware Monitor) Scan Chain 0 tdo Scan Chain 1 tdo TDO (To Scan Chain) Fig. 6 The FGDM controller architecture diagram We can access ARM7 register file and memory content by using the CHAN1 of boundary scan chain, which lies on the data input and output bus of ARM7, to insert Load/Store of ARM7 instruction code. We can set breakpoint in FGDM from the JTAG port. We designed a BKPT extended TAP instruction. It will select test data register, which next inputted, is breakpoint register and input breakpoint value into breakpoint register. The breakpoint value will be stored into the Hardware Monitor. The breakpoint event types can include Address and Data events, which can make the debug capability more flexible and powerful. DBGEN Address[310] Data[310] Control[70] Command INTEST BKPT RESTART BYPASS CHAN0 CHAN1 Description The selected scan chain is connected between TDI and TDO and place in the internal test mode. The test pattern will be shifted in from TDI and placed on input pin and the result on output pin will be shift out to TDO. The scan chain is selected by CHAN0 or CHAN1 command. This command will select the Breakpoint register as test data register to be connected between TDI and TDO. This command will restart processor to exit from FDM. This command will select the BYPASS register as test data register, which is a 1-bit shift register, to be connected between TDI and TDO. It let all scan chain exit from any test mode and processor will exit FDGM temporarily for system speed instruction execution. To select the scan chain, which across data, address and control bus, for be tested. The scan chain only across data bus is a part of CHAN0. Table 4 The FGDM Controller commands list _ctrl mas k _ctrl valu e _dat a mas k _dat a valu e _add ress mas k Watchpoint Set Register 0 _add ress valu e ENABLE Watchpoint Set Register 1 BREAKPTI Fig. 7 The Hardware Monitor architecture diagram In the debug mode switching control module, it handles all of breakpoint generate conditions to control the switch timing of the debug mode. The DBGRQ pin will force the processor to switch into FGDM. When breakpoint is occurred, it needs calculate the pipeline effect of ARM7 to delay the halting of processor. We finish debug work in FGDM, we can input RESTART TAP instruction to switch into BGDM.. BREAPTI nopc DBGREQ bypass bit33 eoi flush DCLK restart Enter_ FGDM module Exit_FGDM module breakpoint watchpoint dbg_request sys_speed ExitDbg EnterDbg DBGACK Fig. 8 The debug mode switching module diagram 3.3. Hybrid Emulation In the Hybrid Emulation, we use the software FGDM emulation. And, we use the Monitor of Hardware

6 Emulation for BGDM hardware. We can use Load/Store instruction to set breakpoint. The breakpoint signal is connected to an input pin of the ARM core to raise an exception. We use this feature to emulate the function of Hardware Emulation. When the breakpoint is matched, it will cause an external interrupt. The interrupt will switch the debug mode into FGDM. The FGDM is the same software as in section 3.1. The hybrid emulation architecture is shown in Fig. 9. Memory Maqping Logic Address Write data Read data RW Addr[310] DataOut[310] DataIn[310] Hardware Monitor BREAKPT Abort I ARM7TM_Like Fig. 9 The hybrid emulation architecture 4. Analysis and comparison In this section, we synthesize the three versions and analyze the advantages and disadvantages of the three emulation approaches. Table 5 shows our experimental result of implementing these emulation approaches with a synthesizable ARM7 processor. The software part is written in ARM assembly code and is assembled and linked with the ARM STD v2.5 development tool. The machine code is loaded into the embedded memory (SRAM) on the SoC chip. We implement whole development system as Verilog RTL code and synthesized with the 0.35 TSMC cell library. Only relevant data are shown in the table. For example, the gate count of software part in the embedded memory is only that of the memory cells storing the software monitor, not of the normal user programs. Similarly, the gate count of hardware is only the ICE part, not of the microprocessor core itself. Operation Time is the total time for executing all the debug functions. The HW approach uses the JTAG port (boundary scan cells) to feed the debug instructions and to communicate with the outside. The JTAG port is a serial operation. On the other hand, the and Hybrid approaches use the instruction bus to feed instructions to control the ICE and use the memory data bus to communicate with outside world. Therefore, the required numbers of cycles for the and Hybrid approaches are smaller than the JTAG port since the instruction/data buses provide larger bandwidth than the JTAG port. However, the clock frequency for the JTAG port operations may be higher than that of the or Hybrid approaches since the HW operations are mainly the operations of the JTAG circuitry, which is much simpler, whereas the or Hybrid operations are mainly the operations of the microprocessor core, which is more complex. Therefore, it is possible to drive the JTAG port with a faster clock. Another way to speed up the JTAG port access is to utilize the instruction/data buses as the communication channel, as in the and Hybrid cases. However, this would deviate from the standard JTAG serial access method. Software Resource means that the system software resources required by the debug software. As described previously, the Emulation utilizes the Undefined exception to debug and patch the user programs. The Hybrid Emulation needs the Abort exception for hardware comparison. On the other hand, the HW emulation uses a hardware circuit to switch between the normal and debug modes, and therefore it does not consume any exception space, leaving the greatest flexibility for the designers of system and user software. Breakpoint Quantity is the number of breakpoints that the ICE can support. In the emulation, the number of breakpoints is limited to the size of the breakpoint table allocated in the FGDM. If such allocation can be reconfigured or dynamically adjusted, then the number can be adjusted according to the debug needs. On the other hand, the number of breakpoints, two in our implementations, is fixed in HW or Hybrid Emulation once the hardware is finished. Unless the hardware is redesigned and re-fabricated, there is no way to increase the number of breakpoints. Breakpoint Condition refers to the supported conditions under which the microprocessor can be breakpointed. In the HW and Hybrid Emulations, the sophisticated comparison hardware logic make it possible to break on both data and instruction locations, on the specific contents stored on the target memory locations, and even on the Boolean combinations of these conditions. On the other hand, the Emulation breaks only on the instruction location, because it relies on the instruction exception mechanism. It may be possible to support more breakpoint conditions through the software checking of the BGDM. However, it would require many cycles of operations in order to determine a possible breakpoint and hence heavily degrade the software performance[ij6]. Communication Device refers to the device with which the ICE communicates with outside world. In or Hybrid Emulation, the instruction and data buses are used for communication. The advantage is that the high bandwidth of these buses is utilized for high-speed communication. The disadvantage is that the communication mechanisms might not be consistent from one microprocessor to another microprocessor. On the other hand, the HW emulation uses the industrial standard JTAG port for communication. The advantage is that it is standardized. The disadvantage is that the communication speed is limited to the serial access style of the JTAG port. If standardization is not an issue, then the instruction/data buses or other I/O pins can be utilized to improve the communication speed. Design Complexity refers to the design effort of the ICE. The Emulation is a piece of software residing in the memory. It can be revised and downloaded to the memory (unless the memory is a ROM). Therefore, it requires only the software programming effort but not the

7 hardware design effort. On the other hand, the HW emulation implements both its FGDM and BGDM in hardware, and thus requires significant efforts in designing the ICE components, integrating the ICE with the microprocessor core and verification. As suggested by its name, the design effort of the Hybrid emulation lies between two extremes. Suitable Application Domains mean suitable application domains for each of the implemented ICE approach based on its hardware and software features. The emulation provides the most basic debugging support, which is good for debugging software, but not for debugging hardware. In addition, its software-oriented debugging mechanism is good for functional debugging, but not for debugging timing or I/O related activities. The Hybrid emulation uses hardware to serve as the BGDM to detect breakpoints, making debugging at the system speed possible. Therefore, it is good for real time debugging. However, since the FGDM is still in software, the accessibility of hardware internal signals and status is limited to what can be accessed by software, i.e., the instruction set. Finally, since the HW emulation implements both FGDM and BGDM in hardware, real time debugging of both hardware and software is achievable. This approach provides the finest observability into the hardware internal signals and status, which can be accessed through either the JTAG port or the instruction set. Code Size (Line/bytes) Gate count ( Part, in terms of gates of the required memory cells) Gate count (HW Part) Operation cycles Software Resource Used Breakpoint Quantity Breakpoint Condition Communication Device Design Complexity Suitable Application Domain Hybrid HW 222/ / Undefined exception Flexible, as required by the user Only instruction address Parallel or serial Port Abort exception 2, fixed Instruction/data access, content dependent Parallel or serial Port - 2, fixed Instruction/data access, content dependent JTAG Simplest Simpler Complex Functional debugging Real-time debugging Real-time low level HW/ debugging 5. Conclusion We have motivated the need to investigate the possible in-circuit emulation (ICE) approaches for embedded microprocessors in system-on-chip (SoC) because the adopted ICE approaches may heavily impact the performance, cost and debugging features of the SoC chips. We then characterize the possible approaches into three categories, i.e., software emulation, hardware emulation and hybrid emulation, and match each category with available commercial solutions. We have further defined and implemented one feasible solution for each of the category and embedded them with a synthesizable ARM7 microprocessor core. The microprocessors with the embedded ICE s are synthesized, simulated and compared. The comparisons show that each solution has its own merits, such as hardware/software performance and cost, verification efforts, debug features and flexibility. SoC designers can choose an appropriate embedded ICE solution based upon their specific hardware and software needs. 6. Reference STEVE FURBER (2000) ARM system-on-chip architecture, second edition. Addison Wesley. ING-JER HUANG AND TAI-AN LU (1999) ICEBERG An embedded in-circuit emulator synthesizer for microcontrollers. Proc. of the 36 th Design Automation Conference, New Orleans, USA. JOSEPH D. G. and WILLIAM C. W. (1988) Using microprocessors and microcomputers the motorola family, second edition. Prentice Hall. INTEL Ltd. (1994) Pentium processor family user s manual volume 3 architecture and programming manual. Intel Corporation. TOM WILLIAMS (2000) On-chip debug support gets to the heart of code. Embedded Systems Development. http// Apply Microsystems Basics of Embedded Debugging - Essential Concepts of Embedded Systems Development. http// _debug_tools/debuggers/app_notes/basics.html Advanced Micro Devices Inc. (1999). Élan SC520 Microcontroller User s Manual, http// 4.32bitcont/14.lan5xxfam/24.lansc520/22004/22004b. pdf P. C. CHING, Y. H. CHENG and M. H. KO (1994) An in-circuit emulator for TMS320C25. IEEE Transactions on Education, Feb Table 5 The experimental result of emulation approaches

Testing of Digital System-on- Chip (SoC)

Testing of Digital System-on- Chip (SoC) Testing of Digital System-on- Chip (SoC) 1 Outline of the Talk Introduction to system-on-chip (SoC) design Approaches to SoC design SoC test requirements and challenges Core test wrapper P1500 core test

More information

The Boundary Scan Test (BST) technology

The Boundary Scan Test (BST) technology The Boundary Scan Test () technology J. M. Martins Ferreira FEUP / DEEC - Rua Dr. Roberto Frias 42-537 Porto - PORTUGAL Tel. 35 225 8 748 / Fax: 35 225 8 443 (jmf@fe.up.pt / http://www.fe.up.pt/~jmf) Objectives

More information

MICROPROCESSOR AND MICROCOMPUTER BASICS

MICROPROCESSOR AND MICROCOMPUTER BASICS Introduction MICROPROCESSOR AND MICROCOMPUTER BASICS At present there are many types and sizes of computers available. These computers are designed and constructed based on digital and Integrated Circuit

More information

MICROPROCESSOR. Exclusive for IACE Students www.iace.co.in iacehyd.blogspot.in Ph: 9700077455/422 Page 1

MICROPROCESSOR. Exclusive for IACE Students www.iace.co.in iacehyd.blogspot.in Ph: 9700077455/422 Page 1 MICROPROCESSOR A microprocessor incorporates the functions of a computer s central processing unit (CPU) on a single Integrated (IC), or at most a few integrated circuit. It is a multipurpose, programmable

More information

The Advanced JTAG Bridge. Nathan Yawn nathan.yawn@opencores.org 05/12/09

The Advanced JTAG Bridge. Nathan Yawn nathan.yawn@opencores.org 05/12/09 The Advanced JTAG Bridge Nathan Yawn nathan.yawn@opencores.org 05/12/09 Copyright (C) 2008-2009 Nathan Yawn Permission is granted to copy, distribute and/or modify this document under the terms of the

More information

Digitale Signalverarbeitung mit FPGA (DSF) Soft Core Prozessor NIOS II Stand Mai 2007. Jens Onno Krah

Digitale Signalverarbeitung mit FPGA (DSF) Soft Core Prozessor NIOS II Stand Mai 2007. Jens Onno Krah (DSF) Soft Core Prozessor NIOS II Stand Mai 2007 Jens Onno Krah Cologne University of Applied Sciences www.fh-koeln.de jens_onno.krah@fh-koeln.de NIOS II 1 1 What is Nios II? Altera s Second Generation

More information

MACHINE ARCHITECTURE & LANGUAGE

MACHINE ARCHITECTURE & LANGUAGE in the name of God the compassionate, the merciful notes on MACHINE ARCHITECTURE & LANGUAGE compiled by Jumong Chap. 9 Microprocessor Fundamentals A system designer should consider a microprocessor-based

More information

PART B QUESTIONS AND ANSWERS UNIT I

PART B QUESTIONS AND ANSWERS UNIT I PART B QUESTIONS AND ANSWERS UNIT I 1. Explain the architecture of 8085 microprocessor? Logic pin out of 8085 microprocessor Address bus: unidirectional bus, used as high order bus Data bus: bi-directional

More information

Computer Performance. Topic 3. Contents. Prerequisite knowledge Before studying this topic you should be able to:

Computer Performance. Topic 3. Contents. Prerequisite knowledge Before studying this topic you should be able to: 55 Topic 3 Computer Performance Contents 3.1 Introduction...................................... 56 3.2 Measuring performance............................... 56 3.2.1 Clock Speed.................................

More information

ARM Microprocessor and ARM-Based Microcontrollers

ARM Microprocessor and ARM-Based Microcontrollers ARM Microprocessor and ARM-Based Microcontrollers Nguatem William 24th May 2006 A Microcontroller-Based Embedded System Roadmap 1 Introduction ARM ARM Basics 2 ARM Extensions Thumb Jazelle NEON & DSP Enhancement

More information

Fondamenti su strumenti di sviluppo per microcontrollori PIC

Fondamenti su strumenti di sviluppo per microcontrollori PIC Fondamenti su strumenti di sviluppo per microcontrollori PIC MPSIM ICE 2000 ICD 2 REAL ICE PICSTART Ad uso interno del corso Elettronica e Telecomunicazioni 1 2 MPLAB SIM /1 MPLAB SIM is a discrete-event

More information

7a. System-on-chip design and prototyping platforms

7a. System-on-chip design and prototyping platforms 7a. System-on-chip design and prototyping platforms Labros Bisdounis, Ph.D. Department of Computer and Communication Engineering 1 What is System-on-Chip (SoC)? System-on-chip is an integrated circuit

More information

Technical Note. Micron NAND Flash Controller via Xilinx Spartan -3 FPGA. Overview. TN-29-06: NAND Flash Controller on Spartan-3 Overview

Technical Note. Micron NAND Flash Controller via Xilinx Spartan -3 FPGA. Overview. TN-29-06: NAND Flash Controller on Spartan-3 Overview Technical Note TN-29-06: NAND Flash Controller on Spartan-3 Overview Micron NAND Flash Controller via Xilinx Spartan -3 FPGA Overview As mobile product capabilities continue to expand, so does the demand

More information

Palaparthi.Jagadeesh Chand. Associate Professor in ECE Department, Nimra Institute of Science & Technology, Vijayawada, A.P.

Palaparthi.Jagadeesh Chand. Associate Professor in ECE Department, Nimra Institute of Science & Technology, Vijayawada, A.P. Patient Monitoring Using Embedded Palaparthi.Jagadeesh Chand Associate Professor in ECE Department, Nimra Institute of Science & Technology, Vijayawada, A.P Abstract The aim of this project is to inform

More information

Serial port interface for microcontroller embedded into integrated power meter

Serial port interface for microcontroller embedded into integrated power meter Serial port interface for microcontroller embedded into integrated power meter Mr. Borisav Jovanović, Prof. dr. Predrag Petković, Prof. dr. Milunka Damnjanović, Faculty of Electronic Engineering Nis, Serbia

More information

Exception and Interrupt Handling in ARM

Exception and Interrupt Handling in ARM Exception and Interrupt Handling in ARM Architectures and Design Methods for Embedded Systems Summer Semester 2006 Author: Ahmed Fathy Mohammed Abdelrazek Advisor: Dominik Lücke Abstract We discuss exceptions

More information

National CR16C Family On-Chip Emulation. Contents. Technical Notes V9.11.75

National CR16C Family On-Chip Emulation. Contents. Technical Notes V9.11.75 _ V9.11.75 Technical Notes National CR16C Family On-Chip Emulation Contents Contents... 1 1 Introduction... 2 2 Emulation options... 3 2.1 Hardware Options... 3 2.2 Initialization Sequence... 4 2.3 JTAG

More information

Implementation Details

Implementation Details LEON3-FT Processor System Scan-I/F FT FT Add-on Add-on 2 2 kbyte kbyte I- I- Cache Cache Scan Scan Test Test UART UART 0 0 UART UART 1 1 Serial 0 Serial 1 EJTAG LEON_3FT LEON_3FT Core Core 8 Reg. Windows

More information

MAX II ISP Update with I/O Control & Register Data Retention

MAX II ISP Update with I/O Control & Register Data Retention MAX II ISP Update with I/O Control & Register Data Retention March 2006, ver 1.0 Application Note 410 Introduction MAX II devices support the real-time in-system mability (ISP) feature that allows you

More information

Software based Finite State Machine (FSM) with general purpose processors

Software based Finite State Machine (FSM) with general purpose processors Software based Finite State Machine (FSM) with general purpose processors White paper Joseph Yiu January 2013 Overview Finite state machines (FSM) are commonly used in electronic designs. FSM can be used

More information

Computer Organization & Architecture Lecture #19

Computer Organization & Architecture Lecture #19 Computer Organization & Architecture Lecture #19 Input/Output The computer system s I/O architecture is its interface to the outside world. This architecture is designed to provide a systematic means of

More information

What is a System on a Chip?

What is a System on a Chip? What is a System on a Chip? Integration of a complete system, that until recently consisted of multiple ICs, onto a single IC. CPU PCI DSP SRAM ROM MPEG SoC DRAM System Chips Why? Characteristics: Complex

More information

An Introduction to the ARM 7 Architecture

An Introduction to the ARM 7 Architecture An Introduction to the ARM 7 Architecture Trevor Martin CEng, MIEE Technical Director This article gives an overview of the ARM 7 architecture and a description of its major features for a developer new

More information

Chapter 2 Logic Gates and Introduction to Computer Architecture

Chapter 2 Logic Gates and Introduction to Computer Architecture Chapter 2 Logic Gates and Introduction to Computer Architecture 2.1 Introduction The basic components of an Integrated Circuit (IC) is logic gates which made of transistors, in digital system there are

More information

Lizy Kurian John Electrical and Computer Engineering Department, The University of Texas as Austin

Lizy Kurian John Electrical and Computer Engineering Department, The University of Texas as Austin BUS ARCHITECTURES Lizy Kurian John Electrical and Computer Engineering Department, The University of Texas as Austin Keywords: Bus standards, PCI bus, ISA bus, Bus protocols, Serial Buses, USB, IEEE 1394

More information

Testing and Programming PCBA s during Design and in Production

Testing and Programming PCBA s during Design and in Production Testing and Programming PCBA s during Design and in Production Hogeschool van Arnhem en Nijmegen 6 June 23 Rob Staals JTAG Technologies robstaals@jtag.com Copyright 23, JTAG Technologies juni 3 The importance

More information

AN141 SMBUS COMMUNICATION FOR SMALL FORM FACTOR DEVICE FAMILIES. 1. Introduction. 2. Overview of the SMBus Specification. 2.1.

AN141 SMBUS COMMUNICATION FOR SMALL FORM FACTOR DEVICE FAMILIES. 1. Introduction. 2. Overview of the SMBus Specification. 2.1. SMBUS COMMUNICATION FOR SMALL FORM FACTOR DEVICE FAMILIES 1. Introduction C8051F3xx and C8051F41x devices are equipped with an SMBus serial I/O peripheral that is compliant with both the System Management

More information

CSE2102 Digital Design II - Topics CSE2102 - Digital Design II

CSE2102 Digital Design II - Topics CSE2102 - Digital Design II CSE2102 Digital Design II - Topics CSE2102 - Digital Design II 6 - Microprocessor Interfacing - Memory and Peripheral Dr. Tim Ferguson, Monash University. AUSTRALIA. Tel: +61-3-99053227 FAX: +61-3-99053574

More information

Advanced Computer Architecture-CS501. Computer Systems Design and Architecture 2.1, 2.2, 3.2

Advanced Computer Architecture-CS501. Computer Systems Design and Architecture 2.1, 2.2, 3.2 Lecture Handout Computer Architecture Lecture No. 2 Reading Material Vincent P. Heuring&Harry F. Jordan Chapter 2,Chapter3 Computer Systems Design and Architecture 2.1, 2.2, 3.2 Summary 1) A taxonomy of

More information

Central Processing Unit (CPU)

Central Processing Unit (CPU) Central Processing Unit (CPU) CPU is the heart and brain It interprets and executes machine level instructions Controls data transfer from/to Main Memory (MM) and CPU Detects any errors In the following

More information

Microtronics technologies Mobile: 99707 90092

Microtronics technologies Mobile: 99707 90092 For more Project details visit: http://www.projectsof8051.com/rfid-based-attendance-management-system/ Code Project Title 1500 RFid Based Attendance System Synopsis for RFid Based Attendance System 1.

More information

Computer Systems Structure Input/Output

Computer Systems Structure Input/Output Computer Systems Structure Input/Output Peripherals Computer Central Processing Unit Main Memory Computer Systems Interconnection Communication lines Input Output Ward 1 Ward 2 Examples of I/O Devices

More information

Design of a High Speed Communications Link Using Field Programmable Gate Arrays

Design of a High Speed Communications Link Using Field Programmable Gate Arrays Customer-Authored Application Note AC103 Design of a High Speed Communications Link Using Field Programmable Gate Arrays Amy Lovelace, Technical Staff Engineer Alcatel Network Systems Introduction A communication

More information

CHAPTER 7: The CPU and Memory

CHAPTER 7: The CPU and Memory CHAPTER 7: The CPU and Memory The Architecture of Computer Hardware, Systems Software & Networking: An Information Technology Approach 4th Edition, Irv Englander John Wiley and Sons 2010 PowerPoint slides

More information

USBSPYDER08 Discovery Kit for Freescale MC9RS08KA, MC9S08QD and MC9S08QG Microcontrollers User s Manual

USBSPYDER08 Discovery Kit for Freescale MC9RS08KA, MC9S08QD and MC9S08QG Microcontrollers User s Manual USBSPYDER08 Discovery Kit for Freescale MC9RS08KA, MC9S08QD and MC9S08QG Microcontrollers User s Manual Copyright 2007 SofTec Microsystems DC01197 We want your feedback! SofTec Microsystems is always on

More information

Adapting the PowerPC 403 ROM Monitor Software for a 512Kb Flash Device

Adapting the PowerPC 403 ROM Monitor Software for a 512Kb Flash Device Adapting the PowerPC 403 ROM Monitor Software for a 512Kb Flash Device IBM Microelectronics Dept D95/Bldg 060 3039 Cornwallis Road Research Triangle Park, NC 27709 Version: 1 December 15, 1997 Abstract

More information

Non-Contact Test Access for Surface Mount Technology IEEE 1149.1-1990

Non-Contact Test Access for Surface Mount Technology IEEE 1149.1-1990 Non-Contact Test Access for Surface Mount Technology IEEE 1149.1-1990 ABSTRACT Mechanical and chemical process challenges initially limited acceptance of surface mount technology (SMT). As those challenges

More information

ARM Ltd 110 Fulbourn Road, Cambridge, CB1 9NJ, UK. *peter.harrod@arm.com

ARM Ltd 110 Fulbourn Road, Cambridge, CB1 9NJ, UK. *peter.harrod@arm.com Serial Wire Debug and the CoreSight TM Debug and Trace Architecture Eddie Ashfield, Ian Field, Peter Harrod *, Sean Houlihane, William Orme and Sheldon Woodhouse ARM Ltd 110 Fulbourn Road, Cambridge, CB1

More information

TABLE OF CONTENTS. xiii List of Tables. xviii List of Design-for-Test Rules. xix Preface to the First Edition. xxi Preface to the Second Edition

TABLE OF CONTENTS. xiii List of Tables. xviii List of Design-for-Test Rules. xix Preface to the First Edition. xxi Preface to the Second Edition TABLE OF CONTENTS List of Figures xiii List of Tables xviii List of Design-for-Test Rules xix Preface to the First Edition xxi Preface to the Second Edition xxiii Acknowledgement xxv 1 Boundary-Scan Basics

More information

Chapter 13. PIC Family Microcontroller

Chapter 13. PIC Family Microcontroller Chapter 13 PIC Family Microcontroller Lesson 01 PIC Characteristics and Examples PIC microcontroller characteristics Power-on reset Brown out reset Simplified instruction set High speed execution Up to

More information

Freescale Semiconductor, I

Freescale Semiconductor, I nc. Application Note 6/2002 8-Bit Software Development Kit By Jiri Ryba Introduction 8-Bit SDK Overview This application note describes the features and advantages of the 8-bit SDK (software development

More information

150127-Microprocessor & Assembly Language

150127-Microprocessor & Assembly Language Chapter 3 Z80 Microprocessor Architecture The Z 80 is one of the most talented 8 bit microprocessors, and many microprocessor-based systems are designed around the Z80. The Z80 microprocessor needs an

More information

Hitex Germany. Application Note. ARM Debugging - Startup Behaviour after Reset

Hitex Germany. Application Note. ARM Debugging - Startup Behaviour after Reset Hitex Germany Head Quarters Greschbachstr. 12 76229 Karlsruhe Germany +049-721-9628-0 Fax +049-721-9628-149 E-mail: Sales@hitex.de WEB: www.hitex.de Hitex UK Warwick University Science Park Coventry CV47EZ

More information

ELEC 5260/6260/6266 Embedded Computing Systems

ELEC 5260/6260/6266 Embedded Computing Systems ELEC 5260/6260/6266 Embedded Computing Systems Spring 2016 Victor P. Nelson Text: Computers as Components, 3 rd Edition Prof. Marilyn Wolf (Georgia Tech) Course Topics Embedded system design & modeling

More information

Command Processor for MPSSE and MCU Host Bus Emulation Modes

Command Processor for MPSSE and MCU Host Bus Emulation Modes Future Technology Devices International Ltd. Application Note AN_108 Command Processor for MPSSE and MCU Host Bus Emulation Modes Document Reference No.: FT_000109 Version 1.5 Issue Date: 2011-09-09 This

More information

ASSEMBLY PROGRAMMING ON A VIRTUAL COMPUTER

ASSEMBLY PROGRAMMING ON A VIRTUAL COMPUTER ASSEMBLY PROGRAMMING ON A VIRTUAL COMPUTER Pierre A. von Kaenel Mathematics and Computer Science Department Skidmore College Saratoga Springs, NY 12866 (518) 580-5292 pvonk@skidmore.edu ABSTRACT This paper

More information

Power Reduction Techniques in the SoC Clock Network. Clock Power

Power Reduction Techniques in the SoC Clock Network. Clock Power Power Reduction Techniques in the SoC Network Low Power Design for SoCs ASIC Tutorial SoC.1 Power Why clock power is important/large» Generally the signal with the highest frequency» Typically drives a

More information

CSC 2405: Computer Systems II

CSC 2405: Computer Systems II CSC 2405: Computer Systems II Spring 2013 (TR 8:30-9:45 in G86) Mirela Damian http://www.csc.villanova.edu/~mdamian/csc2405/ Introductions Mirela Damian Room 167A in the Mendel Science Building mirela.damian@villanova.edu

More information

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING Question Bank Subject Name: EC6504 - Microprocessor & Microcontroller Year/Sem : II/IV

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING Question Bank Subject Name: EC6504 - Microprocessor & Microcontroller Year/Sem : II/IV DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING Question Bank Subject Name: EC6504 - Microprocessor & Microcontroller Year/Sem : II/IV UNIT I THE 8086 MICROPROCESSOR 1. What is the purpose of segment registers

More information

CGI-based applications for distributed embedded systems for monitoring temperature and humidity

CGI-based applications for distributed embedded systems for monitoring temperature and humidity CGI-based applications for distributed embedded systems for monitoring temperature and humidity Grisha Spasov, Nikolay Kakanakov Abstract: The paper discusses the using of Common Gateway Interface in developing

More information

INPUT/OUTPUT ORGANIZATION

INPUT/OUTPUT ORGANIZATION INPUT/OUTPUT ORGANIZATION Accessing I/O Devices I/O interface Input/output mechanism Memory-mapped I/O Programmed I/O Interrupts Direct Memory Access Buses Synchronous Bus Asynchronous Bus I/O in CO and

More information

Eureka Technology. Understanding SD, SDIO and MMC Interface. by Eureka Technology Inc. May 26th, 2011. Copyright (C) All Rights Reserved

Eureka Technology. Understanding SD, SDIO and MMC Interface. by Eureka Technology Inc. May 26th, 2011. Copyright (C) All Rights Reserved Understanding SD, SDIO and MMC Interface by Eureka Technology Inc. May 26th, 2011 Copyright (C) All Rights Reserved Copyright by Eureka Technology Inc. All Rights Reserved Introduction This white paper

More information

Building Blocks for PRU Development

Building Blocks for PRU Development Building Blocks for PRU Development Module 1 PRU Hardware Overview This session covers a hardware overview of the PRU-ICSS Subsystem. Author: Texas Instruments, Sitara ARM Processors Oct 2014 2 ARM SoC

More information

Using the CoreSight ITM for debug and testing in RTX applications

Using the CoreSight ITM for debug and testing in RTX applications Using the CoreSight ITM for debug and testing in RTX applications Outline This document outlines a basic scheme for detecting runtime errors during development of an RTX application and an approach to

More information

Production Flash Programming Best Practices for Kinetis K- and L-series MCUs

Production Flash Programming Best Practices for Kinetis K- and L-series MCUs Freescale Semiconductor Document Number:AN4835 Application Note Rev 1, 05/2014 Production Flash Programming Best Practices for Kinetis K- and L-series MCUs by: Melissa Hunter 1 Introduction This application

More information

Use of Simulator in Teaching Introductory Computer Engineering*

Use of Simulator in Teaching Introductory Computer Engineering* Int. J. Engng Ed. Vol. 15, No. 5, pp. 353±357, 1999 0949-149X/91 $3.00+0.00 Printed in Great Britain. # 1999 TEMPUS Publications. Use of Simulator in Teaching Introductory Computer Engineering* DAVID EDWARDS

More information

A STUDY OF INSTRUMENT REUSE AND RETARGETING IN P1687

A STUDY OF INSTRUMENT REUSE AND RETARGETING IN P1687 A STUDY OF INSTRUMENT REUSE AND RETARGETING IN P1687 Farrokh Ghani Zadegan, Urban Ingelsson, Erik Larsson Linköping University Gunnar Carlsson Ericsson ABSTRACT Modern chips may contain a large number

More information

THREE YEAR DEGREE (HONS.) COURSE BACHELOR OF COMPUTER APPLICATION (BCA) First Year Paper I Computer Fundamentals

THREE YEAR DEGREE (HONS.) COURSE BACHELOR OF COMPUTER APPLICATION (BCA) First Year Paper I Computer Fundamentals THREE YEAR DEGREE (HONS.) COURSE BACHELOR OF COMPUTER APPLICATION (BCA) First Year Paper I Computer Fundamentals Full Marks 100 (Theory 75, Practical 25) Introduction to Computers :- What is Computer?

More information

An Overview of Stack Architecture and the PSC 1000 Microprocessor

An Overview of Stack Architecture and the PSC 1000 Microprocessor An Overview of Stack Architecture and the PSC 1000 Microprocessor Introduction A stack is an important data handling structure used in computing. Specifically, a stack is a dynamic set of elements in which

More information

Microcontroller Based Low Cost Portable PC Mouse and Keyboard Tester

Microcontroller Based Low Cost Portable PC Mouse and Keyboard Tester Leonardo Journal of Sciences ISSN 1583-0233 Issue 20, January-June 2012 p. 31-36 Microcontroller Based Low Cost Portable PC Mouse and Keyboard Tester Ganesh Sunil NHIVEKAR *, and Ravidra Ramchandra MUDHOLKAR

More information

Architectures and Platforms

Architectures and Platforms Hardware/Software Codesign Arch&Platf. - 1 Architectures and Platforms 1. Architecture Selection: The Basic Trade-Offs 2. General Purpose vs. Application-Specific Processors 3. Processor Specialisation

More information

An Introduction to MPLAB Integrated Development Environment

An Introduction to MPLAB Integrated Development Environment An Introduction to MPLAB Integrated Development Environment 2004 Microchip Technology Incorporated An introduction to MPLAB Integrated Development Environment Slide 1 This seminar is an introduction to

More information

StrongARM** SA-110 Microprocessor Instruction Timing

StrongARM** SA-110 Microprocessor Instruction Timing StrongARM** SA-110 Microprocessor Instruction Timing Application Note September 1998 Order Number: 278194-001 Information in this document is provided in connection with Intel products. No license, express

More information

Von der Hardware zur Software in FPGAs mit Embedded Prozessoren. Alexander Hahn Senior Field Application Engineer Lattice Semiconductor

Von der Hardware zur Software in FPGAs mit Embedded Prozessoren. Alexander Hahn Senior Field Application Engineer Lattice Semiconductor Von der Hardware zur Software in FPGAs mit Embedded Prozessoren Alexander Hahn Senior Field Application Engineer Lattice Semiconductor AGENDA Overview Mico32 Embedded Processor Development Tool Chain HW/SW

More information

Chapter 2 Features of Embedded System

Chapter 2 Features of Embedded System Chapter 2 Features of Embedded System Abstract This chapter will introduce the basic elements of embedded systems (or dedicated systems). The integrated control systems represent one of the areas of modern

More information

COMP 303 MIPS Processor Design Project 4: MIPS Processor Due Date: 11 December 2009 23:59

COMP 303 MIPS Processor Design Project 4: MIPS Processor Due Date: 11 December 2009 23:59 COMP 303 MIPS Processor Design Project 4: MIPS Processor Due Date: 11 December 2009 23:59 Overview: In the first projects for COMP 303, you will design and implement a subset of the MIPS32 architecture

More information

Using the Agilent 3070 Tester for In-System Programming in Altera CPLDs

Using the Agilent 3070 Tester for In-System Programming in Altera CPLDs Using the Agilent 3070 Tester for In-System Programming in Altera CPLDs AN-628-1.0 Application Note This application note describes how to use the Agilent 3070 test system to achieve faster programming

More information

8-Bit Flash Microcontroller for Smart Cards. AT89SCXXXXA Summary. Features. Description. Complete datasheet available under NDA

8-Bit Flash Microcontroller for Smart Cards. AT89SCXXXXA Summary. Features. Description. Complete datasheet available under NDA Features Compatible with MCS-51 products On-chip Flash Program Memory Endurance: 1,000 Write/Erase Cycles On-chip EEPROM Data Memory Endurance: 100,000 Write/Erase Cycles 512 x 8-bit RAM ISO 7816 I/O Port

More information

Lecture N -1- PHYS 3330. Microcontrollers

Lecture N -1- PHYS 3330. Microcontrollers Lecture N -1- PHYS 3330 Microcontrollers If you need more than a handful of logic gates to accomplish the task at hand, you likely should use a microcontroller instead of discrete logic gates 1. Microcontrollers

More information

Debug and Trace for Multicore SoCs How to build an efficient and effective debug and trace system for complex, multicore SoCs

Debug and Trace for Multicore SoCs How to build an efficient and effective debug and trace system for complex, multicore SoCs Debug and Trace for Multicore SoCs How to build an efficient and effective debug and trace system for complex, multicore SoCs William Orme September 2008 Abstract As SoC designs become ever more complex

More information

Overview of the Cortex-M3

Overview of the Cortex-M3 CHAPTER Overview of the Cortex-M3 2 In This Chapter Fundamentals 11 Registers 12 Operation Modes 14 The Built-In Nested Vectored Interrupt Controller 15 The Memory Map 16 The Bus Interface 17 The MPU 18

More information

M CORE 14-PIN ENHANCED BACKGROUND DEBUG INTERFACE (14EBDI) USER S MANUAL

M CORE 14-PIN ENHANCED BACKGROUND DEBUG INTERFACE (14EBDI) USER S MANUAL MMC14EBDIUM/D February 2000 M CORE 14-PIN ENHANCED BACKGROUND DEBUG INTERFACE (14EBDI) USER S MANUAL While every effort has been made to ensure the accuracy of all information in this document, Motorola

More information

Logical Operations. Control Unit. Contents. Arithmetic Operations. Objectives. The Central Processing Unit: Arithmetic / Logic Unit.

Logical Operations. Control Unit. Contents. Arithmetic Operations. Objectives. The Central Processing Unit: Arithmetic / Logic Unit. Objectives The Central Processing Unit: What Goes on Inside the Computer Chapter 4 Identify the components of the central processing unit and how they work together and interact with memory Describe how

More information

================================================================

================================================================ ==== ==== ================================================================ DR 6502 AER 201S Engineering Design 6502 Execution Simulator ================================================================

More information

Intel StrongARM SA-110 Microprocessor

Intel StrongARM SA-110 Microprocessor Intel StrongARM SA-110 Microprocessor Product Features Brief Datasheet The Intel StrongARM SA-110 Microprocessor (SA-110), the first member of the StrongARM family of high-performance, low-power microprocessors,

More information

Freescale Semiconductor, Inc. Product Brief Integrated Portable System Processor DragonBall ΤΜ

Freescale Semiconductor, Inc. Product Brief Integrated Portable System Processor DragonBall ΤΜ nc. Order this document by MC68328/D Microprocessor and Memory Technologies Group MC68328 MC68328V Product Brief Integrated Portable System Processor DragonBall ΤΜ As the portable consumer market grows

More information

Chapter 1 Computer System Overview

Chapter 1 Computer System Overview Operating Systems: Internals and Design Principles Chapter 1 Computer System Overview Eighth Edition By William Stallings Operating System Exploits the hardware resources of one or more processors Provides

More information

CSE 141L Computer Architecture Lab Fall 2003. Lecture 2

CSE 141L Computer Architecture Lab Fall 2003. Lecture 2 CSE 141L Computer Architecture Lab Fall 2003 Lecture 2 Pramod V. Argade CSE141L: Computer Architecture Lab Instructor: TA: Readers: Pramod V. Argade (p2argade@cs.ucsd.edu) Office Hour: Tue./Thu. 9:30-10:30

More information

The 104 Duke_ACC Machine

The 104 Duke_ACC Machine The 104 Duke_ACC Machine The goal of the next two lessons is to design and simulate a simple accumulator-based processor. The specifications for this processor and some of the QuartusII design components

More information

C8051F020 Utilization in an Embedded Digital Design Project Course. Daren R. Wilcox Southern Polytechnic State University Marietta, Georgia

C8051F020 Utilization in an Embedded Digital Design Project Course. Daren R. Wilcox Southern Polytechnic State University Marietta, Georgia C8051F020 Utilization in an Embedded Digital Design Project Course Daren R. Wilcox Southern Polytechnic State University Marietta, Georgia Abstract In this paper, the utilization of the C8051F020 in an

More information

COMPUTER HARDWARE. Input- Output and Communication Memory Systems

COMPUTER HARDWARE. Input- Output and Communication Memory Systems COMPUTER HARDWARE Input- Output and Communication Memory Systems Computer I/O I/O devices commonly found in Computer systems Keyboards Displays Printers Magnetic Drives Compact disk read only memory (CD-ROM)

More information

Below is a diagram explaining the data packet and the timing related to the mouse clock while receiving a byte from the PS-2 mouse:

Below is a diagram explaining the data packet and the timing related to the mouse clock while receiving a byte from the PS-2 mouse: PS-2 Mouse: The Protocol: For out mini project we designed a serial port transmitter receiver, which uses the Baud rate protocol. The PS-2 port is similar to the serial port (performs the function of transmitting

More information

System on Chip Platform Based on OpenCores for Telecommunication Applications

System on Chip Platform Based on OpenCores for Telecommunication Applications System on Chip Platform Based on OpenCores for Telecommunication Applications N. Izeboudjen, K. Kaci, S. Titri, L. Sahli, D. Lazib, F. Louiz, M. Bengherabi, *N. Idirene Centre de Développement des Technologies

More information

FRONT FLYLEAF PAGE. This page has been intentionally left blank

FRONT FLYLEAF PAGE. This page has been intentionally left blank FRONT FLYLEAF PAGE This page has been intentionally left blank Abstract The research performed under this publication will combine virtualization technology with current kernel debugging techniques to

More information

Aims and Objectives. E 3.05 Digital System Design. Course Syllabus. Course Syllabus (1) Programmable Logic

Aims and Objectives. E 3.05 Digital System Design. Course Syllabus. Course Syllabus (1) Programmable Logic Aims and Objectives E 3.05 Digital System Design Peter Cheung Department of Electrical & Electronic Engineering Imperial College London URL: www.ee.ic.ac.uk/pcheung/ E-mail: p.cheung@ic.ac.uk How to go

More information

Software development and debugging for NXP ARM7 MCUs

Software development and debugging for NXP ARM7 MCUs THE MINISTRY of EDUCATION and SCIENCE of RUSSIAN FEDERATION SAMARA STATE AEROSPACE UNIVERSITY Software development and debugging for NXP ARM7 MCUs Learner s guide SAMARA 2011 2 Compilers: Kudryavtsev Ilya

More information

EEM870 Embedded System and Experiment Lecture 1: SoC Design Overview

EEM870 Embedded System and Experiment Lecture 1: SoC Design Overview EEM870 Embedded System and Experiment Lecture 1: SoC Design Overview Wen-Yen Lin, Ph.D. Department of Electrical Engineering Chang Gung University Email: wylin@mail.cgu.edu.tw Feb. 2013 Course Overview

More information

JTAG ICE.... User Guide

JTAG ICE.... User Guide JTAG ICE... User Guide Table of Contents Table of Contents Section 1 Introduction... 1-1 1.1 Features...1-1 1.2 JTAG ICE and the OCD Concept...1-2 1.2.4.1 Software Breakpoints...1-3 1.2.4.2 Hardware Breakpoints...1-3

More information

MicroBlaze Debug Module (MDM) v3.2

MicroBlaze Debug Module (MDM) v3.2 MicroBlaze Debug Module (MDM) v3.2 LogiCORE IP Product Guide Vivado Design Suite Table of Contents IP Facts Chapter 1: Overview Feature Summary..................................................................

More information

Linux. Reverse Debugging. Target Communication Framework. Nexus. Intel Trace Hub GDB. PIL Simulation CONTENTS

Linux. Reverse Debugging. Target Communication Framework. Nexus. Intel Trace Hub GDB. PIL Simulation CONTENTS Android NEWS 2016 AUTOSAR Linux Windows 10 Reverse ging Target Communication Framework ARM CoreSight Requirements Analysis Nexus Timing Tools Intel Trace Hub GDB Unit Testing PIL Simulation Infineon MCDS

More information

MX PIC24F Educational Module User Manual

MX PIC24F Educational Module User Manual MX PIC24F Educational Module User Manual Revision History Date Description Initial release. Table of Contents 1. Introduction... 3 1.1. Package Contents... 3 1.2. Key Hardware Features... 4 2. Hardware

More information

OpenSPARC T1 Processor

OpenSPARC T1 Processor OpenSPARC T1 Processor The OpenSPARC T1 processor is the first chip multiprocessor that fully implements the Sun Throughput Computing Initiative. Each of the eight SPARC processor cores has full hardware

More information

Monitoring of Intravenous Drip Rate

Monitoring of Intravenous Drip Rate Monitoring of Intravenous Drip Rate Vidyadhar V. Kamble, Prem C. Pandey, Chandrashekar P. Gadgil, and Dinesh S. Choudhary Abstract A drip rate meter, for monitoring intravenous infusion, is developed using

More information

Pre-tested System-on-Chip Design. Accelerates PLD Development

Pre-tested System-on-Chip Design. Accelerates PLD Development Pre-tested System-on-Chip Design Accelerates PLD Development March 2010 Lattice Semiconductor 5555 Northeast Moore Ct. Hillsboro, Oregon 97124 USA Telephone: (503) 268-8000 www.latticesemi.com 1 Pre-tested

More information

ontroller LSI with Built-in High- Performance Graphic Functions for Automotive Applications

ontroller LSI with Built-in High- Performance Graphic Functions for Automotive Applications C ontroller LSI with Built-in High- Performance Graphic Functions for Automotive Applications 1-chip solution for color display, video input and meter control with built-in highperformance CPU core FR81S

More information

AND8336. Design Examples of On Board Dual Supply Voltage Logic Translators. Prepared by: Jim Lepkowski ON Semiconductor. http://onsemi.

AND8336. Design Examples of On Board Dual Supply Voltage Logic Translators. Prepared by: Jim Lepkowski ON Semiconductor. http://onsemi. Design Examples of On Board Dual Supply Voltage Logic Translators Prepared by: Jim Lepkowski ON Semiconductor Introduction Logic translators can be used to connect ICs together that are located on the

More information

UNIVERSITY OF CALIFORNIA, DAVIS Department of Electrical and Computer Engineering. EEC180B Lab 7: MISP Processor Design Spring 1995

UNIVERSITY OF CALIFORNIA, DAVIS Department of Electrical and Computer Engineering. EEC180B Lab 7: MISP Processor Design Spring 1995 UNIVERSITY OF CALIFORNIA, DAVIS Department of Electrical and Computer Engineering EEC180B Lab 7: MISP Processor Design Spring 1995 Objective: In this lab, you will complete the design of the MISP processor,

More information

Design and Verification of Nine port Network Router

Design and Verification of Nine port Network Router Design and Verification of Nine port Network Router G. Sri Lakshmi 1, A Ganga Mani 2 1 Assistant Professor, Department of Electronics and Communication Engineering, Pragathi Engineering College, Andhra

More information

Hardware/Software Co-Design of a Java Virtual Machine

Hardware/Software Co-Design of a Java Virtual Machine Hardware/Software Co-Design of a Java Virtual Machine Kenneth B. Kent University of Victoria Dept. of Computer Science Victoria, British Columbia, Canada ken@csc.uvic.ca Micaela Serra University of Victoria

More information

The following is a summary of the key features of the ARM Injector:

The following is a summary of the key features of the ARM Injector: Intended Use The ARM Injector is an indispensable tool for engineers who work with JTAG enabled target systems based on an ARM processor core with Debug and EmbeddedICE capability. The ARM Injector provides

More information