Movatterモバイル変換


[0]ホーム

URL:


Jump to content
WikipediaThe Free Encyclopedia
Search

Rosetta-lang

From Wikipedia, the free encyclopedia
System-level specification language
icon
This articleneeds additional citations forverification. Please helpimprove this article byadding citations to reliable sources. Unsourced material may be challenged and removed.
Find sources: "Rosetta-lang" – news ·newspapers ·books ·scholar ·JSTOR
(January 2013) (Learn how and when to remove this message)

Withincomputing, the Rosettasystem-levelspecification language is a design language for complex,heterogeneous systems. Specific language design objectives include:

Rosetta was undergoingstandardization at various times.

History

[edit]

The Rosetta effort emerged from a meeting in of the Semiconductor Industry Council's System-Level Design Language committee in 1996. The objective of the meeting was to define requirements for a next-generation design language that would address perceived shortcomings in existing languages such asVHDL andVerilog. Specific concerns included inability to represent constraints, lack of a formal semantics, inability to represent heterogeneous systems, and heavy reliance oncomputer simulation for analysis. In response to these requirements, three major approaches were pursued:

  1. Extendinghardware description languages includingVHDL andVerilog
  2. Extendingprogramming languages includingC andC++
  3. Defining new languages

The first approach ultimately resulted inSystemVerilog and extensions to VHDL while the second resulted inSystemC, all of which becameInstitute of Electrical and Electronics Engineers (IEEE) standards for thesemiconductor industry.Rosetta's original application domain wassystem on a chip semiconductor systems.[1]

Rosetta resulted from the third approach with development beginning under the auspices of the Semiconductor Industry Council and theAir Force Research Laboratory. Originally developed by Perry Alexander and others at theUniversity of Kansas, it was known simply as System-Level Design Language.[2]Standardization was transferred to VHDL International by 2000 and renamed Rosetta (after theRosetta Stone) to reflect the heterogeneous nature of its specifications. Eventually, VHDL International and the Open Verilog Initiative merged to formAccellera, an industry sponsoredconsortium forelectronic design automation (EDA) standards. A draft standard of Rosetta was published in November 2003 through Accellera.[3]Standardization was transferred to IEEEDesign Automation Standards Committee (DASC) where it was developed by the Rosetta Working Group under IEEE project P1699 starting in March 2007.[4][5]A draft of a language reference manual was published in April 2008, with editor Peter Ashenden of Australia.[6]The project was withdrawn in June 2013.[7]

Structure

[edit]

Rosetta is structured around three sub-languages that support defining various specification elements. Theexpression language defines basic functions and expressions used as terms and values in specifications. The expression language is anon-strict,purely functional,typed language in the spirit ofHaskell. Functions arereferentially transparent, encapsulated expressions and cannot have side effects. All Rosetta expressions have types that are determined statically. The type system is based on lifted sets where each type contains at least the bottom or undefined value. Any set can be used to define a type and any function that returns a set can be used to define a type former. Because type definitions can contain general Rosetta expressions, the type system isdependent.

Thefacet language defines individual specifications and specification composition to define systems.Facets andcomponents define system models from one engineering perspective. Each facet is written by extending adomain that provides vocabulary and semantics for the model. Facets are defined by declaring items and defining properties for those items. As such, Rosetta is adeclarative language and constructs cannot be guaranteed to evaluate to a value, although some facets can be evaluated. Using the design abstractions provided by its domain, a facet describes requirements, behavior, constraints, or function of a system. Facets are heterogeneous and may be defined using any of the predefined or user defined domains. The Rosetta semantics denotes each facet to acoalgebra that defines its model-of-computation. Because Rosetta isreflective, facets can be composed and transformed to define complex systems. A common specification technique is to write facets for different aspects of a system and then compose those aspects using product and sum operations to define the complete system.

Thedomain language defines specification domains otherwise known as specification types. The collection of domains forms acomplete lattice ordered byhomomorphism with the empty ornull domain as its top element and the inconsistent orbottom domain as its bottom. There are three primary domain types. Units-of-semantics domains define basic units of specification. For example, thestate_based domain defines the concept of state and next state without constraining the values or properties. Model-of-computation domains extend unit-of-semantics domains to define general computational models such asfinite_state,continuous_time,discrete_time andfrequency. Engineering domains extend model-of-computation domains to provide specification capabilities for specific engineering domains.

Since its early days, Rosetta expanded to include design domains such as hydraulic and mechanical systems, networking systems, security and trust, and software defined radios.

Further reading

[edit]

Rosetta was influenced heavily by the non-strict, purely functional languageHaskell, theLarch family of specification languages, andPrototype Verification System (PVS). A book devoted to the language was published in November 2006.[8]

References

[edit]
  1. ^Perry Alexander; David Barton (June 2000)."Rosetta provides support for system-level design".EE Times. Archived fromthe original on August 16, 2000. RetrievedOctober 7, 2013.
  2. ^"About SLDL and Rosetta".Original web site. University of Kansas. Archived fromthe original on March 18, 2004. RetrievedOctober 7, 2013.
  3. ^David Maliniak (November 10, 2003)."Rosetta Design Language On Road To Standardization".Electronic Design. RetrievedOctober 7, 2013.
  4. ^"Rosetta WG - Rosetta Systems Level Design Language Working Group". IEEE Standards Association. Archived fromthe original on June 10, 2015. RetrievedOctober 7, 2013.
  5. ^Sherry Hampton (March 22, 2007)."P1699 - Standard for the Rosetta Systems Level Design Language Definition"(PDF).Project approval letter. IEEE Standards Association. Archived fromthe original(PDF) on June 10, 2015. RetrievedOctober 7, 2013.
  6. ^"P1699 Rosetta LRM subcommittee". April 22, 2008. Archived fromthe original on June 10, 2015. RetrievedOctober 7, 2013.
  7. ^"Standards Board New Standards Committee (NesCom) Recommendations"(PDF). IEEE Standards Association. June 14, 2013. RetrievedOctober 7, 2013.
  8. ^Perry Alexander (2006).System Level Design with Rosetta. Morgan Kaufmann.ISBN 978-1-55860-771-2.

External links

[edit]
Current
802 series
802
802.1
802.3
(Ethernet)
802.11
(Wi-Fi)
802.15
Proposed
Superseded
Retrieved from "https://en.wikipedia.org/w/index.php?title=Rosetta-lang&oldid=1261431127"
Categories:
Hidden categories:

[8]ページ先頭

©2009-2025 Movatter.jp