Release candidate enhancements Compiled by Seth Park, May 2009 While piloting the sidsc-component specialization, Freescale Semiconductor identified two.

Slides:



Advertisements
Similar presentations
©TheMcGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter Four Defining Your Own Classes.
Advertisements

Introduction to Java.
1 Templates Chapter What You Will Learn Using function templates to created a group of overloaded functions Using class templates to create a group.
Programming Languages Marjan Sirjani 2 2. Language Design Issues Design to Run efficiently : early languages Easy to write correctly : new languages.
Repetition Control Structures
The Web Warrior Guide to Web Design Technologies
Introduction to C Programming
Database Systems: Design, Implementation, and Management Tenth Edition
Java Programming, 3e Concepts and Techniques Chapter 4 Decision Making and Repetition with Reusable Objects.
2-1 © Prentice Hall, 2007 Chapter 2: Introduction to Object Orientation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
Chapter 3 Data Abstraction: The Walls. © 2005 Pearson Addison-Wesley. All rights reserved3-2 Abstract Data Types Modularity –Keeps the complexity of a.
Technical Writing II Acknowledgement: –This lecture notes are based on many on-line documents. –I would like to thank these authors who make the documents.
DT211/3 Internet Application Development
© 2006 Pearson Addison-Wesley. All rights reserved4-1 Chapter 4 Data Abstraction: The Walls.
Chapter 6 Functional Modeling
Modules, Hierarchy Charts, and Documentation
©The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 4 th Ed Chapter Chapter 4 Defining Your Own Classes.
Functional Modeling Chapter 6.
Introduction to C Programming
Unit 4 – XML Schema XML - Level I Basic.
Introduction to XML This material is based heavily on the tutorial by the same name at
C++ fundamentals.
Process Modeling SYSTEMS ANALYSIS AND DESIGN, 6 TH EDITION DENNIS, WIXOM, AND ROTH © 2015 JOHN WILEY & SONS. ALL RIGHTS RESERVED. 1 Roberta M. Roth.
Introducing HTML & XHTML:. Goals  Understand hyperlinking  Understand how tags are formed and used.  Understand HTML as a markup language  Understand.
C o n f i d e n t i a l Developed By Nitendra NextHome Subject Name: Data Structure Using C Title: Overview of Data Structure.
Microsoft Visual Basic 2008 CHAPTER ELEVEN Multiple Classes and Inheritance.
Apply Sub Procedures/Methods and User Defined Functions
Working with Namespaces Combining XML Vocabularies in a Compound Document.
WORKING WITH NAMESPACES
XP New Perspectives on XML Tutorial 4 1 XML Schema Tutorial – Carey ISBN Working with Namespaces and Schemas.
XP New Perspectives on XML Tutorial 3 1 DTD Tutorial – Carey ISBN
Creating a Simple Page: HTML Overview
Implementation Yaodong Bi. Introduction to Implementation Purposes of Implementation – Plan the system integrations required in each iteration – Distribute.
C++ How to Program, 8/e © by Pearson Education, Inc. All Rights Reserved. Note: C How to Program, Chapter 22 is a copy of C++ How to Program Chapter.
OOD Case Study (For parallel treatment, see Chapter 2 of the text)
Adding User Interactivity – Lesson 51 Adding User Interactivity Lesson 5.
Chapter 1 XHTML: Part I The Web Warrior Guide to Web Design Technologies.
Lecture Set 11 Creating and Using Classes Part B – Class Features – Constructors, Methods, Fields, Properties, Shared Data.
Chapter 8 Data Modeling Advanced Concepts Database Principles: Fundamentals of Design, Implementation, and Management Tenth Edition.
SE: CHAPTER 7 Writing The Program
Chapter 7 File I/O 1. File, Record & Field 2 The file is just a chunk of disk space set aside for data and given a name. The computer has no idea what.
Using Wikis in Education Caroline County Educational Technology Workshop August 1, kispaces.com/
XP New Perspectives on XML, 2nd Edition Tutorial 2 1 TUTORIAL 2 WORKING WITH NAMESPACES.
Classes In C++ 1. What is a class Can make a new type in C++ by declaring a class. A class is an expanded concept of a data structure: instead of holding.
Chapter 4 Grouping Objects. Flexible Sized Collections  When writing a program, we often need to be able to group objects into collections  It is typical.
CONTENTS Processing structures and commands Control structures – Sequence Sequence – Selection Selection – Iteration Iteration Naming conventions – File.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
1 Tutorial 12 Working with Namespaces Combining XML Vocabularies in a Compound Document.
Beginning XML 3 rd Edition. Chapter 4: Document Type Definitions.
Chapter 3 Syntax, Errors, and Debugging Fundamentals of Java.
Microsoft Visual Basic 2008 CHAPTER ELEVEN Multiple Classes and Inheritance.
Microsoft Visual Basic 2012 CHAPTER ELEVEN Multiple Classes and Inheritance.
Java Programming, 2E Introductory Concepts and Techniques Chapter 4 Decision Making and Repetition with Reusable Objects.
(Winter 2016) Instructor: Craig Duckett Lecture 13: Thursday, February 18 th Mere Mortals: Chap. 9 Summary, Team Work 1.
CHAPTER THREE Representing Data: Constants and Variables.
XML CORE CSC1310 Fall XML DOCUMENT XML document XML document is a convenient way for parsers to archive data. In other words, it is a way to describe.
HTML5 and CSS3 Illustrated Unit C: Getting Started with CSS.
Chapter 9 Introduction to Arrays Fundamentals of Java.
PROGRESS REPORT LECTURE 7. What is a Progress Report? A Progress Report : documents the status of a project describes the various tasks that make up the.
HTML5 and CSS3 Illustrated Unit F: Inserting and Working with Images.
PeopleCode and the Component Processor
1 Lecture 2 - Introduction to C Programming Outline 2.1Introduction 2.2A Simple C Program: Printing a Line of Text 2.3Another Simple C Program: Adding.
Attributes and Values Describing Entities. Metadata At the most basic level, metadata is just another term for description, or information about an entity.
1 Team Skill 3 Defining the System Part 1: Use Case Modeling Noureddine Abbadeni Al-Ain University of Science and Technology College of Engineering and.
User-Written Functions
Chapter 3: Using Methods, Classes, and Objects
Attributes and Values Describing Entities.
Using Templates and Library Items
Creating and Using Classes
New Perspectives on XML
Presentation transcript:

