LabVIEW Idea Exchange

cancel
Showing results for 
Search instead for 
Did you mean: 
0 Kudos
Steimers

Two ideas about shift registers

Status: Declined

Any idea that has not received any kudos within a year after posting will be automatically declined. 

The first idea is about huge stacked shift registers, it's often not very nice to have a huge amount of stacked shift registers if you only want to use the last element because it makes your block diagram look more complicated as necessary. Here another representation could help, perhaps one where you can adjust the element you want to have and this one is the only one you will see. Or you hide all other elements and just the element you want to have is visible with its number in the rectangle. I think there are many ways, my example here is just a very quick and dirty drafts, I'm sure NI would build something that looks much better.

 

The second idea is about the problem that shift registers have to be "docked" to the borders of your loop. If you have a really huge loop that means that you have many wires all the way through your loop that may cause many crossing lines. That will make your block diagram look very confusing.

Because of this problem I suggest a type of shift register that don't has to be docked at the borders of your loop but works like a normal shift register. A feedback node couldn't do this job because of a bunch of reasons and even the idea to work with a lot of local variables isn't very practicable.

When implementing this idea there are two problems, the first is that you don't know if your feedback node is the one that would be on the right side of your loop for your incoming data or the other one for your outgoing data. This can be solved by a little arrow or something like this that shows the type of the node. The second problem will be that you don't know what's the right node for your shift register you want to use at the moment if you have many of them. This can easily be solved if your shift registers would get label names.

 

Once more for these nasty drafts but I wanted to show a example of the problems. If you like these ideas be sure that the implementation by NI would be very nice and look much more great, so please don't be put off by my little drafts.

 

 

 

4 Comments
RavensFan
Knight of NI

I really don't understand why you think feedback nodes don't handle what you are asking for.  What version of LabVIEW are you using?

 

Feedback nodes have a "delay" feature which builds a buffer of older data so that if you want to get the 10th oldest item, you can do that.  You talk about an arrow to know which way your data is going; the feedback node already has this.

Mr.Mike
NI Employee (retired)

1. If you need to go back 10 elements previous in your array, you may want to consider your architecture.  I'm not saying there aren't problems that require that, but to require it often enough to change the behavior makes me think there could be an easier way of doing what you're trying to do.

 

2. Feedback nodes are equivalent to shift registers (except on FPGA) and everything you can do with a feedback node you can do with shift registers. Shift registers are very closely tied to the border of loops and NI will not be moving them.  They pass data into and out of loops, so they need to be partly on the inside of a loop and partly on the outside.  Also, with your method it's hard to find the paired shift register.

-- Mike
altenbach
Knight of NI

1. ... there could be an easier way of doing what you're trying to do.

 

Agreed! And there are easier ways!

 

2. Feedback nodes are equivalent to shift registers (except on FPGA) and everything you can do with a feedback node you can do with shift registers.

 

Not quite: there is no shift register equivalent of a globally initialized feedback node (look ma, no loops!). that functionality would need extra code when implemented with shift registers (including a loop, a "first run?" primitive, and a select primitive or case structure).

Darren
Proven Zealot
Status changed to: Declined

Any idea that has not received any kudos within a year after posting will be automatically declined.