Go to Post Go with what you know will work, and try a little less if you are feeling brave. That is my rule of thumb. - sanddrag [more]
Home
Go Back   Chief Delphi > Technical > Technical Discussion
CD-Media   CD-Spy  
portal register members calendar search Today's Posts Mark Forums Read FAQ rules

 
Closed Thread
Thread Tools Rate Thread Display Modes
  #1   Spotlight this post!  
Unread 30-11-2010, 21:15
bscharles's Avatar
bscharles bscharles is offline
Booyah
AKA: Brian Scharles
FRC #0930 (The Mukwonago BEARs)
Team Role: Mentor
 
Join Date: Jan 2010
Rookie Year: 2010
Location: Wisconsin
Posts: 53
bscharles will become famous soon enough
FPGA 2011

There were some rumors going around about FIRST opening up the FPGA of our cRIO's this year. Does anybody know if all or part of this is true? It would be nice if they did because it would give teams alot more room to expand.
  #2   Spotlight this post!  
Unread 30-11-2010, 21:28
EricH's Avatar
EricH EricH is offline
New year, new team
FRC #1197 (Torbots)
Team Role: Engineer
 
Join Date: Jan 2005
Rookie Year: 2003
Location: SoCal
Posts: 19,813
EricH has a reputation beyond reputeEricH has a reputation beyond reputeEricH has a reputation beyond reputeEricH has a reputation beyond reputeEricH has a reputation beyond reputeEricH has a reputation beyond reputeEricH has a reputation beyond reputeEricH has a reputation beyond reputeEricH has a reputation beyond reputeEricH has a reputation beyond reputeEricH has a reputation beyond repute
Re: FPGA 2011

I don't know if it's true or not.

However, I'd lean towards not if the FPGA contains stuff that is important (like communications outside of the robot). More room to expand also means more room to make a huge mistake.

If it is opened up and there's stuff in there about "DO NOT MODIFY THIS SECTION", take that seriously.
__________________
Past teams:
2003-2007: FRC0330 BeachBots
2008: FRC1135 Shmoebotics
2012: FRC4046 Schroedinger's Dragons

"Rockets are tricky..."--Elon Musk

  #3   Spotlight this post!  
Unread 30-11-2010, 21:32
360skier 360skier is offline
RTFM!!
AKA: Eric A.
FRC #1334 (Red Devils)
Team Role: Programmer
 
Join Date: Dec 2008
Rookie Year: 2008
Location: Oakville, Ontario
Posts: 45
360skier is an unknown quantity at this point
Re: FPGA 2011

I can't remember where I heard this, but I was under the impression that the FPGA is full.

Having said that, I could easily be wrong or have misheard.
__________________
  #4   Spotlight this post!  
Unread 30-11-2010, 22:04
apalrd's Avatar
apalrd apalrd is offline
More Torque!
AKA: Andrew Palardy (Most people call me Palardy)
VRC #3333
Team Role: College Student
 
Join Date: Mar 2009
Rookie Year: 2009
Location: Auburn Hills, MI
Posts: 1,347
apalrd has a reputation beyond reputeapalrd has a reputation beyond reputeapalrd has a reputation beyond reputeapalrd has a reputation beyond reputeapalrd has a reputation beyond reputeapalrd has a reputation beyond reputeapalrd has a reputation beyond reputeapalrd has a reputation beyond reputeapalrd has a reputation beyond reputeapalrd has a reputation beyond reputeapalrd has a reputation beyond repute
Re: FPGA 2011

What does the FPGA do right now?
It handles all of the IO directly. This includes:
Reading analog channels when you poll them
Reading digital channels when you poll them
Integrating gyros/accelerometers (there are only 2 in the current FPGA code)
Counting encoder clicks/determining rate

It also includes more dangerous stuff, like:
PWM output generation
Relay output generation (not directly, but it controls the chips on the DSC that actually do generate the relays)
Solenoid output


And most importantly...
The enable line. This is a single digital channel on each of the DSC's which, when disabled (due to loss of cRio or watchdog trip or the field disables you), will prevent the DSC from passing the digital signals to the PWM and Relay ports.

This seems like stuff we don't want to mess with. IF they do open it up, they will not open the code which handles this action. Guaranteed.