Release candidate enhancements Compiled by Seth Park, May 2009 While piloting the sidsc-component specialization, Freescale Semiconductor identified two critical business requirements that are not supported by the data model. These business requirements are: Must support multiple instantiations of identical registers and enable unique name requirements for register names. This should allow identical registers to be presented as a comprehensive enumeration or a generalized section with redundant data “collapsed”. Must support multiple instantiations of identical components and enable unique name requirements for components and register names This document details the required functionality and a complete description of the changes that must be made to support this proposal. Freescale has implemented these changes for testing and is confident it will support the business requirements of the OASIS member companies and the adopters of the SIDSC deliverable, upon ratification.

Use cases for multiple instances of registers and components This document shows how to encode sidsc-component data to handle the three primary use cases: 1.Multiple instances of registers (must have a pattern) 2.Multiple instances of components (each instance must have identical registers) 3.Multiple instances of registers within components that occur more than once About the example content The example information comes from an externally published reference manual. There are two instances of the same TPM module. The TPM must be documented as a general chapter while making it clear that more than one TPM is available. Each register name must be unique, so in the register summary, register names must appear according to the following pattern: TPM1SC, TPM2SC. When discussed generally (as in the register section heading), the name must be “TPMnSC” Within each TPM instance, there are a range of registers that repeat. Notice in the following image that the TPM1C0VH repeats 3 registers later and receives a unique name of TPM1C1VH. The challenge is to provide a sufficient data model to allow processing to build component names based on instance parameters AND allow register names to be further qualified when they repeat. In the following image, the “TPM1” comes from the component instance parameters. The “C0VH” and “C1VH” come from the register dimension data.

1 2 1.Notice the generic form, “TPMxSC” 2.The address information and unique name for specific instances should go here.

1. Support for multiple instances of registers Vocabulary requirements * add to inform processing how to qualify register names to make them unique * add to inform processing how to implement the About and We understand that qualifiers will not be conceived or applied consistently or by any specific pattern. For instance, you might have UARTA and UARTB. In some cases, the qualifier might not be a logical "adder"; for instance: RAM_INT and RAM_EXT. For this usecase, is designed to accept a comma-delimited list of the strings that are to be added to the component name. Use to explain how the is implemented. NOTE: These two elements are used by sidsc-component.mod and sidsc-register.mod; therefore, the elements are maintained in the sidscDomain.mod file, which is integrated into sidsc-component.dtd and sidsc-register.dtd (for cases where registers are created outside the context of the componet. (see the example on next page)

For example (RAM register): 2 1 _INT,_EXT end This syntax says, "There are two instances of this register. The first one is at the address determined by, and its name is formulated by adding "_INT" to the "end" of the registerName (RAM_INT). The second instance is at the very next register space and has the name "RAM_EXT". The value of namePattern can "start", "end" or an integer. If an integer is supplied, it means the number of characters from the left to insert the unitQualifier. For example (TIMSC register) 2 1 1,2 3 This syntax says, "To build the unique names, I parse the value, count three characters to the right and insert the at that location. The results would be "TIM1SC" and "TIM2SC"

Publishing ramifications. If you build a register summary, you may enumerate all register instances. Or you may wish to "collapse" blocks of identical registers and provide an address range. If you build a register section, you may describe the register (as if it existed only once) and provide specific instance details (such as address) within the same information block. Using the, you can insert a "variable" character within the register name. For example, to describe UARTA and UARTB generically, you can build the name as "UARTn" in processing. You can then render the addresses of each instance using the as the first and the calculated address of subsequent instances by using. When you provide the address information for each instance, you can enumerate the instance names so that your reader knows the precise register name.

2. Support for multiple instances of components When an identical component exists on a product more than once, we should be able to use the same sidsc-component file. The existing data model for is not sufficient to support this business requirement. Vocabulary requirements *add to define the placement and name qualification of instances *add to define the number of instances *add to specify the offset address of each instance *add and (described in the enhancement #1) About This element contains a comma-delimited list of values that designate where the subsequent instances of the block are located, relative to the of the component. (see example on next page)

Here is an example (SCI component): 2 0,A0 1,2 3 The means, "The SCI component exists two times. The first time is my unitAddress plus the first value of instanceOffsets (n + 0). To build the name of the first component name, I will use the componentName, count three characters, and insert the first value in the nameQualifier.... which gives me "SCI1". NOTE: the first value of will always be zero, right? Should we require that users supply the 0? Or should the number of values in always be equal to the value of minus one?

Each register must appear in the register summary with the proper component instance name prefix and unique register names for repeated registers

Inheritance model changes: componentInstanceVariables from: topic/dl reference/dl sidsc-component/componentInstanceVariables to: topic/simpletable dataTableDomain/dataTable/componentInstanceVariables componentData from: topic/dlentry reference/dlentry sidsc-component/componentData to: topic/strow dataTableDomain/dataRow sidsc-component/componentData componentDataKey from: topic/dt reference/dt sidsc-component/componentDataKey to: topic/stentry dataTableDomain/dataEntry sidsc-component/componentDataKey componentDataValue from: topic/dd reference/dd sidsc-component/componentDataValue to: topic/stentry dataTableDomain/dataEntry sidsc-component/componentDataValue Structural changes: componentData from: ((componentDataKey, componentDataValue)) to: (((componentDataKey, componentDataValue)| instanceParameters)*) dimension from: ((dimensionValue, dimensionIncrement)) to: ((dimensionValue, dimensionIncrement, unitQualifier?, namePattern?))