A Generic Tool Set for Application Specific Processor Architectures Λ

Size: px
Start display at page:

Download "A Generic Tool Set for Application Specific Processor Architectures Λ"

Transcription

1 A Generic Tool Set for Application Specific Processor Architectures Λ Frank Engel, Johannes Nührenberg, Gerhard P. Fettweis Mannesmann Mobilfunk Chair for Mobile Communication Systems Dresden University of Technology, Dresden, Germany fengel, ABSTRACT Retargetability allows an easy adoption of a simulator on different processor architectures without a time consuming redesign of all tools. This is evident for an efficient HW/SW codesign. In this paper we describe a tool set for fast and easy simulation of processor architectures based on a retargetable simulator core. This approach helps to reduce the development time for designing and validating System-on-a-chip (SoC) applications based on a processor core. The use of ANSI C avoids an expensive development of a modeling language. Our main focus in this paper is on conceptual decisions we made and on the structure of the tool set. 1. INTRODUCTION The progress in chip technology allows designers to create more and more complex designs known as System-on-a-chip (SoC). This means, systems like printed circuit boards so far assembled of discrete units (e.g. RS232 interface, microcontroller, etc.) are now integrated on one silicon die. Synthesizable models of this units are required. Often they are configurable to allow a customization onto the application needs. Especially in the case of a processor core, modifying the instruction set leads to lower power consumption and smaller die size. These are major aspects in system design. Thus, the popularity of application-specific processors has raised constantly in recent years. Ways of modification are the customization of instruction set and architecture of existing standard cores [6] or the design of a new processor based on a modular instruction set architecture and customizable data paths [4]. Currently a lot of powerful tools like HDL simulators, silicon Λ This project is sponsored in part by the German NFS (DFG) under contract no. SFB358/TP6. compilers or physical layout generators are available. But all of these tools address the HW related part of the design flow. The research for an automatic development of SW tools like an assembler, a simulation model or even a simulation environment is still at the beginning. Hence, this part becomes more and more the critical path of the framework. In this paper we present a fast and retargetable simulator for processor architectures. Together with an also retargetable assembler one can easily customize an existing processor toward system needs or design a new core. In our example, the target processor for concept validation was the In/Out-Processor (IOP) of the M3-DSP chipset [12]. This processor supports the DSP core by managing data transfer, data pre- and post-processing and interrupthandling. The paper is structured as follows: In Section 2 we describe simulator concepts and explain basic decisions. The next section deals with a deeper description of main features. Section 4 resumes all parts to a design flow. Finally results are presented and an outlook on future work is given. 2. SIMULATOR CONCEPTS A lot of Simulators or even emulators from different vendors are available for a specific processor. But they focus on fixed processors ready to use on a printed board. As depicted above, in the field of SoC customizable HW models are required. Thus, even the simulators need to be customizable. Unfortunately the number of research projects dealing with retargetable simulators is limited. They all use a special developed modeling language. One example is MIMOLA developed at Dortmund University of Technology [1]. MIMOLA is a special language to describe the structure of a processor. It is similar to common hardware description languages (HDL) like VHDL or Verilog, but on a higher level of abstraction. The advantage is an easy generation of a synthesizable HDL description. Drawback is the low simulation speed similar to HDL simulators. To achieve fast simulations an extraction of a behavioral model is necessary. Unfortunately this extraction is restricted to a small class of fixed arithmetic DSPs. Another example is Sim-nML of IIT, a language for behavioral description of a processor [3]. This is an extension of nml of Target Compiler Technologies [11]. The language