What they have done is released the source code for the Cypress board, so we can read the communication protocol between the Cypress board and the DS (assuming they don't modify the protocol, it would be trivially easy to modify the code in the board to use whatever it contains that you want, and feed it into the existing datatypes). Since they have done this, I would expect that they will open up the Cypress board next year, now that they gave us the code for it (and the tools to modify it), it seems difficult to expect nobody will change the code. Being that it is on the Driver Station, has limited current sourcing potential (USB power is not much), and has to go through the common protocol to communicate with the robot, it seams reasonable for them to open this up.
__________________
Kettering University - Computer Engineering
Kettering Motorsports
Williams International - Commercial Engines - Controls and Accessories
FRC 33 - The Killer Bees - 2009-2012 Student, 2013-2014 Advisor
VEX IQ 3333 - The Bumble Bees - 2014+ Mentor

"Sometimes, the elegant implementation is a function. Not a method. Not a class. Not a framework. Just a function." ~ John Carmack
  #5   Spotlight this post!  
Unread 02-12-2010, 19:07
RoboMaster's Avatar
RoboMaster RoboMaster is offline
Alum, former programmer&co-captain
FRC #2472 (The Centurions)
Team Role: Mentor
 
Join Date: Apr 2008
Rookie Year: 2008
Location: Minnesota, Twin Cities
Posts: 268
RoboMaster has a brilliant futureRoboMaster has a brilliant futureRoboMaster has a brilliant futureRoboMaster has a brilliant futureRoboMaster has a brilliant futureRoboMaster has a brilliant futureRoboMaster has a brilliant futureRoboMaster has a brilliant futureRoboMaster has a brilliant futureRoboMaster has a brilliant futureRoboMaster has a brilliant future
Re: FPGA 2011

As a beta test team doing LabVIEW, we haven't heard about any "opening up the FPGA to teams."

However, there are some extra FPGA related things that are now included for use in LabVIEW, but they are not controlling the FPGA itself. They are quite advanced, but if you're inquiring about the FPGA then maybe this might apply to you. They are:

-3 more external timers for DMA for use with the External Sample Clock DMA Open.
-There is bit handshake mode added to I2C - CompatabilityMode input on I2C Read and I2C Write.
-FPGA timer output has signed count

I agree with apalrd, the FPGA is an advanced thing that you don't really have to or should mess with.
__________________
My engineering blog: noeticbrainwaves.blogspot.com

I'm not slacking, my code's compiling
...and I'm using LabVIEW
  #6   Spotlight this post!  
Unread 02-12-2010, 19:49
Andrew Schreiber Andrew Schreiber is offline
Joining the 900 Meme Team
FRC #0079
 
Join Date: Jan 2005
Rookie Year: 2000
Location: Misplaced Michigander
Posts: 4,068
Andrew Schreiber has a reputation beyond reputeAndrew Schreiber has a reputation beyond reputeAndrew Schreiber has a reputation beyond reputeAndrew Schreiber has a reputation beyond reputeAndrew Schreiber has a reputation beyond reputeAndrew Schreiber has a reputation beyond reputeAndrew Schreiber has a reputation beyond reputeAndrew Schreiber has a reputation beyond reputeAndrew Schreiber has a reputation beyond reputeAndrew Schreiber has a reputation beyond reputeAndrew Schreiber has a reputation beyond repute
Re: FPGA 2011

Quote:
Originally Posted by RoboMaster View Post
I agree with apalrd, the FPGA is an advanced thing that you don't really have to or should mess with.
THIS. I am building an FPGA image for the NI 9074 for work and I can tell you that it is complex. Plus, if you think compile times stink now...I hit compile then walk laps around the building for the next 30 minutes (I have to keep my figure somehow).
__________________




.
  #7   Spotlight this post!  
Unread 02-12-2010, 21:12
davidthefat davidthefat is offline
Alumni
AKA: David Yoon
FRC #0589 (Falkons)
Team Role: Alumni
 
Join Date: Jan 2011
Rookie Year: 2010
Location: California
Posts: 792
davidthefat has much to be proud ofdavidthefat has much to be proud ofdavidthefat has much to be proud ofdavidthefat has much to be proud ofdavidthefat has much to be proud ofdavidthefat has much to be proud ofdavidthefat has much to be proud ofdavidthefat has much to be proud ofdavidthefat has much to be proud of
Re: FPGA 2011

Quote:
Originally Posted by Andrew Schreiber View Post
THIS. I am building an FPGA image for the NI 9074 for work and I can tell you that it is complex. Plus, if you think compile times stink now...I hit compile then walk laps around the building for the next 30 minutes (I have to keep my figure somehow).
Just reminded me of this:


http://www.thinkgeek.com/tshirts-apparel/xkcd/dac0/


now can't they add another FPGA onto the board or at least provide an extra FPGA to use? I honestly think that exposing students to harder and more complex "things" is the wise thing to do. As we speak right now, the world of computing is zooming by us. We are in the age of multicore/processor parallel processing. Due to the physical limitations and power consumption level of computer are now getting, the trends are leveling out. There is a whole lecture about this; the bottom line is that if we want to produce engineers of the future, expose them to the technologies of the new, not the old.
__________________
Do not say what can or cannot be done, but, instead, say what must be done for the task at hand must be accomplished.
  #8   Spotlight this post!  
Unread 02-12-2010, 21:21
Unsung FIRST Hero
Al Skierkiewicz Al Skierkiewicz is offline
Broadcast Eng/Chief Robot Inspector
AKA: Big Al WFFA 2005
FRC #0111 (WildStang)
Team Role: Engineer
 
Join Date: Jun 2001
Rookie Year: 1996
Location: Wheeling, IL
Posts: 10,792
Al Skierkiewicz has a reputation beyond reputeAl Skierkiewicz has a reputation beyond reputeAl Skierkiewicz has a reputation beyond reputeAl Skierkiewicz has a reputation beyond reputeAl Skierkiewicz has a reputation beyond reputeAl Skierkiewicz has a reputation beyond reputeAl Skierkiewicz has a reputation beyond reputeAl Skierkiewicz has a reputation beyond reputeAl Skierkiewicz has a reputation beyond reputeAl Skierkiewicz has a reputation beyond reputeAl Skierkiewicz has a reputation beyond repute
Re: FPGA 2011

Quote:
Originally Posted by bscharles View Post
There were some rumors going around about FIRST opening up the FPGA of our cRIO's this year. Does anybody know if all or part of this is true?
This has been a common rumor for the past two years. The FPGA contains among other things, the ability to stop all robot motion under field control. It is unlikely that it would become open for team modification until someone can insure that a wayward robot could be disabled before it did some damage to personnel, field, venue.
__________________
Good Luck All. Learn something new, everyday!
Al
WB9UVJ
www.wildstang.org
________________________
Storming the Tower since 1996.
  #9   Spotlight this post!  
Unread 02-12-2010, 21:29
Andrew Schreiber Andrew Schreiber is offline
Joining the 900 Meme Team
FRC #0079
 
Join Date: Jan 2005
Rookie Year: 2000
Location: Misplaced Michigander
Posts: 4,068
Andrew Schreiber has a reputation beyond reputeAndrew Schreiber has a reputation beyond reputeAndrew Schreiber has a reputation beyond reputeAndrew Schreiber has a reputation beyond reputeAndrew Schreiber has a reputation beyond reputeAndrew Schreiber has a reputation beyond reputeAndrew Schreiber has a reputation beyond reputeAndrew Schreiber has a reputation beyond reputeAndrew Schreiber has a reputation beyond reputeAndrew Schreiber has a reputation beyond reputeAndrew Schreiber has a reputation beyond repute
Re: FPGA 2011

Quote:
Originally Posted by davidthefat View Post
Actually, that is pretty close to reality.
Quote:
now can't they add another FPGA onto the board or at least provide an extra FPGA to use? I honestly think that exposing students to harder and more complex "things" is the wise thing to do. As we speak right now, the world of computing is zooming by us. We are in the age of multicore/processor parallel processing. Due to the physical limitations and power consumption level of computer are now getting, the trends are leveling out. There is a whole lecture about this; the bottom line is that if we want to produce engineers of the future, expose them to the technologies of the new, not the old.
I'm sure there is a whole lecture about it but that doesn't change the facts that FRC is not about teaching and students can't work with the latest technologies without understanding the basics. Learning the basics on complex hardware is difficult.

If you really want to play around with an FPGA a quick google search should turn up some hardware you can order and use.
__________________




.
  #10   Spotlight this post!  
Unread 02-12-2010, 23:01
RoboMaster's Avatar
RoboMaster RoboMaster is offline
Alum, former programmer&co-captain
FRC #2472 (The Centurions)
Team Role: Mentor
 
Join Date: Apr 2008
Rookie Year: 2008
Location: Minnesota, Twin Cities
Posts: 268
RoboMaster has a brilliant futureRoboMaster has a brilliant futureRoboMaster has a brilliant futureRoboMaster has a brilliant futureRoboMaster has a brilliant futureRoboMaster has a brilliant futureRoboMaster has a brilliant futureRoboMaster has a brilliant futureRoboMaster has a brilliant futureRoboMaster has a brilliant futureRoboMaster has a brilliant future
Re: FPGA 2011

I think there is enough crazy advanced stuff that we can do without getting into the advanced programming of an FPGA. Oh, if only we had a 8 or 9 week build season. Teams would be making amazing things and breaching what would be possible with radio-controlled robots.

I also remember the rookie teams who flounder around with the advancement and detail of our current control system. I think it's a great system, but if you're not a strong team or if you're just trying to get a rolling robot, sometimes the extra advancement doesn't matter, IMHO.
__________________
My engineering blog: noeticbrainwaves.blogspot.com

I'm not slacking, my code's compiling
...and I'm using LabVIEW
  #11   Spotlight this post!  
Unread 04-12-2010, 11:41
Greg McKaskle Greg McKaskle is offline
Registered User
FRC #2468 (Team NI & Appreciate)
 
Join Date: Apr 2008
Rookie Year: 2008
Location: Austin, TX
Posts: 4,752
Greg McKaskle has a reputation beyond reputeGreg McKaskle has a reputation beyond reputeGreg McKaskle has a reputation beyond reputeGreg McKaskle has a reputation beyond reputeGreg McKaskle has a reputation beyond reputeGreg McKaskle has a reputation beyond reputeGreg McKaskle has a reputation beyond reputeGreg McKaskle has a reputation beyond reputeGreg McKaskle has a reputation beyond reputeGreg McKaskle has a reputation beyond reputeGreg McKaskle has a reputation beyond repute
Re: FPGA 2011

Quote:
As we speak right now, the world of computing is zooming by us.
Wouldn't this be even more true if you weren't involved in FIRST? If FIRST provides an approachable and motivating task that exposes you to the real-world problems and some of the real-world tools, then you are better prepared to continue learning and tackle bigger and better things. If it is still your goal, you'll then be prepared to get into one of the fast-lanes of computing. Programming robots and real-time embedded systems is also quite different from databases or programming in general, and you are also being exposed to those differences.

Quote:
We are in the age of multicore/processor parallel processing ... the bottom line is that if we want to produce engineers of the future, expose them to the technologies of the new, not the old.
FIRST is trying to inspire the engineers of the future, but it is not fully responsible for producing them. If your resume only lists experiences such as robot programmer for FIRST team and auditing a few lectures from Stanford, and the woman next to you has a four year degree from a local state college, she is way ahead in the process. You will have to knock my socks off to get the job instead of her. She is better prepared, even if you are more inspired. FIRST is an awesome program, but I don't believe it is a replacement for higher level education and training.

If you can learn to apply the enthusiasm, team-skills, and GP you have seen in FIRST towards high school studies, college, and then work challenges, FIRST has accomplished its goals and you will accomplish yours too.

-------

Back to the technical stuff. Multi-tasking doesn't require multiple cores, and you have access to multi-tasking concepts in a variety of tools and approaches. C++ and Java have threads, tasks, processes, mutexes, semaphores, critical sections, and others. LV chooses not to directly expose threads, but uses dataflow specification to capture what can and cannot be run simultaneously, then uses threads and such to carry out the execution. This limits the need for synchronization of data access. For synchronizing access to other resources, it exposes semaphores, notifiers, events, rendezvous, RT FIFOs, and other synchronization primitives. All tools allow you to do multi-tasking and learn about the issues.

What I'm getting at is that the concepts and abstractions for multi-tasking are equally valid on a single core with a multi-tasking scheduler -- like the cRIO. More cores act as an accelerant, but aren't fundamentally different. If you learn these tools on the FIRST controller, they will be very similar on a PlayStation 3, on high-end workstations, and other MIMD architectures. SIMD requires additional tools, and while it is currently somewhat rare, that may change in the future provided GPUs and BIG FPGAs come down in cost. Again, the tools you are using are already being enhanced to support SIMD, and it is a continuation of what you are learning now.

A comment on the sudden issue with clock speeds -- it wasn't really that sudden. Supercomputers hit the wall twenty years ago, and tried many things including more CPUs. It is now impacting consumer devices, so more magazines write about it, more people talk about it, but it is the same problem, similar solutions, but different price constraints.

Finally, I suspect that your "need for speed" is related to vision processing. As I've mentioned in other threads, vision is a hungry hungry beast -- it will consume whatever CPU resources you have and demand more. Successful vision systems always benefit from and often require controlling the lighting, controlling the content in the scene, and skillful application of simple processing approaches. Oh, and lots of trial and error. Sometimes a bigger processor, or more processors is the right approach, but it also reaches diminishing returns, and rather quickly.

In terms of computing power, FIRST has enhanced the control system rather dramatically in the last few years. This will most likely continue, but it has to be balanced with cost. And on a robot, you don't only want fast processing, you want lots of sensors with precise timing, lots of outputs, tight control timing, and flexibility in how you combine those. Oh, and simplicity of setup is nice too. I'm not going to claim that the current control system is best in all these areas, but it scores well in many areas, and I'm sure that FIRST will continue to upgrade it to improve things. Meanwhile, it is not uncommon to find teams adding FRC-legal coprocessors to enhance areas such as vision. I knew of two last year that had a dedicated image processor capable of handling multiple cameras. If your team wants to lead the charge in atom-based or beagle-based image processing array, go for it. I'm not sure it will win the game, but it will satisfy many of the FIRST goals, and almost certainly win you some awards.

Greg McKaskle
  #12   Spotlight this post!  
Unread 04-12-2010, 12:53
davidthefat davidthefat is offline
Alumni
AKA: David Yoon
FRC #0589 (Falkons)
Team Role: Alumni
 
Join Date: Jan 2011
Rookie Year: 2010
Location: California
Posts: 792
davidthefat has much to be proud ofdavidthefat has much to be proud ofdavidthefat has much to be proud ofdavidthefat has much to be proud ofdavidthefat has much to be proud ofdavidthefat has much to be proud ofdavidthefat has much to be proud ofdavidthefat has much to be proud ofdavidthefat has much to be proud of
Re: FPGA 2011

Quote:
Originally Posted by Greg McKaskle View Post
Wouldn't this be even more true if you weren't involved in FIRST? If FIRST provides an approachable and motivating task that exposes you to the real-world problems and some of the real-world tools, then you are better prepared to continue learning and tackle bigger and better things. If it is still your goal, you'll then be prepared to get into one of the fast-lanes of computing. Programming robots and real-time embedded systems is also quite different from databases or programming in general, and you are also being exposed to those differences.



FIRST is trying to inspire the engineers of the future, but it is not fully responsible for producing them. If your resume only lists experiences such as robot programmer for FIRST team and auditing a few lectures from Stanford, and the woman next to you has a four year degree from a local state college, she is way ahead in the process. You will have to knock my socks off to get the job instead of her. She is better prepared, even if you are more inspired. FIRST is an awesome program, but I don't believe it is a replacement for higher level education and training.

If you can learn to apply the enthusiasm, team-skills, and GP you have seen in FIRST towards high school studies, college, and then work challenges, FIRST has accomplished its goals and you will accomplish yours too.

-------

Back to the technical stuff. Multi-tasking doesn't require multiple cores, and you have access to multi-tasking concepts in a variety of tools and approaches. C++ and Java have threads, tasks, processes, mutexes, semaphores, critical sections, and others. LV chooses not to directly expose threads, but uses dataflow specification to capture what can and cannot be run simultaneously, then uses threads and such to carry out the execution. This limits the need for synchronization of data access. For synchronizing access to other resources, it exposes semaphores, notifiers, events, rendezvous, RT FIFOs, and other synchronization primitives. All tools allow you to do multi-tasking and learn about the issues.

What I'm getting at is that the concepts and abstractions for multi-tasking are equally valid on a single core with a multi-tasking scheduler -- like the cRIO. More cores act as an accelerant, but aren't fundamentally different. If you learn these tools on the FIRST controller, they will be very similar on a PlayStation 3, on high-end workstations, and other MIMD architectures. SIMD requires additional tools, and while it is currently somewhat rare, that may change in the future provided GPUs and BIG FPGAs come down in cost. Again, the tools you are using are already being enhanced to support SIMD, and it is a continuation of what you are learning now.

A comment on the sudden issue with clock speeds -- it wasn't really that sudden. Supercomputers hit the wall twenty years ago, and tried many things including more CPUs. It is now impacting consumer devices, so more magazines write about it, more people talk about it, but it is the same problem, similar solutions, but different price constraints.

Finally, I suspect that your "need for speed" is related to vision processing. As I've mentioned in other threads, vision is a hungry hungry beast -- it will consume whatever CPU resources you have and demand more. Successful vision systems always benefit from and often require controlling the lighting, controlling the content in the scene, and skillful application of simple processing approaches. Oh, and lots of trial and error. Sometimes a bigger processor, or more processors is the right approach, but it also reaches diminishing returns, and rather quickly.

In terms of computing power, FIRST has enhanced the control system rather dramatically in the last few years. This will most likely continue, but it has to be balanced with cost. And on a robot, you don't only want fast processing, you want lots of sensors with precise timing, lots of outputs, tight control timing, and flexibility in how you combine those. Oh, and simplicity of setup is nice too. I'm not going to claim that the current control system is best in all these areas, but it scores well in many areas, and I'm sure that FIRST will continue to upgrade it to improve things. Meanwhile, it is not uncommon to find teams adding FRC-legal coprocessors to enhance areas such as vision. I knew of two last year that had a dedicated image processor capable of handling multiple cameras. If your team wants to lead the charge in atom-based or beagle-based image processing array, go for it. I'm not sure it will win the game, but it will satisfy many of the FIRST goals, and almost certainly win you some awards.

Greg McKaskle
Apparently the bottle neck right now is the power consumption, due to the loss of electricity every cycle because of the very tiny gate stack sizes. They are becoming so small that they are now only few atomic layers, which leads to more leakage. Also another bottle neck is not in the processor it self but the time to access the memory.


I got that from this lecture:
http://dl.dropbox.com/u/15093997/Lec...n%20%28par.mp4
(Right click, save as)

Yea I will be adding another processor onto the robot, but I really have this problem asking people for money or buying anything for me. Im just not that comfortable asking. Well of course its for the robot, but I mean if we are low on money I would want the essentials to be bought first like the metal for chassis and ect. I do not know to budget, but I don't think $200 for the cameras and the processor will affect us that much.

Like I said before in my previous posts, I am very interested in the PS3 (whether its legal or not, I am still interested for my personal programming endeavors.) Due to the fact that it has multiple cores and it being a distributed memory system, each core has its own memory and I won't have to deal with locking and stuff as much.
__________________
Do not say what can or cannot be done, but, instead, say what must be done for the task at hand must be accomplished.

Last edited by davidthefat : 04-12-2010 at 12:55.
Closed Thread


Thread Tools
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Latest FPGA code? ayeckley FRC Control System 9 22-02-2010 13:15
Invariant FPGA Image Version Error? 1951-44U C/C++ 15 04-02-2010 18:10
FPGA Image idahorobot FRC Control System 1 12-02-2009 01:23
What is max sample rate of the FPGA? Bryscus FRC Control System 3 26-01-2009 14:17
FPGA getting started Rickertsen2 Electrical 4 10-09-2005 12:52


All times are GMT -5. The time now is 23:57.

The Chief Delphi Forums are sponsored by Innovation First International, Inc.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi