Quick Intro To Procedural Blocks

Hi Folks,

In the last writing, I used a phrase — ‘procedural block’. Most of you know what it means in Verilog. Actually, there is no need to write about it here, but I just thought of organizing the write-ups a bit and hence this article. So, here is a quick intro.

In fact, in the LRM of v-2005, the first reference to this phrase is not in a definition. It is mentioned rather in a topic called ‘Event simulation’. It reads as below –

“A design consists of connected threads of execution or processes. Processes are objects that can be evaluated, that may have a state, and that can respond to changes on their inputs to produce outputs. Processes include primitives, modules, initial and always procedural blocks, continuous assignments, asynchronous tasks, and procedural assignment statements”

We understand two things here –

1. The initial and the always blocks are called procedural blocks

2. A procedural block is a connected thread in the simulation. There is no limit on the number of procedural blocks in a simulation

Common knowledge says that the initial block is executed at time-zero in the simulation, whereas the always block is executed repeatedly, starting at time-zero until the simulation ends. Well, that is right! For now, that’s enough for us. I will close this topic with a few points to note –

Apart from procedural blocks, continuous assignments and module/primitive instantiations are also part of the connected thread execution system
There are also procedural assignment statements — which are of a special kind. They are also part of the connected thread execution system
All these parts of the connected thread execution system can interact with each other
BTW, don’t be overwhelmed with the phrase ‘connected thread execution system’. All it means is that the constituents of it run in parallel. Even initial and always blocks run in parallel. It is however possible that the initial block(s) finishes up before the simulation ends. Always blocks will continue to the end.

OK, enough on this … See you in the next write-up.

Tech Pubs,

Proxelera

A New Empowering Venture

Proxelera’s unmatched expertise in VLSI design is expanding into new frontiers in the international market. Our business operations are making an entry into the Israeli market aggressively, heralding a new milestone. In this regard, we have signed up with the Israeli company, TechLink Global Ltd, based out of Tel Aviv.
TechLink, headed by its president Mr Motty Houli, will be our representative in Israel. We are confident that this venture will be profitable in more ways than one for both partners. Proxelera’s presence in one of the most technologically advanced countries in the world stands as a testimony to our technical prowess in the VLSI and semiconductor `industry. India has a multi-faceted, strategic partnership with Israel across many sectors, and this new business nexus takes our aim of strengthening both the semiconductor technology & the ecosystem to new heights.