1-Introduction.pdf
Document Details
Uploaded by GodlikeVariable
Tags
Full Transcript
L T P C 3 0 3 4 19CSE303 – Embedded Systems DEPT. OF CSE 1 L T P C...
L T P C 3 0 3 4 19CSE303 – Embedded Systems DEPT. OF CSE 1 L T P C 3 0 3 4 Course Introduction Unit 1 Basics of Embedded Systems –Definition, Characteristics, Architecture of Microprocessors: General definitions of computers, micro-processors, micro controllers and digital signal processors. ARM Architecture: RISC Machine, Architectural Inheritance, Programmers model, CPSR, ARM Organization and Implementation. 3 Stage pipeline, 5 Stage pipeline, ARM Instruction execution, Co-processor interface, ARM Assembly language Programming, Data processing instructions, Data Transfer Instructions, Control flow instructions, Architectural support for high level programming, Thumb Instruction set. Unit 2 Interrupt structure -Vector interrupt table, Interrupt service routines, Asynchronous and Synchronous data transfer schemes, ARM memory interface, AMBA interface, Microcontroller ARM7-LPC2148 ports: GPIO, A/D Converters, PWM, timer / counter, UART and its interfacing – Embedded Programming Concepts: Role of Infinite loop, Compiler, Assembler, Interpreter, Linker, Loader, Debugger-Application development using Keil IDE. Unit 3 Introduction to ARM Cortex M4 Microcontroller –GPIO and other Peripherals -System development process: Requirements, Design, Development, Testing and Deployment. Prototyping: Analog circuit design and construction on a solderless breadboard, Hardware and Software design, Programming simple logic and testing PLL and Systick Timers, Design strategy for building Finite State machine. DEPT. OF CSE 2 Course Introduction Text Book(s): Furber SB. ARM system-on-chip architecture. pearson Education; 2000. Martin T. The Insider’s guide to the Philips ARM7-based microcontrollers. Coventry, Hitex, UK, Ltd. 2005. Reference(s): Valvano JW. Embedded Systems: Introduction to ARM Cortex-M Microcontrollers. Jonathan W. Valvano; 2016. Valvano JW. Embedded microcomputer systems: real time interfacing. Cengage Learning; 2012. DEPT. OF CSE 3 Introduction What is a System? A system is a way of working, organizing or doing one or many tasks according to a fixed plan, program or set of rules. A system is also an arrangement in which all its units assemble and work together according to the plan or program. DEPT. OF CSE 4 DEPT. OF CSE 5 DEPT. OF CSE 6 Computing Systems Computing systems are everywhere Most of us think of “desktop” computers ◦ PC’s ◦ Laptops ◦ Mainframes ◦ Servers designed to be flexible and to meet a wide range of end-user needs. But there’s another type of computing system ◦ Far more common... DEPT. OF CSE 7 Embedded Systems We are surrounded by Embedded Systems Cell Phones Automatic Washing Machines Traffic Signals with Timers Automobile Electronics Find a System that contains no electronic system How an electronic system improve the functionality / efficiency of that system Over 95% of software systems are actually embedded !!! DEPT. OF CSE 8 Embedded Systems A Special purpose computer designed to perform certain dedicated functions Embedded Systems are everywhere Ubiquitous, invisible Hidden (computer inside) Dedicated purpose DEPT. OF CSE 9 Embedded Systems An embedded system is a computer system with a dedicated function within a larger mechanical or electrical system, often with real-time computing constraints. It is embedded as part of a complete device often including hardware and mechanical parts. Embedded systems control many devices in common use today. Definition: An Embedded System is one that has computer hardware with software embedded in it as one of its important components. DEPT. OF CSE 10 Embedded Systems - Characteristics Single-functioned − An embedded system usually performs a specialized operation and does the same repeatedly. For example: A pager always functions as a pager. Tightly constrained − All computing systems have constraints on design metrics, but those on an embedded system can be especially tight. Design metrics is a measure of an implementation's features such as its cost, size, power, and performance. It must be of a size to fit on a single chip, must perform fast enough to process data in real time and consume minimum power to extend battery life. DEPT. OF CSE 11 Embedded Systems - Characteristics Reactive and Real time − Many embedded systems must continually react to changes in the system's environment and must compute certain results in real time without any delay. Consider an example of a car cruise controller; it continually monitors and reacts to speed and brake sensors. It must compute acceleration or de-accelerations repeatedly within a limited time; a delayed computation can result in failure to control of the car. Microprocessors based − It must be microprocessor or microcontroller based. DEPT. OF CSE 12 Embedded Systems - Characteristics Memory − It must have a memory, as its software usually embeds in ROM. It does not need any secondary memories in the computer. Connected − It must have connected peripherals to connect input and output devices. HW-SW systems − Software is used for more features and flexibility. Hardware is used for performance and security. DEPT. OF CSE 13 What makes an Embedded Systems DEPT. OF CSE 14 Embedded Systems – Microcontrollers vs Microprocessors Microprocessors: CPU for Computers No RAM, ROM, I/O on CPU chip itself Example: Intel’s x86, Motorola’s 680x0 DEPT. OF CSE 15 Embedded Systems – Microcontrollers vs Microprocessors Microcontroller: A smaller computer On-chip RAM, ROM, I/O ports… Example: Motorola’s 6811, Intel’s 8051, Zilog’s Z8 and PIC 16X DEPT. OF CSE 16 Embedded Systems – Microcontrollers vs Microprocessors Microprocessors Microcontrollers Microprocessors are multitasking in nature. Can Single task oriented. perform multiple tasks at a time. For example, a washing machine is designed for washing For example, on computer we can play music while clothes only. writing text in text editor. RAM, ROM, I/O Ports, and Timers can be added externally RAM, ROM, I/O Ports, and Timers cannot be added and can vary in numbers. externally. These components are to be embedded together on a chip and are fixed in Designers can decide the number of memory or I/O ports Fixed number for memory or I/O makes a microcontroller needed. ideal for a limited but specific task. External support of external memory and I/O ports makes a Microcontrollers are lightweight and cheaper than a microprocessor-based system heavier and costlier. microprocessor. External devices require more space and their power A microcontroller-based system consumes less power and consumption is higher. takes less space. DEPT. OF CSE 17 Embedded Systems Microprocessor Intel: 4004,..8080,.. x86 Freescale: 6800,.. 9S12,.. PowerPC ARM, DEC, SPARC, MIPS, PowerPC, Natl. Semi.,... Applications: Desktop PC’s, Laptops, notepads etc. Microcontroller Processor+Memory+I/O Ports (Interfaces) Applications: Keyboards, mouse, pendrive, mobiles etc. DEPT. OF CSE 18 Evolution of Microprocessors DEPT. OF CSE 19 Evolution of Microprocessors DEPT. OF CSE 20 Moore’s Law: Moore's Law refers to Moore's perception that the number of transistors on a microchip doubles every two years, though the cost of computers is halved. Moore's Law states that we can expect the speed and capability of our computers to increase every couple of years, and we will pay less for them. DEPT. OF CSE 21 Digital Signal Processing Definition: Digital signal processing (DSP) is the process of analyzing and modifying a signal to optimize or improve its efficiency or performance. It involves applying various mathematical and computational algorithms to analog and digital signals to produce a signal that's of higher quality than the original signal. DEPT. OF CSE 22 Digital Signal Processing Architecture optimized for signal processing applications Large number of mathematical operations on a series of data samples Hardware implementation of Multiply/Accumulate function Critical for FFT (Fast Fourier Transform) type applications The Texas Instruments TMS 5100 DEPT. OF CSE 23 Digital Signal Processing ◦ dedicated DSPs usually have better power efficiency, thus they are more suitable in portable devices such as mobile phones because of power consumption constraints. ◦ DSPs often use special memory architectures that are able to fetch multiple data or instructions at the same time. DEPT. OF CSE 24 Architecture vs. Organization Computer Architecture Computer Organization Computer Architecture is concerned with the way hardware Computer Organization is concerned with the structure and components are connected together to form a computer behaviour of a computer system as seen by the user. system. It acts as the interface between hardware and software. It deals with the components of a connection in a system. Computer Architecture helps us to understand the Computer Organization tells us how exactly all the units in functionalities of a system. the system are arranged and interconnected. A programmer can view architecture in terms of Organization expresses the realization of architecture. instructions, addressing modes and registers. While designing a computer system architecture is An organization is done on the basis of architecture. considered first. Computer Architecture deals with high-level design issues. Computer Organization deals with low-level design issues. Architecture involves Logic (Instruction sets, Addressing Organization involves Physical Components (Circuit design, modes, Data types, Cache optimization) Adders, Signals, Peripherals) DEPT. OF CSE 25 Von-Neumann Architecture Von Neumann Architecture is a digital computer architecture whose design is based on the concept of stored program computers where program data and instruction data are stored in the same memory. This architecture was designed by the famous mathematician and physicist John Von Neumann in 1945. DEPT. OF CSE 26 Harvard Architecture Harvard Architecture is the digital computer architecture whose design is based on the concept where there are separate storage and separate buses (signal path) for instruction and data. It was basically developed to overcome the bottleneck of Von Neumann Architecture DEPT. OF CSE 27 Von-Neumann vs Harvard Architecture Von-Neumann Architecture Harvard Architecture Single memory to be shared by both Separate memories for code and data. code and data. Processor needs to fetch code in a Single clock cycle is sufficient, as separate clock cycle and data in another separate buses Higher speed, thus less time consuming. Slower in speed, thus more time- consuming. Simple in design Complex in design. DEPT. OF CSE 28 RISC vs CISC RISC: Reduced Instruction Set Architecture The main idea behind is to make hardware simpler by using an instruction set composed Just like a load command will load data, store command will store the data. Mostly all have the same format. Reduce the number of memory accesses required by increasing the number of registers Reduce the number of addressing modes Allow pipelining of instructions To increase the CPU performance: Reduce the cycles per instruction at the cost of the number of instructions per program. DEPT. OF CSE 29 RISC vs CISC CISC: Complex Instruction Set Architecture The main idea is that a single instruction will do more operations Just like a multiplication command which does; loading data, evaluating, and storing it, hence it’s complex. Number of instructions are reduced by having multiple operations within a single instruction In turn making instruction length variable and fetch-decode-execute time unpredictable – making it more complex Provide more addressing modes Less number of general-purpose registers as operation get performed in memory itself. To increase the CPU performance: Minimize the number of instructions per program but at the cost of increase in number of cycles per instruction. DEPT. OF CSE 30 RISC vs CISC CISC RISC Larger set of instructions. Easy to Program. Smaller set of Instructions. Difficult to program. Simpler design of compiler, considering larger set of Complex design of compiler. instructions. Many addressing modes causing complex instruction Few addressing modes, fix instruction format. formats. Instruction length is variable Instruction length is fixed. Higher clock cycles per second. Low clock cycle per second. Emphasis is on hardware. Emphasis is on software. Control unit implements large instruction set using micro- Each instruction is to be executed by hardware. program unit. Slower execution, as instructions are to be read from Faster execution, as each instruction is to be executed by memory and decoded by the decoder unit. hardware. Pipelining is not possible. Pipelining of instructions is possible, DEPT. OF CSE 31 Memory Organization DEPT. OF CSE 32 Memory Organization Byte organized memory: Each address on the address bus points to a memory location where a byte (8 bit) is stored. Word organized memory: Each address on the address bus points to a memory location where a word (multiple of 8 bit) is stored. DEPT. OF CSE 33 Memory Organization How data is stored in memory? Little Endian – LSB to Lower memory address Big Endian – LSB to Higher memory address 0x01234567 will be stored as DEPT. OF CSE 34 Memory Organization 14-07-2021 DEPT. OF CSE 35 Thank You DEPT. OF CSE 36