An introduction to: The uRT51 Microprocessor and Real-Time Programming Suite. [email protected].

26
An introduction to: The uRT51 Microprocessor and Real-Time Programming Suite. [email protected]

Transcript of An introduction to: The uRT51 Microprocessor and Real-Time Programming Suite. [email protected].

Page 1: An introduction to: The uRT51 Microprocessor and Real-Time Programming Suite. info@urt51.com.ar.

An introduction to:The uRT51 Microprocessor andReal-Time Programming Suite.

[email protected]

Page 2: An introduction to: The uRT51 Microprocessor and Real-Time Programming Suite. info@urt51.com.ar.

[email protected]

Real-Time Systems: an overview.

Real-Time Systems are used in many applications areas (not just critical ones but those where timely behaviour is either required or convenient).

Real-Time Operating Systems (RTOS) are applied in order to get a desired performance of the real-time system.

Page 3: An introduction to: The uRT51 Microprocessor and Real-Time Programming Suite. info@urt51.com.ar.

[email protected]

How traditional real-time systems are implemented.

A set of tasks are defined and parameterised as real-time tasks.

A RTOS’s task, call “the scheduler”, is invoked at regular intervals (the scheduler is usually implemented as an ISR of a timer interrupt).

The timer interval defines slot time units. The scheduler chooses a task according to a priority

discipline and grants it the processor.

Page 4: An introduction to: The uRT51 Microprocessor and Real-Time Programming Suite. info@urt51.com.ar.

[email protected]

Implementing a Traditional Real-Time System.

We have to choose an adequate time interval– IT IS NOT SO EASY AND PERFORMANCE, AS WELL AS

POWER CONSUPTION, MAY DEPEND ON IT (SCHEDULING OVERHEAD vs. TIME PRECISION).

We must express time parameters of the tasks in slot units.

