ashish7724
Newbie level 4
I am designing a router with vitual channels.....
I need help in what way I can design virtual channel buffer
I need help in what way I can design virtual channel buffer
Follow along with the video below to see how to install our site as a web app on your home screen.
Note: This feature may not be available in some browsers.
What exactly is the problem?
Yeah which means they end up more or less similar to functions, which I would use instead. Tasks really only make sense for simulation testbench code. And repetitive blocks of code I use generate and for loops to replicate the code.@ads-ee, You can synthesiize some tasks. They are incredibly useful for some things. However, they can't have waits our anything that can't normally be in a process. They can remove repetitive blocks of copy/paste code.
Yeah which means they end up more or less similar to functions, which I would use instead. Tasks really only make sense for simulation testbench code. And repetitive blocks of code I use generate and for loops to replicate the code.
Still seems using a synthesizable task just makes the code less portable (I've seen some synthesis tools choke on such coding) and more likely to be a problem with others reviewing your code. Basically wasting everyone's time by having to justify why you didn't use something more standard in your synthesizable code.
As it's probably very apparent, I'm all for writing code that is 100% oriented on maintenance and not displaying how clever you can be.
Probably due to being brought onto projects after others have failed and getting them to production level. Most of the the time the failure wasn't that the designer didn't understand the problem, but the fact that they have coded things in such a poor way that the tools can't optimize the design, e.g. huge combinational circuits between FFs, FSMs that have latches, simulation synthesis mismatches due to bad coding style. Along with the inevitable ugly coding formatting that makes the code nearly unreadable (i.e. can't tell where if and else if end at a glance due to lack of vertical alignment). That and people coding with CamelCase really annoys me, since they are usually the ones that make all their signal names like this CmtZmpIntrCBS, CmtXmpInrCBS, CmpZxqIntrCBT, etc. real easy to tell whats what a a glance. :thumbsdown: