SELRand. IEC Library for ACSELERATOR RTAC Projects. SEL Automation Controllers

Similar documents
SELRand IEC Library for ACSELERATOR RTAC Projects

Quicksort IEC Library for ACSELERATOR RTAC Projects

DynamicDisturbanceRecorder

IPAliasRedundancy. IEC Library for ACSELERATOR RTAC Projects. SEL Automation Controllers

IEC Library for ACSELERATOR RTAC Projects

Computational Expression

MathMatrix IEC Library for ACSELERATOR RTAC Projects

EDM 7.1 Engineering Data Management Software Release Notes

Human-Machine Interface (HMI) for SEL Real-Time Automation Controllers (RTACs)

Random and Pseudorandom Bit Generators

Services Catalogue Australia

Map3D V58 - Multi-Processor Version

The Performance index of programmable controllers PLC-MIX

Chapter 1: Introduction to the Microprocessor and Computer 1 1 A HISTORICAL BACKGROUND

Level 2 Diploma Unit 3 Computer Systems

Cluster Computing Paul A. Farrell 9/15/2011. Dept of Computer Science Kent State University 1. Benchmarking CPU Performance

Benchmarking CPU Performance. Benchmarking CPU Performance

2016 inn In ovatint SYSTEM novatint version 3 REQUIREMENTS System Requirements D ate :

Cisco MCS 7825-I1 Unified CallManager Appliance

EM23-DIN COMMUNICATION PROTOCOL. Version 0 Revision 0

Chapter 02. Authors: John Hennessy & David Patterson. Copyright 2011, Elsevier Inc. All rights Reserved. 1

IT 374 C# and Applications/ IT695 C# Data Structures

Benchmarking CPU Performance

High Performance Computing

Chapter Four: Loops II

Real-Time Automation Controller (RTAC) Powerful, reliable, and secure multifunction controller

Lytec 2017 System Requirements

Authenticate and encrypt all serial data communications to protect critical assets

Monte Carlo Simulations

Advantages of Upgrading. From System VII to Aurora

CHAPTER 4 RESULT ANALYSIS

SEL Real-Time Automation Controller (RTAC)

Chapter 6 Random Number Generation

Cisco MCS 7815-I1 Unified CallManager Appliance

Introduction to LabVIEW. Modified Powerpoint file taken from ma/courses/es110/

Variables and numeric types

Memory Performance and Cache Coherency Effects on an Intel Nehalem Multiprocessor System

Performance COE 403. Computer Architecture Prof. Muhamed Mudawar. Computer Engineering Department King Fahd University of Petroleum and Minerals

Microsoft Office is a collection of programs that you will be already using in school. This includes Word, PowerPoint, Publisher, Excel etc..

Topic 2: Introduction to Programming

C Language Programming

EM21 COMMUNICATION PROTOCOL. Version 1 Revision 0

UP BOARD WITH GOODRAM SSD. mini msata 120GB BICS 3D NAND FLASH msata 128GB MLC NAND FLASH msata 256GB MLC NAND FLASH

CS 106X Sample Final Exam #2

Authenticated Storage Using Small Trusted Hardware Hsin-Jung Yang, Victor Costan, Nickolai Zeldovich, and Srini Devadas

ELEC-270 Solutions to Assignment 5

UNIT 9A Randomness in Computation: Random Number Generators

COSC 6385 Computer Architecture - Memory Hierarchies (II)

Introduction to Programming in C Department of Computer Science and Engineering. Lecture No. #29 Arrays in C

To become familiar with array manipulation, searching, and sorting.

Copyright 2012, Elsevier Inc. All rights reserved.

Intel Server S3200SHV

Technology in Action

Intel Server Board S2400SC

Chapter 6 Caches. Computer System. Alpha Chip Photo. Topics. Memory Hierarchy Locality of Reference SRAM Caches Direct Mapped Associative

Performance Comparisons of Dell PowerEdge Servers with SQL Server 2000 Service Pack 4 Enterprise Product Group (EPG)

EM271 COMMUNICATION PROTOCOL. Version 0 Revision 0

HOWTO: A Simple Random Number Generator for the ATmega1280 Microcontroller under C and TinyOS

CPSC 531: System Modeling and Simulation. Carey Williamson Department of Computer Science University of Calgary Fall 2017

Programmable Logic Controllers. PLC500 Nseries Overview

Intel Server S3210SHLC

System Requirements. SuccessMaker 8

Cisco MCS 7816-H3. Supported Cisco Applications. Key Features and Benefits

User Manual of SADP Software

Parallel Implementation of the NIST Statistical Test Suite

QuickSpecs. ProLiant BL40p (G2) ProLiant BL20p G2. Intel 2.8GHz/533 MHz Xeon SAN 8GB PC (2-Gb), ProLiant BL20p G2 ProLiant BL20p SAN

AMD Graphics Team Last Updated February 11, 2013 APPROVED FOR PUBLIC DISTRIBUTION. 1 3DMark Overview February 2013 Approved for public distribution

NERC PRC-002 Recording Solutions

Lecture 12 Hash Tables

Intel Server Board S5520HC

Appendix C to DIR Contract No. DIR-SDD-2031 Pricing Index

SEL-3021 Serial Encrypting Transceiver Security Policy Document Version 1.9

EM270 COMMUNICATION PROTOCOL. Version 1 Revision 0

ActionScript 3 optimization techniques

From Telephone Nuremberg. This letter contains latest information about the above mentioned software version.

Manual. PLC Lib: Tc2_DMX. TwinCAT 3. Version: Date:

Assembling Computers Summer Academy Presented by the Petters Research Institute (PRI) in cooperation with the Belize Defense Force

Network Security. Random Number Generation. Chapter 6. Network Security (WS 2003): 06 Random Number Generation 1 Dr.-Ing G.

Computer Architecture Homework Set # 1 COVER SHEET Please turn in with your own solution

Exercise: Using Numbers

Cisco MCS 7815-I2 Unified CallManager Appliance

EM210 COMMUNICATION PROTOCOL. Version 3 Revision 1

GNM3D Series COMMUNICATION PROTOCOL. Version 1 Revision 0

getting STARTed Virtual Coin Cabinet 2v9 beta COIN database SOFTWARe STePHeN HUSTON FileMaker Pro developer .A FIleMAKeR PRO 10 RUNTIMe SOlUTION

Evaluation of Intel Memory Drive Technology Performance for Scientific Applications

CS 106 Winter 2016 Craig S. Kaplan. Module 08 Randomness and noise Topics

BIOINFORMATICS APPLICATIONS NOTE

DEPARTMENT OF INFORMATION TECHNOLOGY

System Requirements 2008 R2

Intel Server Board S1200BTS

Intel Server Board S2600CW2S

Do Query Op5mizers Need to be SSD- aware?

A Clustering Approach to the Bounded Diameter Minimum Spanning Tree Problem Using Ants. Outline. Tyler Derr. Thesis Adviser: Dr. Thang N.

EM100 Series and ET100 Series

Information Security CS526

Cisco MCS 7825-H3. Supported Cisco Applications

Qualified Apple Mac Systems for Media Composer 7.0

DS1006 Processor Board 1)

MitySOM-5CSx Family Virtual Machine Setup Procedure

CompuScope 1602 product introduction

Transcription:

SELRand IEC 61131 Library for ACSELERATOR RTAC Projects SEL Automation Controllers

Table of Contents Section 1: SELRand Introduction... 3 Supported Firmware Versions... 3 Functions... 3 Benchmarks... 5 Examples... 6 Release Notes... 9 SELRand Instruction Manual Date Code 20180920

RTAC LIBRARY SELRand Introduction The SELRand library contains a set of functions that return pseudo-random numbers for testing and other non-cryptographic purposes. A pseudo-random number generator is a math function that takes advantage of its previous result and large number manipulations to perform operations that are not immediately predictable. The beginning value for each use of the sequence is called the seed. Generally, the seed is created from some measurement expected to have a wide range of variance. Commonly, this can be noise on a wire, small units of time, quantity and value of user input, or some other equally unpredictable quantity. Pseudo-random number generators do tend to be cyclic in nature, but they can have very large cycle times and excellent distribution. These functions are not intended to be used for implementing any security feature. Supported Firmware Versions You can use this library on any device configured using ACSELERATOR RTAC SEL-5033 Software with firmware version R143 or higher. Versions 3.5.0.0 and older can be used on RTAC firmware version R132 and higher. Functions fun_rand (Function) This function randomly seeds itself and returns a pseudo-random number in the range of 0 inclusive to 2 32 exclusive. Return Value IEC 61131 Type UDINT Description A random number between 0 inclusive to 2 32 exclusive. Date Code 20180920 Instruction Manual SELRand

4 SELRand Functions Processing At the first call of this function it randomly seeds itself. It will continually return pseudorandom values with each use. fun_randrepeatable (Function) This function always seeds itself with the same value and returns a pseudo-random number in the range of 0 inclusive to 2 32 exclusive. Return Value IEC 61131 Type UDINT Description A random number between 0 inclusive to 2 32 exclusive. Processing At the first call of this function it seeds itself, always with the same value. It then returns the same sequence of pseudo-random values with each use. fun_randranged (Function) This function randomly seeds itself and returns a pseudo-random number between minimum to maximum, inclusive. Inputs Name IEC 61131 Type Description minimum UDINT The lower limit of the return value. maximum UDINT The upper limit of the return value. Return Value IEC 61131 Type UDINT Description A random number between minimum and maximum, inclusive. Processing At the first call of this function, randomly seeds itself. It then continually returns pseudorandom values within the requested range. fun_randrangedrepeatable (Function) This function always seeds itself with the same value and subsequently returns a pseudorandom number between minimum to maximum, inclusive. SELRand Instruction Manual Date Code 20180920

SELRand 5 Benchmarks Inputs Name IEC 61131 Type Description minimum UDINT The lower limit of the return value. maximum UDINT The upper limit of the return value. Return Value IEC 61131 Type UDINT Description A random number between minimum and maximum, inclusive. Processing At the first call of function it seeds itself, always with the same value. It then continually returns the same sequence of pseudo-random values within the requested range. Benchmarks Benchmark Platforms The benchmarking tests recorded for this library are performed on the following platforms. SEL-3530 R134-V0 firmware SEL-3354 Intel Pentium 1.4 GHz 1 GB DDR ECC SDRAM SEL-3532 RTAC Conversion Kit R132-V0 firmware SEL-3555 Dual-core Intel i7-3555le processor 4 GB ECC RAM R134-V0 firmware Benchmark Test Descriptions All benchmark tests are based on an average of 100 calls to the function. fun_rand() The posted time is the average execution time of 100 consecutive calls. Date Code 20180920 Instruction Manual SELRand

6 SELRand Examples fun_randranged() The posted time is the average execution time of 100 consecutive calls with a range of 1 to 100. fun_randrepeatable() The posted time is the average execution time of 100 consecutive calls. fun_randrangedrepeatable() The posted time is the average execution time of 100 consecutive calls with a range of 1 to 100. Benchmark Results Operation Tested Platform (time in µs) SEL-3530 SEL-3354 SEL-3555 fun_rand() 1 1 1 fun_randranged() 2 1 1 fun_randrepeatable() 1 1 1 fun_randrangedrepeatable() 1 1 1 Examples These examples demonstrate the capabilities of this library. Do not mistake them as suggestions or recommendations from SEL. Implement the best practices of your organization when using these libraries. As the user of this library, you are responsible for ensuring correct implementation and verifying that the project using these libraries performs as expected. Getting a Random Integer Between 10 and 50 Objective A user knows the input for a function will vary between 10 and 50 and would like demonstrate the behavior of a function in a non-linear progression. Assumptions This example assumes that there is a user specified IEC 61131 function that is defined as shown in Code Snippet 1. SELRand Instruction Manual Date Code 20180920

SELRand 7 Examples Code Snippet 1 FUNCTION fun_somefunction :REAL VAR_INPUT num : UDINT; END_VAR fun_somefunction Solution The user can create the program in Code Snippet 2 to run the function 1000 times with assorted input. Code Snippet 2 PROGRAM prg_randomwalk VAR i : UDINT; results : ARRAY [1.. 1000] OF REAL; randomnum : UDINT; END_VAR prg_randomwalk FOR i := 1 to 1000 DO //This gives a random number from 10 to 50; randomnum := fun_randranged(10, 51); //Call the function with the random number results[i] := fun_somefunction(randomnum); END_FOR Testing With Assorted Input Objective A user wants to vary inputs for testing but would like to be able to recreate the inputs in case something goes wrong. Assumptions This example assumes that there is a user-specified IEC 61131 function that is defined as shown in Code Snippet 3 Code Snippet 3 FUNCTION fun_testfunction :BOOL VAR_INPUT num : UDINT; END_VAR fun_testfunction Date Code 20180920 Instruction Manual SELRand

8 SELRand Examples Solution The user can create the program in Code Snippet 4 to run the function 1000 times with assorted input but a set order. Code Snippet 4 PROGRAM prg_randomtest VAR i : UDINT; results : ARRAY [1.. 1000] OF REAL; randomnum : UDINT; END_VAR prg_randomtest FOR i := 1 TO 1000 DO //This gives a random number; randomnum := fun_randrepeatable(); //Call the function with the random number results[i] := fun_testfunction(randomnum); END_FOR SELRand Instruction Manual Date Code 20180920

SELRand 9 Release Notes Release Notes Version Summary of Revisions Date Code 3.5.1.0 Allows new versions of ACSELERATOR RTAC to compile projects 20180921 for previous firmware versions without SEL IEC types Cannot convert messages. Must be used with R143 firmware or later. 3.5.0.0 Initial release. 20140811 Date Code 20180920 Instruction Manual SELRand