19EL016_3EL04_assignment-1 (2)
19EL016_3EL04_assignment-1 (2)
Hard real time is a system whose operation is incorrect whose result is not produce according to time
constraint.
B. MedicaL system
Soft real time system is a system whose operation is degrade if results are not produce
according to the specified timing requirement.
For example1. Multimedia Transmission and Reception 2. Computer Games
Q.2 Write a brief note on Arm Microcontroller.
ARM microcontroller
The ARM processors have a less number of transistors because they have a reduced instruction set,
which allows a smaller size for the IC. Thereby being space efficient also. Most of the electronic devices
such as tablets, mobiles, smart phones and other mobile devices consist of these processors.By
combining the ARM microprocessor with RAM, ROM and other peripherals in one single chip, we get an
ARM microcontroller, for example, LPC2148.
ARM ARCHITECTURES
A 32 bit RISC Load Store Architecture is present in ARM machines. The manipulation of memory is not
possible directly; the registers are used for this purpose. Different varieties of operations are offered by
the instruction set but the main focus is to reduce the number of cycle required for each instruction.
The instructions present in the ARM ISA are all conditional. The condition AL is accompanied by normal
execution instructions. Excluding the condition AL, 14 other conditions are also available. The number of
transistors has increased from 30000 in ARM2 to 26 million in the cortex-A9 ARM. A Thumb architecture
was also developed which supported 16 bit instructions. Increasing the code density caused a drop in
performance of these machines. But it was compensated by Thumb 2.
THUMB
The thumb mode has been featured by the processors from ARM7TDMI to help in improving the
compiled code density. The 16 bit instructions are executed in this mode and they are mapped to the
normal ARM instructions.
The opcodes that are smaller in size show less functionality in thumb. Some opcodes cannot access all
the registers and only the braches can be opted as conditional. Smaller opcodes are more efficient.
Usually a very small amount of RAM is accessible with a datapath of 32 bit in embedded hardware. Rest
of it is accessed by a 16 bit path. Therefore it becomes logical to use 16 bit thumb code and the wider
instructions can be placed in a memory which is accessible by 32 bit. The ARM7TDI was the first process
having a thumb instruction decoder.
New instruction set was added to improve the architecture of ARM for multimedia applications and
digital signal processing. These are specified by adding an E in the architecture’s name such as
ARMv5TEJ and ARMv5TE etc. These are just the variations added on count leading zeros and saturated
subtract and add operations etc.
JAZELLE
Besides the ARM and Thumb modes, a new technology has been introduced which allows the execution
of Java bytecode in hardware. This technology is known as Jazelle. It is most prominently used in mobile
phones so that the execution speed of Java EM games can be increased. The Java Virtual Machine
performs the complicated operations in software while the Java bytecodes are usually run on hardware.
The first processor to use Jazelle was ARM926EJ-S and the architecture of ARMv5TEJ specifies the
functionality of Jazelle. The JVM software depends on the details of hardware interface so that the JVM
and hardware can develop very well together and no other software is affected.
THUMB-2
The Thumb-2 technology was introduced on ARM1156 core and it was announced in the year 2003. It
increases the breadth of the instruction set by adding 32 bit instructions to the limited 16 bit instruction
set of the previously mentioned technology Thumb. The code density resembling the Thumb is achieved
by the Thumb-2 and also its performance is similar to the ARM instruction set on a memory of 32 bit.
The instruction set Thumb-2 is supported by all the ARMv7 chips. But some of the chips for example
cortex-M3 only supports the Thumb-2 instruction set.
The ThumbEE first appeared in the Cortex-A8 processor. The instruction set is increased as compared to
the Thumb-2 instruction set. Thumb EE is used for languages such as Python, Limbo, Java, C# and Perl
etc. Smaller codes are outputted by the JIT compilers and there is no significant impact on the
performance.
The advanced SIMD (Single Instruction Multiple Data) also known as the NEON technology, is a
combination of 128 bit and 64 bit SIMD instruction set. It provides acceleration for the applications of
signal processing and media.
Its execution operations include decoding of MP3 audio on 10 MHz CPUs, and runs GSM AMR (adaptive
multi rate) speech codec at 13 Mhz. It supports up to 64 bit integers and also handles games and
graphics as well as audio/video processing. The SIMD in NEON can support 16 operations at a time.
One of the most advanced form of these microcontrollers is the cortex microcontroller, developed by
ARMv7. The cortex family is further divided as:
Arm development solutions are designed to accelerate product development from SoC architecture to
software application development. From the smallest Cortex-M series microcontroller sensor to
supercomputers, Arm development tools and design services help engineers worldwide develop market-
leading products that fully explore the capabilities of their Arm-based systems.
The Development Studio was developed specifically for arm processors and is the most comprehensive
integrated C++ proprietary toolchain for software development for this architecture. It includes Keil
MDK and accelerates software engineering, helping you develop more robust and efficient products.
Arm Keil MDK is a complete software development solution for creating, creating and debugging
embedded applications for arm-based microcontrollers. The µVision IDE provides a world-class
experience for Cortex-M-based development.
A ULINK debug adapter connects your PC’s USB port to your target system (via JTAG or a similar debug
interface) and allows you to debug, trace and analyze embedded programs running on the target
hardware. All ULINK adapters enable you to:
Download programs to your target hardwareExamine memory and registersSingle-step through
programs and insert multiple breakpointsRun programs in real-timeProgram Flash memoryConnect to a
target via JTAG or serial wire modesDebug Arm Cortex-M devices on-the-flyExamine trace information
from Arm Cortex-M3/M4/M7/M33 devices
DSTREAM family
The Arm DSTREAM High-Performance Debug and Trace units enable powerful software debug and
optimization on any Arm processor-based hardware target.
With features such as accelerated hardware bring-up for many development platforms and open debug
interface for use with third-party tools, DSTREAM debug probes provide a comprehensive solution for
the development and debug of complex SoCs when paired with Arm Development Studio.
Keil C166 development tools support the Infineon C166, XC166, XE166, XC2000 and ST10
microcontroller families. The μVision IDE and debugger interfaces to the Infineon DAVE code generation
tool and various debug solutions including the ULINK2.
Keil C51 is the industry-standard toolchain for all 8051-compatible devices. It supports classic 8051,
Dallas 390, NXP MX, extended 8051 variants, and C251 devices. The μVision IDE and debugger interfaces
to the Infineon DAVE code generation tool and various debug solutions including the ULINK.
Wireless Application Protocol (WAP)Wireless Application Protocol (WAP) is a specification for a set of
communication protocols to standardize the way that wireless devices, such as cellular telephones and
radio transceivers, can be used for internet access, including email, the web, newsgroups and instant
messaging.
WAP was conceived in 1997 by Ericsson, Motorola, Nokia and Unwired Planet (now
Phone.com) at an event known as the WAP Forum. In 2002, the WAP Forum became the
Open Mobile Alliance (OMA).
The Wireless Markup Language (WML) was used to create pages that can be delivered
using WAP.
There were other approaches to an industry standard besides WAP, including i-Mode.
These standards optimize mobile experiences that were previously limited by the
capabilities of handheld devices and wireless networks. WAP does this through:
• the WML format for pages, which can be delivered using WAP;
• internet standards that are efficient for wireless environments, such as Extensible
Markup Language (XML), user datagram protocol (UDP) and Internet Protocol
(IP), which are based on standards such as HTML, HTTP and TLS but without
the large amounts of data;
• binary transmission that allows for greater data compression; and
• optimization for high latency, low connection stability and low bandwidth through
using a lightweight protocol stack.
WAP model and layers
WAP model. The WAP model works similar to the traditional client-server model but uses
an additional WAP gateway as an intermediary between the client and server. This gateway
translates the WAP device request, from a microbrowser, into an HTTP URL request and
sends it to the server over the internet.
When the server returns a response, the WAP gateway processes and sends the webpage
to the WAP mobile device as a WML file that is compatible with microbrowsers.
WAP protocol stack. The WAP standard describes the following protocol stack for interoperability of
WAP devices, equipment, software and other technologies, including:
Wireless Application Environment (WAE) for mobile device specifications and programming languages
such as WML;Wireless Session Protocol (WSP), which manages connection suspensions and
reconnections;Wireless Transaction Protocol (WTP), which manages transaction support for requests
and responses to servers;Wireless Transport Layer Security (WTLS) for managing privacy, authentication
and data integrity through public key cryptography; andWireless Datagram Protocol (WDP), which is an
adaptation layer for consistent data formats in the other layers, and it defines how data flows to the
sender, from the receiver.Why use WAP?
Introduced in 1999, WAP proposed benefits for wireless network operators, content providers and end
users:
Wireless network and mobile phone operators. WAP was designed to improve existing wireless data
services such as voicemail while also enabling the development of additional new mobile applications.
These applications can be introduced without any additional infrastructure changes or phone
modifications.Content providers. WAP creates a market for additional applications and mobile phone
functionalities for third-party application developers to exploit. Writing applications in WML was
proposed as a new programming language for developers to create effective mobile device
applications.End users. Mobile phone users were stated to benefit from easy, secure access to online
services, such as banking, entertainment, messaging and other information, on mobile devices. Intranet
information – such as corporate databases and business applications – was also to be accessed through
WAP.
Despite these proposed benefits, WAP did not experience widespread adoption in many countries, and
its use declined significantly around 2010, due to widespread HTML compatibility in mobile phones.
There is an adage that I am sure most of you have heard of, “The
whole is greater than the sum of its parts.” Upon further examination,
there are examples of this truth all around us. For example, a PC.
There are various hardware components in use in its design and
assembly. However, no matter how expensive the components or
impressive their specifications, this is nothing more than an overpriced
paperweight without software.
As a whole, this shift in thinking can bring about a level of innovation not
yet seen in the PCB industry. This, in turn, will also facilitate a new level
of performance and functionality without the added cost and time
constraints previously experienced. Overall, design efficiency will be the
new norm as the PCB industry continues to implement hardware-
software co-design.
In this pursuit of better testing comes the need for better, more efficient
ways to conduct these tests. That is where hardware-software co-design
comes into play. It enables embedded software (chip) to add
functionality to simulations in use to discover design results during
simulative flight tests.
How Hardware-Software Co-design is
Changing Simulations
During a recent flight test simulation, there was a need for different
power outputs of the generators in use within the test. In essence, each
power output represents a different testable scenario. Previously, before
the use of hardware-software co-design, a separate analysis was run
for each power output requirement.