2 Statement Performance Processor Models SW Oriented Models Instruction Cycle HW Oriented Models Accuracy Figure 1: Types of Processor Models allows the simulation of the instruction-pipeline. Although Sim-nML provides a compact description of a processor, the simulation speed is still limited [10]. The language LISA from Aachen University of Technology allows the modeling of the instruction set by dividing it into cycles [8]. The focus is on an exact pipeline representation. Thus, a cycle accurate simulation is implemented. An easier and more efficient way we decided for is the use of an existing language like ANSI C. There are a wide range of tools like compilers, linkers, debuggers for all platforms available. Furthermore it is a widely spread and well accepted programming language. We adapted it by defining a sufficient set of keywords for describing the instruction set and the processor behavior. A simulator concept strongly depends on the required accuracy of the processor model. There are two major groups: 1. HW oriented models are used for designing structural models. The modeling of physical characteristics like gate-delays is required. Based on these descriptions synthesis tools generate gate-level structures for fabrication. 2. SW oriented models are needed for designing application software. Three subgroups can be defined: (a) Statement level accuracy is needed for testing influences on the algorithms. The focus is on problems like arithmetic overflow etc. (b) Instruction level accuracy is used for simulating the processor instructions to obtain benchmarks. (c) Cycle level accuracy is used for investigating correct timing. Often these models are used as a golden reference to validate the HW model. As depicted in Figure 1 an increasing amount of modeling accuracy results in a decrease of simulation speed [14]. Hence, a tradeoff between maximum performance and the lowest acceptable accuracy level is required. A way to improve simulation speed is the use of compiled instead of interpreted simulation. Since the program for the target processor is a fixed sequence of instructions, processor actions like fetch and decode can be executed before the simulation run. They are translated into a sequence of simulator statements. This is possible as long as the program running on the target processor is not self modifying. But since the majority of embedded applications run firmware stored in a ROM or an EPROM this type of programs can be neglected. An exception are data dependent instructions like conditional jumps. No preprocessing is possible. During simulation a jump to the succeeding instruction sequence is necessary. For proof of concept our first target architecture was the IOP. As part of the M3-DSP chip set this processor is responsible for pre- and post-processing of data. The DSP-core itself is a highly parallel SIMD architecture which needs aligned data sets for full use of its processing power [12]. Thus one task of the IOP is the mapping of data streams onto aligned data sets for effective signal processing. Additionally this processor is responsible for scheduling of this datastream manipulation together with asynchronous events like interrupts in a multitasking manner. Hence to simulate correct response times a cycle accurate model with full control of the pipeline behavior is required. Thus our simulator classifies to the cycle-level-accurate group in Figure 1. To ensure platform independence we decided for Java and ANSI C as the programming and simulation languages. 3. DETAILS 3.1 Compiled Simulation The preprocessing of a compiled simulation is divided into the following steps (Figure 2): 1. Mapping of instructions and its parameters onto the corresponding simulator statements. This is equivalent to the decoding step within a processor. But instead of repetitive decoding each time the instruction is fetched, it is only done once. This is comparable to a reorganization of the instruction memory. 2. Building a sequence of simulator statements. This is possible since the common way of executing a program is the incrementing of the program counter. Thus the execution order of the instructions is known, except for conditional jumps. 3. Dividing into pipeline steps and merging with steps of other statements follows. This ensures the capability of simulating pipeline behavior. 3.2 Mapping of Concurrent Functionality Besides the instruction decoder and the data path a processor contains separate units like timer, interrupt logic etc. All these modules are running in parallel from the instruction execution. Hence a mechanism to integrate them into simulation is needed. We introduced pre-cycle- and post-cyclestatements. These statements serve as an interface. Parameters are the status of the processor and the resources (re-

3 Addr : 10 Instruction : Addr Statement Parameter ADD(0, 1); 0 ADD 0, 1 JMP(10); Step 1 1 JMP 10 Step 2 Step 3 NOP; 2 OR 2, 5 NOP; : : : AND(1, 7); 10 AND 1, 7 ADD C0(0, 1); JMP C0(10); ADD C1(0, 1); NOP C0; JMP C1(10); ADD C2(0, 1); NOP C0; NOP C1; JMP C2(10); AND C0(1, 7); Figure 2: Steps of Compiled Simulation gisters, flags, etc.). Furthermore it provides reference points for co-simulation with other tools (Section 6). One processor cycle is simulated as follows: 1. Pre-cycle functionality: The first interface is called. Due to the HW-supported multitasking in the IOP, this part is used to implementscheduling functionality. 2. Executing of the pipeline: During this stage pipeline steps of the currently running instructions are simulated. This represents the main activities in a simulation. 3. Post-cycle functionality: The second interface call is used to implement all autonomous modules (timer, etc.). 4. Update values: Each calculated result (like a register content) is temporary recorded in a change table. Now the writing of the new values is done. Since C is a sequential language this step emulates the concurrency of processes. The change table is also used to observe multiple manipulations of variables (e.g. the content of a register). A warning message is generated if more than one entry for updating the same variable is found. This feature is helpful during the development of a new processor architecture. 3.3 Processor Description To achieve retargetability the simulator is divided into two parts: 1. Architecture independent: This represents the frame of the simulator. It includes all routines for compiled simulation, handling of concurrent functionality, interfaces to debugger, etc. It is called the simulator base. 2. Architecture dependent: This part is derived from the Processor Description File (PD-File). A Java parser generates all necessary C routines from this information. The PD-File is divided into the following main categories: 1. Init: This section defines global values necessary for simulation. 2. Helpers: Here general C code can be directly included. This is useful for defining multiple used C routines and macros to describe the behavior of instructions. 3. Resources: This part defines all processor resources. The use of 'unsigned' C types is recommended to ensure a correct representation of bit vectors. 4. Intercycle: The concurrent functionalities are introduced here. Since they are directly linked into the simulator base they need to be implemented in ANSI C. 5. Instruction set: The definition of instructions follows. This section is divided into the following subsections: (a) Instruction: This represents the mnemonic name of the instruction. (b) Syntax: The next line describes a disassembly string used in the debugger. (c) Coding: This section defines the semantic of each bit in the byte-code. Values in square brackets are fixed. Bits represented by the same numeral are grouped into one parameter. Furthermore this number denotes the parameter order in the assembler mnemonic. E.g in Figure 3 denotes the second parameter Oy isa4bitvalue. Up to 9 parameters can be defined. (d) Behavior: This part describes the behavior of an instruction. Here ANSI C code is required. The cycles of the pipeline are divided by the key-word < cycle n >. Figure 3 gives an example on how to describe the behavior of an instruction.

