Search This Blog

Saturday, September 2, 2023

VHDL Basics : Insights Sequential and Concurrent Statements - No More Confusion [Beginner’s Guide]


 


Click here for Video Tutorial - VHDL Basics : Insights Sequential and Concurrent Statements - No More Confusion [Beginner’s Guide]



Click here for Video Tutorial





Before starting this, I wanted to give little weightage here, that This Concept is very important to understand if you are designing anything in the hardware description language. 


In the previous session, We were talking couple of times about the Sequential statements and Concurrent statements, and As we said VHDL supports both the executions. In this slide we will have little more understanding about those sequential statements and concurrent statement in VHDL.


Let’s take the same example, If you notice it is the same code we have used in our last session where we have 2 inputs, input A & input B and 1 output. We have one internal signal S as well. Where signal S was the output of a NAND gate and later that signal S wired up with the not gate and output of the NOT gate connected to the output Dout.


For this design We had written both type of statements in our VHDL code, which are concurrent statements and sequential statements.

Let’s explore the area where we used process and written some conditional statements like if-else, these statements inside the process executes sequentially, and hence called sequential statements in VHDL. The second area is where we written a statement outside the process, within the architecture, these statements will execute concurrently and hence called concurrent statements in VHDL. Likewise in this example, in VHDL we can write both type of statements which are sequential and concurrent statements to describe the functionality of our digital system.


Interesting part is, all the statements inside the process are sequential statements and executes sequentially but the process statement itself executes concurrently with other concurrent statements. Here, we have 2 concurrent statements 1 is very clear, I believe, and 2nd concurrent statement will be the whole process from start of process to end of process.


If you noticed we terminated the process statement at the end of process with the semicolon not in the line where we started our process, this means although there are multiple lines inside the process which are separately terminated but the process itself is only terminated where the process ends and hence it’s treated as single statement of concurrent statement. I know this may take little time to have deeper understanding, but we will be discussing lot more on this topic later to make this clear.


But first let's explore the difference between execution style of concurrent statements and sequential statements.


Sequential statements are very much like software languages. These statements execute sequentially that means at the start statement 1 will execute and then statement 2 will execute than statement 3 will execute and so on.


We also have the concurrent statements in VHDL, these statements are very likely to a hardware model like a schematic design. All the concurrent statements execute simultaneously, just like hardware. 


So if you have Concurrent statement 1 and statement 2 and 3 and 4 and so on… and all these statements executes concurrently, which means when the concurrent statement 1 is executing at the same time statement 4 is executing, similarly at the same time statement 2 or statement 3 are executing. I mean all are executing at the same time, so this is important to know that the sequence or order of the statements not really matter if your statement executing concurrently, and you can write them anywhere within the architecture without thinking of the sequence. And the results will be the same.



Click here for Video Tutorial



In this comprehensive tutorial, we will cover everything you need to know about VHDL sequential and concurrent statements. Sequential statements allow us to execute code in a step-by-step manner, while concurrent statements offer a more parallel execution approach. Welcome to this beginner's guide on VHDL basics, where we will dive into the concepts of sequential and concurrent statements in VHDL. If you've ever been confused about these fundamental aspects of VHDL programming, this video is perfect for you. We will start by explaining the differences between sequential and concurrent statements, providing clear examples and illustrations to eliminate any confusion. By the end of this video, you will have a solid understanding of how to effectively utilize sequential and concurrent statements in your VHDL designs. This guide is suitable for beginners who have some basic knowledge of VHDL. We will go step-by-step and explain each concept thoroughly, ensuring that you grasp the fundamentals before moving on to more advanced topics. Make sure to subscribe to our channel for more informative videos on VHDL programming and digital design. Don't forget to hit the notification bell to stay updated with our latest uploads. If you have any questions or suggestions, feel free to leave them in the comments section below.



Youtube : https://www.youtube.com/@Learnandgrowcommunity LinkedIn Group : https://www.linkedin.com/groups/7478922/ Blog : https://learnandgrowcommunity.blogspot.com/ Facebook : Follow #learnandgrowcommunity Twitter Handle : https://twitter.com/LNG_Community DailyMotion : https://www.dailymotion.com/LearnAndGrowCommunity Instagram Handle : https://www.instagram.com/learnandgrowcommunity/

No comments:

Post a Comment