LabVIEW FPGA Idea Exchange

cancel
Showing results for 
Search instead for 
Did you mean: 
Pie566942.0

Allow Select Node to Invert Select Terminal

Status: New

I'd like the Select node to provide an Invert bubble on the Select Terminal, similar to how the Compound Arithmetic node allows the developer to invert any input.  I don't like crossing wires.

 

Select Node with crossed wires in 2012: 2013-09-30_153921.jpg Select Node without crossed wires in future release (optional invert shown): 2013-09-30_154017.jpg

 

Keep your Invert node comments to yourself 😉

 

Thanks!

 

-Steve K

 

8 Comments
RavensFan
Knight of NI

Is this strictly for FPGA?  Or is this for all of LabVIEW?

crossrulz
Knight of NI

See this idea over in the LabVIEW Idea Exchange: http://forums.ni.com/t5/LabVIEW-Idea-Exchange/Swap-T-F-Terminals-in-Select-Function/idi-p/1007147#A2...


GCentral
There are only two ways to tell somebody thanks: Kudos and Marked Solutions
Unofficial Forum Rules and Guidelines
"Not that we are sufficient in ourselves to claim anything as coming from us, but our sufficiency is from God" - 2 Corinthians 3:5
Pie566942.0
Member

@crossrulz I didn't see this link when I searched but I'm keeping the invert bubble because I feel it's more readable.

@RavensFan I agree, it's a LabVIEW suggestion.  Empirically, replacing case structures with select nodes results in less FPGA utilization.  I find myself using Select nodes on FPGAs and Case Structures on CPUs.

 

Thanks,

 

-Steve K

 

Dragis
Active Participant

@Pie566942.0 I'd love to see an example where a case structure is less efficient than a select on the FPGA. The compiler actually decomposes the Select into a Case Structure behind the scenes so they should be the same : )

Pie566942.0
Member

@Dragis The results I have are from LabVIEW FPGA Module 2011 SP1.  Before I put my personal time into building an example, do you expect I'd get different results in LabVIEW 2012 SP1?

Dragis
Active Participant

@Pie566942.0 Most likely the differences you were seeing were just in the noise of the Xilinx compilations. So we don't sidetrack this idea, if you see this in the future please start a new discussion on the forum so we can get to the bottom of the discrepancy.

Pie566942.0
Member

@Dragis As much as I cringe to admit it, my empirical results do not scale in support of the Select Node being more efficient than a Case Structure.  In other words, I get consistent compile reports that support my earlier statement with N instances of my algorithm, but with N + M instances, the compile reports do not support it.  There must be something else going on.  I can't accept "noise of the Xilinx compilation" at face value, but that's my problem.  Thanks for chiming in and setting me straight before I spent any more time implementing out case structures!

 

-Steve K

Pie566942.0
Member

@Dragis Perhaps there's some difference after all, "If possible, use the Select function instead of a Case structure in deterministic code. The Select function provides greater determinism."  From: http://zone.ni.com/reference/en-XX/help/371361N-01/lvdevconcepts/checklist/.

 

-Steve K