4 *.asm iop.pd Generate Routines ins.h ins.c Src-Code PD-File C-Routines Assembler main.c Simulator-Base C-Compiler SimuC *.hex Byte-Code Precompile Program prg.h prg.c Debugger Simulation Figure 4: Simulation Flow < instruction > ADD < syntax > < coding > < behavior > ADD Ry.Oy Rx.Ox [0] [0] [110000] < cycle 0 > SET PC ADDR 1 INC PC(pc addr) < cycle 1 > SET PC ADDR 2 SHIFTER Y(b0, b1, parameter[2]) Figure 3: Instruction Example of a PD-File 3.4 Assembler Since the simulator requires a program in byte-code format, at least an assembler is required. This tool also needs to be retargetable. It uses the sections < instruction > and < coding > to generate a mapping scheme. All typical features of an assembler like, jump calculation, label resolving, generation of a listing, etc. are included. The tool comes with a graphical frontend for easy programming. 4. SIMULATION FLOW This section describes the complete tool set and the design flow as depicted in Figure 4. Assuming a complete processor description as a PD-File, the flow starts with writing assembler code. In a second step the architecture dependent part of the simulator is generated from the PD-File. After that, according to Section 3.1, the preprocessing step of the compiled simulation is executed. It uses the byte-code produced by the assembler. Now a standard C compiler is used to compile and link all three parts (simulator base, precompiled program and architecture dependent C routines) to an executable representing the simulator `SimuC'. Currently the free C debugger 'DDD' is used as a graphical frontend during simulation [13]. 5. RESULTS The tools set was developed on SUN workstations using the GNU compiler 'gcc', Java and the Java parser 'javacc'. Simulation speed up to 300,000 instructions per second are achieved. The performance is measured using different types of programs. Program Instructions per Second Arithmetic 201,000 OFDM 258,000 Transport 300,000 Table 1: Speed Results As depicted in Table 1 the lowest speed is achieved with programs only containing arithmetic and logical operations. Since the IOP can operate on variable bits within a data element this value results from cost intensive C modeling of bit operations. A better benchmark is the OFDM-based Hiperlan wireless ATM modem, the target application of the M3-DSP chipset [5]. This program represents a profile of arithmetic/logical, transport and control instructions the IOP is designed for. With a benchmark mostly consisting of transport instructions up to 300,000 instructions per second are achieved. This is comparable to results of other retargetable simulators (240, ,000 [7], 160,000 [9]).

5 6. SUMMARY AND FUTURE WORK In this paper we presented an easy approach for a retargetable processor simulator together with an assembler. Instead of designing a new modeling language to describe the processor architecture we choose ANSI C and Java. The advantage is a great variety of reliable tools like a compiler and the wide spread acceptance of these languages. The processor modeling is controlled by a set of keywords and constructs linked with self written C code (see Section 3.3). The user can still fully explore the capacity of ANSI C. Java is used for parsing the target program and the processor description. Further investigations will deal with the design of a graphical frontend to replace the currently used DDD frontend. Also required is an interface for co-simulation with other tools like VHDL simulators or evaluation boards to integrate it into a complete system modeling environment [2]. [11] Target Compiler Technologies. The Chess/Checker Retargetable DSP Environment. Hompage. [12] M. Weiß, F. Engel, and G. P. Fettweis. A New Scalable DSP Architecture for System on Chip (soc) Domains. In IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), [13] A. Zeller and D. Lütkehaus. DDD-A Free Graphical Front-End for UNIX Debuggers. Technical report, Braunschweig University of Technology, Informatik-Bericht No [14] V. Zivojnovic. DSP Processor/Compiler Co-Design: A Quantitative Approach. PhD thesis, Aachen University of Technology, REFERENCES [1] S. Bashford, U. Bieker, B. Harking, R. Leupers, P. Marwedela, A. Neumann, and D. Voggenauer. The MIMOLA Language Version 4.1. Technical report, University of Dortmund, [2] M. Benz. The Protocol Engine Project. In Workshop on System Design Automation (SDA), Mar [3] Cadence Research Center of Computer Science at the Indian Institute of Technology. Hompage. [4] G. Fettweis. DSP Cores for Mobile Communications: Where are we going? In IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), volume I, pages , [5] G. P. Fettweis, M. Weiss, W. Drescher, U. Walther, F. Engel, and S. Kobayashi. Breaking New Grounds Over 3000 MOPS: A Broadband Mobile Multimedia Modem DSP. In International Conference on Signal Processing, Applications & Technology (ICSPAT), pages , [6] K. Küοcükοcakar. An ASIP Design Methodology for Embedded Systems. In Workshop on Hardware/Software Codesign (CODES), [7] R. Leupers, J. Elste, and B. Landwehr. Generation of Interpretive and Compiled Instructions Set Simulators. In Asia and South Pacific Design Automation Conference (ASP-DAC), [8] S. Pees, A. Hoffmann, V. Zivojnovic, and H. Meyr. LISA - Machine Description Language for Cycle- Models of Programmable DSP Architectures. In Design Automation Conference (DAC), June [9] S. Pees,V.Zivojnovic, A. Ropers, and H. Meyr. Fast Simulation of the TI TMS320C20X DSP. In International Conference on Signal Processing, Applications & Technology (ICSPAT), [10] V. Rajesh. A Generic Aproach to Performance Modeling and Its Application to Simulator Generator. Master's thesis, Indian Institute of Technologies, 1998.

Architecture Implementation Using the Machine Description Language LISA

Architecture Implementation Using the Machine Description Language LISA Architecture Implementation Using the Machine Description Language LISA Oliver Schliebusch, Andreas Hoffmann, Achim Nohl, Gunnar Braun and Heinrich Meyr Integrated Signal Processing Systems, RWTH Aachen,

More information

However, no results are published that indicate the applicability for cycle-accurate simulation purposes. The language RADL [12] is derived from earli

However, no results are published that indicate the applicability for cycle-accurate simulation purposes. The language RADL [12] is derived from earli Retargeting of Compiled Simulators for Digital Signal Processors Using a Machine Description Language Stefan Pees, Andreas Homann, Heinrich Meyr Integrated Signal Processing Systems, RWTH Aachen pees[homann,meyr]@ert.rwth-aachen.de

More information

Hardware / Software Co-design of a SIMD-DSP-based DVB-T Receiver

Hardware / Software Co-design of a SIMD-DSP-based DVB-T Receiver Hardware / Software Co-design of a SIMD-DSP-based DVB-T Receiver H. Seidel, G. Cichon, P. Robelly, M. Bronzel, G. Fettweis Mobile Communications Chair, TU-Dresden D-01062 Dresden, Germany seidel@ifn.et.tu-dresden.de

More information

Design of Embedded DSP Processors Unit 7: Programming toolchain. 9/26/2017 Unit 7 of TSEA H1 1

Design of Embedded DSP Processors Unit 7: Programming toolchain. 9/26/2017 Unit 7 of TSEA H1 1 Design of Embedded DSP Processors Unit 7: Programming toolchain 9/26/2017 Unit 7 of TSEA26 2017 H1 1 Toolchain introduction There are two kinds of tools 1.The ASIP design tool for HW designers Frontend

More information

A Novel Methodology for the Design of Application-Specific Instruction-Set Processors (ASIPs) Using a Machine Description Language

A Novel Methodology for the Design of Application-Specific Instruction-Set Processors (ASIPs) Using a Machine Description Language 1338 IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 20, NO. 11, NOVEMBER 2001 A Novel Methodology for the Design of Application-Specific Instruction-Set Processors

More information

VODAFONE CHAIR MOBILE COMM. SYSTEMS

VODAFONE CHAIR MOBILE COMM. SYSTEMS VODAFONE CHAIR MOBILE COMM. SYSTEMS Founded in 1994 by Mannesmann Mobilfunk DSP PLATFORM CONCEPT Focus on Wireless Communications Technology ~20 PhD Students, ~10 Masters Students Slide 1 Frank Engel NICTA

More information

RTL Coding General Concepts

RTL Coding General Concepts RTL Coding General Concepts Typical Digital System 2 Components of a Digital System Printed circuit board (PCB) Embedded d software microprocessor microcontroller digital signal processor (DSP) ASIC Programmable

More information

DSP PLATFORM CONCEPT. Frank Engel. NICTA (ERTOS) FRANK ENGEL 19/05/2004 1

DSP PLATFORM CONCEPT. Frank Engel. NICTA (ERTOS) FRANK ENGEL 19/05/2004 1 DSP PLATFORM CONCEPT Frank Engel NICTA (ERTOS) FRANK ENGEL 19/05/2004 1 SHORT CV Study Electrical Engineering, Dresden Univ. of Tech. (1991 1997) PhD at Vodafone Chair Mobile

More information

The SOCks Design Platform. Johannes Grad

The SOCks Design Platform. Johannes Grad The SOCks Design Platform Johannes Grad System-on-Chip (SoC) Design Combines all elements of a computer onto a single chip Microprocessor Memory Address- and Databus Periphery Application specific logic

More information

Automatic Generation of JTAG Interface and Debug Mechanism for ASIPs

Automatic Generation of JTAG Interface and Debug Mechanism for ASIPs Automatic Generation of JTAG Interface and Debug Mechanism for ASIPs Oliver Schliebusch ISS, RWTH-Aachen 52056 Aachen, Germany +49-241-8027884 schliebu@iss.rwth-aachen.de David Kammler ISS, RWTH-Aachen

More information

Universität Dortmund. ARM Architecture

Universität Dortmund. ARM Architecture ARM Architecture The RISC Philosophy Original RISC design (e.g. MIPS) aims for high performance through o reduced number of instruction classes o large general-purpose register set o load-store architecture

More information

the instruction semantics and their formal representation, such as admissible operands, binary representation and the assembly syntax. In the timing m

the instruction semantics and their formal representation, such as admissible operands, binary representation and the assembly syntax. In the timing m LISA { Machine Description Language for Cycle-Accurate Models of Programmable DSP Architectures Stefan Pees 1, Andreas Homann 1, Vojin Zivojnovic 2, Heinrich Meyr 1 1 Integrated Signal Processing Systems

More information

Microprocessors and Microcontrollers. Assignment 1:

Microprocessors and Microcontrollers. Assignment 1: Microprocessors and Microcontrollers Assignment 1: 1. List out the mass storage devices and their characteristics. 2. List the current workstations available in the market for graphics and business applications.

More information

An Executable Intermediate Representation for Retargetable Compilation and High-Level Code Optimization

An Executable Intermediate Representation for Retargetable Compilation and High-Level Code Optimization An Executable Intermediate Representation for Retargetable Compilation and High-Level Code Optimization Rainer Leupers, Oliver Wahlen, Manuel Hohenauer, Tim Kogel Aachen University of Technology (RWTH)

More information

A framework for automatic generation of audio processing applications on a dual-core system

A framework for automatic generation of audio processing applications on a dual-core system A framework for automatic generation of audio processing applications on a dual-core system Etienne Cornu, Tina Soltani and Julie Johnson etienne_cornu@amis.com, tina_soltani@amis.com, julie_johnson@amis.com

More information

ARM ARCHITECTURE. Contents at a glance:

ARM ARCHITECTURE. Contents at a glance: UNIT-III ARM ARCHITECTURE Contents at a glance: RISC Design Philosophy ARM Design Philosophy Registers Current Program Status Register(CPSR) Instruction Pipeline Interrupts and Vector Table Architecture

More information

Advanced Parallel Architecture Lesson 3. Annalisa Massini /2015

Advanced Parallel Architecture Lesson 3. Annalisa Massini /2015 Advanced Parallel Architecture Lesson 3 Annalisa Massini - Von Neumann Architecture 2 Two lessons Summary of the traditional computer architecture Von Neumann architecture http://williamstallings.com/coa/coa7e.html

More information

Cycle Accurate Binary Translation for Simulation Acceleration in Rapid Prototyping of SoCs

Cycle Accurate Binary Translation for Simulation Acceleration in Rapid Prototyping of SoCs Cycle Accurate Binary Translation for Simulation Acceleration in Rapid Prototyping of SoCs Jürgen Schnerr 1, Oliver Bringmann 1, and Wolfgang Rosenstiel 1,2 1 FZI Forschungszentrum Informatik Haid-und-Neu-Str.

More information

Chapter 1 Computer System Overview

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

More information

WS_CCESSH-OUT-v1.00.doc Page 1 of 8

WS_CCESSH-OUT-v1.00.doc Page 1 of 8 Course Name: Course Code: Course Description: System Development with CrossCore Embedded Studio (CCES) and the ADI SHARC Processor WS_CCESSH This is a practical and interactive course that is designed

More information

Appendix SystemC Product Briefs. All product claims contained within are provided by the respective supplying company.

Appendix SystemC Product Briefs. All product claims contained within are provided by the respective supplying company. Appendix SystemC Product Briefs All product claims contained within are provided by the respective supplying company. Blue Pacific Computing BlueWave Blue Pacific s BlueWave is a simulation GUI, including

More information

Digital System Design Lecture 2: Design. Amir Masoud Gharehbaghi

Digital System Design Lecture 2: Design. Amir Masoud Gharehbaghi Digital System Design Lecture 2: Design Amir Masoud Gharehbaghi amgh@mehr.sharif.edu Table of Contents Design Methodologies Overview of IC Design Flow Hardware Description Languages Brief History of HDLs

More information

EE4380 Microprocessor Design Project

EE4380 Microprocessor Design Project EE4380 Microprocessor Design Project Fall 2002 Class 1 Pari vallal Kannan Center for Integrated Circuits and Systems University of Texas at Dallas Introduction What is a Microcontroller? Microcontroller

More information

DSPACE: LISA Methodology

DSPACE: LISA Methodology DSPACE: LISA Methodology Maximilian Odendahl ESA DSP Day, Noordwjik, 28.8.2012 Institute for Communication Technologies and Embedded Systems Outline 2 Introduction DSPACE Requirements LISA Methodology

More information

Chapter 10 Objectives

Chapter 10 Objectives Chapter 10 Topics in Embedded Systems Chapter 10 Objectives Understand the ways in which embedded systems differ from general purpose systems. Be able to describe the processes and practices of embedded

More information

DSP Platforms Lab (AD-SHARC) Session 05

DSP Platforms Lab (AD-SHARC) Session 05 University of Miami - Frost School of Music DSP Platforms Lab (AD-SHARC) Session 05 Description This session will be dedicated to give an introduction to the hardware architecture and assembly programming

More information

A Universal Technique for Fast and Flexible Instruction-Set Architecture Simulation

A Universal Technique for Fast and Flexible Instruction-Set Architecture Simulation A Universal Technique for Fast and Flexible Instruction-Set Architecture Simulation Achim Nohl, Gunnar Braun, Oliver Schliebusch, Rainer Leupers, Heinrich Meyr Integrated Signal Processing Systems Templergraben

More information

EEL 5722C Field-Programmable Gate Array Design

EEL 5722C Field-Programmable Gate Array Design EEL 5722C Field-Programmable Gate Array Design Lecture 19: Hardware-Software Co-Simulation* Prof. Mingjie Lin * Rabi Mahapatra, CpSc489 1 How to cosimulate? How to simulate hardware components of a mixed

More information

Introduction to Embedded Systems

Introduction to Embedded Systems Introduction to Embedded Systems Outline Embedded systems overview What is embedded system Characteristics Elements of embedded system Trends in embedded system Design cycle 2 Computing Systems Most of

More information

Chapter 1 Computer System Overview

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

More information

LX4180. LMI: Local Memory Interface CI: Coprocessor Interface CEI: Custom Engine Interface LBC: Lexra Bus Controller

LX4180. LMI: Local Memory Interface CI: Coprocessor Interface CEI: Custom Engine Interface LBC: Lexra Bus Controller System-on-Chip 32-bit Embedded Processor LX4180 Product Brief R3000-class RISC Processor Core: Executes MIPS I instruction set*. Offers designers a familiar programming environment and choice of third

More information

Introduction ADSP-2100 FAMILY OF PROCESSORS

Introduction ADSP-2100 FAMILY OF PROCESSORS Introduction 1 1.1 OVERVIEW This book presents a compilation of routines for a variety of common digital signal processing applications based on the ADSP-2100 DSP microprocessor family. These routines

More information

1. What is Microprocessor? Give the power supply & clock frequency of 8085?

1. What is Microprocessor? Give the power supply & clock frequency of 8085? 1. What is Microprocessor? Give the power supply & clock frequency of 8085? A microprocessor is a multipurpose, programmable logic device that reads binary instructions from a storage device called memory

More information

SYSTEMS ON CHIP (SOC) FOR EMBEDDED APPLICATIONS

SYSTEMS ON CHIP (SOC) FOR EMBEDDED APPLICATIONS SYSTEMS ON CHIP (SOC) FOR EMBEDDED APPLICATIONS Embedded System System Set of components needed to perform a function Hardware + software +. Embedded Main function not computing Usually not autonomous

More information

Question Bank Part-A UNIT I- THE 8086 MICROPROCESSOR 1. What is microprocessor? A microprocessor is a multipurpose, programmable, clock-driven, register-based electronic device that reads binary information

More information

VLIW DSP Processor Design for Mobile Communication Applications. Contents crafted by Dr. Christian Panis Catena Radio Design

VLIW DSP Processor Design for Mobile Communication Applications. Contents crafted by Dr. Christian Panis Catena Radio Design VLIW DSP Processor Design for Mobile Communication Applications Contents crafted by Dr. Christian Panis Catena Radio Design Agenda Trends in mobile communication Architectural core features with significant

More information

Educational Simulation of the RiSC Processor

Educational Simulation of the RiSC Processor Educational Simulation of the RiSC Processor Marc Jaumain BEAMS department, Bio Electro and Mechanical Systems, Université Libre de Bruxelles, Belgium mjaumain@ulb.ac.be Michel Osée 1, Aliénor Richard

More information

2 MARKS Q&A 1 KNREDDY UNIT-I

2 MARKS Q&A 1 KNREDDY UNIT-I 2 MARKS Q&A 1 KNREDDY UNIT-I 1. What is bus; list the different types of buses with its function. A group of lines that serves as a connecting path for several devices is called a bus; TYPES: ADDRESS BUS,

More information

ESE Back End 2.0. D. Gajski, S. Abdi. (with contributions from H. Cho, D. Shin, A. Gerstlauer)

ESE Back End 2.0. D. Gajski, S. Abdi. (with contributions from H. Cho, D. Shin, A. Gerstlauer) ESE Back End 2.0 D. Gajski, S. Abdi (with contributions from H. Cho, D. Shin, A. Gerstlauer) Center for Embedded Computer Systems University of California, Irvine http://www.cecs.uci.edu 1 Technology advantages

More information

Software-Level Power Estimation

Software-Level Power Estimation Chapter 3 Software-Level Power Estimation The main goal of this chapter is to define a methodology for the static and dynamic estimation of the power consumption at the software-level to be integrated

More information

DQ8051. Revolutionary Quad-Pipelined Ultra High performance 8051 Microcontroller Core

DQ8051. Revolutionary Quad-Pipelined Ultra High performance 8051 Microcontroller Core DQ8051 Revolutionary Quad-Pipelined Ultra High performance 8051 Microcontroller Core COMPANY OVERVIEW Digital Core Design is a leading IP Core provider and a System-on-Chip design house. The company was

More information

Comparison of models. Peter Marwedel Informatik 12, TU Dortmund, Germany 2010/11/07. technische universität dortmund

Comparison of models. Peter Marwedel Informatik 12, TU Dortmund, Germany 2010/11/07. technische universität dortmund 12 Comparison of models Peter Marwedel Informatik 12, TU Dortmund, Germany Graphics: Alexandra Nolte, Gesine Marwedel, 2003 These slides use Microsoft clip arts. Microsoft copyright restrictions apply.

More information

CSC 553 Operating Systems

CSC 553 Operating Systems CSC 553 Operating Systems Lecture 1- Computer System Overview Operating System Exploits the hardware resources of one or more processors Provides a set of services to system users Manages secondary memory

More information

A Rapid Prototyping Methodology for Algorithm Development in Wireless Communications

A Rapid Prototyping Methodology for Algorithm Development in Wireless Communications A Rapid Prototyping Methodology for Algorithm Development in Wireless Communications Abstract: Rapid prototyping has become an important means to verify the performance and feasibility of algorithms and

More information

Chapter 13. The ISA of a simplified DLX Why use abstractions?

Chapter 13. The ISA of a simplified DLX Why use abstractions? Chapter 13 The ISA of a simplified DLX In this chapter we describe a specification of a simple microprocessor called the simplified DLX. The specification is called an instruction set architecture (ISA).

More information

09 - The toolchain. Andreas Ehliar. October 6, 2015

09 - The toolchain. Andreas Ehliar. October 6, 2015 October 6, 2015 Todays lecture DSP Toolchain (assembler, compiler, linker, simulator, debugger) DSP Firmware Toolchain Assembler Linker Compiler Simulator Debugger Assembler Simple explanation Read assembler

More information

Energy Estimation Based on Hierarchical Bus Models for Power-Aware Smart Cards

Energy Estimation Based on Hierarchical Bus Models for Power-Aware Smart Cards Energy Estimation Based on Hierarchical Bus Models for Power-Aware Smart Cards U. Neffe, K. Rothbart, Ch. Steger, R. Weiss Graz University of Technology Inffeldgasse 16/1 8010 Graz, AUSTRIA {neffe, rothbart,

More information

fakultät für informatik informatik 12 technische universität dortmund Modeling levels Peter Marwedel TU Dortmund, Informatik /11/07

fakultät für informatik informatik 12 technische universität dortmund Modeling levels Peter Marwedel TU Dortmund, Informatik /11/07 12 Peter Marwedel TU Dortmund, Informatik 12 2009/11/07 Graphics: Alexandra Nolte, Gesine Marwedel, 2003 Modeling levels Levels of hardware modeling Possible set of levels (others exist) System level Algorithmic

More information

ADSP-2100A DSP microprocessor with off-chip Harvard architecture. ADSP-2101 DSP microcomputer with on-chip program and data memory

ADSP-2100A DSP microprocessor with off-chip Harvard architecture. ADSP-2101 DSP microcomputer with on-chip program and data memory Introduction. OVERVIEW This book is the second volume of digital signal processing applications based on the ADSP-00 DSP microprocessor family. It contains a compilation of routines for a variety of common

More information

A Methodology for Accurate Performance Evaluation in Architecture Exploration

A Methodology for Accurate Performance Evaluation in Architecture Exploration A Methodology for Accurate Performance Evaluation in Architecture Eploration George Hadjiyiannis ghi@caa.lcs.mit.edu Pietro Russo pietro@caa.lcs.mit.edu Srinivas Devadas devadas@caa.lcs.mit.edu Laboratory

More information

COMPLEX EMBEDDED SYSTEMS

COMPLEX EMBEDDED SYSTEMS COMPLEX EMBEDDED SYSTEMS Embedded System Design and Architectures Summer Semester 2012 System and Software Engineering Prof. Dr.-Ing. Armin Zimmermann Contents System Design Phases Architecture of Embedded

More information

NISC Application and Advantages

NISC Application and Advantages NISC Application and Advantages Daniel D. Gajski Mehrdad Reshadi Center for Embedded Computer Systems University of California, Irvine Irvine, CA 92697-3425, USA {gajski, reshadi}@cecs.uci.edu CECS Technical

More information

Proceedings of the Workshop on OCL and Textual Modelling (OCL 2011)

Proceedings of the Workshop on OCL and Textual Modelling (OCL 2011) Electronic Communications of the EASST Volume 36 (2011) Proceedings of the Workshop on OCL and Textual Modelling (OCL 2011) An Architecture Description Language for Embedded Hardware Platforms Guillaume

More information

Configurable and Extensible Processors Change System Design. Ricardo E. Gonzalez Tensilica, Inc.

Configurable and Extensible Processors Change System Design. Ricardo E. Gonzalez Tensilica, Inc. Configurable and Extensible Processors Change System Design Ricardo E. Gonzalez Tensilica, Inc. Presentation Overview Yet Another Processor? No, a new way of building systems Puts system designers in the

More information

DESIGN OF AN APPLICATION SPECIFIC INSTRUCTION SET PROCESSOR USING LISA. Master of Technology. Umakanta Nanda

DESIGN OF AN APPLICATION SPECIFIC INSTRUCTION SET PROCESSOR USING LISA. Master of Technology. Umakanta Nanda DESIGN OF AN APPLICATION SPECIFIC INSTRUCTION SET PROCESSOR USING LISA A thesis submitted in partial fulfillment of the requirements for the degree of Master of Technology in Electronics and Communication

More information

Computer Architecture

Computer Architecture Computer Architecture Slide Sets WS 2013/2014 Prof. Dr. Uwe Brinkschulte M.Sc. Benjamin Betting Part 3 Fundamentals in Computer Architecture Computer Architecture Part 3 page 1 of 55 Prof. Dr. Uwe Brinkschulte,

More information

Implementation of DSP Algorithms

Implementation of DSP Algorithms Implementation of DSP Algorithms Main frame computers Dedicated (application specific) architectures Programmable digital signal processors voice band data modem speech codec 1 PDSP and General-Purpose

More information

Implementation of Breakpoints in GDB for Sim-nML based Architectures

Implementation of Breakpoints in GDB for Sim-nML based Architectures Implementation of Breakpoints in GDB for Sim-nML based Architectures CS499 Report by Amit Gaurav Y3036 under the guidance of Prof. Rajat Moona Department of Computer Science and Engineering Indian Institute

More information

Job Posting (Aug. 19) ECE 425. ARM7 Block Diagram. ARM Programming. Assembly Language Programming. ARM Architecture 9/7/2017. Microprocessor Systems

Job Posting (Aug. 19) ECE 425. ARM7 Block Diagram. ARM Programming. Assembly Language Programming. ARM Architecture 9/7/2017. Microprocessor Systems Job Posting (Aug. 19) ECE 425 Microprocessor Systems TECHNICAL SKILLS: Use software development tools for microcontrollers. Must have experience with verification test languages such as Vera, Specman,

More information

are Softw Instruction Set Architecture Microarchitecture are rdw

are Softw Instruction Set Architecture Microarchitecture are rdw Program, Application Software Programming Language Compiler/Interpreter Operating System Instruction Set Architecture Hardware Microarchitecture Digital Logic Devices (transistors, etc.) Solid-State Physics

More information

structure syntax different levels of abstraction

structure syntax different levels of abstraction This and the next lectures are about Verilog HDL, which, together with another language VHDL, are the most popular hardware languages used in industry. Verilog is only a tool; this course is about digital

More information

Here is a list of lecture objectives. They are provided for you to reflect on what you are supposed to learn, rather than an introduction to this

Here is a list of lecture objectives. They are provided for you to reflect on what you are supposed to learn, rather than an introduction to this This and the next lectures are about Verilog HDL, which, together with another language VHDL, are the most popular hardware languages used in industry. Verilog is only a tool; this course is about digital

More information

Design Progression With VHDL Helps Accelerate The Digital System Designs

Design Progression With VHDL Helps Accelerate The Digital System Designs Fourth LACCEI International Latin American and Caribbean Conference for Engineering and Technology (LACCET 2006) Breaking Frontiers and Barriers in Engineering: Education, Research and Practice 21-23 June

More information

TSEA 26 exam page 1 of Examination. Design of Embedded DSP Processors, TSEA26 Date 8-12, G34, G32, FOI hus G

TSEA 26 exam page 1 of Examination. Design of Embedded DSP Processors, TSEA26 Date 8-12, G34, G32, FOI hus G TSEA 26 exam page 1 of 10 20171019 Examination Design of Embedded DSP Processors, TSEA26 Date 8-12, 2017-10-19 Room G34, G32, FOI hus G Time 08-12AM Course code TSEA26 Exam code TEN1 Design of Embedded

More information

FPGAs in a Nutshell - Introduction to Embedded Systems-

FPGAs in a Nutshell - Introduction to Embedded Systems- FPGAs in a Nutshell - Introduction to Embedded Systems- Dipl.- Ing. Falk Salewski Lehrstuhl Informatik RWTH Aachen salewski@informatik.rwth-aachen.de Winter term 6/7 Contents History FPGA architecture

More information

ICS 252 Introduction to Computer Design

ICS 252 Introduction to Computer Design ICS 252 Introduction to Computer Design Lecture 3 Fall 2006 Eli Bozorgzadeh Computer Science Department-UCI System Model According to Abstraction level Architectural, logic and geometrical View Behavioral,

More information

Low-Energy DSP Code Generation Using a Genetic Algorithm

Low-Energy DSP Code Generation Using a Genetic Algorithm Low-Energy DSP Code Generation Using a Genetic Algorithm Markus Lorenz, Rainer Leupers, Peter Marwedel Dept. of Computer Science 12 University of Dortmund, Germany email: lorenz, leupers, marwedel @LS12.cs.uni-dortmund.de

More information

ECE332, Week 2, Lecture 3. September 5, 2007

ECE332, Week 2, Lecture 3. September 5, 2007 ECE332, Week 2, Lecture 3 September 5, 2007 1 Topics Introduction to embedded system Design metrics Definitions of general-purpose, single-purpose, and application-specific processors Introduction to Nios

More information

ECE332, Week 2, Lecture 3

ECE332, Week 2, Lecture 3 ECE332, Week 2, Lecture 3 September 5, 2007 1 Topics Introduction to embedded system Design metrics Definitions of general-purpose, single-purpose, and application-specific processors Introduction to Nios

More information

Computer Hardware Requirements for ERTSs: Microprocessors & Microcontrollers

Computer 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 information

MICROPROCESSOR AND MICROCONTROLLER BASED SYSTEMS

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

More information

Parameterized System Design

Parameterized System Design Parameterized System Design Tony D. Givargis, Frank Vahid Department of Computer Science and Engineering University of California, Riverside, CA 92521 {givargis,vahid}@cs.ucr.edu Abstract Continued growth

More information

Assembly Language: Overview!

Assembly Language: Overview! Assembly Language: Overview! 1 Goals of this Lecture! Help you learn:" The basics of computer architecture" The relationship between C and assembly language" IA-32 assembly language, through an example"

More information

Microcontrollers. Microcontroller

Microcontrollers. 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 information

IMPLEMENTATION OF SOC CORE FOR IOT ENGINE

IMPLEMENTATION OF SOC CORE FOR IOT ENGINE IMPLEMENTATION OF SOC CORE FOR IOT ENGINE P.Jennifer 1 and S.Ramasamy 2 1 ME. VLSI Design, RMK Engineering College, Anna University 2 Professor, Department of ECE, RMK Engineering College, Anna University

More information

Overview of Embedded Systems in Medical Applications

Overview of Embedded Systems in Medical Applications of Embedded Systems in Medical Applications 1 Embedded Systems Simplistic definition Embedded System Shorthand for Embedded Processor System Embed microprocessor + fixed program in non-computer system

More information

A Deterministic Flow Combining Virtual Platforms, Emulation, and Hardware Prototypes

A Deterministic Flow Combining Virtual Platforms, Emulation, and Hardware Prototypes A Deterministic Flow Combining Virtual Platforms, Emulation, and Hardware Prototypes Presented at Design Automation Conference (DAC) San Francisco, CA, June 4, 2012. Presented by Chuck Cruse FPGA Hardware

More information

Multi Cycle Implementation Scheme for 8 bit Microprocessor by VHDL

Multi Cycle Implementation Scheme for 8 bit Microprocessor by VHDL Multi Cycle Implementation Scheme for 8 bit Microprocessor by VHDL Sharmin Abdullah, Nusrat Sharmin, Nafisha Alam Department of Electrical & Electronic Engineering Ahsanullah University of Science & Technology

More information

Memory Systems IRAM. Principle of IRAM

Memory Systems IRAM. Principle of IRAM Memory Systems 165 other devices of the module will be in the Standby state (which is the primary state of all RDRAM devices) or another state with low-power consumption. The RDRAM devices provide several

More information

An ASIP Design Methodology for Embedded Systems

An ASIP Design Methodology for Embedded Systems An ASIP Design Methodology for Embedded Systems Abstract A well-known challenge during processor design is to obtain the best possible results for a typical target application domain that is generally

More information

HW/SW Co-design. Design of Embedded Systems Jaap Hofstede Version 3, September 1999

HW/SW Co-design. Design of Embedded Systems Jaap Hofstede Version 3, September 1999 HW/SW Co-design Design of Embedded Systems Jaap Hofstede Version 3, September 1999 Embedded system Embedded Systems is a computer system (combination of hardware and software) is part of a larger system

More information

THE OPTIUM MICROPROCESSOR AN FPGA-BASED IMPLEMENTATION

THE OPTIUM MICROPROCESSOR AN FPGA-BASED IMPLEMENTATION THE OPTIUM MICROPROCESSOR AN FPGA-BASED IMPLEMENTATION Radu Balaban Computer Science student, Technical University of Cluj Napoca, Romania horizon3d@yahoo.com Horea Hopârtean Computer Science student,

More information

Xtensa. Andrew Mihal 290A Fall 2002

Xtensa. Andrew Mihal 290A Fall 2002 Xtensa Andrew Mihal 290A Fall 2002 1 Outline Introduction Single processor Xtensa system architecture Exporting a programming model for single processor Multiple processor system architecture Exporting

More information

Synthesis-driven Exploration of Pipelined Embedded Processors Λ

Synthesis-driven Exploration of Pipelined Embedded Processors Λ Synthesis-driven Exploration of Pipelined Embedded Processors Λ Prabhat Mishra Arun Kejariwal Nikil Dutt pmishra@cecs.uci.edu arun kejariwal@ieee.org dutt@cecs.uci.edu Architectures and s for Embedded

More information

CHAPTER ASSEMBLY LANGUAGE PROGRAMMING

CHAPTER ASSEMBLY LANGUAGE PROGRAMMING CHAPTER 2 8051 ASSEMBLY LANGUAGE PROGRAMMING Registers Register are used to store information temporarily: A byte of data to be processed An address pointing to the data to be fetched The vast majority

More information

Development Tools. 8-Bit Development Tools. Development Tools. AVR Development Tools

Development Tools. 8-Bit Development Tools. Development Tools. AVR Development Tools Development Tools AVR Development Tools This section describes some of the development tools that are available for the 8-bit AVR family. Atmel AVR Assembler Atmel AVR Simulator IAR ANSI C-Compiler, Assembler,

More information

Hardware/Software Co-design

Hardware/Software Co-design Hardware/Software Co-design Zebo Peng, Department of Computer and Information Science (IDA) Linköping University Course page: http://www.ida.liu.se/~petel/codesign/ 1 of 52 Lecture 1/2: Outline : an Introduction

More information

CHAPTER 1 INTRODUCTION

CHAPTER 1 INTRODUCTION CHAPTER 1 INTRODUCTION Rapid advances in integrated circuit technology have made it possible to fabricate digital circuits with large number of devices on a single chip. The advantages of integrated circuits

More information

Compiling and Interpreting Programming. Overview of Compilers and Interpreters

Compiling and Interpreting Programming. Overview of Compilers and Interpreters Copyright R.A. van Engelen, FSU Department of Computer Science, 2000 Overview of Compilers and Interpreters Common compiler and interpreter configurations Virtual machines Integrated programming environments

More information

Cadence SystemC Design and Verification. NMI FPGA Network Meeting Jan 21, 2015

Cadence SystemC Design and Verification. NMI FPGA Network Meeting Jan 21, 2015 Cadence SystemC Design and Verification NMI FPGA Network Meeting Jan 21, 2015 The High Level Synthesis Opportunity Raising Abstraction Improves Design & Verification Optimizes Power, Area and Timing for

More information

V8-uRISC 8-bit RISC Microprocessor AllianceCORE Facts Core Specifics VAutomation, Inc. Supported Devices/Resources Remaining I/O CLBs

V8-uRISC 8-bit RISC Microprocessor AllianceCORE Facts Core Specifics VAutomation, Inc. Supported Devices/Resources Remaining I/O CLBs V8-uRISC 8-bit RISC Microprocessor February 8, 1998 Product Specification VAutomation, Inc. 20 Trafalgar Square Nashua, NH 03063 Phone: +1 603-882-2282 Fax: +1 603-882-1587 E-mail: sales@vautomation.com

More information

ARM Processors for Embedded Applications

ARM Processors for Embedded Applications ARM Processors for Embedded Applications Roadmap for ARM Processors ARM Architecture Basics ARM Families AMBA Architecture 1 Current ARM Core Families ARM7: Hard cores and Soft cores Cache with MPU or

More information

Designing Programmable Platforms: From ASIC to ASIP

Designing Programmable Platforms: From ASIC to ASIP Designing Programmable Platforms: From ASIC to ASIP MPSoC 2005 Heinrich Meyr CoWare Inc., San Jose and Integrated Signal Processing Systems (ISS), Aachen University of Technology, Germany Agenda Facts

More information

EMBEDDED SYSTEM FOR VIDEO AND SIGNAL PROCESSING

EMBEDDED SYSTEM FOR VIDEO AND SIGNAL PROCESSING EMBEDDED SYSTEM FOR VIDEO AND SIGNAL PROCESSING Slavy Georgiev Mihov 1, Dimitar Stoykov Dimitrov 2, Krasimir Angelov Stoyanov 3, Doycho Dimitrov Doychev 4 1, 4 Faculty of Electronic Engineering and Technologies,

More information

FIFTH SEMESTER DIPLOMA EXAMINATION IN ENGINEERING/ TECHNOLOGY-MARCH 2014 EMBEDDED SYSTEMS (Common for CT,CM) [Time: 3 hours] (Maximum marks : 100)

FIFTH SEMESTER DIPLOMA EXAMINATION IN ENGINEERING/ TECHNOLOGY-MARCH 2014 EMBEDDED SYSTEMS (Common for CT,CM) [Time: 3 hours] (Maximum marks : 100) (Revision-10) FIFTH SEMESTER DIPLOMA EXAMINATION IN ENGINEERING/ TECHNOLOGY-MARCH 2014 EMBEDDED SYSTEMS (Common for CT,CM) [Time: 3 hours] (Maximum marks : 100) PART-A (Maximum marks : 10) I. Answer all

More information

SCPI measuring device

SCPI measuring device SCPI measuring device Jernej Dolžan 2, Dušan Agrež 1 1 Faculty of Electrical Engineering, University of Ljubljana, Tržaška 25, 1001 Ljubljana, Slovenia Phone: +386 1 4768 220, Fax: +386 1 4768 426, E-mail:

More information

Practical Malware Analysis

Practical Malware Analysis Practical Malware Analysis Ch 4: A Crash Course in x86 Disassembly Revised 1-16-7 Basic Techniques Basic static analysis Looks at malware from the outside Basic dynamic analysis Only shows you how the

More information

The Design of MCU's Communication Interface

The Design of MCU's Communication Interface X International Symposium on Industrial Electronics INDEL 2014, Banja Luka, November 0608, 2014 The Design of MCU's Communication Interface Borisav Jovanović, Dejan Mirković and Milunka Damnjanović University

More information

DEVELOPMENT OF A DEBUG MODULE FOR A FPGA-BASED MICROCONTROLLER. Rainer Bermbach, Martin Kupfer

DEVELOPMENT OF A DEBUG MODULE FOR A FPGA-BASED MICROCONTROLLER. Rainer Bermbach, Martin Kupfer DEVELOPMENT OF A DEBUG MODULE FOR A FPGA-BASED MICROCONTROLLER Rainer Bermbach, Martin Kupfer University of Applied Sciences Braunschweig/Wolfenbuettel, Germany Abstract: Description of the development

More information

An Overview of the BLITZ System

An Overview of the BLITZ System An Overview of the BLITZ System Harry H. Porter III Department of Computer Science Portland State University Introduction The BLITZ System is a collection of software designed to support a university-level

More information