No of Pipeline Stages in Verilog coming from an m file (or latency)

How does one find how many pipeline stages exist in the verilog file. Example, run the mdhlc_sobel filter example from the web site and just pushing the default buttons in work flow advisor I get the design to run fast exceeding my system requirements. However, I dont know how many pipeline registers were put in there. The verilog code seems to show 12–15 or more stages (not sure) but I cannot tell what the latency will be. Also, it is hard to see the structure/data flow in the verilog code due to the number of times variables change names and then are pipelined. Version is 2014a.

NOTE:-

Matlabsolutions.com provide latest MatLab Homework Help,MatLab Assignment Help for students, engineers and researchers in Multiple Branches like ECE, EEE, CSE, Mechanical, Civil with 100% output.Matlab Code for B.E, B.Tech,M.E,M.Tech, Ph.D. Scholars with 100% privacy guaranteed. Get MATLAB projects with source code for your learning and research.

The short answer is that the conversion of the original untimed MATLAB code to sequential HDL requires multiple clock cycles to implement. This is just part of the nature of the algorithm, so will vary depending upon the particular design. I’m not familiar with this particular example so I can’t say what causes the code to require conversion to sequential form like this.

For your question #1: HDL Coder is indicating that the generated HDL contains a latency of n cycles. With no explicit pipelining, the conversion of the algorithm from untimed MATLAB code to sequential HDL code requires n cycles to complete in HDL. You do not need to add explicit pipelining unless desired. The delays are not pipeline registers per se, but are required for the algorithmic conversion.

Question #2 is a more generalized FPGA design question. The ‘correct’ answer may depend upon your algorithm, your target device, synthesis tool, whether HDL Coder is using Distributed Pipelining, and many other factors. I don’t think that there is a hard and fast answer to this other than “whatever works well for your design environment”.

SEE COMPLETE ANSWER CLICK THE LINK

--

--

--

Simple! That is me, a simple person. I am passionate about knowledge and reading. That’s why I have decided to write and share a bit of my life and thoughts to.

Love podcasts or audiobooks? Learn on the go with our new app.

Recommended from Medium

10 software development principles that power a Dev CRM

DevRev Illustration

Software Process Models

Setting up Million dollar Cloud Infra without spending Millions.

The beginning (a strange but perfect way to start)

Introduction to C++

Creating a Serverless authentication API.

Quora Online Assessment-SWE intern

Getting Started with GCloud SDK: Part 2

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Technical Source

Technical Source

Simple! That is me, a simple person. I am passionate about knowledge and reading. That’s why I have decided to write and share a bit of my life and thoughts to.

More from Medium

Why webcams won’t work with Image Acquisition tool when connected via USB hub?

Start to work quickly with GPUs in Python for Data Science projects.

How to Detect Edges of an Image using Canny Edge Detection technique

Crop a image using ‘imfreehand’ and move the cropped region to the center of black background