Movatterモバイル変換


[0]ホーム

URL:


Jump to content
WikipediaThe Free Encyclopedia
Search

Lola (computing)

From Wikipedia, the free encyclopedia
Hardware description language
For the music performance streaming system, seeLoLa (software).

icon
This articleneeds additional citations forverification. Please helpimprove this article byadding citations to reliable sources. Unsourced material may be challenged and removed.
Find sources: "Lola" computing – news ·newspapers ·books ·scholar ·JSTOR
(March 2025) (Learn how and when to remove this message)
Lola
ParadigmsMulti-paradigm:procedural,imperative,structured,object-oriented
FamilyWirthOberon
Designed byNiklaus Wirth
DeveloperETH Zurich
First appearedJune 1995; 30 years ago (1995-06)
Typing disciplineStatic,strong
ScopeLexical (static)
Implementation languageOberon
Influenced by
ALGOL,Pascal,Modula

Lola is ahardware description language for describingsynchronous,digital circuits.Niklaus Wirth developed the language to teach digital design onfield-programmable gate arrays (FPGAs) tocomputer science students while a professor atETH Zurich.

The purpose of Lola is to statically describe the structure and function of hardware components and of the connections between them. A Lola text is composed ofdeclarations andstatements. It describesdigital electronics hardware on thelogic gate level in the form ofsignal assignments. Signals are combined usingoperators and assigned to other signals. Signals and the respective assignments can be grouped together intodata types. An instance of a type is a hardware component. Types can be composed of instances of other types, thereby supporting ahierarchical design style and they can begeneric, e.g., parametrizable with theword width of a circuit.

All of the concepts mentioned above are demonstrated in the following example of a circuit for adding binary data. First, a fundamental building block (TYPE Cell) is defined, then thisCell is used to declare a cascade of word-width 8, and finally theCells are connected to each other. TheMODULE Adder defined in this example can serve as a building block on a higher level of the design hierarchy.

MODULEAdder;TYPECell;(* Composite Type *)INx,y,ci:BIT;(* input signals *)OUTz,co:BIT;(* output signals *)BEGINz:=x-y-ci;co:=x*y+x*ci+y*ci;ENDCell;CONSTN:=8;INX,Y:[N]BIT;ci:BIT;(* input signals *)OUTZ:[N]BIT;co:BIT;(* output signals *)VARS:[N]Cell;(* composite type instances *)BEGINS.0(X.0,Y.0,ci);(* inputs in cell 0 *)FORi:=1..N-1DOS.i(X.i,Y.i,S[i-1].co);(* inputs in cell i *)END;FORi:=0..N-1DOZ.i:=S.i.z;END;co:=S.7.co;ENDAdder.

Wirth describes Lola from a user's perspective in his bookDigital Circuit Design. A complementary view on the details of the Lola compiler's implementation can be found in Wirth's technical reportLola System Notes. An overview of the whole system of tools for digital design is the technical reportTools for Digital Circuit Design using FPGAs (containing a copy of the report on the language LolaLola: An Object-Oriented Logic Description Language).

External links

[edit]
Concepts
Hardware description languages
Companies
Products
Hardware
Software
Intellectual
property
Proprietary
Open-source
Modula
By Wirth
Modula (1975) →Modula-2 (1978)
By others
Operating systems
Workstations
Developers
Organizations
People
Oberon
By Wirth
Oberon (1987) →Oberon-2 (1991) →Lola (1995) →Active Oberon (1998) →Oberon-07 (2007)
Operating
systems
Workstation
Ceres (1985)
By others
Developers
Organizations
People
Categories:ModulaOberon
Software
Programming
languages
Euler (1965) →PL360 (1966) →ALGOL W (1966) →Pascal (1970) →Modula (1975) →Modula-2 (1978) →Object Pascal (1986) →Oberon (1987) →Oberon-2 (1991) →Lola (1995) →Active Oberon (1998) →Oberon-07 (2007)
Operating
systems
Formalisms
Books
Workstations
Lilith (1977) →Ceres (1985)
Workplaces
Collaborators
Awards
Stub icon

Thisprogramming-language-related article is astub. You can help Wikipedia byadding missing information.

Retrieved from "https://en.wikipedia.org/w/index.php?title=Lola_(computing)&oldid=1282306367"
Categories:
Hidden categories:

[8]ページ先頭

©2009-2026 Movatter.jp