hh.sePublikationer
Ändra sökning
RefereraExporteraLänk till posten
Permanent länk

Direktlänk
Referera
Referensformat
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Annat format
Fler format
Språk
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Annat språk
Fler språk
Utmatningsformat
  • html
  • text
  • asciidoc
  • rtf
Synthesizable High Level Hardware Descriptions
Rice University, 6100 Main St, Houston, TX 77005, United States.
Rice University, 6100 Main St, Houston, TX 77005, United States.
Rice University, 6100 Main St, Houston, TX 77005, United States.
Rice University, 6100 Main St, Houston, TX 77005, United States.
Visa övriga samt affilieringar
2010 (Engelska)Ingår i: New generation computing, ISSN 0288-3635, E-ISSN 1882-7055, Vol. 28, nr 4, s. 339-369Artikel i tidskrift (Refereegranskat) Published
Abstract [en]

Modern hardware description languages support code generation constructs like generate/endgenerate in Verilog. These constructs are used to describe regular or parameterized hardware designsand, when used effectively, can make hardware descriptions shorter, moreunderstandable, and more reusable. In practice, however, designers avoidthese abstractions because it is difficult to understand and predict theproperties of the generated code. Is the generated code even type safe?Is it synthesizable? What physical resources (e.g. combinatorial gatesand flip-flops) does it require? It is often impossible to answer thesequestions without first generating the fully-expanded code. In the Verilog and VHDL communities, this generation process is referred to as elaboration.This paper proposes a disciplined approach to elaboration in Verilog.∗1 By viewing Verilog as a statically typed two-level language, we are able to reflect the distinction between values that are known at elaborationtime and values that are part of the circuit computation. This distinctionis crucial for determining whether generative constructs, such as iterationand module parameters, are used in a synthesizable manner. This allowsus to develop a static type system that guarantees synthesizability. Thetype system achieves safety by performing additional checking on generative constructs and array indices. To illustrate this approach, we developa core calculus for Verilog that we call Featherweight Verilog (FV) andan associated static type system. We formally define a preprocessing stepanalogous to the elaboration phase of Verilog, and the kinds of errors thatcan occur during this phase. Finally, we show that a well-typed designcannot cause preprocessing errors, and that the result of its elaborationis always a synthesizable circuit.

Ort, förlag, år, upplaga, sidor
New York: Springer-Verlag New York, 2010. Vol. 28, nr 4, s. 339-369
Nyckelord [en]
Code Generation, Hardware Description Languages, Statically Typed Two-Level Languages, Synthesizability, Verilog Elaboration.
Nationell ämneskategori
Datorsystem
Identifikatorer
URN: urn:nbn:se:hh:diva-20944DOI: 10.1007/s00354-008-0093-1ISI: 000284289400002Scopus ID: 2-s2.0-78650128272OAI: oai:DiVA.org:hh-20944DiVA, id: diva2:588246
Tillgänglig från: 2013-01-15 Skapad: 2013-01-14 Senast uppdaterad: 2018-03-22Bibliografiskt granskad

Open Access i DiVA

Fulltext saknas i DiVA

Övriga länkar

Förlagets fulltextScopus

Personposter BETA

Taha, Walid

Sök vidare i DiVA

Av författaren/redaktören
Taha, Walid
I samma tidskrift
New generation computing
Datorsystem

Sök vidare utanför DiVA

GoogleGoogle Scholar

doi
urn-nbn

Altmetricpoäng

doi
urn-nbn
Totalt: 173 träffar
RefereraExporteraLänk till posten
Permanent länk

Direktlänk
Referera
Referensformat
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Annat format
Fler format
Språk
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Annat språk
Fler språk
Utmatningsformat
  • html
  • text
  • asciidoc
  • rtf