By Donald E. Thomas, Philip R. Moorby

The Verilog language is a description language which supplies a way of specifying a electronic procedure at a variety of degrees of abstraction. The language helps the early conceptual levels of layout with its behavioral point of abstraction, and the later implementation levels with its structural point of abstraction. The language presents hierarchical constructs, permitting the clothier to regulate the complexity of an outline. Verilog was once initially designed within the iciness of 1983/84 as a proprietary verification/simulation product. on the grounds that then, a number of different proprietary research instruments were constructed round the language, together with a fault simulator and a timing analyzer; the language being instrumental in delivering consistency throughout those instruments. Now, the language is overtly on hand for any instrument to learn and write. This ebook introduces the language. it truly is occasionally tough to split the language from the simulator software as the dynamic elements of the language are outlined incidentally the simulator works. the place attainable, we've got stayed clear of simulator-specific information and targeting layout specification, yet have incorporated sufficient info which will have operating executable types. The publication takes an academic method of offering the language.

Show description

Read Online or Download The Verilog® Hardware Description Language PDF

Similar compilers books

The Definitive Guide to SugarCRM: Better Business Applications (Books for Professionals by Professionals)

SugarCRM is one in every of if no longer the prime Open resource CRM resolution available on the market at five. five million downloads and becoming and with approximately 17,000 registered builders and plenty extra clients. it will be the legitimate, definitive publication written via SugarCRM and counseled through SugarCRM. additionally, this booklet will be additionally the single SugarCRM developer booklet so as to tackle the platform similar beneficial properties in view that SugarCRM five.

Methodologies and Software Engineering for Agent Systems: The Agent-Oriented Software Engineering Handbook

As details applied sciences turn into more and more dispensed and available to bigger variety of humans and as advertisement and executive firms are challenged to scale their functions and providers to greater industry stocks, whereas decreasing expenses, there's call for for software program methodologies and appli- tions to supply the next positive factors: Richer program end-to-end performance; relief of human involvement within the layout and deployment of the software program; Flexibility of software program behaviour; and Reuse and composition of present software program purposes and platforms in novel or adaptive methods.

Numeric Computation and Statistical Data Analysis on the Java Platform

Numerical computation, wisdom discovery and statistical information research built-in with strong second and 3D images for visualisation are the major subject matters of this e-book. The Python code examples powered by means of the Java platform can simply be reworked to different programming languages, equivalent to Java, Groovy, Ruby and BeanShell.

Additional resources for The Verilog® Hardware Description Language

Example text

The execution of the process containing the event control is suspended until the change occurs. Thus, the value must be changed by a separate process. It is important to note that the constructs described in this section trigger on a change in a value. That is, they are edge-sensitive. When control passes to one of these statements, the initial value of the input being triggered on is checked. When the value changes later (for instance, when a positive edge on the value has occurred), then the event control statement completes and control continues with the next statement.

1 Tasks A Verilog task is similar to a software procedure. It is called from a calling statement and after execution, returns to the next statement. It cannot be used in an expression. Parameters may be passed to it and results returned. Local variables may be declared within it and their scope will be the task. 9 illustrates how module Mark-l could be rewritten using a task to describe a multiply algorithm. A task is defined within a module using the task and endtask keywords. This task is named multiply and is defined to have one inout (a) and one input (b).

A task may call itself, or be called from tasks that it has called. However, as in a hardware implementation, there is only one set of registers to hold the task variables. Thus, the registers used after the second call to the task are the same physical entities as those in the previous call(s). The simulator maintains the thread of control so that the returns from a task called multiple times are handled correctly. It is useful to comment on the concatenation operation in the example. The "( , )" characters are used to express concatenation of values.

Download PDF sample

Rated 4.11 of 5 – based on 25 votes