COG Discussions and Questions

Here are some questions and such that are very open for discussion. I am interested in most of the COG boards for one reason or another.

  1. WHY is there a MALE DB9 on the Breakout COG? This seems like it serves only to make connection to it more difficult than if it had a FEMALE DB9.

  2. Will there be an FPGA/ARM7 COG available sometime soon?

It would be great to see a medium to large FPGA such as the Xilinx Spartan 3E 1600 gate or similar Altera FPGA coupled with some onboard intelligence like an LPC-2148 or maybe an LPC2294 or even the massive LPC-2378. More processing power and I/O is always better! :smiley: A COG like this could also standalone for many uses, and be able to be an I2C/SPI Master OR Slave and still be able to communicate with other I2C/SPI devices and subsystems, since the MCU would have two I2C and two SPI interfaces. I see the FPGA as being accessible from the outside and/or by the onboard MCU.

  1. Are there any plans to make an 1.MX27 or i.MX31 COG? I’m really more interested in the i.MX27 (404 BGA) than the i.MX21. The i.MX31 is a 457 BGA.

  2. Regarding the Robotics COG, I think the H-Bridges are a little low on power. They should be at least 5A each for up to 12V or 24V motors. The onboard MCU should be at least an LPC-2148. This would allow it to be an I2C/SPI SLAVE to the i.MX21 COG as well as still be an I2C/SPI Master (or any combination) to communicate with other I2C/SPI sensors and subsystems. This would make it much more useful in standalone mode also.

I can see a full blown COG stack being mounted on my power wheelchair, including the Multi-Media COG with a full touchscreen interface. This would make an excellent onboard computer/controller, especially with the addition of a WiFi/GPS COG.

I’m probably just dreaming of these things, but they would sure be AWESOME to have. :smiley: If I am going to dream, I might as well dream BIG! :smiley:

8-Dale

This is another related discussion that started in the FPGA poll thread in the New Products section.

Cannibal:
Sounds interesting but could you describe the idea in more detail? I think their robotics cog already has a dedicated ARM7CPU?

Yes, indeed it does! The problem I see with the Robotics COG at present is it can not be an I2C Master to comnunicate with other I2C devices and subsystems. Perhaps this was designed in to make it dependent on the i.MX21 COG for outside interfacing, but I think it should still be allowed to be fully independent if required. The current Robotics COG has an LPC-2136 MCU on it. The LPC-2148 has twice the flash and two each I2C and SPI buses.

Allowing both the Robotics COG and hopefully upcomming FPGA/ARM7 COG to stand fully on their own as well as work as slaves to an i.MX21 COG would be excellent. This would allow for a 100% distributed COG based system to be created. :smiley: I think it would also widen the audiences for the Robotics COG and (I hope) upcomming FPGA/ARM7 COG. There are already some nice [FPGA/ARM7 boards available, and I want to base some stand alone designs on such boards.

We could have the start of a new COG related forum… :smiley:

8-Dale](KNJN.com - FPGA-FX2 boards)

Nice board, the only problem is that the FPGA is coupled to the I/O lines not the CPU bus.

WHY is there a MALE DB9 on the Breakout COG? This seems like it serves only to make connection to it more difficult than if it had a FEMALE DB9.

The COG people mention somewhere on their site that it’s to allow easy use of peripheral devices (their board is somewhat of a computer afterall).

Will there be an FPGA/ARM7 COG available sometime soon?

I doubt it - Especially since the FPGA is (for the cyclone III option) big enough to hold a nios processor, and the board is interfaced to an ARM9 as part of the cog stack.

Nice board, the only problem is that the FPGA is coupled to the I/O lines not the CPU bus.

I think I have good news for you → From the cogs page "it communicates with the i.MX21 using memory-mapped I/O. " So the device is still quite ‘addressable’ no?

I am searching a similar board with a very fast access to the FPGA in order to implement an idea, an hardware assisted RTOS scheduler option for my OS.

Cannibal:
The COG people mention somewhere on their site that it’s to allow easy use of peripheral devices (their board is somewhat of a computer afterall).

That is true. Actually, the I.MX COG is a small computer in its own right.

Cannibal:
I doubt it - Especially since the FPGA is (for the cyclone III option) big enough to hold a nios processor, and the board is interfaced to an ARM9 as part of the cog stack.

This is true, but not everyone wants to learn yet another processor and how to program it. I still think adding an ARM7 MCU to an FPGA board is the way to go. It adds more options for use of the board, including stand alone operation.

Cannibal:
Nice board, the only problem is that the FPGA is coupled to the I/O lines not the CPU bus.

In this configuration, the FPGA is meant to be a peripheral to the ARM7 MCU. This need not be the case though and it could be connected in various ways.

Cannibal:
I think I have good news for you → From the cogs page "it communicates with the i.MX21 using memory-mapped I/O. " So the device is still quite ‘addressable’ no?

Yes, it is addressible, but it is still nothing more than a peripheral to the i.MX COG.

8-Dale

linuxguy:
This is another related discussion that started in the FPGA poll thread in the New Products section.

Cannibal:
Sounds interesting but could you describe the idea in more detail? I think their robotics cog already has a dedicated ARM7CPU?

Yes, indeed it does! The problem I see with the Robotics COG at present is it can not be an I2C Master to comnunicate with other I2C devices and subsystems.

Hi linuxguy

The Robot COGs LPC2136 processor DOES have two i2c busses on it. One of these busses goes to the pass-thru connectors meant to mate to the VCMX212. The other bus is (scl1/sda1) is pulled out to one of the GPIO ports on the board and even has the pullups. Either of these busses can be run in Master mode and the Robot COG -is- fully standalone.

Yes, it is addressible, but it is still nothing more than a peripheral to the i.MX COG.

Hi Linuxguy

I’m not sure I fully understand what you mean? There’s nothing stopping the FPGA COG from being run standalone. However, there is a memory-mapped interface for high speed parallel communications with the VCMX212 (in lieu of say having another ARM7 processor onboard the same PCB like you suggest).

linuxguy:
2) Will there be an FPGA/ARM7 COG available sometime soon?

Hi linuxguy.

This is our proposed FPGA COG

http://www.virtualcogs.com/store/produc … ucts_id=72

It easily couples with the i.MX21 board to provide that standard “processor” into the system.

tarun:
The Robot COGs LPC2136 processor DOES have two i2c busses on it. One of these busses goes to the pass-thru connectors meant to mate to the VCMX212. The other bus is (scl1/sda1) is pulled out to one of the GPIO ports on the board and even has the pullups. Either of these busses can be run in Master mode and the Robot COG -is- fully standalone.

I will have to read my datasheets more closely! I thought the LPC-2148 was the only one of that set that had two I2C buses. OK, this makes the Robot COG much more useful then! :D:D It could run several I2C slave sensors or modules. Hmmmm, this is definitely interesting..

8-Dale

tarun:
This is our proposed FPGA COG

http://www.virtualcogs.com/store/produc … ucts_id=72

I like this!

It’s the first I have seen of the FPGA COG. I already have the free QUARTUS II software installed. I have not tried it out yet though. I have been tinkering with the Xilinx ISE 9.2 though because I would like to get a Xilinx based board as well as Altera - these two seem to be the current FPGA heavy hitters.

tarun:
It easily couples with the i.MX21 board to provide that standard “processor” into the system.

OK, you are winning me over more and more. There are now TWO ARM9 systems I definitely want. I can see myself getting an i.MX21 COG (even though I would prefer an i.MX27) with FPGA, Ethernet, GPS, and Robot COGs.

How about the Wireless COG with Bluetooth and WiFi? I can’t have anything less than a completely connected robot. :smiley:

8-Dale

tarun:
There’s nothing stopping the FPGA COG from being run standalone.

True, if you program in one of the NIOS soft core processors. I will have to explore this more, and I have the NIOS development software installed also.

tarun:
However, there is a memory-mapped interface for high speed parallel communications with the VCMX212 (in lieu of say having another ARM7 processor onboard the same PCB like you suggest).

Hmmmm, this is very interesting. I am looking for a good board to base a design for a mixed signal test instrument, essentially a mixed signal oscilloscope, on. That's why I am thinking I need more onboard processing from something like an LPC-2148, LPC-2294, or even an LPC-2378. This could be coupled with a NIOS soft core processor on the FPGA. I like the design of the Saxo/Xylo boards with the LPC-2138 and Spartan 3E or Altera Cyclone II FPGA (which could still take a MicroBlaze or NIOS soft core processor, respectively) combination. I just really like that ARM7 MCU and FPGA combination.

8-Dale

linuxguy:
How about the Wireless COG with Bluetooth and WiFi? I can’t have anything less than a completely connected robot. :smiley:

8-Dale

Right now we’re using USB Wifi and bluetooth dongles quite sucessfully for doing this.

Would the FPGA COG sell for around $199.00?

8-Dale

That’s approx. around where we are targeting.

tarun:
That’s approx. around where we are targeting.

That is a reasonable price point for what you are offering. :)

I am in the process of doing research to figure out which FPGA would be most cost effective for me to go with, both cost wise and for serious development.

Other than having to shell out $2000.00+ (USD) for the full Altera Quartus II package to get the Linux (and Windows) version of the software, Altera is looking pretty good. Their development kit for the EP3C25 with a license for the NIOS II soft core processor is just $399.00 (USD).

The equvalent Xilinx kit with their 1.6 Million gate Spartan 3E FPGA and MicroBlaze soft core processor is $595.00 (USD) list, but they also have a free Linux version of their ISE 9,2i webpack.

8-Dale

The problem, from what I have seen, with the free licences (sub $2000) for Quartus and Nios is that the Nios only works when it is connected to the Altera development system.

Unless I am mistaken this means that if you put a Nios on the fpga then the system must stay connected to the host system and the Quartus program. This sort of defeats the purpose of embedded linux with a soft core coprocessor.

There are other soft core processors that are open. The heavyweight is the Leon 3, in the middle there are some open Mips 1 implementations, plasma, and then you can find avr and 8051 clones and lookalikes.

I agree that the cog-fpga is a toy I would like to have for X-mas :slight_smile:

/Magnus

mlu:
The problem, from what I have seen, with the free licences (sub $2000) for Quartus and Nios is that the Nios only works when it is connected to the Altera development system.

Yes, but this is for evaluation only. The NIOS II CPY will work for 1 hour when not tethered to the PC. You have to buy a NIOS II capable development kit to get an unlimited license to use NIOS II in live projects. The Cyclone3/NIOS II development kit is $399.00, which I don't think is unreasonable, direct from Altera. However, they want $300.00 for their USB download cable! Doesn't this seem a bit much?

mlu:
Unless I am mistaken this means that if you put a Nios on the fpga then the system must stay connected to the host system and the Quartus program. This sort of defeats the purpose of embedded linux with a soft core coprocessor.

Not quite right. You get a full license to use NIOS II in live projects and products when you buy a NIOS II capable development kit. I don't know what the NIOS II license sells for by itself.

mlu:
There are other soft core processors that are open. The heavyweight is the Leon 3, in the middle there are some open Mips 1 implementations, plasma, and then you can find avr and 8051 clones and lookalikes.

I've found some on [[OpenCores.org](http://www.opencores.org). I want something that is well documented and supported with lots of IP (as in a very active community of users). I won't use anything less than ARM7 class like the LPC-2148.

mlu:
I agree that the cog-fpga is a toy I would like to have for X-mas :slight_smile:

Oh yeah, I would love to get an i.MX21 COG with the FPGA, Ethernet, GPS, Robot, and Breakout COGs! However, I really want a complete [[Hammer Kit](http://www.tincantools.com/product.php?productid=16142&cat=0&page=1&featured) also! I see different application areas for each of this, and they can both be used to great advantage for robotics. :D

8-Dale](http://www.tincantools.com/product.php?productid=16142&cat=0&page=1&featured)](http://www.opencores.org)

tarun:
http://www.virtualcogs.com/store/produc … ucts_id=72

It easily couples with the i.MX21 board to provide that standard “processor” into the system.

This is nice, but I am going to be going with the Xilinx FPGAs for my FPGA development. I have been doing more digging into both Altera and Xilinx stuff, and there are a few things Altera does not give me that Xilinx does.
  1. Xilinx provides FREE tools for Linux.

Altera does not - you have to give them $2000.00+ per year to get their full software with the Linux version…

  1. Xilinx has ready made IP for exactly the kinds of things I want to do with FPGA, such as I2C, ADC, DAC, etc. While I can find some of these on [OpenCores, Xilinx IP is fully supported on their FPGAs.

In many, if not most cases, IP for Altera FPGAs is supplied by third parties which charge. I’m on a very constrained budget, so getting as much as possible for FREE or very low cost is important to me as long as it allows me to do what I want to do. I will be experimenting with several things on [OpenCores, but when it comes to starting out, I prefer to use IP that is tried and tested in the environment I am working with.

  1. The Xilinx/MicroBlaze development kit is more expensive than the Altera Cyclone3/NIOS II development kit, but I think the benefits to me in the long run are worth the extra cost up front. The Xilinx kit comes with the 1.6 million gate Spartan 3E FPGA and a no royalty license for the MicroBlaze soft core CPU.

  2. Xilinx has their inexpensive [Spartan-3E Starter Kit and Spark Fun has the inexpensive [Spartan 3E Breakout and Development Board. I hope Spark Fun comes out with similar breakout boards for larger (1 Million and 1.6 Million gate) Spartan 3E FPGAs. :slight_smile:

  3. There are also other nice Spartan 3E based development boards available, such as the [XSA-3S1000 from [XESS. XESS also has the [XST-3.0 expansion board.

I thought it would be good for you to know why I am not going the Altera route. These concerns are mine only and certainly may not apply to anyone else. I would really like to see Virtual COGs come out with an FPGA board that has the 1.6 million gate Spartan 3E FPGA! :smiley: Maybe we will see both Altera and Xilinx based FPGA COGs at some point, which would be great for everyone. :wink:

8-Dale](XESS Energy – Unleash the Power of Flexibility)](http://www.xess.com)](XESS Energy – Unleash the Power of Flexibility)](Spartan 3E Breakout and Development Board - DEV-08458 - SparkFun Electronics)](http://www.xilinx.com/products/devkits/HW-SPAR3E-SK-US-G.htm)](http://www.opencores.org)](http://www.opencores.org)

I notice on the Virtual COGs Wiki, there is an i.MX31 COG shown as preliminary information. Is this going to become a real product? I’ve very interested in this COG as it has plenty of power for the things I want to do on my robot. I really like the ability to expand RAM and Flash!

8-Dale