– IT MAY FORCE US TO MODIFY THE TASK CODE (Example: IF THE SLOT TIME IS EQUAL TO 4ms AND THE TASK CALCULATES SOME VELOCITY, IT IS NOT THE SAME A PERIOD EQUAL TO 12ms OR EQUAL TO 16ms.

Page 5: An introduction to: The uRT51 Microprocessor and Real-Time Programming Suite. info@urt51.com.ar.

[email protected]

Current solutions (what to do when system doesn’t work): When application constraints are not met, the following

options are evaluated:– To increase the microprocessor frequency. Temporal

constraints can be satisfied but power-consumption as well as cost are also increased.

– To implement power-saving algorithms: these algorithms may introduce some perturbations on the other tasks of the systems and requires some power to be executed.

– To implement a low complexity scheduler. The real-time performance of the system is affected.

– To program the whole application as a monolithic program. Maintenance of the system is complex and expensive.

TRADITIONAL REAL-TIME SYSTEMS DO NOT GIVE GOOD SOLUTIONS FOR EMBEDDED APPLICATIONS

Page 6: An introduction to: The uRT51 Microprocessor and Real-Time Programming Suite. info@urt51.com.ar.

[email protected]

Overcoming troubles.

uRT51: a new concept in

Real-Time Systems.

Page 7: An introduction to: The uRT51 Microprocessor and Real-Time Programming Suite. info@urt51.com.ar.

[email protected]

uRT51 main features.

uRT51 is a Real-Time microprocessor designed for Real-Time applications.

It can implement a great deal of scheduling disciplines.

It includes a built-in debugging. It supports up to 65000 tasks. uRT51 performance with a 10Mhz clock is

higher than performance achieved by a RTOS with a 100Mhz clock.

Page 8: An introduction to: The uRT51 Microprocessor and Real-Time Programming Suite. info@urt51.com.ar.

[email protected]

uRT51: implementation.

It was entirely described in VHDL.

It can be implemented either on FPGAs or ASICs.

Page 9: An introduction to: The uRT51 Microprocessor and Real-Time Programming Suite. info@urt51.com.ar.

[email protected]

uRT51: an overview.

Instruction subset compatible with 8051 microprocessor.

With a 10MHz clock, time parameters can be expressed with a 100ns precision (one clock period).

If no real-time task is required to be executed, then the power consumption is almost zero (no power reduction strategy is needed).

Page 10: An introduction to: The uRT51 Microprocessor and Real-Time Programming Suite. info@urt51.com.ar.

[email protected]

uRT51: The architecture

The uRT51 architecture contains:– A 8051 microprocessor core (further uP versions will

considered other microprocessor cores).– A real-time unit that carries out all the real-time

functions.– A debugging and analysis unit that connects to uRT51

Real-Time Programming Suite.

Page 11: An introduction to: The uRT51 Microprocessor and Real-Time Programming Suite. info@urt51.com.ar.

[email protected]

uRT51: Applications

The uRT51’s flexibility improves a wide range of applications where Real-Time is applied.

uRT51 is suitable for low-power, control embedded applications.

Page 12: An introduction to: The uRT51 Microprocessor and Real-Time Programming Suite. info@urt51.com.ar.

[email protected]

uRT51 Real-Time Suite

uRT51 Real-Time Suite brings you all the power to program and analyse the uRT51 microprocessor.

Page 13: An introduction to: The uRT51 Microprocessor and Real-Time Programming Suite. info@urt51.com.ar.

Suite: the task progr. Environment

Task Code

Just functionality, no real-time programmingReal-Time

properties configuration

Add as many tasks as you need

Would you like to change the Scheduling

Mechanism?

[email protected]

Page 14: An introduction to: The uRT51 Microprocessor and Real-Time Programming Suite. info@urt51.com.ar.

Suite: the scheduling

Choose your scheduling discipline

Additional disciplines can be included under

request

[email protected]

Page 15: An introduction to: The uRT51 Microprocessor and Real-Time Programming Suite. info@urt51.com.ar.

Suite: independent preemption

You can select preemptive or non-preemptive

behaviour for each task

[email protected]

Do not worry for time units of your design

Page 16: An introduction to: The uRT51 Microprocessor and Real-Time Programming Suite. info@urt51.com.ar.

Suite: let’s compile

[email protected]

Compile your application with

just one click

Detail messages allow you an easy

debug

Page 17: An introduction to: The uRT51 Microprocessor and Real-Time Programming Suite. info@urt51.com.ar.

Suite: connecting to the uRT51

Open the Control Console to connect

to the uRT51

[email protected]

You can see the state of the connection with the the uRT51 Microprocessor

Page 18: An introduction to: The uRT51 Microprocessor and Real-Time Programming Suite. info@urt51.com.ar.

Suite: Control Console functions

Connect to the uRT51

[email protected]

Download your application

Trace your application

Reset the uRT51

Record Runtime Data for Real-Time analysis

Page 19: An introduction to: The uRT51 Microprocessor and Real-Time Programming Suite. info@urt51.com.ar.

Suite: CPU Registers Viewer

[email protected]

Watch the CPU registers during Runtime.

Page 20: An introduction to: The uRT51 Microprocessor and Real-Time Programming Suite. info@urt51.com.ar.

Suite: Runtime Code Viewer

[email protected]

Trace the execution of your code.

Page 21: An introduction to: The uRT51 Microprocessor and Real-Time Programming Suite. info@urt51.com.ar.

Suite: Variable Viewer

[email protected]

Follow the value of each one of your variables Store the values for further analysis.

Page 22: An introduction to: The uRT51 Microprocessor and Real-Time Programming Suite. info@urt51.com.ar.

Suite: Scheduling Viewer

[email protected]

Analyse the way your tasks are executed. Runtime execution time is trustily shown.

Page 23: An introduction to: The uRT51 Microprocessor and Real-Time Programming Suite. info@urt51.com.ar.

[email protected]

Conclusion

uRT51 is a flexible Real-Time microprocessor. uRT51 Real-Time Suite allows you to program

and analyse real-time applications in a few minutes.

Because uRT51 is described in VHDL, it can be used in System-On-Chip architectures.

Page 24: An introduction to: The uRT51 Microprocessor and Real-Time Programming Suite. info@urt51.com.ar.

[email protected]

Conclusion

Very precisely timing can be achieved (100ns of precision with system clock of 10MHz instead of some ms of system timer tick).

No power consumption algorithm required (power consumption almost zero when no task is executed).

Any arbitrary priority discipline can be implemented (it may be included in the Programming Suite under request).

Page 25: An introduction to: The uRT51 Microprocessor and Real-Time Programming Suite. info@urt51.com.ar.

[email protected]

Conclusion

uRT51 microprocessor is suitable for low-power embedded real-time control applications.

Page 26: An introduction to: The uRT51 Microprocessor and Real-Time Programming Suite. info@urt51.com.ar.

[email protected]

Thanks

Thanks for your attention. Any further information, please contact to:

[email protected]